Commit 409e20bb by 乔延琦

Merge branch 'develop-yuancheng' into 'develop'

Develop yuancheng

See merge request GFP/RBC/rbc-frontend!83
parents b9d3aa29 af1cafa9
import Bridge from '../components-control/util/bridge'
import SelectApprovers from '../components-control/select-approvers.vue'
import { compareData } from "../components-control/util/dataChange"
export default {
execute: function (bill, param) {
if (bill) {
......@@ -7,19 +8,62 @@ export default {
GMS.$hideContainer.$Message.error('请配置审批轨迹')
return
}
if (compareData(GMS.oldBillData, bill.getBuillData())) {
this.approvalLogical(bill, param, this)
} else {
GMS.billDataChangeChecked = true
GMS.$hideContainer.$Modal.confirm({
title: "信息提示",
content: "信息发生变化, 是否保存",
onOk: () => {
this.saveLogical(bill, param, {data: bill.getBuillData(), detailData: []}, this)
},
onCancel: () => {
this.approvalLogical(bill, param, this)
}
})
}
} else {
GMS.$hideContainer.$Message.error('缺少参数');
}
},
saveLogical: (bill, param, postData, _this) => {
let url = `/rbc/bill/action/executed/${param.define}/bill.Basic.save?transmission=total`
GMS.$http.post(url, JSON.stringify(postData), {
headers: {
post: {
"Content-Type": "application/json",
},
},
})
.then((response) => {
if (response.data.code == 0) {
_this.approvalLogical(bill, param, _this)
} else {
response.data.message && GMS.vbus.$Message.error({
content: response.data.message,
duration: 3
});
}
})
},
approvalLogical: (bill, param, _this) => {
let taskId = bill.getGlobalParam('reviewParam').taskId;
bill.setControlsSate(param["_control_name_"], "enable", false)
let selectedApprovers = []
window.GMS.$http.get(`/bpm/bill/selectApprover/ApproverList/${taskId}`).then((res) => {
if (res.data.code == 204) {
this.executeApproval(bill, param)
_this.executeApproval(bill, param, _this)
return
}
else if (res.data.code != 200) {
delete GMS.billDataChangeChecke
bill.setControlsSate(param["_control_name_"], "enable", true)
GMS.$hideContainer.$Message.error(res.data.msg || '提交失败,请联系系统管理员');
return
}
delete GMS.billDataChangeChecke
bill.setControlsSate(param["_control_name_"], "enable", true)
const nodeData = res.data.ApproverVo
const optionList = [...nodeData.approvers]
......@@ -52,7 +96,7 @@ export default {
approvers: selectedApprovers,
}
).then(() => {
this.executeApproval(bill, param)
_this.executeApproval(bill, param)
}).catch(() => {
GMS.$hideContainer.$Message.error('选择审批人发生错误')
})
......@@ -63,11 +107,8 @@ export default {
}).catch(() => {
GMS.$hideContainer.$Message.error('未找到下一节点的审批人');
})
} else {
GMS.$hideContainer.$Message.error('缺少参数');
}
},
executeApproval: function(bill, param) {
executeApproval: function(bill, param, _this) {
if (param.param.actions) {
let saveParam = {
actions: param.param.actions,
......@@ -80,7 +121,7 @@ export default {
}
bill.executeServerAction(saveParam, function (code, data) {
if (code === 200) {
this.approval(bill, param);
_this.approval(bill, param);
// bill.setControlsSate(param["_control_name_"], "loading", false)
} else {
bill.setControlsSate(param["_control_name_"], "enable", true)
......@@ -89,7 +130,7 @@ export default {
}
}.bind(this));
} else {
this.approval(bill, param);
_this.approval(bill, param);
}
},
approval: function (bill, param) {
......
import Bridge from '../components-control/util/bridge'
import { compareData } from "../components-control/util/dataChange"
export default {
execute: function (bill, param) {
if(bill){
if (compareData(GMS.oldBillData, bill.getBuillData())) {
this.approvalLogical(bill, param, this)
} else {
GMS.billDataChangeChecked = true
GMS.$hideContainer.$Modal.confirm({
title: "信息提示",
content: "信息发生变化, 是否保存",
onOk: () => {
this.saveLogical(bill, param, {data: bill.getBuillData(), detailData: []}, this)
},
onCancel: () => {
this.approvalLogical(bill, param, this)
}
})
}
}else{
GMS.$hideContainer.$Message.error('缺少参数');
}
},
approvalLogical: (bill, param, _this) => {
bill.setControlsSate(param["_control_name_"], "enable", false)
if(param.param.actions){
let saveParam = {
......@@ -9,20 +30,36 @@ export default {
}
bill.executeServerAction(saveParam,function(code,data){
if(code===200){
this.approval(bill, param);
// bill.setControlsSate(param["_control_name_"],"loading",false)
_this.approval(bill, param);
}else{
// bill.setControlsSate(param["_control_name_"],"loading",false)
delete GMS.billDataChangeChecke
bill.setControlsSate(param["_control_name_"], "enable", true)
GMS.$hideContainer.$message.error("操作异常请联系管理员");
}
}.bind(this));
} else {
this.approval(bill, param);
_this.approval(bill, param);
}
}else{
GMS.$hideContainer.$Message.error('缺少参数');
},
saveLogical: (bill, param, postData, _this) => {
let url = `/rbc/bill/action/executed/${param.define}/bill.Basic.save?transmission=total`
GMS.$http.post(url, JSON.stringify(postData), {
headers: {
post: {
"Content-Type": "application/json",
},
},
})
.then((response) => {
if (response.data.code == 0) {
_this.approvalLogical(bill, param, _this)
} else {
response.data.message && GMS.vbus.$Message.error({
content: response.data.message,
duration: 3
});
}
})
},
approval: function(bill, param){
if (!bill.getGlobalParam('reviewParam') || !bill.getGlobalParam('reviewParam').taskId) {
......@@ -34,7 +71,6 @@ export default {
GMS.$http.post('/gms/workflow/task/completed/' + taskId + '?result=3&comments='+comments).then(
function(response) {
if (response.status == 200 || response.statusText == 'OK') {
// console.log('驳回成功');
bill.setControlsSate(param["_control_name_"], "enable", true)
bill.setControlsSate(param["_control_name_"],"loading",false)
GMS.$hideContainer.$Message.success('驳回成功!')
......
......@@ -78,8 +78,10 @@ export default {
return
}
const tem = this.curBill && this.curBill.getBuillData() || {}
if (compareData(GMS.oldBillDataMap[this.curTagId], tem)) cb(true)
else {
if (compareData(GMS.oldBillDataMap[this.curTagId], tem) || this.state == 'readOnly' || GMS.billDataChangeChecked) {
delete GMS.billDataChangeChecke
cb(true)
} else {
this.$Modal.confirm({
title: "信息提示",
content: "信息发生变化,确认关闭?",
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment