From a177ad6532fcdc1e9d2b3910276bd88d04791469 Mon Sep 17 00:00:00 2001
From: fcx <2246384483@qq.com>
Date: 星期二, 02 十二月 2025 20:19:13 +0800
Subject: [PATCH] 1.XJ新增照片查看,不良描述

---
 pages/QC/XJ/Add.vue | 1144 ++++++++++++++++++++++++++------------------------------
 1 files changed, 537 insertions(+), 607 deletions(-)

diff --git a/pages/QC/XJ/Add.vue b/pages/QC/XJ/Add.vue
index 02dfc45..faf7d70 100644
--- a/pages/QC/XJ/Add.vue
+++ b/pages/QC/XJ/Add.vue
@@ -3,47 +3,37 @@
     <!-- 澶撮儴淇℃伅 -->
     <view class="sheet-header">
       <h1>宸℃鍗�</h1>
-      <view class="inspection-number">妫�楠屽崟鍙凤細{{ formData.releaseNo }}</view>
+      <view class="inspection-number">妫�楠屽崟鍙凤細{{ formData.billNo }}</view>
     </view>
 
     <!-- 鍩烘湰淇℃伅鍖� -->
     <view class="basic-info">
       <view class="info-row">
-        <span class="info-label">鍒涘缓浜猴細</span>
-        <span class="info-value">{{ formData.createBy }}</span>
         <span class="info-label">鍒涘缓鏃堕棿锛�</span>
-        <span class="info-value">{{ formData.createDate }}</span>
+        <span class="info-value">{{ formData.createTime }}</span>
+        <span class="info-label">妫�楠屼汉锛�</span>
+        <span class="info-value">{{ formData.statusUser }}</span>
       </view>
     </view>
 
     <!-- 鐗╂枡淇℃伅鍖� -->
     <view class="material-info">
       <view class="info-block">
-        <view class="info-label">绾夸綋缂栧彿锛�</view>
+        <view class="info-label">鐢熶骇绾垮埆锛�</view>
         <view v-if="!isUpdate" class="info-value">{{ formData.daa020 }}</view>
-        <picker v-if="isUpdate" :range="DAA020List" class="picker info-value-input" name="selector"
-                @change="onDaa020Change">
-          <view>{{ DAA020List[DAA020Index] }}</view>
-        </picker>
+        <superwei-combox v-else v-model="formData.daa020" :candidates="DAA020List"
+                         class="picker info-value-input" placeholder="璇烽�夋嫨鎴栬緭鍏�"
+                         @select="onDaa020Change"></superwei-combox>
       </view>
       <view class="info-block">
         <view class="info-label">鐗╂枡缂栫爜锛�</view>
         <view v-if="!isUpdate" class="info-value">{{ formData.itemNo }}</view>
-        <picker v-if="isUpdate" :range="ItemList" class="picker info-value-input" name="selector"
-                @change="onItemChange">
-          <view>{{ ItemList[ItemIndex] }}</view>
-        </picker>
+        <superwei-combox v-else v-model="formData.itemNo" :candidates="boardItems" :isJSON="true"
+                         class="picker info-value-input" keyName="itemName" placeholder="璇烽�夋嫨鎴栬緭鍏�"
+                         @select="onItemChange"></superwei-combox>
       </view>
       <view class="info-block">
-        <view class="info-label">璁″垝缂栧彿锛�</view>
-        <view v-if="!isUpdate" class="info-value">{{ formData.billNo }}</view>
-        <picker v-if="isUpdate" :range="DAA001List" class="picker info-value-input" name="selector"
-                @change="onDaa001Change">
-          <view>{{ DAA001List[DAA001Index] }}</view>
-        </picker>
-      </view>
-      <view class="info-block">
-        <view class="info-label">鐗╂枡鍚嶇О锛�</view>
+        <view class="info-label">浜у搧鍚嶇О锛�</view>
         <view class="info-value">{{ formData.itemName }}</view>
       </view>
       <view class="info-block">
@@ -51,43 +41,32 @@
         <view class="info-value">{{ formData.itemModel }}</view>
       </view>
       <view class="info-block">
+        <view class="info-label">宸ュ崟缂栧彿锛�</view>
+        <view v-if="!isUpdate" class="info-value">{{ formData.billNo }}</view>
+        <picker v-else :range="DAA001List" class="picker info-value-input" name="selector"
+                @change="onDaa001Change">
+          <view>{{ DAA001List[DAA001Index] }}</view>
+        </picker>
+        <view class="info-label">椤圭洰锛�</view>
+        <view class="info-value">{{ formData.projecT_CODE }}</view>
         <view class="info-label">宸ュ崟鏁伴噺锛�</view>
         <view class="info-value highlight">{{ formData.planQty }}</view>
       </view>
-      <view v-if="formData.remarks" class="info-block">
-        <view class="info-label">涓嶅悎鏍兼弿杩帮細</view>
+      <view v-if="formData.remarks && current" class="info-block">
+        <view class="info-label">澶囨敞锛�</view>
         <view class="info-value">{{ formData.remarks }}</view>
       </view>
     </view>
 
-    <!-- 鎿嶄綔鎸夐挳鍖� - 妫�楠岄」鐩幏鍙� -->
-    <view v-if="isUpdate" class="action-buttons">
-      <button class="secondary-btn" @click="getTable">鑾峰彇妫�楠岄」鐩�</button>
+    <!-- 鎿嶄綔鎸夐挳鍖� -->
+    <view class="action-buttons">
+      <button v-if="current" class="secondary-btn" @click="getTable">鑾峰彇妫�楠岄」鐩�</button>
+      <button v-if="formData.billNo" class="secondary-btn" @click="closeInspection">鍏抽棴姝ゆ妫�楠�</button>
+    <!-- <button v-if="isShowTable && isUpdate" class="primary-btn" @click="saveTable">鐢熸垚妫�楠岄」鐩�</button> --> 
     </view>
 
     <!-- 妫�楠岄」鐩〃鏍� -->
     <view v-if="tableData.length > 0" class="inspection-table">
-      <!-- 琛ㄦ牸澶撮儴缁熻淇℃伅 -->
-      <view class="table-header-stats">
-        <view class="stats-left">
-          <view class="stats-title">妫�楠岄」鐩竻鍗�</view>
-          <view class="stats-subtitle">鍏� {{ tableData.length }} 涓楠岄」鐩�</view>
-        </view>
-        <view class="stats-right">
-          <view class="stat-item passed">
-            <span class="stat-count">{{ getPassedCount() }}</span>
-            <span class="stat-label">宸插悎鏍�</span>
-          </view>
-          <view class="stat-item failed">
-            <span class="stat-count">{{ getFailedCount() }}</span>
-            <span class="stat-label">涓嶅悎鏍�</span>
-          </view>
-          <view class="stat-item pending">
-            <span class="stat-count">{{ getPendingCount() }}</span>
-            <span class="stat-label">寰呮楠�</span>
-          </view>
-        </view>
-      </view>
       <table>
         <thead>
         <tr>
