[update] 已封存企标启用流程的查看详情

This commit is contained in:
lideqin
2024-07-22 16:13:57 +08:00
parent 31b25424af
commit f65e2e303e
8 changed files with 230 additions and 17 deletions
@@ -1,7 +1,7 @@
<template>
<internal-detail-page :title="pageTitle" :content-padding="0" :loading="loading">
<!-- 标题右侧tab -->
<template v-slot:titleRightCustom>
<template v-slot:titleRightCustom v-if="!isLook">
<div class="table-operator-tab">
<a class="switch-item" :class="switchValue === 'base' ? 'table-operator-tab-active' : ''"
@click="switchChange('base')">{{ $t('basicInformation') }}
@@ -31,7 +31,7 @@
<a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" :label="$t('expirationDate')" :colon="formItemColon">
<a-date-picker :placeholder="$t('pleaseSelect') + $t('expirationDate')"
style="width: 100%"
:disabled="disabled"
:disabled="disabled || isLook"
value-format="YYYY-MM-DD"
v-decorator="['dueTime']" />
</a-form-item>
@@ -42,7 +42,7 @@
<a-textarea :placeholder="$t('pleaseEnter') + $t('processExplain')"
:maxLength="500"
:rows="4"
:disabled="disabled"
:disabled="disabled || isLook"
v-decorator="['prcMes']" />
</a-form-item>
</a-col>
@@ -52,7 +52,7 @@
<!-- 业务基本信息 -->
<div class="process-part-title">{{ $t('basicServiceInformation') }}</div>
<!-- 节点1发起人发起 -->
<base-info-form v-if="currentNode === 1" ref="baseInfoRef" @processNameChange="processNameChange"></base-info-form>
<base-info-form v-if="currentNode === 1" ref="baseInfoRef" :disabled="isLook" @processNameChange="processNameChange"></base-info-form>
<!-- 节点2相关人员会签 -->
<!-- 节点3起草人和会签人主管级领导审批 -->
<!-- 节点4标准化审批 -->
@@ -66,11 +66,12 @@
<a-textarea :placeholder="$t('pleaseEnter') + $t('remarks')"
:maxLength="500"
:rows="4"
:disabled="isLook"
v-decorator="['commitText', validatorRules.commitText]" />
</a-form-item>
<!--附件-->
<a-form-item :labelCol="longLabelCol" :wrapperCol="longWrapperCol" :label="$t('attach')" :colon="formItemColon">
<j-upload v-decorator="['commitFile']" return-id multiple />
<j-upload v-decorator="['commitFile']" return-id multiple :disabled="isLook" />
</a-form-item>
</a-form>
</div>
@@ -81,7 +82,7 @@
</process-detail-list>
</div>
<!-- 操作按钮 -->
<div class="detail-page-bottom-operate-box">
<div v-if="!isLook" class="detail-page-bottom-operate-box">
<!-- 发起节点 -->
<template v-if="currentNode === 1">
<!-- 保存 -->
@@ -119,11 +120,13 @@ import {
enStandardStartUseApproval,
enStandardStartUseTurnTo,
enStandardStartUseAgree,
enStandardStartUseReject
enStandardStartUseReject,
getLookData
} from '@/api/workCenter'
import BaseInfoForm from './modules/BaseInfoForm'
import { WorkCenterMixin } from '@/mixins/WorkCenterMixin'
import { ProcessKey, EsStartUseNodes } from '@/enums/commonEnums'
import { saveSnapShot } from '../../../api/workCenter'
export default {
name: 'EnterpriseStandardStartUseFlow',
@@ -183,6 +186,14 @@ export default {
// 有草稿id,说明是从流程中心-草稿来的,需要初始化数据
this.getProcessData('draft', { draftId: this.$route.query.draftId, projectId: this.$route.query.projectId })
}
if (this.$route.query.isLook + '' === '1') {
// 是查看
this.isLook = true
// 人员信息全部不可选
this.initPersonInfoData(false)
// 查询数据
this.getProcessData('look', { snapshotId: this.$route.query.snapshotId })
}
if (this.$route.query.taskName) {
// 说明是已发起流程
this.currentNodeName = this.$route.query.taskName
@@ -238,7 +249,8 @@ export default {
url: {
list: '' // 人员信息的右侧表格获取接口
},
onlySelectFromFlowStation: [EsStartUseNodes.standardizationApproval.value] // 只能在标准与流程所里选人的节点
onlySelectFromFlowStation: [EsStartUseNodes.standardizationApproval.value], // 只能在标准与流程所里选人的节点
isLook: false
}
},
methods: {
@@ -250,6 +262,9 @@ export default {
if (type === 'todo') {
func = enStandardStartUseGetDataById
params = param.taskId
} else if (type === 'look') {
func = getLookData
params = param
} else {
func = enStandardStartUseGetDataDraft
params = param
@@ -360,6 +375,48 @@ export default {
}
})
},
// 获取快照json
getParamJsonStr () {
// 流程信息表单
const processInfoForm = this.processInfoForm.getFieldsValue()
// 流程审批信息
const approvalInfoForm = this.approvalInfoForm.getFieldsValue()
// 人员信息的数据, 处理成对象
const personnelObj = this.$refs.personnelInfo.getDataObj()
// 业务基本信息
const baseInfo = this.$refs.baseInfoRef.getData()
const infoJsonStr = JSON.stringify({
basicProcessInfoDTO: processInfoForm,
basicTaskInfoDTO: approvalInfoForm,
data: baseInfo.formInline,
personnelObj: personnelObj
})
return infoJsonStr
},
// 保存快照
saveParamJsonStr () {
// 流程信息表单
const processInfoForm = this.processInfoForm.getFieldsValue()
// 流程审批信息
const approvalInfoForm = this.approvalInfoForm.getFieldsValue()
// 人员信息的数据, 处理成对象
const personnelObj = this.$refs.personnelInfo.getDataObj()
// 业务基本信息
const baseInfo = this.$refs.baseInfoRef.getData()
const params = {}
params.infoJsonStr = JSON.stringify({
basicProcessInfoDTO: processInfoForm,
basicTaskInfoDTO: approvalInfoForm,
data: baseInfo.formInline,
personnelObj: personnelObj
})
params.taskId = this.$route.query.taskId
saveSnapShot(params).then(res => {
if (!res.success) {
console.log(res.message)
}
})
},
// 节点一时候的提交
handleStart () {
if (this.loading) return
@@ -384,6 +441,8 @@ export default {
}
paramObj.flowUser = personnelObj
paramObj.data = data.formInline
// 快照JSON
paramObj.common.infoJsonStr = this.getParamJsonStr()
let func
if (this.$route.query.taskId) {
// 有taskId说明是驳回的提交
@@ -446,9 +505,11 @@ export default {
const param = {}
param.common = Object.assign({}, values)
param.common.taskId = this.$route.query.taskId
enStandardStartUseAgree(param).then(res => {
enStandardStartUseAgree(param).then(async res => {
if (res.success) {
this.$message.success(res.message)
// 保存快照
await this.saveParamJsonStr()
this.goBack()
} else {
this.$message.warning(res.message)
@@ -473,9 +534,11 @@ export default {
const param = {}
param.common = Object.assign({}, values)
param.common.taskId = this.$route.query.taskId
enStandardStartUseReject(param).then(res => {
enStandardStartUseReject(param).then(async res => {
if (res.success) {
this.$message.success(res.message)
// 保存快照
await this.saveParamJsonStr()
this.goBack()
} else {
this.$message.warning(res.message)
@@ -1,6 +1,6 @@
<template>
<internal-detail-page :title="pageTitle" :content-padding="0" :loading="loading">
<process-detail-list :processKey="processKey" show-urge-button>
<process-detail-list :processKey="processKey" show-urge-button nodeNameClick :detailFrom="$route.query.detailFrom">
<personnel-info slot="personnelInfo" ref="personnelInfo" :data="personnelInfoData"></personnel-info>
</process-detail-list>
</internal-detail-page>
@@ -76,7 +76,7 @@
<script>
import JTable from '@/components/jero/JTable'
import { JeroListMixin } from '@/mixins/JeroListMixin'
import { ProcessType, ProcessKey } from '../../../../enums/commonEnums'
import { ProcessType, ProcessKey, Process } from '../../../../enums/commonEnums'
import { getAction } from '../../../../api/manage'
export default {
@@ -309,7 +309,8 @@ export default {
query: {
processKey: processKey,
processDefinitionId: record.processDefinitionId,
processInstanceId: record.processInstanceId
processInstanceId: record.processInstanceId,
detailFrom: Process.DONE.value
}
})
}
@@ -82,7 +82,7 @@
import JTable from '@/components/jero/JTable'
import { JeroListMixin } from '@/mixins/JeroListMixin'
import { compulsoryWithdrawal } from '@/api/workCenter'
import { ProcessType, ProcessKey } from '@/enums/commonEnums'
import { ProcessType, ProcessKey, Process } from '@/enums/commonEnums'
import { mapGetters } from 'vuex'
export default {
@@ -291,7 +291,8 @@ export default {
processInstanceId: record.processInstanceId,
// 流程监控并且是已撤回,详情不查进行中的
source: 'monitorList',
prcStatus: record.prcStatus
prcStatus: record.prcStatus,
detailFrom: Process.MONITOR.value
}
})
},
@@ -90,7 +90,7 @@
import JTable from '@/components/jero/JTable'
import { JeroListMixin } from '@/mixins/JeroListMixin'
import { compulsoryWithdrawal } from '@/api/workCenter'
import { ProcessType, ProcessKey } from '@/enums/commonEnums'
import { ProcessType, ProcessKey, Process } from '@/enums/commonEnums'
export default {
name: 'SentList',
@@ -289,7 +289,8 @@ export default {
query: {
processKey: processKey,
processDefinitionId: record.processDefinitionId,
processInstanceId: record.processInstanceId
processInstanceId: record.processInstanceId,
detailFrom: Process.SENT.value
}
})
},