From 252915c14e8d8ba92f2f41635a1c802c4503e52a Mon Sep 17 00:00:00 2001
From: xwt <2740516069@qq.com>
Date: 星期四, 13 十一月 2025 15:27:37 +0800
Subject: [PATCH] SJ,XJ,RKJ加拍照限制

---
 pages/QC/XJ/detail.vue |  274 +++++++++++++++++++++++++-----------------------------
 1 files changed, 125 insertions(+), 149 deletions(-)

diff --git a/pages/QC/XJ/detail.vue b/pages/QC/XJ/detail.vue
index a63a3b6..8818a38 100644
--- a/pages/QC/XJ/detail.vue
+++ b/pages/QC/XJ/detail.vue
@@ -66,11 +66,6 @@
           </view>
         </view>
 
-        <view v-if="formData.result != null" class="result-preview">
-          <view class="info-label">棰勮缁撴灉</view>
-          <view class="info-value">{{formData.result}}</view>
-        </view>
-
         <view v-if="formData.remarks != null" class="result-ng">
           <view class="info-label">涓嶅悎鏍兼弿杩�</view>
           <view class="info-value danger">{{formData.remarks}}</view>
@@ -82,23 +77,19 @@
     <view class="section">
       <view class="section-header">妫�楠岀粨鏋滃綍鍏�</view>
       <view class="section-body">
-        <view class="inspection-hint">
-          <view class="hint-text">娌℃湁鏈�澶у�煎拰鏈�灏忓�兼椂濉啓0锛堟湭閫氳繃妫�楠岋級鎴�1锛堥�氳繃妫�楠岋級</view>
-        </view>
-        
-        <!-- 涓嶅悎鏍兼楠岄」鐩彁绀� -->
-        <view class="validation-hint" v-if="isUnqualifiedResult()">
+        <!-- 楠岃瘉鎻愮ず -->
+        <view v-if="isUnqualifiedResult()" class="validation-hint">
           <view class="validation-icon">鈿狅笍</view>
           <view class="validation-text">
             <view class="validation-title">妫�楠岄」鐩笉鍚堟牸锛屽繀椤诲畬鎴愪互涓嬫搷浣滐細</view>
             <view class="validation-requirements">
-              <view class="requirement-item" :class="{ 'completed': hasImage(), 'required': !hasImage() }">
-                <text class="requirement-icon">{{ hasImage() ? '鉁�' : '鉂�' }}</text>
-                <text class="requirement-text">涓婁紶鍥剧墖</text>
+              <view class="requirement-item" :class="{ 'completed': hasImage() }">
+                <view class="requirement-icon">{{ hasImage() ? '鉁�' : '鉂�' }}</view>
+                <view class="requirement-text">涓婁紶鍥剧墖</view>
               </view>
-              <view class="requirement-item" :class="{ 'completed': hasRemarks(), 'required': !hasRemarks() }">
-                <text class="requirement-icon">{{ hasRemarks() ? '鉁�' : '鉂�' }}</text>
-                <text class="requirement-text">濉啓涓嶈壇鎻忚堪</text>
+              <view class="requirement-item" :class="{ 'completed': hasRemarks() }">
+                <view class="requirement-icon">{{ hasRemarks() ? '鉁�' : '鉂�' }}</view>
+                <view class="requirement-text">濉啓涓嶈壇鎻忚堪</view>
               </view>
             </view>
           </view>
@@ -108,9 +99,9 @@
           <view class="input-wrapper">
             <input v-if="tableData.length < formData.levelNum"
               v-model="formData.fcheckResu"
-              type="number"
+              type="text"
               class="result-input"
-              placeholder="璇疯緭鍏ユ楠岀粨鏋�"
+              placeholder="娌℃湁鏈�澶у�煎拰鏈�灏忓�兼椂濉啓0锛堟湭閫氳繃妫�楠岋級鎴�1锛堥�氳繃妫�楠岋級"
               placeholder-class="placeholder" />
             <button v-if="(tableData.length < formData.levelNum)"
               style="margin: 0px;background-color: #3498db;color:#ffffff ;" class="btn primary-btn"
@@ -163,8 +154,18 @@
 
     <!-- 鎿嶄綔鎸夐挳 -->
     <view class="action-buttons">
