From 482ed6306545c04f9051372c44dca537bf7ce44e Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期六, 12 七月 2025 11:27:55 +0800
Subject: [PATCH] 1.销售管理-优化:部位本条数据录入人不可修改数据。表格展示优化

---
 src/views/salesManagement/invoiceLedger/index.vue         |    6 +-
 src/views/salesManagement/receiptPayment/index.vue        |    7 ++-
 src/views/salesManagement/salesLedger/index.vue           |   58 ++++++++++++++--------------
 src/views/salesManagement/receiptPaymentHistory/index.vue |    5 +-
 4 files changed, 40 insertions(+), 36 deletions(-)

diff --git a/src/views/salesManagement/invoiceLedger/index.vue b/src/views/salesManagement/invoiceLedger/index.vue
index 70e6a70..a92d2ec 100644
--- a/src/views/salesManagement/invoiceLedger/index.vue
+++ b/src/views/salesManagement/invoiceLedger/index.vue
@@ -49,15 +49,15 @@
               @click="handleFile(scope.row.commonFiles)">
               鏌ョ湅闄勪欢
             </el-button>
-            <el-button v-else link type="primary" @click="handleDownload(scope.row)">
+            <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>
diff --git a/src/views/salesManagement/receiptPayment/index.vue b/src/views/salesManagement/receiptPayment/index.vue
index d9048a0..762865d 100644
--- a/src/views/salesManagement/receiptPayment/index.vue
+++ b/src/views/salesManagement/receiptPayment/index.vue
@@ -66,7 +66,7 @@
         :expand-row-keys="expandedRowKeys"
         @expand-change="expandChange"
 
-        height="calc(100vh - 18.5em)"
+        height="calc(100vh - 21.5em)"
       >
         <el-table-column align="center" type="selection" width="55" />
         <el-table-column type="expand">
@@ -119,6 +119,7 @@
                     size="small"
                     @click="changeEditType(scope.row)"
                     v-if="!scope.row.editType"
+										:disabled="scope.row.registrant !== userStore.nickName"
                     >缂栬緫</el-button
                   >
                   <el-button
@@ -127,6 +128,7 @@
                     size="small"
                     @click="saveReceiptPayment(scope.row)"
                     v-if="scope.row.editType"
+										:disabled="scope.row.registrant !== userStore.nickName"
                     >淇濆瓨</el-button
                   >
                   <el-button
@@ -134,6 +136,7 @@
                     type="primary"
                     size="small"
                     @click="delReceiptRecord(scope.row)"
+										:disabled="scope.row.registrant !== userStore.nickName"
                     >鍒犻櫎</el-button
                   >
                 </template>
@@ -165,7 +168,7 @@
           label="椤圭洰鍚嶇О"
           prop="projectName"
           show-overflow-tooltip
-          width="200"
+          width="340"
         />
         <el-table-column
           label="浜у搧澶х被"
diff --git a/src/views/salesManagement/receiptPaymentHistory/index.vue b/src/views/salesManagement/receiptPaymentHistory/index.vue
index f0dc1de..ea373ea 100644
--- a/src/views/salesManagement/receiptPaymentHistory/index.vue
+++ b/src/views/salesManagement/receiptPaymentHistory/index.vue
@@ -56,7 +56,7 @@
         :isShowSummary="isShowSummarySon"
         :summaryMethod="summarizeMainTable1"
         :tableLoading="tableLoading"
-        :total="total"
+        :total="page.total"
         @pagination="pagination"
         @selection-change="handleSelectionChange"
       ></PIMTable>
@@ -139,6 +139,7 @@
 const page = reactive({
   current: 1,
   size: 100,
+	total: 0,
 });
 const total = ref(0);
 
@@ -174,7 +175,7 @@
   receiptPaymentHistoryListPage({ ...rest, ...page }).then((res) => {
     tableLoading.value = false;
     tableData.value = res.records;
-    total.value = res.total;
+		page.total = res.total;
   });
 };
 // 瀛愯〃鍚堣鏂规硶
diff --git a/src/views/salesManagement/salesLedger/index.vue b/src/views/salesManagement/salesLedger/index.vue
index b49a6d8..fe21088 100644
--- a/src/views/salesManagement/salesLedger/index.vue
+++ b/src/views/salesManagement/salesLedger/index.vue
@@ -69,9 +69,10 @@
         <el-table-column label="褰曞叆浜�" prop="entryPersonName" width="100" show-overflow-tooltip />
         <el-table-column label="褰曞叆鏃ユ湡" prop="entryDate" width="120" show-overflow-tooltip />
         <el-table-column label="绛捐鏃ユ湡" prop="executionDate" width="120" show-overflow-tooltip />
