From fe631515b71782a10a750874f6d4582fe027cd22 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期一, 03 十一月 2025 09:32:49 +0800
Subject: [PATCH] 公司-所有的表格添加斑马纹
---
src/views/salesManagement/invoiceRegistration/index.vue | 127 ++++++++++++++++++++++++++++++-----------
1 files changed, 92 insertions(+), 35 deletions(-)
diff --git a/src/views/salesManagement/invoiceRegistration/index.vue b/src/views/salesManagement/invoiceRegistration/index.vue
index 528ba0c..9d39684 100644
--- a/src/views/salesManagement/invoiceRegistration/index.vue
+++ b/src/views/salesManagement/invoiceRegistration/index.vue
@@ -2,7 +2,7 @@
<div class="app-container">
<div class="search_form">
<el-form :inline="true" :model="searchForm">
- <el-form-item label="寮�绁ㄧ櫥璁�">
+ <el-form-item label="瀹㈡埛鍚嶇О">
<el-input
v-model="searchForm.customerName"
style="width: 240px"
@@ -33,6 +33,12 @@
@change="handleQuery"
/>
</el-form-item>
+ <br/>
+ <el-form-item label="鍚堝悓褰曞叆鏃ユ湡">
+ <el-date-picker style="width: 240px" v-model="searchForm.commonDate" value-format="YYYY-MM-DD"
+ format="YYYY-MM-DD" type="daterange" start-placeholder="寮�濮嬫椂闂�" end-placeholder="缁撴潫鏃堕棿" clearable
+ @change="changeDateRange" @clear="clearRange" />
+ </el-form-item>
<el-form-item>
<el-button type="primary" @click="handleQuery"> 鎼滅储 </el-button>
<el-button @click="resetForm"> 閲嶇疆 </el-button>
@@ -57,6 +63,7 @@
:summary-method="summarizeMainTable"
@expand-change="expandChange"
@selection-change="handleSelectionChange"
+ stripe
>
<el-table-column align="center" type="selection" width="55" />
<el-table-column type="expand">
@@ -66,6 +73,7 @@
border
show-summary
:summary-method="summarizeChildrenTable"
+ stripe
>
<el-table-column
align="center"
@@ -74,10 +82,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="80" />
<el-table-column
label="鍚◣鍗曚环(鍏�)"
prop="taxInclusiveUnitPrice"
@@ -117,40 +129,53 @@
</template>
</el-table-column>
<el-table-column align="center" label="搴忓彿" type="index" width="60" />
+ <el-table-column label="鍚堝悓褰曞叆鏃ユ湡" prop="entryDate" width="120" />
<el-table-column
label="閿�鍞悎鍚屽彿"
prop="salesContractNo"
show-overflow-tooltip
+ width="200"
/>
<el-table-column
label="瀹㈡埛鍚堝悓鍙�"
prop="customerContractNo"
+ width="200"
show-overflow-tooltip
/>
<el-table-column
label="瀹㈡埛鍚嶇О"
prop="customerName"
show-overflow-tooltip
+ width="240"
/>
- <el-table-column label="涓氬姟鍛�" prop="salesman" show-overflow-tooltip />
+ <el-table-column label="涓氬姟鍛�" prop="salesman" show-overflow-tooltip width="90"/>
<el-table-column
label="椤圭洰鍚嶇О"
prop="projectName"
show-overflow-tooltip
+ width="200"
/>
<el-table-column
label="鍚堝悓閲戦(鍏�)"
prop="contractAmount"
show-overflow-tooltip
:formatter="formattedNumber"
+ width="220"
+
/>
<el-table-column
label="宸插紑绁ㄩ噾棰�(鍏�)"
prop="invoiceTotal"
show-overflow-tooltip
:formatter="formattedNumber"
+ width="120"
/>
- <el-table-column label="鏈紑绁ㄩ噾棰�(鍏�)" show-overflow-tooltip>
+ <el-table-column
+ label="鏈紑绁ㄩ噾棰�(鍏�)"
+ prop="noInvoiceAmountTotal"
+ show-overflow-tooltip
+ width="120"
+ >
<template #default="{ row, column }">
<el-text type="danger">
{{ formattedNumber(row, column, row.noInvoiceAmountTotal) }}
@@ -218,7 +243,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>
@@ -274,19 +299,25 @@
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="80" />
<el-table-column
label="鍚◣鍗曚环(鍏�)"
prop="taxInclusiveUnitPrice"
:formatter="formattedNumber"
+ width="200"
/>
<el-table-column
label="鍚◣鎬讳环(鍏�)"
prop="taxInclusiveTotalPrice"
:formatter="formattedNumber"
+ width="200"
/>
<el-table-column
label="涓嶅惈绋庢�讳环(鍏�)"
@@ -294,33 +325,29 @@
:formatter="formattedNumber"
width="150"
/>
- <el-table-column label="鏈寮�绁ㄦ暟" prop="currentInvoiceNum">
+ <el-table-column label="鏈寮�绁ㄦ暟" prop="currentInvoiceNum" width="180">
<template #default="scope">
- <el-input
- type="number"
- :step="0.1"
- min="0"
+ <el-input-number :step="0.1" :min="0" style="width: 100%"
+ :precision="2"
v-model="scope.row.currentInvoiceNum"
- @blur="invoiceNumBlur(scope.row)"
- ></el-input>
+ @change="invoiceNumBlur(scope.row)"
+ ></el-input-number>
</template>
</el-table-column>
<el-table-column
label="鏈寮�绁ㄩ噾棰�(鍏�)"
prop="currentInvoiceAmount"
- width="150"
+ width="180"
>
<template #default="scope">
- <el-input
- type="number"
- :step="0.01"
- min="0"
+ <el-input-number :step="0.01" :min="0" style="width: 100%"
+ :precision="2"
v-model="scope.row.currentInvoiceAmount"
- @blur="invoiceAmountBlur(scope.row)"
- ></el-input>
+ @change="invoiceAmountBlur(scope.row)"
+ ></el-input-number>
</template>
</el-table-column>
- <el-table-column label="鏈紑绁ㄦ暟" prop="noInvoiceNum">
+ <el-table-column label="鏈紑绁ㄦ暟" prop="noInvoiceNum" width="120">
<template #default="scope">
<el-input
type="number"
@@ -333,7 +360,7 @@
<el-table-column
label="鏈紑绁ㄩ噾棰�(鍏�)"
prop="noInvoiceAmount"
- width="150"
+ width="200"
>
<template #default="scope">
<el-input
@@ -347,13 +374,17 @@
></el-input>
</template>
</el-table-column>
- <el-table-column label="鐧昏浜�" prop="register">
- <template #default="{ row }">
- <el-input v-model="row.register" placeholder="璇疯緭鍏ョ櫥璁颁汉" />
- </template>
+ <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">
- <template #default="{ row }">
+ <el-table-column label="鐧昏鏃ユ湡" prop="registerDate" width="150">
+ <!-- <template #default="{ row }">
<el-date-picker
style="width: 100%"
v-model="row.registerDate"
@@ -362,8 +393,9 @@
type="date"
placeholder="璇烽�夋嫨"
clearable
+ disabled
/>
- </template>
+ </template> -->
</el-table-column>
</el-table>
</el-form>
@@ -391,6 +423,7 @@
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();
@@ -423,15 +456,35 @@
projectName: "",
productData: [],
invoiceNo: "",
- createUer: "",
+ 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" }],
+ invoiceNo: [{ required: true, message: "璇疯緭鍏�", trigger: "change" }],
+ createTime: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }],
},
});
const { form, rules } = toRefs(data);
const { form: searchForm, resetForm } = useFormData(data.searchForm);
+
+const changeDateRange = (date) => {
+ if (date) {
+ searchForm.entryDateStart = date[0];
+ searchForm.entryDateEnd = date[1];
+ getList();
+ }
+};
+
+const clearRange = () => {
+ searchForm.commonDate = [];
+ searchForm.entryDateStart = undefined;
+ searchForm.entryDateEnd = undefined;
+ getList();
+};
const formattedNumber = (row, column, cellValue) => {
if (cellValue == 0) {
return parseFloat(cellValue).toFixed(2);
@@ -444,7 +497,7 @@
};
const formattedInputNumber = (value) => {
- return parseFloat(value).toFixed(2);
+ return value ? parseFloat(value).toFixed(2) : 0;
};
// 鏌ヨ鍒楄〃
@@ -483,7 +536,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);
});
@@ -498,8 +551,8 @@
const summarizeMainTable = (param) => {
return proxy.summarizeTable(param, [
"contractAmount",
- "noInvoiceAmountTotal",
"invoiceTotal",
+ "noInvoiceAmountTotal",
]);
};
// 瀛愯〃鍚堣鏂规硶
@@ -513,6 +566,7 @@
"currentInvoiceAmount",
"noInvoiceNum",
"noInvoiceAmount",
+ "currentInvoiceNum",
]);
};
// 鎵撳紑寮规
@@ -526,6 +580,9 @@
productData.value = [];
getSalesLedgerWithProducts({ id: selectedRows.value[0].id }).then((res) => {
form.value = { ...res };
+ form.value.createTime = dayjs().format("YYYY-MM-DD");
+ form.value.issueDate = dayjs().format("YYYY-MM-DD");
+ form.value.createUer = userStore.nickName;
productData.value = form.value.productData.map((item) => {
return item;
});
--
Gitblit v1.9.3