-      <button class="action-btn warning" @click="saveRemarks">娣诲姞涓嶅悎鏍兼弿杩�</button>
-      <button class="action-btn primary" @click="viewAttachmentInfo">鏌ョ湅闄勪欢淇℃伅</button>
+      <button class="btn upload-btn" @click="saveRemarks">
+        <view class="btn-content">
+          <uni-icons type="compose" size="16" color="#fff"></uni-icons>
+          <view class="btn-text">娣诲姞涓嶅悎鏍兼弿杩�</view>
+        </view>
+      </button>
+      <button class="btn attachment-btn" @click="viewAttachmentInfo">
+        <view class="btn-content">
+          <uni-icons type="folder" size="16" color="#fff"></uni-icons>
+          <view class="btn-text">鏌ョ湅闄勪欢淇℃伅</view>
+        </view>
+      </button>
       <button class="action-btn success tablet-upload-btn" @click="uploadImage">
         <view class="btn-content">
           <view class="btn-icon">馃摲</view>
@@ -1256,19 +1257,6 @@
   color: #721c24;
 }
 
-/* 妫�楠岃緭鍏ュ尯 */
-.inspection-hint {
-  background-color: #fff3cd;
-  padding: 10px;
-  border-radius: 4px;
-  margin-bottom: 15px;
-}
-
-.hint-text {
-  font-size: 12px;
-  color: #856404;
-}
-
 /* 楠岃瘉鎻愮ず鏍峰紡 */
 .validation-hint {
   background: linear-gradient(135deg, #ffe6e6 0%, #ffcccc 100%);
@@ -1310,19 +1298,16 @@
   display: flex;
   align-items: center;
   gap: 8px;
-  padding: 6px 10px;
+  padding: 8px 12px;
+  background: rgba(255, 255, 255, 0.7);
   border-radius: 6px;
+  border: 1px solid rgba(255, 107, 107, 0.3);
   transition: all 0.3s ease;
 }
 
 .requirement-item.completed {
-  background-color: #d4edda;
-  border: 1px solid #c3e6cb;
-}
-
-.requirement-item.required {
-  background-color: #f8d7da;
-  border: 1px solid #f5c6cb;
+  background: rgba(46, 204, 113, 0.1);
+  border-color: rgba(46, 204, 113, 0.3);
 }
 
 .requirement-icon {
@@ -1332,29 +1317,30 @@
 
 .requirement-text {
   font-size: 13px;
-  font-weight: 500;
   color: #2c3e50;
+  font-weight: 500;
+}
+
+.requirement-item.completed .requirement-text {
+  color: #27ae60;
 }
 
 .input-group {
-  display: flex;
-  align-items: center;
-  margin-bottom: 15px;
+  margin: 16px 0;
 }
 
 .input-wrapper {
   display: flex;
   gap: 12px;
-  width: 100%;
 }
 
 .result-input {
   flex: 1;
-  padding: 8px 12px;
-  border: 1px solid #ddd;
+  height: 45px;
+  padding: 0 12px;
+  border: 1px solid #DCDFE6;
   border-radius: 4px;
   font-size: 14px;
-  background-color: white;
 }
 
 .btn {
@@ -1450,80 +1436,133 @@
 
 /* 鎿嶄綔鎸夐挳 */
 .action-buttons {
+  margin-top: 20px;
   display: flex;
-  flex-direction: column;
-  gap: 10px;
+  justify-content: flex-end;
+  gap: 12px;
   margin-bottom: 20px;
 }
 
 .action-btn {
-  padding: 12px 20px;
+  padding: 8px 20px;
+  border-radius: 4px;
+
+  &.primary-btn {
+    background-color: #3498db;
+    color: #fff;
+  }
+
+  &.cancel-btn {
+    background-color: #95a5a6;
+    color: #fff;
+  }
+
+  &.success {
+    background-color: #2ecc71;
+    color: #fff;
+  }
+}
+
+.btn {
+  padding: 8px 20px;
+  border-radius: 4px;
   border: none;
-  border-radius: 6px;
   font-size: 14px;
-  font-weight: 500;
   cursor: pointer;
   transition: all 0.2s;
-}
 
-.action-btn.primary {
-  background-color: #3498db;
-  color: white;
-}
+  &.upload-btn {
+    background-color: #f39c12;
+    color: #fff;
+    border: none;
+    border-radius: 8px;
+    padding: 12px 20px;
+    margin: 0;
+    font-size: 14px;
+    font-weight: 600;
+    min-height: 48px;
+    white-space: nowrap;
+    display: flex;
+    align-items: center;
+    justify-content: center;
+    gap: 8px;
+    cursor: pointer;
+    transition: all 0.3s ease;
+    box-shadow: 0 4px 12px rgba(243, 156, 18, 0.3);
+  }
 
-.action-btn.secondary {
-  background-color: #95a5a6;
-  color: white;
-}
+  &.upload-btn:hover {
+    background-color: #e67e22;
+    transform: translateY(-2px);
+    box-shadow: 0 6px 16px rgba(243, 156, 18, 0.4);
+  }
 
-.action-btn.warning {
-  background-color: #f39c12;
-  color: white;
-}
+  &.attachment-btn {
+    background-color: #17a2b8;
+    color: #fff;
+    border: none;
+    border-radius: 8px;
+    padding: 12px 20px;
+    margin: 0;
+    font-size: 14px;
+    font-weight: 600;
+    min-height: 48px;
+    white-space: nowrap;
+    display: flex;
+    align-items: center;
+    justify-content: center;
+    gap: 8px;
+    cursor: pointer;
+    transition: all 0.3s ease;
+    box-shadow: 0 4px 12px rgba(23, 162, 184, 0.3);
+  }
 
-.action-btn.success {
-  background-color: #2ecc71;
-  color: white;
+  &.attachment-btn:hover {
+    background-color: #138496;
+    transform: translateY(-2px);
+    box-shadow: 0 6px 16px rgba(23, 162, 184, 0.4);
+  }
 }
 
 /* 骞虫澘涓婁紶鎸夐挳鏍峰紡 */
 .tablet-upload-btn {
-  position: relative;
-  overflow: hidden;
   background: linear-gradient(135deg, #2ecc71 0%, #27ae60 100%);
-  box-shadow: 0 4px 15px rgba(46, 204, 113, 0.3);
+  border: none;
+  border-radius: 8px;
+  padding: 12px 20px;
+  color: white;
+  font-weight: 600;
+  font-size: 14px;
+  cursor: pointer;
   transition: all 0.3s ease;
+  box-shadow: 0 4px 12px rgba(46, 204, 113, 0.3);
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  min-height: 48px;
+  margin: 0;
 }
 
 .tablet-upload-btn:hover {
+  background: linear-gradient(135deg, #27ae60 0%, #229954 100%);
   transform: translateY(-2px);
-  box-shadow: 0 6px 20px rgba(46, 204, 113, 0.4);
-}
-
-.tablet-upload-btn:active {
-  transform: translateY(0);
-  box-shadow: 0 2px 10px rgba(46, 204, 113, 0.3);
+  box-shadow: 0 6px 16px rgba(46, 204, 113, 0.4);
 }
 
 .btn-content {
   display: flex;
-  flex-direction: column;
   align-items: center;
   justify-content: center;
   gap: 8px;
-  padding: 8px;
 }
 
 .btn-icon {
-  font-size: 24px;
-  line-height: 1;
+  font-size: 18px;
 }
 
 .btn-text {
   font-size: 14px;
   font-weight: 600;
-  line-height: 1.2;
-  text-align: center;
 }
 
 /* 寮瑰嚭妗嗘牱寮� */
@@ -1617,39 +1656,6 @@
 
 /* 骞虫澘浼樺寲鏍峰紡 */
 @media (min-width: 768px) and (max-width: 1024px) {
-  .action-buttons {
-    display: grid;
-    grid-template-columns: repeat(3, 1fr);
-    gap: 15px;
-    margin-bottom: 30px;
-  }
-  
-  .action-btn {
-    padding: 20px 16px;
-    font-size: 16px;
-    min-height: 80px;
-    display: flex;
-    align-items: center;
-    justify-content: center;
-  }
-  
-  .tablet-upload-btn {
-    min-height: 100px;
-  }
-  
-  .btn-content {
-    gap: 12px;
-    padding: 12px;
-  }
-  
-  .btn-icon {
-    font-size: 32px;
-  }
-  
-  .btn-text {
-    font-size: 16px;
-  }
-  
   .info-grid {
     grid-template-columns: repeat(2, 1fr);
     gap: 20px;
@@ -1679,36 +1685,6 @@
 
 /* 澶у睆骞虫澘浼樺寲 */
 @media (min-width: 1024px) {
-  .action-buttons {
-    display: grid;
-    grid-template-columns: repeat(3, 1fr);
-    gap: 20px;
-    margin-bottom: 40px;
-  }
-  
-  .action-btn {
-    padding: 25px 20px;
-    font-size: 18px;
-    min-height: 100px;
-  }
-  
-  .tablet-upload-btn {
-    min-height: 120px;
-  }
-  
-  .btn-content {
-    gap: 15px;
-    padding: 15px;
-  }
-  
-  .btn-icon {
-    font-size: 36px;
-  }
-  
-  .btn-text {
-    font-size: 18px;
-  }
-  
   .info-grid {
     grid-template-columns: repeat(3, 1fr);
     gap: 25px;

--
Gitblit v1.9.3