6e952d11 by lihua

评估只有一级审批弹信息输入框

1 parent e379cfed
...@@ -58,3 +58,9 @@ export const getProcessNodesPromise = (params)=>request({ ...@@ -58,3 +58,9 @@ export const getProcessNodesPromise = (params)=>request({
58 method: 'post', 58 method: 'post',
59 data: params 59 data: params
60 }) 60 })
61
62 export const isMyFirstNode = (params) => request({
63 url: `${import.meta.env.VITE_APP_WORK_FLOW_URL}/work-flow/data/is-my-first-node`,
64 method: 'post',
65 data: params
66 })
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -20,7 +20,7 @@ import useDataAssetStore from "@/store/modules/dataAsset"; ...@@ -20,7 +20,7 @@ import useDataAssetStore from "@/store/modules/dataAsset";
20 import { 20 import {
21 getStaffDetailInfo 21 getStaffDetailInfo
22 } from "@/api/modules/queryService"; 22 } from "@/api/modules/queryService";
23 import { rejectFlowData, revokeFlowData, getCamundaDeploymentId, getProcessNodesPromise } from "@/api/modules/workFlowService"; 23 import { rejectFlowData, revokeFlowData, getCamundaDeploymentId, getProcessNodesPromise, isMyFirstNode, passFlowData } from "@/api/modules/workFlowService";
24 24
25 const assetStore = useDataAssetStore(); 25 const assetStore = useDataAssetStore();
26 26
...@@ -224,6 +224,8 @@ const getTableBtns = (row) => { ...@@ -224,6 +224,8 @@ const getTableBtns = (row) => {
224 224
225 const currTableData: any = ref({}); 225 const currTableData: any = ref({});
226 226
227 let getFirstNodePromise: any = ref({});
228
227 const tableBtnClick = (scope, btn) => { 229 const tableBtnClick = (scope, btn) => {
228 const type = btn.value; 230 const type = btn.value;
229 const row = scope.row; 231 const row = scope.row;
...@@ -240,15 +242,33 @@ const tableBtnClick = (scope, btn) => { ...@@ -240,15 +242,33 @@ const tableBtnClick = (scope, btn) => {
240 } else if (type === 'reject') { 242 } else if (type === 'reject') {
241 rejectDialogInfo.value.visible = true; 243 rejectDialogInfo.value.visible = true;
242 } else if (type === 'pass') { 244 } else if (type === 'pass') {
243 passDialogInfo.value.visible = true; 245 if (getFirstNodePromise.value[row.guid]) {
244 if (row.dataStartDate) { 246 return;
245 passFormItems.value[1].disabled = true;
246 passFormItems.value[1].default = [row.dataStartDate, row.dataEndDate];
247 } else {
248 passFormItems.value[1].disabled = false;
249 passFormItems.value[1].default = null;
250 } 247 }
251 passFormItems.value[2].placeholder = `本次评估数据资产总体质量得分为**分\n准确性:\n一致性:\n可访问性:\n规范性:\n完整性:`; 248 getFirstNodePromise.value[row.guid] = isMyFirstNode({
249 deploymentId: row.approveVO.camundaDeploymentId,
250 processInstanceId: row.approveVO.camundaInstanceId,
251 staffGuid: userData.staffGuid
252 }).then((res: any) => {
253 getFirstNodePromise.value[row.guid] = null;
254 if (res?.code == proxy.$passCode) {
255 if (res.data) {
256 passDialogInfo.value.visible = true;
257 if (row.dataStartDate) {
258 passFormItems.value[1].disabled = true;
259 passFormItems.value[1].default = [row.dataStartDate, row.dataEndDate];
260 } else {
261 passFormItems.value[1].disabled = false;
262 passFormItems.value[1].default = null;
263 }
264 passFormItems.value[2].placeholder = `本次评估数据资产总体质量得分为**分\n准确性:\n一致性:\n可访问性:\n规范性:\n完整性:`;
265 } else {
266 passCommonDialogInfo.value.visible = true;
267 }
268 } else {
269 proxy.$ElMessage.error(res.msg);
270 }
271 })
252 } else if (type === 'revoke') { // 撤销,状态为审批中时可以撤销。 272 } else if (type === 'revoke') { // 撤销,状态为审批中时可以撤销。
253 ElMessageBox.confirm(`撤销后,该流程将不再进行审核,确定这样操作吗?`, "提示", { 273 ElMessageBox.confirm(`撤销后,该流程将不再进行审核,确定这样操作吗?`, "提示", {
254 confirmButtonText: "确定", 274 confirmButtonText: "确定",
...@@ -743,6 +763,73 @@ const rejectDialogBtnClick = (btn, info) => { ...@@ -743,6 +763,73 @@ const rejectDialogBtnClick = (btn, info) => {
743 } 763 }
744 }; 764 };
745 765
766 const passCommonDialogInfo = ref({
767 visible: false,
768 size: 460,
769 direction: "column",
770 header: {
771 title: "通过",
772 },
773 type: '',
774 contents: [
775 {
776 type: 'form',
777 title: '',
778 formInfo: {
779 id: 'batch-pass-form',
780 items: [
781 {
782 label: '',
783 type: "textarea",
784 placeholder: "请填写通过备注(选填)",
785 field: "approveSuggest",
786 clearable: true,
787 maxlength: 400,
788 block: true,
789 col: 'margin_b_0',
790 }
791 ]
792 }
793 }
794 ],
795 footer: {
796 btns: [
797 { type: "default", label: "取消", value: "cancel" },
798 { type: "primary", label: "确定", value: "submit" },
799 ],
800 },
801 });
802
803 const passCommonDialogBtnClick = (btn, info) => {
804 if (btn.value == 'submit') {
805 tableInfo.value.loading = true;
806 let params = {
807 guid: currTableData.value.approveVO.approveGuid,
808 flowType: currTableData.value.approveVO.flowType,
809 approveSuggest: info.approveSuggest,
810 approveStaffGuid: userData.staffGuid
811 }
812 passFlowData(params, currTableData.value.tenantGuid).then((res: any) => {
813 tableInfo.value.loading = false;
814 if (res?.code == proxy.$passCode) {
815 if (res.data) {
816 ElMessage.success('审批成功');
817 passCommonDialogInfo.value.visible = false;
818 getTableData();
819 } else {
820 ElMessage.error('审批失败');
821 }
822 } else {
823 ElMessage.error(res.msg);
824 }
825 }).catch(() => {
826 tableInfo.value.loading = false;
827 });
828 } else if (btn.value == 'cancel') {
829 passCommonDialogInfo.value.visible = false;
830 }
831 }
832
746 </script> 833 </script>
747 834
748 <template> 835 <template>
...@@ -759,6 +846,7 @@ const rejectDialogBtnClick = (btn, info) => { ...@@ -759,6 +846,7 @@ const rejectDialogBtnClick = (btn, info) => {
759 <Dialog :dialogInfo="dialogInfo" @btnClick="dialogBtnClick" /> 846 <Dialog :dialogInfo="dialogInfo" @btnClick="dialogBtnClick" />
760 <Dialog :dialogInfo="passDialogInfo" @btnClick="passDialogBtnClick" @inputChange=passDialogInputChange /> 847 <Dialog :dialogInfo="passDialogInfo" @btnClick="passDialogBtnClick" @inputChange=passDialogInputChange />
761 <Dialog :dialogInfo="rejectDialogInfo" @btnClick="rejectDialogBtnClick" /> 848 <Dialog :dialogInfo="rejectDialogInfo" @btnClick="rejectDialogBtnClick" />
849 <Dialog :dialogInfo="passCommonDialogInfo" @btnClick="passCommonDialogBtnClick" />
762 </div> 850 </div>
763 </template> 851 </template>
764 852
......
...@@ -21,7 +21,7 @@ import { ...@@ -21,7 +21,7 @@ import {
21 } from "@/api/modules/queryService"; 21 } from "@/api/modules/queryService";
22 import useUserStore from "@/store/modules/user"; 22 import useUserStore from "@/store/modules/user";
23 import useDataAssetStore from "@/store/modules/dataAsset"; 23 import useDataAssetStore from "@/store/modules/dataAsset";
24 import { getCamundaDeploymentId, getProcessNodesPromise, passFlowData, rejectFlowData, revokeFlowData } from '@/api/modules/workFlowService'; 24 import { getCamundaDeploymentId, getProcessNodesPromise, passFlowData, rejectFlowData, revokeFlowData, isMyFirstNode } from '@/api/modules/workFlowService';
25 25
26 const assetStore = useDataAssetStore(); 26 const assetStore = useDataAssetStore();
27 27
...@@ -287,6 +287,8 @@ const getTableBtns = (row) => { ...@@ -287,6 +287,8 @@ const getTableBtns = (row) => {
287 287
288 const currTableData: any = ref({}); 288 const currTableData: any = ref({});
289 289
290 let getFirstNodePromise: any = ref({});
291
290 const tableBtnClick = (scope, btn) => { 292 const tableBtnClick = (scope, btn) => {
291 const type = btn.value; 293 const type = btn.value;
292 const row = scope.row; 294 const row = scope.row;
...@@ -350,8 +352,26 @@ const tableBtnClick = (scope, btn) => { ...@@ -350,8 +352,26 @@ const tableBtnClick = (scope, btn) => {
350 } else if (type === 'backup') { 352 } else if (type === 'backup') {
351 rejectDialogInfo.value.visible = true; 353 rejectDialogInfo.value.visible = true;
352 } else if (type === 'pass') { 354 } else if (type === 'pass') {
353 passDialogInfo.value.visible = true; 355 if (getFirstNodePromise.value[row.guid]) {
354 passFormItems.value[2].placeholder = '按照本次评估目的及价值类型,该笔数据资产在评估基准日的评估值为人民币***元。本次评估结论在评估基准日后一年内有效,即自20*年*月*日至20*年*月*日止。超过一年,需重新举行资产评估。'; 356 return;
357 }
358 getFirstNodePromise.value[row.guid] = isMyFirstNode({
359 deploymentId: row.approveVO.camundaDeploymentId,
360 processInstanceId: row.approveVO.camundaInstanceId,
361 staffGuid: userData.staffGuid
362 }).then((res: any) => {
363 getFirstNodePromise.value[row.guid] = null;
364 if (res?.code == proxy.$passCode) {
365 if (res.data) {
366 passDialogInfo.value.visible = true;
367 passFormItems.value[2].placeholder = '按照本次评估目的及价值类型,该笔数据资产在评估基准日的评估值为人民币***元。本次评估结论在评估基准日后一年内有效,即自20*年*月*日至20*年*月*日止。超过一年,需重新举行资产评估。';
368 } else {
369 passCommonDialogInfo.value.visible = true;
370 }
371 } else {
372 proxy.$ElMessage.error(res.msg);
373 }
374 })
355 } else if (type === 'revoke') { // 撤销,状态为审批中时可以撤销。 375 } else if (type === 'revoke') { // 撤销,状态为审批中时可以撤销。
356 ElMessageBox.confirm(`撤销后,该流程将不再进行审核,确定这样操作吗?`, "提示", { 376 ElMessageBox.confirm(`撤销后,该流程将不再进行审核,确定这样操作吗?`, "提示", {
357 confirmButtonText: "确定", 377 confirmButtonText: "确定",
...@@ -808,7 +828,7 @@ const dialogBtnClick = (btn, info) => { ...@@ -808,7 +828,7 @@ const dialogBtnClick = (btn, info) => {
808 evaluationRangeStart: info.evaluationRange ? info.evaluationRange[0] : null, 828 evaluationRangeStart: info.evaluationRange ? info.evaluationRange[0] : null,
809 evaluationRangeEnd: info.evaluationRange ? info.evaluationRange[1] : null, 829 evaluationRangeEnd: info.evaluationRange ? info.evaluationRange[1] : null,
810 evaluationNote: info.evaluationNote, 830 evaluationNote: info.evaluationNote,
811 evaluationAgencyGuid: res.data?.[1]?.candidateUsers?.[0]?.staffGuid, 831 evaluationAgencyGuid: resUser.data?.tenantGuid,
812 } 832 }
813 } 833 }
814 console.log('daInfo', daInfo, info); 834 console.log('daInfo', daInfo, info);
...@@ -1008,7 +1028,42 @@ const passDialogBtnClick = (btn, info) => { ...@@ -1008,7 +1028,42 @@ const passDialogBtnClick = (btn, info) => {
1008 } 1028 }
1009 }; 1029 };
1010 1030
1011 1031 const passCommonDialogInfo = ref({
1032 visible: false,
1033 size: 460,
1034 direction: "column",
1035 header: {
1036 title: "通过",
1037 },
1038 type: '',
1039 contents: [
1040 {
1041 type: 'form',
1042 title: '',
1043 formInfo: {
1044 id: 'batch-pass-form',
1045 items: [
1046 {
1047 label: '',
1048 type: "textarea",
1049 placeholder: "请填写通过备注(选填)",
1050 field: "approveSuggest",
1051 clearable: true,
1052 maxlength: 400,
1053 block: true,
1054 col: 'margin_b_0',
1055 }
1056 ]
1057 }
1058 }
1059 ],
1060 footer: {
1061 btns: [
1062 { type: "default", label: "取消", value: "cancel" },
1063 { type: "primary", label: "确定", value: "submit" },
1064 ],
1065 },
1066 });
1012 1067
1013 1068
1014 const rejectDialogInfo = ref({ 1069 const rejectDialogInfo = ref({
...@@ -1082,6 +1137,36 @@ const rejectDialogBtnClick = (btn, info) => { ...@@ -1082,6 +1137,36 @@ const rejectDialogBtnClick = (btn, info) => {
1082 } 1137 }
1083 }; 1138 };
1084 1139
1140 const passCommonDialogBtnClick = (btn, info) => {
1141 if (btn.value == 'submit') {
1142 tableInfo.value.loading = true;
1143 let params = {
1144 guid: currTableData.value.approveVO.approveGuid,
1145 flowType: currTableData.value.approveVO.flowType,
1146 approveSuggest: info.approveSuggest,
1147 approveStaffGuid: userData.staffGuid
1148 }
1149 passFlowData(params, currTableData.value.tenantGuid).then((res: any) => {
1150 tableInfo.value.loading = false;
1151 if (res?.code == proxy.$passCode) {
1152 if (res.data) {
1153 ElMessage.success('审批成功');
1154 passCommonDialogInfo.value.visible = false;
1155 getTableData();
1156 } else {
1157 ElMessage.error('审批失败');
1158 }
1159 } else {
1160 ElMessage.error(res.msg);
1161 }
1162 }).catch(() => {
1163 tableInfo.value.loading = false;
1164 });
1165 } else if (btn.value == 'cancel') {
1166 passCommonDialogInfo.value.visible = false;
1167 }
1168 }
1169
1085 </script> 1170 </script>
1086 1171
1087 <template> 1172 <template>
...@@ -1098,6 +1183,7 @@ const rejectDialogBtnClick = (btn, info) => { ...@@ -1098,6 +1183,7 @@ const rejectDialogBtnClick = (btn, info) => {
1098 <Dialog :dialogInfo="dialogInfo" @btnClick="dialogBtnClick" @selectChange="handleSelectChange" /> 1183 <Dialog :dialogInfo="dialogInfo" @btnClick="dialogBtnClick" @selectChange="handleSelectChange" />
1099 <Dialog :dialogInfo="passDialogInfo" @btnClick="passDialogBtnClick" @inputChange="passDialogInputChange" /> 1184 <Dialog :dialogInfo="passDialogInfo" @btnClick="passDialogBtnClick" @inputChange="passDialogInputChange" />
1100 <Dialog :dialogInfo="rejectDialogInfo" @btnClick="rejectDialogBtnClick" /> 1185 <Dialog :dialogInfo="rejectDialogInfo" @btnClick="rejectDialogBtnClick" />
1186 <Dialog :dialogInfo="passCommonDialogInfo" @btnClick="passCommonDialogBtnClick" />
1101 </div> 1187 </div>
1102 </template> 1188 </template>
1103 1189
...@@ -1110,5 +1196,4 @@ const rejectDialogBtnClick = (btn, info) => { ...@@ -1110,5 +1196,4 @@ const rejectDialogBtnClick = (btn, info) => {
1110 // .el-upload__tip { 1196 // .el-upload__tip {
1111 // margin-left: 0px; 1197 // margin-left: 0px;
1112 // } 1198 // }
1113 // } 1199 // }</style>
1114 </style>
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!