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/invoiceLedger/index.vue | 248 ++++++++++++-------------------------------------
1 files changed, 60 insertions(+), 188 deletions(-)
diff --git a/src/views/salesManagement/invoiceLedger/index.vue b/src/views/salesManagement/invoiceLedger/index.vue
index 7eae9dd..7c313dd 100644
--- a/src/views/salesManagement/invoiceLedger/index.vue
+++ b/src/views/salesManagement/invoiceLedger/index.vue
@@ -3,28 +3,17 @@
<div class="search_form">
<el-form :inline="true" :model="searchForm">
<el-form-item label="瀹㈡埛鍚嶇О/鍚堝悓鍙�">
- <el-input
- v-model="searchForm.searchText"
- style="width: 240px"
- placeholder="杈撳叆瀹㈡埛鍚嶇О/鍚堝悓鍙锋悳绱�"
- @change="handleQuery"
- clearable
- :prefix-icon="Search"
- />
+ <el-input v-model="searchForm.searchText" style="width: 240px" placeholder="杈撳叆瀹㈡埛鍚嶇О/閿�鍞悎鍚屽彿鎼滅储"
+ @change="handleQuery" clearable :prefix-icon="Search" />
</el-form-item>
<el-form-item label="寮�绁ㄦ棩鏈�">
- <el-date-picker
- style="width: 240px"
- v-model="searchForm.invoiceDate"
- value-format="YYYY-MM-DD"
- format="YYYY-MM-DD"
- type="daterange"
- start-placeholder="寮�濮嬫椂闂�"
- end-placeholder="缁撴潫鏃堕棿"
- clearable
- @change="changeDateRange"
- @clear="clearRange"
- />
+ <el-date-picker style="width: 240px" v-model="searchForm.invoiceDate" 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 label="褰曞叆鏃ユ湡">
+ <el-date-picker style="width: 100%" v-model="searchForm.createTimeStart" value-format="YYYY-MM-DD HH:mm:ss"
+ format="YYYY-MM-DD" type="date" placeholder="璇烽�夋嫨" clearable @change="handleQuery" />
</el-form-item>
<el-form-item label="涓嶆樉绀烘湁鍙戠エ琛�">
<el-checkbox v-model="searchForm.status" @change="handleQuery" />
@@ -37,122 +26,46 @@
</el-form>
</div>
<div class="table_list">
- <el-table
- :data="tableData"
- border
- v-loading="tableLoading"
- @selection-change="handleSelectionChange"
- :row-key="(row) => row.id"
- show-summary
- :summary-method="summarizeMainTable"
- height="calc(100vh - 18.5em)"
- >
+ <el-table :data="tableData" border v-loading="tableLoading" @selection-change="handleSelectionChange"
+ :row-key="(row) => row.id" show-summary :summary-method="summarizeMainTable" height="calc(100vh - 18.5em)" stripe>
<el-table-column align="center" type="selection" width="55" />
<el-table-column align="center" label="搴忓彿" type="index" width="60" />
- <el-table-column
- label="閿�鍞悎鍚屽彿"
- prop="salesContractNo"
- show-overflow-tooltip
- />
- <el-table-column
- label="瀹㈡埛鍚堝悓鍙�"
- prop="customerContractNo"
- show-overflow-tooltip
- />
- <el-table-column
- label="瀹㈡埛鍚嶇О"
- prop="customerName"
- show-overflow-tooltip
- />
- <el-table-column label="浜у搧澶х被" prop="productCategory" />
- <el-table-column label="瑙勬牸鍨嬪彿" prop="specificationModel" />
- <el-table-column
- label="鍙戠エ鍙�"
- prop="invoiceNo"
- show-overflow-tooltip
- />
- <el-table-column
- label="鍙戠エ閲戦(鍏�)"
- prop="invoiceTotal"
- show-overflow-tooltip
- :formatter="formattedNumber"
- />
+ <el-table-column label="閿�鍞悎鍚屽彿" prop="salesContractNo" show-overflow-tooltip width="180" />
+ <el-table-column label="瀹㈡埛鍚堝悓鍙�" prop="customerContractNo" show-overflow-tooltip width="180" />
+ <el-table-column label="瀹㈡埛鍚嶇О" prop="customerName" show-overflow-tooltip width="240" />
+ <el-table-column label="椤圭洰" prop="projectName" width="320" />
+ <el-table-column label="浜у搧澶х被" prop="productCategory" width="200" />
+ <el-table-column label="瑙勬牸鍨嬪彿" prop="specificationModel" width="160" show-overflow-tooltip />
+ <el-table-column label="鍙戠エ鍙�" prop="invoiceNo" width="200" show-overflow-tooltip />
+ <el-table-column label="鍙戠エ閲戦(鍏�)" prop="invoiceTotal" show-overflow-tooltip :formatter="formattedNumber"
+ width="200" />
<el-table-column label="绋庣巼(%)" prop="taxRate" show-overflow-tooltip />
- <el-table-column
- label="褰曞叆浜�"
- prop="invoicePerson"
- show-overflow-tooltip
- />
- <el-table-column
- label="褰曞叆鏃ユ湡"
- prop="createTime"
- show-overflow-tooltip
- :formatter="formatDate"
- />
- <el-table-column
- label="寮�绁ㄦ棩鏈�"
- prop="invoiceDate"
- show-overflow-tooltip
- />
- <el-table-column
- label="鍙戠エ"
- prop="invoiceFileName"
- show-overflow-tooltip
- >
+ <el-table-column label="褰曞叆浜�" prop="invoicePerson" show-overflow-tooltip />
+ <el-table-column label="褰曞叆鏃ユ湡" prop="createTime" show-overflow-tooltip :formatter="formatDate" width="180" />
+ <el-table-column label="寮�绁ㄦ棩鏈�" prop="invoiceDate" show-overflow-tooltip width="120" />
+ <el-table-column label="鍙戠エ" prop="invoiceFileName" width="120" align="center" show-overflow-tooltip fixed="right">
<template #default="scope">
- <span v-if="scope.row.invoiceFileName">{{
- scope.row.invoiceFileName
- }}</span>
- <el-button
- v-else
- link
- type="primary"
- @click="handleDownload(scope.row)"
- >涓婁紶</el-button
- >
+ <el-button v-if="scope.row.invoiceFileName" text bg type="primary"
+ @click="handleFile(scope.row.commonFiles)">
+ 鏌ョ湅闄勪欢
+ </el-button>
+ <el-button v-else link type="primary" @click="handleDownload(scope.row)" :disabled="scope.row.invoicePerson !== userStore.nickName">
+ 涓婁紶
+ </el-button>
</template>
</el-table-column>
<el-table-column fixed="right" label="鎿嶄綔" width="150" align="center">
<template #default="scope">
- <el-button
- link
- type="primary"
- size="small"
- @click="openForm(scope.row)"
- >缂栬緫</el-button
- >
- <el-button
- link
- type="primary"
- size="small"
- @click="delInvoiceLedger(scope.row)"
- >鍒犻櫎</el-button
- >
+ <el-button link type="primary" size="small" @click="openForm(scope.row)" :disabled="scope.row.invoicePerson !== userStore.nickName">缂栬緫</el-button>
+ <el-button link type="primary" size="small" @click="delInvoiceLedger(scope.row)" :disabled="scope.row.invoicePerson !== userStore.nickName">鍒犻櫎</el-button>
</template>
</el-table-column>
</el-table>
- <pagination
- v-show="total > 0"
- :total="total"
- layout="total, sizes, prev, pager, next, jumper"
- :page="page.current"
- :limit="page.size"
- @pagination="paginationChange"
- />
+ <pagination v-show="total > 0" :total="total" layout="total, sizes, prev, pager, next, jumper"
+ :page="page.current" :limit="page.size" @pagination="paginationChange" />
</div>
- <el-dialog
- v-model="dialogFormVisible"
- title="寮�绁ㄥ彴璐﹂〉闈�"
- width="70%"
- @close="closeDia"
- >
- <el-form
- :model="form"
- label-width="140px"
- label-position="top"
- :rules="rules"
- ref="formRef"
- >
+ <el-dialog v-model="dialogFormVisible" title="寮�绁ㄥ彴璐﹂〉闈�" width="70%" @close="closeDia">
+ <el-form :model="form" label-width="140px" label-position="top" :rules="rules" ref="formRef">
<el-row :gutter="30">
<el-col :span="12">
<el-form-item label="閿�鍞悎鍚屽彿锛�" prop="salesContractNo">
@@ -161,79 +74,41 @@
</el-col>
<el-col :span="12">
<el-form-item label="瀹㈡埛鍚嶇О锛�" prop="customerName">
- <el-input
- v-model="form.customerName"
- placeholder="鑷姩濉厖"
- clearable
- disabled
- />
+ <el-input v-model="form.customerName" placeholder="鑷姩濉厖" clearable disabled />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="30">
<el-col :span="12">
<el-form-item label="鍙戠エ鍙凤細" prop="invoiceNo">
- <el-input
- v-model="form.invoiceNo"
- placeholder="璇疯緭鍏�"
- clearable
- />
+ <el-input v-model="form.invoiceNo" placeholder="璇疯緭鍏�" clearable />
</el-form-item>
</el-col>
<el-col :span="12">
- <el-form-item label="鍙戠エ閲戦(鍏�)锛�" prop="invoiceTotal">
- <el-input
- type="number"
- :step="0.01"
- v-model="form.invoiceTotal"
- placeholder="璇疯緭鍏�"
- clearable
- />
+ <el-form-item :label="`鍙戠エ閲戦(鍏�)锛� 鍚堝悓鎬婚(${form.taxInclusiveTotalPrice}鍏�)`" prop="invoiceTotal">
+ <el-input-number :step="0.01" :min="0" :max="form.taxInclusiveTotalPrice" style="width: 100%" v-model="form.invoiceTotal" placeholder="璇疯緭鍏�" clearable :precision="2"/>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="30">
<el-col :span="12">
<el-form-item label="寮�绁ㄤ汉锛�" prop="invoicePerson">
- <el-input
- v-model="form.invoicePerson"
- placeholder="璇疯緭鍏�"
- clearable
- disabled
- />
+ <el-input v-model="form.invoicePerson" placeholder="璇疯緭鍏�" clearable disabled />
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="寮�绁ㄦ棩鏈燂細" prop="invoiceDate">
- <el-date-picker
- style="width: 100%"
- v-model="form.invoiceDate"
- value-format="YYYY-MM-DD"
- format="YYYY-MM-DD"
- type="date"
- placeholder="璇烽�夋嫨"
- clearable
- />
+ <el-date-picker style="width: 100%" v-model="form.invoiceDate" value-format="YYYY-MM-DD"
+ format="YYYY-MM-DD" type="date" placeholder="璇烽�夋嫨" clearable />
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="30">
<el-col :span="24">
<el-form-item label="闄勪欢鏉愭枡锛�" prop="remark">
- <el-upload
- v-model:file-list="fileList"
- :action="upload.url"
- multiple
- ref="fileUpload"
- auto-upload
- :headers="upload.headers"
- accept=".pdf"
- :limit="1"
- :before-upload="handleBeforeUpload"
- :on-error="handleUploadError"
- :on-success="handleUploadSuccess"
- :on-remove="handleRemove"
- >
+ <el-upload v-model:file-list="fileList" :action="upload.url" multiple ref="fileUpload" auto-upload
+ :headers="upload.headers" accept=".pdf" :limit="10" :before-upload="handleBeforeUpload"
+ :on-error="handleUploadError" :on-success="handleUploadSuccess" :on-remove="handleRemove">
<el-button type="primary">涓婁紶</el-button>
<template #tip>
<!-- 鏂囦欢鏍煎紡鏀寔 doc锛宒ocx锛寈ls锛寈lsx锛宲pt锛宲ptx锛宲df锛宼xt锛寈ml锛宩pg锛宩peg锛宲ng锛実if锛宐mp锛宺ar锛寊ip锛�7z-->
@@ -255,22 +130,10 @@
<el-row :gutter="30">
<el-col :span="24">
<el-form-item label="闄勪欢鏉愭枡锛�" prop="remark">
- <el-upload
- v-model:file-list="fileList"
- :action="upload.url"
- multiple
- ref="fileUpload"
- auto-upload
- :headers="upload.headers"
- accept=".pdf"
- :limit="1"
- style="width: 100%"
- :on-exceed="handleExceed"
- :before-upload="handleBeforeUpload"
- :on-error="handleUploadError"
- :on-success="handleUploadSuccess"
- :on-remove="handleRemove"
- >
+ <el-upload v-model:file-list="fileList" :action="upload.url" multiple ref="fileUpload" auto-upload
+ :headers="upload.headers" accept=".pdf" :limit="10" style="width: 100%" :on-exceed="handleExceed"
+ :before-upload="handleBeforeUpload" :on-error="handleUploadError" :on-success="handleUploadSuccess"
+ :on-remove="handleRemove">
<el-button type="primary">涓婁紶</el-button>
<template #tip>
<div class="el-upload__tip">鏂囦欢鏍煎紡浠呮敮鎸� pdf</div>
@@ -328,6 +191,7 @@
],
invoiceDateStart: dayjs().startOf("month").format("YYYY-MM-DD"),
invoiceDateEnd: dayjs().endOf("month").format("YYYY-MM-DD"),
+ createTimeStart: "", // 褰曞叆鏃ユ湡
},
form: {
salesLedgerId: "",
@@ -339,6 +203,7 @@
invoiceDate: "",
customerName: "",
fileList: [],
+ createTime: "", // 褰曞叆鏃ユ湡
},
rules: {
salesLedgerId: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }],
@@ -533,6 +398,7 @@
})
.then(() => {
delInvoiceLedgerByRegProductId(row.id).then((res) => {
+ proxy.$modal.msgSuccess("鍒犻櫎鎴愬姛");
getList();
});
})
@@ -557,6 +423,12 @@
}
};
+const handleFile = (commonFiles) => {
+ commonFiles.forEach((e) => {
+ proxy.$download.name(e.url);
+ });
+};
+
const clearRange = () => {
searchForm.invoiceDate = [];
searchForm.invoiceDateStart = undefined;
--
Gitblit v1.9.3