widget.qw 1.0.96 → 1.0.97
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/.env.development +1 -1
- package/build/style.css +39 -39
- package/build/widget.qw.es.js +9 -10
- package/build/widget.qw.umd.js +9 -10
- package/package.json +1 -1
- package/src/api/index.js +1 -1
- package/src/components/CascaderPicker.vue +9 -2
- package/src/components/CascaderPop.vue +1 -0
- package/src/components/data_selector.vue +0 -1
- package/src/components/widget/UserPop.vue +0 -1
- package/src/views/cascaderpicker/userpicker.vue +10 -31
- package/src/views/userpicker/index.vue +9 -19
package/.env.development
CHANGED
package/build/style.css
CHANGED
|
@@ -148,31 +148,31 @@
|
|
|
148
148
|
opacity: 1;
|
|
149
149
|
-webkit-text-fill-color: #000;
|
|
150
150
|
}
|
|
151
|
-
.popup-style[data-v-
|
|
151
|
+
.popup-style[data-v-e306bd52] {
|
|
152
152
|
height: 21.25rem;
|
|
153
153
|
}
|
|
154
|
-
.showMultipleButton[data-v-
|
|
154
|
+
.showMultipleButton[data-v-e306bd52] {
|
|
155
155
|
padding-bottom: 0;
|
|
156
156
|
}
|
|
157
|
-
.showMultipleButton .van-button[data-v-
|
|
157
|
+
.showMultipleButton .van-button[data-v-e306bd52] {
|
|
158
158
|
border: 0;
|
|
159
159
|
}
|
|
160
|
-
.flex-between[data-v-
|
|
160
|
+
.flex-between[data-v-e306bd52] {
|
|
161
161
|
padding: 10px;
|
|
162
162
|
display: flex;
|
|
163
163
|
justify-content: space-between;
|
|
164
164
|
align-items: center;
|
|
165
165
|
}
|
|
166
|
-
.bold[data-v-
|
|
166
|
+
.bold[data-v-e306bd52] {
|
|
167
167
|
font-weight: bold;
|
|
168
168
|
color: #444;
|
|
169
169
|
}
|
|
170
|
-
.checkbox-style[data-v-
|
|
170
|
+
.checkbox-style[data-v-e306bd52] {
|
|
171
171
|
/* height: 220px; */
|
|
172
172
|
height: calc(220px - 30px);
|
|
173
173
|
overflow-y: auto;
|
|
174
174
|
}
|
|
175
|
-
.select-all-container[data-v-
|
|
175
|
+
.select-all-container[data-v-e306bd52] {
|
|
176
176
|
font-size: 14px;
|
|
177
177
|
padding: 0 16px;
|
|
178
178
|
margin: 10px 0;
|
|
@@ -180,12 +180,12 @@
|
|
|
180
180
|
justify-content: flex-end;
|
|
181
181
|
align-items: center;
|
|
182
182
|
}
|
|
183
|
-
.select-all-container .van-checkbox[data-v-
|
|
183
|
+
.select-all-container .van-checkbox[data-v-e306bd52] {
|
|
184
184
|
margin-left: auto;
|
|
185
185
|
}
|
|
186
186
|
|
|
187
187
|
/* 新增:调整方形复选框的边距 */
|
|
188
|
-
.van-checkbox--square[data-v-
|
|
188
|
+
.van-checkbox--square[data-v-e306bd52] {
|
|
189
189
|
margin-left: 8px;
|
|
190
190
|
}
|
|
191
191
|
|
|
@@ -515,25 +515,25 @@
|
|
|
515
515
|
overflow-y: auto;
|
|
516
516
|
}
|
|
517
517
|
|
|
518
|
-
.user-popup[data-v-
|
|
518
|
+
.user-popup[data-v-85dea264] {
|
|
519
519
|
width: 100%;
|
|
520
520
|
overflow: hidden;
|
|
521
521
|
}
|
|
522
|
-
.department-selector[data-v-
|
|
522
|
+
.department-selector[data-v-85dea264] {
|
|
523
523
|
padding: 10px;
|
|
524
524
|
}
|
|
525
|
-
.search-buttons[data-v-
|
|
525
|
+
.search-buttons[data-v-85dea264] {
|
|
526
526
|
display: flex;
|
|
527
527
|
gap: 10px;
|
|
528
528
|
}
|
|
529
|
-
.clear-btn[data-v-
|
|
529
|
+
.clear-btn[data-v-85dea264] {
|
|
530
530
|
background-color: #f2f3f5;
|
|
531
531
|
border: none;
|
|
532
532
|
border-radius: 4px;
|
|
533
533
|
padding: 4px 8px;
|
|
534
534
|
font-size: 14px;
|
|
535
535
|
}
|
|
536
|
-
.confirm-btn[data-v-
|
|
536
|
+
.confirm-btn[data-v-85dea264] {
|
|
537
537
|
background-color: #1989fa;
|
|
538
538
|
color: white;
|
|
539
539
|
border: none;
|
|
@@ -541,19 +541,19 @@
|
|
|
541
541
|
padding: 4px 8px;
|
|
542
542
|
font-size: 14px;
|
|
543
543
|
}
|
|
544
|
-
.no-results[data-v-
|
|
544
|
+
.no-results[data-v-85dea264] {
|
|
545
545
|
text-align: center;
|
|
546
546
|
padding: 20px;
|
|
547
547
|
color: #969799;
|
|
548
548
|
}
|
|
549
|
-
.picker-header[data-v-
|
|
549
|
+
.picker-header[data-v-85dea264] {
|
|
550
550
|
padding: 10px;
|
|
551
551
|
border-bottom: 1px solid #ebedf0;
|
|
552
552
|
display: flex;
|
|
553
553
|
justify-content: space-between;
|
|
554
554
|
align-items: center;
|
|
555
555
|
}
|
|
556
|
-
.current-path[data-v-
|
|
556
|
+
.current-path[data-v-85dea264] {
|
|
557
557
|
flex: 1;
|
|
558
558
|
font-size: 14px;
|
|
559
559
|
color: #323233;
|
|
@@ -561,16 +561,16 @@
|
|
|
561
561
|
overflow: hidden;
|
|
562
562
|
text-overflow: ellipsis;
|
|
563
563
|
}
|
|
564
|
-
.header-right[data-v-
|
|
564
|
+
.header-right[data-v-85dea264] {
|
|
565
565
|
display: flex;
|
|
566
566
|
gap: 8px;
|
|
567
567
|
margin-left: auto;
|
|
568
568
|
}
|
|
569
|
-
.cancel-btn[data-v-
|
|
569
|
+
.cancel-btn[data-v-85dea264] {
|
|
570
570
|
color: #969799;
|
|
571
571
|
margin-right: 5px;
|
|
572
572
|
}
|
|
573
|
-
.scroll-container[data-v-
|
|
573
|
+
.scroll-container[data-v-85dea264] {
|
|
574
574
|
height: calc(80vh - 150px);
|
|
575
575
|
overflow-y: auto;
|
|
576
576
|
}
|
|
@@ -743,25 +743,25 @@
|
|
|
743
743
|
margin:3px;
|
|
744
744
|
}
|
|
745
745
|
|
|
746
|
-
.cascader-pop[data-v-
|
|
746
|
+
.cascader-pop[data-v-37dc4af2] {
|
|
747
747
|
width: 100%;
|
|
748
748
|
overflow: hidden;
|
|
749
749
|
}
|
|
750
|
-
.cascader-selector[data-v-
|
|
750
|
+
.cascader-selector[data-v-37dc4af2] {
|
|
751
751
|
padding: 10px;
|
|
752
752
|
}
|
|
753
|
-
.search-buttons[data-v-
|
|
753
|
+
.search-buttons[data-v-37dc4af2] {
|
|
754
754
|
display: flex;
|
|
755
755
|
gap: 10px;
|
|
756
756
|
}
|
|
757
|
-
.clear-btn[data-v-
|
|
757
|
+
.clear-btn[data-v-37dc4af2] {
|
|
758
758
|
background-color: #f2f3f5;
|
|
759
759
|
border: none;
|
|
760
760
|
border-radius: 4px;
|
|
761
761
|
padding: 4px 8px;
|
|
762
762
|
font-size: 14px;
|
|
763
763
|
}
|
|
764
|
-
.confirm-btn[data-v-
|
|
764
|
+
.confirm-btn[data-v-37dc4af2] {
|
|
765
765
|
background-color: #1989fa;
|
|
766
766
|
color: white;
|
|
767
767
|
border: none;
|
|
@@ -769,19 +769,19 @@
|
|
|
769
769
|
padding: 4px 8px;
|
|
770
770
|
font-size: 14px;
|
|
771
771
|
}
|
|
772
|
-
.no-results[data-v-
|
|
772
|
+
.no-results[data-v-37dc4af2] {
|
|
773
773
|
text-align: center;
|
|
774
774
|
padding: 20px;
|
|
775
775
|
color: #969799;
|
|
776
776
|
}
|
|
777
|
-
.cascader-header[data-v-
|
|
777
|
+
.cascader-header[data-v-37dc4af2] {
|
|
778
778
|
padding: 10px;
|
|
779
779
|
border-bottom: 1px solid #ebedf0;
|
|
780
780
|
display: flex;
|
|
781
781
|
justify-content: space-between;
|
|
782
782
|
align-items: center;
|
|
783
783
|
}
|
|
784
|
-
.current-path[data-v-
|
|
784
|
+
.current-path[data-v-37dc4af2] {
|
|
785
785
|
flex: 1;
|
|
786
786
|
font-size: 14px;
|
|
787
787
|
margin-left:5px;
|
|
@@ -790,25 +790,25 @@
|
|
|
790
790
|
overflow: hidden;
|
|
791
791
|
text-overflow: ellipsis;
|
|
792
792
|
}
|
|
793
|
-
.header-right[data-v-
|
|
793
|
+
.header-right[data-v-37dc4af2] {
|
|
794
794
|
display: flex;
|
|
795
795
|
gap: 8px;
|
|
796
796
|
margin-left: auto;
|
|
797
797
|
}
|
|
798
|
-
.cancel-btn[data-v-
|
|
798
|
+
.cancel-btn[data-v-37dc4af2] {
|
|
799
799
|
color: #969799;
|
|
800
800
|
margin-right: 5px;
|
|
801
801
|
}
|
|
802
|
-
.scroll-container[data-v-
|
|
802
|
+
.scroll-container[data-v-37dc4af2] {
|
|
803
803
|
height: calc(80vh - 150px);
|
|
804
804
|
overflow-y: auto;
|
|
805
805
|
}
|
|
806
|
-
.cell-content[data-v-
|
|
806
|
+
.cell-content[data-v-37dc4af2] {
|
|
807
807
|
display: flex;
|
|
808
808
|
align-items: center;
|
|
809
809
|
gap: 12px;
|
|
810
810
|
}
|
|
811
|
-
.circle-selector[data-v-
|
|
811
|
+
.circle-selector[data-v-37dc4af2] {
|
|
812
812
|
width: 20px;
|
|
813
813
|
height: 20px;
|
|
814
814
|
border-radius: 50%;
|
|
@@ -818,29 +818,29 @@
|
|
|
818
818
|
transition: all 0.2s;
|
|
819
819
|
flex-shrink: 0;
|
|
820
820
|
}
|
|
821
|
-
.circle-selector.selected[data-v-
|
|
821
|
+
.circle-selector.selected[data-v-37dc4af2] {
|
|
822
822
|
background-color: #1989fa;
|
|
823
823
|
border-color: #1989fa;
|
|
824
824
|
}
|
|
825
|
-
.circle-selector.selected .van-icon[data-v-
|
|
825
|
+
.circle-selector.selected .van-icon[data-v-37dc4af2] {
|
|
826
826
|
color: white;
|
|
827
827
|
font-size: 14px;
|
|
828
828
|
}
|
|
829
|
-
.van-cell__right-icon[data-v-
|
|
829
|
+
.van-cell__right-icon[data-v-37dc4af2] {
|
|
830
830
|
color: #969799;
|
|
831
831
|
font-size: 16px;
|
|
832
832
|
margin-left: 8px;
|
|
833
833
|
}
|
|
834
|
-
.name[data-v-
|
|
834
|
+
.name[data-v-37dc4af2] {
|
|
835
835
|
flex: 1;
|
|
836
836
|
overflow: hidden;
|
|
837
837
|
text-overflow: ellipsis;
|
|
838
838
|
white-space: nowrap;
|
|
839
839
|
}
|
|
840
|
-
.cancel-btn[data-v-
|
|
840
|
+
.cancel-btn[data-v-37dc4af2] {
|
|
841
841
|
color: #969799;
|
|
842
842
|
}
|
|
843
|
-
.search-field[data-v-
|
|
843
|
+
.search-field[data-v-37dc4af2] {
|
|
844
844
|
background: #fff;
|
|
845
845
|
padding: 10px 16px;
|
|
846
846
|
border-bottom: 1px solid #ebedf0;
|
package/build/widget.qw.es.js
CHANGED
|
@@ -3337,7 +3337,7 @@ const get_wxuser_by_id = (data2) => {
|
|
|
3337
3337
|
};
|
|
3338
3338
|
function auth_children(data2) {
|
|
3339
3339
|
return service$3({
|
|
3340
|
-
url: vm.urlCallback() + "/
|
|
3340
|
+
url: vm.urlCallback() + "/ac-api/qw/auth/children",
|
|
3341
3341
|
method: "POST",
|
|
3342
3342
|
data: data2
|
|
3343
3343
|
});
|
|
@@ -18713,7 +18713,7 @@ const _sfc_main$o = {
|
|
|
18713
18713
|
};
|
|
18714
18714
|
}
|
|
18715
18715
|
};
|
|
18716
|
-
var data_selector_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.popup-style[data-v-
|
|
18716
|
+
var data_selector_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.popup-style[data-v-e306bd52] {\r\n height: 21.25rem;\n}\n.showMultipleButton[data-v-e306bd52] {\r\n padding-bottom: 0;\n}\n.showMultipleButton .van-button[data-v-e306bd52] {\r\n border: 0;\n}\n.flex-between[data-v-e306bd52] {\r\n padding: 10px;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\n}\n.bold[data-v-e306bd52] {\r\n font-weight: bold;\r\n color: #444;\n}\n.checkbox-style[data-v-e306bd52] {\r\n /* height: 220px; */\r\n height: calc(220px - 30px);\r\n overflow-y: auto;\n}\n.select-all-container[data-v-e306bd52] {\r\n font-size: 14px;\r\n padding: 0 16px;\r\n margin: 10px 0;\r\n display: flex;\r\n justify-content: flex-end;\r\n align-items: center;\n}\n.select-all-container .van-checkbox[data-v-e306bd52] {\r\n margin-left: auto;\n}\r\n\r\n/* \u65B0\u589E\uFF1A\u8C03\u6574\u65B9\u5F62\u590D\u9009\u6846\u7684\u8FB9\u8DDD */\n.van-checkbox--square[data-v-e306bd52] {\r\n margin-left: 8px;\n}\r\n")();
|
|
18717
18717
|
const _hoisted_1$h = {
|
|
18718
18718
|
class: "pad10 flex-between showMultipleButton"
|
|
18719
18719
|
};
|
|
@@ -18838,7 +18838,6 @@ const _sfc_main$n = {
|
|
|
18838
18838
|
});
|
|
18839
18839
|
});
|
|
18840
18840
|
const onClear = () => {
|
|
18841
|
-
console.log("11111111111111");
|
|
18842
18841
|
selectedItems.value = [];
|
|
18843
18842
|
if (props2.multiple) {
|
|
18844
18843
|
emit2("update:modelValue", []);
|
|
@@ -19040,7 +19039,7 @@ const _sfc_main$n = {
|
|
|
19040
19039
|
};
|
|
19041
19040
|
}
|
|
19042
19041
|
};
|
|
19043
|
-
var DataSelector = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-
|
|
19042
|
+
var DataSelector = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-e306bd52"]]);
|
|
19044
19043
|
var mult_list_selector_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\r\n/* // \u4FEE\u6539 confirmation-group \u548C confirmation-item \u7684\u6837\u5F0F */\n.confirmation-group[data-v-40a09897] {\r\n padding: 0 16px;\r\n --van-checkbox-disabled-icon-color: black;\n}\n.confirmation-item[data-v-40a09897] {\r\n padding: 12px 16px;\r\n margin: 0 -16px;\r\n border-bottom: 1px solid #f5f5f5;\r\n /* \u7981\u7528\u72B6\u6001\u6837\u5F0F */\n}\r\n\r\n/* // \u5728\u4E0B\u65B9\u6DFB\u52A0\u5A92\u4F53\u67E5\u8BE2\u9002\u914D\u5C0F\u5C4F\u5E55 */\n@media (max-width: 320px) {\n.confirmation-item[data-v-40a09897] {\r\n padding: 12px 8px;\r\n margin: 0 -8px;\n}\n}\n.confirmation-item[data-v-40a09897]:last-child {\r\n border-bottom: none;\n}\r\n\r\n/* \u65B0\u589E\u6837\u5F0F */\n.confirmation-tips[data-v-40a09897] {\r\n padding: 12px 16px;\r\n background: #f0faff;\r\n border-radius: 8px;\r\n margin: 10px 16px;\r\n display: flex;\r\n align-items: center;\r\n color: #1989fa;\r\n font-size: 13px;\r\n border: 1px solid #d9efff;\n}\n.confirmation-tips .van-icon[data-v-40a09897] {\r\n margin-right: 8px;\n}\r\n\r\n/* \u65B0\u589E\u5B57\u4F53\u7EE7\u627F\u6837\u5F0F */\n.confirmation-group[data-v-40a09897] {\r\n font-size: inherit; /* \u7EE7\u627F\u7236\u7EA7\u5B57\u4F53\u5927\u5C0F */\n}\n.option-text[data-v-40a09897] {\r\n font-size: 14px; /* \u660E\u786E\u6307\u5B9A\u5B57\u4F53\u5927\u5C0F */\r\n line-height: 1.5; /* \u4FDD\u6301\u884C\u9AD8\u4E00\u81F4 */\r\n /* color:black; */\n}\r\n\r\n/* \u9002\u914D\u79FB\u52A8\u7AEF\u7684\u5B57\u4F53\u8C03\u6574 */\n@media (max-width: 375px) {\n.option-text[data-v-40a09897] {\r\n font-size: 13px;\n}\n}\r\n\r\n/* \u65B0\u589E\u7981\u7528\u72B6\u6001\u6837\u5F0F */\n.custom-checkbox[data-v-40a09897]:disabled .--van-checkbox__icon {\r\n background-color: #f5f5f5;\r\n border-color: #ebedf0;\r\n transition: all 0.3s;\n}\n.custom-checkbox[data-v-40a09897]:disabled .van-checkbox__icon--checked {\r\n background-color: #1989fa;\r\n border-color: #1989fa;\r\n opacity: 0.7;\n}\n.van-checkbox--disabled[data-v-40a09897] .option-text {\r\n color: #969799;\n}\n.van-checkbox--disabled.van-checkbox--checked[data-v-40a09897] .option-text {\r\n color: #1989fa;\r\n opacity: 0.8;\n}\r\n")();
|
|
19045
19044
|
const _hoisted_1$g = {
|
|
19046
19045
|
key: 0,
|
|
@@ -20867,7 +20866,7 @@ const _sfc_main$g = {
|
|
|
20867
20866
|
}
|
|
20868
20867
|
};
|
|
20869
20868
|
var SingleUserSelector = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["__scopeId", "data-v-c23caaf6"]]);
|
|
20870
|
-
var UserPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.user-popup[data-v-
|
|
20869
|
+
var UserPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.user-popup[data-v-85dea264] {\r\n width: 100%;\r\n overflow: hidden;\n}\n.department-selector[data-v-85dea264] {\r\n padding: 10px;\n}\n.search-buttons[data-v-85dea264] {\r\n display: flex;\r\n gap: 10px;\n}\n.clear-btn[data-v-85dea264] {\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-85dea264] {\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-85dea264] {\r\n text-align: center;\r\n padding: 20px;\r\n color: #969799;\n}\n.picker-header[data-v-85dea264] {\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-85dea264] {\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-85dea264] {\r\n display: flex;\r\n gap: 8px;\r\n margin-left: auto;\n}\n.cancel-btn[data-v-85dea264] {\r\n color: #969799;\r\n margin-right: 5px;\n}\n.scroll-container[data-v-85dea264] {\r\n height: calc(80vh - 150px);\r\n overflow-y: auto;\n}\r\n")();
|
|
20871
20870
|
const _hoisted_1$9 = {
|
|
20872
20871
|
class: "department-selector"
|
|
20873
20872
|
};
|
|
@@ -21026,7 +21025,6 @@ const _sfc_main$f = {
|
|
|
21026
21025
|
const onBack = () => {
|
|
21027
21026
|
data2.keyword = "";
|
|
21028
21027
|
let paths = findDeptPaths(selectedDept.value, data2.totalDepts);
|
|
21029
|
-
console.log("22222222", paths);
|
|
21030
21028
|
if (!paths || paths.length <= 1) {
|
|
21031
21029
|
data2.selectedDeptId = "";
|
|
21032
21030
|
return;
|
|
@@ -21138,7 +21136,7 @@ const _sfc_main$f = {
|
|
|
21138
21136
|
};
|
|
21139
21137
|
}
|
|
21140
21138
|
};
|
|
21141
|
-
var UserPop = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__scopeId", "data-v-
|
|
21139
|
+
var UserPop = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__scopeId", "data-v-85dea264"]]);
|
|
21142
21140
|
var UsersPicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.user-item[data-v-2ccc13b6]{\r\n margin:3px;\n}\r\n")();
|
|
21143
21141
|
const _hoisted_1$8 = {
|
|
21144
21142
|
class: "user-list"
|
|
@@ -22117,7 +22115,7 @@ const _sfc_main$4 = {
|
|
|
22117
22115
|
}
|
|
22118
22116
|
};
|
|
22119
22117
|
var TreePicker = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["__scopeId", "data-v-ebc14630"]]);
|
|
22120
|
-
var CascaderPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.cascader-pop[data-v-
|
|
22118
|
+
var CascaderPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.cascader-pop[data-v-37dc4af2] {\r\n width: 100%;\r\n overflow: hidden;\n}\n.cascader-selector[data-v-37dc4af2] {\r\n padding: 10px;\n}\n.search-buttons[data-v-37dc4af2] {\r\n display: flex;\r\n gap: 10px;\n}\n.clear-btn[data-v-37dc4af2] {\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-37dc4af2] {\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-37dc4af2] {\r\n text-align: center;\r\n padding: 20px;\r\n color: #969799;\n}\n.cascader-header[data-v-37dc4af2] {\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-37dc4af2] {\r\n flex: 1;\r\n font-size: 14px;\r\n margin-left:5px;\r\n color: #323233;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\n}\n.header-right[data-v-37dc4af2] {\r\n display: flex;\r\n gap: 8px;\r\n margin-left: auto;\n}\n.cancel-btn[data-v-37dc4af2] {\r\n color: #969799;\r\n margin-right: 5px;\n}\n.scroll-container[data-v-37dc4af2] {\r\n height: calc(80vh - 150px);\r\n overflow-y: auto;\n}\n.cell-content[data-v-37dc4af2] {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\n}\n.circle-selector[data-v-37dc4af2] {\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-37dc4af2] {\r\n background-color: #1989fa;\r\n border-color: #1989fa;\n}\n.circle-selector.selected .van-icon[data-v-37dc4af2] {\r\n color: white;\r\n font-size: 14px;\n}\n.van-cell__right-icon[data-v-37dc4af2] {\r\n color: #969799;\r\n font-size: 16px;\r\n margin-left: 8px;\n}\n.name[data-v-37dc4af2] {\r\n flex: 1;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\n}\n.cancel-btn[data-v-37dc4af2] {\r\n color: #969799;\n}\n.search-field[data-v-37dc4af2] {\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")();
|
|
22121
22119
|
const _hoisted_1$3 = {
|
|
22122
22120
|
class: "cascader-selector"
|
|
22123
22121
|
};
|
|
@@ -22390,7 +22388,7 @@ const _sfc_main$3 = {
|
|
|
22390
22388
|
};
|
|
22391
22389
|
}
|
|
22392
22390
|
};
|
|
22393
|
-
var CascaderPop = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-
|
|
22391
|
+
var CascaderPop = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-37dc4af2"]]);
|
|
22394
22392
|
const _hoisted_1$2 = {
|
|
22395
22393
|
style: {
|
|
22396
22394
|
"display": "flex",
|
|
@@ -22501,7 +22499,8 @@ const _sfc_main$2 = {
|
|
|
22501
22499
|
params.hasChildren = false;
|
|
22502
22500
|
params.hasPaths = true;
|
|
22503
22501
|
yield props2.idQueryNode(params, (node) => {
|
|
22504
|
-
|
|
22502
|
+
let selectNode = util.findNode(id, node.children);
|
|
22503
|
+
data2.selectedNodes = [...data2.selectedNodes, selectNode];
|
|
22505
22504
|
});
|
|
22506
22505
|
}));
|
|
22507
22506
|
}
|
package/build/widget.qw.umd.js
CHANGED
|
@@ -3340,7 +3340,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
3340
3340
|
};
|
|
3341
3341
|
function auth_children(data2) {
|
|
3342
3342
|
return service$3({
|
|
3343
|
-
url: vm.urlCallback() + "/
|
|
3343
|
+
url: vm.urlCallback() + "/ac-api/qw/auth/children",
|
|
3344
3344
|
method: "POST",
|
|
3345
3345
|
data: data2
|
|
3346
3346
|
});
|
|
@@ -18716,7 +18716,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
18716
18716
|
};
|
|
18717
18717
|
}
|
|
18718
18718
|
};
|
|
18719
|
-
var data_selector_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.popup-style[data-v-
|
|
18719
|
+
var data_selector_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.popup-style[data-v-e306bd52] {\r\n height: 21.25rem;\n}\n.showMultipleButton[data-v-e306bd52] {\r\n padding-bottom: 0;\n}\n.showMultipleButton .van-button[data-v-e306bd52] {\r\n border: 0;\n}\n.flex-between[data-v-e306bd52] {\r\n padding: 10px;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\n}\n.bold[data-v-e306bd52] {\r\n font-weight: bold;\r\n color: #444;\n}\n.checkbox-style[data-v-e306bd52] {\r\n /* height: 220px; */\r\n height: calc(220px - 30px);\r\n overflow-y: auto;\n}\n.select-all-container[data-v-e306bd52] {\r\n font-size: 14px;\r\n padding: 0 16px;\r\n margin: 10px 0;\r\n display: flex;\r\n justify-content: flex-end;\r\n align-items: center;\n}\n.select-all-container .van-checkbox[data-v-e306bd52] {\r\n margin-left: auto;\n}\r\n\r\n/* \u65B0\u589E\uFF1A\u8C03\u6574\u65B9\u5F62\u590D\u9009\u6846\u7684\u8FB9\u8DDD */\n.van-checkbox--square[data-v-e306bd52] {\r\n margin-left: 8px;\n}\r\n")();
|
|
18720
18720
|
const _hoisted_1$h = {
|
|
18721
18721
|
class: "pad10 flex-between showMultipleButton"
|
|
18722
18722
|
};
|
|
@@ -18841,7 +18841,6 @@ var __async = (__this, __arguments, generator) => {
|
|
|
18841
18841
|
});
|
|
18842
18842
|
});
|
|
18843
18843
|
const onClear = () => {
|
|
18844
|
-
console.log("11111111111111");
|
|
18845
18844
|
selectedItems.value = [];
|
|
18846
18845
|
if (props2.multiple) {
|
|
18847
18846
|
emit2("update:modelValue", []);
|
|
@@ -19043,7 +19042,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
19043
19042
|
};
|
|
19044
19043
|
}
|
|
19045
19044
|
};
|
|
19046
|
-
var DataSelector = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-
|
|
19045
|
+
var DataSelector = /* @__PURE__ */ _export_sfc(_sfc_main$n, [["__scopeId", "data-v-e306bd52"]]);
|
|
19047
19046
|
var mult_list_selector_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\r\n/* // \u4FEE\u6539 confirmation-group \u548C confirmation-item \u7684\u6837\u5F0F */\n.confirmation-group[data-v-40a09897] {\r\n padding: 0 16px;\r\n --van-checkbox-disabled-icon-color: black;\n}\n.confirmation-item[data-v-40a09897] {\r\n padding: 12px 16px;\r\n margin: 0 -16px;\r\n border-bottom: 1px solid #f5f5f5;\r\n /* \u7981\u7528\u72B6\u6001\u6837\u5F0F */\n}\r\n\r\n/* // \u5728\u4E0B\u65B9\u6DFB\u52A0\u5A92\u4F53\u67E5\u8BE2\u9002\u914D\u5C0F\u5C4F\u5E55 */\n@media (max-width: 320px) {\n.confirmation-item[data-v-40a09897] {\r\n padding: 12px 8px;\r\n margin: 0 -8px;\n}\n}\n.confirmation-item[data-v-40a09897]:last-child {\r\n border-bottom: none;\n}\r\n\r\n/* \u65B0\u589E\u6837\u5F0F */\n.confirmation-tips[data-v-40a09897] {\r\n padding: 12px 16px;\r\n background: #f0faff;\r\n border-radius: 8px;\r\n margin: 10px 16px;\r\n display: flex;\r\n align-items: center;\r\n color: #1989fa;\r\n font-size: 13px;\r\n border: 1px solid #d9efff;\n}\n.confirmation-tips .van-icon[data-v-40a09897] {\r\n margin-right: 8px;\n}\r\n\r\n/* \u65B0\u589E\u5B57\u4F53\u7EE7\u627F\u6837\u5F0F */\n.confirmation-group[data-v-40a09897] {\r\n font-size: inherit; /* \u7EE7\u627F\u7236\u7EA7\u5B57\u4F53\u5927\u5C0F */\n}\n.option-text[data-v-40a09897] {\r\n font-size: 14px; /* \u660E\u786E\u6307\u5B9A\u5B57\u4F53\u5927\u5C0F */\r\n line-height: 1.5; /* \u4FDD\u6301\u884C\u9AD8\u4E00\u81F4 */\r\n /* color:black; */\n}\r\n\r\n/* \u9002\u914D\u79FB\u52A8\u7AEF\u7684\u5B57\u4F53\u8C03\u6574 */\n@media (max-width: 375px) {\n.option-text[data-v-40a09897] {\r\n font-size: 13px;\n}\n}\r\n\r\n/* \u65B0\u589E\u7981\u7528\u72B6\u6001\u6837\u5F0F */\n.custom-checkbox[data-v-40a09897]:disabled .--van-checkbox__icon {\r\n background-color: #f5f5f5;\r\n border-color: #ebedf0;\r\n transition: all 0.3s;\n}\n.custom-checkbox[data-v-40a09897]:disabled .van-checkbox__icon--checked {\r\n background-color: #1989fa;\r\n border-color: #1989fa;\r\n opacity: 0.7;\n}\n.van-checkbox--disabled[data-v-40a09897] .option-text {\r\n color: #969799;\n}\n.van-checkbox--disabled.van-checkbox--checked[data-v-40a09897] .option-text {\r\n color: #1989fa;\r\n opacity: 0.8;\n}\r\n")();
|
|
19048
19047
|
const _hoisted_1$g = {
|
|
19049
19048
|
key: 0,
|
|
@@ -20870,7 +20869,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
20870
20869
|
}
|
|
20871
20870
|
};
|
|
20872
20871
|
var SingleUserSelector = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["__scopeId", "data-v-c23caaf6"]]);
|
|
20873
|
-
var UserPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.user-popup[data-v-
|
|
20872
|
+
var UserPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.user-popup[data-v-85dea264] {\r\n width: 100%;\r\n overflow: hidden;\n}\n.department-selector[data-v-85dea264] {\r\n padding: 10px;\n}\n.search-buttons[data-v-85dea264] {\r\n display: flex;\r\n gap: 10px;\n}\n.clear-btn[data-v-85dea264] {\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-85dea264] {\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-85dea264] {\r\n text-align: center;\r\n padding: 20px;\r\n color: #969799;\n}\n.picker-header[data-v-85dea264] {\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-85dea264] {\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-85dea264] {\r\n display: flex;\r\n gap: 8px;\r\n margin-left: auto;\n}\n.cancel-btn[data-v-85dea264] {\r\n color: #969799;\r\n margin-right: 5px;\n}\n.scroll-container[data-v-85dea264] {\r\n height: calc(80vh - 150px);\r\n overflow-y: auto;\n}\r\n")();
|
|
20874
20873
|
const _hoisted_1$9 = {
|
|
20875
20874
|
class: "department-selector"
|
|
20876
20875
|
};
|
|
@@ -21029,7 +21028,6 @@ var __async = (__this, __arguments, generator) => {
|
|
|
21029
21028
|
const onBack = () => {
|
|
21030
21029
|
data2.keyword = "";
|
|
21031
21030
|
let paths = findDeptPaths(selectedDept.value, data2.totalDepts);
|
|
21032
|
-
console.log("22222222", paths);
|
|
21033
21031
|
if (!paths || paths.length <= 1) {
|
|
21034
21032
|
data2.selectedDeptId = "";
|
|
21035
21033
|
return;
|
|
@@ -21141,7 +21139,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
21141
21139
|
};
|
|
21142
21140
|
}
|
|
21143
21141
|
};
|
|
21144
|
-
var UserPop = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__scopeId", "data-v-
|
|
21142
|
+
var UserPop = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["__scopeId", "data-v-85dea264"]]);
|
|
21145
21143
|
var UsersPicker_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.user-item[data-v-2ccc13b6]{\r\n margin:3px;\n}\r\n")();
|
|
21146
21144
|
const _hoisted_1$8 = {
|
|
21147
21145
|
class: "user-list"
|
|
@@ -22120,7 +22118,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
22120
22118
|
}
|
|
22121
22119
|
};
|
|
22122
22120
|
var TreePicker = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["__scopeId", "data-v-ebc14630"]]);
|
|
22123
|
-
var CascaderPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.cascader-pop[data-v-
|
|
22121
|
+
var CascaderPop_vue_vue_type_style_index_0_scoped_true_lang = /* @__PURE__ */ (() => "\n.cascader-pop[data-v-37dc4af2] {\r\n width: 100%;\r\n overflow: hidden;\n}\n.cascader-selector[data-v-37dc4af2] {\r\n padding: 10px;\n}\n.search-buttons[data-v-37dc4af2] {\r\n display: flex;\r\n gap: 10px;\n}\n.clear-btn[data-v-37dc4af2] {\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-37dc4af2] {\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-37dc4af2] {\r\n text-align: center;\r\n padding: 20px;\r\n color: #969799;\n}\n.cascader-header[data-v-37dc4af2] {\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-37dc4af2] {\r\n flex: 1;\r\n font-size: 14px;\r\n margin-left:5px;\r\n color: #323233;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\n}\n.header-right[data-v-37dc4af2] {\r\n display: flex;\r\n gap: 8px;\r\n margin-left: auto;\n}\n.cancel-btn[data-v-37dc4af2] {\r\n color: #969799;\r\n margin-right: 5px;\n}\n.scroll-container[data-v-37dc4af2] {\r\n height: calc(80vh - 150px);\r\n overflow-y: auto;\n}\n.cell-content[data-v-37dc4af2] {\r\n display: flex;\r\n align-items: center;\r\n gap: 12px;\n}\n.circle-selector[data-v-37dc4af2] {\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-37dc4af2] {\r\n background-color: #1989fa;\r\n border-color: #1989fa;\n}\n.circle-selector.selected .van-icon[data-v-37dc4af2] {\r\n color: white;\r\n font-size: 14px;\n}\n.van-cell__right-icon[data-v-37dc4af2] {\r\n color: #969799;\r\n font-size: 16px;\r\n margin-left: 8px;\n}\n.name[data-v-37dc4af2] {\r\n flex: 1;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\n}\n.cancel-btn[data-v-37dc4af2] {\r\n color: #969799;\n}\n.search-field[data-v-37dc4af2] {\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")();
|
|
22124
22122
|
const _hoisted_1$3 = {
|
|
22125
22123
|
class: "cascader-selector"
|
|
22126
22124
|
};
|
|
@@ -22393,7 +22391,7 @@ var __async = (__this, __arguments, generator) => {
|
|
|
22393
22391
|
};
|
|
22394
22392
|
}
|
|
22395
22393
|
};
|
|
22396
|
-
var CascaderPop = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-
|
|
22394
|
+
var CascaderPop = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["__scopeId", "data-v-37dc4af2"]]);
|
|
22397
22395
|
const _hoisted_1$2 = {
|
|
22398
22396
|
style: {
|
|
22399
22397
|
"display": "flex",
|
|
@@ -22504,7 +22502,8 @@ var __async = (__this, __arguments, generator) => {
|
|
|
22504
22502
|
params.hasChildren = false;
|
|
22505
22503
|
params.hasPaths = true;
|
|
22506
22504
|
yield props2.idQueryNode(params, (node) => {
|
|
22507
|
-
|
|
22505
|
+
let selectNode = util.findNode(id, node.children);
|
|
22506
|
+
data2.selectedNodes = [...data2.selectedNodes, selectNode];
|
|
22508
22507
|
});
|
|
22509
22508
|
}));
|
|
22510
22509
|
}
|
package/package.json
CHANGED
package/src/api/index.js
CHANGED
|
@@ -102,7 +102,7 @@ export const get_wxuser_by_id = (data) => {
|
|
|
102
102
|
|
|
103
103
|
export function auth_children(data) {
|
|
104
104
|
return request_json({
|
|
105
|
-
url: vm.urlCallback() + "/
|
|
105
|
+
url: vm.urlCallback() + "/ac-api/qw/auth/children",
|
|
106
106
|
method: "POST",
|
|
107
107
|
data: data,
|
|
108
108
|
});
|
|
@@ -114,9 +114,12 @@ const onDelete = (idx) => {
|
|
|
114
114
|
}
|
|
115
115
|
|
|
116
116
|
watch(() => JSON.stringify(modelValue.value), async (n, o) => {
|
|
117
|
+
//单用户选择时,将用户id记录在selectedNodeId,用户对象存入selectedNodes的第一个元素
|
|
117
118
|
if (!props.multiple) {
|
|
118
119
|
data.selectedNodeId = modelValue.value
|
|
119
|
-
}
|
|
120
|
+
}
|
|
121
|
+
//多用户选择时,遍历回调接口获取多用户对象列表,记录在selectedNodes
|
|
122
|
+
else {
|
|
120
123
|
data.selectedNodes = []
|
|
121
124
|
let ids = modelValue.value || []
|
|
122
125
|
ids.forEach(async (id) => {
|
|
@@ -126,7 +129,11 @@ watch(() => JSON.stringify(modelValue.value), async (n, o) => {
|
|
|
126
129
|
params.hasChildren = false
|
|
127
130
|
params.hasPaths= true
|
|
128
131
|
await props.idQueryNode(params, (node) => {
|
|
129
|
-
|
|
132
|
+
//在部门的children中查找id对应的用户
|
|
133
|
+
//部门的children中既有子部门又有部门的员工
|
|
134
|
+
let selectNode = util.findNode(id, node.children)
|
|
135
|
+
//将用户对象放入选中用户列表中
|
|
136
|
+
data.selectedNodes = [...data.selectedNodes, selectNode]
|
|
130
137
|
})
|
|
131
138
|
})
|
|
132
139
|
}
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
<script setup>
|
|
10
10
|
import { onMounted, reactive, defineProps, watch } from "vue";
|
|
11
11
|
import util from '@/util'
|
|
12
|
-
import { useVModel } from "@vueuse/core"
|
|
12
|
+
import { useVModel } from "@vueuse/core"
|
|
13
13
|
|
|
14
14
|
const props = defineProps({
|
|
15
15
|
modelValue: {
|
|
@@ -39,7 +39,7 @@ const props = defineProps({
|
|
|
39
39
|
})
|
|
40
40
|
|
|
41
41
|
const data = reactive({
|
|
42
|
-
isShow: false
|
|
42
|
+
isShow: false
|
|
43
43
|
})
|
|
44
44
|
|
|
45
45
|
const emit = defineEmits(['update:modelValue', 'select'])
|
|
@@ -66,7 +66,7 @@ const keywordQueryNode = async (params, setNode) => {
|
|
|
66
66
|
}
|
|
67
67
|
}
|
|
68
68
|
|
|
69
|
-
let res = await util.
|
|
69
|
+
let res = await util.qw_department_children(p)
|
|
70
70
|
if (res.code != 200)
|
|
71
71
|
return
|
|
72
72
|
|
|
@@ -74,8 +74,8 @@ const keywordQueryNode = async (params, setNode) => {
|
|
|
74
74
|
setNode(fn)
|
|
75
75
|
}
|
|
76
76
|
|
|
77
|
+
//查询用户所在部门详情信息
|
|
77
78
|
const idQueryNode = async (params, setNode) => {
|
|
78
|
-
// if (params.hasChildren) {
|
|
79
79
|
let p = {
|
|
80
80
|
id: params.id,
|
|
81
81
|
hasChildren: params.hasChildren,
|
|
@@ -92,44 +92,25 @@ const idQueryNode = async (params, setNode) => {
|
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
94
|
|
|
95
|
-
let res = await util.
|
|
95
|
+
let res = await util.qw_department_children(p)
|
|
96
96
|
if (res.code != 200)
|
|
97
97
|
return
|
|
98
98
|
|
|
99
99
|
let fn = formatNode(res.data)
|
|
100
|
-
|
|
101
|
-
// let selectNode = fn
|
|
102
|
-
// if(params.id != selectNode.id){
|
|
103
|
-
// selectNode = selectNode.children.find(item=>{
|
|
104
|
-
// return item.id == params.id
|
|
105
|
-
// })
|
|
106
|
-
// }
|
|
107
|
-
|
|
108
100
|
setNode(fn)
|
|
109
|
-
// }
|
|
110
|
-
// else {
|
|
111
|
-
// console.log('11111111111',params)
|
|
112
|
-
|
|
113
|
-
// let res = await util.get_wxuser_by_id({ userId: params.id })
|
|
114
|
-
// if (res.code != 200)
|
|
115
|
-
// return
|
|
116
|
-
|
|
117
|
-
// let fn = formatNode(res.data)
|
|
118
|
-
// setNode(fn)
|
|
119
|
-
// }
|
|
120
101
|
}
|
|
121
102
|
|
|
122
103
|
const formatNode = (node) => {
|
|
123
|
-
|
|
124
|
-
//部门
|
|
104
|
+
//格式化部门节点
|
|
125
105
|
if (!node.userid) {
|
|
106
|
+
//将子部门与部门用户都放入children中
|
|
126
107
|
let children = []
|
|
127
108
|
if (node.children && node.children.length > 0)
|
|
128
109
|
children = node.children
|
|
129
110
|
if (node.users && node.users.length > 0)
|
|
130
111
|
children = [...children, ...node.users]
|
|
131
112
|
|
|
132
|
-
|
|
113
|
+
return {
|
|
133
114
|
id: node.id,
|
|
134
115
|
parentId: node.parentid,
|
|
135
116
|
paths: formatNodes(node.paths),
|
|
@@ -143,9 +124,9 @@ const formatNode = (node) => {
|
|
|
143
124
|
canExpand: node.hasChildren || (node.users && node.users.length > 0)
|
|
144
125
|
}
|
|
145
126
|
}
|
|
146
|
-
|
|
127
|
+
//格式化人员节点
|
|
147
128
|
else {
|
|
148
|
-
|
|
129
|
+
return {
|
|
149
130
|
id: node.userid,
|
|
150
131
|
parentId: node.mainDepartment,
|
|
151
132
|
paths: [],
|
|
@@ -159,8 +140,6 @@ const formatNode = (node) => {
|
|
|
159
140
|
canExpand: false
|
|
160
141
|
}
|
|
161
142
|
}
|
|
162
|
-
|
|
163
|
-
return res
|
|
164
143
|
}
|
|
165
144
|
|
|
166
145
|
const formatNodes = (nodes) => {
|
|
@@ -1,30 +1,20 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div class="page">
|
|
3
|
-
<
|
|
4
|
-
:auth="formData.auth"
|
|
5
|
-
v-model="formData.userId"
|
|
6
|
-
@select="onSelect"
|
|
7
|
-
rootDeptId="-1"
|
|
8
|
-
/>
|
|
3
|
+
<UserPicker label="项目经理" multiple v-model="data.userids" />
|
|
9
4
|
</div>
|
|
10
5
|
</template>
|
|
11
6
|
|
|
12
7
|
<script setup>
|
|
13
|
-
import { reactive
|
|
14
|
-
|
|
15
|
-
deptRangeId: "production_dept_ids",
|
|
16
|
-
userId: "014391",
|
|
17
|
-
auth: "option",
|
|
18
|
-
});
|
|
8
|
+
import { reactive, onMounted } from "vue";
|
|
9
|
+
import UserPicker from '../cascaderpicker/userpicker.vue'
|
|
19
10
|
|
|
20
|
-
const
|
|
21
|
-
|
|
22
|
-
|
|
11
|
+
const data = reactive({
|
|
12
|
+
auth: 'require',
|
|
13
|
+
userids: ["HouMu"]
|
|
14
|
+
})
|
|
15
|
+
|
|
16
|
+
onMounted(() => {
|
|
23
17
|
|
|
24
|
-
onMounted(()=>{
|
|
25
|
-
setTimeout(()=>{
|
|
26
|
-
formData.singleUser = '014391'
|
|
27
|
-
},10000)
|
|
28
18
|
})
|
|
29
19
|
</script>
|
|
30
20
|
|