eoss-mobiles 0.2.97 → 0.2.98
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/lib/checkbox.js +0 -1
- package/lib/config/api.js +0 -1
- package/lib/eoss-mobile.common.js +52 -55
- package/lib/flow-btn.js +0 -1
- package/lib/flow-list.js +0 -1
- package/lib/flow.js +7 -11
- package/lib/index.js +1 -1
- package/lib/picker.js +0 -1
- package/lib/radio.js +0 -1
- package/lib/retrial-auth.js +0 -1
- package/lib/selector.js +44 -44
- package/lib/table-column.js +0 -1
- package/package.json +1 -1
- package/packages/flow/src/components/TaskRead.vue +0 -3
- package/packages/selector/src/main.vue +169 -169
- package/packages/selector/src/selector-field.vue +257 -256
- package/packages/selector/src/selector-tree.vue +3 -8
- package/src/config/api.js +0 -1
- package/src/index.js +1 -1
package/lib/picker.js
CHANGED
|
@@ -1673,7 +1673,6 @@ var getNodeInfoHtml = pending + '/task/taskHandle/getNodeInfo.dhtml';
|
|
|
1673
1673
|
// export const taskHandleHtml = '/api/mecp/v1/mecpItask/taskHandleHtml.json';
|
|
1674
1674
|
var taskHandleHtml = pending + '/task/taskHandle/taskHandle.dhtml';
|
|
1675
1675
|
var taskHandleHtmlImg = pending + '/task/taskHandle/taskHandleWithHandwrittenOpinion.dhtml';
|
|
1676
|
-
|
|
1677
1676
|
// 发起流程
|
|
1678
1677
|
// export const registerNew = '/api/v1/mecpItask/registerNew.json';
|
|
1679
1678
|
var registerNew = '/bpm/v1/mecpItask/registerNew.json';
|
package/lib/radio.js
CHANGED
|
@@ -1673,7 +1673,6 @@ var getNodeInfoHtml = pending + '/task/taskHandle/getNodeInfo.dhtml';
|
|
|
1673
1673
|
// export const taskHandleHtml = '/api/mecp/v1/mecpItask/taskHandleHtml.json';
|
|
1674
1674
|
var taskHandleHtml = pending + '/task/taskHandle/taskHandle.dhtml';
|
|
1675
1675
|
var taskHandleHtmlImg = pending + '/task/taskHandle/taskHandleWithHandwrittenOpinion.dhtml';
|
|
1676
|
-
|
|
1677
1676
|
// 发起流程
|
|
1678
1677
|
// export const registerNew = '/api/v1/mecpItask/registerNew.json';
|
|
1679
1678
|
var registerNew = '/bpm/v1/mecpItask/registerNew.json';
|
package/lib/retrial-auth.js
CHANGED
|
@@ -1676,7 +1676,6 @@ var getNodeInfoHtml = pending + '/task/taskHandle/getNodeInfo.dhtml';
|
|
|
1676
1676
|
// export const taskHandleHtml = '/api/mecp/v1/mecpItask/taskHandleHtml.json';
|
|
1677
1677
|
var taskHandleHtml = pending + '/task/taskHandle/taskHandle.dhtml';
|
|
1678
1678
|
var taskHandleHtmlImg = pending + '/task/taskHandle/taskHandleWithHandwrittenOpinion.dhtml';
|
|
1679
|
-
|
|
1680
1679
|
// 发起流程
|
|
1681
1680
|
// export const registerNew = '/api/v1/mecpItask/registerNew.json';
|
|
1682
1681
|
var registerNew = '/bpm/v1/mecpItask/registerNew.json';
|
package/lib/selector.js
CHANGED
|
@@ -1673,7 +1673,6 @@ var getNodeInfoHtml = pending + '/task/taskHandle/getNodeInfo.dhtml';
|
|
|
1673
1673
|
// export const taskHandleHtml = '/api/mecp/v1/mecpItask/taskHandleHtml.json';
|
|
1674
1674
|
var taskHandleHtml = pending + '/task/taskHandle/taskHandle.dhtml';
|
|
1675
1675
|
var taskHandleHtmlImg = pending + '/task/taskHandle/taskHandleWithHandwrittenOpinion.dhtml';
|
|
1676
|
-
|
|
1677
1676
|
// 发起流程
|
|
1678
1677
|
// export const registerNew = '/api/v1/mecpItask/registerNew.json';
|
|
1679
1678
|
var registerNew = '/bpm/v1/mecpItask/registerNew.json';
|
|
@@ -2216,8 +2215,8 @@ render._withStripped = true
|
|
|
2216
2215
|
|
|
2217
2216
|
// CONCATENATED MODULE: ./packages/selector/src/main.vue?vue&type=template&id=17308961
|
|
2218
2217
|
|
|
2219
|
-
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/selector/src/selector-tree.vue?vue&type=template&id=
|
|
2220
|
-
var
|
|
2218
|
+
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/selector/src/selector-tree.vue?vue&type=template&id=2e966fe8
|
|
2219
|
+
var selector_treevue_type_template_id_2e966fe8_render = function () {
|
|
2221
2220
|
var _vm = this
|
|
2222
2221
|
var _h = _vm.$createElement
|
|
2223
2222
|
var _c = _vm._self._c || _h
|
|
@@ -2396,11 +2395,11 @@ var selector_treevue_type_template_id_56b701a3_render = function () {
|
|
|
2396
2395
|
1
|
|
2397
2396
|
)
|
|
2398
2397
|
}
|
|
2399
|
-
var
|
|
2400
|
-
|
|
2398
|
+
var selector_treevue_type_template_id_2e966fe8_staticRenderFns = []
|
|
2399
|
+
selector_treevue_type_template_id_2e966fe8_render._withStripped = true
|
|
2401
2400
|
|
|
2402
2401
|
|
|
2403
|
-
// CONCATENATED MODULE: ./packages/selector/src/selector-tree.vue?vue&type=template&id=
|
|
2402
|
+
// CONCATENATED MODULE: ./packages/selector/src/selector-tree.vue?vue&type=template&id=2e966fe8
|
|
2404
2403
|
|
|
2405
2404
|
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/selector/src/tree.vue?vue&type=template&id=59562f91
|
|
2406
2405
|
var treevue_type_template_id_59562f91_render = function () {
|
|
@@ -3804,8 +3803,7 @@ var _props, _methods;
|
|
|
3804
3803
|
getNodeList: function getNodeList(isSearch) {
|
|
3805
3804
|
var _this2 = this;
|
|
3806
3805
|
|
|
3807
|
-
this.personnel = this.nodeList;
|
|
3808
|
-
|
|
3806
|
+
this.personnel = JSON.parse(JSON.stringify(this.nodeList));
|
|
3809
3807
|
// !isSearch && (this.list = $.deepClone(this.selectList));
|
|
3810
3808
|
if (!isSearch) {
|
|
3811
3809
|
if (typeof this.selectList == 'string') {
|
|
@@ -3824,8 +3822,6 @@ var _props, _methods;
|
|
|
3824
3822
|
_this.$set(i, 'checked', true);
|
|
3825
3823
|
} else if (i.children) {
|
|
3826
3824
|
_this.getActiveChildren(i.children, r[_this.valueKey]);
|
|
3827
|
-
} else {
|
|
3828
|
-
_this.$set(i, 'checked', false);
|
|
3829
3825
|
}
|
|
3830
3826
|
});
|
|
3831
3827
|
});
|
|
@@ -3846,8 +3842,6 @@ var _props, _methods;
|
|
|
3846
3842
|
_this.$set(x, 'checked', true);
|
|
3847
3843
|
} else if (x.children) {
|
|
3848
3844
|
_this.getActiveChildren(x.children, id);
|
|
3849
|
-
} else {
|
|
3850
|
-
_this.$set(x, 'checked', false);
|
|
3851
3845
|
}
|
|
3852
3846
|
});
|
|
3853
3847
|
},
|
|
@@ -4252,8 +4246,8 @@ var _props, _methods;
|
|
|
4252
4246
|
|
|
4253
4247
|
var selector_tree_component = Object(componentNormalizer["a" /* default */])(
|
|
4254
4248
|
src_selector_treevue_type_script_lang_js,
|
|
4255
|
-
|
|
4256
|
-
|
|
4249
|
+
selector_treevue_type_template_id_2e966fe8_render,
|
|
4250
|
+
selector_treevue_type_template_id_2e966fe8_staticRenderFns,
|
|
4257
4251
|
false,
|
|
4258
4252
|
null,
|
|
4259
4253
|
null,
|
|
@@ -4262,8 +4256,8 @@ var selector_tree_component = Object(componentNormalizer["a" /* default */])(
|
|
|
4262
4256
|
)
|
|
4263
4257
|
|
|
4264
4258
|
/* harmony default export */ var selector_tree = (selector_tree_component.exports);
|
|
4265
|
-
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/selector/src/selector-field.vue?vue&type=template&id=
|
|
4266
|
-
var
|
|
4259
|
+
// CONCATENATED MODULE: ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./packages/selector/src/selector-field.vue?vue&type=template&id=338153d2
|
|
4260
|
+
var selector_fieldvue_type_template_id_338153d2_render = function () {
|
|
4267
4261
|
var _vm = this
|
|
4268
4262
|
var _h = _vm.$createElement
|
|
4269
4263
|
var _c = _vm._self._c || _h
|
|
@@ -4281,6 +4275,11 @@ var selector_fieldvue_type_template_id_2643b418_render = function () {
|
|
|
4281
4275
|
clickable: "",
|
|
4282
4276
|
"right-icon": _vm.disabled || _vm.readonly ? "" : "arrow",
|
|
4283
4277
|
},
|
|
4278
|
+
on: {
|
|
4279
|
+
"click-right-icon": function ($event) {
|
|
4280
|
+
_vm.clickTree()
|
|
4281
|
+
},
|
|
4282
|
+
},
|
|
4284
4283
|
model: {
|
|
4285
4284
|
value: _vm.inputValue,
|
|
4286
4285
|
callback: function ($$v) {
|
|
@@ -4432,11 +4431,11 @@ var selector_fieldvue_type_template_id_2643b418_render = function () {
|
|
|
4432
4431
|
1
|
|
4433
4432
|
)
|
|
4434
4433
|
}
|
|
4435
|
-
var
|
|
4436
|
-
|
|
4434
|
+
var selector_fieldvue_type_template_id_338153d2_staticRenderFns = []
|
|
4435
|
+
selector_fieldvue_type_template_id_338153d2_render._withStripped = true
|
|
4437
4436
|
|
|
4438
4437
|
|
|
4439
|
-
// CONCATENATED MODULE: ./packages/selector/src/selector-field.vue?vue&type=template&id=
|
|
4438
|
+
// CONCATENATED MODULE: ./packages/selector/src/selector-field.vue?vue&type=template&id=338153d2
|
|
4440
4439
|
|
|
4441
4440
|
// CONCATENATED MODULE: ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./packages/selector/src/selector-field.vue?vue&type=script&lang=js
|
|
4442
4441
|
//
|
|
@@ -4512,6 +4511,7 @@ selector_fieldvue_type_template_id_2643b418_render._withStripped = true
|
|
|
4512
4511
|
//
|
|
4513
4512
|
//
|
|
4514
4513
|
//
|
|
4514
|
+
//
|
|
4515
4515
|
|
|
4516
4516
|
/* harmony default export */ var selector_fieldvue_type_script_lang_js = ({
|
|
4517
4517
|
name: 'selectorField',
|
|
@@ -4654,11 +4654,11 @@ selector_fieldvue_type_template_id_2643b418_render._withStripped = true
|
|
|
4654
4654
|
this.$emit('change', { list: _this.newSelectList });
|
|
4655
4655
|
},
|
|
4656
4656
|
|
|
4657
|
-
/**
|
|
4658
|
-
* clickTree
|
|
4659
|
-
* @desc:打开选人/单位页面
|
|
4660
|
-
* @date 2023年3月6日
|
|
4661
|
-
* @author liufan
|
|
4657
|
+
/**
|
|
4658
|
+
* clickTree
|
|
4659
|
+
* @desc:打开选人/单位页面
|
|
4660
|
+
* @date 2023年3月6日
|
|
4661
|
+
* @author liufan
|
|
4662
4662
|
*/
|
|
4663
4663
|
clickTree: function clickTree() {
|
|
4664
4664
|
var _this3 = this;
|
|
@@ -4674,12 +4674,12 @@ selector_fieldvue_type_template_id_2643b418_render._withStripped = true
|
|
|
4674
4674
|
}, 30);
|
|
4675
4675
|
},
|
|
4676
4676
|
|
|
4677
|
-
/**
|
|
4678
|
-
* delteList
|
|
4679
|
-
* @desc:删除选中的数据
|
|
4680
|
-
* @date 2023年3月6日
|
|
4681
|
-
* @author liufan
|
|
4682
|
-
* @param {String} val 当前数据的下标
|
|
4677
|
+
/**
|
|
4678
|
+
* delteList
|
|
4679
|
+
* @desc:删除选中的数据
|
|
4680
|
+
* @date 2023年3月6日
|
|
4681
|
+
* @author liufan
|
|
4682
|
+
* @param {String} val 当前数据的下标
|
|
4683
4683
|
*/
|
|
4684
4684
|
delteList: function delteList(val, res) {
|
|
4685
4685
|
if (this.disabled) return;
|
|
@@ -4710,8 +4710,8 @@ selector_fieldvue_type_template_id_2643b418_render._withStripped = true
|
|
|
4710
4710
|
|
|
4711
4711
|
var selector_field_component = Object(componentNormalizer["a" /* default */])(
|
|
4712
4712
|
src_selector_fieldvue_type_script_lang_js,
|
|
4713
|
-
|
|
4714
|
-
|
|
4713
|
+
selector_fieldvue_type_template_id_338153d2_render,
|
|
4714
|
+
selector_fieldvue_type_template_id_338153d2_staticRenderFns,
|
|
4715
4715
|
false,
|
|
4716
4716
|
null,
|
|
4717
4717
|
null,
|
|
@@ -4846,12 +4846,12 @@ var selector_field_component = Object(componentNormalizer["a" /* default */])(
|
|
|
4846
4846
|
this.showSelectorTree = !this.showSelectorTree;
|
|
4847
4847
|
},
|
|
4848
4848
|
|
|
4849
|
-
/**
|
|
4850
|
-
* handleDispose
|
|
4851
|
-
* @desc:确认选人
|
|
4852
|
-
* @date 2023年3月6日
|
|
4853
|
-
* @author liufan
|
|
4854
|
-
* @param {Object} val 选中的人员/单位
|
|
4849
|
+
/**
|
|
4850
|
+
* handleDispose
|
|
4851
|
+
* @desc:确认选人
|
|
4852
|
+
* @date 2023年3月6日
|
|
4853
|
+
* @author liufan
|
|
4854
|
+
* @param {Object} val 选中的人员/单位
|
|
4855
4855
|
*/
|
|
4856
4856
|
handleDispose: function handleDispose(val) {
|
|
4857
4857
|
this.inputValue = '';
|
|
@@ -4868,12 +4868,12 @@ var selector_field_component = Object(componentNormalizer["a" /* default */])(
|
|
|
4868
4868
|
this.showSelectorTree = false;
|
|
4869
4869
|
},
|
|
4870
4870
|
|
|
4871
|
-
/**
|
|
4872
|
-
* handleChangeSel
|
|
4873
|
-
* @desc:输入框数据发生变化时
|
|
4874
|
-
* @date 2023年3月6日
|
|
4875
|
-
* @author liufan
|
|
4876
|
-
* @param {Array} val 变化后的选中数据
|
|
4871
|
+
/**
|
|
4872
|
+
* handleChangeSel
|
|
4873
|
+
* @desc:输入框数据发生变化时
|
|
4874
|
+
* @date 2023年3月6日
|
|
4875
|
+
* @author liufan
|
|
4876
|
+
* @param {Array} val 变化后的选中数据
|
|
4877
4877
|
*/
|
|
4878
4878
|
handleChangeSel: function handleChangeSel(val) {
|
|
4879
4879
|
if (val) {
|
package/lib/table-column.js
CHANGED
|
@@ -1673,7 +1673,6 @@ var getNodeInfoHtml = pending + '/task/taskHandle/getNodeInfo.dhtml';
|
|
|
1673
1673
|
// export const taskHandleHtml = '/api/mecp/v1/mecpItask/taskHandleHtml.json';
|
|
1674
1674
|
var taskHandleHtml = pending + '/task/taskHandle/taskHandle.dhtml';
|
|
1675
1675
|
var taskHandleHtmlImg = pending + '/task/taskHandle/taskHandleWithHandwrittenOpinion.dhtml';
|
|
1676
|
-
|
|
1677
1676
|
// 发起流程
|
|
1678
1677
|
// export const registerNew = '/api/v1/mecpItask/registerNew.json';
|
|
1679
1678
|
var registerNew = '/bpm/v1/mecpItask/registerNew.json';
|
package/package.json
CHANGED
|
@@ -286,7 +286,6 @@ export default {
|
|
|
286
286
|
})
|
|
287
287
|
.then((res) => {
|
|
288
288
|
const { status, message, data } = res;
|
|
289
|
-
this.loading = false;
|
|
290
289
|
if (status === 'success') {
|
|
291
290
|
this.form.notificationMsgType = message.split(',');
|
|
292
291
|
this.defaultNotificationType = message.split(',');
|
|
@@ -313,7 +312,6 @@ export default {
|
|
|
313
312
|
}
|
|
314
313
|
})
|
|
315
314
|
.catch((err) => {
|
|
316
|
-
this.loading = false;
|
|
317
315
|
if (err.message && err.message !== 'canceled') {
|
|
318
316
|
this.$message.error(err.message);
|
|
319
317
|
}
|
|
@@ -365,7 +363,6 @@ export default {
|
|
|
365
363
|
}
|
|
366
364
|
})
|
|
367
365
|
.catch((err) => {
|
|
368
|
-
this.loading = false;
|
|
369
366
|
if (err.message && err.message !== 'canceled') {
|
|
370
367
|
this.$toast(err.message);
|
|
371
368
|
}
|
|
@@ -1,169 +1,169 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div class="em-selector" @click="handleClick">
|
|
3
|
-
<selector-field
|
|
4
|
-
v-if="!this.$scopedSlots.input && !this.$slots.input && !showTree"
|
|
5
|
-
v-bind="$attrs"
|
|
6
|
-
:input-value="inputValue"
|
|
7
|
-
:data="selectList"
|
|
8
|
-
@change="handleChangeSel"
|
|
9
|
-
@click="handleSelector"
|
|
10
|
-
/>
|
|
11
|
-
<slot v-else name="input" :click="handleSelector" />
|
|
12
|
-
<em-selector-tree
|
|
13
|
-
v-if="(showSelectorTree || showTree) && typeof value !== 'string'"
|
|
14
|
-
v-bind="$attrs"
|
|
15
|
-
v-on="$listeners"
|
|
16
|
-
:showTree="showTree"
|
|
17
|
-
:showMore="$listeners['left-icon'] == undefined"
|
|
18
|
-
:isTreeIcon="$scopedSlots['tree-icon'] != undefined"
|
|
19
|
-
:selectList="selectList"
|
|
20
|
-
@dispose="handleDispose"
|
|
21
|
-
@close="handleDispose()"
|
|
22
|
-
>
|
|
23
|
-
<template
|
|
24
|
-
v-if="$scopedSlots['tree-icon']"
|
|
25
|
-
slot="tree-icon"
|
|
26
|
-
slot-scope="{ value }"
|
|
27
|
-
>
|
|
28
|
-
<slot
|
|
29
|
-
v-if="$scopedSlots['tree-icon']"
|
|
30
|
-
name="tree-icon"
|
|
31
|
-
:value="value"
|
|
32
|
-
></slot>
|
|
33
|
-
</template>
|
|
34
|
-
</em-selector-tree>
|
|
35
|
-
<div v-if="typeof value === 'string'">
|
|
36
|
-
<em-selector-tree
|
|
37
|
-
v-show="showSelectorTree || showTree"
|
|
38
|
-
v-bind="$attrs"
|
|
39
|
-
v-on="$listeners"
|
|
40
|
-
:showTree="showTree"
|
|
41
|
-
:showMore="$listeners['left-icon'] == undefined"
|
|
42
|
-
:isTreeIcon="$scopedSlots['tree-icon'] != undefined"
|
|
43
|
-
:selectList.sync="selectList"
|
|
44
|
-
@dispose="handleDispose"
|
|
45
|
-
@close="handleDispose()"
|
|
46
|
-
>
|
|
47
|
-
<template
|
|
48
|
-
v-if="$scopedSlots['tree-icon']"
|
|
49
|
-
slot="tree-icon"
|
|
50
|
-
slot-scope="{ value }"
|
|
51
|
-
>
|
|
52
|
-
<slot
|
|
53
|
-
v-if="$scopedSlots['tree-icon']"
|
|
54
|
-
name="tree-icon"
|
|
55
|
-
:value="value"
|
|
56
|
-
></slot>
|
|
57
|
-
</template>
|
|
58
|
-
</em-selector-tree>
|
|
59
|
-
</div>
|
|
60
|
-
</div>
|
|
61
|
-
</template>
|
|
62
|
-
|
|
63
|
-
<script>
|
|
64
|
-
import EmSelectorTree from './selector-tree.vue';
|
|
65
|
-
import selectorField from './selector-field.vue';
|
|
66
|
-
export default {
|
|
67
|
-
components: { EmSelectorTree, selectorField },
|
|
68
|
-
name: 'EmSelector',
|
|
69
|
-
inheritAttrs: false,
|
|
70
|
-
props: {
|
|
71
|
-
value: { type: [Array, String], default: () => [] },
|
|
72
|
-
showTree: {
|
|
73
|
-
type: Boolean,
|
|
74
|
-
default: false
|
|
75
|
-
}
|
|
76
|
-
},
|
|
77
|
-
data() {
|
|
78
|
-
return {
|
|
79
|
-
showSelectorTree: false,
|
|
80
|
-
inputValue: ''
|
|
81
|
-
// newSelectList:[]
|
|
82
|
-
};
|
|
83
|
-
},
|
|
84
|
-
watch: {
|
|
85
|
-
value: {
|
|
86
|
-
handler(val) {
|
|
87
|
-
this.selectList = val;
|
|
88
|
-
if (this.selectList.length > 0) {
|
|
89
|
-
this.inputValue = this.selectList[0][
|
|
90
|
-
this.$attrs.labelKey || this.$attrs['label-key'] || 'showname'
|
|
91
|
-
];
|
|
92
|
-
} else {
|
|
93
|
-
this.inputValue = '';
|
|
94
|
-
}
|
|
95
|
-
},
|
|
96
|
-
deep: true,
|
|
97
|
-
immediate: true
|
|
98
|
-
}
|
|
99
|
-
},
|
|
100
|
-
computed: {
|
|
101
|
-
selectList: {
|
|
102
|
-
get() {
|
|
103
|
-
return this.value;
|
|
104
|
-
},
|
|
105
|
-
set(val) {
|
|
106
|
-
this.$emit('input', val);
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
},
|
|
110
|
-
mounted() {
|
|
111
|
-
// this.selectList = this.value
|
|
112
|
-
// console.log(this)
|
|
113
|
-
},
|
|
114
|
-
methods: {
|
|
115
|
-
handleClick() {
|
|
116
|
-
this.$emit('click');
|
|
117
|
-
},
|
|
118
|
-
handleSelector() {
|
|
119
|
-
if (this.$attrs.disabled || this.$attrs.readonly) return;
|
|
120
|
-
this.showSelectorTree = !this.showSelectorTree;
|
|
121
|
-
},
|
|
122
|
-
/**
|
|
123
|
-
* handleDispose
|
|
124
|
-
* @desc:确认选人
|
|
125
|
-
* @date 2023年3月6日
|
|
126
|
-
* @author liufan
|
|
127
|
-
* @param {Object} val 选中的人员/单位
|
|
128
|
-
*/
|
|
129
|
-
handleDispose(val) {
|
|
130
|
-
this.inputValue = '';
|
|
131
|
-
if (val) {
|
|
132
|
-
const { list } = val;
|
|
133
|
-
this.selectList = list;
|
|
134
|
-
if (val.list.length > 0) {
|
|
135
|
-
this.inputValue =
|
|
136
|
-
list[0][
|
|
137
|
-
this.$attrs.labelKey || this.$attrs['label-key'] || 'showname'
|
|
138
|
-
];
|
|
139
|
-
} else {
|
|
140
|
-
this.inputValue = '';
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
this.showSelectorTree = false;
|
|
144
|
-
},
|
|
145
|
-
/**
|
|
146
|
-
* handleChangeSel
|
|
147
|
-
* @desc:输入框数据发生变化时
|
|
148
|
-
* @date 2023年3月6日
|
|
149
|
-
* @author liufan
|
|
150
|
-
* @param {Array} val 变化后的选中数据
|
|
151
|
-
*/
|
|
152
|
-
handleChangeSel(val) {
|
|
153
|
-
if (val) {
|
|
154
|
-
const { list } = val;
|
|
155
|
-
this.selectList = list;
|
|
156
|
-
if (val.list.length > 0) {
|
|
157
|
-
this.inputValue =
|
|
158
|
-
list[0][
|
|
159
|
-
this.$attrs.labelKey || this.$attrs['label-key'] || 'showname'
|
|
160
|
-
];
|
|
161
|
-
} else {
|
|
162
|
-
this.inputValue = '';
|
|
163
|
-
}
|
|
164
|
-
}
|
|
165
|
-
this.$emit('input', val.list);
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
};
|
|
169
|
-
</script>
|
|
1
|
+
<template>
|
|
2
|
+
<div class="em-selector" @click="handleClick">
|
|
3
|
+
<selector-field
|
|
4
|
+
v-if="!this.$scopedSlots.input && !this.$slots.input && !showTree"
|
|
5
|
+
v-bind="$attrs"
|
|
6
|
+
:input-value="inputValue"
|
|
7
|
+
:data="selectList"
|
|
8
|
+
@change="handleChangeSel"
|
|
9
|
+
@click="handleSelector"
|
|
10
|
+
/>
|
|
11
|
+
<slot v-else name="input" :click="handleSelector" />
|
|
12
|
+
<em-selector-tree
|
|
13
|
+
v-if="(showSelectorTree || showTree) && typeof value !== 'string'"
|
|
14
|
+
v-bind="$attrs"
|
|
15
|
+
v-on="$listeners"
|
|
16
|
+
:showTree="showTree"
|
|
17
|
+
:showMore="$listeners['left-icon'] == undefined"
|
|
18
|
+
:isTreeIcon="$scopedSlots['tree-icon'] != undefined"
|
|
19
|
+
:selectList="selectList"
|
|
20
|
+
@dispose="handleDispose"
|
|
21
|
+
@close="handleDispose()"
|
|
22
|
+
>
|
|
23
|
+
<template
|
|
24
|
+
v-if="$scopedSlots['tree-icon']"
|
|
25
|
+
slot="tree-icon"
|
|
26
|
+
slot-scope="{ value }"
|
|
27
|
+
>
|
|
28
|
+
<slot
|
|
29
|
+
v-if="$scopedSlots['tree-icon']"
|
|
30
|
+
name="tree-icon"
|
|
31
|
+
:value="value"
|
|
32
|
+
></slot>
|
|
33
|
+
</template>
|
|
34
|
+
</em-selector-tree>
|
|
35
|
+
<div v-if="typeof value === 'string'">
|
|
36
|
+
<em-selector-tree
|
|
37
|
+
v-show="showSelectorTree || showTree"
|
|
38
|
+
v-bind="$attrs"
|
|
39
|
+
v-on="$listeners"
|
|
40
|
+
:showTree="showTree"
|
|
41
|
+
:showMore="$listeners['left-icon'] == undefined"
|
|
42
|
+
:isTreeIcon="$scopedSlots['tree-icon'] != undefined"
|
|
43
|
+
:selectList.sync="selectList"
|
|
44
|
+
@dispose="handleDispose"
|
|
45
|
+
@close="handleDispose()"
|
|
46
|
+
>
|
|
47
|
+
<template
|
|
48
|
+
v-if="$scopedSlots['tree-icon']"
|
|
49
|
+
slot="tree-icon"
|
|
50
|
+
slot-scope="{ value }"
|
|
51
|
+
>
|
|
52
|
+
<slot
|
|
53
|
+
v-if="$scopedSlots['tree-icon']"
|
|
54
|
+
name="tree-icon"
|
|
55
|
+
:value="value"
|
|
56
|
+
></slot>
|
|
57
|
+
</template>
|
|
58
|
+
</em-selector-tree>
|
|
59
|
+
</div>
|
|
60
|
+
</div>
|
|
61
|
+
</template>
|
|
62
|
+
|
|
63
|
+
<script>
|
|
64
|
+
import EmSelectorTree from './selector-tree.vue';
|
|
65
|
+
import selectorField from './selector-field.vue';
|
|
66
|
+
export default {
|
|
67
|
+
components: { EmSelectorTree, selectorField },
|
|
68
|
+
name: 'EmSelector',
|
|
69
|
+
inheritAttrs: false,
|
|
70
|
+
props: {
|
|
71
|
+
value: { type: [Array, String], default: () => [] },
|
|
72
|
+
showTree: {
|
|
73
|
+
type: Boolean,
|
|
74
|
+
default: false
|
|
75
|
+
}
|
|
76
|
+
},
|
|
77
|
+
data() {
|
|
78
|
+
return {
|
|
79
|
+
showSelectorTree: false,
|
|
80
|
+
inputValue: ''
|
|
81
|
+
// newSelectList:[]
|
|
82
|
+
};
|
|
83
|
+
},
|
|
84
|
+
watch: {
|
|
85
|
+
value: {
|
|
86
|
+
handler(val) {
|
|
87
|
+
this.selectList = val;
|
|
88
|
+
if (this.selectList.length > 0) {
|
|
89
|
+
this.inputValue = this.selectList[0][
|
|
90
|
+
this.$attrs.labelKey || this.$attrs['label-key'] || 'showname'
|
|
91
|
+
];
|
|
92
|
+
} else {
|
|
93
|
+
this.inputValue = '';
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
deep: true,
|
|
97
|
+
immediate: true
|
|
98
|
+
}
|
|
99
|
+
},
|
|
100
|
+
computed: {
|
|
101
|
+
selectList: {
|
|
102
|
+
get() {
|
|
103
|
+
return this.value;
|
|
104
|
+
},
|
|
105
|
+
set(val) {
|
|
106
|
+
this.$emit('input', val);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
},
|
|
110
|
+
mounted() {
|
|
111
|
+
// this.selectList = this.value
|
|
112
|
+
// console.log(this)
|
|
113
|
+
},
|
|
114
|
+
methods: {
|
|
115
|
+
handleClick() {
|
|
116
|
+
this.$emit('click');
|
|
117
|
+
},
|
|
118
|
+
handleSelector() {
|
|
119
|
+
if (this.$attrs.disabled || this.$attrs.readonly) return;
|
|
120
|
+
this.showSelectorTree = !this.showSelectorTree;
|
|
121
|
+
},
|
|
122
|
+
/**
|
|
123
|
+
* handleDispose
|
|
124
|
+
* @desc:确认选人
|
|
125
|
+
* @date 2023年3月6日
|
|
126
|
+
* @author liufan
|
|
127
|
+
* @param {Object} val 选中的人员/单位
|
|
128
|
+
*/
|
|
129
|
+
handleDispose(val) {
|
|
130
|
+
this.inputValue = '';
|
|
131
|
+
if (val) {
|
|
132
|
+
const { list } = val;
|
|
133
|
+
this.selectList = list;
|
|
134
|
+
if (val.list.length > 0) {
|
|
135
|
+
this.inputValue =
|
|
136
|
+
list[0][
|
|
137
|
+
this.$attrs.labelKey || this.$attrs['label-key'] || 'showname'
|
|
138
|
+
];
|
|
139
|
+
} else {
|
|
140
|
+
this.inputValue = '';
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
this.showSelectorTree = false;
|
|
144
|
+
},
|
|
145
|
+
/**
|
|
146
|
+
* handleChangeSel
|
|
147
|
+
* @desc:输入框数据发生变化时
|
|
148
|
+
* @date 2023年3月6日
|
|
149
|
+
* @author liufan
|
|
150
|
+
* @param {Array} val 变化后的选中数据
|
|
151
|
+
*/
|
|
152
|
+
handleChangeSel(val) {
|
|
153
|
+
if (val) {
|
|
154
|
+
const { list } = val;
|
|
155
|
+
this.selectList = list;
|
|
156
|
+
if (val.list.length > 0) {
|
|
157
|
+
this.inputValue =
|
|
158
|
+
list[0][
|
|
159
|
+
this.$attrs.labelKey || this.$attrs['label-key'] || 'showname'
|
|
160
|
+
];
|
|
161
|
+
} else {
|
|
162
|
+
this.inputValue = '';
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
this.$emit('input', val.list);
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
};
|
|
169
|
+
</script>
|