379422ca by lihua

质量评估,价值评估支持不走流程配置

1 parent 8b2d5d18
...@@ -78,3 +78,9 @@ export const crossPlatformApprove = (params) => request({ ...@@ -78,3 +78,9 @@ export const crossPlatformApprove = (params) => request({
78 method: 'post', 78 method: 'post',
79 data: {} 79 data: {}
80 }) 80 })
81
82 /** 功能流程配置-获取是否需要审批 */
83 export const isNeedApprove = (params) => request({
84 url: `${import.meta.env.VITE_APP_WORK_FLOW_URL}/func-flow-config/is-need-approve?funcCode=${params.funcCode}`,
85 method: 'get',
86 })
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -1452,8 +1452,8 @@ const panelChange = (scope, row) => { ...@@ -1452,8 +1452,8 @@ const panelChange = (scope, row) => {
1452 :disabled="item.disabled || readonly" @change="(val) => cascaderChange(val, item)" /> 1452 :disabled="item.disabled || readonly" @change="(val) => cascaderChange(val, item)" />
1453 <template v-else-if="item.type && item.type.indexOf('date') > -1"> 1453 <template v-else-if="item.type && item.type.indexOf('date') > -1">
1454 <el-date-picker :class="[item.col, { is_block: item.block }]" v-if="item.type == 'date-picker'" 1454 <el-date-picker :class="[item.col, { is_block: item.block }]" v-if="item.type == 'date-picker'"
1455 v-model="formInline[item.field]" type="daterange" range-separator="至" start-placeholder="开始日期" :format="item.format ?? ''" 1455 v-model="formInline[item.field]" type="daterange" range-separator="至" start-placeholder="开始日期" :format="item.format ?? null"
1456 :value-format="item.valueFormat ?? ''" 1456 :value-format="item.valueFormat ?? null"
1457 end-placeholder="结束日期" :unlink-panels="item.unlink ?? false" :shortcuts="item.shortcuts ?? []" 1457 end-placeholder="结束日期" :unlink-panels="item.unlink ?? false" :shortcuts="item.shortcuts ?? []"
1458 :default-value="item.defaultDate" :disabled="item.disabled ?? false" /> 1458 :default-value="item.defaultDate" :disabled="item.disabled ?? false" />
1459 <el-date-picker :class="[item.col, { is_block: item.block }]" v-else-if="item.type == 'date-year'" 1459 <el-date-picker :class="[item.col, { is_block: item.block }]" v-else-if="item.type == 'date-year'"
......
...@@ -292,7 +292,7 @@ onMounted(() => { ...@@ -292,7 +292,7 @@ onMounted(() => {
292 <span v-else>{{ '--' }}</span> 292 <span v-else>{{ '--' }}</span>
293 </template> 293 </template>
294 <template #default="scope" v-else-if="item.type == 'approveTagBtn'"> 294 <template #default="scope" v-else-if="item.type == 'approveTagBtn'">
295 <div v-if="scope.row[item.field] !== undefined" style="position: relative;"> 295 <div v-if="item.enableNoApprove == true ? (scope.row.isApprove != 'N' && scope.row[item.field] !== undefined) : (scope.row[item.field] !== undefined)" style="position: relative;">
296 <el-tag :type="tagType(scope.row, item.field)">{{ 296 <el-tag :type="tagType(scope.row, item.field)">{{
297 tagMethod(scope.row, item.field) 297 tagMethod(scope.row, item.field)
298 }}</el-tag> 298 }}</el-tag>
......
...@@ -15,13 +15,14 @@ import { ...@@ -15,13 +15,14 @@ import {
15 qualityAllow, 15 qualityAllow,
16 deleteQuality, 16 deleteQuality,
17 updatQuality, 17 updatQuality,
18 getTenantList
18 } from "@/api/modules/dataAsset"; 19 } from "@/api/modules/dataAsset";
19 import useUserStore from "@/store/modules/user"; 20 import useUserStore from "@/store/modules/user";
20 import useDataAssetStore from "@/store/modules/dataAsset"; 21 import useDataAssetStore from "@/store/modules/dataAsset";
21 import { 22 import {
22 getStaffDetailInfo 23 getStaffDetailInfo
23 } from "@/api/modules/queryService"; 24 } from "@/api/modules/queryService";
24 import { rejectFlowData, revokeFlowData, getCamundaDeploymentId, getProcessNodesPromise, isMyFirstNode, passFlowData } from "@/api/modules/workFlowService"; 25 import { isNeedApprove, rejectFlowData, revokeFlowData, getCamundaDeploymentId, getProcessNodesPromise, isMyFirstNode, passFlowData } from "@/api/modules/workFlowService";
25 26
26 const assetStore = useDataAssetStore(); 27 const assetStore = useDataAssetStore();
27 28
...@@ -51,9 +52,9 @@ const tableFields = ref([ ...@@ -51,9 +52,9 @@ const tableFields = ref([
51 { label: "登记时间", field: "registerTime", width: 120 }, 52 { label: "登记时间", field: "registerTime", width: 120 },
52 // { label: "企业名称", field: "tenantName", width: 240, align: "left" }, 53 // { label: "企业名称", field: "tenantName", width: 240, align: "left" },
53 { label: "评估机构", field: "evaluationAgencyName", width: 250, align: "left" }, 54 { label: "评估机构", field: "evaluationAgencyName", width: 250, align: "left" },
54 { label: "审批状态", field: "approveVO", type: "approveTag", width: 96, align: 'center' }, 55 { label: "审批状态", field: "approveVO", type: "approveTag", enableNoApprove: true, width: 96, align: 'center' },
55 { 56 {
56 label: "主平台审批状态", field: "crossPlatformApproveState", type: "approveTagBtn", width: 150, align: 'center', btn: { 57 label: "主平台审批状态", field: "crossPlatformApproveState", enableNoApprove: true, type: "approveTagBtn", width: 150, align: 'center', btn: {
57 label: '查看', visible: (scope) => { 58 label: '查看', visible: (scope) => {
58 return scope.row.crossPlatformApproveState != null; 59 return scope.row.crossPlatformApproveState != null;
59 }, click: (scope) => { 60 }, click: (scope) => {
...@@ -66,7 +67,21 @@ const tableFields = ref([ ...@@ -66,7 +67,21 @@ const tableFields = ref([
66 67
67 const deploymentId = ref(''); 68 const deploymentId = ref('');
68 69
69 onMounted(() => { 70 const tenantList: any = ref([]);
71
72 onBeforeMount(() => {
73 getTenantList({
74 bizState: 'Y',
75 pageSize: -1
76 }).then((res: any) => {
77 tenantList.value = [];
78 if (res.code == proxy.$passCode) {
79 tenantList.value = res.data?.records || [];
80 formItems.value[1].options = tenantList.value;
81 } else {
82 proxy.$ElMessage.error(res.msg);
83 }
84 })
70 }); 85 });
71 86
72 onActivated(() => { 87 onActivated(() => {
...@@ -144,17 +159,31 @@ const getTableData = () => { ...@@ -144,17 +159,31 @@ const getTableData = () => {
144 }) 159 })
145 } 160 }
146 161
162 let needApprovePromise = ref();
163
164 const needApprove = ref(true);
165
147 const handleCreate = () => { 166 const handleCreate = () => {
148 if (!assetListData.value.length) { 167 if (!assetListData.value.length) {
149 ElMessage.warning('当前没有可发起质量评价的资产!'); 168 ElMessage.warning('当前没有可发起质量评价的资产!');
150 return; 169 return;
151 } 170 }
171 if (needApprovePromise.value) {
172 return;
173 }
174 needApprovePromise.value = isNeedApprove({ funcCode: 'ZCZLPJ' }).then((res1: any) => {
175 needApprovePromise.value = null;
176 if (res1.code == proxy.$passCode) {
177 needApprove.value = res1.data;
152 formItems.value[0].visible = true; 178 formItems.value[0].visible = true;
153 formItems.value[0].default = ''; 179 formItems.value[0].default = '';
154 formItems.value[1].visible = true; 180 formItems.value[1].visible = !needApprove.value;
155 formItems.value[1].default = []; 181 formItems.value[1].default = '';
182 formItems.value[2].visible = true;
183 formItems.value[2].default = [];
156 dialogInfo.value.visible = true; 184 dialogInfo.value.visible = true;
157 dialogInfo.value.type = ''; 185 dialogInfo.value.type = '';
186 if (needApprove.value) {
158 getCamundaDeploymentId('10018', userData.tenantGuid, userData.staffGuid).then((res: any) => { 187 getCamundaDeploymentId('10018', userData.tenantGuid, userData.staffGuid).then((res: any) => {
159 if (res.code == proxy.$passCode) { 188 if (res.code == proxy.$passCode) {
160 deploymentId.value = res.data; 189 deploymentId.value = res.data;
...@@ -163,6 +192,11 @@ const handleCreate = () => { ...@@ -163,6 +192,11 @@ const handleCreate = () => {
163 proxy.$ElMessage.error(res.msg); 192 proxy.$ElMessage.error(res.msg);
164 } 193 }
165 }) 194 })
195 }
196 } else {
197 proxy.$ElMessage.error(res1.msg);
198 }
199 })
166 } 200 }
167 201
168 const page = ref({ 202 const page = ref({
...@@ -203,7 +237,13 @@ const tableInfo = ref({ ...@@ -203,7 +237,13 @@ const tableInfo = ref({
203 237
204 const getTableBtns = (row) => { 238 const getTableBtns = (row) => {
205 let btnsArr: any[] = []; 239 let btnsArr: any[] = [];
206 const approveVO = row.approveVO || {}; 240 const approveVO = row.approveVO;
241 if (!approveVO && row.isApprove == 'N') {
242 btnsArr.push({ label: "编辑", value: "redit" });
243 btnsArr.push({ label: "删除", value: "del" });
244 btnsArr.push({ label: "详情", value: "detail" });
245 return btnsArr;
246 }
207 const approveState = row.approveVO.approveState || null; 247 const approveState = row.approveVO.approveState || null;
208 const approveStaffGuids = approveVO.approveStaffGuids || []; 248 const approveStaffGuids = approveVO.approveStaffGuids || [];
209 const staffGuid = approveVO.staffGuid || ''; 249 const staffGuid = approveVO.staffGuid || '';
...@@ -254,11 +294,21 @@ const tableBtnClick = (scope, btn) => { ...@@ -254,11 +294,21 @@ const tableBtnClick = (scope, btn) => {
254 currTableData.value = row; 294 currTableData.value = row;
255 console.log(row, '-------'); 295 console.log(row, '-------');
256 if (type == "redit") { 296 if (type == "redit") {
297 isNeedApprove({ funcCode: 'ZCZLPJ' }).then((res1: any) => {
298 if (res1.code == proxy.$passCode) {
299 needApprove.value = res1.data;
300 formItems.value[0].visible = false;
301 formItems.value[0].default = row.damGuid;
302 formItems.value[1].visible = !needApprove.value;
303 formItems.value[1].default = row.evaluationAgencyGuid;
304 formItems.value[2].default = row.qualityEvaluationFile || [];
305 dialogInfo.value.contents[0].formInfo.items = formItems.value;
257 dialogInfo.value.visible = true; 306 dialogInfo.value.visible = true;
258 dialogInfo.value.type = 'reSubmit'; 307 dialogInfo.value.type = 'reSubmit';
259 formItems.value[0].visible = false; 308 } else {
260 formItems.value[0].default = row.registerGuid; 309 proxy.$ElMessage.error(res1.msg);
261 formItems.value[1].default = row.qualityEvaluationFile || []; 310 }
311 })
262 } else if (type == "del") { 312 } else if (type == "del") {
263 delTableOpen("此操作将永久删除该资产质量评价,是否继续?", "warning"); 313 delTableOpen("此操作将永久删除该资产质量评价,是否继续?", "warning");
264 } else if (type === 'reject') { 314 } else if (type === 'reject') {
...@@ -390,6 +440,20 @@ const formItems = ref([{ ...@@ -390,6 +440,20 @@ const formItems = ref([{
390 visible: true, 440 visible: true,
391 required: true 441 required: true
392 }, { 442 }, {
443 label: '评估机构',
444 type: 'select',
445 placeholder: '请选择',
446 field: 'evaluationAgencyGuid',
447 default: '',
448 block: true,
449 options: tenantList.value,
450 props: {
451 value: 'guid',
452 label: 'tenantName'
453 },
454 visible: false,
455 required: true
456 }, {
393 label: '附件上传', 457 label: '附件上传',
394 tip: '支持格式:xls .xlsx .doc .docx .rar .zip', 458 tip: '支持格式:xls .xlsx .doc .docx .rar .zip',
395 type: 'upload-file', 459 type: 'upload-file',
...@@ -456,6 +520,62 @@ const dialogInfo = ref({ ...@@ -456,6 +520,62 @@ const dialogInfo = ref({
456 /** 编辑质量评价发起资产申请按钮处理。 */ 520 /** 编辑质量评价发起资产申请按钮处理。 */
457 const dialogBtnClick = (btn, info) => { 521 const dialogBtnClick = (btn, info) => {
458 if (btn.value == 'submit') { 522 if (btn.value == 'submit') {
523 if (!needApprove.value) {
524 // 不需要走流程审批的提交
525 dialogInfo.value.footer.btns[1].loading = true;
526 if (dialogInfo.value.type == 'reSubmit') {
527 updatQuality({
528 guid: currTableData.value.guid,
529 tenantGuid: userData.tenantGuid,
530 damGuid: currTableData.value.damGuid,
531 daName: currTableData.value.daName,
532 immediateApprove: true,
533 evaluationAgencyGuid: info.evaluationAgencyGuid,
534 qualityEvaluationFile: info.qualityEvaluationFile?.map(file => {
535 return {
536 name: file.name,
537 url: file.url
538 }
539 }) || []
540 }).then((res: any) => {
541 dialogInfo.value.footer.btns[1].loading = false;
542 if (res?.code == proxy.$passCode) {
543 ElMessage.success('该资产质量评价重新提交成功');
544 dialogInfo.value.visible = false;
545 page.value.curr = 1;
546 getTableData();
547 } else {
548 ElMessage.error(res.msg);
549 }
550 })
551 } else {
552 let daInfo = assetListData.value.find(a => a.guid == info.damGuid);
553 saveQuality({
554 tenantGuid: userData.tenantGuid,
555 damGuid: info.damGuid,
556 daName: daInfo.damName,
557 immediateApprove: true,
558 evaluationAgencyGuid: info.evaluationAgencyGuid,
559 qualityEvaluationFile: info.qualityEvaluationFile?.map(file => {
560 return {
561 name: file.name,
562 url: file.url
563 }
564 }) || []
565 }).then((res: any) => {
566 dialogInfo.value.footer.btns[1].loading = false;
567 if (res?.code == proxy.$passCode) {
568 ElMessage.success('质量评价发起成功');
569 dialogInfo.value.visible = false;
570 page.value.curr = 1;
571 getTableData();
572 } else {
573 ElMessage.error(res.msg);
574 }
575 })
576 }
577 } else {
578 // 需要走流程的审批功能。
459 dialogInfo.value.footer.btns[1].loading = true; 579 dialogInfo.value.footer.btns[1].loading = true;
460 let submitFunc = () => { 580 let submitFunc = () => {
461 getProcessNodesPromise({ 581 getProcessNodesPromise({
...@@ -540,6 +660,7 @@ const dialogBtnClick = (btn, info) => { ...@@ -540,6 +660,7 @@ const dialogBtnClick = (btn, info) => {
540 } 660 }
541 }) 661 })
542 } 662 }
663 }
543 } else if (btn.value == 'cancel') { 664 } else if (btn.value == 'cancel') {
544 dialogInfo.value.visible = false; 665 dialogInfo.value.visible = false;
545 } 666 }
......
...@@ -114,7 +114,7 @@ const getDetailInfo = () => { ...@@ -114,7 +114,7 @@ const getDetailInfo = () => {
114 if (res.code == proxy.$passCode) { 114 if (res.code == proxy.$passCode) {
115 const data = res.data || {}; 115 const data = res.data || {};
116 evaDetailInfo.value = data; 116 evaDetailInfo.value = data;
117 deploymentId.value = data.approveVO.camundaDeploymentId; 117 deploymentId.value = data.approveVO?.camundaDeploymentId;
118 processInstanceId.value = data.approveVO?.camundaInstanceId; 118 processInstanceId.value = data.approveVO?.camundaInstanceId;
119 } else { 119 } else {
120 proxy.$ElMessage.error(res.msg); 120 proxy.$ElMessage.error(res.msg);
...@@ -127,7 +127,7 @@ const getDetailInfo = () => { ...@@ -127,7 +127,7 @@ const getDetailInfo = () => {
127 const data = res.data || {}; 127 const data = res.data || {};
128 costAssessDetail.value = data; 128 costAssessDetail.value = data;
129 evaDetailInfo.value = data; 129 evaDetailInfo.value = data;
130 deploymentId.value = data.approveVO.camundaDeploymentId; 130 deploymentId.value = data.approveVO?.camundaDeploymentId;
131 processInstanceId.value = data.approveVO?.camundaInstanceId; 131 processInstanceId.value = data.approveVO?.camundaInstanceId;
132 } else { 132 } else {
133 proxy.$ElMessage.error(res.msg); 133 proxy.$ElMessage.error(res.msg);
...@@ -209,6 +209,9 @@ const toolBtns: any = computed(() => { ...@@ -209,6 +209,9 @@ const toolBtns: any = computed(() => {
209 label: "关闭", value: "cancel", plain: true 209 label: "关闭", value: "cancel", plain: true
210 }]; 210 }];
211 let approveVO = evaDetailInfo.value.approveVO || costAssessDetail.value.approveVO; 211 let approveVO = evaDetailInfo.value.approveVO || costAssessDetail.value.approveVO;
212 if (!approveVO) {
213 return btnsArr;
214 }
212 let staffGuid = userData.staffGuid; 215 let staffGuid = userData.staffGuid;
213 if (approveVO && approveVO.approveState == 'A' && approveVO.approveStaffGuids && approveVO.approveStaffGuids.indexOf(staffGuid) > -1) { 216 if (approveVO && approveVO.approveState == 'A' && approveVO.approveStaffGuids && approveVO.approveStaffGuids.indexOf(staffGuid) > -1) {
214 btnsArr.push(...[{ label: "通过", value: "pass", type: 'primary' }, { label: "驳回", value: "reject", type: 'danger', plain: true }]); 217 btnsArr.push(...[{ label: "通过", value: "pass", type: 'primary' }, { label: "驳回", value: "reject", type: 'danger', plain: true }]);
...@@ -1171,7 +1174,7 @@ const handleClick = () => { ...@@ -1171,7 +1174,7 @@ const handleClick = () => {
1171 </div> 1174 </div>
1172 </ContentWrap> 1175 </ContentWrap>
1173 1176
1174 <ContentWrap v-if="route.query.type == 'qualityEvaluate' || route.query.type == 'costAssess'" id="id-approveInfo" 1177 <ContentWrap v-if="(route.query.type == 'qualityEvaluate' && evaDetailInfo.approveVO && evaDetailInfo.isApprove !='N') || (route.query.type == 'costAssess' && costAssessDetail.approveVO && costAssessDetail.isApprove !='N')" id="id-approveInfo"
1175 title="审批信息" description="" style="margin: 16px 16px 16px"> 1178 title="审批信息" description="" style="margin: 16px 16px 16px">
1176 <ApprovalProcess ref="approvalProcessRef" v-if="deploymentId" :deploymentId="deploymentId" :processInstanceId="processInstanceId"> 1179 <ApprovalProcess ref="approvalProcessRef" v-if="deploymentId" :deploymentId="deploymentId" :processInstanceId="processInstanceId">
1177 </ApprovalProcess> 1180 </ApprovalProcess>
......
...@@ -78,7 +78,7 @@ const getDetailInfo = () => { ...@@ -78,7 +78,7 @@ const getDetailInfo = () => {
78 const data = res.data || {}; 78 const data = res.data || {};
79 evaDetailInfo.value = data; 79 evaDetailInfo.value = data;
80 detailInfo.value = data; 80 detailInfo.value = data;
81 deploymentId.value = data.approveVO.camundaDeploymentId; 81 deploymentId.value = data.approveVO?.camundaDeploymentId;
82 processInstanceId.value = data.approveVO?.camundaInstanceId; 82 processInstanceId.value = data.approveVO?.camundaInstanceId;
83 //需要显示质量评价信息 83 //需要显示质量评价信息
84 if (data.qualityScore != null) { 84 if (data.qualityScore != null) {
...@@ -90,6 +90,9 @@ const getDetailInfo = () => { ...@@ -90,6 +90,9 @@ const getDetailInfo = () => {
90 tabsInfo.value.tabs.splice(3, 1); 90 tabsInfo.value.tabs.splice(3, 1);
91 } 91 }
92 } 92 }
93 if (evaDetailInfo.value.isApprove == 'N') {
94 tabsInfo.value.tabs.pop();
95 }
93 if (fullPath === route.fullPath) { 96 if (fullPath === route.fullPath) {
94 document.title = `详情-${data.daName}`; 97 document.title = `详情-${data.daName}`;
95 } 98 }
...@@ -124,7 +127,7 @@ const getDetailInfo = () => { ...@@ -124,7 +127,7 @@ const getDetailInfo = () => {
124 const data = res.data || {}; 127 const data = res.data || {};
125 costAssessDetailInfo.value = data; 128 costAssessDetailInfo.value = data;
126 detailInfo.value = data; 129 detailInfo.value = data;
127 deploymentId.value = data.approveVO.camundaDeploymentId; 130 deploymentId.value = data.approveVO?.camundaDeploymentId;
128 processInstanceId.value = data.approveVO?.camundaInstanceId; 131 processInstanceId.value = data.approveVO?.camundaInstanceId;
129 // 需要显示价值评估信息 132 // 需要显示价值评估信息
130 if (data.assessmentMoney != null) { 133 if (data.assessmentMoney != null) {
...@@ -136,7 +139,9 @@ const getDetailInfo = () => { ...@@ -136,7 +139,9 @@ const getDetailInfo = () => {
136 tabsInfo.value.tabs.splice(3, 1); 139 tabsInfo.value.tabs.splice(3, 1);
137 } 140 }
138 } 141 }
139 142 if (costAssessDetailInfo.value.isApprove == 'N') {
143 tabsInfo.value.tabs.pop();
144 }
140 if (data.qualityScore) { 145 if (data.qualityScore) {
141 // 确保"质量评价"标签存在于tabs中,并插入到"价值评估"前面 146 // 确保"质量评价"标签存在于tabs中,并插入到"价值评估"前面
142 const qualityTabIndex = tabsInfo.value.tabs.findIndex(tab => tab.name === "qualityEvaluate"); 147 const qualityTabIndex = tabsInfo.value.tabs.findIndex(tab => tab.name === "qualityEvaluate");
...@@ -285,8 +290,8 @@ const getDetailInfo = () => { ...@@ -285,8 +290,8 @@ const getDetailInfo = () => {
285 let { approveVO } = data; 290 let { approveVO } = data;
286 detailInfo.value = data; 291 detailInfo.value = data;
287 assetDetailInfo.value = data; 292 assetDetailInfo.value = data;
288 deploymentId.value = approveVO.camundaDeploymentId; 293 deploymentId.value = approveVO?.camundaDeploymentId;
289 processInstanceId.value = approveVO.camundaInstanceId; 294 processInstanceId.value = approveVO?.camundaInstanceId;
290 isTextTruncated(); 295 isTextTruncated();
291 } else { 296 } else {
292 ElMessage.error(res.msg); 297 ElMessage.error(res.msg);
...@@ -446,6 +451,9 @@ const toolBtns: any = computed(() => { ...@@ -446,6 +451,9 @@ const toolBtns: any = computed(() => {
446 return btnsArr; 451 return btnsArr;
447 } 452 }
448 let approveVO = detailInfo.value.approveVO; 453 let approveVO = detailInfo.value.approveVO;
454 if (!approveVO) {
455 return btnsArr;
456 }
449 let staffGuid = userData.staffGuid; 457 let staffGuid = userData.staffGuid;
450 if (approveVO && approveVO.approveState == 'A' && approveVO.approveStaffGuids && approveVO.approveStaffGuids.indexOf(staffGuid) > -1) { 458 if (approveVO && approveVO.approveState == 'A' && approveVO.approveStaffGuids && approveVO.approveStaffGuids.indexOf(staffGuid) > -1) {
451 btnsArr.push(...[{ label: "通过", value: "pass", type: 'primary' }, { label: "驳回", value: "reject", type: 'danger', plain: true }]); 459 btnsArr.push(...[{ label: "通过", value: "pass", type: 'primary' }, { label: "驳回", value: "reject", type: 'danger', plain: true }]);
...@@ -1748,7 +1756,7 @@ const passCommonDialogBtnClick = (btn, info) => { ...@@ -1748,7 +1756,7 @@ const passCommonDialogBtnClick = (btn, info) => {
1748 </div> 1756 </div>
1749 </ContentWrap> 1757 </ContentWrap>
1750 <ContentWrap id="id-approveInfo" title="审批信息" expandSwicth style="margin-top: 15px" 1758 <ContentWrap id="id-approveInfo" title="审批信息" expandSwicth style="margin-top: 15px"
1751 :isExpand="approveInfoExpand" @expand="(v) => approveInfoExpand = v" v-if="route.query.type != 'certificate'"> 1759 :isExpand="approveInfoExpand" @expand="(v) => approveInfoExpand = v" v-if="tabsInfo.tabs.find(t => t.name == 'approveInfo') && route.query.type != 'certificate'">
1752 <!-- <Table :tableInfo="approveTableInfo" /> --> 1760 <!-- <Table :tableInfo="approveTableInfo" /> -->
1753 <ApprovalProcess ref="approvalProcessRef" v-if="deploymentId" :deploymentId="deploymentId" 1761 <ApprovalProcess ref="approvalProcessRef" v-if="deploymentId" :deploymentId="deploymentId"
1754 :processInstanceId="processInstanceId"> 1762 :processInstanceId="processInstanceId">
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!