@@ -98,35 +77,21 @@
         </thead>
         <tbody>
         <tr v-for="(item, index) in tableData" :key="index">
+          <td>{{ item.projName }}</td>
           <td>
-            <view class="project-name-wrapper">
-								<span :class="{
-									'status-approved': item.result=='鍚堟牸',
-									'status-rejected': item.result=='涓嶅悎鏍�',
-									'status-pending': item.result=='鏈畬鎴�'
-								}" class="status-indicator"></span>
-              <span>{{ item.projName }}</span>
-            </view>
-          </td>
-          <td>
-            <view v-if="item.result=='鍚堟牸'" class="watermark approved">
-              鍚堟牸
-            </view>
-            <view v-if="item.result=='涓嶅悎鏍�'" class="watermark rejected">
-              涓嶅悎鏍�
-            </view>
-            <view v-if="item.result=='鏈畬鎴�'" class="watermark pending">
-              寰呮楠�
-            </view>
+            <view v-if="item.result=='鍚堟牸'" class="watermark approved">鍚堟牸</view>
+            <view v-if="item.result=='涓嶅悎鏍�'" class="watermark rejected">涓嶅悎鏍�</view>
+            <view v-if="item.result=='鏈畬鎴�'" class="watermark pending">寰呯‘璁�</view>
             <view class="description-text">{{ item.itemMod }}</view>
           </td>
           <td>
-            <button v-if="item.isCheck < item.levelNum" class="record-btn record-btn-fill"
+             <button v-if="item.isCheck < item.levelNum" class="record-btn record-btn-fill"
                     @click="toDetail(item)">
-              濉啓 ({{ item.isCheck }}/{{ item.levelNum }})
+              濉啓 <!--({{ item.isCheck }}/{{ item.levelNum }})-->
             </button>
-            <button v-else class="record-btn record-btn-view" @click="toDetail(item)">
-              鏌ョ湅 ({{ item.isCheck }}/{{ item.levelNum }})
+            
+             <button v-else class="record-btn record-btn-view" @click="toDetail(item, index)">
+              鏌ョ湅<!--({{ item.isCheck }}/{{ item.levelNum }})--> 
             </button>
           </td>
         </tr>
@@ -137,18 +102,13 @@
     <!-- 鎿嶄綔鎸夐挳鍖� -->
     <view class="action-buttons">
       <button v-if="isUpdate && !isShowTable" class="secondary-btn" @click="getItem">鍒涘缓妫�楠屽崟骞剁敓鎴愰儴鍒嗛粯璁ゅ��</button>
-	  
-	    <!-- <button class="secondary-btn" @click="toYzxSubmitFrom(formData.releaseNo)">涓�鑷存�ф牳瀵�</button> -->
-	  
-	   <button v-if="!isUpdate && !isShowTable" class="secondary-btn" @click="toYzxSubmitFrom(formData.releaseNo)">涓�鑷存�ф牳瀵�</button>
-      <button v-if="!isUpdate && !isShowTable" class="secondary-btn" @click="toImage">涓婁紶/鏌ョ湅鍥剧墖</button>
-      <button v-if="!isUpdate && !formData.fsubmit && !isShowTable" class="secondary-btn" @click="removeXJ">
+      <button v-if="!isUpdate && !isShowTable" class="secondary-btn" @click="uploadImages">鏌ョ湅鎵�鏈夊浘鐗�</button>
+      <button v-if="!isUpdate && !isShowTable" class="secondary-btn" @click="addDefectDescription">鏌ョ湅涓嶈壇鎻忚堪</button>
+      <!--  <button v-if="!isUpdate && !formData.statusUser && !isShowTable" class="secondary-btn" @click="removeXJ">
         鍒犻櫎鍗曟嵁
-      </button>
-      <button v-if="!isUpdate && !isShowTable" class="secondary-btn" @click="saveRemarks">娣诲姞澶囨敞</button>
-      <button v-if="!isUpdate && !isShowTable && formData.fsubmit !== 1 && getPendingCount() === 0 && tableData.length > 0" class="primary-btn" @click="submit">瀹℃牳鍗曟嵁</button>
-      <button v-if="isShowTable" class="secondary-btn" @click="getTable">鑾峰彇妫�楠岄」鐩�</button>
-      <button v-if="isShowTable && isUpdate" class="primary-btn" @click="saveTable">鐢熸垚妫�楠岄」鐩�</button>
+      </button> -->
+      <!-- <button v-if="!isUpdate && !isShowTable" class="secondary-btn" @click="saveRemarks">娣诲姞澶囨敞</button> -->
+      <button v-if="!isUpdate && !isShowTable && current" class="primary-btn" @click="submit">妫�楠屾彁浜�</button>
     </view>
 
     <!-- 涓嶅悎鏍兼弿杩板脊绐� -->