-        <el-table-column fixed="right" label="鎿嶄綔" min-width="100" align="center">
+        <el-table-column fixed="right" label="鎿嶄綔" min-width="140" align="center">
           <template #default="scope">
-            <el-button link type="primary" size="small" @click="openForm('edit', scope.row)">缂栬緫</el-button>
+            <el-button link type="primary" size="small" :disabled="scope.row.invoiceTotal>0 || scope.row.entryPersonName !== userStore.nickName" @click="openForm('edit', scope.row)">缂栬緫</el-button>
+<!--            <el-button link type="primary" size="small" @click="openForm('view', scope.row)">璇︽儏</el-button>-->
             <el-button link type="primary" size="small" @click="downLoadFile(scope.row)">闄勪欢</el-button>
           </template>
         </el-table-column>
@@ -90,7 +91,7 @@
           </el-col>
           <el-col :span="12">
             <el-form-item label="涓氬姟鍛橈細" prop="salesman">
-              <el-select v-model="form.salesman" placeholder="璇烽�夋嫨" clearable>
+              <el-select v-model="form.salesman" placeholder="璇烽�夋嫨" clearable :disabled="operationType === 'view'">
                 <el-option v-for="item in userList" :key="item.nickName" :label="item.nickName"
                   :value="item.nickName" />
               </el-select>
@@ -100,12 +101,12 @@
         <el-row :gutter="30">
           <el-col :span="12">
             <el-form-item label="瀹㈡埛鍚堝悓鍙凤細" prop="customerContractNo">
-              <el-input v-model="form.customerContractNo" placeholder="璇疯緭鍏�" clearable />
+              <el-input v-model="form.customerContractNo" placeholder="璇疯緭鍏�" clearable :disabled="operationType === 'view'"/>
             </el-form-item>
           </el-col>
           <el-col :span="12">
             <el-form-item label="瀹㈡埛鍚嶇О锛�" prop="customerId">
