@lambo-design/workflow-approve 1.0.0-beta.88 → 1.0.0-beta.89
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/package.json +1 -1
- package/src/portrait.vue +118 -13
package/package.json
CHANGED
package/src/portrait.vue
CHANGED
|
@@ -514,7 +514,9 @@ export default {
|
|
|
514
514
|
'84': '委派任务',
|
|
515
515
|
'61': '交回委派任务',
|
|
516
516
|
'62': '撤回委派任务',
|
|
517
|
+
'passContinue': '通过并继续',
|
|
517
518
|
},
|
|
519
|
+
isPassContinue: false, // 标记是否为通过并继续操作
|
|
518
520
|
handleTypeList: [
|
|
519
521
|
{
|
|
520
522
|
value: '00',
|
|
@@ -639,6 +641,13 @@ export default {
|
|
|
639
641
|
action: () => this.audit('30'),
|
|
640
642
|
type: 'primary'
|
|
641
643
|
},
|
|
644
|
+
{
|
|
645
|
+
id: 'passContinue',
|
|
646
|
+
label: `${this.passName}并继续`,
|
|
647
|
+
condition: this.handleButtons?.includes('passContinue') && !this.isDetail && !this.appointTask,
|
|
648
|
+
action: () => this.passContinueAudit(),
|
|
649
|
+
type: 'primary'
|
|
650
|
+
},
|
|
642
651
|
{
|
|
643
652
|
id: 'revokeDelegateTask',
|
|
644
653
|
label: '撤回委派',
|
|
@@ -1280,6 +1289,85 @@ export default {
|
|
|
1280
1289
|
self.auditResult = auditResult
|
|
1281
1290
|
self.submit()
|
|
1282
1291
|
},
|
|
1292
|
+
|
|
1293
|
+
// 通过并继续审批
|
|
1294
|
+
passContinueAudit: function () {
|
|
1295
|
+
let self = this
|
|
1296
|
+
self.auditResult = '30' // 设置为通过
|
|
1297
|
+
self.isPassContinue = true // 标记为通过并继续
|
|
1298
|
+
self.submit()
|
|
1299
|
+
},
|
|
1300
|
+
|
|
1301
|
+
// 获取下一条待办并刷新页面
|
|
1302
|
+
getNextTodoAndRefresh() {
|
|
1303
|
+
let self = this
|
|
1304
|
+
let param = {
|
|
1305
|
+
procType: self.procType
|
|
1306
|
+
}
|
|
1307
|
+
// 获取待办列表,获取下一条数据,排除当前已处理的任务
|
|
1308
|
+
ajax.get(self.smartFlowServerContext + "/manage/processTodo/list",{params:param}).then(function (resp) {
|
|
1309
|
+
if (resp.data.code === '200' && resp.data.data.rows && resp.data.data.rows.length > 0) {
|
|
1310
|
+
// 过滤掉当前已处理的任务
|
|
1311
|
+
const availableTodos = resp.data.data.rows.filter(todo => todo.applyId !== self.applyId)
|
|
1312
|
+
if (availableTodos.length === 0) {
|
|
1313
|
+
self.$Message.info('该类型没有更多待办任务了')
|
|
1314
|
+
self.isPassContinue = false // 重置标志
|
|
1315
|
+
self.executionCompleted(true, null, null, { code: '30', name: '通过' }, self.curTaskId)
|
|
1316
|
+
return
|
|
1317
|
+
}
|
|
1318
|
+
const nextTodo = availableTodos[0]
|
|
1319
|
+
// 获取节点配置信息
|
|
1320
|
+
let param = {
|
|
1321
|
+
procId: nextTodo.procId,
|
|
1322
|
+
taskNode: nextTodo.taskNode
|
|
1323
|
+
}
|
|
1324
|
+
ajax.post(self.smartFlowServerContext + '/manage/approvalCenter/getNodeData', param).then(function (nodeResp) {
|
|
1325
|
+
if (nodeResp.data.code === '200' && nodeResp.data.data && nodeResp.data.data.length > 0) {
|
|
1326
|
+
const nodeData = nodeResp.data.data[0]
|
|
1327
|
+
// 跳转处理
|
|
1328
|
+
self.jumpToNextTodo(nextTodo, nodeData)
|
|
1329
|
+
} else {
|
|
1330
|
+
self.$Message.warning('无法获取下一条待办的节点配置信息')
|
|
1331
|
+
self.isPassContinue = false // 重置标志
|
|
1332
|
+
self.executionCompleted(true, null, null, { code: '30', name: '通过' }, self.curTaskId)
|
|
1333
|
+
}
|
|
1334
|
+
}).catch(err => {
|
|
1335
|
+
console.error('获取节点配置失败:', err)
|
|
1336
|
+
self.$Message.error('获取节点配置失败')
|
|
1337
|
+
self.isPassContinue = false // 重置标志
|
|
1338
|
+
self.executionCompleted(true, null, null, { code: '30', name: '通过' }, self.curTaskId)
|
|
1339
|
+
})
|
|
1340
|
+
} else {
|
|
1341
|
+
self.$Message.info('没有更多待办任务了')
|
|
1342
|
+
self.isPassContinue = false // 重置标志
|
|
1343
|
+
self.executionCompleted(true, null, null, { code: '30', name: '通过' }, self.curTaskId)
|
|
1344
|
+
}
|
|
1345
|
+
}).catch(err => {
|
|
1346
|
+
console.error('获取待办列表失败:', err)
|
|
1347
|
+
self.$Message.error('获取下一条待办失败')
|
|
1348
|
+
self.isPassContinue = false // 重置标志
|
|
1349
|
+
self.executionCompleted(true, null, null, { code: '30', name: '通过' }, self.curTaskId)
|
|
1350
|
+
})
|
|
1351
|
+
},
|
|
1352
|
+
|
|
1353
|
+
// 通过executionCompleted回调通知父组件进行页面跳转
|
|
1354
|
+
jumpToNextTodo(nextTodo, nodeData) {
|
|
1355
|
+
// 先重置标志
|
|
1356
|
+
this.isPassContinue = false
|
|
1357
|
+
|
|
1358
|
+
this.$Message.success(`已切换到下一条待办`)
|
|
1359
|
+
|
|
1360
|
+
// 构建特殊的auditResult对象,包含下一条待办的信息
|
|
1361
|
+
let auditResult = {
|
|
1362
|
+
code: 'passContinueSuccess',
|
|
1363
|
+
name: '通过并继续',
|
|
1364
|
+
nextTodo: nextTodo,
|
|
1365
|
+
nodeData: nodeData
|
|
1366
|
+
}
|
|
1367
|
+
|
|
1368
|
+
// 通过executionCompleted回调通知父组件处理跳转
|
|
1369
|
+
this.executionCompleted(true, null, null, auditResult, this.curTaskId)
|
|
1370
|
+
},
|
|
1283
1371
|
submit() {
|
|
1284
1372
|
let self = this
|
|
1285
1373
|
self.auditParams = {
|
|
@@ -1370,6 +1458,7 @@ export default {
|
|
|
1370
1458
|
let taskIds = result.data.id ? result.data.id : result.data.map(item => item.id).join(',')
|
|
1371
1459
|
setTimeout(() => {
|
|
1372
1460
|
self.executionCompleted(true, result.data.id ? result.data.processInstanceId : result.data[0].processInstanceId, taskIds, auditResult, self.curTaskId)
|
|
1461
|
+
self.isPassContinue = false // 重置标志
|
|
1373
1462
|
}, 1000)
|
|
1374
1463
|
}
|
|
1375
1464
|
} else {
|
|
@@ -1417,6 +1506,7 @@ export default {
|
|
|
1417
1506
|
//后端没有返回数据
|
|
1418
1507
|
setTimeout(() => {
|
|
1419
1508
|
self.executionCompleted(true, null, null, auditResult, self.curTaskId)
|
|
1509
|
+
self.isPassContinue = false // 重置标志
|
|
1420
1510
|
}, 1000)
|
|
1421
1511
|
bus.$emit('triggerTimer')
|
|
1422
1512
|
} else {
|
|
@@ -1425,6 +1515,7 @@ export default {
|
|
|
1425
1515
|
self.$Message.error(auditMessage)
|
|
1426
1516
|
setTimeout(() => {
|
|
1427
1517
|
self.executionCompleted(false, null, null, auditResult, self.curTaskId)
|
|
1518
|
+
self.isPassContinue = false // 重置标志
|
|
1428
1519
|
}, 1000)
|
|
1429
1520
|
}
|
|
1430
1521
|
bus.$emit('triggerTimer')
|
|
@@ -1462,8 +1553,8 @@ export default {
|
|
|
1462
1553
|
let self = this
|
|
1463
1554
|
this.modal = false
|
|
1464
1555
|
let auditResult = {
|
|
1465
|
-
code: self.auditResult,
|
|
1466
|
-
name: self.handleButtonsNames[self.auditResult]
|
|
1556
|
+
code: self.isPassContinue ? 'passContinue' : self.auditResult,
|
|
1557
|
+
name: self.isPassContinue ? self.handleButtonsNames['passContinue'] : self.handleButtonsNames[self.auditResult]
|
|
1467
1558
|
}
|
|
1468
1559
|
if (self.auditResult === '82' && (self.targetTaskNode == '' || self.targetTaskNode == null)) {
|
|
1469
1560
|
self.auditResult = ''
|
|
@@ -1483,15 +1574,21 @@ export default {
|
|
|
1483
1574
|
message = result.message ? self.replaceName(result.message, '驳回', self.rejectName) : `${self.rejectName}成功`
|
|
1484
1575
|
}
|
|
1485
1576
|
self.$Message.success(message)
|
|
1486
|
-
if (
|
|
1487
|
-
|
|
1488
|
-
|
|
1489
|
-
self.executionCompleted(true, result.data.id ? result.data.processInstanceId : result.data[0].processInstanceId, taskIds, auditResult, self.curTaskId)
|
|
1490
|
-
}, 1000)
|
|
1577
|
+
if (self.isPassContinue) {
|
|
1578
|
+
// 通过并继续操作,获取下一条待办
|
|
1579
|
+
self.getNextTodoAndRefresh()
|
|
1491
1580
|
} else {
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
|
|
1581
|
+
// 普通操作,正常回调
|
|
1582
|
+
if (result.data) {
|
|
1583
|
+
let taskIds = result.data.id ? result.data.id : result.data.map(item => item.id).join(',')
|
|
1584
|
+
setTimeout(() => {
|
|
1585
|
+
self.executionCompleted(true, result.data.id ? result.data.processInstanceId : result.data[0].processInstanceId, taskIds, auditResult, self.curTaskId)
|
|
1586
|
+
}, 1000)
|
|
1587
|
+
} else {
|
|
1588
|
+
setTimeout(() => {
|
|
1589
|
+
self.executionCompleted(true, null, null, auditResult, self.curTaskId)
|
|
1590
|
+
}, 1000)
|
|
1591
|
+
}
|
|
1495
1592
|
}
|
|
1496
1593
|
} else if (result.code == '10012') {
|
|
1497
1594
|
// 数据同步
|
|
@@ -1506,9 +1603,17 @@ export default {
|
|
|
1506
1603
|
self.loading = false
|
|
1507
1604
|
self.disable = false
|
|
1508
1605
|
self.$Message.success(result.message)
|
|
1509
|
-
|
|
1510
|
-
|
|
1511
|
-
|
|
1606
|
+
if (self.isPassContinue) {
|
|
1607
|
+
// 通过并继续操作,获取下一条待办
|
|
1608
|
+
setTimeout(() => {
|
|
1609
|
+
self.getNextTodoAndRefresh()
|
|
1610
|
+
}, 500)
|
|
1611
|
+
}else {
|
|
1612
|
+
setTimeout(() => {
|
|
1613
|
+
self.executionCompleted(true, '流程已结束', '流程已结束', auditResult, self.curTaskId)
|
|
1614
|
+
self.isPassContinue = false // 重置标志
|
|
1615
|
+
}, 1000)
|
|
1616
|
+
}
|
|
1512
1617
|
} else {
|
|
1513
1618
|
self.loading = false
|
|
1514
1619
|
self.disable = false
|