fix
Showing
5 changed files
with
95 additions
and
26 deletions
| ... | @@ -216,6 +216,14 @@ const pageChange = (page) => { | ... | @@ -216,6 +216,14 @@ const pageChange = (page) => { |
| 216 | const tableRowClassName1 = ({ row, rowIndex }) => { | 216 | const tableRowClassName1 = ({ row, rowIndex }) => { |
| 217 | return row.isAlter == "Y" ? "primary" : "" | 217 | return row.isAlter == "Y" ? "primary" : "" |
| 218 | } | 218 | } |
| 219 | const handleClickEvent = (scope, item) => { | ||
| 220 | if (item.getName(scope) === '--') return; // 如果是 '--',直接拦截,不执行点击事件 | ||
| 221 | if (item.click && !item.disabled && !scope.row.disabled) { | ||
| 222 | item.click(scope, { label: item.label, value: item.value }); | ||
| 223 | } else { | ||
| 224 | handleClick(scope, { label: item.label, value: item.value }); | ||
| 225 | } | ||
| 226 | } | ||
| 219 | 227 | ||
| 220 | onMounted(() => { | 228 | onMounted(() => { |
| 221 | // setTimeout(() => { | 229 | // setTimeout(() => { |
| ... | @@ -330,12 +338,30 @@ onMounted(() => { | ... | @@ -330,12 +338,30 @@ onMounted(() => { |
| 330 | <!-- {{ scope.row[item.field] }} --> | 338 | <!-- {{ scope.row[item.field] }} --> |
| 331 | </template> | 339 | </template> |
| 332 | <template #default="scope" v-else-if="item.type == 'text_btn'"> | 340 | <template #default="scope" v-else-if="item.type == 'text_btn'"> |
| 333 | <span class="text_btn" v-if="scope.row[item.field] != null" :class="[item.class, scope.row.cellClass]" | 341 | <span v-if="scope.row[item.field] != null" :class="[ |
| 342 | (item.getName(scope) === '--' || item.getName(scope) === null) ? '' : 'text_btn', | ||
| 343 | item.class, | ||
| 344 | scope.row.cellClass, | ||
| 345 | ]" | ||
| 334 | @click="(item.click && !item.disabled && !scope.row.disabled) ? item.click(scope, { label: item.label, value: item.value }) : handleClick(scope, { label: item.label, value: item.value })" | 346 | @click="(item.click && !item.disabled && !scope.row.disabled) ? item.click(scope, { label: item.label, value: item.value }) : handleClick(scope, { label: item.label, value: item.value })" |
| 335 | v-preReClick>{{ item.getName ? item.getName(scope) : scope.row[item.field] | 347 | v-preReClick>{{ item.getName ? item.getName(scope) : scope.row[item.field] |
| 336 | }}</span> | 348 | }}</span> |
| 337 | <span v-else>--</span> | 349 | <span v-else>--</span> |
| 338 | </template> | 350 | </template> |
| 351 | <!-- <template #default="scope" v-else-if="item.type == 'text_btn'"> | ||
| 352 | <span v-if="scope.row[item.field] != null" :class="[ | ||
| 353 | (item.getName(scope) === '--' || item.getName(scope) === null) ? '' : 'text_btn', | ||
| 354 | item.class, | ||
| 355 | scope.row.cellClass, | ||
| 356 | { 'disabled-btn': item.getName(scope) === '--' } | ||
| 357 | ]" @click="item.getName(scope) === '--' ? null : handleClickEvent(scope, item)" v-preReClick> | ||
| 358 | {{ item.getName ? item.getName(scope) : scope.row[item.field] | ||
| 359 | }} | ||
| 360 | </span> | ||
| 361 | <span v-else>--</span> | ||
| 362 | </template> --> | ||
| 363 | |||
| 364 | |||
| 339 | <template #default="scope" v-else-if="item.type == 'btn'"> | 365 | <template #default="scope" v-else-if="item.type == 'btn'"> |
| 340 | <template v-for="btn in item.btns"> | 366 | <template v-for="btn in item.btns"> |
| 341 | <span v-if="btn.visible ?? true" class="text_btn" | 367 | <span v-if="btn.visible ?? true" class="text_btn" | ... | ... |
| ... | @@ -33,6 +33,12 @@ const isRegisterOptions = ref<any>([ | ... | @@ -33,6 +33,12 @@ const isRegisterOptions = ref<any>([ |
| 33 | { label: "已登记", value: "Y" }, | 33 | { label: "已登记", value: "Y" }, |
| 34 | { label: "未登记", value: "N" }, | 34 | { label: "未登记", value: "N" }, |
| 35 | ]) | 35 | ]) |
| 36 | |||
| 37 | // 数据来源 1:自建 2:加工交付 | ||
| 38 | const damTypesOptions = ref<any>([ | ||
| 39 | { label: "自建", value: 1 }, | ||
| 40 | { label: "加工交付", value: 2 }, | ||
| 41 | ]) | ||
| 36 | const searchItemList = ref([ | 42 | const searchItemList = ref([ |
| 37 | { | 43 | { |
| 38 | type: "input", | 44 | type: "input", |
| ... | @@ -84,12 +90,12 @@ const searchItemList = ref([ | ... | @@ -84,12 +90,12 @@ const searchItemList = ref([ |
| 84 | { | 90 | { |
| 85 | type: "select", | 91 | type: "select", |
| 86 | label: "", | 92 | label: "", |
| 87 | field: "dataSources", | 93 | field: "foundMode", |
| 88 | default: "", | 94 | default: "", |
| 89 | placeholder: "产品来源", | 95 | placeholder: "产品来源", |
| 90 | clearable: true, | 96 | clearable: true, |
| 91 | filterable: true, | 97 | filterable: true, |
| 92 | options: dataSources.value, | 98 | options: damTypesOptions.value, |
| 93 | props: { | 99 | props: { |
| 94 | value: 'value', | 100 | value: 'value', |
| 95 | label: 'label' | 101 | label: 'label' |
| ... | @@ -122,6 +128,7 @@ const pageInfo = ref({ | ... | @@ -122,6 +128,7 @@ const pageInfo = ref({ |
| 122 | tenantGuid: "", | 128 | tenantGuid: "", |
| 123 | dataSources: "", | 129 | dataSources: "", |
| 124 | isRegister: "", | 130 | isRegister: "", |
| 131 | foundMode: "", | ||
| 125 | subjectDomain: [], | 132 | subjectDomain: [], |
| 126 | }); | 133 | }); |
| 127 | 134 | ||
| ... | @@ -198,6 +205,7 @@ const getTableData = () => { | ... | @@ -198,6 +205,7 @@ const getTableData = () => { |
| 198 | tenantGuid: pageInfo.value.tenantGuid, | 205 | tenantGuid: pageInfo.value.tenantGuid, |
| 199 | dataSources: pageInfo.value.dataSources, | 206 | dataSources: pageInfo.value.dataSources, |
| 200 | isRegister: pageInfo.value.isRegister, | 207 | isRegister: pageInfo.value.isRegister, |
| 208 | foundMode: pageInfo.value.foundMode, | ||
| 201 | }).then((res: any) => { | 209 | }).then((res: any) => { |
| 202 | listDataLoading.value = false; | 210 | listDataLoading.value = false; |
| 203 | if (res.code == proxy.$passCode) { | 211 | if (res.code == proxy.$passCode) { |
| ... | @@ -214,6 +222,7 @@ const getTableData = () => { | ... | @@ -214,6 +222,7 @@ const getTableData = () => { |
| 214 | 222 | ||
| 215 | const toSearch = (val: any, clear: boolean = false) => { | 223 | const toSearch = (val: any, clear: boolean = false) => { |
| 216 | pageInfo.value.curr = 1; | 224 | pageInfo.value.curr = 1; |
| 225 | console.log('val', val); | ||
| 217 | if (clear) { | 226 | if (clear) { |
| 218 | searchItemList.value.map((item) => (item.default = "")); | 227 | searchItemList.value.map((item) => (item.default = "")); |
| 219 | pageInfo.value.damName = ""; | 228 | pageInfo.value.damName = ""; |
| ... | @@ -222,6 +231,7 @@ const toSearch = (val: any, clear: boolean = false) => { | ... | @@ -222,6 +231,7 @@ const toSearch = (val: any, clear: boolean = false) => { |
| 222 | pageInfo.value.tenantGuid = ""; | 231 | pageInfo.value.tenantGuid = ""; |
| 223 | pageInfo.value.isRegister = ""; | 232 | pageInfo.value.isRegister = ""; |
| 224 | pageInfo.value.dataSources = ""; | 233 | pageInfo.value.dataSources = ""; |
| 234 | pageInfo.value.foundMode = ""; | ||
| 225 | } else { | 235 | } else { |
| 226 | pageInfo.value.damName = val.damName; | 236 | pageInfo.value.damName = val.damName; |
| 227 | pageInfo.value.damType = val.damType; | 237 | pageInfo.value.damType = val.damType; |
| ... | @@ -229,6 +239,7 @@ const toSearch = (val: any, clear: boolean = false) => { | ... | @@ -229,6 +239,7 @@ const toSearch = (val: any, clear: boolean = false) => { |
| 229 | pageInfo.value.tenantGuid = val.tenantGuid; | 239 | pageInfo.value.tenantGuid = val.tenantGuid; |
| 230 | pageInfo.value.isRegister = val.isRegister; | 240 | pageInfo.value.isRegister = val.isRegister; |
| 231 | pageInfo.value.dataSources = val.dataSources; | 241 | pageInfo.value.dataSources = val.dataSources; |
| 242 | pageInfo.value.foundMode = val.foundMode; | ||
| 232 | } | 243 | } |
| 233 | getTableData(); | 244 | getTableData(); |
| 234 | }; | 245 | }; | ... | ... |
| ... | @@ -80,7 +80,35 @@ const tableInfo = ref({ | ... | @@ -80,7 +80,35 @@ const tableInfo = ref({ |
| 80 | }, | 80 | }, |
| 81 | { | 81 | { |
| 82 | label: "审核状态", field: "approveState", width: TableColumnWidth.STATE, align: 'center', type: "tag", getName: (scope) => { | 82 | label: "审核状态", field: "approveState", width: TableColumnWidth.STATE, align: 'center', type: "tag", getName: (scope) => { |
| 83 | return filterVal(scope.row.approveVO.approveState, 'approveState'); | 83 | const approveVO = scope.row.approveVO || {} |
| 84 | switch (approveVO.approveState) { | ||
| 85 | case 'N': | ||
| 86 | return '草稿中'; | ||
| 87 | case 'A': | ||
| 88 | return '审批中'; | ||
| 89 | case 'Y': | ||
| 90 | return '已通过'; | ||
| 91 | case 'R': | ||
| 92 | return '已驳回'; | ||
| 93 | case 'C': | ||
| 94 | return '已撤销'; | ||
| 95 | case 'I': | ||
| 96 | return '--'; | ||
| 97 | default: | ||
| 98 | return '草稿中'; | ||
| 99 | } | ||
| 100 | }, tagType: (scope) => { | ||
| 101 | const approveVO = scope.row.approveVO || {} | ||
| 102 | switch (approveVO.approveState) { | ||
| 103 | case 'A': | ||
| 104 | return 'warning'; | ||
| 105 | case 'Y': | ||
| 106 | return 'success'; | ||
| 107 | case 'R': | ||
| 108 | return 'danger'; | ||
| 109 | default: | ||
| 110 | return 'info'; | ||
| 111 | } | ||
| 84 | } | 112 | } |
| 85 | }, | 113 | }, |
| 86 | { | 114 | { |
| ... | @@ -194,9 +222,11 @@ const toSearch = (val: any, clear: boolean = false) => { | ... | @@ -194,9 +222,11 @@ const toSearch = (val: any, clear: boolean = false) => { |
| 194 | 222 | ||
| 195 | // 获取产品上架数量 | 223 | // 获取产品上架数量 |
| 196 | const getListingCountData = () => { | 224 | const getListingCountData = () => { |
| 225 | flowDetailLoading.value = true; | ||
| 197 | getListingCount().then((res: any) => { | 226 | getListingCount().then((res: any) => { |
| 198 | if (res.code == proxy.$passCode) { | 227 | if (res.code == proxy.$passCode) { |
| 199 | demandListData.value = res.data || []; | 228 | demandListData.value = res.data || []; |
| 229 | flowDetailLoading.value = false; | ||
| 200 | } else { | 230 | } else { |
| 201 | proxy.$ElMessage.error(res.msg); | 231 | proxy.$ElMessage.error(res.msg); |
| 202 | } | 232 | } |
| ... | @@ -335,7 +365,7 @@ const tableBtnClick = (scope, btn) => { | ... | @@ -335,7 +365,7 @@ const tableBtnClick = (scope, btn) => { |
| 335 | } | 365 | } |
| 336 | if (type == 'pass') { | 366 | if (type == 'pass') { |
| 337 | approveSuggest.value = ''; | 367 | approveSuggest.value = ''; |
| 338 | dynamicPlaceholder.value = '请填写通过理由(必填)'; | 368 | dynamicPlaceholder.value = '请填写通过理由'; |
| 339 | if (listingFormRef.value) { | 369 | if (listingFormRef.value) { |
| 340 | clearFormValues(listingFormRef.value.formInline); | 370 | clearFormValues(listingFormRef.value.formInline); |
| 341 | listingFormRef.value.ruleFormRef.clearValidate(formInfo.value.items.map(item => item.field)) | 371 | listingFormRef.value.ruleFormRef.clearValidate(formInfo.value.items.map(item => item.field)) |
| ... | @@ -497,7 +527,7 @@ const clearFormValues = (formInline) => { | ... | @@ -497,7 +527,7 @@ const clearFormValues = (formInline) => { |
| 497 | }); | 527 | }); |
| 498 | }; | 528 | }; |
| 499 | const fullscreenLoading = ref(false); | 529 | const fullscreenLoading = ref(false); |
| 500 | const dynamicPlaceholder = ref('请填写通过理由(必填)'); | 530 | const dynamicPlaceholder = ref('请填写通过理由'); |
| 501 | const passSubmit = () => { | 531 | const passSubmit = () => { |
| 502 | let row = currTableData.value | 532 | let row = currTableData.value |
| 503 | listingFormRef.value.ruleFormRef.validate().then((valid) => { | 533 | listingFormRef.value.ruleFormRef.validate().then((valid) => { |
| ... | @@ -726,6 +756,7 @@ const assetsSafeInfo = ref<any>() | ... | @@ -726,6 +756,7 @@ const assetsSafeInfo = ref<any>() |
| 726 | const defaultItemLogo = new URL('@/assets/images/home-finance-product.png', import.meta.url).href | 756 | const defaultItemLogo = new URL('@/assets/images/home-finance-product.png', import.meta.url).href |
| 727 | const demandListData: any = ref([ | 757 | const demandListData: any = ref([ |
| 728 | ]); | 758 | ]); |
| 759 | const flowDetailLoading = ref(false); | ||
| 729 | const btnClick = (item) => { | 760 | const btnClick = (item) => { |
| 730 | console.log(item) | 761 | console.log(item) |
| 731 | if (item.exchangeGuid) { | 762 | if (item.exchangeGuid) { |
| ... | @@ -871,7 +902,7 @@ const formInfo = ref<any>({ | ... | @@ -871,7 +902,7 @@ const formInfo = ref<any>({ |
| 871 | <el-button type="primary" @click="toPatn1('add', 'add1')" v-preReClick>新建</el-button> | 902 | <el-button type="primary" @click="toPatn1('add', 'add1')" v-preReClick>新建</el-button> |
| 872 | </div> --> | 903 | </div> --> |
| 873 | </div> | 904 | </div> |
| 874 | <div class="list-content" v-if="demandListData.length > 0"> | 905 | <div class="list-content" v-if="demandListData.length > 0" v-loading="flowDetailLoading"> |
| 875 | <div class="card-content" v-for="item in demandListData" :key="item.guid"> | 906 | <div class="card-content" v-for="item in demandListData" :key="item.guid"> |
| 876 | <div class="header"> | 907 | <div class="header"> |
| 877 | <div class="header-top"> | 908 | <div class="header-top"> |
| ... | @@ -956,7 +987,8 @@ const formInfo = ref<any>({ | ... | @@ -956,7 +987,8 @@ const formInfo = ref<any>({ |
| 956 | 987 | ||
| 957 | .card-content { | 988 | .card-content { |
| 958 | width: 300px; | 989 | width: 300px; |
| 959 | box-shadow: 0 0 0 1px #d9d9d9; | 990 | // box-shadow: 0 0 0 1px #d9d9d9; |
| 991 | border: 1px solid #d9d9d9; | ||
| 960 | border-radius: 3px; | 992 | border-radius: 3px; |
| 961 | margin-right: 18px; | 993 | margin-right: 18px; |
| 962 | margin-bottom: 12px; | 994 | margin-bottom: 12px; | ... | ... |
| ... | @@ -208,14 +208,14 @@ const assetTableInfo = ref({ | ... | @@ -208,14 +208,14 @@ const assetTableInfo = ref({ |
| 208 | return scope.row.trade == "已交易" ? "icon-success" : "icon-audit"; | 208 | return scope.row.trade == "已交易" ? "icon-success" : "icon-audit"; |
| 209 | }, | 209 | }, |
| 210 | }, | 210 | }, |
| 211 | { | 211 | // { |
| 212 | label: "融资", | 212 | // label: "融资", |
| 213 | field: "financing", | 213 | // field: "financing", |
| 214 | minWidth: 100, | 214 | // minWidth: 100, |
| 215 | getSvg: (scope) => { | 215 | // getSvg: (scope) => { |
| 216 | return scope.row.financing == "已融资" ? "icon-success" : "icon-audit"; | 216 | // return scope.row.financing == "已融资" ? "icon-success" : "icon-audit"; |
| 217 | }, | 217 | // }, |
| 218 | }, | 218 | // }, |
| 219 | ], | 219 | ], |
| 220 | data: [], | 220 | data: [], |
| 221 | showPage: false, | 221 | showPage: false, | ... | ... |
| ... | @@ -35,13 +35,13 @@ const tableInfo = ref({ | ... | @@ -35,13 +35,13 @@ const tableInfo = ref({ |
| 35 | fixedSelection: true, | 35 | fixedSelection: true, |
| 36 | fields: [ | 36 | fields: [ |
| 37 | { label: "序号", type: "index", width: 56, align: "center" }, | 37 | { label: "序号", type: "index", width: 56, align: "center" }, |
| 38 | { label: "数据产品编号", field: "label", width: 140, }, | 38 | { label: "数据产品编号", field: "label", width: 120, }, |
| 39 | { | 39 | { |
| 40 | label: "数据产品名称", field: "damName", width: 150, | 40 | label: "数据产品名称", field: "damName", width: 140, |
| 41 | }, | 41 | }, |
| 42 | { label: "数据类型", field: "damTypeName", width: 100 }, | 42 | { label: "数据类型", field: "damTypeName", width: 90 }, |
| 43 | { | 43 | { |
| 44 | label: '权力主体', field: 'rightMainName', width: 100, | 44 | label: '权力主体', field: 'rightMainName', width: 140, |
| 45 | }, | 45 | }, |
| 46 | { | 46 | { |
| 47 | label: "是否公共数据", field: "isPublicData", width: 120, getName: (scope) => { | 47 | label: "是否公共数据", field: "isPublicData", width: 120, getName: (scope) => { |
| ... | @@ -55,18 +55,18 @@ const tableInfo = ref({ | ... | @@ -55,18 +55,18 @@ const tableInfo = ref({ |
| 55 | } | 55 | } |
| 56 | }, | 56 | }, |
| 57 | { | 57 | { |
| 58 | label: "合规评估报告", field: "complianceEvaluateReport", width: 120, type: 'text_btn', value: 'complianceEvaluateReport', columClass: 'text_btn', getName: (scope) => { | 58 | label: "合规评估报告", field: "complianceEvaluateReport", width: 120, type: 'text_btn', value: 'complianceEvaluateReport', getName: (scope) => { |
| 59 | const value = scope.row.complianceEvaluateReport?.length > 0; | 59 | const value = scope.row.complianceEvaluateReport; |
| 60 | return scope.row.complianceEvaluateReport?.length > 0 ? '预览' : '--'; | 60 | return value && value.length > 0 ? '预览' : '--'; |
| 61 | } | 61 | }, |
| 62 | }, | 62 | }, |
| 63 | { | 63 | { |
| 64 | label: "合规法律意见书", field: "complianceLegalOpinion", width: 130, type: 'text_btn', value: 'complianceLegalOpinion', columClass: 'text_btn', getName: (scope) => { | 64 | label: "合规法律意见书", field: "complianceLegalOpinion", width: 130, type: 'text_btn', value: 'complianceLegalOpinion', getName: (scope) => { |
| 65 | return scope.row.complianceLegalOpinion?.length > 0 ? '预览' : '--'; | 65 | return scope.row.complianceLegalOpinion?.length > 0 ? '预览' : '--'; |
| 66 | } | 66 | } |
| 67 | }, | 67 | }, |
| 68 | { | 68 | { |
| 69 | label: "入表合规方案", field: "entryComplianceProgram", width: 120, type: 'text_btn', value: 'entryComplianceProgram', columClass: 'text_btn', getName: (scope) => { | 69 | label: "入表合规方案", field: "entryComplianceProgram", width: 120, type: 'text_btn', value: 'entryComplianceProgram', getName: (scope) => { |
| 70 | return scope.row.entryComplianceProgram?.length > 0 ? '预览' : '--'; | 70 | return scope.row.entryComplianceProgram?.length > 0 ? '预览' : '--'; |
| 71 | } | 71 | } |
| 72 | }, | 72 | }, | ... | ... |
-
Please register or sign in to post a comment