@ebiz/designer-components 0.1.12 → 0.1.14
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/dist/designer-components.css +1 -1
- package/dist/index.mjs +11737 -11627
- package/package.json +1 -1
- package/src/components/EbizApproval.vue +74 -17
- package/src/components/EbizEmployeeSelector.vue +310 -336
- package/src/components/EbizSApprovalProcess.vue +2 -0
- package/src/components/senior/EbizSForm/item.vue +57 -4
- package/src/views/EbizApprovalDemo.vue +11 -0
|
@@ -2,6 +2,21 @@
|
|
|
2
2
|
<t-form-item :class="['ebiz-s-form-item', className]" :for="forAttr" :help="help" :label="label" :name="name"
|
|
3
3
|
:style="customStyle" :rules="rules" :label-width="labelWidth" :label-align="labelAlign" :status="status"
|
|
4
4
|
@validate="handleValidate" style="margin-bottom: 10px;">
|
|
5
|
+
|
|
6
|
+
<!-- 员工选择 -->
|
|
7
|
+
<template v-if="type === 'employee'">
|
|
8
|
+
<ebiz-employee-selector v-model="computedModelValue" :placeholder="placeholder || '请选择员工'"
|
|
9
|
+
:disabled="disabled" :clearable="clearable" :single="single" :defaultTab="defaultTab"
|
|
10
|
+
:maxCount="maxCount" @change="handleChange" />
|
|
11
|
+
</template>
|
|
12
|
+
|
|
13
|
+
<!-- 部门选择 -->
|
|
14
|
+
<template v-if="type === 'dept'">
|
|
15
|
+
<ebiz-department-selector v-model="computedModelValue" :placeholder="placeholder || '请选择部门'"
|
|
16
|
+
:disabled="disabled" :clearable="clearable" :filterable="filterable" :apiUrl="apiUrl"
|
|
17
|
+
:companyId="companyId" @change="handleChange" />
|
|
18
|
+
</template>
|
|
19
|
+
|
|
5
20
|
<!-- 输入框 -->
|
|
6
21
|
<template v-if="type === 'input'">
|
|
7
22
|
<t-input v-model="computedModelValue" :placeholder="placeholder || '请输入'" :disabled="disabled"
|
|
@@ -142,26 +157,27 @@ import {
|
|
|
142
157
|
CheckboxGroup as TCheckboxGroup,
|
|
143
158
|
Switch as TSwitch,
|
|
144
159
|
Slider as TSlider,
|
|
145
|
-
Upload as TUpload,
|
|
146
160
|
Cascader as TCascader,
|
|
147
161
|
TreeSelect as TTreeSelect,
|
|
148
162
|
ColorPicker as TColorPicker
|
|
149
163
|
} from 'tdesign-vue-next';
|
|
150
164
|
import EbizRemoteSelect from '../../EbizRemoteSelect.vue';
|
|
165
|
+
import EbizEmployeeSelector from '../../EbizEmployeeSelector.vue';
|
|
166
|
+
import EbizDepartmentSelector from '../../EbizDepartmentSelector.vue';
|
|
151
167
|
import { EbizUpload } from '../../../index.js'
|
|
152
168
|
|
|
153
169
|
const props = defineProps({
|
|
154
170
|
/**
|
|
155
171
|
* 组件类型
|
|
156
|
-
* @options input|number|textarea|select|date|time|radio|checkbox|switch|slider|upload|cascader|tree-select|color-picker
|
|
172
|
+
* @options input|number|textarea|select|date|datetime|time|radio|checkbox|switch|slider|upload|cascader|tree-select|color-picker|employee|dept
|
|
157
173
|
*/
|
|
158
174
|
type: {
|
|
159
175
|
type: String,
|
|
160
176
|
default: undefined,
|
|
161
177
|
validator: (val) => [
|
|
162
|
-
'input', 'number', 'textarea', 'select', 'date', 'time', 'radio',
|
|
178
|
+
'input', 'number', 'textarea', 'select', 'date', 'datetime', 'time', 'radio',
|
|
163
179
|
'checkbox', 'switch', 'slider', 'upload', 'cascader', 'tree-select',
|
|
164
|
-
'color-picker'
|
|
180
|
+
'color-picker', 'employee', 'dept'
|
|
165
181
|
].includes(val)
|
|
166
182
|
},
|
|
167
183
|
/**
|
|
@@ -472,6 +488,43 @@ const props = defineProps({
|
|
|
472
488
|
headers: {},
|
|
473
489
|
transformResponse: null
|
|
474
490
|
})
|
|
491
|
+
},
|
|
492
|
+
/**
|
|
493
|
+
* 员工选择器是否单选
|
|
494
|
+
*/
|
|
495
|
+
single: {
|
|
496
|
+
type: Boolean,
|
|
497
|
+
default: true
|
|
498
|
+
},
|
|
499
|
+
/**
|
|
500
|
+
* 员工选择器默认标签页
|
|
501
|
+
* @options organization|recent
|
|
502
|
+
*/
|
|
503
|
+
defaultTab: {
|
|
504
|
+
type: String,
|
|
505
|
+
default: 'organization',
|
|
506
|
+
validator: (val) => ['organization', 'recent'].includes(val)
|
|
507
|
+
},
|
|
508
|
+
/**
|
|
509
|
+
* 员工选择器最大选择数量
|
|
510
|
+
*/
|
|
511
|
+
maxCount: {
|
|
512
|
+
type: Number,
|
|
513
|
+
default: undefined
|
|
514
|
+
},
|
|
515
|
+
/**
|
|
516
|
+
* 部门选择器API地址
|
|
517
|
+
*/
|
|
518
|
+
apiUrl: {
|
|
519
|
+
type: String,
|
|
520
|
+
default: '/api/departments'
|
|
521
|
+
},
|
|
522
|
+
/**
|
|
523
|
+
* 部门选择器所属公司ID
|
|
524
|
+
*/
|
|
525
|
+
companyId: {
|
|
526
|
+
type: [String, Number],
|
|
527
|
+
default: undefined
|
|
475
528
|
}
|
|
476
529
|
});
|
|
477
530
|
|
|
@@ -8,6 +8,17 @@
|
|
|
8
8
|
v-model:approverList="approverList"
|
|
9
9
|
v-model:ccList="ccList"
|
|
10
10
|
key="approval-1"
|
|
11
|
+
type="limited"
|
|
12
|
+
:limitedMap="[{
|
|
13
|
+
label: '部门主管',
|
|
14
|
+
value: 'MANAGER'
|
|
15
|
+
},{
|
|
16
|
+
label: '部门经理',
|
|
17
|
+
value: 'DIRECTOR'
|
|
18
|
+
},{
|
|
19
|
+
label: '部门总监',
|
|
20
|
+
value: 'INSPECTOR_GENERAL'
|
|
21
|
+
}]"
|
|
11
22
|
:required="true"
|
|
12
23
|
@change="handleChange"
|
|
13
24
|
/>
|