|
@@ -606,6 +606,10 @@ module.exports = app => {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ // 工程变更类别读取
|
|
|
|
+ const projectData = await ctx.service.project.getDataById(ctx.session.sessionProject.id);
|
|
|
|
+ const fun_set = await ctx.service.project.getFunSet(projectData.fun_set);
|
|
|
|
+
|
|
// 获取用户人验证手机号
|
|
// 获取用户人验证手机号
|
|
const pa = await ctx.service.projectAccount.getDataById(ctx.session.sessionUser.accountId);
|
|
const pa = await ctx.service.projectAccount.getDataById(ctx.session.sessionUser.accountId);
|
|
const auth_mobile = pa.auth_mobile;
|
|
const auth_mobile = pa.auth_mobile;
|
|
@@ -614,6 +618,7 @@ module.exports = app => {
|
|
change,
|
|
change,
|
|
othersChange,
|
|
othersChange,
|
|
changeConst,
|
|
changeConst,
|
|
|
|
+ changeClass: fun_set.change_class,
|
|
auditStatus,
|
|
auditStatus,
|
|
auditConst: audit.flow,
|
|
auditConst: audit.flow,
|
|
ledgerConsts: audit.ledger.status,
|
|
ledgerConsts: audit.ledger.status,
|
|
@@ -677,6 +682,12 @@ module.exports = app => {
|
|
renderData.changeList = changeList;
|
|
renderData.changeList = changeList;
|
|
renderData.changeLedgerList = await ctx.service.changeLedger.getAllDataByCondition({ where: { tender_id: ctx.tender.id } });
|
|
renderData.changeLedgerList = await ctx.service.changeLedger.getAllDataByCondition({ where: { tender_id: ctx.tender.id } });
|
|
renderData.changePosList = await ctx.service.changePos.getAllDataByCondition({ where: { tid: ctx.tender.id } });
|
|
renderData.changePosList = await ctx.service.changePos.getAllDataByCondition({ where: { tid: ctx.tender.id } });
|
|
|
|
+
|
|
|
|
+ // 判断是否更新变更类别
|
|
|
|
+ if (ctx.helper._.findIndex(fun_set.change_class, { value: change.class, checked: true }) === -1) {
|
|
|
|
+ renderData.change.class = ctx.helper._.find(fun_set.change_class, { checked: true }).value;
|
|
|
|
+ await ctx.service.change.saveInfo({ class: ctx.helper._.find(fun_set.change_class, { checked: true }).value });
|
|
|
|
+ }
|
|
} else if (auditStatus === 3 || auditStatus === 4 || auditStatus === 5 || auditStatus === 7 || auditStatus === 8) {
|
|
} else if (auditStatus === 3 || auditStatus === 4 || auditStatus === 5 || auditStatus === 7 || auditStatus === 8) {
|
|
// 展示页左侧审批流程列表和清单审批列表数据
|
|
// 展示页左侧审批流程列表和清单审批列表数据
|
|
const times = change.status === audit.flow.status.back ?
|
|
const times = change.status === audit.flow.status.back ?
|
|
@@ -2070,6 +2081,35 @@ module.exports = app => {
|
|
ctx.change.xsAuditors = await ctx.service.changeProjectXsAudit.getAuditList(ctx.change.id);
|
|
ctx.change.xsAuditors = await ctx.service.changeProjectXsAudit.getAuditList(ctx.change.id);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ // 变更类别获取及更新
|
|
|
|
+ async _getOrUpdateClass(ctx, serviceName) {
|
|
|
|
+ // 工程变更类别读取
|
|
|
|
+ const projectData = await ctx.service.project.getDataById(ctx.session.sessionProject.id);
|
|
|
|
+ const fun_set = await ctx.service.project.getFunSet(projectData.fun_set);
|
|
|
|
+ if (ctx.change.status === audit[serviceName].status.uncheck ||
|
|
|
|
+ (serviceName === 'changeProject' && ctx.change.status === audit[serviceName].status.back) ||
|
|
|
|
+ (serviceName !== 'changeProject' && ctx.change.status === audit[serviceName].status.checkNo)) {
|
|
|
|
+ const classInfo = ctx.helper._.find(fun_set.change_class, function(item) {
|
|
|
|
+ return item.checked && (item.name === ctx.change.class || item.new_name === ctx.change.class);
|
|
|
|
+ });
|
|
|
|
+ if (!classInfo) {
|
|
|
|
+ const classInfo2 = ctx.helper._.find(fun_set.change_class, { checked: true });
|
|
|
|
+ ctx.change.class = classInfo2.new_name ? classInfo2.new_name : classInfo2.name;
|
|
|
|
+ await ctx.service[serviceName].defaultUpdate({
|
|
|
|
+ id: ctx.change.id,
|
|
|
|
+ class: ctx.change.class,
|
|
|
|
+ });
|
|
|
|
+ } else if (classInfo && classInfo.new_name && ctx.change.class !== classInfo.new_name) {
|
|
|
|
+ ctx.change.class = classInfo.new_name;
|
|
|
|
+ await ctx.service[serviceName].defaultUpdate({
|
|
|
|
+ id: ctx.change.id,
|
|
|
|
+ class: ctx.change.class,
|
|
|
|
+ });
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return fun_set.change_class;
|
|
|
|
+ }
|
|
|
|
+
|
|
async projectInformation(ctx) {
|
|
async projectInformation(ctx) {
|
|
try {
|
|
try {
|
|
const whiteList = this.ctx.app.config.multipart.whitelist;
|
|
const whiteList = this.ctx.app.config.multipart.whitelist;
|
|
@@ -2077,10 +2117,13 @@ module.exports = app => {
|
|
// 获取附件列表
|
|
// 获取附件列表
|
|
const fileList = await ctx.service.changeProjectAtt.getAllChangeProjectAtt(ctx.tender.id, ctx.change.id);
|
|
const fileList = await ctx.service.changeProjectAtt.getAllChangeProjectAtt(ctx.tender.id, ctx.change.id);
|
|
await this._getChangeProjectAuditViewData(ctx);
|
|
await this._getChangeProjectAuditViewData(ctx);
|
|
|
|
+ const changeClass = await this._getOrUpdateClass(ctx, 'changeProject');
|
|
|
|
+ // 判断并更新
|
|
const renderData = {
|
|
const renderData = {
|
|
tender,
|
|
tender,
|
|
change: ctx.change,
|
|
change: ctx.change,
|
|
changeConst,
|
|
changeConst,
|
|
|
|
+ changeClass,
|
|
auditConst: audit.changeProject,
|
|
auditConst: audit.changeProject,
|
|
fileList,
|
|
fileList,
|
|
whiteList,
|
|
whiteList,
|
|
@@ -2672,12 +2715,14 @@ module.exports = app => {
|
|
const changeList = await ctx.service.changeApplyList.getList(ctx.change.id);
|
|
const changeList = await ctx.service.changeApplyList.getList(ctx.change.id);
|
|
// 获取附件列表
|
|
// 获取附件列表
|
|
const fileList = await ctx.service.changeApplyAtt.getAllChangeApplyAtt(ctx.tender.id, ctx.change.id);
|
|
const fileList = await ctx.service.changeApplyAtt.getAllChangeApplyAtt(ctx.tender.id, ctx.change.id);
|
|
|
|
+ const changeClass = await this._getOrUpdateClass(ctx, 'changeApply');
|
|
const renderData = {
|
|
const renderData = {
|
|
tender,
|
|
tender,
|
|
change: ctx.change,
|
|
change: ctx.change,
|
|
listRule: tender.c_apply_list_rule ? JSON.parse(tender.c_apply_list_rule) : { source: 1, rule: ['unit', 'unit_price'] },
|
|
listRule: tender.c_apply_list_rule ? JSON.parse(tender.c_apply_list_rule) : { source: 1, rule: ['unit', 'unit_price'] },
|
|
changeList,
|
|
changeList,
|
|
changeConst,
|
|
changeConst,
|
|
|
|
+ changeClass,
|
|
auditConst: audit.changeApply,
|
|
auditConst: audit.changeApply,
|
|
fileList,
|
|
fileList,
|
|
whiteList,
|
|
whiteList,
|
|
@@ -3294,11 +3339,13 @@ module.exports = app => {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+ const changeClass = await this._getOrUpdateClass(ctx, 'changePlan');
|
|
const renderData = {
|
|
const renderData = {
|
|
tender,
|
|
tender,
|
|
change: ctx.change,
|
|
change: ctx.change,
|
|
listRule: tender.c_plan_list_rule ? JSON.parse(tender.c_plan_list_rule) : { source: 1, rule: ['unit', 'unit_price'] },
|
|
listRule: tender.c_plan_list_rule ? JSON.parse(tender.c_plan_list_rule) : { source: 1, rule: ['unit', 'unit_price'] },
|
|
changeList,
|
|
changeList,
|
|
|
|
+ changeClass,
|
|
changeConst,
|
|
changeConst,
|
|
auditConst: audit.changePlan,
|
|
auditConst: audit.changePlan,
|
|
fileList,
|
|
fileList,
|