From 25e3c62ad931ad52283b0176266e3cee66dbba68 Mon Sep 17 00:00:00 2001 From: ljx <15723110242@139.com> Date: Thu, 21 Aug 2025 00:03:52 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E4=BF=AE=E5=99=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/contract/index.ts | 10 ++++- src/views/contract/division/index.vue | 57 ++++++++++++++++++++----- src/views/contract/limitPrice/index.vue | 2 +- 3 files changed, 56 insertions(+), 13 deletions(-) diff --git a/src/api/contract/index.ts b/src/api/contract/index.ts index b336e25..a5124c1 100644 --- a/src/api/contract/index.ts +++ b/src/api/contract/index.ts @@ -74,7 +74,7 @@ export const delPlanning = (query: any): AxiosPromise => { method: 'delete' }); }; - +//导出分标 export const importExcelFile = (params: any, data: any): AxiosPromise => { return request({ url: '/tender/billofquantitiesLimitList/importExcelFile', @@ -83,3 +83,11 @@ export const importExcelFile = (params: any, data: any): AxiosPromise => { data }); }; +//获取详情 +export const getDetailsList = (query: any): AxiosPromise => { + return request({ + url: '/tender/segmentedIndicatorPlanning/getMore', + method: 'get', + params: query + }); +}; diff --git a/src/views/contract/division/index.vue b/src/views/contract/division/index.vue index 6d446d4..cc9ae2f 100644 --- a/src/views/contract/division/index.vue +++ b/src/views/contract/division/index.vue @@ -28,6 +28,9 @@ @@ -125,7 +142,7 @@ import { useUserStoreHook } from '@/store/modules/user'; import { getDicts } from '@/api/system/dict/data'; import { Plus } from '@element-plus/icons-vue'; import { FormInstance } from 'element-plus'; -import { treeList, sheetList, segmentedIndicatorPlanning, getPlanningList, updatePlanning, delPlanning } from '@/api/contract/index'; +import { treeList, sheetList, segmentedIndicatorPlanning, getPlanningList, updatePlanning, delPlanning, getDetailsList } from '@/api/contract/index'; const userStore = useUserStoreHook(); const currentProject = computed(() => userStore.selectedProject); @@ -148,6 +165,7 @@ const form = ref({ name: '', content: '' }); + const rules = ref({ name: [{ required: true, message: '请输入名称', trigger: 'blur' }], content: [{ required: true, message: '请输入内容', trigger: 'blur' }] @@ -265,8 +283,13 @@ const handleSelection = (selection: any) => { }; const handleNumberChange = (row: any) => { const selectedIds = selectionData.value.map((item) => item.id); + nextTick(() => { + treeTableRef.value.toggleRowSelection(row, true); + }); restoreSelections(treeData.value, selectedIds); }; + +//寻找节点选择 const restoreSelections = (data, selectedIds) => { const traverse = (nodes) => { nodes.forEach((node) => { @@ -338,12 +361,12 @@ const submitForm = async (formEl: FormInstance | undefined) => { }); return; } - - if (selectionData.value.some((item) => item.selectNum == '' || item.selectNum == null)) { + const newSelectionData = selectionData.value.filter((item) => item.quantity != '' && item.quantity != null); + if (newSelectionData.some((item) => item.selectNum == '' || item.selectNum == null)) { ElMessage.error('存在未填写数量的工程或费用名称,请检查'); return; } - const limitListBos = selectionData.value.map((item: any) => { + const limitListBos = newSelectionData.map((item: any) => { return { limitListId: item.id, num: item.selectNum @@ -366,10 +389,6 @@ const submitForm = async (formEl: FormInstance | undefined) => { } } catch (error) { console.log(error); - ElMessage({ - message: '新增失败', - type: 'error' - }); } } else { console.log('error submit!', fields); @@ -424,6 +443,22 @@ const delHandle = (row: any) => { }); } }; +const detailDialog = ref(); +const detailData = ref([]); +const detailLoading = ref(false); + +//详情 +const handleDetail = (row: any) => { + detailDialog.value = true; + getDetails(row); +}; +const getDetails = (row: any) => { + getDetailsList({ id: row.id }).then((res) => { + if (res.code == 200) { + detailData.value = res.data; + } + }); +}; onMounted(() => { getTabsList(); diff --git a/src/views/contract/limitPrice/index.vue b/src/views/contract/limitPrice/index.vue index 6b5c9de..8f5b608 100644 --- a/src/views/contract/limitPrice/index.vue +++ b/src/views/contract/limitPrice/index.vue @@ -69,7 +69,7 @@ @click="handleSave(scope.row)" v-if="scope.row.quantity && scope.row.quantity != 0" v-hasPermi="['tender:billofquantitiesLimitList:edit']" - >修改确定 From 1ac6a846ba6626f84a86739ff6c9120a28c62422 Mon Sep 17 00:00:00 2001 From: ljx <15723110242@139.com> Date: Thu, 21 Aug 2025 00:16:44 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E4=BF=AE=E5=99=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/contract/division/index.vue | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/views/contract/division/index.vue b/src/views/contract/division/index.vue index cc9ae2f..d5ae5b2 100644 --- a/src/views/contract/division/index.vue +++ b/src/views/contract/division/index.vue @@ -18,7 +18,11 @@ - + + +