From 67acb740390947f2e7cc3834785828ebf9755310 Mon Sep 17 00:00:00 2001 From: 曹睿 <360930172@qq.com> Date: 星期一, 30 六月 2025 17:25:28 +0800 Subject: [PATCH] feat: 【设备保养】添加设备保养模块,完成相关crud --- src/views/salesManagement/invoiceRegistration/index.vue | 72 +++++++++++++++++++++++++++++------ 1 files changed, 59 insertions(+), 13 deletions(-) diff --git a/src/views/salesManagement/invoiceRegistration/index.vue b/src/views/salesManagement/invoiceRegistration/index.vue index 917eb47..f229f81 100644 --- a/src/views/salesManagement/invoiceRegistration/index.vue +++ b/src/views/salesManagement/invoiceRegistration/index.vue @@ -74,10 +74,14 @@ width="60" /> <el-table-column label="浜у搧澶х被" prop="productCategory" /> - <el-table-column label="瑙勬牸鍨嬪彿" prop="specificationModel" /> + <el-table-column + label="瑙勬牸鍨嬪彿" + prop="specificationModel" + width="150" + /> <el-table-column label="鍗曚綅" prop="unit" width="70" /> <el-table-column label="鏁伴噺" prop="quantity" width="70" /> - <el-table-column label="绋庣巼" prop="taxRate" width="70" /> + <el-table-column label="绋庣巼(%)" prop="taxRate" width="70" /> <el-table-column label="鍚◣鍗曚环(鍏�)" prop="taxInclusiveUnitPrice" @@ -150,7 +154,11 @@ show-overflow-tooltip :formatter="formattedNumber" /> - <el-table-column label="鏈紑绁ㄩ噾棰�(鍏�)" show-overflow-tooltip> + <el-table-column + label="鏈紑绁ㄩ噾棰�(鍏�)" + prop="noInvoiceAmountTotal" + show-overflow-tooltip + > <template #default="{ row, column }"> <el-text type="danger"> {{ formattedNumber(row, column, row.noInvoiceAmountTotal) }} @@ -218,7 +226,7 @@ </el-row> <el-row :gutter="30"> <el-col :span="12"> - <el-form-item label="褰曞叆浜�"> + <el-form-item label="褰曞叆浜�" prop="createUer"> <el-input v-model="form.createUer" placeholder="璇疯緭鍏ュ綍鍏ヤ汉" /> </el-form-item> </el-col> @@ -230,6 +238,8 @@ type="date" placeholder="璇烽�夋嫨" clearable + format="YYYY-MM-DD" + value-format="YYYY-MM-DD" /> </el-form-item> </el-col> @@ -246,8 +256,6 @@ /> </el-form-item> </el-col> - </el-row> - <el-row :gutter="30"> <el-col :span="12"> <el-form-item label="鍙戠エ鍙风爜锛�" prop="invoiceNo"> <el-input @@ -274,10 +282,14 @@ width="60" /> <el-table-column label="浜у搧澶х被" prop="productCategory" /> - <el-table-column label="瑙勬牸鍨嬪彿" prop="specificationModel" /> + <el-table-column + label="瑙勬牸鍨嬪彿" + prop="specificationModel" + width="150" + /> <el-table-column label="鍗曚綅" prop="unit" /> <el-table-column label="鏁伴噺" prop="quantity" width="70" /> - <el-table-column label="绋庣巼" prop="taxRate" width="70" /> + <el-table-column label="绋庣巼(%)" prop="taxRate" width="70" /> <el-table-column label="鍚◣鍗曚环(鍏�)" prop="taxInclusiveUnitPrice" @@ -320,7 +332,7 @@ ></el-input> </template> </el-table-column> - <el-table-column label="鏈紑绁ㄦ暟" prop="noInvoiceNum"> + <el-table-column label="鏈紑绁ㄦ暟" prop="noInvoiceNum" width="100"> <template #default="scope"> <el-input type="number" @@ -347,6 +359,29 @@ ></el-input> </template> </el-table-column> + <el-table-column label="鐧昏浜�" prop="register" width="100"> + <!-- <template #default="{ row }"> + <el-input + v-model="row.register" + placeholder="璇疯緭鍏ョ櫥璁颁汉" + disabled + /> + </template> --> + </el-table-column> + <el-table-column label="鐧昏鏃ユ湡" prop="registerDate" width="150"> + <!-- <template #default="{ row }"> + <el-date-picker + style="width: 100%" + v-model="row.registerDate" + value-format="YYYY-MM-DD" + format="YYYY-MM-DD" + type="date" + placeholder="璇烽�夋嫨" + clearable + disabled + /> + </template> --> + </el-table-column> </el-table> </el-form> <template #footer> @@ -372,8 +407,11 @@ } from "@/api/salesManagement/salesLedger.js"; import { invoiceRegistrationSave } from "@/api/salesManagement/invoiceRegistration.js"; import useFormData from "@/hooks/useFormData"; +import useUserStore from "@/store/modules/user"; +import dayjs from "dayjs"; const { proxy } = getCurrentInstance(); +const userStore = useUserStore(); const tableData = ref([]); const productData = ref([]); const selectedRows = ref([]); @@ -392,7 +430,7 @@ status: false, customerContractNo: undefined, // 瀹㈡埛鍚堝悓鍙� projectName: undefined, // 椤圭洰鍚嶇О - createUer: undefined, // 褰曞叆浜� + createUer: undefined, // 鐧昏浜� issueDate: undefined, // 寮�绁ㄦ棩鏈� createTime: undefined, // 褰曞叆鏃ユ湡锛� }, @@ -402,9 +440,15 @@ salesman: "", projectName: "", productData: [], + invoiceNo: "", + createUer: userStore.nickName, + issueDate: dayjs().format("YYYY-MM-DD"), }, rules: { salesLedgerId: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }], + createUer: [{ required: true, message: "璇烽�夋嫨", trigger: "blur" }], + issueDate: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }], + createTime: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }], }, }); const { form, rules } = toRefs(data); @@ -422,7 +466,7 @@ }; const formattedInputNumber = (value) => { - return parseFloat(value).toFixed(2); + return value ? parseFloat(value).toFixed(2) : 0; }; // 鏌ヨ鍒楄〃 @@ -461,7 +505,7 @@ productList({ salesLedgerId: row.id, type: 1 }).then((res) => { const index = tableData.value.findIndex((item) => item.id === row.id); if (index > -1) { - tableData.value[index].children = res; + tableData.value[index].children = res.data; } expandedRowKeys.value.push(row.id); }); @@ -476,8 +520,8 @@ const summarizeMainTable = (param) => { return proxy.summarizeTable(param, [ "contractAmount", - "noInvoiceAmountTotal", "invoiceTotal", + "noInvoiceAmountTotal", ]); }; // 瀛愯〃鍚堣鏂规硶 @@ -504,6 +548,8 @@ productData.value = []; getSalesLedgerWithProducts({ id: selectedRows.value[0].id }).then((res) => { form.value = { ...res }; + form.value.createTime = dayjs().format("YYYY-MM-DD"); + form.value.createUer = userStore.nickName; productData.value = form.value.productData.map((item) => { return item; }); -- Gitblit v1.9.3