mirror of
https://gitee.com/maimengcloud/xm-ui-web.git
synced 2025-12-30 10:12:26 +00:00
优化项目审批流
This commit is contained in:
@@ -220,9 +220,8 @@
|
||||
@click="handleCommand({ type: 'sendToProcessApprova', data: editForm, bizKey: 'xm_project_budget_change_approva' })">项目金额变更申请</el-button>
|
||||
<el-button v-if="currTabPane == 'time'" icon="watch" type="warning"
|
||||
@click="handleCommand({ type: 'sendToProcessApprova', data: editForm, bizKey: 'xm_project_delay_approva' })">工期变更申请</el-button>
|
||||
<el-button icon="StarOn" type="success" :disabled="editForm.status > '2'"
|
||||
@click="handleCommand({ type: 'sendToProcessApprova', data: editForm, bizKey: 'xm_project_start_approva' })">立项申请</el-button>
|
||||
<el-button icon="Success" type="success" :disabled="editForm.status > '5'"
|
||||
|
||||
<el-button icon="finished" type="success" :disabled="editForm.status > '5'"
|
||||
@click="handleCommand({ type: 'sendToProcessApprova', data: editForm, bizKey: 'xm_project_over_approva' })">结项申请</el-button>
|
||||
</span>
|
||||
<el-button v-if="currOpType === 'add'" v-loading="load.edit" type="primary" @click="editSubmit"
|
||||
@@ -695,20 +694,18 @@ export default {
|
||||
},
|
||||
sendToProcessApprova: function (row, bizKey) {
|
||||
// 传过来的参数格式
|
||||
if (row.flowState == '1') {
|
||||
if (row.bizFlowState == '1') {
|
||||
this.$notify.error("审核中,不允许重复发审");
|
||||
return;
|
||||
}
|
||||
|
||||
row.planIuserWorkload = this.autoParams.planIuserWorkload
|
||||
row.planOuserWorkload = this.autoParams.planOuserWorkload
|
||||
row.planWorkload = this.autoParams.planWorkload
|
||||
let extVars = { projectId: row.id }
|
||||
let jsonExtVars = JSON.stringify(extVars);
|
||||
row.planWorkload = this.autoParams.planWorkload
|
||||
|
||||
var currDomain = window.location.protocol + "//" + window.location.host;
|
||||
var fullPath = this.$route.fullPath;
|
||||
var bizUrl = currDomain + '/#' + fullPath + '?extVars=' + jsonExtVars
|
||||
var bizUrl = currDomain + '/#' + fullPath
|
||||
|
||||
let params = {
|
||||
bizKey: bizKey,
|
||||
@@ -716,8 +713,7 @@ export default {
|
||||
resUrl: '',
|
||||
bizId: row.id,
|
||||
bizPid: row.id,
|
||||
mainContext: '',
|
||||
extVars: extVars,
|
||||
mainContext: '',
|
||||
flowVars: {
|
||||
subscribeTaskEvent: 'TASK_COMPLETED,TASK_CREATED',
|
||||
data: {
|
||||
@@ -727,67 +723,161 @@ export default {
|
||||
},
|
||||
}
|
||||
if (bizKey == "xm_project_baseinfo_change_approva") {
|
||||
//延期审核
|
||||
params.mainTitle = '关于项目【' + row.name + "】修改基本信息的申请";
|
||||
params.mainContext = '项目编号:' + row.code + ',' + '项目名称:' + row.name + ',此次变更不涉及预算调整';
|
||||
//基础信息审核
|
||||
params.mainTitle = '关于项目【' + row.name + "】修改基本信息的申请";
|
||||
params.mainContext = `<p><ol>
|
||||
<li>项目名称:${row.name}</li>
|
||||
<li>项目编号:${row.id}</li>
|
||||
<li>开始日期:${row.startTime} 结束日期:${row.endTime}</li>
|
||||
<li>总工期:${row.planWorkingHours}小时</li>
|
||||
<li>需要人员:${row.planIuserCnt+row.planOuserCnt}人</li>
|
||||
<li>项目目标:${row.target||''}</li>
|
||||
<li>项目总控:${row.admUsername}</li>
|
||||
<li>项目经理:${row.pmUsername}</li>
|
||||
<li>项目预算:${row.planTotalCost||'0'}元</li>
|
||||
<li>实际成本:${row.actAt||'0'}元</li>
|
||||
<li>合同金额:${row.contractAmt||'0'}元</li>
|
||||
<li>预估毛利率:${row.budgetMarginRate||'-'}%</li>
|
||||
<li>实际毛利率:${row.budgetMarginRate||'-'}%</li>
|
||||
<li>立项说明:${row.setupRemark||''}</li>
|
||||
<li>项目说明:${row.description||''}</li>
|
||||
</ol></p>`;
|
||||
params.restUrl = config.getXmCtx() + "/xm/core/xmProject/processApprova";
|
||||
params.flowVars.data = row
|
||||
//this.html2canvas(document.querySelector(".editForm"),row,params);
|
||||
this.$router.push({ name: 'bizStartProc', query: { paramsId: this.$mdp.setCacheParams(params) } });
|
||||
} else if (bizKey == "xm_project_delay_approva") {
|
||||
//延期审核
|
||||
params.mainTitle = '关于项目【' + row.name + "】延期的审批申请";
|
||||
params.mainContext = '项目编号:' + row.code + ',' + '项目名称:' + row.name + ',项目结束时间由' + this.selProject.endTime + '变更为:' + this.editForm.endTime + ',此次变更不涉及预算调整';
|
||||
params.mainTitle = '关于项目【' + row.name + "】延期的审批申请";
|
||||
params.mainContext = `<p><ol>
|
||||
<li>项目名称:${row.name}</li>
|
||||
<li>项目编号:${row.id}</li>
|
||||
<li>开始日期:${row.startTime} 结束日期:${row.endTime}</li>
|
||||
<li>总工期:${row.planWorkingHours}小时</li>
|
||||
<li>需要人员:${row.planIuserCnt+row.planOuserCnt}人</li>
|
||||
<li>项目目标:${row.target||''}</li>
|
||||
<li>项目总控:${row.admUsername}</li>
|
||||
<li>项目经理:${row.pmUsername}</li>
|
||||
<li>项目预算:${row.planTotalCost||'0'}元</li>
|
||||
<li>实际成本:${row.actAt||'0'}元</li>
|
||||
<li>合同金额:${row.contractAmt||'0'}元</li>
|
||||
<li>预估毛利率:${row.budgetMarginRate||'-'}%</li>
|
||||
<li>实际毛利率:${row.budgetMarginRate||'-'}%</li>
|
||||
<li>立项说明:${row.setupRemark||''}</li>
|
||||
<li>项目说明:${row.description||''}</li>
|
||||
</ol></p>`;
|
||||
params.restUrl = config.getXmCtx() + "/xm/core/xmProject/processApprova";
|
||||
params.flowVars.data.endTime = this.editForm.endTime
|
||||
//this.html2canvas(document.querySelector(".editForm"),row,params);
|
||||
this.$router.push({ name: 'bizStartProc', state: { params } });
|
||||
} else if (bizKey == "xm_project_start_approva") {
|
||||
|
||||
//立项审核
|
||||
params.mainTitle = '关于项目【' + row.name + "】立项的审批申请";
|
||||
params.mainContext = '项目编号:' + row.code + ',' + '项目名称:' + row.name + ',项目周期:' + row.startTime + '~' + row.endTime
|
||||
+ ',预估及考核毛利率:' + row.budgetMarginRate + ',预估总成本:' + row.planTotalCost + ',总收入:' + row.totalReceivables
|
||||
+ ',合同金额:' + row.contractAmt + '详细如下(截图):';
|
||||
params.restUrl = config.getXmCtx() + "/xm/core/xmProject/processApprova";
|
||||
params.flowVars.data = row
|
||||
//this.html2canvas(document.querySelector(".editForm"),row,params);
|
||||
this.$router.push({ name: 'bizStartProc', query: { paramsId: this.$mdp.setCacheParams(params) } });
|
||||
} else if (bizKey == "xm_project_over_approva") {
|
||||
//结项审核
|
||||
params.mainTitle = '关于项目【' + row.name + "】结项的审批申请";
|
||||
params.mainContext = '项目编号:' + row.code + ',' + '项目名称:' + row.name + ',项目周期:' + row.startTime + '~' + row.endTime
|
||||
+ ',预估及考核毛利率:' + row.budgetMarginRate + ',预估总成本:' + row.planTotalCost + ',总收入:' + row.totalReceivables
|
||||
+ ',合同金额:' + row.contractAmt + '详细如下(截图):';
|
||||
params.restUrl = config.getXmCtx() + "/xm/core/xmProject/processApprova";
|
||||
}else if (bizKey == "xm_project_over_approva") {
|
||||
if(row.status!='5'){
|
||||
this.$notify.error('已验收的项目才允许结项')
|
||||
return;
|
||||
}
|
||||
//结项审核
|
||||
params.mainTitle = '关于项目【' + row.name + "】结项的申请";
|
||||
params.mainContext = `<p><ol>
|
||||
<li>项目名称:${row.name}</li>
|
||||
<li>项目编号:${row.id}</li>
|
||||
<li>开始日期:${row.startTime} 结束日期:${row.endTime}</li>
|
||||
<li>总工期:${row.planWorkingHours}小时</li>
|
||||
<li>需要人员:${row.planIuserCnt+row.planOuserCnt}人</li>
|
||||
<li>项目目标:${row.target||''}</li>
|
||||
<li>项目总控:${row.admUsername}</li>
|
||||
<li>项目经理:${row.pmUsername}</li>
|
||||
<li>项目预算:${row.planTotalCost||'0'}元</li>
|
||||
<li>实际成本:${row.actAt||'0'}元</li>
|
||||
<li>合同金额:${row.contractAmt||'0'}元</li>
|
||||
<li>预估毛利率:${row.budgetMarginRate||'-'}%</li>
|
||||
<li>实际毛利率:${row.budgetMarginRate||'-'}%</li>
|
||||
<li>立项说明:${row.setupRemark||''}</li>
|
||||
<li>项目说明:${row.description||''}</li>
|
||||
</ol></p>`;
|
||||
params.restUrl = "/"+config.getXmCtx() + "/xm/core/xmProject/processApprova";
|
||||
//this.html2canvas(document.querySelector(".editForm"),row,params);
|
||||
this.$router.push({ name: 'bizStartProc', query: { paramsId: this.$mdp.setCacheParams(params) } });
|
||||
} else if (bizKey == "xm_project_pause_approva") {
|
||||
//结项审核
|
||||
if(row.status<'5' && row.status>'2'){
|
||||
this.$notify.error('已立项并且未验收的项目才允许暂停')
|
||||
return;
|
||||
}
|
||||
//暂停审核
|
||||
params.mainTitle = '关于项目【' + row.name + "】暂停的审批申请";
|
||||
params.mainContext = '项目编号:' + row.code + ',' + '项目名称:' + row.name + ',项目周期:' + row.startTime + '~' + row.endTime
|
||||
+ ',预估及考核毛利率:' + row.budgetMarginRate + ',预估总成本:' + row.planTotalCost + ',总收入:' + row.totalReceivables
|
||||
+ ',合同金额:' + row.contractAmt + '详细如下(截图):';
|
||||
|
||||
params.mainContext = `<p><ol>
|
||||
<li>项目名称:${row.name}</li>
|
||||
<li>项目编号:${row.id}</li>
|
||||
<li>开始日期:${row.startTime} 结束日期:${row.endTime}</li>
|
||||
<li>总工期:${row.planWorkingHours}小时</li>
|
||||
<li>需要人员:${row.planIuserCnt+row.planOuserCnt}人</li>
|
||||
<li>项目目标:${row.target||''}</li>
|
||||
<li>项目总控:${row.admUsername}</li>
|
||||
<li>项目经理:${row.pmUsername}</li>
|
||||
<li>项目预算:${row.planTotalCost||'0'}元</li>
|
||||
<li>实际成本:${row.actAt||'0'}元</li>
|
||||
<li>合同金额:${row.contractAmt||'0'}元</li>
|
||||
<li>预估毛利率:${row.budgetMarginRate||'-'}%</li>
|
||||
<li>实际毛利率:${row.budgetMarginRate||'-'}%</li>
|
||||
<li>立项说明:${row.setupRemark||''}</li>
|
||||
<li>项目说明:${row.description||''}</li>
|
||||
</ol></p>`;
|
||||
params.restUrl = config.getXmCtx() + "/xm/core/xmProject/processApprova";
|
||||
this.$router.push({ name: 'bizStartProc', query: { paramsId: this.$mdp.setCacheParams(params) } });
|
||||
//this.html2canvas(document.querySelector(".editForm"),row,params);
|
||||
} else if (bizKey == "xm_project_restart_approva") {
|
||||
//结项审核
|
||||
if(row.status!='4'){
|
||||
this.$notify.error('已暂停的项目才允许重新启动')
|
||||
return;
|
||||
}
|
||||
//重新启动审核
|
||||
params.mainTitle = '关于项目【' + row.name + "】重新启动的审批申请";
|
||||
params.mainContext = '项目编号:' + row.code + ',' + '项目名称:' + row.name + ',项目周期:' + row.startTime + '~' + row.endTime
|
||||
+ ',预估及考核毛利率:' + row.budgetMarginRate + ',预估总成本:' + row.planTotalCost + ',总收入:' + row.totalReceivables
|
||||
+ ',合同金额:' + row.contractAmt + '详细如下(截图):';
|
||||
|
||||
params.mainContext = `<p><ol>
|
||||
<li>项目名称:${row.name}</li>
|
||||
<li>项目编号:${row.id}</li>
|
||||
<li>开始日期:${row.startTime} 结束日期:${row.endTime}</li>
|
||||
<li>总工期:${row.planWorkingHours}小时</li>
|
||||
<li>需要人员:${row.planIuserCnt+row.planOuserCnt}人</li>
|
||||
<li>项目目标:${row.target||''}</li>
|
||||
<li>项目总控:${row.admUsername}</li>
|
||||
<li>项目经理:${row.pmUsername}</li>
|
||||
<li>项目预算:${row.planTotalCost||'0'}元</li>
|
||||
<li>实际成本:${row.actAt||'0'}元</li>
|
||||
<li>合同金额:${row.contractAmt||'0'}元</li>
|
||||
<li>预估毛利率:${row.budgetMarginRate||'-'}%</li>
|
||||
<li>实际毛利率:${row.budgetMarginRate||'-'}%</li>
|
||||
<li>立项说明:${row.setupRemark||''}</li>
|
||||
<li>项目说明:${row.description||''}</li>
|
||||
</ol></p>`;
|
||||
params.restUrl = config.getXmCtx() + "/xm/core/xmProject/processApprova";
|
||||
//this.html2canvas(document.querySelector(".editForm"),row,params);
|
||||
this.$router.push({ name: 'bizStartProc', query: { paramsId: this.$mdp.setCacheParams(params) } });
|
||||
} else if (bizKey == "xm_project_budget_change_approva") {
|
||||
//预算变更审核
|
||||
if(row.status<'5' && row.status>'2'){
|
||||
this.$notify.error('已立项、未验收的项目才需要走预算变更')
|
||||
return;
|
||||
}
|
||||
params.mainTitle = '关于项目【' + row.name + "】预算变更的审批申请";
|
||||
params.mainContext = '项目编号:' + row.code + ',' + '项目名称:' + row.name + '项目周期:' + row.startTime + '~' + row.endTime
|
||||
+ ',<br/>变更前数据:预估及考核毛利率:' + this.selProject.budgetMarginRate + ',预估总成本:' + this.selProject.planTotalCost + ',总收入:' + this.selProject.totalReceivables
|
||||
+ ',合同金额:' + this.selProject.contractAmt
|
||||
+ ',<br/>变更后数据:预估及考核毛利率:' + row.budgetMarginRate + ',预估总成本:' + row.planTotalCost + ',总收入:' + row.totalReceivables
|
||||
+ ',合同金额:' + row.contractAmt;
|
||||
|
||||
params.mainContext = `<p><ol>
|
||||
<li>项目名称:${row.name}</li>
|
||||
<li>项目编号:${row.id}</li>
|
||||
<li>开始日期:${row.startTime} 结束日期:${row.endTime}</li>
|
||||
<li>总工期:${row.planWorkingHours}小时</li>
|
||||
<li>需要人员:${row.planIuserCnt+row.planOuserCnt}人</li>
|
||||
<li>项目目标:${row.target||''}</li>
|
||||
<li>项目总控:${row.admUsername}</li>
|
||||
<li>项目经理:${row.pmUsername}</li>
|
||||
<li>项目预算:${row.planTotalCost||'0'}元</li>
|
||||
<li>实际成本:${row.actAt||'0'}元</li>
|
||||
<li>合同金额:${row.contractAmt||'0'}元</li>
|
||||
<li>预估毛利率:${row.budgetMarginRate||'-'}%</li>
|
||||
<li>实际毛利率:${row.budgetMarginRate||'-'}%</li>
|
||||
<li>立项说明:${row.setupRemark||''}</li>
|
||||
<li>项目说明:${row.description||''}</li>
|
||||
</ol></p>`;
|
||||
params.restUrl = config.getXmCtx() + "/xm/core/xmProject/processApprova";
|
||||
params.flowVars.data = row
|
||||
//this.html2canvas(document.querySelector(".editForm"),row,params);
|
||||
|
||||
@@ -22,8 +22,7 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="项目总控" prop="admUserid">
|
||||
{{ editForm.admUserid }}
|
||||
<el-form-item label="项目总控" prop="admUserid">
|
||||
<mdp-select-user width="100%" v-model="editForm.admUserid" @change2="editSomeFields(editForm,'admUserid',$event)" :init-name="editForm.admUsername"/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
@@ -219,7 +218,10 @@ export default {
|
||||
this.$notify.error("审核中,不允许重复发审");
|
||||
return;
|
||||
}
|
||||
|
||||
if(row.status>'2'){
|
||||
this.$notify.error("已立项,不允许重新发起立项申请");
|
||||
return;
|
||||
}
|
||||
|
||||
let extVars = { projectId: row.id }
|
||||
let jsonExtVars = JSON.stringify(extVars);
|
||||
|
||||
Reference in New Issue
Block a user