fix
Showing
7 changed files
with
565 additions
and
88 deletions
| ... | @@ -106,7 +106,7 @@ export const updatQuality = (params) => request({ | ... | @@ -106,7 +106,7 @@ export const updatQuality = (params) => request({ |
| 106 | }) | 106 | }) |
| 107 | 107 | ||
| 108 | /** 获取可以发起资产质量评价的选项列表。 */ | 108 | /** 获取可以发起资产质量评价的选项列表。 */ |
| 109 | /** type: 1 质量评价;2 资产评估 */ | 109 | /** type: 1 质量评价;2 价值评估 */ |
| 110 | export const getRegisteredList = (type) => request({ | 110 | export const getRegisteredList = (type) => request({ |
| 111 | url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/get-valid-list?type=${type}`, | 111 | url: `${import.meta.env.VITE_API_NEW_PORTAL}/dam-catalog-table/get-valid-list?type=${type}`, |
| 112 | method: 'get' | 112 | method: 'get' | ... | ... |
| ... | @@ -252,6 +252,9 @@ export const filterVal = (val, type) => { | ... | @@ -252,6 +252,9 @@ export const filterVal = (val, type) => { |
| 252 | case 'Y': | 252 | case 'Y': |
| 253 | approval = '已通过'; | 253 | approval = '已通过'; |
| 254 | break; | 254 | break; |
| 255 | case 'C': | ||
| 256 | approval = '已撤销'; | ||
| 257 | break; | ||
| 255 | case 'N': | 258 | case 'N': |
| 256 | approval = '草稿中'; | 259 | approval = '草稿中'; |
| 257 | break; | 260 | break; | ... | ... |
| ... | @@ -197,6 +197,13 @@ const inputChange = (val, row) => { | ... | @@ -197,6 +197,13 @@ const inputChange = (val, row) => { |
| 197 | formInline.value[row.field] = val = parseFloat(val || 0).toFixed(2); | 197 | formInline.value[row.field] = val = parseFloat(val || 0).toFixed(2); |
| 198 | } | 198 | } |
| 199 | } | 199 | } |
| 200 | // 新增的 inputType 处理逻辑:integerWithComma | ||
| 201 | if (row.inputType == "integerWithComma") { | ||
| 202 | val = val.replace(/[^\d]/g, ""); // 移除非数字字符 | ||
| 203 | val = val.replace(/^0+(?!$)/, ""); // 去除前导零,但保留单个零输入 | ||
| 204 | val = val.replace(/\B(?=(\d{3})+(?!\d))/g, ","); // 添加千位分隔符 | ||
| 205 | formInline.value[row.field] = val; | ||
| 206 | } | ||
| 200 | if (row.field == "mobileNo") { | 207 | if (row.field == "mobileNo") { |
| 201 | formInline.value.logonUser = formInline.value.mobileNo; | 208 | formInline.value.logonUser = formInline.value.mobileNo; |
| 202 | } | 209 | } |
| ... | @@ -241,6 +248,14 @@ const inputEventChange = (val, item) => { | ... | @@ -241,6 +248,14 @@ const inputEventChange = (val, item) => { |
| 241 | formInline.value[item.field] = formInline.value[item.field].toString().replace(/^(\-)*(\d+)\.(\d\d\d\d\d\d).*$/, "$1$2.$3") | 248 | formInline.value[item.field] = formInline.value[item.field].toString().replace(/^(\-)*(\d+)\.(\d\d\d\d\d\d).*$/, "$1$2.$3") |
| 242 | formInline.value[item.field] = formInline.value[item.field].toString().replace(/^\D*(\d{0,12}(?:\.\d{0,2})?).*$/g, "$1") | 249 | formInline.value[item.field] = formInline.value[item.field].toString().replace(/^\D*(\d{0,12}(?:\.\d{0,2})?).*$/g, "$1") |
| 243 | return; | 250 | return; |
| 251 | } else if (item.inputType == 'integerWithComma') { // 整数,带千位分隔符 | ||
| 252 | // 移除非数字字符 | ||
| 253 | formInline.value[item.field] = val.replace(/[^\d]/g, ""); | ||
| 254 | // 去除前导零 | ||
| 255 | formInline.value[item.field] = formInline.value[item.field].replace(/^0+(?!$)/, ""); | ||
| 256 | // 添加千位分隔符 | ||
| 257 | formInline.value[item.field] = formInline.value[item.field].replace(/\B(?=(\d{3})+(?!\d))/g, ","); | ||
| 258 | return; | ||
| 244 | } | 259 | } |
| 245 | if (item.min != null && (formInline.value[item.field] < item.min)) { | 260 | if (item.min != null && (formInline.value[item.field] < item.min)) { |
| 246 | formInline.value[item.field] = item.min; | 261 | formInline.value[item.field] = item.min; |
| ... | @@ -589,7 +604,7 @@ const panelChange = (scope, row) => { | ... | @@ -589,7 +604,7 @@ const panelChange = (scope, row) => { |
| 589 | required_mark: item.required, | 604 | required_mark: item.required, |
| 590 | }">{{ | 605 | }">{{ |
| 591 | item.label | 606 | item.label |
| 592 | }}</span> | 607 | }}</span> |
| 593 | 608 | ||
| 594 | </span> | 609 | </span> |
| 595 | <div class="header_title_tooltip" style="width: auto" v-if="item.tooltip"> | 610 | <div class="header_title_tooltip" style="width: auto" v-if="item.tooltip"> |
| ... | @@ -682,7 +697,7 @@ const panelChange = (scope, row) => { | ... | @@ -682,7 +697,7 @@ const panelChange = (scope, row) => { |
| 682 | <div class="item_panel" :class="{ is_block: panel.block }" v-for="panel in item.children"> | 697 | <div class="item_panel" :class="{ is_block: panel.block }" v-for="panel in item.children"> |
| 683 | <label :class="{ required_mark: panel.required }">{{ | 698 | <label :class="{ required_mark: panel.required }">{{ |
| 684 | panel.label | 699 | panel.label |
| 685 | }}</label> | 700 | }}</label> |
| 686 | <el-checkbox v-if="panel.type == 'checkbox'" v-model="formInline[panel.field]" | 701 | <el-checkbox v-if="panel.type == 'checkbox'" v-model="formInline[panel.field]" |
| 687 | :disabled="panel.disabled || readonly" :true-label="panel.trueValue ?? true" | 702 | :disabled="panel.disabled || readonly" :true-label="panel.trueValue ?? true" |
| 688 | :false-label="panel.falseValue ?? false">{{ panel.placeholder }}</el-checkbox> | 703 | :false-label="panel.falseValue ?? false">{{ panel.placeholder }}</el-checkbox> |
| ... | @@ -765,7 +780,7 @@ const panelChange = (scope, row) => { | ... | @@ -765,7 +780,7 @@ const panelChange = (scope, row) => { |
| 765 | <span class="item-label" slot="label"> | 780 | <span class="item-label" slot="label"> |
| 766 | <span v-if="child.label" :class="{ required_mark: child.required }">{{ | 781 | <span v-if="child.label" :class="{ required_mark: child.required }">{{ |
| 767 | child.label | 782 | child.label |
| 768 | }}</span> | 783 | }}</span> |
| 769 | </span> | 784 | </span> |
| 770 | <el-select v-if="child.type == 'select'" v-model="formInline[child.field]" | 785 | <el-select v-if="child.type == 'select'" v-model="formInline[child.field]" |
| 771 | :placeholder="child.placeholder" :disabled="child.disabled || readonly" :filterable="child.filterable" | 786 | :placeholder="child.placeholder" :disabled="child.disabled || readonly" :filterable="child.filterable" |
| ... | @@ -824,7 +839,7 @@ const panelChange = (scope, row) => { | ... | @@ -824,7 +839,7 @@ const panelChange = (scope, row) => { |
| 824 | <span class="item-label" slot="label"> | 839 | <span class="item-label" slot="label"> |
| 825 | <span :class="{ required_mark: child.required }">{{ | 840 | <span :class="{ required_mark: child.required }">{{ |
| 826 | child.label | 841 | child.label |
| 827 | }}</span> | 842 | }}</span> |
| 828 | </span> | 843 | </span> |
| 829 | <el-cascader v-if="child.type == 'cascader'" v-model="formInline[child.field]" :props="child.props" | 844 | <el-cascader v-if="child.type == 'cascader'" v-model="formInline[child.field]" :props="child.props" |
| 830 | :options="child.options" :show-all-levels="child.showAllLevels ?? true" | 845 | :options="child.options" :show-all-levels="child.showAllLevels ?? true" |
| ... | @@ -867,7 +882,7 @@ const panelChange = (scope, row) => { | ... | @@ -867,7 +882,7 @@ const panelChange = (scope, row) => { |
| 867 | <div class="item_panel" v-for="child in item.children"> | 882 | <div class="item_panel" v-for="child in item.children"> |
| 868 | <label :class="{ required_mark: child.required }">{{ | 883 | <label :class="{ required_mark: child.required }">{{ |
| 869 | child.label | 884 | child.label |
| 870 | }}</label> | 885 | }}</label> |
| 871 | <div class="tool_item"> | 886 | <div class="tool_item"> |
| 872 | <el-select v-model="formInline[child.field]" :class="{ is_block: child.block }" | 887 | <el-select v-model="formInline[child.field]" :class="{ is_block: child.block }" |
| 873 | :placeholder="child.placeholder" :multiple="child.multiple" :collapse-tags="child.collapse" | 888 | :placeholder="child.placeholder" :multiple="child.multiple" :collapse-tags="child.collapse" |
| ... | @@ -942,7 +957,7 @@ const panelChange = (scope, row) => { | ... | @@ -942,7 +957,7 @@ const panelChange = (scope, row) => { |
| 942 | <span class="item-label" slot="label"> | 957 | <span class="item-label" slot="label"> |
| 943 | <span :class="{ required_mark: child.required }">{{ | 958 | <span :class="{ required_mark: child.required }">{{ |
| 944 | child.label | 959 | child.label |
| 945 | }}</span> | 960 | }}</span> |
| 946 | </span> | 961 | </span> |
| 947 | <el-input :class="[child.col, { is_block: child.block }]" v-model="formInline[child.field]" | 962 | <el-input :class="[child.col, { is_block: child.block }]" v-model="formInline[child.field]" |
| 948 | :rows="child.rows ?? 4" type="textarea" :placeholder="child.placeholder" | 963 | :rows="child.rows ?? 4" type="textarea" :placeholder="child.placeholder" |
| ... | @@ -999,7 +1014,7 @@ const panelChange = (scope, row) => { | ... | @@ -999,7 +1014,7 @@ const panelChange = (scope, row) => { |
| 999 | <span class="item-label" slot="label"> | 1014 | <span class="item-label" slot="label"> |
| 1000 | <span :class="{ required_mark: child.required }">{{ | 1015 | <span :class="{ required_mark: child.required }">{{ |
| 1001 | child.label | 1016 | child.label |
| 1002 | }}</span> | 1017 | }}</span> |
| 1003 | </span> | 1018 | </span> |
| 1004 | <div class="input_group" :class="[child.col]" v-if="child.type == 'input-group'"> | 1019 | <div class="input_group" :class="[child.col]" v-if="child.type == 'input-group'"> |
| 1005 | <template v-for="(group, c) in child.children"> | 1020 | <template v-for="(group, c) in child.children"> |
| ... | @@ -1008,7 +1023,7 @@ const panelChange = (scope, row) => { | ... | @@ -1008,7 +1023,7 @@ const panelChange = (scope, row) => { |
| 1008 | <span class="item-label" slot="label"> | 1023 | <span class="item-label" slot="label"> |
| 1009 | <span :class="{ required_mark: group.required }">{{ | 1024 | <span :class="{ required_mark: group.required }">{{ |
| 1010 | group.label | 1025 | group.label |
| 1011 | }}</span> | 1026 | }}</span> |
| 1012 | </span> | 1027 | </span> |
| 1013 | <el-select v-if="group.type == 'select'" v-model="formInline[group.field]" | 1028 | <el-select v-if="group.type == 'select'" v-model="formInline[group.field]" |
| 1014 | :placeholder="group.placeholder" :clearable="group.clearable" | 1029 | :placeholder="group.placeholder" :clearable="group.clearable" |
| ... | @@ -1149,7 +1164,7 @@ const panelChange = (scope, row) => { | ... | @@ -1149,7 +1164,7 @@ const panelChange = (scope, row) => { |
| 1149 | <span class="item-label" slot="label"> | 1164 | <span class="item-label" slot="label"> |
| 1150 | <span :class="{ required_mark: child.required }">{{ | 1165 | <span :class="{ required_mark: child.required }">{{ |
| 1151 | child.label | 1166 | child.label |
| 1152 | }}</span> | 1167 | }}</span> |
| 1153 | </span> | 1168 | </span> |
| 1154 | <el-select v-if="child.type == 'select'" v-model="formInline[child.field]" | 1169 | <el-select v-if="child.type == 'select'" v-model="formInline[child.field]" |
| 1155 | :placeholder="child.placeholder" :clearable="child.clearable" :disabled="child.disabled || readonly" | 1170 | :placeholder="child.placeholder" :clearable="child.clearable" :disabled="child.disabled || readonly" |
| ... | @@ -1200,7 +1215,7 @@ const panelChange = (scope, row) => { | ... | @@ -1200,7 +1215,7 @@ const panelChange = (scope, row) => { |
| 1200 | <span class="item-label" slot="label" :class="[child.col]"> | 1215 | <span class="item-label" slot="label" :class="[child.col]"> |
| 1201 | <span :class="{ required_mark: child.required }">{{ | 1216 | <span :class="{ required_mark: child.required }">{{ |
| 1202 | child.label | 1217 | child.label |
| 1203 | }}</span> | 1218 | }}</span> |
| 1204 | </span> | 1219 | </span> |
| 1205 | <div class="input_popover_panel" v-if="child.type == 'input-popover-panel'"> | 1220 | <div class="input_popover_panel" v-if="child.type == 'input-popover-panel'"> |
| 1206 | <el-popover placement="bottom-start" width="100%" trigger="click" :teleported="false"> | 1221 | <el-popover placement="bottom-start" width="100%" trigger="click" :teleported="false"> |
| ... | @@ -1254,7 +1269,7 @@ const panelChange = (scope, row) => { | ... | @@ -1254,7 +1269,7 @@ const panelChange = (scope, row) => { |
| 1254 | <span class="item-label" slot="label"> | 1269 | <span class="item-label" slot="label"> |
| 1255 | <span :class="{ required_mark: child.required }">{{ | 1270 | <span :class="{ required_mark: child.required }">{{ |
| 1256 | child.label | 1271 | child.label |
| 1257 | }}</span> | 1272 | }}</span> |
| 1258 | </span> | 1273 | </span> |
| 1259 | <template v-if="child.type == 'upload-image'"> | 1274 | <template v-if="child.type == 'upload-image'"> |
| 1260 | <el-upload :class="[child.col, 'avatar-uploader', { is_block: child.block }]" action="#" | 1275 | <el-upload :class="[child.col, 'avatar-uploader', { is_block: child.block }]" action="#" |
| ... | @@ -1281,7 +1296,8 @@ const panelChange = (scope, row) => { | ... | @@ -1281,7 +1296,8 @@ const panelChange = (scope, row) => { |
| 1281 | <template #trigger> | 1296 | <template #trigger> |
| 1282 | <el-button :disabled="child.disabled" :icon="Upload" class="mr8">上传文件</el-button> | 1297 | <el-button :disabled="child.disabled" :icon="Upload" class="mr8">上传文件</el-button> |
| 1283 | </template> | 1298 | </template> |
| 1284 | <el-button :icon="Download" v-if="child.templateUrl" @click="(child.templateUrl == 'auto' && child.templateClick) ? child.templateClick() : downloadTemplate(child.templateUrl)"> | 1299 | <el-button :icon="Download" v-if="child.templateUrl" |
| 1300 | @click="(child.templateUrl == 'auto' && child.templateClick) ? child.templateClick() : downloadTemplate(child.templateUrl)"> | ||
| 1285 | 下载模板 | 1301 | 下载模板 |
| 1286 | </el-button> | 1302 | </el-button> |
| 1287 | <template #tip> | 1303 | <template #tip> |
| ... | @@ -1362,7 +1378,8 @@ const panelChange = (scope, row) => { | ... | @@ -1362,7 +1378,8 @@ const panelChange = (scope, row) => { |
| 1362 | <template #trigger> | 1378 | <template #trigger> |
| 1363 | <el-button :disabled="item.disabled" :icon="Upload" class="mr8">上传文件</el-button> | 1379 | <el-button :disabled="item.disabled" :icon="Upload" class="mr8">上传文件</el-button> |
| 1364 | </template> | 1380 | </template> |
| 1365 | <el-button :icon="Download" v-if="item.templateUrl" @click="(item.templateUrl == 'auto' && item.templateClick) ? item.templateClick() : downloadTemplate(item.templateUrl)"> | 1381 | <el-button :icon="Download" v-if="item.templateUrl" |
| 1382 | @click="(item.templateUrl == 'auto' && item.templateClick) ? item.templateClick() : downloadTemplate(item.templateUrl)"> | ||
| 1366 | 下载模板 | 1383 | 下载模板 |
| 1367 | </el-button> | 1384 | </el-button> |
| 1368 | <template #tip> | 1385 | <template #tip> |
| ... | @@ -2480,9 +2497,9 @@ const panelChange = (scope, row) => { | ... | @@ -2480,9 +2497,9 @@ const panelChange = (scope, row) => { |
| 2480 | margin-right: 8px; | 2497 | margin-right: 8px; |
| 2481 | } | 2498 | } |
| 2482 | 2499 | ||
| 2483 | .extra-textarea-class { | 2500 | // .extra-textarea-class { |
| 2484 | margin-top: 21px !important; | 2501 | // margin-top: 21px !important; |
| 2485 | } | 2502 | // } |
| 2486 | 2503 | ||
| 2487 | :deep(.form-and-select) { | 2504 | :deep(.form-and-select) { |
| 2488 | display: flex; | 2505 | display: flex; | ... | ... |
| ... | @@ -21,6 +21,7 @@ import { | ... | @@ -21,6 +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 { passFlowData, rejectFlowData, revokeFlowData } from '@/api/modules/workFlowService'; | ||
| 24 | 25 | ||
| 25 | const assetStore = useDataAssetStore(); | 26 | const assetStore = useDataAssetStore(); |
| 26 | 27 | ||
| ... | @@ -43,8 +44,40 @@ const tableFields = ref([ | ... | @@ -43,8 +44,40 @@ const tableFields = ref([ |
| 43 | { label: "资产名称", field: "daName", width: 160, align: "left" }, | 44 | { label: "资产名称", field: "daName", width: 160, align: "left" }, |
| 44 | { label: "登记时间", field: "registerTime", width: 120 }, | 45 | { label: "登记时间", field: "registerTime", width: 120 }, |
| 45 | // { label: "企业名称", field: "tenantName", width: 240, align: "left" }, | 46 | // { label: "企业名称", field: "tenantName", width: 240, align: "left" }, |
| 46 | { label: "发证主体", field: "issuingEntityName", width: 250, align: "left" }, | 47 | { label: "评估机构", field: "issuingEntityName", width: 250, align: "left" }, |
| 47 | { label: "状态", field: "approveState", type: "tag", width: 96, align: 'center' }, | 48 | { |
| 49 | label: "状态", field: "approveState", type: "tag", width: 96, align: 'center', getName: (scope) => { | ||
| 50 | const approveVO = scope.row.approveVO || {} | ||
| 51 | switch (approveVO.approveState) { | ||
| 52 | case 'N': | ||
| 53 | return '草稿中'; | ||
| 54 | case 'A': | ||
| 55 | return '审批中'; | ||
| 56 | case 'Y': | ||
| 57 | return '已通过'; | ||
| 58 | case 'R': | ||
| 59 | return '已驳回'; | ||
| 60 | case 'C': | ||
| 61 | return '已撤销'; | ||
| 62 | case 'I': | ||
| 63 | return '--'; | ||
| 64 | default: | ||
| 65 | return '草稿中'; | ||
| 66 | } | ||
| 67 | }, tagType: (scope) => { | ||
| 68 | const approveVO = scope.row.approveVO || {} | ||
| 69 | switch (approveVO.approveState) { | ||
| 70 | case 'A': | ||
| 71 | return 'warning'; | ||
| 72 | case 'Y': | ||
| 73 | return 'success'; | ||
| 74 | case 'R': | ||
| 75 | return 'danger'; | ||
| 76 | default: | ||
| 77 | return 'info'; | ||
| 78 | } | ||
| 79 | } | ||
| 80 | }, | ||
| 48 | ]); | 81 | ]); |
| 49 | 82 | ||
| 50 | onBeforeMount(() => { | 83 | onBeforeMount(() => { |
| ... | @@ -147,6 +180,14 @@ const handleCreate = () => { | ... | @@ -147,6 +180,14 @@ const handleCreate = () => { |
| 147 | formItems.value[0].default = ''; | 180 | formItems.value[0].default = ''; |
| 148 | formItems.value[1].visible = true; | 181 | formItems.value[1].visible = true; |
| 149 | formItems.value[1].default = []; | 182 | formItems.value[1].default = []; |
| 183 | formItems.value[2].visible = false; | ||
| 184 | formItems.value[2].default = ''; | ||
| 185 | formItems.value[3].visible = false; | ||
| 186 | formItems.value[3].default = ''; | ||
| 187 | formItems.value[4].visible = false; | ||
| 188 | formItems.value[4].default = ''; | ||
| 189 | formItems.value[5].visible = false; | ||
| 190 | formItems.value[5].default = []; | ||
| 150 | dialogInfo.value.visible = true; | 191 | dialogInfo.value.visible = true; |
| 151 | dialogInfo.value.type = ''; | 192 | dialogInfo.value.type = ''; |
| 152 | } | 193 | } |
| ... | @@ -179,7 +220,7 @@ const tableInfo = ref({ | ... | @@ -179,7 +220,7 @@ const tableInfo = ref({ |
| 179 | actionInfo: { | 220 | actionInfo: { |
| 180 | label: "操作", | 221 | label: "操作", |
| 181 | type: "btn", | 222 | type: "btn", |
| 182 | width: 160, | 223 | width: 180, |
| 183 | btns: (scope) => { | 224 | btns: (scope) => { |
| 184 | let row = scope.row; | 225 | let row = scope.row; |
| 185 | return getTableBtns(row); | 226 | return getTableBtns(row); |
| ... | @@ -187,31 +228,73 @@ const tableInfo = ref({ | ... | @@ -187,31 +228,73 @@ const tableInfo = ref({ |
| 187 | } | 228 | } |
| 188 | }); | 229 | }); |
| 189 | 230 | ||
| 190 | const getTableBtns = (row) => { | 231 | // const getTableBtns = (row) => { |
| 232 | // let btnsArr: any[] = []; | ||
| 233 | // if (row.approveState == 'A') {//审批中 | ||
| 234 | // btnsArr.push({ label: "详情", value: "path_detail" }) | ||
| 235 | // if (row.tenantGuid == userData.tenantGuid) { | ||
| 236 | // btnsArr.push({ label: "撤销", value: "revoke" }); | ||
| 237 | // } | ||
| 238 | // if (row.approveTenantGuids?.includes(userData.tenantGuid)) { | ||
| 239 | // btnsArr.push({ label: "通过", value: "pass" }); | ||
| 240 | // btnsArr.push({ label: "驳回", value: "backup" }); | ||
| 241 | // } | ||
| 242 | // } else if (row.approveState == 'Y') {//已通过的不能删除。 | ||
| 243 | // btnsArr.push({ label: "详情", value: "path_detail" }) | ||
| 244 | // } else if (row.approveState == 'R' || row.approveState == 'C') {//已驳回或已撤销 | ||
| 245 | // btnsArr.push({ label: "详情", value: "path_detail" }); | ||
| 246 | // if (row.tenantGuid == userData.tenantGuid) { | ||
| 247 | // btnsArr.push({ label: "重新提交", value: "edit", disabled: false }) | ||
| 248 | // } | ||
| 249 | // if (row.tenantGuid == userData.tenantGuid) { | ||
| 250 | // btnsArr.push({ label: "删除", value: "delete" }); | ||
| 251 | // } | ||
| 252 | // } | ||
| 253 | // return btnsArr; | ||
| 254 | // } | ||
| 255 | const getTableBtns = (row, includeDetail = true) => { | ||
| 191 | let btnsArr: any[] = []; | 256 | let btnsArr: any[] = []; |
| 192 | if (row.approveState == 'A') {//审批中 | 257 | const approveVO = row.approveVO; |
| 193 | btnsArr.push({ label: "详情", value: "path_detail" }) | 258 | const currentStaffGuid = userData.staffGuid |
| 194 | if (row.tenantGuid == userData.tenantGuid) { | 259 | const bizApproveState = row.approveState; |
| 195 | btnsArr.push({ label: "撤销", value: "revoke" }); | 260 | const approveState = approveVO?.approveState || 'N'; |
| 196 | } | 261 | const approveStaffGuids = approveVO?.approveStaffGuids || []; |
| 197 | if (row.approveTenantGuids?.includes(userData.tenantGuid)) { | 262 | const staffGuid = approveVO?.staffGuid || ''; |
| 198 | btnsArr.push({ label: "通过", value: "pass" }); | 263 | let isShowCancel = false; |
| 199 | btnsArr.push({ label: "驳回", value: "backup" }); | 264 | let flowState; |
| 200 | } | 265 | if (approveState == 'N') { |
| 201 | } else if (row.approveState == 'Y') {//已通过的不能删除。 | 266 | flowState = 1; |
| 202 | btnsArr.push({ label: "详情", value: "path_detail" }) | 267 | } |
| 203 | } else if (row.approveState == 'R' || row.approveState == 'C') {//已驳回或已撤销 | 268 | if (approveState == 'A' && approveStaffGuids.indexOf(currentStaffGuid) > -1) { |
| 204 | btnsArr.push({ label: "详情", value: "path_detail" }); | 269 | flowState = 2; |
| 205 | if (row.tenantGuid == userData.tenantGuid) { | 270 | } |
| 206 | btnsArr.push({ label: "重新提交", value: "edit", disabled: false }) | 271 | if ((approveState == 'C' || approveState == 'R') && staffGuid == currentStaffGuid) { |
| 207 | } | 272 | flowState = 3; |
| 208 | if (row.tenantGuid == userData.tenantGuid) { | 273 | } |
| 209 | btnsArr.push({ label: "删除", value: "delete" }); | 274 | if (approveVO && approveVO.approveState == 'A' && staffGuid == currentStaffGuid) { |
| 275 | isShowCancel = true; | ||
| 276 | } | ||
| 277 | |||
| 278 | if (flowState === 1) { | ||
| 279 | btnsArr = [{ label: "编辑", value: "edit" }, { label: "删除", value: "delete" }] | ||
| 280 | } else { | ||
| 281 | btnsArr.push({ label: "详情", value: "detail" }) | ||
| 282 | if (flowState === 2) { | ||
| 283 | btnsArr.push(...[{ label: "通过", value: "pass" }, { label: "驳回", value: "reject" }]) | ||
| 284 | if (isShowCancel) { | ||
| 285 | btnsArr.push({ label: "撤销", value: "revoke" }) | ||
| 286 | } | ||
| 287 | } else if (flowState === 3) { | ||
| 288 | if (bizApproveState != 'D') { | ||
| 289 | btnsArr.push({ label: "重新提交", value: "edit" }) | ||
| 290 | } | ||
| 291 | btnsArr.push({ label: "删除", value: "delete" }) | ||
| 210 | } | 292 | } |
| 211 | } | 293 | } |
| 212 | return btnsArr; | 294 | return btnsArr |
| 213 | } | 295 | } |
| 214 | 296 | ||
| 297 | |||
| 215 | const currTableData: any = ref({}); | 298 | const currTableData: any = ref({}); |
| 216 | 299 | ||
| 217 | const tableBtnClick = (scope, btn) => { | 300 | const tableBtnClick = (scope, btn) => { |
| ... | @@ -260,7 +343,7 @@ const tableBtnClick = (scope, btn) => { | ... | @@ -260,7 +343,7 @@ const tableBtnClick = (scope, btn) => { |
| 260 | message: '已取消撤销' | 343 | message: '已取消撤销' |
| 261 | }); | 344 | }); |
| 262 | }); | 345 | }); |
| 263 | } else if (type === 'path_detail') { // 详情 | 346 | } else if (type === 'detail') { // 详情 |
| 264 | router.push({ | 347 | router.push({ |
| 265 | name: 'registerValueDetail', | 348 | name: 'registerValueDetail', |
| 266 | query: { guid: row.registerGuid, costAssessGuid: row.guid, type: 'costAssess', daTenantGuid: row.tenantGuid } | 349 | query: { guid: row.registerGuid, costAssessGuid: row.guid, type: 'costAssess', daTenantGuid: row.tenantGuid } |
| ... | @@ -268,6 +351,71 @@ const tableBtnClick = (scope, btn) => { | ... | @@ -268,6 +351,71 @@ const tableBtnClick = (scope, btn) => { |
| 268 | } | 351 | } |
| 269 | }; | 352 | }; |
| 270 | 353 | ||
| 354 | // const tableBtnClick = (scope, btn) => { | ||
| 355 | // const type = btn.value; | ||
| 356 | // const row = scope.row; | ||
| 357 | // currTableData.value = row; | ||
| 358 | // if (type === "edit") { //草稿中\已驳回\已撤销\已通过 状态,才可以编辑。 | ||
| 359 | // localStorage.setItem('isRestart', btn.label == '重新提交' ? 'true' : ''); | ||
| 360 | // // router.push({ | ||
| 361 | // // name: 'registerStart', | ||
| 362 | // // query: { guid: row.guid, exchangeGuid: row.exchangeGuid, name: row.daName, type } | ||
| 363 | // // }); | ||
| 364 | // router.push({ | ||
| 365 | // name: 'registerValueDetail', | ||
| 366 | // query: { guid: row.registerGuid, costAssessGuid: row.guid, type: 'costAssess', daTenantGuid: row.tenantGuid, exchangeGuid: row.exchangeGuid } | ||
| 367 | // }); | ||
| 368 | // } else if (type == "delete") { | ||
| 369 | // delTableOpen("此操作将永久删除该资产登记,是否继续?", "warning"); | ||
| 370 | // } else if (type === 'revoke') { // 撤销,状态为审批中时可以撤销。 | ||
| 371 | // ElMessageBox.confirm('确定撤销该资产登记审批流程吗?', "提示", { | ||
| 372 | // confirmButtonText: "确定", | ||
| 373 | // cancelButtonText: "取消", | ||
| 374 | // type: 'warning', | ||
| 375 | // }).then(() => { | ||
| 376 | // tableInfo.value.loading = true; | ||
| 377 | // let params = { | ||
| 378 | // guid: row.approveVO.approveGuid, | ||
| 379 | // flowType: row.approveVO.flowType, | ||
| 380 | // approveStaffGuid: userData.staffGuid, | ||
| 381 | // } | ||
| 382 | // revokeFlowData(params).then((res: any) => { | ||
| 383 | // tableInfo.value.loading = false; | ||
| 384 | // if (res?.code == proxy.$passCode) { | ||
| 385 | // if (res.data) { | ||
| 386 | // ElMessage.success('该审批流程撤销成功!'); | ||
| 387 | // getTableData(); | ||
| 388 | // } else { | ||
| 389 | // ElMessage.error('该审批流程撤销失败!'); | ||
| 390 | // } | ||
| 391 | // } else { | ||
| 392 | // ElMessage.error(res.msg); | ||
| 393 | // } | ||
| 394 | // }).catch(() => { | ||
| 395 | // tableInfo.value.loading = false; | ||
| 396 | // }); | ||
| 397 | // }).catch(() => { | ||
| 398 | // ElMessage({ | ||
| 399 | // type: 'info', | ||
| 400 | // message: '已取消撤销' | ||
| 401 | // }); | ||
| 402 | // }); | ||
| 403 | // } else if (type === 'detail') { // 详情, 若是草稿中,详情就是编辑, | ||
| 404 | // // router.push({ | ||
| 405 | // // name: 'registerInfoDetail', | ||
| 406 | // // query: { guid: row.guid, name: row.daName, type: 'asset' } | ||
| 407 | // // }); | ||
| 408 | // router.push({ | ||
| 409 | // name: 'registerValueDetail', | ||
| 410 | // query: { guid: row.registerGuid, costAssessGuid: row.guid, type: 'costAssess', daTenantGuid: row.tenantGuid } | ||
| 411 | // }); | ||
| 412 | // } else if (type === 'pass') { | ||
| 413 | // passDialogInfo.value.visible = true; | ||
| 414 | // } else if (type == 'reject') { | ||
| 415 | // rejectDialogInfo.value.visible = true; | ||
| 416 | // } | ||
| 417 | // }; | ||
| 418 | |||
| 271 | const delTableOpen = (msg, type, isBatch: boolean = false) => { | 419 | const delTableOpen = (msg, type, isBatch: boolean = false) => { |
| 272 | ElMessageBox.confirm(msg, "提示", { | 420 | ElMessageBox.confirm(msg, "提示", { |
| 273 | confirmButtonText: "确定", | 421 | confirmButtonText: "确定", |
| ... | @@ -315,21 +463,74 @@ const formItems = ref([{ | ... | @@ -315,21 +463,74 @@ const formItems = ref([{ |
| 315 | options: assetListData.value, | 463 | options: assetListData.value, |
| 316 | props: { | 464 | props: { |
| 317 | value: 'guid', | 465 | value: 'guid', |
| 318 | label: 'daName' | 466 | label: 'damName' |
| 319 | }, | 467 | }, |
| 320 | visible: true, | 468 | visible: true, |
| 321 | required: true | 469 | required: true |
| 322 | }, { | 470 | }, { |
| 323 | label: '附件上传', | 471 | label: '附件上传', |
| 324 | tip: '支持格式:xls .xlsx .doc .docx .rar .zip', | 472 | tip: '支持格式:.doc .docx .rar', |
| 325 | type: 'upload-file', | 473 | type: 'upload-file', |
| 326 | required: true, | 474 | required: true, |
| 327 | accept: '.xls, .xlsx, .doc, .docx, .rar, .zip', | 475 | accept: '.doc, .docx, .rar, .png', |
| 328 | block: true, | 476 | block: true, |
| 329 | default: [], | 477 | default: [], |
| 330 | templateUrl: null, | 478 | templateUrl: null, |
| 331 | field: 'costAssessmentFile', | 479 | field: 'costAssessmentFile', |
| 332 | }]); | 480 | }, |
| 481 | // 质量评分 type: input | ||
| 482 | { | ||
| 483 | label: '质量评分', | ||
| 484 | type: 'input', | ||
| 485 | focusValue: true, | ||
| 486 | placeholder: '请输入', | ||
| 487 | field: 'qualityScore', | ||
| 488 | inputType: 'scoreNumber', | ||
| 489 | default: '', | ||
| 490 | clearable: true, | ||
| 491 | required: true, | ||
| 492 | block: false, | ||
| 493 | visible: false | ||
| 494 | }, | ||
| 495 | // 评估时间范围 | ||
| 496 | { | ||
| 497 | label: "数据时间范围", | ||
| 498 | type: "date-picker", | ||
| 499 | field: "evaluationRange", | ||
| 500 | default: '', | ||
| 501 | placeholder: "开始时间~结束时间", | ||
| 502 | clearable: true, | ||
| 503 | required: true, | ||
| 504 | visible: false | ||
| 505 | }, | ||
| 506 | // | ||
| 507 | { | ||
| 508 | label: '质量评估结果', | ||
| 509 | type: 'textarea', | ||
| 510 | placeholder: '请输入质量评估结果', | ||
| 511 | field: 'evaluationNote', | ||
| 512 | default: '', | ||
| 513 | maxlength: 250, | ||
| 514 | block: true, | ||
| 515 | focusValue: true, | ||
| 516 | clearable: true, | ||
| 517 | required: true, | ||
| 518 | visible: false | ||
| 519 | }, | ||
| 520 | { | ||
| 521 | label: '质量报告上传', | ||
| 522 | tip: '支持格式:pdf,单个文件不能超过200MB ', | ||
| 523 | type: 'upload-file', | ||
| 524 | required: true, | ||
| 525 | accept: '.pdf, .png', | ||
| 526 | block: true, | ||
| 527 | default: [], | ||
| 528 | templateUrl: null, | ||
| 529 | field: 'evaluationFile', | ||
| 530 | visible: false | ||
| 531 | }, | ||
| 532 | |||
| 533 | ]); | ||
| 333 | 534 | ||
| 334 | const formRules = ref({ | 535 | const formRules = ref({ |
| 335 | registerGuid: [ | 536 | registerGuid: [ |
| ... | @@ -373,14 +574,38 @@ const dialogInfo = ref({ | ... | @@ -373,14 +574,38 @@ const dialogInfo = ref({ |
| 373 | }, | 574 | }, |
| 374 | }); | 575 | }); |
| 375 | 576 | ||
| 577 | |||
| 578 | const handleSelectChange = (val, row, info) => { | ||
| 579 | let qualityEvaluationGuid = ''; | ||
| 580 | assetListData.value.forEach((item) => { | ||
| 581 | if (item.guid == val) { | ||
| 582 | qualityEvaluationGuid = item.qualityEvaluationGuid; | ||
| 583 | } | ||
| 584 | }); | ||
| 585 | if (!qualityEvaluationGuid) { | ||
| 586 | formItems.value[0].default = val; | ||
| 587 | formItems.value[2].visible = true; | ||
| 588 | formItems.value[3].visible = true; | ||
| 589 | formItems.value[4].visible = true; | ||
| 590 | formItems.value[5].visible = true; | ||
| 591 | } else { | ||
| 592 | formItems.value[0].default = val; | ||
| 593 | formItems.value[2].visible = false; | ||
| 594 | formItems.value[3].visible = false; | ||
| 595 | formItems.value[4].visible = false; | ||
| 596 | formItems.value[5].visible = false; | ||
| 597 | } | ||
| 598 | |||
| 599 | } | ||
| 600 | |||
| 376 | const passDialogInputChange = (val, item, inlineValue) => { | 601 | const passDialogInputChange = (val, item, inlineValue) => { |
| 377 | if (item.field == 'assessmentMoney') { | 602 | if (item.field == 'assessmentMoney') { |
| 378 | let M = ""; | 603 | let M = ""; |
| 379 | let D = ""; | 604 | let D = ""; |
| 380 | let assessmentDate = inlineValue.assessmentDate; | 605 | let assessmentDate = inlineValue.assessmentDate; |
| 381 | if (assessmentDate) { | 606 | if (assessmentDate) { |
| 382 | M = (assessmentDate.getMonth() + 1 < 10 ? '0' + (assessmentDate.getMonth() + 1) : assessmentDate.getMonth() + 1); | 607 | M = (assessmentDate.getMonth() + 1 < 10 ? '0' + (assessmentDate.getMonth() + 1) : assessmentDate.getMonth() + 1); |
| 383 | D = (assessmentDate.getDate() + 1 < 10 ? '0' + assessmentDate.getDate() : assessmentDate.getDate()); | 608 | D = (assessmentDate.getDate() + 1 < 10 ? '0' + assessmentDate.getDate() : assessmentDate.getDate()); |
| 384 | } | 609 | } |
| 385 | passFormItems.value[2].placeholder = `按照本次评估目的及价值类型,该笔数据资产在评估基准日的评估值为人民币${val}元。本次评估结论在评估基准日后一年内有效,即自${inlineValue.assessmentDate ? `${inlineValue.assessmentDate.getFullYear()}年${M}月${D}日至${inlineValue.assessmentDate.getFullYear() + 1}年${M}月${D}日` : '20*年*月*日至20*年*月*日'}止。超过一年,需重新举行资产评估。`; | 610 | passFormItems.value[2].placeholder = `按照本次评估目的及价值类型,该笔数据资产在评估基准日的评估值为人民币${val}元。本次评估结论在评估基准日后一年内有效,即自${inlineValue.assessmentDate ? `${inlineValue.assessmentDate.getFullYear()}年${M}月${D}日至${inlineValue.assessmentDate.getFullYear() + 1}年${M}月${D}日` : '20*年*月*日至20*年*月*日'}止。超过一年,需重新举行资产评估。`; |
| 386 | } else if (item.field == 'assessmentDate') { | 611 | } else if (item.field == 'assessmentDate') { |
| ... | @@ -424,14 +649,35 @@ const dialogBtnClick = (btn, info) => { | ... | @@ -424,14 +649,35 @@ const dialogBtnClick = (btn, info) => { |
| 424 | return; | 649 | return; |
| 425 | } | 650 | } |
| 426 | let daInfo = assetListData.value.find(a => a.guid == info.registerGuid); | 651 | let daInfo = assetListData.value.find(a => a.guid == info.registerGuid); |
| 427 | savePromise.value = saveCostAssess({ | 652 | let params: any = {}; |
| 428 | tenantGuid: userData.tenantGuid, | 653 | if (daInfo.qualityEvaluationGuid) { |
| 429 | registerGuid: info.registerGuid, | 654 | //通过质量评估 |
| 430 | daName: daInfo.daName, | 655 | params = { |
| 431 | registerTime: daInfo.registerTime, | 656 | immediateApprove: true, |
| 432 | issuingEntityGuid: daInfo.exchangeGuid, | 657 | tenantGuid: userData.tenantGuid, |
| 433 | costAssessmentFile: info.costAssessmentFile?.map(f => f.url) || [] | 658 | registerGuid: info.registerGuid, |
| 434 | }).then((res: any) => { | 659 | daName: daInfo.damName, |
| 660 | damGuid: daInfo.guid, | ||
| 661 | costAssessmentFile: info.costAssessmentFile?.map(f => f.url) || [], | ||
| 662 | evaluationFile: info.evaluationFile?.map(f => f.url) || [], | ||
| 663 | qualityScore: info.qualityScore, | ||
| 664 | evaluationRangeStart: info.evaluationRange ? info.evaluationRange[0] : null, | ||
| 665 | evaluationRangeEnd: info.evaluationRange ? info.evaluationRange[1] : null, | ||
| 666 | evaluationNote: info.evaluationNote, | ||
| 667 | } | ||
| 668 | } else { | ||
| 669 | //未通过质量评估 | ||
| 670 | params = { | ||
| 671 | immediateApprove: true, | ||
| 672 | tenantGuid: userData.tenantGuid, | ||
| 673 | registerGuid: info.registerGuid, | ||
| 674 | daName: daInfo.damName, | ||
| 675 | damGuid: daInfo.guid, | ||
| 676 | costAssessmentFile: info.costAssessmentFile?.map(f => f.url) || [], | ||
| 677 | } | ||
| 678 | } | ||
| 679 | console.log('daInfo', daInfo, info); | ||
| 680 | savePromise.value = saveCostAssess(params).then((res: any) => { | ||
| 435 | savePromise.value = null; | 681 | savePromise.value = null; |
| 436 | if (res?.code == proxy.$passCode) { | 682 | if (res?.code == proxy.$passCode) { |
| 437 | ElMessage.success('价值评估发起成功'); | 683 | ElMessage.success('价值评估发起成功'); |
| ... | @@ -572,15 +818,42 @@ const passDialogInfo = ref({ | ... | @@ -572,15 +818,42 @@ const passDialogInfo = ref({ |
| 572 | }, | 818 | }, |
| 573 | }); | 819 | }); |
| 574 | 820 | ||
| 821 | // const passDialogBtnClick = (btn, info) => { | ||
| 822 | // if (btn.value == 'submit') { | ||
| 823 | // costAssessAllow({ | ||
| 824 | // guid: currTableData.value.guid, | ||
| 825 | // assessmentMoney: info.assessmentMoney, | ||
| 826 | // assessmentDate: info.assessmentDate, | ||
| 827 | // assessmentNote: info.assessmentNote, | ||
| 828 | // assessmentFile: info.assessmentFile.map(f => f.url), | ||
| 829 | // }).then((res: any) => { | ||
| 830 | // if (res?.code == proxy.$passCode) { | ||
| 831 | // if (res.data) { | ||
| 832 | // ElMessage.success('审批成功'); | ||
| 833 | // passDialogInfo.value.visible = false; | ||
| 834 | // getTableData(); | ||
| 835 | // } else { | ||
| 836 | // ElMessage.error('审批失败'); | ||
| 837 | // } | ||
| 838 | // } else { | ||
| 839 | // ElMessage.error(res.msg); | ||
| 840 | // } | ||
| 841 | // }) | ||
| 842 | // } else if (btn.value == 'cancel') { | ||
| 843 | // passDialogInfo.value.visible = false; | ||
| 844 | // } | ||
| 845 | // }; | ||
| 575 | const passDialogBtnClick = (btn, info) => { | 846 | const passDialogBtnClick = (btn, info) => { |
| 576 | if (btn.value == 'submit') { | 847 | if (btn.value == 'submit') { |
| 577 | costAssessAllow({ | 848 | tableInfo.value.loading = true; |
| 578 | guid: currTableData.value.guid, | 849 | let params = { |
| 579 | assessmentMoney: info.assessmentMoney, | 850 | guid: currTableData.value.approveVO.approveGuid, |
| 580 | assessmentDate: info.assessmentDate, | 851 | flowType: currTableData.value.approveVO.flowType, |
| 581 | assessmentNote: info.assessmentNote, | 852 | approveSuggest: info.approveSuggest, |
| 582 | assessmentFile: info.assessmentFile.map(f => f.url), | 853 | approveStaffGuid: userData.staffGuid, |
| 583 | }).then((res: any) => { | 854 | } |
| 855 | passFlowData(params).then((res: any) => { | ||
| 856 | tableInfo.value.loading = false; | ||
| 584 | if (res?.code == proxy.$passCode) { | 857 | if (res?.code == proxy.$passCode) { |
| 585 | if (res.data) { | 858 | if (res.data) { |
| 586 | ElMessage.success('审批成功'); | 859 | ElMessage.success('审批成功'); |
| ... | @@ -592,12 +865,17 @@ const passDialogBtnClick = (btn, info) => { | ... | @@ -592,12 +865,17 @@ const passDialogBtnClick = (btn, info) => { |
| 592 | } else { | 865 | } else { |
| 593 | ElMessage.error(res.msg); | 866 | ElMessage.error(res.msg); |
| 594 | } | 867 | } |
| 595 | }) | 868 | }).catch(() => { |
| 869 | tableInfo.value.loading = false; | ||
| 870 | }); | ||
| 596 | } else if (btn.value == 'cancel') { | 871 | } else if (btn.value == 'cancel') { |
| 597 | passDialogInfo.value.visible = false; | 872 | passDialogInfo.value.visible = false; |
| 598 | } | 873 | } |
| 599 | }; | 874 | }; |
| 600 | 875 | ||
| 876 | |||
| 877 | |||
| 878 | |||
| 601 | const rejectDialogInfo = ref({ | 879 | const rejectDialogInfo = ref({ |
| 602 | visible: false, | 880 | visible: false, |
| 603 | size: 460, | 881 | size: 460, |
| ... | @@ -634,31 +912,66 @@ const rejectDialogInfo = ref({ | ... | @@ -634,31 +912,66 @@ const rejectDialogInfo = ref({ |
| 634 | }, | 912 | }, |
| 635 | }); | 913 | }); |
| 636 | 914 | ||
| 915 | // const rejectDialogBtnClick = (btn, info) => { | ||
| 916 | // if (btn.value == 'submit') { | ||
| 917 | // if (info.approveSuggest == '') { | ||
| 918 | // ElMessage.error('请填写驳回理由'); | ||
| 919 | // return | ||
| 920 | // } | ||
| 921 | // tableInfo.value.loading = true; | ||
| 922 | // let params = { | ||
| 923 | // bizGuid: currTableData.value.guid, | ||
| 924 | // funcCode: currTableData.value.funcCode, | ||
| 925 | // approveSuggest: info.approveSuggest | ||
| 926 | // } | ||
| 927 | // registerApproveBackup(params).then((res: any) => { | ||
| 928 | // tableInfo.value.loading = false; | ||
| 929 | // if (res?.code == proxy.$passCode) { | ||
| 930 | // if (res.data) { | ||
| 931 | // ElMessage.success('驳回成功'); | ||
| 932 | // getTableData(); | ||
| 933 | // rejectDialogInfo.value.visible = false; | ||
| 934 | // } else { | ||
| 935 | // ElMessage.error('驳回失败'); | ||
| 936 | // } | ||
| 937 | // } else { | ||
| 938 | // ElMessage.error(res.msg); | ||
| 939 | // } | ||
| 940 | // }); | ||
| 941 | // } else if (btn.value == 'cancel') { | ||
| 942 | // rejectDialogInfo.value.visible = false; | ||
| 943 | // } | ||
| 944 | // }; | ||
| 945 | |||
| 637 | const rejectDialogBtnClick = (btn, info) => { | 946 | const rejectDialogBtnClick = (btn, info) => { |
| 638 | if (btn.value == 'submit') { | 947 | if (btn.value == 'submit') { |
| 639 | if (info.approveSuggest == '') { | 948 | if (info.approveSuggest == '') { |
| 640 | ElMessage.error('请填写驳回理由'); | 949 | ElMessage.error('请填写驳回理由'); |
| 641 | return | 950 | return |
| 642 | } | 951 | } |
| 952 | console.log('currTableData', currTableData.value, info); | ||
| 643 | tableInfo.value.loading = true; | 953 | tableInfo.value.loading = true; |
| 644 | let params = { | 954 | let params = { |
| 645 | bizGuid: currTableData.value.guid, | 955 | guid: currTableData.value.approveVO.approveGuid, |
| 646 | funcCode: currTableData.value.funcCode, | 956 | flowType: currTableData.value.approveVO.flowType, |
| 647 | approveSuggest: info.approveSuggest | 957 | approveSuggest: info.approveSuggest, |
| 958 | approveStaffGuid: userData.staffGuid, | ||
| 648 | } | 959 | } |
| 649 | registerApproveBackup(params).then((res: any) => { | 960 | rejectFlowData(params).then((res: any) => { |
| 650 | tableInfo.value.loading = false; | 961 | tableInfo.value.loading = false; |
| 651 | if (res?.code == proxy.$passCode) { | 962 | if (res?.code == proxy.$passCode) { |
| 652 | if (res.data) { | 963 | if (res.data) { |
| 653 | ElMessage.success('驳回成功'); | 964 | ElMessage.success('驳回成功'); |
| 654 | getTableData(); | ||
| 655 | rejectDialogInfo.value.visible = false; | 965 | rejectDialogInfo.value.visible = false; |
| 966 | getTableData(); | ||
| 656 | } else { | 967 | } else { |
| 657 | ElMessage.error('驳回失败'); | 968 | ElMessage.error('驳回失败'); |
| 658 | } | 969 | } |
| 659 | } else { | 970 | } else { |
| 660 | ElMessage.error(res.msg); | 971 | ElMessage.error(res.msg); |
| 661 | } | 972 | } |
| 973 | }).catch(() => { | ||
| 974 | tableInfo.value.loading = false; | ||
| 662 | }); | 975 | }); |
| 663 | } else if (btn.value == 'cancel') { | 976 | } else if (btn.value == 'cancel') { |
| 664 | rejectDialogInfo.value.visible = false; | 977 | rejectDialogInfo.value.visible = false; |
| ... | @@ -678,7 +991,7 @@ const rejectDialogBtnClick = (btn, info) => { | ... | @@ -678,7 +991,7 @@ const rejectDialogBtnClick = (btn, info) => { |
| 678 | <div class="table_panel_wrap"> | 991 | <div class="table_panel_wrap"> |
| 679 | <Table :tableInfo="tableInfo" @tableBtnClick="tableBtnClick" @tablePageChange="tablePageChange" /> | 992 | <Table :tableInfo="tableInfo" @tableBtnClick="tableBtnClick" @tablePageChange="tablePageChange" /> |
| 680 | </div> | 993 | </div> |
| 681 | <Dialog :dialogInfo="dialogInfo" @btnClick="dialogBtnClick" /> | 994 | <Dialog :dialogInfo="dialogInfo" @btnClick="dialogBtnClick" @selectChange="handleSelectChange" /> |
| 682 | <Dialog :dialogInfo="passDialogInfo" @btnClick="passDialogBtnClick" @inputChange="passDialogInputChange" /> | 995 | <Dialog :dialogInfo="passDialogInfo" @btnClick="passDialogBtnClick" @inputChange="passDialogInputChange" /> |
| 683 | <Dialog :dialogInfo="rejectDialogInfo" @btnClick="rejectDialogBtnClick" /> | 996 | <Dialog :dialogInfo="rejectDialogInfo" @btnClick="rejectDialogBtnClick" /> |
| 684 | </div> | 997 | </div> |
| ... | @@ -693,4 +1006,4 @@ const rejectDialogBtnClick = (btn, info) => { | ... | @@ -693,4 +1006,4 @@ const rejectDialogBtnClick = (btn, info) => { |
| 693 | // .el-upload__tip { | 1006 | // .el-upload__tip { |
| 694 | // margin-left: 0px; | 1007 | // margin-left: 0px; |
| 695 | // } | 1008 | // } |
| 696 | // }</style> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1009 | // }</style> | ... | ... |
| ... | @@ -9,7 +9,7 @@ import useUserStore from "@/store/modules/user"; | ... | @@ -9,7 +9,7 @@ import useUserStore from "@/store/modules/user"; |
| 9 | import { ElMessage, ElMessageBox } from "element-plus"; | 9 | import { ElMessage, ElMessageBox } from "element-plus"; |
| 10 | 10 | ||
| 11 | import useDataAssetStore from "@/store/modules/dataAsset"; | 11 | import useDataAssetStore from "@/store/modules/dataAsset"; |
| 12 | import { getListingList, listingDelete, listingUpdateStatus, filterVal, getParamsDataList, getListingCount, productRejectFlowData } from "@/api/modules/dataProduct"; | 12 | import { getListingList, listingDelete, listingUpdateStatus, filterVal, getParamsDataList, getListingCount, productRejectFlowData, listingUpdateGateway, listingSave, listingUpdate } from "@/api/modules/dataProduct"; |
| 13 | import { TableColumnWidth } from '@/utils/enum'; | 13 | import { TableColumnWidth } from '@/utils/enum'; |
| 14 | 14 | ||
| 15 | import TableTools from "@/components/Tools/table_tools.vue"; | 15 | import TableTools from "@/components/Tools/table_tools.vue"; |
| ... | @@ -20,6 +20,7 @@ import { | ... | @@ -20,6 +20,7 @@ import { |
| 20 | changeNum, | 20 | changeNum, |
| 21 | } from "@/utils/common"; | 21 | } from "@/utils/common"; |
| 22 | import { passFlowData, rejectFlowData, revokeFlowData } from "@/api/modules/workFlowService"; | 22 | import { passFlowData, rejectFlowData, revokeFlowData } from "@/api/modules/workFlowService"; |
| 23 | import { content } from "html2canvas/dist/types/css/property-descriptors/content"; | ||
| 23 | 24 | ||
| 24 | const { proxy } = getCurrentInstance() as any; | 25 | const { proxy } = getCurrentInstance() as any; |
| 25 | const router = useRouter(); | 26 | const router = useRouter(); |
| ... | @@ -149,7 +150,6 @@ const tableInfo = ref({ | ... | @@ -149,7 +150,6 @@ const tableInfo = ref({ |
| 149 | if (flowState !== 1) { | 150 | if (flowState !== 1) { |
| 150 | list.push({ label: "详情", value: "detail" }) | 151 | list.push({ label: "详情", value: "detail" }) |
| 151 | } | 152 | } |
| 152 | |||
| 153 | return list | 153 | return list |
| 154 | }, | 154 | }, |
| 155 | } | 155 | } |
| ... | @@ -359,6 +359,92 @@ const tableBtnClick = (scope, btn) => { | ... | @@ -359,6 +359,92 @@ const tableBtnClick = (scope, btn) => { |
| 359 | if (type == 'up') { | 359 | if (type == 'up') { |
| 360 | // tableSwitchChange('Y', scope, 'listingStatus') | 360 | // tableSwitchChange('Y', scope, 'listingStatus') |
| 361 | console.log('上架', scope) | 361 | console.log('上架', scope) |
| 362 | let params: any = {} | ||
| 363 | if (scope.row.exchangeGuid) { | ||
| 364 | // 数交所上架 [params.commitmentLetterInfo[0].url] | ||
| 365 | params = { | ||
| 366 | guid: scope.row.guid, | ||
| 367 | accreditFile: [scope.row.accreditFile[0].url], | ||
| 368 | caseNumber: scope.row.caseNumber, | ||
| 369 | commitmentLetter: [scope.row.commitmentLetter[0].url], | ||
| 370 | content: scope.row.productDesc, | ||
| 371 | costAssessmentInstitution: scope.row.costAssessmentInstitution, | ||
| 372 | costAssessmentInstitutionGuid: scope.row.costAssessmentInstitutionGuid, | ||
| 373 | coverageArea: scope.row.coverageArea, | ||
| 374 | damCode: scope.row.damCode, | ||
| 375 | damGuid: scope.row.damGuid, | ||
| 376 | damName: scope.row.damName, | ||
| 377 | damType: scope.row.damType, | ||
| 378 | dataScale: scope.row.dataScale, | ||
| 379 | deliveryWay: scope.row.deliveryWay, | ||
| 380 | evaluationFile: [scope.row.evaluationFile[0].url], | ||
| 381 | exchangeGuid: scope.row.exchangeGuid, | ||
| 382 | feeDesc: scope.row.feeDesc, | ||
| 383 | immediateApprove: true, | ||
| 384 | priceUnit: scope.row.priceUnit, | ||
| 385 | pricingWay: scope.row.pricingWay, | ||
| 386 | productPic: scope.row.productPic, | ||
| 387 | productPrice: scope.row.productPrice, | ||
| 388 | qualityEvaluationInstitution: scope.row.qualityEvaluationInstitution, | ||
| 389 | qualityEvaluationInstitutionGuid: scope.row.qualityEvaluationInstitutionGuid, | ||
| 390 | timeAreaStart: scope.row.timeAreaStart, | ||
| 391 | timeAreaEnd: scope.row.timeAreaEnd, | ||
| 392 | registrationCertificate: scope.row.registrationCertificate, | ||
| 393 | productDetail: [scope.row.productDetail[0].url], | ||
| 394 | assessmentFile: [scope.row.assessmentFile[0].url], | ||
| 395 | } | ||
| 396 | listingUpdate(params).then((res: any) => { | ||
| 397 | if (res.code == proxy.$passCode) { | ||
| 398 | ElMessage({ | ||
| 399 | type: "success", | ||
| 400 | message: '提交成功', | ||
| 401 | }); | ||
| 402 | getTableData(); | ||
| 403 | } else { | ||
| 404 | ElMessage({ | ||
| 405 | type: "error", | ||
| 406 | message: res.msg, | ||
| 407 | }); | ||
| 408 | } | ||
| 409 | }) | ||
| 410 | } else { | ||
| 411 | // 门户数据专区上架 | ||
| 412 | params = { | ||
| 413 | guid: scope.row.guid, | ||
| 414 | caseNumber: scope.row.caseNumber, | ||
| 415 | content: scope.row.productDesc, | ||
| 416 | coverageArea: scope.row.coverageArea, | ||
| 417 | damGuid: scope.row.damGuid, | ||
| 418 | damName: scope.row.damName, | ||
| 419 | damType: scope.row.damType, | ||
| 420 | dataScale: scope.row.dataScale, | ||
| 421 | deliveryWay: scope.row.deliveryWay, | ||
| 422 | feeDesc: scope.row.feeDesc, | ||
| 423 | immediateApprove: true, | ||
| 424 | priceUnit: scope.row.priceUnit, | ||
| 425 | pricingWay: scope.row.pricingWay, | ||
| 426 | productPic: scope.row.productPic, | ||
| 427 | productPrice: scope.row.productPrice, | ||
| 428 | timeAreaStart: scope.row.timeAreaStart, | ||
| 429 | timeAreaEnd: scope.row.timeAreaEnd, | ||
| 430 | } | ||
| 431 | listingUpdateGateway(params).then((res: any) => { | ||
| 432 | if (res.code == proxy.$passCode) { | ||
| 433 | ElMessage({ | ||
| 434 | type: "success", | ||
| 435 | message: '提交成功', | ||
| 436 | }); | ||
| 437 | getTableData(); | ||
| 438 | } else { | ||
| 439 | ElMessage({ | ||
| 440 | type: "error", | ||
| 441 | message: res.msg, | ||
| 442 | }); | ||
| 443 | } | ||
| 444 | }) | ||
| 445 | console.log('上架', scope) | ||
| 446 | } | ||
| 447 | |||
| 362 | } | 448 | } |
| 363 | if (type == 'down') { | 449 | if (type == 'down') { |
| 364 | // 需要二次确认 | 450 | // 需要二次确认 |
| ... | @@ -394,7 +480,7 @@ const passSubmit = () => { | ... | @@ -394,7 +480,7 @@ const passSubmit = () => { |
| 394 | formInfo.value.items.forEach((item) => { | 480 | formInfo.value.items.forEach((item) => { |
| 395 | assetsSafeInfo.value.forEach((item1) => { | 481 | assetsSafeInfo.value.forEach((item1) => { |
| 396 | if (item.label == item1.label) { | 482 | if (item.label == item1.label) { |
| 397 | complianceInfoMap[`"${item1.value}"`] = listingFormRef.value.formInline[item.field]; | 483 | complianceInfoMap[item1.value] = listingFormRef.value.formInline[item.field]; |
| 398 | } | 484 | } |
| 399 | }) | 485 | }) |
| 400 | }) | 486 | }) |
| ... | @@ -404,6 +490,7 @@ const passSubmit = () => { | ... | @@ -404,6 +490,7 @@ const passSubmit = () => { |
| 404 | approveSuggest: approveSuggest.value, | 490 | approveSuggest: approveSuggest.value, |
| 405 | approveStaffGuid: userData.staffGuid, | 491 | approveStaffGuid: userData.staffGuid, |
| 406 | complianceInfoMap: complianceInfoMap, | 492 | complianceInfoMap: complianceInfoMap, |
| 493 | approveState: 'Y', | ||
| 407 | bizGuid: row.approveVO.bizGuid, | 494 | bizGuid: row.approveVO.bizGuid, |
| 408 | }).then((res: any) => { | 495 | }).then((res: any) => { |
| 409 | if (res.code == '00000') { | 496 | if (res.code == '00000') { |
| ... | @@ -444,7 +531,7 @@ const rejectSubmit = async () => { | ... | @@ -444,7 +531,7 @@ const rejectSubmit = async () => { |
| 444 | formInfo.value.items.forEach((item) => { | 531 | formInfo.value.items.forEach((item) => { |
| 445 | assetsSafeInfo.value.forEach((item1) => { | 532 | assetsSafeInfo.value.forEach((item1) => { |
| 446 | if (item.label == item1.label) { | 533 | if (item.label == item1.label) { |
| 447 | complianceInfoMap[`"${item1.value}"`] = listingFormRef.value.formInline[item.field]; | 534 | complianceInfoMap[item1.value] = listingFormRef.value.formInline[item.field]; |
| 448 | } | 535 | } |
| 449 | }) | 536 | }) |
| 450 | }) | 537 | }) |
| ... | @@ -455,6 +542,7 @@ const rejectSubmit = async () => { | ... | @@ -455,6 +542,7 @@ const rejectSubmit = async () => { |
| 455 | approveStaffGuid: userData.staffGuid, | 542 | approveStaffGuid: userData.staffGuid, |
| 456 | complianceInfoMap: complianceInfoMap, | 543 | complianceInfoMap: complianceInfoMap, |
| 457 | bizGuid: row.approveVO.bizGuid, | 544 | bizGuid: row.approveVO.bizGuid, |
| 545 | approveState: 'R' | ||
| 458 | }).then((res: any) => { | 546 | }).then((res: any) => { |
| 459 | if (res.code == '00000') { | 547 | if (res.code == '00000') { |
| 460 | fullscreenLoading.value = false; | 548 | fullscreenLoading.value = false; | ... | ... |
| ... | @@ -218,6 +218,7 @@ const formInfo = ref<any>({ | ... | @@ -218,6 +218,7 @@ const formInfo = ref<any>({ |
| 218 | field: 'dataScale', | 218 | field: 'dataScale', |
| 219 | maxlength: 19, | 219 | maxlength: 19, |
| 220 | regexp: /\D/g, | 220 | regexp: /\D/g, |
| 221 | inputType: 'integerWithComma', | ||
| 221 | default: '', | 222 | default: '', |
| 222 | disabled: false, | 223 | disabled: false, |
| 223 | required: true | 224 | required: true |
| ... | @@ -227,6 +228,9 @@ const formInfo = ref<any>({ | ... | @@ -227,6 +228,9 @@ const formInfo = ref<any>({ |
| 227 | placeholder: '请输入', | 228 | placeholder: '请输入', |
| 228 | field: 'caseNumber', | 229 | field: 'caseNumber', |
| 229 | default: '', | 230 | default: '', |
| 231 | inputType: 'integerWithComma', | ||
| 232 | maxlength: 19, | ||
| 233 | regexp: /\D/g, | ||
| 230 | disabled: false, | 234 | disabled: false, |
| 231 | required: false | 235 | required: false |
| 232 | }, { | 236 | }, { |
| ... | @@ -834,10 +838,10 @@ const submitForm = (btn, formEl, tosub = false) => { | ... | @@ -834,10 +838,10 @@ const submitForm = (btn, formEl, tosub = false) => { |
| 834 | // if (params.content) { | 838 | // if (params.content) { |
| 835 | // params.productDesc = truncateHTML(params.content, 400); | 839 | // params.productDesc = truncateHTML(params.content, 400); |
| 836 | // } | 840 | // } |
| 837 | console.log(params, formInfo.value.items.at(4).defaultValue, formInfo.value, '-----------------'); | 841 | console.log(params, formInfo.value.items.at(3).defaultValue, formInfo.value, '-----------------'); |
| 838 | params.dataScale = formInfo.value.items.at(4).defaultValue || formInfo.value.items.at(4).default; | 842 | params.caseNumber = parseInt(params.caseNumber.replace(/,/g, ''), 10), |
| 839 | params.caseNumber = formInfo.value.items.at(5).defaultValue || formInfo.value.items.at(4).default; | 843 | params.dataScale = parseInt(params.dataScale.replace(/,/g, ''), 10), |
| 840 | params.timeAreaStart = params.dateRange ? params.dateRange[0] : ''; | 844 | params.timeAreaStart = params.dateRange ? params.dateRange[0] : ''; |
| 841 | params.timeAreaEnd = params.dateRange ? params.dateRange[1] : ''; | 845 | params.timeAreaEnd = params.dateRange ? params.dateRange[1] : ''; |
| 842 | // 删除dateRange字段 | 846 | // 删除dateRange字段 |
| 843 | delete params.dateRange; | 847 | delete params.dateRange; |
| ... | @@ -960,7 +964,7 @@ const submitForm = (btn, formEl, tosub = false) => { | ... | @@ -960,7 +964,7 @@ const submitForm = (btn, formEl, tosub = false) => { |
| 960 | params.registrationCertificate = params.registrationCertificateInfo.length ? { name: params.registrationCertificateInfo[0].name, url: params.registrationCertificateInfo[0].url } : {}; | 964 | params.registrationCertificate = params.registrationCertificateInfo.length ? { name: params.registrationCertificateInfo[0].name, url: params.registrationCertificateInfo[0].url } : {}; |
| 961 | params.accreditFile = params.accreditFileInfo.length ? [params.accreditFileInfo[0].url] : null; | 965 | params.accreditFile = params.accreditFileInfo.length ? [params.accreditFileInfo[0].url] : null; |
| 962 | params.commitmentLetter = params.commitmentLetterInfo.length ? [params.commitmentLetterInfo[0].url] : []; | 966 | params.commitmentLetter = params.commitmentLetterInfo.length ? [params.commitmentLetterInfo[0].url] : []; |
| 963 | params.costAssessmentFile = params.costAssessmentFileInfo.length ? [params.costAssessmentFileInfo[0].url] : []; | 967 | params.assessmentFile = params.costAssessmentFileInfo.length ? [params.costAssessmentFileInfo[0].url] : []; |
| 964 | params.productDetail = params.productDetailInfo.length ? [params.productDetailInfo[0].url] : []; | 968 | params.productDetail = params.productDetailInfo.length ? [params.productDetailInfo[0].url] : []; |
| 965 | params.evaluationFile = params.qualityEvaluationFileInfo.length ? [params.qualityEvaluationFileInfo[0].url] : []; | 969 | params.evaluationFile = params.qualityEvaluationFileInfo.length ? [params.qualityEvaluationFileInfo[0].url] : []; |
| 966 | params.exchangeGuid = route.query.exchangeGuid; | 970 | params.exchangeGuid = route.query.exchangeGuid; | ... | ... |
| ... | @@ -18,6 +18,7 @@ import { changeNum } from "@/utils/common"; | ... | @@ -18,6 +18,7 @@ import { changeNum } from "@/utils/common"; |
| 18 | import useUserStore from "@/store/modules/user"; | 18 | import useUserStore from "@/store/modules/user"; |
| 19 | import Moment from "moment"; | 19 | import Moment from "moment"; |
| 20 | import platformIndexNewBigScreen from "./platformIndexNewBigScreen.vue"; | 20 | import platformIndexNewBigScreen from "./platformIndexNewBigScreen.vue"; |
| 21 | import { getDownFileSignByUrl, obsDownloadRequest, parseAndDecodeUrl } from "@/api/modules/obsService"; | ||
| 21 | // import platformIndex from "./data_asset/platformIndex.vue"; | 22 | // import platformIndex from "./data_asset/platformIndex.vue"; |
| 22 | 23 | ||
| 23 | const router = useRouter(); | 24 | const router = useRouter(); |
| ... | @@ -415,7 +416,7 @@ const assetTableRef = ref(); | ... | @@ -415,7 +416,7 @@ const assetTableRef = ref(); |
| 415 | const rolltimer = ref(); | 416 | const rolltimer = ref(); |
| 416 | 417 | ||
| 417 | onBeforeMount(() => { | 418 | onBeforeMount(() => { |
| 418 | if (userData.tenantType == 1) { | 419 | if (userData.tenantType != 1) { |
| 419 | // 获取数据表格 | 420 | // 获取数据表格 |
| 420 | getAssetTableData(); | 421 | getAssetTableData(); |
| 421 | 422 | ||
| ... | @@ -486,6 +487,46 @@ function fetchQualityInfo() { | ... | @@ -486,6 +487,46 @@ function fetchQualityInfo() { |
| 486 | } | 487 | } |
| 487 | 488 | ||
| 488 | // 获取注册文档 URL | 489 | // 获取注册文档 URL |
| 490 | // function fetchRegisterUrl() { | ||
| 491 | // docUrlLoading.value = true; | ||
| 492 | // getRegisterUrl({ | ||
| 493 | // startTime: startTime.value || '', | ||
| 494 | // endTime: endTime.value || '', | ||
| 495 | // }).then((res: any) => { | ||
| 496 | // docUrlLoading.value = false; | ||
| 497 | // if (res.code == proxy.$passCode) { | ||
| 498 | // const data = res.data || []; | ||
| 499 | // if (data.length) { | ||
| 500 | // const promises = data.map(async (d) => { | ||
| 501 | // d.documentTypeDesc = d.documentType === 1 ? 'A证' : d.documentType === 2 ? 'B证' : 'C证'; | ||
| 502 | |||
| 503 | // // const refSignInfo: any = await getDownFileSignByUrl(parseAndDecodeUrl(d.documentFile[0]).fileName); | ||
| 504 | // // if (!refSignInfo?.data) { | ||
| 505 | // // refSignInfo?.msg && ElMessage.error(refSignInfo?.msg); | ||
| 506 | // // return; | ||
| 507 | // // } | ||
| 508 | // // const res: any = await obsDownloadRequest(refSignInfo?.data); | ||
| 509 | // return getImageContent(d.documentFile[0]).then((res: any) => (res ? URL.createObjectURL(res) : null)); | ||
| 510 | // }); | ||
| 511 | |||
| 512 | // Promise.all(promises).then((urls: any[]) => { | ||
| 513 | // docUrl.value = urls; | ||
| 514 | // docUrlList.value = urls.map((url) => [{ url }]); | ||
| 515 | // nextTick(() => { | ||
| 516 | // processImgDesc(); | ||
| 517 | // }); | ||
| 518 | // }); | ||
| 519 | // } else { | ||
| 520 | // docUrl.value = []; | ||
| 521 | // docUrlList.value = []; | ||
| 522 | // } | ||
| 523 | // } else { | ||
| 524 | // ElMessage.error(res.msg); | ||
| 525 | // } | ||
| 526 | // }); | ||
| 527 | // } | ||
| 528 | |||
| 529 | // 获取注册文档 URL | ||
| 489 | function fetchRegisterUrl() { | 530 | function fetchRegisterUrl() { |
| 490 | docUrlLoading.value = true; | 531 | docUrlLoading.value = true; |
| 491 | getRegisterUrl({ | 532 | getRegisterUrl({ |
| ... | @@ -496,9 +537,19 @@ function fetchRegisterUrl() { | ... | @@ -496,9 +537,19 @@ function fetchRegisterUrl() { |
| 496 | if (res.code == proxy.$passCode) { | 537 | if (res.code == proxy.$passCode) { |
| 497 | const data = res.data || []; | 538 | const data = res.data || []; |
| 498 | if (data.length) { | 539 | if (data.length) { |
| 499 | const promises = data.map((d) => { | 540 | console.log(data, 'data'); |
| 541 | const promises = data.map(async (d) => { | ||
| 500 | d.documentTypeDesc = d.documentType === 1 ? 'A证' : d.documentType === 2 ? 'B证' : 'C证'; | 542 | d.documentTypeDesc = d.documentType === 1 ? 'A证' : d.documentType === 2 ? 'B证' : 'C证'; |
| 501 | return getImageContent(d.documentFile[0]).then((res: any) => (res ? URL.createObjectURL(res) : null)); | 543 | |
| 544 | // 使用注释替换的代码逻辑 | ||
| 545 | const refSignInfo: any = await getDownFileSignByUrl(parseAndDecodeUrl(d.documentFile[0]).fileName); | ||
| 546 | if (!refSignInfo?.data) { | ||
| 547 | refSignInfo?.msg && ElMessage.error(refSignInfo?.msg); | ||
| 548 | return null; | ||
| 549 | } | ||
| 550 | const res: any = await obsDownloadRequest(refSignInfo?.data); | ||
| 551 | console.log(res, 'res'); | ||
| 552 | return res ? URL.createObjectURL(res) : null; | ||
| 502 | }); | 553 | }); |
| 503 | 554 | ||
| 504 | Promise.all(promises).then((urls: any[]) => { | 555 | Promise.all(promises).then((urls: any[]) => { |
| ... | @@ -518,6 +569,7 @@ function fetchRegisterUrl() { | ... | @@ -518,6 +569,7 @@ function fetchRegisterUrl() { |
| 518 | }); | 569 | }); |
| 519 | } | 570 | } |
| 520 | 571 | ||
| 572 | |||
| 521 | const processImgDesc = () => { | 573 | const processImgDesc = () => { |
| 522 | let domImg = document.getElementById('register-img'); | 574 | let domImg = document.getElementById('register-img'); |
| 523 | if (!domImg) { | 575 | if (!domImg) { |
| ... | @@ -648,7 +700,7 @@ const handleChangeTime = (val) => { | ... | @@ -648,7 +700,7 @@ const handleChangeTime = (val) => { |
| 648 | 700 | ||
| 649 | <template> | 701 | <template> |
| 650 | <div style="width: 100%;height: 100%"> | 702 | <div style="width: 100%;height: 100%"> |
| 651 | <div class="right-filter-main" v-if="userData.tenantType == 1"> | 703 | <div class="right-filter-main" v-if="userData.tenantType != 1"> |
| 652 | <div class="right-filter"> | 704 | <div class="right-filter"> |
| 653 | <div class="filter-btns"> | 705 | <div class="filter-btns"> |
| 654 | <div class="btn" :class="{ 'is-active': filterDate == 'today' }" @click="handleFilterClick('today')">今日</div> | 706 | <div class="btn" :class="{ 'is-active': filterDate == 'today' }" @click="handleFilterClick('today')">今日</div> |
| ... | @@ -662,7 +714,7 @@ const handleChangeTime = (val) => { | ... | @@ -662,7 +714,7 @@ const handleChangeTime = (val) => { |
| 662 | ref="datePickerRef" /> | 714 | ref="datePickerRef" /> |
| 663 | </div> | 715 | </div> |
| 664 | </div> | 716 | </div> |
| 665 | <div v-if="userData.tenantType == 1" class="main-content"> | 717 | <div v-if="userData.tenantType != 1" class="main-content"> |
| 666 | <div class="one-row"> | 718 | <div class="one-row"> |
| 667 | <div class="row-per"> | 719 | <div class="row-per"> |
| 668 | <div class="header"> | 720 | <div class="header"> |
| ... | @@ -778,9 +830,9 @@ const handleChangeTime = (val) => { | ... | @@ -778,9 +830,9 @@ const handleChangeTime = (val) => { |
| 778 | <el-image class="top-img" :src="img.url" :zoom-rate="1.2" :max-scale="10" :min-scale="0.2" | 830 | <el-image class="top-img" :src="img.url" :zoom-rate="1.2" :max-scale="10" :min-scale="0.2" |
| 779 | :preview-src-list="docUrl" :initial-index="i" :preview-teleported="true" /> | 831 | :preview-src-list="docUrl" :initial-index="i" :preview-teleported="true" /> |
| 780 | <div class="right-content"> | 832 | <div class="right-content"> |
| 781 | <div class="title">{{ docData[i].damName }}</div> | 833 | <div class="title">{{ docData[i]?.damName || '--' }}</div> |
| 782 | <div class="desc">{{ docData[i].applicationScenarios || '--' }}</div> | 834 | <div class="desc">{{ docData[i]?.applicationScenarios || '--' }}</div> |
| 783 | <div class="desc1">{{ docData[i].issuingEntity || '--' }}</div> | 835 | <div class="desc1">{{ docData[i]?.issuingEntity || '--' }}</div> |
| 784 | <!-- <el-tag class="dam-tag">{{ docData[i].documentTypeDesc }}</el-tag> --> | 836 | <!-- <el-tag class="dam-tag">{{ docData[i].documentTypeDesc }}</el-tag> --> |
| 785 | </div> | 837 | </div> |
| 786 | </template> | 838 | </template> |
| ... | @@ -818,7 +870,7 @@ const handleChangeTime = (val) => { | ... | @@ -818,7 +870,7 @@ const handleChangeTime = (val) => { |
| 818 | </div> | 870 | </div> |
| 819 | </div> | 871 | </div> |
| 820 | <!-- <platformIndex v-else-if="userData.tenantType != 1" /> --> | 872 | <!-- <platformIndex v-else-if="userData.tenantType != 1" /> --> |
| 821 | <platformIndexNewBigScreen v-else-if="userData.tenantType != 1" /> | 873 | <platformIndexNewBigScreen v-else-if="userData.tenantType == 1" /> |
| 822 | <div v-else class="main-placeholder"> | 874 | <div v-else class="main-placeholder"> |
| 823 | <img width="210" height="100" src="../../public/swzl_logo.png" /> | 875 | <img width="210" height="100" src="../../public/swzl_logo.png" /> |
| 824 | </div> | 876 | </div> | ... | ... |
-
Please register or sign in to post a comment