-              <el-select v-model="form.customerId" placeholder="璇烽�夋嫨" clearable>
+              <el-select v-model="form.customerId" placeholder="璇烽�夋嫨" clearable :disabled="operationType === 'view'">
                 <el-option v-for="item in customerOption" :key="item.id" :label="item.customerName" :value="item.id">
                   {{
                     item.customerName + "鈥斺��" + item.taxpayerIdentificationNumber
@@ -118,47 +119,47 @@
         <el-row :gutter="30">
           <el-col :span="12">
             <el-form-item label="椤圭洰鍚嶇О锛�" prop="projectName">
-              <el-input v-model="form.projectName" placeholder="璇疯緭鍏�" clearable />
+              <el-input v-model="form.projectName" placeholder="璇疯緭鍏�" clearable :disabled="operationType === 'view'" />
             </el-form-item>
           </el-col>
-          <el-col :span="12">
-            <el-form-item label="褰曞叆浜猴細" prop="entryPerson">
-              <el-select v-model="form.entryPerson" placeholder="璇烽�夋嫨" clearable @change="changs" disabled>
-                <el-option v-for="item in userList" :key="item.userId" :label="item.nickName" :value="item.userId" />
-              </el-select>
-            </el-form-item>
-          </el-col>
+					<el-col :span="12">
+						<el-form-item label="绛捐鏃ユ湡锛�" prop="executionDate">
+							<el-date-picker style="width: 100%" v-model="form.executionDate" value-format="YYYY-MM-DD"
+															format="YYYY-MM-DD" type="date" placeholder="璇烽�夋嫨" clearable :disabled="operationType === 'view'" />
+						</el-form-item>
+					</el-col>
         </el-row>
         <el-row :gutter="30">
+					<el-col :span="12">
+						<el-form-item label="褰曞叆浜猴細" prop="entryPerson">
+							<el-select v-model="form.entryPerson" placeholder="璇烽�夋嫨" clearable @change="changs" disabled>
+								<el-option v-for="item in userList" :key="item.userId" :label="item.nickName" :value="item.userId" />
+							</el-select>
+						</el-form-item>
+					</el-col>
           <el-col :span="12">
             <el-form-item label="褰曞叆鏃ユ湡锛�" prop="entryDate">
               <el-date-picker style="width: 100%" v-model="form.entryDate" value-format="YYYY-MM-DD" format="YYYY-MM-DD"
                 type="date" placeholder="璇烽�夋嫨" clearable disabled />
             </el-form-item>
           </el-col>
-          <el-col :span="12">
-            <el-form-item label="绛捐鏃ユ湡锛�" prop="executionDate">
-              <el-date-picker style="width: 100%" v-model="form.executionDate" 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="12">
             <el-form-item label="浠樻鏂瑰紡">
-              <el-input v-model="form.paymentMethod" placeholder="璇疯緭鍏�" clearable />
+              <el-input v-model="form.paymentMethod" placeholder="璇疯緭鍏�" clearable :disabled="operationType === 'view'" />
             </el-form-item>
           </el-col>
         </el-row>
         <el-row>
           <el-form-item label="浜у搧淇℃伅锛�" prop="entryDate">
-            <el-button type="primary" @click="openProductForm('add')">娣诲姞</el-button>
-            <el-button plain type="danger" @click="deleteProduct" >鍒犻櫎</el-button>
+            <el-button v-if="operationType !== 'view'" type="primary" @click="openProductForm('add')">娣诲姞</el-button>
+            <el-button v-if="operationType !== 'view'" plain type="danger" @click="deleteProduct" >鍒犻櫎</el-button>
           </el-form-item>
         </el-row>
         <el-table :data="productData" border @selection-change="productSelected" show-summary
           :summary-method="summarizeMainTable">
-          <el-table-column align="center" type="selection" width="55" />
+          <el-table-column align="center" type="selection" width="55" v-if="operationType !== 'view'" />
           <el-table-column align="center" label="搴忓彿" type="index" width="60" />
           <el-table-column label="浜у搧澶х被" prop="productCategory" />
           <el-table-column label="瑙勬牸鍨嬪彿" prop="specificationModel" />
@@ -168,7 +169,7 @@
           <el-table-column label="鍚◣鍗曚环(鍏�)" prop="taxInclusiveUnitPrice" :formatter="formattedNumber" />
           <el-table-column label="鍚◣鎬讳环(鍏�)" prop="taxInclusiveTotalPrice" :formatter="formattedNumber" />
           <el-table-column label="涓嶅惈绋庢�讳环(鍏�)" prop="taxExclusiveTotalPrice" :formatter="formattedNumber" />
-          <el-table-column fixed="right" label="鎿嶄綔" min-width="60" align="center">
+          <el-table-column fixed="right" label="鎿嶄綔" min-width="60" align="center" v-if="operationType !== 'view'">
             <template #default="scope">
               <el-button link type="primary" size="small" @click="openProductForm('edit', scope.row)">缂栬緫</el-button>
             </template>
@@ -177,7 +178,7 @@
         <el-row :gutter="30">
           <el-col :span="24">
             <el-form-item label="澶囨敞路锛�" prop="remark">
-              <el-input v-model="form.remark" placeholder="璇疯緭鍏�" clearable type="textarea" :rows="2" />
+              <el-input v-model="form.remark" placeholder="璇疯緭鍏�" clearable type="textarea" :rows="2" :disabled="operationType === 'view'" />
             </el-form-item>
           </el-col>
         </el-row>
@@ -187,8 +188,8 @@
               <el-upload v-model:file-list="fileList" :action="upload.url" multiple ref="fileUpload" auto-upload
                 :headers="upload.headers" :before-upload="handleBeforeUpload" :on-error="handleUploadError"
                 :on-success="handleUploadSuccess" :on-remove="handleRemove">
-                <el-button type="primary">涓婁紶</el-button>
-                <template #tip>
+                <el-button type="primary" v-if="operationType !== 'view'">涓婁紶</el-button>
+                <template #tip v-if="operationType !== 'view'">
                   <div class="el-upload__tip">
                     鏂囦欢鏍煎紡鏀寔
                     doc锛宒ocx锛寈ls锛寈lsx锛宲pt锛宲ptx锛宲df锛宼xt锛寈ml锛宩pg锛宩peg锛宲ng锛実if锛宐mp锛宺ar锛寊ip锛�7z
@@ -571,9 +572,8 @@
   customerList().then((res) => {
     customerOption.value = res;
   });
-  console.log("userStore.id", userStore.id);
   form.value.entryPerson = userStore.id;
-  if (type === "edit") {
+  if (type !== "add") {
     currentId.value = row.id;
     getSalesLedgerWithProducts({ id: row.id, type: 1 }).then((res) => {
       form.value = { ...res };

--
Gitblit v1.9.3