From b14333bfd1d8fc9a85cd7f6ce2b8db0b285aeb47 Mon Sep 17 00:00:00 2001 From: lonewolfyx <877085893@qq.com> Date: Fri, 6 Mar 2026 14:21:17 +0800 Subject: [PATCH] =?UTF-8?q?refactor:=20=E4=BD=BF=E7=94=A8=20table=20?= =?UTF-8?q?=E8=BF=9B=E8=A1=8C=E5=88=97=E8=A1=A8=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/work/BusinessApproval/index.vue | 97 ++++++++++++++++++--------- 1 file changed, 65 insertions(+), 32 deletions(-) diff --git a/pages/work/BusinessApproval/index.vue b/pages/work/BusinessApproval/index.vue index 717ba58..7bd82a9 100644 --- a/pages/work/BusinessApproval/index.vue +++ b/pages/work/BusinessApproval/index.vue @@ -5,9 +5,9 @@ - - - + + + @@ -45,7 +45,33 @@ - + + + 序号 + 商业公司 + 货主 + 合同编号 + 订单金额 + + + {{ index + 1 }} + {{ item.businessCompany }} + {{ item.companyName }} + {{ item.contractcode }} + {{ item.contractmoney.toFixed(2) }} + + + + - - - - - - - + + + + + + + @@ -69,13 +95,10 @@ import {getCurrentInstance, onMounted, ref} from "vue" import UniForms from "../../../uni_modules/uni-forms/components/uni-forms/uni-forms.vue"; import UniFormsItem from "../../../uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.vue"; -import DictSelect from "../../../components/DictSelect/DictSelect.vue"; import ProductionUnit from "../../../components/ProductionUnit/ProductionUnit.vue"; import MBCard from "../../../components/MB/MBCard.vue"; import {managerConfirm, managerRefuse, mangerList} from "../../../api/BusinessApproval"; -import MBPagination from "../../../components/MB/MBPagination.vue"; import MBLoading from "../../../components/MB/MBLoading.vue"; -import ListItem from "./ListItem.vue"; const {proxy} = getCurrentInstance() @@ -96,6 +119,8 @@ const tableData = ref([]) const submitLoading = ref(false) const handleQuery = async () => { + selected.value = [] + totalMoney.value = 0 loading.value = true const data = await mangerList(queryParams.value, paging.value) total.value = data.total @@ -105,24 +130,24 @@ const handleQuery = async () => { const selected = ref([]) const totalMoney = ref(0) -const handleSelect = (payload) => { - const {checked, data} = payload - const id = data.saleid - - if (checked) { - if (!selected.value.includes(id)) { - selected.value.push(id) - } - } else { - selected.value = selected.value.filter(item => item !== id) - } - - totalMoney.value = tableData.value.filter(item => selected.value.includes(item.saleid)) - .map(i => i.contractmoney) - .reduce((a, b) => a + b, 0) - ?? 0 - -} +// const handleSelect = (payload) => { +// const {checked, data} = payload +// const id = data.saleid +// +// if (checked) { +// if (!selected.value.includes(id)) { +// selected.value.push(id) +// } +// } else { +// selected.value = selected.value.filter(item => item !== id) +// } +// +// totalMoney.value = tableData.value.filter(item => selected.value.includes(item.saleid)) +// .map(i => i.contractmoney) +// .reduce((a, b) => a + b, 0) +// ?? 0 +// +// } onMounted(async () => { await handleQuery() @@ -160,5 +185,13 @@ const handleSubmit = async () => { await handleQuery() submitLoading.value = false } + +const selectionChange = (payload) => { + const indexSet = new Set(payload.detail.index) + const filterData = tableData.value.filter((_, i) => indexSet.has(i)) + + selected.value = filterData.map(item => item.saleid) + totalMoney.value = filterData.map(item => item.contractmoney).reduce((a, b) => a + b, 0) ?? 0 +}