widget.qw 1.0.23 → 1.0.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/style.css +28 -28
- package/build/widget.qw.es.js +51 -55
- package/build/widget.qw.umd.js +51 -55
- package/package.json +1 -1
- package/src/api/index.js +8 -0
- package/src/components/CascaderPop.vue +2 -13
- package/src/components/UserProfile.vue +30 -27
- package/src/views/cascaderpicker/index copy.vue +0 -0
- package/src/views/cascaderpicker/index.vue +0 -0
package/build/style.css
CHANGED
|
@@ -549,7 +549,7 @@
|
|
|
549
549
|
padding:4px 8px;
|
|
550
550
|
}
|
|
551
551
|
|
|
552
|
-
.widget[data-v-
|
|
552
|
+
.widget[data-v-bd8efbe2] {
|
|
553
553
|
position: relative;
|
|
554
554
|
display: flex;
|
|
555
555
|
flex-direction: column;
|
|
@@ -559,15 +559,15 @@
|
|
|
559
559
|
background: linear-gradient(to right, #4a90e2, #87ceeb);
|
|
560
560
|
border-radius: 10px;
|
|
561
561
|
box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
|
|
562
|
-
.user-avatar[data-v-
|
|
562
|
+
.user-avatar[data-v-bd8efbe2] {
|
|
563
563
|
margin-bottom: 15px;
|
|
564
564
|
}
|
|
565
|
-
.user-info[data-v-
|
|
565
|
+
.user-info[data-v-bd8efbe2] {
|
|
566
566
|
display: flex;
|
|
567
567
|
align-items: center;
|
|
568
568
|
justify-content: space-around;
|
|
569
569
|
margin-bottom: 15px;
|
|
570
|
-
.user-info-item[data-v-
|
|
570
|
+
.user-info-item[data-v-bd8efbe2] {
|
|
571
571
|
font-size: 16px;
|
|
572
572
|
line-height: 22px;
|
|
573
573
|
color: #fff;
|
|
@@ -575,13 +575,13 @@
|
|
|
575
575
|
padding: 0 3px;
|
|
576
576
|
}
|
|
577
577
|
}
|
|
578
|
-
.space[data-v-
|
|
578
|
+
.space[data-v-bd8efbe2] {
|
|
579
579
|
min-height: 10px;
|
|
580
580
|
flex: 1;
|
|
581
581
|
}
|
|
582
582
|
|
|
583
583
|
/* 添加退出按钮样式 */
|
|
584
|
-
.logout-button[data-v-
|
|
584
|
+
.logout-button[data-v-bd8efbe2] {
|
|
585
585
|
width: 70px;
|
|
586
586
|
height: 30px;
|
|
587
587
|
position: absolute;
|
|
@@ -596,16 +596,16 @@
|
|
|
596
596
|
font-size: 14px;
|
|
597
597
|
transition: background-color 0.3s;
|
|
598
598
|
}
|
|
599
|
-
.logout-button[data-v-
|
|
599
|
+
.logout-button[data-v-bd8efbe2]:hover {
|
|
600
600
|
background-color: rgba(255, 255, 255, 0.4);
|
|
601
601
|
}
|
|
602
|
-
.user-jobs[data-v-
|
|
602
|
+
.user-jobs[data-v-bd8efbe2] {
|
|
603
603
|
display: flex;
|
|
604
604
|
justify-content: center;
|
|
605
605
|
gap: 15px;
|
|
606
606
|
width: 100%;
|
|
607
607
|
max-width: 300px;
|
|
608
|
-
.job-item[data-v-
|
|
608
|
+
.job-item[data-v-bd8efbe2] {
|
|
609
609
|
padding: 5px 10px;
|
|
610
610
|
background-color: rgba(255, 255, 255, 0.2);
|
|
611
611
|
border-radius: 20px;
|
|
@@ -709,25 +709,25 @@
|
|
|
709
709
|
margin:3px;
|
|
710
710
|
}
|
|
711
711
|
|
|
712
|
-
.cascader-pop[data-v-
|
|
712
|
+
.cascader-pop[data-v-ed5ef2aa] {
|
|
713
713
|
width: 100%;
|
|
714
714
|
overflow: hidden;
|
|
715
715
|
}
|
|
716
|
-
.cascader-selector[data-v-
|
|
716
|
+
.cascader-selector[data-v-ed5ef2aa] {
|
|
717
717
|
padding: 10px;
|
|
718
718
|
}
|
|
719
|
-
.search-buttons[data-v-
|
|
719
|
+
.search-buttons[data-v-ed5ef2aa] {
|
|
720
720
|
display: flex;
|
|
721
721
|
gap: 10px;
|
|
722
722
|
}
|
|
723
|
-
.clear-btn[data-v-
|
|
723
|
+
.clear-btn[data-v-ed5ef2aa] {
|
|
724
724
|
background-color: #f2f3f5;
|
|
725
725
|
border: none;
|
|
726
726
|
border-radius: 4px;
|
|
727
727
|
padding: 4px 8px;
|
|
728
728
|
font-size: 14px;
|
|
729
729
|
}
|
|
730
|
-
.confirm-btn[data-v-
|
|
730
|
+
.confirm-btn[data-v-ed5ef2aa] {
|
|
731
731
|
background-color: #1989fa;
|
|
732
732
|
color: white;
|
|
733
733
|
border: none;
|
|
@@ -735,19 +735,19 @@
|
|
|
735
735
|
padding: 4px 8px;
|
|
736
736
|
font-size: 14px;
|
|
737
737
|
}
|
|
738
|
-
.no-results[data-v-
|
|
738
|
+
.no-results[data-v-ed5ef2aa] {
|
|
739
739
|
text-align: center;
|
|
740
740
|
padding: 20px;
|
|
741
741
|
color: #969799;
|
|
742
742
|
}
|
|
743
|
-
.cascader-header[data-v-
|
|
743
|
+
.cascader-header[data-v-ed5ef2aa] {
|
|
744
744
|
padding: 10px;
|
|
745
745
|
border-bottom: 1px solid #ebedf0;
|
|
746
746
|
display: flex;
|
|
747
747
|
justify-content: space-between;
|
|
748
748
|
align-items: center;
|
|
749
749
|
}
|
|
750
|
-
.current-path[data-v-
|
|
750
|
+
.current-path[data-v-ed5ef2aa] {
|
|
751
751
|
flex: 1;
|
|
752
752
|
font-size: 14px;
|
|
753
753
|
color: #323233;
|
|
@@ -755,25 +755,25 @@
|
|
|
755
755
|
overflow: hidden;
|
|
756
756
|
text-overflow: ellipsis;
|
|
757
757
|
}
|
|
758
|
-
.header-right[data-v-
|
|
758
|
+
.header-right[data-v-ed5ef2aa] {
|
|
759
759
|
display: flex;
|
|
760
760
|
gap: 8px;
|
|
761
761
|
margin-left: auto;
|
|
762
762
|
}
|
|
763
|
-
.cancel-btn[data-v-
|
|
763
|
+
.cancel-btn[data-v-ed5ef2aa] {
|
|
764
764
|
color: #969799;
|
|
765
765
|
margin-right: 5px;
|
|
766
766
|
}
|
|
767
|
-
.scroll-container[data-v-
|
|
767
|
+
.scroll-container[data-v-ed5ef2aa] {
|
|
768
768
|
height: calc(80vh - 150px);
|
|
769
769
|
overflow-y: auto;
|
|
770
770
|
}
|
|
771
|
-
.cell-content[data-v-
|
|
771
|
+
.cell-content[data-v-ed5ef2aa] {
|
|
772
772
|
display: flex;
|
|
773
773
|
align-items: center;
|
|
774
774
|
gap: 12px;
|
|
775
775
|
}
|
|
776
|
-
.circle-selector[data-v-
|
|
776
|
+
.circle-selector[data-v-ed5ef2aa] {
|
|
777
777
|
width: 20px;
|
|
778
778
|
height: 20px;
|
|
779
779
|
border-radius: 50%;
|
|
@@ -783,29 +783,29 @@
|
|
|
783
783
|
transition: all 0.2s;
|
|
784
784
|
flex-shrink: 0;
|
|
785
785
|
}
|
|
786
|
-
.circle-selector.selected[data-v-
|
|
786
|
+
.circle-selector.selected[data-v-ed5ef2aa] {
|
|
787
787
|
background-color: #1989fa;
|
|
788
788
|
border-color: #1989fa;
|
|
789
789
|
}
|
|
790
|
-
.circle-selector.selected .van-icon[data-v-
|
|
790
|
+
.circle-selector.selected .van-icon[data-v-ed5ef2aa] {
|
|
791
791
|
color: white;
|
|
792
792
|
font-size: 14px;
|
|
793
793
|
}
|
|
794
|
-
.van-cell__right-icon[data-v-
|
|
794
|
+
.van-cell__right-icon[data-v-ed5ef2aa] {
|
|
795
795
|
color: #969799;
|
|
796
796
|
font-size: 16px;
|
|
797
797
|
margin-left: 8px;
|
|
798
798
|
}
|
|
799
|
-
.name[data-v-
|
|
799
|
+
.name[data-v-ed5ef2aa] {
|
|
800
800
|
flex: 1;
|
|
801
801
|
overflow: hidden;
|
|
802
802
|
text-overflow: ellipsis;
|
|
803
803
|
white-space: nowrap;
|
|
804
804
|
}
|
|
805
|
-
.cancel-btn[data-v-
|
|
805
|
+
.cancel-btn[data-v-ed5ef2aa] {
|
|
806
806
|
color: #969799;
|
|
807
807
|
}
|
|
808
|
-
.search-field[data-v-
|
|
808
|
+
.search-field[data-v-ed5ef2aa] {
|
|
809
809
|
background: #fff;
|
|
810
810
|
padding: 10px 16px;
|
|
811
811
|
border-bottom: 1px solid #ebedf0;
|
package/build/widget.qw.es.js
CHANGED
|
@@ -3302,6 +3302,13 @@ const part_detail = (data2) => {
|
|
|
3302
3302
|
data: data2
|
|
3303
3303
|
});
|
|
3304
3304
|
};
|
|
3305
|
+
const qw_department_children = (data2) => {
|
|
3306
|
+
return service$3({
|
|
3307
|
+
url: vm.urlCallback() + "/ac-api/qw/department/children",
|
|
3308
|
+
method: "POST",
|
|
3309
|
+
data: data2
|
|
3310
|
+
});
|
|
3311
|
+
};
|
|
3305
3312
|
var ApiUtil = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
3306
3313
|
__proto__: null,
|
|
3307
3314
|
process_can_apply,
|
|
@@ -3319,7 +3326,8 @@ var ApiUtil = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.definePropert
|
|
|
3319
3326
|
file_upload,
|
|
3320
3327
|
auth_get_user_info,
|
|
3321
3328
|
part_children,
|
|
3322
|
-
part_detail
|
|
3329
|
+
part_detail,
|
|
3330
|
+
qw_department_children
|
|
3323
3331
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
3324
3332
|
function noop() {
|
|
3325
3333
|
}
|
|
@@ -17463,7 +17471,7 @@ const _hoisted_5$6 = {
|
|
|
17463
17471
|
};
|
|
17464
17472
|
const _hoisted_6$5 = /* @__PURE__ */ createTextVNode(" \u53D6\u6D88 ");
|
|
17465
17473
|
const _hoisted_7$5 = /* @__PURE__ */ createTextVNode(" \u786E\u5B9A ");
|
|
17466
|
-
const _hoisted_8$
|
|
17474
|
+
const _hoisted_8$4 = {
|
|
17467
17475
|
class: "scroll-container"
|
|
17468
17476
|
};
|
|
17469
17477
|
const _hoisted_9$2 = {
|
|
@@ -17768,7 +17776,7 @@ const _sfc_main$k = {
|
|
|
17768
17776
|
clearable: "",
|
|
17769
17777
|
placeholder: "\u8BF7\u8F93\u5165\u90E8\u95E8\u540D\u79F0\u641C\u7D22",
|
|
17770
17778
|
class: "search-field"
|
|
17771
|
-
}, null, 8, ["modelValue"]), createElementVNode("div", _hoisted_8$
|
|
17779
|
+
}, null, 8, ["modelValue"]), createElementVNode("div", _hoisted_8$4, [createVNode(_component_van_cell_group, null, {
|
|
17772
17780
|
default: withCtx(() => [(openBlock(true), createElementBlock(Fragment, null, renderList(unref(filteredDepartments), (item, index) => {
|
|
17773
17781
|
return openBlock(), createBlock(_component_van_cell, {
|
|
17774
17782
|
key: index,
|
|
@@ -17825,7 +17833,7 @@ const _hoisted_6$4 = {
|
|
|
17825
17833
|
class: "header-right"
|
|
17826
17834
|
};
|
|
17827
17835
|
const _hoisted_7$4 = /* @__PURE__ */ createTextVNode("\u6E05\u7A7A");
|
|
17828
|
-
const _hoisted_8$
|
|
17836
|
+
const _hoisted_8$3 = /* @__PURE__ */ createTextVNode("\u786E\u5B9A");
|
|
17829
17837
|
const _hoisted_9$1 = {
|
|
17830
17838
|
key: 0,
|
|
17831
17839
|
class: "select-all-container"
|
|
@@ -18227,7 +18235,7 @@ const _sfc_main$j = {
|
|
|
18227
18235
|
onClick: confirmSelection,
|
|
18228
18236
|
class: "confirm-btn"
|
|
18229
18237
|
}, {
|
|
18230
|
-
default: withCtx(() => [_hoisted_8$
|
|
18238
|
+
default: withCtx(() => [_hoisted_8$3]),
|
|
18231
18239
|
_: 1
|
|
18232
18240
|
})])]), __props.mode === "multiple" ? (openBlock(), createElementBlock("div", _hoisted_9$1, [createVNode(_component_van_checkbox, {
|
|
18233
18241
|
shape: "square",
|
|
@@ -18703,7 +18711,7 @@ const _hoisted_5$4 = {
|
|
|
18703
18711
|
};
|
|
18704
18712
|
const _hoisted_6$3 = /* @__PURE__ */ createTextVNode("\u6E05\u7A7A");
|
|
18705
18713
|
const _hoisted_7$3 = /* @__PURE__ */ createTextVNode("\u786E\u5B9A");
|
|
18706
|
-
const _hoisted_8$
|
|
18714
|
+
const _hoisted_8$2 = {
|
|
18707
18715
|
class: "scroll-container"
|
|
18708
18716
|
};
|
|
18709
18717
|
const _sfc_main$f = {
|
|
@@ -19005,7 +19013,7 @@ const _sfc_main$f = {
|
|
|
19005
19013
|
onClick: handleSearch
|
|
19006
19014
|
}, "\u641C\u7D22")]),
|
|
19007
19015
|
_: 1
|
|
19008
|
-
}, 8, ["modelValue"]), createElementVNode("div", _hoisted_8$
|
|
19016
|
+
}, 8, ["modelValue"]), createElementVNode("div", _hoisted_8$2, [createVNode(_component_van_cell_group, null, {
|
|
19009
19017
|
default: withCtx(() => [(openBlock(true), createElementBlock(Fragment, null, renderList(unref(departments), (department) => {
|
|
19010
19018
|
return openBlock(), createBlock(_component_van_cell, {
|
|
19011
19019
|
key: department.id,
|
|
@@ -19059,7 +19067,7 @@ const _hoisted_5$3 = {
|
|
|
19059
19067
|
};
|
|
19060
19068
|
const _hoisted_6$2 = /* @__PURE__ */ createTextVNode("\u53D6\u6D88");
|
|
19061
19069
|
const _hoisted_7$2 = /* @__PURE__ */ createTextVNode("\u786E\u5B9A");
|
|
19062
|
-
const _hoisted_8$
|
|
19070
|
+
const _hoisted_8$1 = {
|
|
19063
19071
|
class: "scroll-container"
|
|
19064
19072
|
};
|
|
19065
19073
|
const _sfc_main$e = {
|
|
@@ -19277,7 +19285,7 @@ const _sfc_main$e = {
|
|
|
19277
19285
|
onClick: onSearch
|
|
19278
19286
|
}, "\u641C\u7D22")]),
|
|
19279
19287
|
_: 1
|
|
19280
|
-
}, 8, ["modelValue", "onClear", "onCancel"]), createElementVNode("div", _hoisted_8$
|
|
19288
|
+
}, 8, ["modelValue", "onClear", "onCancel"]), createElementVNode("div", _hoisted_8$1, [createVNode(_component_van_cell_group, null, {
|
|
19281
19289
|
default: withCtx(() => [(openBlock(true), createElementBlock(Fragment, null, renderList(unref(subDepts), (dept) => {
|
|
19282
19290
|
return openBlock(), createBlock(_component_van_cell, {
|
|
19283
19291
|
key: dept.id,
|
|
@@ -19556,7 +19564,7 @@ const _sfc_main$c = {
|
|
|
19556
19564
|
}
|
|
19557
19565
|
};
|
|
19558
19566
|
var UserPicker = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__scopeId", "data-v-58929b5a"]]);
|
|
19559
|
-
var UserProfile_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.widget[data-v-
|
|
19567
|
+
var UserProfile_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.widget[data-v-bd8efbe2] {\r\n position: relative;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: space-around;\r\n padding: 20px;\r\n background: linear-gradient(to right, #4a90e2, #87ceeb);\r\n border-radius: 10px;\r\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);\n.user-avatar[data-v-bd8efbe2] {\r\n margin-bottom: 15px;\n}\n.user-info[data-v-bd8efbe2] {\r\n display: flex;\r\n align-items: center;\r\n justify-content: space-around;\r\n margin-bottom: 15px;\n.user-info-item[data-v-bd8efbe2] {\r\n font-size: 16px;\r\n line-height: 22px;\r\n color: #fff;\r\n text-align: center;\r\n padding: 0 3px;\n}\n}\n.space[data-v-bd8efbe2] {\r\n min-height: 10px;\r\n flex: 1;\n}\r\n\r\n /* \u6DFB\u52A0\u9000\u51FA\u6309\u94AE\u6837\u5F0F */\n.logout-button[data-v-bd8efbe2] {\r\n width: 70px;\r\n height: 30px;\r\n position: absolute;\r\n top: 20px;\r\n right: 20px;\r\n background-color: rgba(255, 255, 255, 0.2);\r\n color: white;\r\n border: none;\r\n border-radius: 15px;\r\n padding: 5px 15px;\r\n cursor: pointer;\r\n font-size: 14px;\r\n transition: background-color 0.3s;\n}\n.logout-button[data-v-bd8efbe2]:hover {\r\n background-color: rgba(255, 255, 255, 0.4);\n}\n.user-jobs[data-v-bd8efbe2] {\r\n display: flex;\r\n justify-content: center;\r\n gap: 15px;\r\n width: 100%;\r\n max-width: 300px;\n.job-item[data-v-bd8efbe2] {\r\n padding: 5px 10px;\r\n background-color: rgba(255, 255, 255, 0.2);\r\n border-radius: 20px;\r\n font-size: 12px;\r\n color: #fff;\n}\n}\n}\r\n")();
|
|
19560
19568
|
const _hoisted_1$5 = {
|
|
19561
19569
|
class: "widget"
|
|
19562
19570
|
};
|
|
@@ -19573,67 +19581,69 @@ const _hoisted_5$2 = {
|
|
|
19573
19581
|
class: "user-info-item"
|
|
19574
19582
|
};
|
|
19575
19583
|
const _hoisted_6$1 = {
|
|
19576
|
-
class: "user-info-item"
|
|
19577
|
-
};
|
|
19578
|
-
const _hoisted_7$1 = {
|
|
19579
19584
|
class: "user-jobs"
|
|
19580
19585
|
};
|
|
19581
|
-
const
|
|
19586
|
+
const _hoisted_7$1 = /* @__PURE__ */ createTextVNode(" \u6CE8\u9500 ");
|
|
19582
19587
|
const _sfc_main$b = {
|
|
19583
19588
|
__name: "UserProfile",
|
|
19589
|
+
props: {
|
|
19590
|
+
avatar: {
|
|
19591
|
+
type: String,
|
|
19592
|
+
default: ""
|
|
19593
|
+
},
|
|
19594
|
+
name: {
|
|
19595
|
+
type: String,
|
|
19596
|
+
default: ""
|
|
19597
|
+
},
|
|
19598
|
+
position: {
|
|
19599
|
+
type: String,
|
|
19600
|
+
default: ""
|
|
19601
|
+
},
|
|
19602
|
+
mobile: {
|
|
19603
|
+
type: String,
|
|
19604
|
+
default: ""
|
|
19605
|
+
},
|
|
19606
|
+
departments: {
|
|
19607
|
+
type: Array,
|
|
19608
|
+
default: []
|
|
19609
|
+
}
|
|
19610
|
+
},
|
|
19584
19611
|
emits: ["logout"],
|
|
19585
19612
|
setup(__props, {
|
|
19586
19613
|
emit
|
|
19587
19614
|
}) {
|
|
19588
|
-
const
|
|
19589
|
-
userInfo: {}
|
|
19590
|
-
});
|
|
19591
|
-
const deptPaths = computed(() => {
|
|
19592
|
-
if (data2.userInfo && data2.userInfo.departments && data2.userInfo.departments.length > 1)
|
|
19593
|
-
return data2.userInfo.departments.filter((item) => item.id != "1");
|
|
19594
|
-
if (data2.userInfo && data2.userInfo.wxUser)
|
|
19595
|
-
return [{
|
|
19596
|
-
name: data2.userInfo.wxUser.corp
|
|
19597
|
-
}];
|
|
19598
|
-
return [];
|
|
19599
|
-
});
|
|
19615
|
+
const props = __props;
|
|
19600
19616
|
const onLogout = () => {
|
|
19601
19617
|
emit("logout");
|
|
19602
19618
|
};
|
|
19603
|
-
const getUserInfo = () => __async(this, null, function* () {
|
|
19604
|
-
let res = yield util.auth_get_user_info();
|
|
19605
|
-
data2.userInfo = res.data;
|
|
19606
|
-
});
|
|
19607
19619
|
onMounted(() => {
|
|
19608
|
-
getUserInfo();
|
|
19609
19620
|
});
|
|
19610
19621
|
return (_ctx, _cache) => {
|
|
19611
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j;
|
|
19612
19622
|
const _component_van_image = resolveComponent("van-image");
|
|
19613
19623
|
const _component_van_button = resolveComponent("van-button");
|
|
19614
19624
|
return openBlock(), createElementBlock("div", _hoisted_1$5, [createVNode(_component_van_image, {
|
|
19615
19625
|
round: "",
|
|
19616
19626
|
width: "80px",
|
|
19617
19627
|
height: "80px",
|
|
19618
|
-
src:
|
|
19628
|
+
src: props.avatar,
|
|
19619
19629
|
class: "user-avatar"
|
|
19620
|
-
}, null, 8, ["src"]), createElementVNode("div", _hoisted_2$3, [createElementVNode("span", _hoisted_3$2, toDisplayString(
|
|
19630
|
+
}, null, 8, ["src"]), createElementVNode("div", _hoisted_2$3, [createElementVNode("span", _hoisted_3$2, toDisplayString(props.name), 1), createElementVNode("span", _hoisted_4$2, toDisplayString(props.position), 1), createElementVNode("span", _hoisted_5$2, toDisplayString(props.mobile), 1)]), createElementVNode("div", _hoisted_6$1, [(openBlock(true), createElementBlock(Fragment, null, renderList(__props.departments, (item, i) => {
|
|
19621
19631
|
return openBlock(), createElementBlock("span", {
|
|
19622
19632
|
class: "job-item",
|
|
19623
19633
|
key: i
|
|
19624
|
-
}, toDisplayString(item
|
|
19634
|
+
}, toDisplayString(item), 1);
|
|
19625
19635
|
}), 128))]), createVNode(_component_van_button, {
|
|
19626
19636
|
block: "",
|
|
19627
19637
|
class: "logout-button",
|
|
19628
19638
|
onClick: onLogout
|
|
19629
19639
|
}, {
|
|
19630
|
-
default: withCtx(() => [
|
|
19640
|
+
default: withCtx(() => [_hoisted_7$1]),
|
|
19631
19641
|
_: 1
|
|
19632
19642
|
})]);
|
|
19633
19643
|
};
|
|
19634
19644
|
}
|
|
19635
19645
|
};
|
|
19636
|
-
var UserProfile = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-
|
|
19646
|
+
var UserProfile = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-bd8efbe2"]]);
|
|
19637
19647
|
var BillCard_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".widget[data-v-68bdd6bc] {\n background-color: white;\n border-radius: 8px;\n box-shadow: var(--van-dropdown-menu-shadow);\n color: 14px;\n}\n.widget .card-box[data-v-68bdd6bc] {\n padding-bottom: 8px;\n}\n.widget .card-box .card-header[data-v-68bdd6bc] {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 15px 10px;\n border-bottom: 1px solid #eee;\n}\n.widget .card-box .card-header .card-sum[data-v-68bdd6bc] {\n flex: 1;\n font-size: 14px;\n text-align: left;\n}\n.widget .card-box .card-header .user-state[data-v-68bdd6bc] {\n margin-right: 1px;\n}\n[data-v-68bdd6bc] .van-cell__value {\n flex: 2 !important;\n}\n[data-v-68bdd6bc] .van-cell__title {\n font-size: 12px !important;\n color: #666 !important;\n text-align: left !important;\n}\n[data-v-68bdd6bc] .van-cell__value {\n font-size: 12px !important;\n color: #888 !important;\n}\n[data-v-68bdd6bc] .van-cell {\n padding: 2px 10px !important;\n}")();
|
|
19638
19648
|
const _hoisted_1$4 = {
|
|
19639
19649
|
class: "widget"
|
|
@@ -20279,7 +20289,7 @@ const _sfc_main$3 = {
|
|
|
20279
20289
|
}
|
|
20280
20290
|
};
|
|
20281
20291
|
var TreePicker = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-6744b874"]]);
|
|
20282
|
-
var CascaderPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.cascader-pop[data-v-
|
|
20292
|
+
var CascaderPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.cascader-pop[data-v-ed5ef2aa] {\r\n width: 100%;\r\n overflow: hidden;\n}\n.cascader-selector[data-v-ed5ef2aa] {\r\n padding: 10px;\n}\n.search-buttons[data-v-ed5ef2aa] {\r\n display: flex;\r\n gap: 10px;\n}\n.clear-btn[data-v-ed5ef2aa] {\r\n background-color: #f2f3f5;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.confirm-btn[data-v-ed5ef2aa] {\r\n background-color: #1989fa;\r\n color: white;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.no-results[data-v-ed5ef2aa] {\r\n text-align: center;\r\n padding: 20px;\r\n color: #969799;\n}\n.cascader-header[data-v-ed5ef2aa] {\r\n padding: 10px;\r\n border-bottom: 1px solid #ebedf0;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\n}\n.current-path[data-v-ed5ef2aa] {\r\n flex: 1;\r\n font-size: 14px;\r\n color: #323233;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\n}\n.header-right[data-v-ed5ef2aa] {\r\n display: flex;\r\n gap: 8px;\r\n margin-left: auto;\n}\n.cancel-btn[data-v-ed5ef2aa] {\r\n color: #969799;\r\n margin-right: 5px;\n}\n.scroll-container[data-v-ed5ef2aa] {\r\n height: calc(80vh - 150px);\r\n overflow-y: auto;\n}\n.cell-content[data-v-ed5ef2aa] {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\n}\n.circle-selector[data-v-ed5ef2aa] {\r\n width: 20px;\r\n height: 20px;\r\n border-radius: 50%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n transition: all 0.2s;\r\n flex-shrink: 0;\n}\n.circle-selector.selected[data-v-ed5ef2aa] {\r\n background-color: #1989fa;\r\n border-color: #1989fa;\n}\n.circle-selector.selected .van-icon[data-v-ed5ef2aa] {\r\n color: white;\r\n font-size: 14px;\n}\n.van-cell__right-icon[data-v-ed5ef2aa] {\r\n color: #969799;\r\n font-size: 16px;\r\n margin-left: 8px;\n}\n.name[data-v-ed5ef2aa] {\r\n flex: 1;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\n}\n.cancel-btn[data-v-ed5ef2aa] {\r\n color: #969799;\n}\n.search-field[data-v-ed5ef2aa] {\r\n background: #fff;\r\n padding: 10px 16px;\r\n border-bottom: 1px solid #ebedf0;\r\n position: sticky;\r\n top: 0;\r\n z-index: 999;\r\n margin-bottom: 10px;\r\n flex-shrink: 0;\r\n /* \u9632\u6B62\u538B\u7F29 */\n}\r\n")();
|
|
20283
20293
|
const _hoisted_1$1 = {
|
|
20284
20294
|
class: "cascader-selector"
|
|
20285
20295
|
};
|
|
@@ -20346,12 +20356,6 @@ const _sfc_main$2 = {
|
|
|
20346
20356
|
selectedNodeId: ""
|
|
20347
20357
|
});
|
|
20348
20358
|
onMounted(() => {
|
|
20349
|
-
props.idQueryNode({
|
|
20350
|
-
id: "",
|
|
20351
|
-
isReturnParent: true
|
|
20352
|
-
}, (node) => {
|
|
20353
|
-
data2.parentNode = node;
|
|
20354
|
-
});
|
|
20355
20359
|
});
|
|
20356
20360
|
const optionNodes = computed(() => {
|
|
20357
20361
|
var _a;
|
|
@@ -20378,7 +20382,7 @@ const _sfc_main$2 = {
|
|
|
20378
20382
|
data2.keyword = "";
|
|
20379
20383
|
props.idQueryNode({
|
|
20380
20384
|
id: data2.parentNode.parentId,
|
|
20381
|
-
isReturnParent:
|
|
20385
|
+
isReturnParent: false
|
|
20382
20386
|
}, (node) => {
|
|
20383
20387
|
data2.parentNode = node;
|
|
20384
20388
|
});
|
|
@@ -20416,14 +20420,6 @@ const _sfc_main$2 = {
|
|
|
20416
20420
|
data2.parentNode = node2;
|
|
20417
20421
|
});
|
|
20418
20422
|
};
|
|
20419
|
-
onMounted(() => __async(this, null, function* () {
|
|
20420
|
-
props.idQueryNode({
|
|
20421
|
-
id: "",
|
|
20422
|
-
isReturnParent: true
|
|
20423
|
-
}, (node) => {
|
|
20424
|
-
data2.parentNode = node;
|
|
20425
|
-
});
|
|
20426
|
-
}));
|
|
20427
20423
|
watch(() => modelValue.value, (n, o) => __async(this, null, function* () {
|
|
20428
20424
|
data2.selectedNodeId = modelValue.value;
|
|
20429
20425
|
let params = {};
|
|
@@ -20507,7 +20503,7 @@ const _sfc_main$2 = {
|
|
|
20507
20503
|
color: "#e0e0e0"
|
|
20508
20504
|
})) : createCommentVNode("", true)], 8, _hoisted_10)) : createCommentVNode("", true), createElementVNode("span", _hoisted_11, toDisplayString(item.label), 1)])]),
|
|
20509
20505
|
_: 2
|
|
20510
|
-
}, [item.
|
|
20506
|
+
}, [item.canExpand ? {
|
|
20511
20507
|
name: "right-icon",
|
|
20512
20508
|
fn: withCtx(() => [createVNode(_component_van_icon, {
|
|
20513
20509
|
name: "arrow",
|
|
@@ -20522,7 +20518,7 @@ const _sfc_main$2 = {
|
|
|
20522
20518
|
};
|
|
20523
20519
|
}
|
|
20524
20520
|
};
|
|
20525
|
-
var CascaderPop = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-
|
|
20521
|
+
var CascaderPop = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-ed5ef2aa"]]);
|
|
20526
20522
|
const _sfc_main$1 = {
|
|
20527
20523
|
__name: "CascaderPicker",
|
|
20528
20524
|
props: {
|
package/build/widget.qw.umd.js
CHANGED
|
@@ -3305,6 +3305,13 @@ var __async = (__this, __arguments, generator) => {
|
|
|
3305
3305
|
data: data2
|
|
3306
3306
|
});
|
|
3307
3307
|
};
|
|
3308
|
+
const qw_department_children = (data2) => {
|
|
3309
|
+
return service$3({
|
|
3310
|
+
url: vm.urlCallback() + "/ac-api/qw/department/children",
|
|
3311
|
+
method: "POST",
|
|
3312
|
+
data: data2
|
|
3313
|
+
});
|
|
3314
|
+
};
|
|
3308
3315
|
var ApiUtil = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
|
|
3309
3316
|
__proto__: null,
|
|
3310
3317
|
process_can_apply,
|
|
@@ -3322,7 +3329,8 @@ var __async = (__this, __arguments, generator) => {
|
|
|
3322
3329
|
file_upload,
|
|
3323
3330
|
auth_get_user_info,
|
|
3324
3331
|
part_children,
|
|
3325
|
-
part_detail
|
|
3332
|
+
part_detail,
|
|
3333
|
+
qw_department_children
|
|
3326
3334
|
}, Symbol.toStringTag, { value: "Module" }));
|
|
3327
3335
|
function noop() {
|
|
3328
3336
|
}
|
|
@@ -17466,7 +17474,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
17466
17474
|
};
|
|
17467
17475
|
const _hoisted_6$5 = /* @__PURE__ */ vue.createTextVNode(" \u53D6\u6D88 ");
|
|
17468
17476
|
const _hoisted_7$5 = /* @__PURE__ */ vue.createTextVNode(" \u786E\u5B9A ");
|
|
17469
|
-
const _hoisted_8$
|
|
17477
|
+
const _hoisted_8$4 = {
|
|
17470
17478
|
class: "scroll-container"
|
|
17471
17479
|
};
|
|
17472
17480
|
const _hoisted_9$2 = {
|
|
@@ -17771,7 +17779,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
17771
17779
|
clearable: "",
|
|
17772
17780
|
placeholder: "\u8BF7\u8F93\u5165\u90E8\u95E8\u540D\u79F0\u641C\u7D22",
|
|
17773
17781
|
class: "search-field"
|
|
17774
|
-
}, null, 8, ["modelValue"]), vue.createElementVNode("div", _hoisted_8$
|
|
17782
|
+
}, null, 8, ["modelValue"]), vue.createElementVNode("div", _hoisted_8$4, [vue.createVNode(_component_van_cell_group, null, {
|
|
17775
17783
|
default: vue.withCtx(() => [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(filteredDepartments), (item, index) => {
|
|
17776
17784
|
return vue.openBlock(), vue.createBlock(_component_van_cell, {
|
|
17777
17785
|
key: index,
|
|
@@ -17828,7 +17836,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
17828
17836
|
class: "header-right"
|
|
17829
17837
|
};
|
|
17830
17838
|
const _hoisted_7$4 = /* @__PURE__ */ vue.createTextVNode("\u6E05\u7A7A");
|
|
17831
|
-
const _hoisted_8$
|
|
17839
|
+
const _hoisted_8$3 = /* @__PURE__ */ vue.createTextVNode("\u786E\u5B9A");
|
|
17832
17840
|
const _hoisted_9$1 = {
|
|
17833
17841
|
key: 0,
|
|
17834
17842
|
class: "select-all-container"
|
|
@@ -18230,7 +18238,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
18230
18238
|
onClick: confirmSelection,
|
|
18231
18239
|
class: "confirm-btn"
|
|
18232
18240
|
}, {
|
|
18233
|
-
default: vue.withCtx(() => [_hoisted_8$
|
|
18241
|
+
default: vue.withCtx(() => [_hoisted_8$3]),
|
|
18234
18242
|
_: 1
|
|
18235
18243
|
})])]), __props.mode === "multiple" ? (vue.openBlock(), vue.createElementBlock("div", _hoisted_9$1, [vue.createVNode(_component_van_checkbox, {
|
|
18236
18244
|
shape: "square",
|
|
@@ -18706,7 +18714,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
18706
18714
|
};
|
|
18707
18715
|
const _hoisted_6$3 = /* @__PURE__ */ vue.createTextVNode("\u6E05\u7A7A");
|
|
18708
18716
|
const _hoisted_7$3 = /* @__PURE__ */ vue.createTextVNode("\u786E\u5B9A");
|
|
18709
|
-
const _hoisted_8$
|
|
18717
|
+
const _hoisted_8$2 = {
|
|
18710
18718
|
class: "scroll-container"
|
|
18711
18719
|
};
|
|
18712
18720
|
const _sfc_main$f = {
|
|
@@ -19008,7 +19016,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
19008
19016
|
onClick: handleSearch
|
|
19009
19017
|
}, "\u641C\u7D22")]),
|
|
19010
19018
|
_: 1
|
|
19011
|
-
}, 8, ["modelValue"]), vue.createElementVNode("div", _hoisted_8$
|
|
19019
|
+
}, 8, ["modelValue"]), vue.createElementVNode("div", _hoisted_8$2, [vue.createVNode(_component_van_cell_group, null, {
|
|
19012
19020
|
default: vue.withCtx(() => [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(departments), (department) => {
|
|
19013
19021
|
return vue.openBlock(), vue.createBlock(_component_van_cell, {
|
|
19014
19022
|
key: department.id,
|
|
@@ -19062,7 +19070,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
19062
19070
|
};
|
|
19063
19071
|
const _hoisted_6$2 = /* @__PURE__ */ vue.createTextVNode("\u53D6\u6D88");
|
|
19064
19072
|
const _hoisted_7$2 = /* @__PURE__ */ vue.createTextVNode("\u786E\u5B9A");
|
|
19065
|
-
const _hoisted_8$
|
|
19073
|
+
const _hoisted_8$1 = {
|
|
19066
19074
|
class: "scroll-container"
|
|
19067
19075
|
};
|
|
19068
19076
|
const _sfc_main$e = {
|
|
@@ -19280,7 +19288,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
19280
19288
|
onClick: onSearch
|
|
19281
19289
|
}, "\u641C\u7D22")]),
|
|
19282
19290
|
_: 1
|
|
19283
|
-
}, 8, ["modelValue", "onClear", "onCancel"]), vue.createElementVNode("div", _hoisted_8$
|
|
19291
|
+
}, 8, ["modelValue", "onClear", "onCancel"]), vue.createElementVNode("div", _hoisted_8$1, [vue.createVNode(_component_van_cell_group, null, {
|
|
19284
19292
|
default: vue.withCtx(() => [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(vue.unref(subDepts), (dept) => {
|
|
19285
19293
|
return vue.openBlock(), vue.createBlock(_component_van_cell, {
|
|
19286
19294
|
key: dept.id,
|
|
@@ -19559,7 +19567,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
19559
19567
|
}
|
|
19560
19568
|
};
|
|
19561
19569
|
var UserPicker = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["__scopeId", "data-v-58929b5a"]]);
|
|
19562
|
-
var UserProfile_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.widget[data-v-
|
|
19570
|
+
var UserProfile_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.widget[data-v-bd8efbe2] {\r\n position: relative;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: space-around;\r\n padding: 20px;\r\n background: linear-gradient(to right, #4a90e2, #87ceeb);\r\n border-radius: 10px;\r\n box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);\n.user-avatar[data-v-bd8efbe2] {\r\n margin-bottom: 15px;\n}\n.user-info[data-v-bd8efbe2] {\r\n display: flex;\r\n align-items: center;\r\n justify-content: space-around;\r\n margin-bottom: 15px;\n.user-info-item[data-v-bd8efbe2] {\r\n font-size: 16px;\r\n line-height: 22px;\r\n color: #fff;\r\n text-align: center;\r\n padding: 0 3px;\n}\n}\n.space[data-v-bd8efbe2] {\r\n min-height: 10px;\r\n flex: 1;\n}\r\n\r\n /* \u6DFB\u52A0\u9000\u51FA\u6309\u94AE\u6837\u5F0F */\n.logout-button[data-v-bd8efbe2] {\r\n width: 70px;\r\n height: 30px;\r\n position: absolute;\r\n top: 20px;\r\n right: 20px;\r\n background-color: rgba(255, 255, 255, 0.2);\r\n color: white;\r\n border: none;\r\n border-radius: 15px;\r\n padding: 5px 15px;\r\n cursor: pointer;\r\n font-size: 14px;\r\n transition: background-color 0.3s;\n}\n.logout-button[data-v-bd8efbe2]:hover {\r\n background-color: rgba(255, 255, 255, 0.4);\n}\n.user-jobs[data-v-bd8efbe2] {\r\n display: flex;\r\n justify-content: center;\r\n gap: 15px;\r\n width: 100%;\r\n max-width: 300px;\n.job-item[data-v-bd8efbe2] {\r\n padding: 5px 10px;\r\n background-color: rgba(255, 255, 255, 0.2);\r\n border-radius: 20px;\r\n font-size: 12px;\r\n color: #fff;\n}\n}\n}\r\n")();
|
|
19563
19571
|
const _hoisted_1$5 = {
|
|
19564
19572
|
class: "widget"
|
|
19565
19573
|
};
|
|
@@ -19576,67 +19584,69 @@ var __async = (__this, __arguments, generator) => {
|
|
|
19576
19584
|
class: "user-info-item"
|
|
19577
19585
|
};
|
|
19578
19586
|
const _hoisted_6$1 = {
|
|
19579
|
-
class: "user-info-item"
|
|
19580
|
-
};
|
|
19581
|
-
const _hoisted_7$1 = {
|
|
19582
19587
|
class: "user-jobs"
|
|
19583
19588
|
};
|
|
19584
|
-
const
|
|
19589
|
+
const _hoisted_7$1 = /* @__PURE__ */ vue.createTextVNode(" \u6CE8\u9500 ");
|
|
19585
19590
|
const _sfc_main$b = {
|
|
19586
19591
|
__name: "UserProfile",
|
|
19592
|
+
props: {
|
|
19593
|
+
avatar: {
|
|
19594
|
+
type: String,
|
|
19595
|
+
default: ""
|
|
19596
|
+
},
|
|
19597
|
+
name: {
|
|
19598
|
+
type: String,
|
|
19599
|
+
default: ""
|
|
19600
|
+
},
|
|
19601
|
+
position: {
|
|
19602
|
+
type: String,
|
|
19603
|
+
default: ""
|
|
19604
|
+
},
|
|
19605
|
+
mobile: {
|
|
19606
|
+
type: String,
|
|
19607
|
+
default: ""
|
|
19608
|
+
},
|
|
19609
|
+
departments: {
|
|
19610
|
+
type: Array,
|
|
19611
|
+
default: []
|
|
19612
|
+
}
|
|
19613
|
+
},
|
|
19587
19614
|
emits: ["logout"],
|
|
19588
19615
|
setup(__props, {
|
|
19589
19616
|
emit
|
|
19590
19617
|
}) {
|
|
19591
|
-
const
|
|
19592
|
-
userInfo: {}
|
|
19593
|
-
});
|
|
19594
|
-
const deptPaths = vue.computed(() => {
|
|
19595
|
-
if (data2.userInfo && data2.userInfo.departments && data2.userInfo.departments.length > 1)
|
|
19596
|
-
return data2.userInfo.departments.filter((item) => item.id != "1");
|
|
19597
|
-
if (data2.userInfo && data2.userInfo.wxUser)
|
|
19598
|
-
return [{
|
|
19599
|
-
name: data2.userInfo.wxUser.corp
|
|
19600
|
-
}];
|
|
19601
|
-
return [];
|
|
19602
|
-
});
|
|
19618
|
+
const props = __props;
|
|
19603
19619
|
const onLogout = () => {
|
|
19604
19620
|
emit("logout");
|
|
19605
19621
|
};
|
|
19606
|
-
const getUserInfo = () => __async(this, null, function* () {
|
|
19607
|
-
let res = yield util.auth_get_user_info();
|
|
19608
|
-
data2.userInfo = res.data;
|
|
19609
|
-
});
|
|
19610
19622
|
vue.onMounted(() => {
|
|
19611
|
-
getUserInfo();
|
|
19612
19623
|
});
|
|
19613
19624
|
return (_ctx, _cache) => {
|
|
19614
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j;
|
|
19615
19625
|
const _component_van_image = vue.resolveComponent("van-image");
|
|
19616
19626
|
const _component_van_button = vue.resolveComponent("van-button");
|
|
19617
19627
|
return vue.openBlock(), vue.createElementBlock("div", _hoisted_1$5, [vue.createVNode(_component_van_image, {
|
|
19618
19628
|
round: "",
|
|
19619
19629
|
width: "80px",
|
|
19620
19630
|
height: "80px",
|
|
19621
|
-
src:
|
|
19631
|
+
src: props.avatar,
|
|
19622
19632
|
class: "user-avatar"
|
|
19623
|
-
}, null, 8, ["src"]), vue.createElementVNode("div", _hoisted_2$3, [vue.createElementVNode("span", _hoisted_3$2, vue.toDisplayString(
|
|
19633
|
+
}, null, 8, ["src"]), vue.createElementVNode("div", _hoisted_2$3, [vue.createElementVNode("span", _hoisted_3$2, vue.toDisplayString(props.name), 1), vue.createElementVNode("span", _hoisted_4$2, vue.toDisplayString(props.position), 1), vue.createElementVNode("span", _hoisted_5$2, vue.toDisplayString(props.mobile), 1)]), vue.createElementVNode("div", _hoisted_6$1, [(vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(__props.departments, (item, i) => {
|
|
19624
19634
|
return vue.openBlock(), vue.createElementBlock("span", {
|
|
19625
19635
|
class: "job-item",
|
|
19626
19636
|
key: i
|
|
19627
|
-
}, vue.toDisplayString(item
|
|
19637
|
+
}, vue.toDisplayString(item), 1);
|
|
19628
19638
|
}), 128))]), vue.createVNode(_component_van_button, {
|
|
19629
19639
|
block: "",
|
|
19630
19640
|
class: "logout-button",
|
|
19631
19641
|
onClick: onLogout
|
|
19632
19642
|
}, {
|
|
19633
|
-
default: vue.withCtx(() => [
|
|
19643
|
+
default: vue.withCtx(() => [_hoisted_7$1]),
|
|
19634
19644
|
_: 1
|
|
19635
19645
|
})]);
|
|
19636
19646
|
};
|
|
19637
19647
|
}
|
|
19638
19648
|
};
|
|
19639
|
-
var UserProfile = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-
|
|
19649
|
+
var UserProfile = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["__scopeId", "data-v-bd8efbe2"]]);
|
|
19640
19650
|
var BillCard_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => ".widget[data-v-68bdd6bc] {\n background-color: white;\n border-radius: 8px;\n box-shadow: var(--van-dropdown-menu-shadow);\n color: 14px;\n}\n.widget .card-box[data-v-68bdd6bc] {\n padding-bottom: 8px;\n}\n.widget .card-box .card-header[data-v-68bdd6bc] {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 15px 10px;\n border-bottom: 1px solid #eee;\n}\n.widget .card-box .card-header .card-sum[data-v-68bdd6bc] {\n flex: 1;\n font-size: 14px;\n text-align: left;\n}\n.widget .card-box .card-header .user-state[data-v-68bdd6bc] {\n margin-right: 1px;\n}\n[data-v-68bdd6bc] .van-cell__value {\n flex: 2 !important;\n}\n[data-v-68bdd6bc] .van-cell__title {\n font-size: 12px !important;\n color: #666 !important;\n text-align: left !important;\n}\n[data-v-68bdd6bc] .van-cell__value {\n font-size: 12px !important;\n color: #888 !important;\n}\n[data-v-68bdd6bc] .van-cell {\n padding: 2px 10px !important;\n}")();
|
|
19641
19651
|
const _hoisted_1$4 = {
|
|
19642
19652
|
class: "widget"
|
|
@@ -20282,7 +20292,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
20282
20292
|
}
|
|
20283
20293
|
};
|
|
20284
20294
|
var TreePicker = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-6744b874"]]);
|
|
20285
|
-
var CascaderPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.cascader-pop[data-v-
|
|
20295
|
+
var CascaderPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.cascader-pop[data-v-ed5ef2aa] {\r\n width: 100%;\r\n overflow: hidden;\n}\n.cascader-selector[data-v-ed5ef2aa] {\r\n padding: 10px;\n}\n.search-buttons[data-v-ed5ef2aa] {\r\n display: flex;\r\n gap: 10px;\n}\n.clear-btn[data-v-ed5ef2aa] {\r\n background-color: #f2f3f5;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.confirm-btn[data-v-ed5ef2aa] {\r\n background-color: #1989fa;\r\n color: white;\r\n border: none;\r\n border-radius: 4px;\r\n padding: 4px 8px;\r\n font-size: 14px;\n}\n.no-results[data-v-ed5ef2aa] {\r\n text-align: center;\r\n padding: 20px;\r\n color: #969799;\n}\n.cascader-header[data-v-ed5ef2aa] {\r\n padding: 10px;\r\n border-bottom: 1px solid #ebedf0;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\n}\n.current-path[data-v-ed5ef2aa] {\r\n flex: 1;\r\n font-size: 14px;\r\n color: #323233;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\n}\n.header-right[data-v-ed5ef2aa] {\r\n display: flex;\r\n gap: 8px;\r\n margin-left: auto;\n}\n.cancel-btn[data-v-ed5ef2aa] {\r\n color: #969799;\r\n margin-right: 5px;\n}\n.scroll-container[data-v-ed5ef2aa] {\r\n height: calc(80vh - 150px);\r\n overflow-y: auto;\n}\n.cell-content[data-v-ed5ef2aa] {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\n}\n.circle-selector[data-v-ed5ef2aa] {\r\n width: 20px;\r\n height: 20px;\r\n border-radius: 50%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n transition: all 0.2s;\r\n flex-shrink: 0;\n}\n.circle-selector.selected[data-v-ed5ef2aa] {\r\n background-color: #1989fa;\r\n border-color: #1989fa;\n}\n.circle-selector.selected .van-icon[data-v-ed5ef2aa] {\r\n color: white;\r\n font-size: 14px;\n}\n.van-cell__right-icon[data-v-ed5ef2aa] {\r\n color: #969799;\r\n font-size: 16px;\r\n margin-left: 8px;\n}\n.name[data-v-ed5ef2aa] {\r\n flex: 1;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\n}\n.cancel-btn[data-v-ed5ef2aa] {\r\n color: #969799;\n}\n.search-field[data-v-ed5ef2aa] {\r\n background: #fff;\r\n padding: 10px 16px;\r\n border-bottom: 1px solid #ebedf0;\r\n position: sticky;\r\n top: 0;\r\n z-index: 999;\r\n margin-bottom: 10px;\r\n flex-shrink: 0;\r\n /* \u9632\u6B62\u538B\u7F29 */\n}\r\n")();
|
|
20286
20296
|
const _hoisted_1$1 = {
|
|
20287
20297
|
class: "cascader-selector"
|
|
20288
20298
|
};
|
|
@@ -20349,12 +20359,6 @@ var __async = (__this, __arguments, generator) => {
|
|
|
20349
20359
|
selectedNodeId: ""
|
|
20350
20360
|
});
|
|
20351
20361
|
vue.onMounted(() => {
|
|
20352
|
-
props.idQueryNode({
|
|
20353
|
-
id: "",
|
|
20354
|
-
isReturnParent: true
|
|
20355
|
-
}, (node) => {
|
|
20356
|
-
data2.parentNode = node;
|
|
20357
|
-
});
|
|
20358
20362
|
});
|
|
20359
20363
|
const optionNodes = vue.computed(() => {
|
|
20360
20364
|
var _a;
|
|
@@ -20381,7 +20385,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
20381
20385
|
data2.keyword = "";
|
|
20382
20386
|
props.idQueryNode({
|
|
20383
20387
|
id: data2.parentNode.parentId,
|
|
20384
|
-
isReturnParent:
|
|
20388
|
+
isReturnParent: false
|
|
20385
20389
|
}, (node) => {
|
|
20386
20390
|
data2.parentNode = node;
|
|
20387
20391
|
});
|
|
@@ -20419,14 +20423,6 @@ var __async = (__this, __arguments, generator) => {
|
|
|
20419
20423
|
data2.parentNode = node2;
|
|
20420
20424
|
});
|
|
20421
20425
|
};
|
|
20422
|
-
vue.onMounted(() => __async(this, null, function* () {
|
|
20423
|
-
props.idQueryNode({
|
|
20424
|
-
id: "",
|
|
20425
|
-
isReturnParent: true
|
|
20426
|
-
}, (node) => {
|
|
20427
|
-
data2.parentNode = node;
|
|
20428
|
-
});
|
|
20429
|
-
}));
|
|
20430
20426
|
vue.watch(() => modelValue.value, (n, o) => __async(this, null, function* () {
|
|
20431
20427
|
data2.selectedNodeId = modelValue.value;
|
|
20432
20428
|
let params = {};
|
|
@@ -20510,7 +20506,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
20510
20506
|
color: "#e0e0e0"
|
|
20511
20507
|
})) : vue.createCommentVNode("", true)], 8, _hoisted_10)) : vue.createCommentVNode("", true), vue.createElementVNode("span", _hoisted_11, vue.toDisplayString(item.label), 1)])]),
|
|
20512
20508
|
_: 2
|
|
20513
|
-
}, [item.
|
|
20509
|
+
}, [item.canExpand ? {
|
|
20514
20510
|
name: "right-icon",
|
|
20515
20511
|
fn: vue.withCtx(() => [vue.createVNode(_component_van_icon, {
|
|
20516
20512
|
name: "arrow",
|
|
@@ -20525,7 +20521,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
20525
20521
|
};
|
|
20526
20522
|
}
|
|
20527
20523
|
};
|
|
20528
|
-
var CascaderPop = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-
|
|
20524
|
+
var CascaderPop = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-ed5ef2aa"]]);
|
|
20529
20525
|
const _sfc_main$1 = {
|
|
20530
20526
|
__name: "CascaderPicker",
|
|
20531
20527
|
props: {
|
package/package.json
CHANGED
package/src/api/index.js
CHANGED
|
@@ -139,4 +139,12 @@ export const part_detail = (data) => {
|
|
|
139
139
|
method: "POST",
|
|
140
140
|
data: data,
|
|
141
141
|
})
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
export const qw_department_children = (data) => {
|
|
145
|
+
return request_json({
|
|
146
|
+
url: vm.urlCallback() + "/ac-api/qw/department/children",
|
|
147
|
+
method: "POST",
|
|
148
|
+
data: data,
|
|
149
|
+
})
|
|
142
150
|
}
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
<span class="name">{{ item.label }}</span>
|
|
40
40
|
</div>
|
|
41
41
|
</template>
|
|
42
|
-
<template #right-icon v-if="item.
|
|
42
|
+
<template #right-icon v-if="item.canExpand">
|
|
43
43
|
<van-icon name="arrow" @click.stop="onNextLevel(item)" />
|
|
44
44
|
</template>
|
|
45
45
|
</van-cell>
|
|
@@ -91,10 +91,6 @@ const data = reactive({
|
|
|
91
91
|
})
|
|
92
92
|
|
|
93
93
|
onMounted(() => {
|
|
94
|
-
//查询根节点
|
|
95
|
-
props.idQueryNode({ id: '', isReturnParent: true }, (node) => {
|
|
96
|
-
data.parentNode = node
|
|
97
|
-
})
|
|
98
94
|
})
|
|
99
95
|
|
|
100
96
|
// 待选节点列表
|
|
@@ -125,7 +121,7 @@ const onBack = () => {
|
|
|
125
121
|
return
|
|
126
122
|
|
|
127
123
|
data.keyword = ""
|
|
128
|
-
props.idQueryNode({ id: data.parentNode.parentId, isReturnParent:
|
|
124
|
+
props.idQueryNode({ id: data.parentNode.parentId, isReturnParent: false }, (node) => {
|
|
129
125
|
data.parentNode = node
|
|
130
126
|
})
|
|
131
127
|
}
|
|
@@ -172,13 +168,6 @@ const onNextLevel = (node) => {
|
|
|
172
168
|
})
|
|
173
169
|
}
|
|
174
170
|
|
|
175
|
-
//首页加载
|
|
176
|
-
onMounted(async () => {
|
|
177
|
-
props.idQueryNode({ id: '', isReturnParent: true }, (node) => {
|
|
178
|
-
data.parentNode = node
|
|
179
|
-
})
|
|
180
|
-
})
|
|
181
|
-
|
|
182
171
|
watch(() => modelValue.value, async (n, o) => {
|
|
183
172
|
data.selectedNodeId = modelValue.value
|
|
184
173
|
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="widget">
|
|
3
|
-
<van-image round width="80px" height="80px" :src="
|
|
3
|
+
<van-image round width="80px" height="80px" :src="props.avatar" class="user-avatar" />
|
|
4
4
|
<div class="user-info">
|
|
5
|
-
<span class="user-info-item">{{
|
|
6
|
-
<span class="user-info-item">{{
|
|
7
|
-
<span class="user-info-item">{{
|
|
8
|
-
<span class="user-info-item">{{ data.userInfo?.wxUser?.mobile }}</span>
|
|
5
|
+
<span class="user-info-item">{{ props.name }}</span>
|
|
6
|
+
<span class="user-info-item">{{ props.position }}</span>
|
|
7
|
+
<span class="user-info-item">{{ props.mobile }}</span>
|
|
9
8
|
</div>
|
|
10
9
|
<div class="user-jobs">
|
|
11
|
-
<span class="job-item" v-for="(item, i) in
|
|
10
|
+
<span class="job-item" v-for="(item, i) in departments" :key="i">{{ item }}</span>
|
|
12
11
|
</div>
|
|
13
12
|
|
|
14
13
|
<van-button block class="logout-button" @click="onLogout">
|
|
@@ -20,35 +19,39 @@
|
|
|
20
19
|
<script setup>
|
|
21
20
|
import { reactive, onMounted, watch, defineEmits, computed } from "vue";
|
|
22
21
|
import util from "../util"
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
22
|
+
import { type } from "os";
|
|
23
|
+
|
|
24
|
+
const props = defineProps({
|
|
25
|
+
avatar:{
|
|
26
|
+
type:String,
|
|
27
|
+
default:''
|
|
28
|
+
},
|
|
29
|
+
name:{
|
|
30
|
+
type:String,
|
|
31
|
+
default:''
|
|
32
|
+
},
|
|
33
|
+
position:{
|
|
34
|
+
type:String,
|
|
35
|
+
default:''
|
|
36
|
+
},
|
|
37
|
+
mobile:{
|
|
38
|
+
type:String,
|
|
39
|
+
default:''
|
|
40
|
+
},
|
|
41
|
+
departments:{
|
|
42
|
+
type:Array,
|
|
43
|
+
default:[]
|
|
44
|
+
}
|
|
26
45
|
})
|
|
27
|
-
const emit = defineEmits(['logout'])
|
|
28
|
-
|
|
29
|
-
const deptPaths = computed(() => {
|
|
30
|
-
//过滤掉公司
|
|
31
|
-
if (data.userInfo && data.userInfo.departments && data.userInfo.departments.length>1)
|
|
32
|
-
return data.userInfo.departments.filter(item => item.id != '1')
|
|
33
|
-
|
|
34
|
-
// 外部访客,返回公司名
|
|
35
|
-
if(data.userInfo && data.userInfo.wxUser)
|
|
36
|
-
return [{name: data.userInfo.wxUser.corp}]
|
|
37
46
|
|
|
38
|
-
|
|
39
|
-
})
|
|
47
|
+
const emit = defineEmits(['logout'])
|
|
40
48
|
|
|
41
49
|
const onLogout = () => {
|
|
42
50
|
emit('logout')
|
|
43
51
|
}
|
|
44
52
|
|
|
45
|
-
const getUserInfo = async () => {
|
|
46
|
-
let res = await util.auth_get_user_info()
|
|
47
|
-
data.userInfo = res.data
|
|
48
|
-
}
|
|
49
|
-
|
|
50
53
|
onMounted(() => {
|
|
51
|
-
|
|
54
|
+
|
|
52
55
|
})
|
|
53
56
|
</script>
|
|
54
57
|
|
|
Binary file
|
|
Binary file
|