@@ -173,40 +133,32 @@
   data() {
     return {
       formData: {
+        createTime: "",
         id: "",
-        releaseNo: "",
-        createBy: "",
-        createDate: "",
-        daa020: "",
-        itemNo: "",
         billNo: "",
-        catQty: "",
-        detailMem: "",
-        taskNo: "",
-        fcheckResu: 0,
-        boardModel: "",
-        planQty: "",
-        mocode: "",
-        boardStyle: "",
-        fSubmit: 0
+        itemNo: "",
+        itemName: "",
+        workshopCode: "",
+        workshopName: "",
+        line: "",
+        lineName: "",
+        comments: "",
+        statusUser: "",
+        itemId: "",
+        fSubmit: 0,
       },
 
       DAA020List: [],
-      DAA020Index: -1,
 
       DAA001List: [],
-      DAA001Index: -1,
       schemeResult: [],
-
-      isShowTable: false,
+      DAA001Index: -1,
 
       ItemList: [],
-      ItemIndex: -1,
+
       boardItems: [],
 
-      lineList: [],
-
-      lineNo: "",
+      womdaaList: [],
 
       tableData: [],
 
@@ -214,45 +166,69 @@
 
       isUpdate: true,
 
+      isShowTable: false,
+
       remarks: "",
       remarksPopup: false,
+
+      comments: "",
+      commentsPopup: false,
+      current: true,
     };
   },
   onLoad(options) {
     //options涓寘鍚簡url闄勫甫鐨勫弬鏁�
-	
-    let params = options;
-if(params["current"]==='A')
-		{
-			this.current=true;
-		}else if(params["current"]==='B'){
-			this.current=false;
-		}
-    if (params["id"]) {
-      this.isUpdate = false;
-      this.formData.id = params["id"];
-      this.formData.releaseNo = params["releaseNo"];
-      //getQaItemXj02
-      this.init();
-    } else {
-      //鍒濆鍖栨楠屽崟鍙�
-      this.$post({
-        url: "/XJ/getMaxReleaseNo"
-      }).then(res => {
-        this.formData.releaseNo = res.data.tbBillList;
-        this.formData.createBy = this.$loginInfo.account;
-        this.formData.createDate = this.$getDate("yyyy-mm-dd");
-      });
 
-      //杞﹂棿涓嬫媺妗嗙殑鍒濆鍖�
-      this.$post({
-        url: "/XJ/getLineAll"
-      }).then(res => {
-        this.lineList = res.data.tbBillList;
-        this.DAA020List = res.data.tbBillList.map(item => item.lineName);
-      })
+    let params = options;
+
+    // tab 鐘舵�佽瘑鍒�
+    if(params["current"] === 'A') {
+        this.current = true;
+    } else if(params["current"] === 'B') {
+        this.current = false;
     }
-  },
+
+    if (params["id"]) {
+
+        this.isUpdate = false;
+
+        // 猸愨瓙猸� 鏂板锛氬繀椤讳繚瀛樺埌 this.id锛屽悗缁帴鍙f墠鑳戒娇鐢�
+        this.id = params["id"];         // 鈫愨啇鈫� 蹇呴』鍔犺繖涓�鍙ワ紒锛侊紒
+
+        // 鍘熸潵浣犵殑閫昏緫淇濇寔涓嶅姩
+        this.formData.id = params["id"];
+        this.formData.billNo = params["billNo"];
+
+        // 鍒濆鍖栨槑缁�
+        this.init();
+
+    } else {
+
+        // 鍒濆鍖栨楠屽崟鍙�
+        this.$post({
+            url: "/XJ/getMaxReleaseNo"
+        }).then(res => {
+            this.formData.billNo = res.data.tbBillList;
+            this.formData.createTime = this.$getDate("yyyy-mm-dd");
+        });
+
+        // 浜у搧缂栫爜涓嬫媺妗嗗垵濮嬪寲
+        this.$post({
+            url: "/XJ/getLineAll"
+        }).then(res => {
+            this.lineList = res.data.tbBillList;
+            this.DAA020List = res.data.tbBillList.map(item => item.lineName);
+            this.formData.itemNo = "";
+            this.formData.itemName = "";
+            this.formData.workshopCode = "";
+            this.formData.workshopName = "";
+            this.formData.line = "";
+            this.formData.lineName = "";
+            this.formData.pbaid = null;
+        })
+    }
+}
+,
   methods: {
     // 鑾峰彇鍚堟牸椤圭洰鏁伴噺
     getPassedCount() {
@@ -266,49 +242,26 @@
     getPendingCount() {
       return this.tableData.filter(item => item.result === '鏈畬鎴�').length;
     },
-    submit() {
-      // 鍙岄噸淇濋櫓锛氭鏌ユ槸鍚﹁繕鏈夋湭瀹屾垚鐨勬楠岄」鐩�
-      const pendingCount = this.getPendingCount();
-      if (pendingCount > 0) {
-        this.$showMessage(`杩樻湁 ${pendingCount} 涓楠岄」鐩湭瀹屾垚锛岃瀹屾垚鎵�鏈夋楠岄」鐩悗鍐嶆彁浜ゅ鏍竊);
-        return;
+    // 鍏抽棴姝ゆ妫�楠屽苟浼犲贰妫�鍗曞彿缁欏悗绔�
+    closeInspection() {
+      if (this.formData.billNo) {
+        this.$post({
+          url: "/XJ/closeInspection",
+          data: {
+            billNo: this.formData.billNo,
+            id: this.formData.id
+          }
+        }).then(res => {
+          this.$showMessage("妫�楠屽凡鍏抽棴");
+          // 鍏抽棴褰撳墠椤甸潰锛岃繑鍥炰笂涓�椤甸潰
+          uni.navigateBack();
+        }).catch(err => {
+          this.$showMessage("鍏抽棴妫�楠屽け璐ワ紝璇烽噸璇�");
+        });
+      } else {
+        this.$showMessage("宸℃鍗曞彿涓嶅瓨鍦�");
       }
-
-      // 妫�鏌ユ槸鍚︽湁妫�楠岄」鐩�
-      if (this.tableData.length === 0) {
-        this.$showMessage("娌℃湁妫�楠岄」鐩紝鏃犳硶鎻愪氦瀹℃牳");
-        return;
-      }
-
-      this.$post({
-        url: "/XJ/XJQaSubmit",
-        data: {
-          userNo: this.$loginInfo.account,
-          gid: this.formData.id
-        }
-      }).then(res => {
-        console.log("瀹屾暣鍝嶅簲鏁版嵁:", res);
-        console.log("Status Code鐨勫��:", res.statusCode);
-        console.log("杩斿洖鐨勬暟鎹�:", res.data);
-        
-        // 妫�鏌ュ绉嶆垚鍔熸潯浠�
-        if (res.statusCode === 200 || res.status === 0 || res.data === true || res.data.tbBillList === true) {
-          this.$showMessage("鎴愬姛鎻愪氦妫�楠�");
-          // 鎻愪氦鎴愬姛鍚庤烦杞埌鍒楄〃椤甸潰
-          setTimeout(() => {
-            uni.navigateTo({
-              url: '/pages/QC/XJ/List'
-            });
-          }, 1500); // 1.5绉掑悗璺宠浆锛岃鐢ㄦ埛鐪嬪埌鎴愬姛鎻愮ず
-        } else {
-          this.$showMessage(res.data.message || res.message || "鎻愪氦澶辫触");
-        }
-      }).catch(err => {
-        console.log("鎻愪氦鍑洪敊:", err);
-        this.$showMessage("鎻愪氦澶辫触锛岃閲嶈瘯");
-      })
     },
-
     removeXJ() {
       if (this.formData.id) {
         this.$post({
@@ -329,38 +282,105 @@
         this.$showMessage("璇峰厛閫夋嫨妫�楠屽崟鍙�");
       }
     },
-    getItem() {
 
-      if (this.isSubmit) {
-        this.$showMessage("姝ょ墿鏂欐棤鍚敤鐨勬楠岄」鐩紝璇风淮鎶�!");
-        return;
-      }
-
-      if (!this.formData.billNo) {
-        this.$showMessage("璇烽�夋嫨璁″垝缂栧彿");
-        return;
-      }
-
+    submit() {
       this.$post({
-        url: "/XJ/save",
+        url: "/XJ/XJQaSubmit",
         data: {
-          from: this.formData,
           userNo: this.$loginInfo.account,
-          items: this.tableData
+          gid: this.formData.id
         }
       }).then(res => {
-        this.formData.id = res.data.tbBillList;
-        this.$showMessage("鐢熸垚妫�楠岄」鐩垚鍔�");
-        this.init();
-        this.isUpdate = false;
-      });
+
+        //2024-11-28 kyy 鏍¢獙鍚堟牸鎻愪氦澧炲姞鎻愮ず
+        console.log("瀹屾暣鍝嶅簲鏁版嵁:", res);
+        console.log("Status Code鐨勫��:", res.statusCode);
+        console.log("杩斿洖鐨勬暟鎹�:", res.data);
+        
+        // 妫�鏌ュ绉嶆垚鍔熸潯浠�
+        if (res.statusCode === 200 || res.status === 0 || res.data === true || res.data.tbBillList === true) {
+
+          this.$showMessage("鎴愬姛鎻愪氦妫�楠�");
+          // 鎻愪氦鎴愬姛鍚庤烦杞埌鍒楄〃椤甸潰
+          setTimeout(() => {
+            uni.navigateTo({
+              url: '/pages/QC/XJ/List'
+            });
+          }, 1500); // 1.5绉掑悗璺宠浆锛岃鐢ㄦ埛鐪嬪埌鎴愬姛鎻愮ず
+        } else {
+          this.$showMessage(res.data.message || res.message || "鎻愪氦澶辫触");
+        }
+      }).catch(err => {
+        console.log("鎻愪氦鍑洪敊:", err);
+        this.$showMessage("鎻愪氦澶辫触锛岃閲嶈瘯");
+      })
     },
-    //鐢熶骇绾垮埆閫夋嫨骞跺垵濮嬭瘽宸ュ崟鍙�
+
+    init() {
+      if (this.formData.id) {
+        this.$post({
+          url: "/XJ/getPage",
+          data: {
+            pageIndex: 1,
+            limit: 1,
+            id: this.formData.id
+          }
+        }).then(res => {
+          let tbBillListElement = res.data.tbBillList[0];
+          if (tbBillListElement) {
+            // 淇濆瓨鍘熸湁鐨処D鍊�
+            const originalId = this.formData.id;
+            
+            // 淇濆瓨鍘熸湁鐨刡illNo鍊�
+            const originalBillNo = this.formData.billNo;
+            
+            // 灏嗘湇鍔″櫒杩斿洖鐨勬暟鎹悎骞跺埌鐜版湁鏁版嵁涓紝鑰屼笉鏄洿鎺ユ浛鎹�
+            Object.assign(this.formData, tbBillListElement);
+            
+            // 纭繚鍏抽敭瀛楁鍊间笉琚鐩�
+            if ((!this.formData.id || this.formData.id === null || this.formData.id === undefined || this.formData.id === "") && originalId) {
+              this.formData.id = originalId;
+            }
+            
+            if ((!this.formData.billNo || this.formData.billNo === null || this.formData.billNo === undefined || this.formData.billNo === "") && originalBillNo) {
+              this.formData.billNo = originalBillNo;
+            }
+            
+            this.$post({
+              url: "/XJ/getJYItem",
+              data: {
+                pid: this.formData.id
+              }
+            }).then(res => {
+              this.tableData.splice(0, this.tableData.length, ...res.data.tbBillList);
+
+              this.tableData.sort((a, b) => {
+                if (a.result === '鏈畬鎴�' && b.result === '鍚堟牸') {
+                  return -1;
+                } else if (a.result === '鍚堟牸' && b.result === '鏈畬鎴�') {
+                  return 1;
+                } else {
+                  return 0;
+                }
+              });
+
+              if (this.tableData.length === 0) {
+                this.isShowTable = true;
+              }
+              
+              console.log('init瀹屾垚鍚巘ableData闀垮害:', this.tableData.length, 'isShowTable:', this.isShowTable);
+            })
+          }
+        })
+      }
+    },
     onDaa020Change(event) {
       //鑾峰彇鐢熶骇绾垮埆鐨勪笅鏍囧湴鍧�
-      this.DAA020Index = event.mp.detail.value;
+      //this.formData.line = event;
 
-      this.lineNo = this.lineList[this.DAA020Index].lineNo;
+      this.lineNo = this.lineList[this.DAA020List.indexOf(event)].lineNo;
+
+      this.formData.line = this.lineNo;
 
       this.$post({
         url: "/XJ/getBoardItem",
@@ -370,18 +390,15 @@
       }).then(res => {
         //濉厖宸ュ崟鍙风殑鏁版嵁婧�
         this.boardItems = res.data.tbBillList;
+
         this.ItemList = this.boardItems.map(item => item.itemName);
-        //鍙樹负榛樿绌哄�肩殑鐘舵��
-        this.ItemIndex = -1;
       })
 
     },
     onItemChange(event) {
-      this.ItemIndex = event.mp.detail.value;
-      this.formData.itemNo = this.boardItems[this.ItemIndex].itemNo;//涓昏鏄敼杩欓噷
-      this.formData.itemId = this.boardItems[this.ItemIndex].id;//涓昏鏄敼杩欓噷
-      this.formData.itemName = this.boardItems[this.ItemIndex].itemName;//涓昏鏄敼杩欓噷
-      this.formData.itemModel = this.boardItems[this.ItemIndex].itemModel;//涓昏鏄敼杩欓噷
+
+      this.formData.itemNo = event.itemNo;
+
       this.$post({
         url: "/XJ/getDaa001",
         data: {
@@ -394,107 +411,253 @@
         this.DAA001List = this.schemeResult.map(s => s.daa001);
         //鍙樹负榛樿绌哄�肩殑鐘舵��
         this.DAA001Index = -1;
-
-        this.formData.billNo = "";
+        this.formData.daa001 = "";
       })
     },
     //閫夊彇宸ュ崟濉厖鐗╂枡鍙峰拰鍏朵粬淇℃伅
     onDaa001Change(event) {
       this.DAA001Index = event.mp.detail.value;
-      this.formData.billNo = this.schemeResult[this.DAA001Index].daa001;
-      this.formData.planQty = this.schemeResult[this.DAA001Index].daa008;
+
+      this.formData.daa001 = this.schemeResult[this.DAA001Index].daa001;
+
       //琛ㄥ崟涓殑閮ㄥ垎瀛楁璧嬪��
       this.$post({
         url: "/XJ/getItem",
         data: {
-          daa001: this.formData.billNo
+          daa001: this.formData.daa001
         }
       }).then(res => {
         let data = res.data.tbBillList[0];
         //褰撹繑鍥炵殑缁撴灉闆嗕负绌烘椂缃┖鍘熸湁鐨勫��
         if (!data) {
           this.formData.billNo = "";
+          this.formData.taskNo = "";
           this.formData.itemNo = "";
-          this.formData.planQty = "";
-          this.tableData = [];
+          this.tableData.splice(0, this.tableData.length);
           return;
         }
+        //涓嶄负绌烘椂璧嬪��
+        this.formData.daa001 = data.daa001;
+        this.formData.daa003 = data.daa003;
+        this.formData.daa004 = data.daa004;
+        this.formData.daa008 = data.daa008;
+        this.formData.projecT_CODE = data.projecT_CODE;
+        this.formData.itemId = data.itemId;
+        this.formData.pbaid = data.pbaid;
+        this.formData.remarks = data.remarks;
+      })
+    },
+    toDetail(item, index) {
+  // 妫�鏌ユ楠屽崟鏄惁瀛樺湪
+  if (!this.formData.id) {
+    this.$showMessage("妫�楠屽崟鏁版嵁涓嶅畬鏁达紝璇峰厛鑾峰彇妫�楠岄」鐩垨閲嶆柊鍔犺浇椤甸潰");
+    return;
+  }
 
-        this.$post({
-          url: "/XJ/setJYItem",
-          data: {
-            itemNo: this.formData.itemNo
-          }
-        }).then(res => {
-          if (res.data.tbBillList.length > 0) {
-            this.tableData = res.data.tbBillList; // 鍦ㄧ澶村嚱鏁颁腑锛宼his 鎸囧悜澶栧眰浣滅敤鍩熺殑 this
-            this.isSubmit = false;
-          } else {
-            this.$showMessage("姝ょ墿鏂欐病鏈夊惎鐢ㄧ殑妫�楠岄」鐩紝璇风淮鎶�!");
-            this.isSubmit = true;
-            this.tableData = [];
-          }
-        });
+  if (this.isUpdate) {
+    uni.showToast({
+      icon: "none",
+      title: "璇峰厛鐢熸垚妫�楠岄」鐩�",
+      duration: 2000,
+    });
+    return;
+  }
+
+  // 濡傛灉 item.id 涓嶅瓨鍦紝灏变紶绌哄瓧绗︿覆鎴栬�呯壒娈婃爣璇�
+  const itemId = item.id != null ? item.id : '';
+  const billNo = this.formData.billNo || '';
+  const gid = this.formData.id || '';
+  const itemIndex = index != null ? index : 0;
+
+  uni.navigateTo({
+    url: 'detail?id=' + encodeURIComponent(itemId) + 
+         '&billNo=' + encodeURIComponent(billNo) + 
+         '&gid=' + encodeURIComponent(gid) + 
+         '&index=' + encodeURIComponent(itemIndex)
+  });
+},
+    getTable() {
+      // 鍦ㄥ紑濮嬫椂娓呯┖鐜版湁鏁版嵁锛岄伩鍏嶇疮鍔�
+      this.tableData.splice(0, this.tableData.length);
+      
+      // 纭繚itemNo瀛樺湪
+      if (!this.formData || !this.formData.itemNo) {
+        this.$showMessage("璇峰厛閫夋嫨鐗╂枡缂栫爜");
+        return;
+      }
+
+      // 鏄剧ず鍔犺浇鎻愮ず锛岄槻姝㈢敤鎴峰湪淇濆瓨杩囩▼涓偣鍑诲~鍐欐寜閽�
+      uni.showLoading({
+        title: '姝e湪鑾峰彇妫�楠岄」鐩�...'
       });
-    },	toYzxSubmitFrom(releaseNo){
-		uni.navigateTo({
-			url: 'yzxFrom?id=' +this.formData.id+'&current='+this.current
-		});
-	},
-    init() {
+
       this.$post({
-        url: "/XJ/getPage",
+        url: "/XJ/setJYItem",
         data: {
-          id: this.formData.id,
-          pageIndex: 1,
-          limit: 1,
+          itemNo: this.formData.itemNo
         }
       }).then(res => {
-        let data = res.data.tbBillList[0];
-        if (data) {
-          this.formData = data;
+        if (res.data && res.data.tbBillList && res.data.tbBillList.length > 0) {
+          // 鐩存帴璧嬪�硷紝閬垮厤绱姞
+          this.tableData.splice(0, this.tableData.length, ...res.data.tbBillList);
+          
+          // 璁剧疆鐘舵�佷互鏄剧ず鐢熸垚妫�楠岄」鐩寜閽�
+          this.isShowTable = true;
+          this.isUpdate = true;  // 娉ㄦ剰杩欓噷鏄痶rue锛岃〃绀哄彲浠ョ敓鎴愭楠岄」鐩�
+          
+          console.log('getTable瀹屾垚鍚庣殑鐘舵��:', {
+            isShowTable: this.isShowTable,
+            isUpdate: this.isUpdate,
+            tableDataLength: this.tableData.length
+          });
+          
+          // 鏄剧ず鎴愬姛娑堟伅
+          this.$showMessage("妫�楠岄」鐩幏鍙栨垚鍔�");
 
-          this.$post({
-            url: "/XJ/getJYItem",
-            data: {
-              pid: this.formData.id
-            }
-          }).then(res1 => {
-            let tableData = res1.data.tbBillList
-            //褰撳凡妫�楠屼釜鏁伴兘涓嶄负绌烘椂鎸夌収妫�娴嬬粨鏋勬帓搴�
-            tableData.sort((a, b) => {
-              if (a.result === '鏈畬鎴�' && b.result === '鍚堟牸') {
-                return -1;
-              } else if (a.result === '鍚堟牸' && b.result === '鏈畬鎴�') {
-                return 1;
-              } else {
-                return 0;
-              }
-            });
-            this.tableData = tableData;
-            if (this.tableData.length === 0) {
-              this.isShowTable = true;
-            }
-          })
+//鐢熸垚妫�楠岄」鐩殑閫昏緫(鏍规嵁瑙勮寖宸叉敞閲�)
+       this.saveTable();
+
+      // 鑷姩鍒锋柊閫昏緫(鏍规嵁瑙勮寖宸叉敞閲�)
+      // 鑾峰彇褰撳墠椤甸潰璺緞鍜屽弬鏁�
+const pages = getCurrentPages();
+const currentPage = pages[pages.length - 1];
+const route = '/' + currentPage.route;
+const options = currentPage.options; // 椤甸潰鍙傛暟瀵硅薄
+
+// 鎷兼帴鍙傛暟
+let query = '';
+for (let key in options) {
+  query += `${key}=${options[key]}&`;
+}
+query = query.slice(0, -1);
+
+// 鍒锋柊褰撳墠椤甸潰
+uni.redirectTo({
+  url: query ? `${route}?${query}` : route
+});
+
+location.reload()
+        } else {
+          this.$showMessage("姝ょ墿鏂欐病鏈夊惎鐢ㄧ殑妫�楠岄」鐩紝璇风淮鎶�!");
+          this.tableData.splice(0, this.tableData.length);
         }
+        
+        // 闅愯棌鍔犺浇鎻愮ず锛屽厑璁哥敤鎴锋搷浣�
+        uni.hideLoading();
+      }).catch(err => {
+        console.error("鑾峰彇妫�楠岄」鐩け璐�:", err);
+        this.$showMessage("鑾峰彇妫�楠岄」鐩け璐ワ紝璇锋鏌ョ綉缁滆繛鎺�");
+        uni.hideLoading();
       });
     },
-    toDetail(item) {
-      if (this.isUpdate) {
-        uni.showToast({
-          icon: "none",
-          title: "璇峰厛鐢熸垚妫�楠岄」鐩�",
-          duration: 2000,
-        });
-      } else {
-        uni.navigateTo({
-          url: 'detail?id=' + item.id + '&billNo=' + this.formData.billNo + '&gid=' + this.formData
-              .id
-        });
+    saveTable() {
+      if (this.tableData.length === 0) {
+        return;
       }
-    }, saveRemarks() {
+      
+      // 鏄剧ず鍔犺浇鎻愮ず
+      uni.showLoading({
+        title: '姝e湪淇濆瓨...'
+      });
+
+      this.$post({
+        url: "/XJ/saveItem",
+        data: {
+          gid: this.formData.id,
+          items: this.tableData,
+          statusUser: this.$loginInfo.account,
+          ItemNo:this.formData.itemNo
+        }
+      }).then(res => {
+        // 鍙湪闇�瑕佹椂鏇存柊tableData锛岄伩鍏嶉噸澶嶇疮鍔�
+        if (res.data && res.data.tbBillList && res.data.tbBillList.items) {
+          // 纭繚瀹屽叏鏇挎崲鑰屼笉鏄疮鍔�
+          this.tableData.splice(0, this.tableData.length, ...res.data.tbBillList.items);
+        }
+            
+        // 閲嶈锛氱‘淇漟ormData.id涓嶈瑕嗙洊
+        if (!this.formData.id) {
+          this.$showMessage("璀﹀憡锛氭楠屽崟ID涓㈠け锛岃閲嶆柊鍔犺浇椤甸潰");
+        }
+            
+        // 璁剧疆鐘舵�佷互鏄剧ず妫�楠屾彁浜ゆ寜閽�
+        this.isShowTable = false;
+        this.isUpdate = false;
+            
+        console.log('saveTable瀹屾垚鍚庣殑鐘舵��:', {
+          isShowTable: this.isShowTable,
+          isUpdate: this.isUpdate,
+          tableDataLength: this.tableData.length
+        });
+            
+        // 鏄剧ず鎴愬姛娑堟伅
+        this.$showMessage("鐢熸垚妫�楠岄」鐩垚鍔�");
+            
+        // 闅愯棌鍔犺浇鎻愮ず锛屽厑璁哥敤鎴锋搷浣�
+        uni.hideLoading();
+      }).catch(err => {
+        console.error("淇濆瓨妫�楠岄」鐩け璐�:", err);
+        this.$showMessage("淇濆瓨妫�楠岄」鐩け璐ワ紝璇烽噸璇�");
+        uni.hideLoading();
+      })
+    },
+    toYzxSubmitFrom(releaseNo){
+      uni.navigateTo({
+        url: 'yzxFrom?id=' +this.formData.id+'&current='+(this.current ? 'true' : 'false')
+      });
+    },
+    toSNScanCode(releaseNo){
+      uni.navigateTo({
+        url: 'ScanCode?id=' +this.formData.id+'&current='+(this.current ? 'true' : 'false')
+      });
+    },
+    save() {
+
+      // if (this.tableData.length === 0) {
+      // 	this.$showMessage(this.formData.itemNo + "鐗╂枡娌℃湁妫�楠岄」鐩�");
+      // 	return;
+      // }
+
+      if (!this.formData.daa001) {
+        this.$showMessage("璇烽�夋嫨璁″垝缂栧彿");
+        return;
+      }
+
+      this.formData.statusUser = this.$loginInfo.account;
+
+      this.$post({
+        url: "/XJ/save",
+        data: {
+          from: this.formData,
+          userNo: this.$loginInfo.account,
+          items: this.tableData
+        }
+      }).then(res => {
+        // 淇濆瓨鍘熸湁鐨処D鍊�
+        const originalId = this.formData.id;
+        
+        // 璁剧疆鏂扮殑ID鍊硷紙濡傛灉杩斿洖鐨勬槸ID锛�
+        if (res.data.tbBillList && typeof res.data.tbBillList === 'string' && res.data.tbBillList !== null && res.data.tbBillList !== undefined && res.data.tbBillList !== "") {
+          this.formData.id = res.data.tbBillList;
+        }
+        
+        // 濡傛灉娌℃湁杩斿洖鏂扮殑ID锛屽垯淇濇寔鍘熸湁鐨処D
+        if (!this.formData.id && originalId) {
+          this.formData.id = originalId;
+        }
+        
+        this.$showMessage("鐢熸垚妫�楠岄」鐩垚鍔�");
+        this.init();
+        this.isUpdate = false;
+      });
+    },
+    saveRemarks() {
       this.remarksPopup = !this.remarksPopup;
       this.remarks = this.formData.remarks;
+    },
+    saveComments() {
+      this.commentsPopup = !this.commentsPopup;
+      this.comments = this.formData.comments;
     },
     editRemarks() {
       if (this.remarks) {
@@ -514,54 +677,42 @@
         })
       }
     },
-    toImage() {
-      uni.navigateTo({
-        url: 'ImageItem?id=' + this.formData.id
-      });
-    },
-    getTable() {
-      this.$post({
-        url: "/XJ/setJYItem",
-        data: {
-          itemNo: this.formData.itemNo
-        }
-      }).then(res => {
-        if (res.data.tbBillList.length > 0) {
-          this.tableData = res.data.tbBillList; // 鍦ㄧ澶村嚱鏁颁腑锛宼his 鎸囧悜澶栧眰浣滅敤鍩熺殑 this
-          this.isShowTable = true;
-          this.isUpdate = true;
-        } else {
-          this.$showMessage("姝ょ墿鏂欐病鏈夊惎鐢ㄧ殑妫�楠岄」鐩紝璇风淮鎶�!");
-          this.isShowTable = true;
-          this.isUpdate = false;
-          this.tableData = [];
-        }
-      });
-    },
-    saveTable() {
-      if (this.tableData.length === 0) {
-        return;
+    editComments() {
+      if (this.comments) {
+        //saveRemarksGid
+        this.$post({
+          url: "/XJ/saveCommentGid",
+          data: {
+            gid: this.formData.id,
+            comments: this.comments
+          }
+        }).then(res => {
+          if (res.data.tbBillList > 0) {
+            this.formData.comments = this.comments;
+            this.commentsPopup = !this.commentsPopup;
+            this.$showMessage("淇濆瓨鎴愬姛");
+          }
+        })
       }
-      this.$post({
-        url: "/XJ/saveItem",
-        data: {
-          gid: this.formData.id,
-          items: this.tableData,
-          userNo: this.$loginInfo.account
-        }
-      }).then(res => {
-        this.formData.id = res.data.tbBillList;
-        this.isShowTable = false;
-        this.isUpdate = false;
-        this.init();
-      })
-    }
+    },
+    uploadImages() {
+      // 鏌ョ湅鎵�鏈夊浘鐗囩殑閫昏緫
+      console.log('鐐瑰嚮浜嗘煡鐪嬫墍鏈夊浘鐗囨寜閽紝billNo:', this.formData.billNo);
+      uni.navigateTo({
+        url: 'ImageItemALL?id=' + this.formData.id
+      });
+    },
+    addDefectDescription() {
+      // 鏌ョ湅鎵�鏈変笉鑹弿杩扮殑閫昏緫
+      console.log('鐐瑰嚮浜嗘煡鐪嬩笉鑹弿杩版寜閽紝billNo:', this.formData.billNo);
+      uni.navigateTo({
+        url: 'Blms?id=' + this.formData.id
+      });
+    },
   },
   onShow() {
     //姣忔杩涘叆椤甸潰閮戒細鎵ц鐨勬柟娉�
-    if (this.formData.id) {
-      this.init();
-    }
+    this.init();
   }
 };
 </script>
@@ -663,125 +814,6 @@
 /* 琛ㄦ牸鏍峰紡 */
 .inspection-table {
   margin: 25px 0;
-  border-radius: 8px;
-  overflow: hidden;
-  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
-  background: #fff;
-}
-
-/* 琛ㄦ牸澶撮儴缁熻淇℃伅 */
-.table-header-stats {
-  display: flex;
-  justify-content: space-between;
-  align-items: center;
-  padding: 16px 20px;
-  background: linear-gradient(135deg, #f8f9fa, #e9ecef);
-  border-bottom: 1px solid #e0e0e0;
-}
-
-.stats-left .stats-title {
-  font-size: 18px;
-  font-weight: bold;
-  color: #2c3e50;
-  margin-bottom: 4px;
-}
-
-.stats-left .stats-subtitle {
-  font-size: 14px;
-  color: #7f8c8d;
-}
-
-.stats-right {
-  display: flex;
-  gap: 16px;
-}
-
-.stat-item {
-  display: flex;
-  flex-direction: column;
-  align-items: center;
-  padding: 8px 12px;
-  border-radius: 6px;
-  min-width: 60px;
-  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
-}
-
-.stat-item.passed {
-  background: linear-gradient(135deg, rgba(39, 174, 96, 0.1), rgba(39, 174, 96, 0.2));
-  border: 1px solid rgba(39, 174, 96, 0.3);
-}
-
-.stat-item.failed {
-  background: linear-gradient(135deg, rgba(230, 126, 34, 0.1), rgba(230, 126, 34, 0.2));
-  border: 1px solid rgba(230, 126, 34, 0.3);
-}
-
-.stat-item.pending {
-  background: linear-gradient(135deg, rgba(243, 156, 18, 0.1), rgba(243, 156, 18, 0.2));
-  border: 1px solid rgba(243, 156, 18, 0.3);
-}
-
-.stat-count {
-  font-size: 20px;
-  font-weight: bold;
-  line-height: 1;
-  margin-bottom: 2px;
-}
-
-.stat-item.passed .stat-count {
-  color: #27ae60;
-}
-
-.stat-item.failed .stat-count {
-  color: #e67e22;
-}
-
-.stat-item.pending .stat-count {
-  color: #f39c12;
-}
-
-.stat-label {
-  font-size: 12px;
-  color: #7f8c8d;
-  font-weight: 500;
-}
-
-/* 绉诲姩绔〃鏍煎ご閮ㄧ粺璁� */
-@media (max-width: 500px) {
-  .table-header-stats {
-    flex-direction: column;
-    gap: 12px;
-    align-items: flex-start;
-    padding: 12px 16px;
-  }
-
-  .stats-right {
-    width: 100%;
-    justify-content: space-around;
-    gap: 8px;
-  }
-
-  .stat-item {
-    flex: 1;
-    min-width: auto;
-    padding: 6px 8px;
-  }
-
-  .stat-count {
-    font-size: 16px;
-  }
-
-  .stat-label {
-    font-size: 11px;
-  }
-
-  .stats-left .stats-title {
-    font-size: 16px;
-  }
-
-  .stats-left .stats-subtitle {
-    font-size: 13px;
-  }
 }
 
 .inspection-table table {
@@ -790,82 +822,30 @@
 }
 
 .inspection-table th, .inspection-table td {
-  padding: 16px 20px;
-  border: none;
+  padding: 12px 15px;
+  border: 1px solid #ddd;
   text-align: left;
-  border-bottom: 1px solid #eee;
 }
 
 .inspection-table th {
-  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
-  font-weight: 600;
-  color: #fff;
-  font-size: 14px;
-  letter-spacing: 0.5px;
-  position: relative;
+  background-color: #f8f9fa;
+  font-weight: bold;
+  color: #34495e;
 }
 
-.inspection-table tbody tr {
-  transition: all 0.3s ease;
-  border-left: 4px solid transparent;
+.inspection-table tr:nth-child(even) {
+  background-color: #f9f9f9;
 }
 
-.inspection-table tbody tr:nth-child(even) {
-  background-color: #f8fafc;
-}
-
-.inspection-table tbody tr:hover {
-  background-color: #e8f4fd;
-  border-left-color: #3498db;
-  transform: translateY(-1px);
-  box-shadow: 0 4px 12px rgba(52, 152, 219, 0.15);
-}
-
-/* 妫�楠岄」鐩垪鏍峰紡 */
-.inspection-table td:first-child {
-  font-weight: 600;
-  color: #2c3e50;
-  font-size: 15px;
-}
-
-/* 椤圭洰鍚嶇О鍖呰鍣� */
-.project-name-wrapper {
-  display: flex;
-  align-items: center;
-  gap: 8px;
-}
-
-/* 鐘舵�佹寚绀哄櫒 */
-.status-indicator {
-  width: 8px;
-  height: 8px;
-  border-radius: 50%;
-  display: inline-block;
-  flex-shrink: 0;
-  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.8);
-}
-
-.status-indicator.status-approved {
-  background-color: #27ae60;
-  box-shadow: 0 0 0 2px rgba(39, 174, 96, 0.3);
-}
-
-.status-indicator.status-rejected {
-  background-color: #e67e22;
-  box-shadow: 0 0 0 2px rgba(230, 126, 34, 0.3);
-}
-
-.status-indicator.status-pending {
-  background-color: #f39c12;
-  box-shadow: 0 0 0 2px rgba(243, 156, 18, 0.3);
+.inspection-table tr:hover {
+  background-color: #f1f5f9;
 }
 
 /* 妫�楠屾弿杩板垪鐗规畩鏍峰紡 */
 .inspection-table td:nth-child(2) {
   position: relative;
-  min-height: 80px;
-  vertical-align: top;
-  padding: 16px 20px;
+  overflow: hidden;
+  padding: 0;
 }
 
 /* 鎸夐挳鏍峰紡 */
@@ -905,99 +885,74 @@
 }
 
 .record-btn {
-  padding: 8px 16px;
-  background: linear-gradient(135deg, #3498db, #2980b9);
-  color: #fff;
-  border: none;
-  border-radius: 6px;
+  padding: 6px 12px;
+  background-color: #f8f9fa;
+  border: 1px solid #ddd;
   cursor: pointer;
-  transition: all 0.3s ease;
-  font-weight: 500;
-  font-size: 13px;
-  box-shadow: 0 2px 4px rgba(52, 152, 219, 0.3);
+  transition: all 0.2s;
 }
 
 .record-btn:hover {
-  background: linear-gradient(135deg, #2980b9, #1f618d);
-  transform: translateY(-1px);
-  box-shadow: 0 4px 8px rgba(52, 152, 219, 0.4);
-}
-
-.record-btn:active {
-  transform: translateY(0);
+  background-color: #e9ecef;
 }
 
 /* 濉啓鐘舵�佹寜閽� */
 .record-btn-fill {
-  background: linear-gradient(135deg, #2ecc71, #27ae60);
-  box-shadow: 0 2px 4px rgba(46, 204, 113, 0.3);
+  background-color: #f8f9fa;
+  border: 1px solid #ddd;
 }
 
 .record-btn-fill:hover {
-  background: linear-gradient(135deg, #27ae60, #229954);
-  box-shadow: 0 4px 8px rgba(46, 204, 113, 0.4);
+  background-color: #e9ecef;
 }
 
 /* 鏌ョ湅鐘舵�佹寜閽� */
 .record-btn-view {
-  background: linear-gradient(135deg, #95a5a6, #7f8c8d);
-  box-shadow: 0 2px 4px rgba(149, 165, 166, 0.3);
+  background-color: #f8f9fa;
+  border: 1px solid #ddd;
 }
 
 .record-btn-view:hover {
-  background: linear-gradient(135deg, #7f8c8d, #6c7b7d);
-  box-shadow: 0 4px 8px rgba(149, 165, 166, 0.4);
+  background-color: #e9ecef;
 }
 
 /* 姘村嵃鏍峰紡 */
 .watermark {
   position: absolute;
-  font-size: 32px;
+  font-size: 40px;
   font-weight: bold;
-  opacity: 0.4;
-  z-index: 3;
+  opacity: 1;
+  z-index: 1;
   pointer-events: none;
-  bottom: 8px;
-  right: 8px;
   transform: rotate(-15deg);
-  transform-origin: bottom right;
-  text-shadow: 1px 1px 2px rgba(255, 255, 255, 0.8);
-  min-width: 60px;
+  width: 100%;
   text-align: center;
+  top: 50%;
+  left: 50%;
+  transform: translate(-50%, -50%) rotate(-15deg);
 }
 
 .watermark.approved {
-  color: #27ae60; /* 鏇存贰鐨勭豢鑹� */
+  color: #2ecc71; /* 缁胯壊 */
 }
 
 .watermark.rejected {
-  color: #e67e22; /* 鏇存贰鐨勭孩鑹� */
+  color: #e74c3c; /* 绾㈣壊 */
 }
 
 .watermark.pending {
   color: #f39c12; /* 姗欒壊 */
 }
 
-/* 鎻忚堪鏂囨湰鏍峰紡 */
+/* 鎻忚堪鏂囨湰瀹瑰櫒 */
 .description-text {
   position: relative;
   z-index: 2;
-  padding: 12px 16px;
-  background: transparent;
-  line-height: 1.6;
-  font-size: 14px;
-  color: #555;
-  margin: 0;
-  word-wrap: break-word;
-  word-break: break-word;
-  max-width: 100%;
-  /* 纭繚鏂囧瓧涓嶄細澶暱閬尅姘村嵃 */
-  padding-right: 80px;
-  min-height: 20px;
-  display: block;
+  padding: 25px;
+  background-color: rgba(255, 255, 255, 0.7);
 }
 
-/* 寮瑰嚭灞傛牱寮� */
+/* 寮圭獥鏍峰紡 */
 .overlay {
   position: fixed;
   top: 0;
@@ -1008,74 +963,55 @@
   display: flex;
   justify-content: center;
   align-items: center;
-  z-index: 10;
+  z-index: 1000;
 }
 
 .popup {
-  background-color: #fff;
+  background-color: white;
   padding: 20px;
-  border: 1px solid #ccc;
-  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
-  width: 85vw;
-  min-height: 35vh;
-  max-height: 60vh;
   border-radius: 8px;
+  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
+  max-width: 500px;
+  width: 90%;
 }
 
 .popup h3 {
   margin-top: 0;
-  color: #2c3e50;
-  border-bottom: 1px solid #eee;
-  padding-bottom: 10px;
-  margin-bottom: 15px;
-  font-size: 16px;
-  text-align: center;
+  color: #333;
 }
 
-.popup .form-group {
+.form-group {
   margin-bottom: 15px;
-  display: flex;
-  flex-direction: column;
 }
 
-.popup .form-label {
+.form-label {
+  display: block;
   margin-bottom: 5px;
   font-weight: bold;
-  font-size: 14px;
+  color: #555;
 }
 
-.popup .form-input {
+.form-input {
   width: 100%;
-  padding: 8px;
+  padding: 8px 12px;
   border: 1px solid #ddd;
   border-radius: 4px;
-  font-size: 14px;
   box-sizing: border-box;
 }
 
-.popup .form-textarea {
-  min-height: 120px;
+.form-textarea {
+  height: 100px;
   resize: vertical;
-  font-family: inherit;
-  line-height: 1.5;
-}
-
-.popup-buttons {
-  display: flex;
-  justify-content: flex-end;
-  gap: 10px;
-  margin-top: 20px;
 }
 
 .updateBut {
   background-color: #3498db;
   color: white;
+  padding: 10px 20px;
   border: none;
-  padding: 8px 15px;
   border-radius: 4px;
-  margin-right: 10px;
   cursor: pointer;
-  transition: all 0.3s;
+  margin-right: 10px;
 }
 
 .updateBut:hover {
@@ -1083,32 +1019,26 @@
 }
 
 /* 鍝嶅簲寮忚璁� */
-@media (max-width: 500px) {
-  .info-row,
-  .info-block {
-    flex-direction: column;
-    align-items: flex-start;
+@media (max-width: 768px) {
+  .inspection-sheet {
+    padding: 10px;
   }
-
+  
+  .info-row {
+    flex-direction: column;
+  }
+  
+  .info-label, .info-value {
+    margin-bottom: 5px;
+  }
+  
   .action-buttons {
     flex-direction: column;
   }
-
-  .inspection-table table {
-    display: block;
-    overflow-x: auto;
-  }
-
-  /* 绉诲姩绔脊鍑烘浼樺寲 */
-  .popup {
-    width: 95vw;
-    min-height: 40vh;
-    max-height: 70vh;
-    padding: 15px;
-  }
-
-  .popup .form-textarea {
-    min-height: 100px;
+  
+  .primary-btn, .secondary-btn {
+    width: 100%;
+    margin-bottom: 10px;
   }
 }
 </style>
\ No newline at end of file

--
Gitblit v1.9.3