[update] 联调企标计划立项/变更流程
This commit is contained in:
@@ -71,7 +71,7 @@ export default {
|
||||
},
|
||||
{ // 企标复审流程
|
||||
title: this.$t('workCenter.newProcess.processOfEnterpriseBidReview'),
|
||||
path: ''
|
||||
path: '/workCenter/enterpriseStandardRecheck/enterpriseStandardRecheckFlow'
|
||||
},
|
||||
{ // 企标废止流程
|
||||
title: this.$t('workCenter.newProcess.processOfEnterpriseBidAnnulment'),
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
@change="event => event.target.value = event.target.value.trim()"
|
||||
:disabled="disabled || processNameDisabled"
|
||||
:maxLength="50"
|
||||
v-decorator="['processName', validatorRules.processName]" />
|
||||
v-decorator="['prcName', validatorRules.prcName]" />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="12">
|
||||
@@ -34,7 +34,7 @@
|
||||
style="width: 100%"
|
||||
:disabled="disabled"
|
||||
value-format="YYYY-MM-DD"
|
||||
v-decorator="['deadlineDate']" />
|
||||
v-decorator="['dueTime']" />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
@@ -44,7 +44,7 @@
|
||||
:maxLength="500"
|
||||
:rows="4"
|
||||
:disabled="disabled"
|
||||
v-decorator="['processDescription']" />
|
||||
v-decorator="['prcMes']" />
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</a-row>
|
||||
@@ -192,11 +192,11 @@
|
||||
<a-textarea :placeholder="$t('pleaseEnter') + $t('remarks')"
|
||||
:maxLength="500"
|
||||
:rows="4"
|
||||
v-decorator="['remarks', validatorRules.remarks]" />
|
||||
v-decorator="['commitText', validatorRules.commitText]" />
|
||||
</a-form-item>
|
||||
<!--附件-->
|
||||
<a-form-item :labelCol="longLabelCol" :wrapperCol="longWrapperCol" :label="$t('businessSupport.questionAnswer.attach')">
|
||||
<j-upload v-decorator="['attachment']" return-id />
|
||||
<j-upload v-decorator="['commitFile']" return-id />
|
||||
</a-form-item>
|
||||
</a-form>
|
||||
</div>
|
||||
@@ -469,11 +469,11 @@ export default {
|
||||
}
|
||||
},
|
||||
mounted () {
|
||||
console.log(this.$route.query.processId)
|
||||
if (this.$route.query.processId) {
|
||||
console.log(this.$route.query.taskId)
|
||||
if (this.$route.query.taskId) {
|
||||
this.currentNode = 2 // todo: 先设置一个假数据,后端还不能返回当前节点
|
||||
// 有流程id说明是从流程中心来的,需要初始化数据
|
||||
this.getProcessData(this.$route.query.processId)
|
||||
this.getProcessData(this.$route.query.taskId)
|
||||
}
|
||||
if (this.currentNode === 1) {
|
||||
this.personnelInfoData = approvalPersonalInfo
|
||||
@@ -519,13 +519,13 @@ export default {
|
||||
},
|
||||
validatorRules: {
|
||||
// 流程名称
|
||||
processName: {
|
||||
prcName: {
|
||||
rules: [
|
||||
{ required: true, message: this.$t('pleaseEnter') + this.$t('processName') }
|
||||
],
|
||||
validateTrigger: 'blur'
|
||||
},
|
||||
remarks: {
|
||||
commitText: {
|
||||
rules: [
|
||||
{ required: false, message: this.$t('pleaseEnter') + this.$t('remarks') }
|
||||
],
|
||||
@@ -575,15 +575,15 @@ export default {
|
||||
},
|
||||
methods: {
|
||||
// 根据流程id获取数据并回显
|
||||
getProcessData (processId) {
|
||||
getProcessDataById({ processInstanceId: processId }).then(res => {
|
||||
getProcessData (taskId) {
|
||||
getProcessDataById({ taskId: taskId }).then(res => {
|
||||
if (res.success) {
|
||||
this.model = res.result
|
||||
this.$nextTick(() => {
|
||||
// 初始化流程信息
|
||||
this.processInfoForm.setFieldsValue(pick(this.model[0], 'processName', 'deadlineDate', 'processDescription'))
|
||||
this.processInfoForm.setFieldsValue(pick(this.model[0], 'prcName', 'dueTime', 'prcMes'))
|
||||
// 初始化流程审批信息,todo:需要判断是不是草稿进来的,草稿进来的才回显审批信息
|
||||
// this.approvalInfoForm.setFieldsValue(pick(this.model[0], 'remarks', 'attachment'))
|
||||
// this.approvalInfoForm.setFieldsValue(pick(this.model[0], 'commitText', 'commitFile'))
|
||||
})
|
||||
// 初始化业务基本信息的申请类型和项目类别
|
||||
this.formInline.applicationCategory = this.model[0].applicationCategory
|
||||
@@ -649,12 +649,12 @@ export default {
|
||||
},
|
||||
// 业务基本信息组件中获取到流程名称改变后的值
|
||||
processNameChange (value) {
|
||||
const param = { processName: value }
|
||||
const param = { prcName: value }
|
||||
this.$nextTick(() => {
|
||||
this.processInfoForm.setFieldsValue(pick(param, 'processName'))
|
||||
this.processInfoForm.setFieldsValue(pick(param, 'prcName'))
|
||||
})
|
||||
},
|
||||
// 保存(业务基本信息那里是表格的就传给后端数组里多条数据,是表单的就在数组里放一条数据)
|
||||
// 保存
|
||||
handleSave () {
|
||||
// 有任意一项填了即可
|
||||
// 流程信息表单
|
||||
@@ -673,16 +673,16 @@ export default {
|
||||
personnelObj[item.fieldName] = item.user
|
||||
}
|
||||
}
|
||||
// 需要传给后端的数组
|
||||
// 业务基础信息组件中的数据
|
||||
let arr = []
|
||||
// 业务基本信息-立项表单
|
||||
let approvalBaseInfo = {}
|
||||
if (this.$refs.approvalBaseInfo) {
|
||||
approvalBaseInfo = this.$refs.approvalBaseInfo.formInline
|
||||
const approvalBaseInfo = this.$refs.approvalBaseInfo.formInline
|
||||
// 企标体系处理成逗号分隔
|
||||
if (approvalBaseInfo.enStandardSystem && approvalBaseInfo.enStandardSystem.length > 0) {
|
||||
approvalBaseInfo.enStandardSystem = approvalBaseInfo.enStandardSystem.map(item => item.value).join(',')
|
||||
}
|
||||
// 校验至少填了一项
|
||||
const param = { ...processInfoForm, ...ruleForm, ...approvalBaseInfo, ...approvalInfoForm, ...personnelObj, ...userInfoForm }
|
||||
const flag = Object.values(param).some(v => !!v || v === 0)
|
||||
if (!flag) {
|
||||
@@ -690,7 +690,7 @@ export default {
|
||||
this.$message.warning(this.$t('pleaseFillInAtLeastOneItem'))
|
||||
return
|
||||
}
|
||||
arr.push(param)
|
||||
arr.push({ ...ruleForm, ...approvalBaseInfo })
|
||||
} else if (this.formInline.projectType === ProjectType.COMPLETE_TIME_CHANGE.value) {
|
||||
// 业务基本信息-变更-完成时间变更
|
||||
const param = { ...processInfoForm, ...ruleForm, ...approvalInfoForm, ...personnelObj, ...userInfoForm }
|
||||
@@ -700,7 +700,7 @@ export default {
|
||||
this.$message.warning(this.$t('pleaseFillInAtLeastOneItem'))
|
||||
return
|
||||
}
|
||||
arr = this.$refs.changeBaseInfo.dataSource.map(item => { return { ...item, ...param } })
|
||||
arr = this.$refs.changeBaseInfo.dataSource.map(item => { return { ...item, ...ruleForm } })
|
||||
} else if (this.formInline.projectType === ProjectType.WORK_TERMINATE.value) {
|
||||
// 业务基本信息-变更-工作终止
|
||||
const param = { ...processInfoForm, ...ruleForm, ...approvalInfoForm, ...personnelObj, ...userInfoForm }
|
||||
@@ -710,13 +710,10 @@ export default {
|
||||
this.$message.warning(this.$t('pleaseFillInAtLeastOneItem'))
|
||||
return
|
||||
}
|
||||
arr = this.$refs.changeBaseInfo.dataSource.map(item => { return { ...item, ...param } })
|
||||
arr = this.$refs.changeBaseInfo.dataSource.map(item => { return { ...item, ...ruleForm } })
|
||||
} else if (this.formInline.projectType === ProjectType.RESPONSIBLE_DEPT_CHANGE.value) {
|
||||
// 业务基本信息-变更-责任部门变更
|
||||
let dutyDepartChangeForm = {}
|
||||
if (this.$refs.changeBaseInfo) {
|
||||
dutyDepartChangeForm = this.$refs.changeBaseInfo.formInline
|
||||
}
|
||||
const dutyDepartChangeForm = this.$refs.changeBaseInfo.formInline
|
||||
const param = { ...processInfoForm, ...ruleForm, ...dutyDepartChangeForm, ...approvalInfoForm, ...personnelObj, ...userInfoForm }
|
||||
const flag = Object.values(param).some(v => !!v || v === 0)
|
||||
if (!flag) {
|
||||
@@ -724,13 +721,10 @@ export default {
|
||||
this.$message.warning(this.$t('pleaseFillInAtLeastOneItem'))
|
||||
return
|
||||
}
|
||||
arr.push(param)
|
||||
arr.push({ ...ruleForm, ...dutyDepartChangeForm })
|
||||
} else if (this.formInline.projectType === ProjectType.MERGE.value) {
|
||||
// 业务基本信息-变更-合并
|
||||
let mergeForm = {}
|
||||
if (this.$refs.changeBaseInfo) {
|
||||
mergeForm = this.$refs.changeBaseInfo.formInline
|
||||
}
|
||||
const mergeForm = this.$refs.changeBaseInfo.formInline
|
||||
const param = { ...processInfoForm, ...ruleForm, ...mergeForm, ...approvalInfoForm, ...personnelObj, ...userInfoForm }
|
||||
const flag = Object.values(param).some(v => !!v || v === 0)
|
||||
if (!flag) {
|
||||
@@ -738,10 +732,10 @@ export default {
|
||||
this.$message.warning(this.$t('pleaseFillInAtLeastOneItem'))
|
||||
return
|
||||
}
|
||||
arr.push(param)
|
||||
arr.push({ ...ruleForm, ...mergeForm })
|
||||
} else {
|
||||
// 还没有选择申请类型和项目类别,需要外层信息至少填了一项
|
||||
const param = { ...processInfoForm, ...ruleForm, ...approvalBaseInfo, ...approvalInfoForm, ...personnelObj, ...userInfoForm }
|
||||
const param = { ...processInfoForm, ...ruleForm, ...approvalInfoForm, ...personnelObj, ...userInfoForm }
|
||||
const flag = Object.values(param).some(v => !!v || v === 0)
|
||||
if (!flag) {
|
||||
// 提示至少填写一项
|
||||
@@ -750,8 +744,12 @@ export default {
|
||||
}
|
||||
}
|
||||
this.loading = true
|
||||
const param = {} // 传给后端的参数
|
||||
param.commonVO = { ...processInfoForm, ...approvalInfoForm } // 流程信息和流程审批信息
|
||||
param.dataList = arr // 业务基础信息数组
|
||||
param.flowUserInfoVO = personnelObj // 人员信息
|
||||
// 保存到草稿
|
||||
enterprisePlanApprovalSave(arr).then(res => {
|
||||
enterprisePlanApprovalSave(param).then(res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message)
|
||||
} else {
|
||||
@@ -761,7 +759,7 @@ export default {
|
||||
this.loading = false
|
||||
})
|
||||
},
|
||||
// 节点一时候的提交,发起立项变更申请(业务基本信息那里是表格的就传给后端数组里多条数据,是表单的就在数组里放一条数据)
|
||||
// 节点一时候的提交,发起立项变更申请
|
||||
handleStart () {
|
||||
if (this.loading) return
|
||||
// 人员信息的数据, 处理成对象
|
||||
@@ -780,7 +778,7 @@ export default {
|
||||
this.processInfoForm.validateFields((err, values) => {
|
||||
this.$refs.ruleForm.validate(valid => {
|
||||
this.approvalInfoForm.validateFields((approvalErr, approvalValues) => {
|
||||
let arr = [] // 需要传给后端的数据
|
||||
let arr = [] // 业务基本信息部分的数据封装
|
||||
let haveErr = true // 是否有错误,有错,则不能提交,false没有错
|
||||
// 立项和变更的数据不一样,分开判断
|
||||
if (this.formInline.applicationCategory === ApplicationCategory.INITIATION.value) {
|
||||
@@ -788,7 +786,7 @@ export default {
|
||||
this.$refs.approvalBaseInfo.$refs.ruleForm.validate(approvalBaseValid => {
|
||||
if (valid && approvalBaseValid && !err && !approvalErr) {
|
||||
this.loading = true
|
||||
const param = Object.assign({}, values, this.formInline, approvalValues, this.$refs.approvalBaseInfo.formInline, personnelObj)
|
||||
const param = Object.assign({}, this.formInline, this.$refs.approvalBaseInfo.formInline)
|
||||
// 企标体系处理成逗号分隔
|
||||
param.enStandardSystem = param.enStandardSystem.map(item => item.value).join(',')
|
||||
arr.push(param)
|
||||
@@ -802,9 +800,10 @@ export default {
|
||||
// 是变更-完成时间 或者 变更-工作终止变更
|
||||
if (valid && !err && !approvalErr && this.$refs.changeBaseInfo && this.$refs.changeBaseInfo.dataSource.length > 0) {
|
||||
this.loading = true
|
||||
const param = { ...values, ...this.formInline, ...approvalValues, ...personnelObj }
|
||||
arr = this.$refs.changeBaseInfo.dataSource.map(item => { return { ...item, ...param } })
|
||||
arr = this.$refs.changeBaseInfo.dataSource.map(item => { return { ...item, ...this.formInline } })
|
||||
haveErr = false
|
||||
} else if (valid && !err && !approvalErr && this.$refs.changeBaseInfo) {
|
||||
haveErr = true
|
||||
} else {
|
||||
haveErr = true
|
||||
if (this.$refs.changeBaseInfo.dataSource.length <= 0) {
|
||||
@@ -816,7 +815,7 @@ export default {
|
||||
this.$refs.changeBaseInfo.$refs.ruleForm.validate(changeBaseValid => {
|
||||
if (valid && changeBaseValid && !err && !approvalErr) {
|
||||
this.loading = true
|
||||
const param = Object.assign({}, values, this.formInline, approvalValues, this.$refs.changeBaseInfo.formInline, personnelObj)
|
||||
const param = Object.assign({}, this.formInline, this.$refs.changeBaseInfo.formInline)
|
||||
arr.push(param)
|
||||
haveErr = false
|
||||
} else {
|
||||
@@ -834,7 +833,7 @@ export default {
|
||||
return
|
||||
}
|
||||
this.loading = true
|
||||
const param = Object.assign({}, values, this.formInline, approvalValues, this.$refs.changeBaseInfo.formInline, personnelObj)
|
||||
const param = Object.assign({}, this.formInline, this.$refs.changeBaseInfo.formInline)
|
||||
// 企标体系处理成逗号分隔
|
||||
param.enStandardSystem = param.enStandardSystem.map(item => item.value).join(',')
|
||||
arr.push(param)
|
||||
@@ -856,7 +855,11 @@ export default {
|
||||
if (haveErr) {
|
||||
return
|
||||
}
|
||||
enterprisePlanApproval(arr).then(res => {
|
||||
const param = {} // 需要传给后端的数据
|
||||
param.commonVO = { ...values, ...approvalValues } // 流程信息和流程审批信息
|
||||
param.dataList = arr
|
||||
param.flowUserInfoVO = personnelObj
|
||||
enterprisePlanApproval(param).then(res => {
|
||||
if (res.success) {
|
||||
this.$message.success(res.message)
|
||||
} else {
|
||||
@@ -941,8 +944,8 @@ export default {
|
||||
// 驳回
|
||||
handleReject () {
|
||||
if (this.loading) return
|
||||
this.validatorRules.remarks.rules[0].required = true
|
||||
if (!this.approvalInfoForm.getFieldValue('remarks')) {
|
||||
this.validatorRules.commitText.rules[0].required = true
|
||||
if (!this.approvalInfoForm.getFieldValue('commitText')) {
|
||||
this.$message.warning(this.$t('pleaseEnterRemarks'))
|
||||
}
|
||||
this.$nextTick(() => {
|
||||
@@ -959,7 +962,7 @@ export default {
|
||||
}
|
||||
}).finally(() => {
|
||||
this.loading = false
|
||||
this.validatorRules.remarks.rules[0].required = false
|
||||
this.validatorRules.commitText.rules[0].required = false
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
@@ -88,35 +88,35 @@ export default {
|
||||
title: this.$t('workCenter.processCenter.processNumber'),
|
||||
align: 'center',
|
||||
width: 180,
|
||||
dataIndex: 'processNumber',
|
||||
dataIndex: 'prcNum',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
{ // 流程类型
|
||||
title: this.$t('workCenter.processCenter.processType'),
|
||||
align: 'center',
|
||||
width: 180,
|
||||
dataIndex: 'processType_dictText',
|
||||
dataIndex: 'prcType_dictText',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
{ // 流程名称
|
||||
title: this.$t('processName'),
|
||||
align: 'center',
|
||||
width: 180,
|
||||
dataIndex: 'processName',
|
||||
dataIndex: 'prcName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
{ // 发起人
|
||||
title: this.$t('workCenter.processCenter.initiator'),
|
||||
align: 'center',
|
||||
width: 180,
|
||||
dataIndex: 'initiator',
|
||||
dataIndex: 'createUserName',
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
{ // 接收任务时间
|
||||
title: this.$t('workCenter.processCenter.receivingTaskTime'),
|
||||
align: 'center',
|
||||
width: 180,
|
||||
dataIndex: 'receivingTaskTime',
|
||||
dataIndex: 'receivedTaskTime',
|
||||
sort: true,
|
||||
scopedSlots: { customRender: 'text' }
|
||||
},
|
||||
@@ -148,8 +148,8 @@ export default {
|
||||
path: path,
|
||||
query: {
|
||||
currentNode: record.currentNode,
|
||||
processId: record.prcId, // 流程id
|
||||
taskId: record.taskId
|
||||
processId: record.id, // 流程id
|
||||
taskId: record.taskId // 任务id
|
||||
}
|
||||
})
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user