eoss-mobiles 0.3.37 → 0.3.39
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 +51 -47
- package/lib/config/api.js +4 -2
- package/lib/eoss-mobile.common.js +1145 -290
- package/lib/flow-btn.js +52 -48
- package/lib/flow-list.js +53 -49
- package/lib/flow.js +1229 -377
- package/lib/index.js +1 -1
- package/lib/picker.js +51 -47
- package/lib/radio.js +51 -47
- package/lib/retrial-auth.js +52 -48
- package/lib/selector.js +82 -73
- package/lib/table-column.js +51 -47
- package/package.json +1 -1
- package/packages/flow/src/components/Circulate.vue +559 -0
- package/packages/flow/src/components/Handle.vue +9 -4
- package/packages/flow/src/components/Message.vue +9 -2
- package/packages/flow/src/components/Opinion.vue +6 -0
- package/packages/flow/src/components/Reject.vue +2 -1
- package/packages/flow/src/components/TaskRead.vue +1 -0
- package/packages/flow/src/components/taskUnionExamine.vue +1 -0
- package/packages/flow/src/main.vue +42 -19
- package/packages/selector/src/selector-tree.vue +6 -1
- package/src/config/api.js +4 -0
- package/src/index.js +1 -1
|
@@ -0,0 +1,559 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class="process-handle">
|
|
3
|
+
|
|
4
|
+
<div
|
|
5
|
+
style="display: flex; flex-direction: column; height: 100%"
|
|
6
|
+
>
|
|
7
|
+
<div class="process-content">
|
|
8
|
+
<!-- 当前节点 -->
|
|
9
|
+
<div class="present-node">
|
|
10
|
+
<div class="label">当前节点:</div>
|
|
11
|
+
<div>{{itemName }}</div>
|
|
12
|
+
</div>
|
|
13
|
+
<!-- 意见 -->
|
|
14
|
+
<Opinion
|
|
15
|
+
:esign="esign"
|
|
16
|
+
:esignLineWidth="
|
|
17
|
+
$attrs['esign-line-width'] || $attrs['esignLineWidth']
|
|
18
|
+
"
|
|
19
|
+
@onInputOpintion="onInputOpintion"
|
|
20
|
+
:baseUrl="baseUrl"
|
|
21
|
+
:isForceDisplayDefaultOptionForPrefix="
|
|
22
|
+
isForceDisplayDefaultOptionForPrefix
|
|
23
|
+
"
|
|
24
|
+
:pendingItemHandleDescription="pendingItemHandleDescription"
|
|
25
|
+
:placeholder="
|
|
26
|
+
pendingItemHandleDescription || opinionHandleExplainText
|
|
27
|
+
"
|
|
28
|
+
:nodeDefaultSubmitOpinion="nodeDefaultSubmitOpinion"
|
|
29
|
+
:nodeFixedOpinionSelectList="nodeFixedOpinionSelectList"
|
|
30
|
+
:isHiddenOftenOpinion="isHiddenOftenOpinion == 1 ? false : true"
|
|
31
|
+
></Opinion>
|
|
32
|
+
<!-- 审核内容 -->
|
|
33
|
+
<div class="special-box input-box" v-if="typeCode != 'fenyue'">
|
|
34
|
+
|
|
35
|
+
<div >
|
|
36
|
+
|
|
37
|
+
<!-- 下一步所有相关操作-->
|
|
38
|
+
<div
|
|
39
|
+
|
|
40
|
+
>
|
|
41
|
+
<div class="next-box" >
|
|
42
|
+
<!-- 下步节点 -->
|
|
43
|
+
<div
|
|
44
|
+
class="item"
|
|
45
|
+
v-if="
|
|
46
|
+
nodeList && nodeList.length > 0"
|
|
47
|
+
>
|
|
48
|
+
<em-picker
|
|
49
|
+
v-if="nextNodeCheckType == 'select'"
|
|
50
|
+
title="下步节点"
|
|
51
|
+
label="下步节点"
|
|
52
|
+
required
|
|
53
|
+
show-toolbar
|
|
54
|
+
v-model="form.nextNodeName"
|
|
55
|
+
label-width="100%"
|
|
56
|
+
:columns="nodeList"
|
|
57
|
+
value-key="nodeId"
|
|
58
|
+
label-key="nodeName"
|
|
59
|
+
/>
|
|
60
|
+
<em-input
|
|
61
|
+
v-else
|
|
62
|
+
value="下步节点"
|
|
63
|
+
label="下步节点"
|
|
64
|
+
required
|
|
65
|
+
class="em-flow-next-steps"
|
|
66
|
+
:disabled="true"
|
|
67
|
+
label-position="top"
|
|
68
|
+
>
|
|
69
|
+
<template slot="input">
|
|
70
|
+
<em-radio-group
|
|
71
|
+
v-model="form.nextNodeId"
|
|
72
|
+
:data="nodeList"
|
|
73
|
+
value-key="nodeId"
|
|
74
|
+
label-key="nodeName"
|
|
75
|
+
direction="horizontal"
|
|
76
|
+
/>
|
|
77
|
+
</template>
|
|
78
|
+
</em-input>
|
|
79
|
+
</div>
|
|
80
|
+
</div>
|
|
81
|
+
<!-- 本单位-->
|
|
82
|
+
<!-- v-if="isHideCurrentOrg" -->
|
|
83
|
+
<div class="item" >
|
|
84
|
+
<em-selector
|
|
85
|
+
v-model="nextCurrentOrgObjSelect"
|
|
86
|
+
multiple
|
|
87
|
+
:isAllCheck="isAllCheck"
|
|
88
|
+
:paddingTop="paddingTop"
|
|
89
|
+
isDepartment
|
|
90
|
+
:objType="'enterprise'"
|
|
91
|
+
tabs="employee,persongroup"
|
|
92
|
+
:param="currentOrgSelectorParams"
|
|
93
|
+
:disableds="currentOrgDisabledObjId"
|
|
94
|
+
:baseUrl="apiBaseUrl"
|
|
95
|
+
:isOtherUnit="false"
|
|
96
|
+
:label="'本单位'"
|
|
97
|
+
@change="disposeAppUnit($event, 'nextCurrentOrgObjSelect')"
|
|
98
|
+
/>
|
|
99
|
+
</div>
|
|
100
|
+
<!-- 外单位 -->
|
|
101
|
+
<!-- v-if="isHideOtherOrg" -->
|
|
102
|
+
<div class="item">
|
|
103
|
+
<em-selector
|
|
104
|
+
v-model="nextOtherOrgObjSelect"
|
|
105
|
+
multiple
|
|
106
|
+
:isAllCheck="isAllCheck"
|
|
107
|
+
:paddingTop="paddingTop"
|
|
108
|
+
:objType="'enterprise'"
|
|
109
|
+
:param="foreignOrgSelectorParams"
|
|
110
|
+
tabs="enterprise,filgroup"
|
|
111
|
+
:baseUrl="apiBaseUrl"
|
|
112
|
+
:disableds="otherOrgDisabledObjId"
|
|
113
|
+
:isOtherUnit="true"
|
|
114
|
+
:label="'外单位'"
|
|
115
|
+
@change="disposeAppUnit($event, 'nextOtherOrgObjSelect')"
|
|
116
|
+
/>
|
|
117
|
+
</div>
|
|
118
|
+
</div>
|
|
119
|
+
|
|
120
|
+
<!-- 通知方式 -->
|
|
121
|
+
<div class="item-msg item-msg2">
|
|
122
|
+
<Message
|
|
123
|
+
ref="message"
|
|
124
|
+
:code="'notification_type'"
|
|
125
|
+
:baseUrl="baseUrl"
|
|
126
|
+
:defaultNotificationType="defaultNotificationType"
|
|
127
|
+
:defaultNotificationMsg="form.notificationMsg"
|
|
128
|
+
@onInputMsg="onInputMsg"
|
|
129
|
+
></Message>
|
|
130
|
+
</div>
|
|
131
|
+
</div>
|
|
132
|
+
</div>
|
|
133
|
+
</div>
|
|
134
|
+
|
|
135
|
+
<div class="btn-list">
|
|
136
|
+
<div class="btn" @click="navigateBack">取消</div>
|
|
137
|
+
<div class="btn" @click="onSubmit()">确定</div>
|
|
138
|
+
</div>
|
|
139
|
+
</div>
|
|
140
|
+
|
|
141
|
+
</div>
|
|
142
|
+
</template>
|
|
143
|
+
|
|
144
|
+
<script>
|
|
145
|
+
import {
|
|
146
|
+
directStartTaskCircularRead,
|
|
147
|
+
getNotificationMsg,
|
|
148
|
+
} from '../../../../src/config/api.js';
|
|
149
|
+
import request from '../../../../src/utils/http.js';
|
|
150
|
+
import Opinion from './Opinion.vue';
|
|
151
|
+
import Message from './Message.vue';
|
|
152
|
+
export default {
|
|
153
|
+
name: 'Handle',
|
|
154
|
+
inheritAttrs: false,
|
|
155
|
+
components: {
|
|
156
|
+
Opinion,
|
|
157
|
+
Message,
|
|
158
|
+
},
|
|
159
|
+
props: {
|
|
160
|
+
businessId: String,
|
|
161
|
+
identityIds: String, //用户id
|
|
162
|
+
beforeSubmit: Function,
|
|
163
|
+
orgId: String, //单位id
|
|
164
|
+
depId: String, //部门id
|
|
165
|
+
baseUrl: String,
|
|
166
|
+
apiBaseUrl: String,
|
|
167
|
+
typeCode: String,
|
|
168
|
+
type: String,
|
|
169
|
+
paddingTop: {
|
|
170
|
+
type: [String, Number],
|
|
171
|
+
default: 0
|
|
172
|
+
},
|
|
173
|
+
defId:{
|
|
174
|
+
type: String,
|
|
175
|
+
default: ''
|
|
176
|
+
},
|
|
177
|
+
isAllCheck: {
|
|
178
|
+
type: Boolean,
|
|
179
|
+
default: false
|
|
180
|
+
},
|
|
181
|
+
isPreset: {
|
|
182
|
+
type: Boolean,
|
|
183
|
+
default: false
|
|
184
|
+
},
|
|
185
|
+
esign: {
|
|
186
|
+
type: Boolean,
|
|
187
|
+
default: false
|
|
188
|
+
},
|
|
189
|
+
userId: {
|
|
190
|
+
type: String,
|
|
191
|
+
default: ''
|
|
192
|
+
},
|
|
193
|
+
itemName:{
|
|
194
|
+
type: String,
|
|
195
|
+
default: '拟稿'
|
|
196
|
+
},
|
|
197
|
+
nextNodeCheckType:{
|
|
198
|
+
type: String,
|
|
199
|
+
default: ''
|
|
200
|
+
},
|
|
201
|
+
title:{
|
|
202
|
+
type: String,
|
|
203
|
+
default: ''
|
|
204
|
+
}
|
|
205
|
+
},
|
|
206
|
+
data() {
|
|
207
|
+
return {
|
|
208
|
+
AddSignList: [
|
|
209
|
+
{ name: '前置加签', value: 'preAddSign' },
|
|
210
|
+
{ name: '后置加签', value: 'postAddSign' }
|
|
211
|
+
],
|
|
212
|
+
currentOrgSelectorParams: { },
|
|
213
|
+
currentOrgSelectorTabs: 'employee, persongroup',
|
|
214
|
+
foreignOrgSelectorTabs: 'enterprise,filgroupobj',
|
|
215
|
+
foreignOrgSelectorParams: { roleid: '' },
|
|
216
|
+
otherOrgDisabledObjId: [],
|
|
217
|
+
currentNodeEnableItemHandleDescription: false,
|
|
218
|
+
pendingItemHandleDescription: '',
|
|
219
|
+
taskOperationShiftedNodeList: null,
|
|
220
|
+
oldNextOperate: '',
|
|
221
|
+
processFormType: 'freeStart',
|
|
222
|
+
currentOrgDisabledObjId: [],
|
|
223
|
+
nextNodeDefault: 0,
|
|
224
|
+
showDefList: false,
|
|
225
|
+
deptRoleCode: '',
|
|
226
|
+
readOnlyNotificationType: '',
|
|
227
|
+
notificationMessageReadOnly: false,
|
|
228
|
+
freeStartFlowParams: {}, //自由发起流程参数
|
|
229
|
+
taskParams: {},
|
|
230
|
+
isCanPreAddSign: false,
|
|
231
|
+
showAppUnit: false, // 弹窗单位
|
|
232
|
+
handleFlow: true,
|
|
233
|
+
freeValid: true,
|
|
234
|
+
showFreeStart: false,
|
|
235
|
+
freeStartInfo: {},
|
|
236
|
+
isReject: false,
|
|
237
|
+
opinionHandleExplainText: undefined,
|
|
238
|
+
isCurrentNodeForbiddenChangeCandidate: 0,
|
|
239
|
+
nodeFixedOpinionSelectList: [],
|
|
240
|
+
isChooseNextNode: 1, //是否展示下步操作
|
|
241
|
+
pid: 'root', //树选中pid
|
|
242
|
+
objType: 'enterprise', //树点击对象
|
|
243
|
+
selectType: 'employee', // 树 选择类型
|
|
244
|
+
isNextBox: true, // 是否展开隐藏下步操作
|
|
245
|
+
isForceDisplayDefaultOptionForPrefix: false,
|
|
246
|
+
isOtherUnit: true, //是否是外单位
|
|
247
|
+
isShowNode: false,
|
|
248
|
+
subProcessInfo: '',
|
|
249
|
+
isNodeShowProcess: false, //是否展示主办
|
|
250
|
+
isHiddenOftenOpinion: undefined, //是否隐藏常用意见
|
|
251
|
+
isAddSignList: [
|
|
252
|
+
{ name: '是', value: '1' },
|
|
253
|
+
{ name: '否', value: '2' }
|
|
254
|
+
],
|
|
255
|
+
taskReadOpinionRequired: undefined,
|
|
256
|
+
form: {
|
|
257
|
+
opinion: undefined, // 审批意见
|
|
258
|
+
nextCurrentOrgObj: undefined, // 本单位对象
|
|
259
|
+
nextCurrentOrgObjSerialId: undefined, //本单位办理对象序列id
|
|
260
|
+
nextOtherOrgObj: undefined, //外单位对象
|
|
261
|
+
nextOtherOrgObjSerialId: undefined, //外单位办理对象序列id
|
|
262
|
+
notificationMsg: undefined, //通知消息
|
|
263
|
+
nextNodeName:3,
|
|
264
|
+
nextNodeId:3
|
|
265
|
+
},
|
|
266
|
+
isCanFenyue: '0',
|
|
267
|
+
|
|
268
|
+
nextCurrentOrgObjSelect: [], // 选中本单位
|
|
269
|
+
nextOtherOrgObjSelect: [], //选中外单位
|
|
270
|
+
nextReadUserSelectList: [], //分阅选择数组
|
|
271
|
+
nodeList: [{nodeId:3,nodeName:'传阅'}], // 流程节点列表
|
|
272
|
+
|
|
273
|
+
opinionList: [], // 意见列表
|
|
274
|
+
|
|
275
|
+
userInfo: {}, // 用户信息
|
|
276
|
+
isCanAddSign: false, //是否显示加签
|
|
277
|
+
isCanRemoveSign: false, //是否显示减签
|
|
278
|
+
isSpecial: true, //判断审核内容是否显示(是否是正常的办理页面)
|
|
279
|
+
taskOperations: [], //下一步操作
|
|
280
|
+
countersignaturetypeCode: false, //用来判断处理方式是否显示
|
|
281
|
+
countersignaturetypeText: undefined, // 处理方式
|
|
282
|
+
isCustomPreset: false, // 是否允许预设节点
|
|
283
|
+
isHideCurrentOrg: false, //是否隐藏本单位(承办)
|
|
284
|
+
isHideOtherOrg: false, //是否隐藏外单位(承办)
|
|
285
|
+
isHandleExplain: false, // 是否允许办理说明
|
|
286
|
+
isTaskread: false, //是否分阅
|
|
287
|
+
defaultNotificationType: undefined, ///默认选中通知类型
|
|
288
|
+
selectUnitType: 'department', //单位树选择类型
|
|
289
|
+
isHiddenNextStepInfo: false, //是否隐藏下一步节点信息和接收人信息
|
|
290
|
+
presetEdit: true, //预设是否允许编辑
|
|
291
|
+
isLimitedTimeHandling: false, //是否支持发起子流程限时办理
|
|
292
|
+
userSelectionType: undefined, //处理人选择方式
|
|
293
|
+
orgSelectionType: undefined, //办理机构选择方式
|
|
294
|
+
notificationType: undefined, // 通知方式
|
|
295
|
+
nodeType: undefined, // 节点类型(普通节点0,承办节点1,会签节点2,阅办节点3)
|
|
296
|
+
deptRoleCode: undefined, //本单位角色
|
|
297
|
+
orgRoleCode: undefined, //外单位角色
|
|
298
|
+
appointNotUserIds: undefined, //业务指定非处理人
|
|
299
|
+
handleRoleId: undefined, //办理角色(一般选择范围是部门/单位使用)
|
|
300
|
+
nextRole: undefined, //下步节点默认角色
|
|
301
|
+
filterCandinateIds: undefined, //节点过滤办理人
|
|
302
|
+
selectorDefShowDeptId: undefined, //选择器默认展示部门
|
|
303
|
+
isRadio: true, //下步办理人是否单选
|
|
304
|
+
otherOrgName: undefined, //外单位名字
|
|
305
|
+
currentOrgName: undefined, //本单位名字
|
|
306
|
+
isMainSubProcess: false, // 判断是否子-主流程
|
|
307
|
+
isNextUser: false, // 判断是否显示下步办理人
|
|
308
|
+
isDealObject: false, //判断是否显示办理对象
|
|
309
|
+
isDealRole: false, //判断是否显示办理角色
|
|
310
|
+
nextUserflag: false,
|
|
311
|
+
isSubmitButtonShowAgreeAndDisagree: 0, //是否展示同意和不同意按钮
|
|
312
|
+
isCustomUserClick: false, //下步办理人选择是否可以点击
|
|
313
|
+
timeListLable: undefined, //用来判断是哪里点开的时间遮罩层
|
|
314
|
+
nodeDefaultSubmitOpinion: undefined, //默认提交意见
|
|
315
|
+
isCustomUser: 0, //是否可选中办理人
|
|
316
|
+
choiceOrgId: '',
|
|
317
|
+
choiceDeptId: '',
|
|
318
|
+
taskExamineInfo: {},
|
|
319
|
+
nodeInfoMapInfo: {},
|
|
320
|
+
flowDefList: [],
|
|
321
|
+
file: '',
|
|
322
|
+
isEndUserTask: '',
|
|
323
|
+
tagKey: '',
|
|
324
|
+
pOrgId: '',
|
|
325
|
+
customPresetHintMessage: '',
|
|
326
|
+
enableCustomLimitTimeSetting: false,
|
|
327
|
+
showCustomLimitTimeText: false,
|
|
328
|
+
needRetrialAuth: false,
|
|
329
|
+
defaultNextNode: ''
|
|
330
|
+
};
|
|
331
|
+
},
|
|
332
|
+
created() {
|
|
333
|
+
this.getMessage()
|
|
334
|
+
this.currentOrgSelectorParams.employee ={pid: this.orgId}
|
|
335
|
+
this.foreignOrgSelectorParams.filgroup ={pid: 'root',myUserid:this.userId}
|
|
336
|
+
},
|
|
337
|
+
computed: {
|
|
338
|
+
},
|
|
339
|
+
methods: {
|
|
340
|
+
getMessage(){
|
|
341
|
+
let params = {
|
|
342
|
+
url:getNotificationMsg,
|
|
343
|
+
params:{
|
|
344
|
+
processDefinitionId:this.defId,
|
|
345
|
+
businessId:this.businessId,
|
|
346
|
+
openMode:'samepage'
|
|
347
|
+
}
|
|
348
|
+
}
|
|
349
|
+
request(params).then((res) => {
|
|
350
|
+
if(res.rCode == 0 || res.status == "success"){
|
|
351
|
+
this.form.notificationMsg = res.message.replace('{title}',this.title || '')
|
|
352
|
+
}
|
|
353
|
+
});
|
|
354
|
+
},
|
|
355
|
+
navigateBack() {
|
|
356
|
+
this.$parent.$emit('close');
|
|
357
|
+
},
|
|
358
|
+
// 通知消息回调
|
|
359
|
+
onInputMsg(obj) {
|
|
360
|
+
this.form.notificationType = obj.notificationType.join(',');
|
|
361
|
+
this.form.notificationMsg = obj.notificationMsg;
|
|
362
|
+
},
|
|
363
|
+
onSubmit() {
|
|
364
|
+
let params = {
|
|
365
|
+
url:directStartTaskCircularRead,
|
|
366
|
+
params:{
|
|
367
|
+
businessId:this.businessId,
|
|
368
|
+
processDefinitionId:this.defId,
|
|
369
|
+
notificationMsg:this.form.notificationMsg,
|
|
370
|
+
notificationType:this.form.notificationType,
|
|
371
|
+
opinion:this.form.opinion,
|
|
372
|
+
nextOtherOrgObj:this.form.nextOtherOrgObj,
|
|
373
|
+
nextCurrentOrgObj:this.form.nextCurrentOrgObj,
|
|
374
|
+
},
|
|
375
|
+
type:'post'
|
|
376
|
+
}
|
|
377
|
+
this.$toast.loading({
|
|
378
|
+
message: '提交中...',
|
|
379
|
+
forbidClick: true,
|
|
380
|
+
loadingType: 'spinner',
|
|
381
|
+
overlay: true,
|
|
382
|
+
duration: 0
|
|
383
|
+
});
|
|
384
|
+
request(params).then(res => {
|
|
385
|
+
this.$toast.clear();
|
|
386
|
+
if (res.rCode == 0 || res.status == 'success') {
|
|
387
|
+
this.$toast.success('提交成功');
|
|
388
|
+
this.$parent.$emit('success');
|
|
389
|
+
} else {
|
|
390
|
+
this.$toast(res.message || '系统错误,请联系管理员!');
|
|
391
|
+
setTimeout(() => {
|
|
392
|
+
this.$parent.$emit('error');
|
|
393
|
+
}, 1000);
|
|
394
|
+
}
|
|
395
|
+
})
|
|
396
|
+
},
|
|
397
|
+
// 删除
|
|
398
|
+
delteList(label, i) {
|
|
399
|
+
if (label === 'nextUserSelectList') {
|
|
400
|
+
let _this = this;
|
|
401
|
+
let id = _this.nextUserSelectList[i].showid;
|
|
402
|
+
this.nextUserList.find((i) => {
|
|
403
|
+
if (i.userId === id) {
|
|
404
|
+
_this.$set(i, 'checked', false);
|
|
405
|
+
}
|
|
406
|
+
});
|
|
407
|
+
this[label].splice(i, 1);
|
|
408
|
+
} else {
|
|
409
|
+
this[label].splice(i, 1);
|
|
410
|
+
}
|
|
411
|
+
},
|
|
412
|
+
// 选择办理人
|
|
413
|
+
onClickPeople(id) {
|
|
414
|
+
this.showAppUser = true;
|
|
415
|
+
this.selectList = this[id];
|
|
416
|
+
this.$nextTick(function () {
|
|
417
|
+
this.$refs.selectTree.getContent(id);
|
|
418
|
+
});
|
|
419
|
+
},
|
|
420
|
+
// 选择单位
|
|
421
|
+
onClickOrg(id) {
|
|
422
|
+
this.isOtherUnit = id === 'nextCurrentOrgObjSelect' ? false : true;
|
|
423
|
+
this.selectUnitType =
|
|
424
|
+
id === 'nextCurrentOrgObjSelect' ? 'department,employee' : 'department';
|
|
425
|
+
this.showAppUnit = true;
|
|
426
|
+
this.$nextTick(function () {
|
|
427
|
+
this.$refs.selectTreeUnit.getContent(id);
|
|
428
|
+
});
|
|
429
|
+
},
|
|
430
|
+
|
|
431
|
+
|
|
432
|
+
// 意见回调
|
|
433
|
+
onInputOpintion(val) {
|
|
434
|
+
const { opinion, isImageOpinion, file } = val;
|
|
435
|
+
this.form.opinion = opinion;
|
|
436
|
+
this.form.isImageOpinion = isImageOpinion;
|
|
437
|
+
this.file = file;
|
|
438
|
+
},
|
|
439
|
+
// 办理人选择完回调
|
|
440
|
+
disposeAppUser(res, type) {
|
|
441
|
+
this[type] = res.list;
|
|
442
|
+
let label = '';
|
|
443
|
+
if (type) {
|
|
444
|
+
label = type.substring(0, type.lastIndexOf('SelectList'));
|
|
445
|
+
} else {
|
|
446
|
+
label = res.label.substring(0, res.label.lastIndexOf('SelectList'));
|
|
447
|
+
}
|
|
448
|
+
|
|
449
|
+
let idStr = '';
|
|
450
|
+
if (res.list) {
|
|
451
|
+
res.list.map((r, i) => {
|
|
452
|
+
idStr = idStr + r.showid + (i === res.list.length - 1 ? '' : ',');
|
|
453
|
+
});
|
|
454
|
+
} else {
|
|
455
|
+
res.map((r, i) => {
|
|
456
|
+
idStr = idStr + r.showid + (i === res.length - 1 ? '' : ',');
|
|
457
|
+
});
|
|
458
|
+
}
|
|
459
|
+
this.form[label + 'Id'] = idStr;
|
|
460
|
+
},
|
|
461
|
+
// 单位选择完回调
|
|
462
|
+
disposeAppUnit(res, type) {
|
|
463
|
+
let label = type.substring(0, type.lastIndexOf('Select'));
|
|
464
|
+
let idStr = '';
|
|
465
|
+
let types = '';
|
|
466
|
+
let SerialId = [];
|
|
467
|
+
this.form[label + 'Name'] = '';
|
|
468
|
+
let obj = {};
|
|
469
|
+
res.list.map((r, i) => {
|
|
470
|
+
if (!types || types.indexOf(r.mixType) == -1) {
|
|
471
|
+
idStr = !types
|
|
472
|
+
? r.mixType +
|
|
473
|
+
'-' +
|
|
474
|
+
r.showid +
|
|
475
|
+
(i === res.list.length - 1 ? '' : ',')
|
|
476
|
+
: idStr +
|
|
477
|
+
'|' +
|
|
478
|
+
r.mixType +
|
|
479
|
+
'-' +
|
|
480
|
+
r.showid +
|
|
481
|
+
(i === res.list.length - 1 ? '' : ',');
|
|
482
|
+
types = types ? types + ',' + r.mixType : r.mixType;
|
|
483
|
+
} else {
|
|
484
|
+
idStr = idStr + r.showid + (i === res.list.length - 1 ? '' : ',');
|
|
485
|
+
}
|
|
486
|
+
SerialId.push(r.showid);
|
|
487
|
+
if (obj[r.mixType]) {
|
|
488
|
+
obj[r.mixType].push(r.showname);
|
|
489
|
+
} else {
|
|
490
|
+
obj[r.mixType] = [r.showname];
|
|
491
|
+
}
|
|
492
|
+
});
|
|
493
|
+
this.form[label] = idStr;
|
|
494
|
+
for (let key in obj) {
|
|
495
|
+
if (
|
|
496
|
+
key === 'enterprise' &&
|
|
497
|
+
this.form[label + 'Name'].indexOf('[企业]') == -1
|
|
498
|
+
) {
|
|
499
|
+
this.form[label + 'Name'] = this.form[label + 'Name']
|
|
500
|
+
? this.form[label + 'Name'] + '|' + '[企业]-' + obj[key].join(',')
|
|
501
|
+
: '' + '[企业]-' + obj[key].join(',');
|
|
502
|
+
}
|
|
503
|
+
if (
|
|
504
|
+
key === 'department' &&
|
|
505
|
+
this.form[label + 'Name'].indexOf('[部门]') == -1
|
|
506
|
+
) {
|
|
507
|
+
this.form[label + 'Name'] = this.form[label + 'Name']
|
|
508
|
+
? this.form[label + 'Name'] + '|' + '[部门]-' + obj[key].join(',')
|
|
509
|
+
: '' + '[部门]-' + obj[key].join(',');
|
|
510
|
+
}
|
|
511
|
+
if (
|
|
512
|
+
key === 'employee' &&
|
|
513
|
+
this.form[label + 'Name'].indexOf('[部门员工]') == -1
|
|
514
|
+
) {
|
|
515
|
+
this.form[label + 'Name'] = this.form[label + 'Name']
|
|
516
|
+
? this.form[label + 'Name'] +
|
|
517
|
+
'|' +
|
|
518
|
+
'[部门员工]-' +
|
|
519
|
+
obj[key].join(',')
|
|
520
|
+
: '' + '[部门员工]-' + obj[key].join(',');
|
|
521
|
+
}
|
|
522
|
+
}
|
|
523
|
+
// this.form[label + 'Name'] = obj.enterprise?;
|
|
524
|
+
this.form[label + 'SerialId'] = SerialId.join(',');
|
|
525
|
+
this.form[label + 'Json'] = JSON.stringify(res.list);
|
|
526
|
+
},
|
|
527
|
+
|
|
528
|
+
|
|
529
|
+
|
|
530
|
+
// 修改默认办理人
|
|
531
|
+
changeDefPeople(def, all) {
|
|
532
|
+
this.nextUserSelectList = [];
|
|
533
|
+
if ((def == 1 && all == 1) || (def == 0 && all == 1)) {
|
|
534
|
+
let ids = '';
|
|
535
|
+
this.nextUserList.map((r, i) => {
|
|
536
|
+
r.showid = r.userId;
|
|
537
|
+
r.showname = r.username;
|
|
538
|
+
this.$set(r, 'checked', true);
|
|
539
|
+
this.nextUserSelectList.push(r);
|
|
540
|
+
ids += r.userId + (i === this.nextUserList.length - 1 ? '' : ',');
|
|
541
|
+
});
|
|
542
|
+
this.form.nextUserId = ids;
|
|
543
|
+
} else if (
|
|
544
|
+
def == 1 &&
|
|
545
|
+
(!all || all == 0) &&
|
|
546
|
+
this.nextUserList.length > 0
|
|
547
|
+
) {
|
|
548
|
+
this.nextUserList[0].showid = this.nextUserList[0].userId;
|
|
549
|
+
this.nextUserList[0].showname = this.nextUserList[0].username;
|
|
550
|
+
this.$set(this.nextUserList[0], 'checked', true);
|
|
551
|
+
this.nextUserSelectList.push(this.nextUserList[0]);
|
|
552
|
+
this.form.nextUserId = this.nextUserSelectList[0].userId;
|
|
553
|
+
}
|
|
554
|
+
},
|
|
555
|
+
}
|
|
556
|
+
};
|
|
557
|
+
</script>
|
|
558
|
+
|
|
559
|
+
<style></style>
|
|
@@ -540,6 +540,7 @@
|
|
|
540
540
|
:code="'notification_type'"
|
|
541
541
|
onlyShowType
|
|
542
542
|
:baseUrl="baseUrl"
|
|
543
|
+
:pendingId="pendingId"
|
|
543
544
|
@onInputMsg="onInputMsgUrge"
|
|
544
545
|
:required="true"
|
|
545
546
|
></Message>
|
|
@@ -553,6 +554,7 @@
|
|
|
553
554
|
:baseUrl="baseUrl"
|
|
554
555
|
:readOnlyNotificationType="readOnlyNotificationType"
|
|
555
556
|
:notificationMessageReadOnly="notificationMessageReadOnly"
|
|
557
|
+
:pendingId="pendingId"
|
|
556
558
|
:defaultNotificationType="defaultNotificationType"
|
|
557
559
|
:defaultNotificationMsg="form.notificationMsg"
|
|
558
560
|
@onInputMsg="onInputMsg"
|
|
@@ -665,10 +667,10 @@ export default {
|
|
|
665
667
|
{ name: '前置加签', value: 'preAddSign' },
|
|
666
668
|
{ name: '后置加签', value: 'postAddSign' }
|
|
667
669
|
],
|
|
668
|
-
currentOrgSelectorParams: {
|
|
670
|
+
currentOrgSelectorParams: { },
|
|
669
671
|
currentOrgSelectorTabs: 'employee, persongroup',
|
|
670
672
|
foreignOrgSelectorTabs: 'enterprise,filgroupobj',
|
|
671
|
-
foreignOrgSelectorParams: {
|
|
673
|
+
foreignOrgSelectorParams: { roleid: '' },
|
|
672
674
|
otherOrgDisabledObjId: [],
|
|
673
675
|
currentNodeEnableItemHandleDescription: false,
|
|
674
676
|
pendingItemHandleDescription: '',
|
|
@@ -1139,7 +1141,7 @@ export default {
|
|
|
1139
1141
|
return;
|
|
1140
1142
|
}
|
|
1141
1143
|
if (this.form.isLimitedTime === '1' && this.form.advanceNoticeHour) {
|
|
1142
|
-
this.$toast('
|
|
1144
|
+
this.$toast('请选择通知时间');
|
|
1143
1145
|
return;
|
|
1144
1146
|
}
|
|
1145
1147
|
if (this.form.isLimitedTime === '1' && this.form.advanceNoticeType) {
|
|
@@ -1615,11 +1617,14 @@ export default {
|
|
|
1615
1617
|
let foreignOrgparams =
|
|
1616
1618
|
currentOrgSelectorParams.foreignOrgRange.split(',');
|
|
1617
1619
|
that.foreignOrgSelectorTabs.map((x, i) => {
|
|
1620
|
+
console.log(x,'aaaaa')
|
|
1618
1621
|
that.foreignOrgSelectorParams[x] = {
|
|
1619
1622
|
pid:
|
|
1620
1623
|
foreignOrgparams[i] == 'my'
|
|
1621
1624
|
? choiceOrgId
|
|
1622
|
-
: foreignOrgparams[i]
|
|
1625
|
+
:foreignOrgparams[i] == 'other'? 'root' : foreignOrgparams[i],
|
|
1626
|
+
nofilid:foreignOrgparams[i] == 'other'?1 : 0,
|
|
1627
|
+
// myUserid:x == 'filgroup'? $.getStorage('userId') : ''
|
|
1623
1628
|
};
|
|
1624
1629
|
});
|
|
1625
1630
|
that.foreignOrgSelectorTabs = that.foreignOrgSelectorTabs.join(',')
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<div class="flow-message">
|
|
2
|
+
<div class="flow-message" v-show="newList.length>0">
|
|
3
3
|
<em-input :label="label" readonly :required="required">
|
|
4
4
|
<template slot="input">
|
|
5
5
|
<div class="template-input-two" style="width: 100%">
|
|
@@ -87,6 +87,10 @@ export default {
|
|
|
87
87
|
userId: {
|
|
88
88
|
type: String,
|
|
89
89
|
default: ''
|
|
90
|
+
},
|
|
91
|
+
pendingId:{
|
|
92
|
+
type: String,
|
|
93
|
+
default: ''
|
|
90
94
|
}
|
|
91
95
|
},
|
|
92
96
|
mounted() {
|
|
@@ -147,6 +151,8 @@ export default {
|
|
|
147
151
|
this.form.notificationType = JSON.parse(JSON.stringify(arr));
|
|
148
152
|
this.showCheck = this.showCheckType
|
|
149
153
|
// this.$emit('onInputMsg', this.form);
|
|
154
|
+
}else{
|
|
155
|
+
this.showCheck = this.showCheckType
|
|
150
156
|
}
|
|
151
157
|
|
|
152
158
|
},
|
|
@@ -155,7 +161,8 @@ export default {
|
|
|
155
161
|
url: this.baseUrl ? this.baseUrl + findSysCode : findSysCode,
|
|
156
162
|
type: 'get',
|
|
157
163
|
params: {
|
|
158
|
-
ccCode: this.code
|
|
164
|
+
ccCode: this.code,
|
|
165
|
+
pendingId:this.pendingId
|
|
159
166
|
}
|
|
160
167
|
};
|
|
161
168
|
request(params)
|
|
@@ -235,6 +235,12 @@ export default {
|
|
|
235
235
|
})
|
|
236
236
|
.then(() => {
|
|
237
237
|
this.opinion = this.pendingItemHandleDescription;
|
|
238
|
+
const { isImageOpinion, file } = this;
|
|
239
|
+
this.$emit('onInputOpintion', {
|
|
240
|
+
opinion: this.opinion,
|
|
241
|
+
isImageOpinion,
|
|
242
|
+
file
|
|
243
|
+
});
|
|
238
244
|
this.$refs.opinionInp[0].$children[0].focus();
|
|
239
245
|
})
|
|
240
246
|
.catch(() => {
|
|
@@ -34,6 +34,7 @@
|
|
|
34
34
|
:defaultNotificationType="defaultNotificationType"
|
|
35
35
|
:defaultNotificationMsg="form.notificationMsg"
|
|
36
36
|
@onInputMsg="onInputMsg"
|
|
37
|
+
:pendingId="pendingId"
|
|
37
38
|
:type="type"
|
|
38
39
|
></Message>
|
|
39
40
|
</div>
|
|
@@ -259,7 +260,7 @@ export default {
|
|
|
259
260
|
} else {
|
|
260
261
|
this.$toast(message);
|
|
261
262
|
setTimeout(() => {
|
|
262
|
-
this.goBack;
|
|
263
|
+
this.goBack();
|
|
263
264
|
}, 1000);
|
|
264
265
|
}
|
|
265
266
|
});
|