From eaa506e57403d1b8502f16ca5dd6e82c347724d0 Mon Sep 17 00:00:00 2001
From: 啊鑫 <t2856754968@163.com>
Date: 星期四, 17 七月 2025 23:09:32 +0800
Subject: [PATCH] 优化QC模块样式统一和功能完善

---
 pages/QC/RKJ/List.vue |  548 ++++++++++++++++++++++++++----------------------------
 1 files changed, 268 insertions(+), 280 deletions(-)

diff --git a/pages/QC/RKJ/List.vue b/pages/QC/RKJ/List.vue
index 4e335c9..7758c2b 100644
--- a/pages/QC/RKJ/List.vue
+++ b/pages/QC/RKJ/List.vue
@@ -1,228 +1,103 @@
 <template>
-  <view>
+  <view class="inspection-app">
     <!-- 鍒锋柊椤甸潰鍚庣殑椤堕儴鎻愮ず妗� -->
     <view class="tips" :class="{ 'tips-ani': tipShow }">鍒锋柊鎴愬姛</view>
 
-    <view class="newsTab">
-      <uni-segmented-control :current="current" :values="items" @clickItem="onClickItem" style-type="button"
-                             active-color="#87cefa"></uni-segmented-control>
-      <view class="content">
-        <view v-show="current===0">
-          <!-- 鍩轰簬 uni-list 鐨勯〉闈㈠竷灞� -->
-          <uni-list>
-            <!-- to 灞炴�ф惡甯﹀弬鏁拌烦杞鎯呴〉闈紝褰撳墠鍙负鍙傝�� -->
-            <uni-list-item style="margin-top: 10px;background-color:#EFEFF4;border-radius: 5px;"
-                           class="list-item" direction="column" v-for="item in data" :key="item.id"
-                           :to="'Add?id='+item.id+'&releaseNo='+item.releaseNo">
-              <!-- 閫氳繃header鎻掓Ы瀹氫箟鍒楄〃鐨勬爣棰� -->
-              <template v-slot:header>
-                <view class="form-group uni-title" style="margin-bottom: 0;">
-                  <label class="form-label">妫�楠屽崟鍙�:</label>
-                  <input class="form-input" disabled="true" type="text" v-model="item.releaseNo"/>
-                </view>
-              </template>
-              <!-- 閫氳繃body鎻掓Ы瀹氫箟鍒楄〃鍐呭鏄剧ず -->
-              <template v-slot:body>
-                <view style="margin-top: 0;">
-                  <view class="uni-content">
-                    <view class="uni-note">
-                      <view class="form-group">
-                        <label class="form-label lab">閫佹鎵规鍙�:</label>
-                        <input class="form-input" disabled="true" type="text" v-model="item.billNo"/>
-                      </view>
-                    </view>
-                    <view class="uni-title-sub uni-ellipsis-2">
-                      <view class="form-group">
-                        <label class="form-label lab">鍒涘缓鏃堕棿:</label>
-                        <input class="form-input" disabled="true" type="text" v-model="item.createDate"/>
-                      </view>
-                    </view>
-                    <view class="uni-note">
-                      <view class="form-group">
-                        <label class="form-label lab">鍒涘缓浜�:</label>
-                        <input class="form-input" disabled="true" type="text" v-model="item.createBy"/>
-                      </view>
-                    </view>
-                    <view class="uni-title-sub uni-ellipsis-2">
-                      <view class="form-group">
-                        <label class="form-label lab">浜х嚎:</label>
-                        <input class="form-input" disabled="true" type="text" v-model="item.daa015"/>
-                      </view>
-                    </view>
-
-                    <view class="uni-title-sub uni-ellipsis-2">
-                      <view class="form-group">
-                        <label class="form-label lab">鐗╂枡缂栫爜:</label>
-                        <input class="form-input" disabled="true" type="text" v-model="item.itemNo"/>
-                      </view>
-                    </view>
-
-                    <!--                    <view class="uni-title-sub uni-ellipsis-2">-->
-                    <!--                      <view class="form-group">-->
-                    <!--                        <label class="form-label">棰滆壊:</label>-->
-                    <!--                        <input class="form-input" disabled="true" type="text" v-model="item.colorName"/>-->
-                    <!--                      </view>-->
-                    <!--                    </view>-->
-
-                    <view class="uni-title-sub uni-ellipsis-2">
-                      <view class="form-group">
-                        <label class="form-label">浜у搧鍚嶇О:</label>
-                        <input class="form-input" disabled="true" type="text" v-model="item.itemName"/>
-                      </view>
-                    </view>
-                    <view class="uni-title-sub uni-ellipsis-2">
-                      <view class="form-group">
-                        <label class="form-label">浜у搧鍨嬪彿:</label>
-                        <input class="form-input" disabled="true" type="text" v-model="item.itemModel"/>
-                      </view>
-                    </view>
-
-                    <view class="uni-title-sub uni-ellipsis-2">
-                      <view class="form-group">
-                        <label class="form-label">閫佹鏁伴噺:</label>
-                        <input class="form-input" disabled="true" type="text" v-model="item.quantity"/>
-                      </view>
-                    </view>
-					
-					<view class="uni-title-sub uni-ellipsis-2">
-					  <view class="form-group">
-					    <label class="form-label">鎶ュ伐浜�:</label>
-					    <input class="form-input" disabled="true" type="text" v-model="item.bgr"/>
-					  </view>
-					</view>
-
-                    <view class="uni-note" style="color: red">
-                      <view class="form-group">
-                        <label class="form-label lab">妫�楠屼汉:</label>
-                        <input class="form-input" disabled="true" type="text" v-model="item.fcheckBy"/>
-                      </view>
-                    </view>
-                    <view class="uni-note" style="color: red">
-                      <view class="form-group">
-                        <label class="form-label lab">妫�娴嬬粨鏋�:</label>
-                        <input class="form-input" disabled="true" type="text" v-model="item.fcheckResu"/>
-                      </view>
-                    </view>
-                  </view>
-                </view>
-              </template>
-            </uni-list-item>
-          </uni-list>
-          <!-- 閫氳繃 loadMore 缁勪欢瀹炵幇涓婃媺鍔犺浇鏁堟灉锛屽闇�鑷畾涔夋樉绀哄唴瀹癸紝鍙弬鑰冿細https://ext.dcloud.net.cn/plugin?id=29 -->
-          <!-- <uni-load-more v-if="loading || options.status === 'noMore' " :status="options.status" /> -->
-
-          <!-- <view class="fab" @click="handleFabClick">
-            <text class="fab-icon">+</text>
-          </view> -->
-          <view class="plus-button" @click="handleFabClick">
-            +
-          </view>
-        </view>
-        <view v-show="current===1">
-          <uni-list>
-            <!-- to 灞炴�ф惡甯﹀弬鏁拌烦杞鎯呴〉闈紝褰撳墠鍙负鍙傝�� -->
-            <uni-list-item style="margin-top: 10px;background-color:#EFEFF4;border-radius: 5px;"
-                           class="list-item" direction="column" v-for="item in data" :key="item.id"
-                           :to="'Add?id='+item.id+'&releaseNo='+item.releaseNo">
-              <!-- 閫氳繃header鎻掓Ы瀹氫箟鍒楄〃鐨勬爣棰� -->
-              <template v-slot:header>
-                <view class="form-group uni-title" style="margin-bottom: 0;">
-                  <label class="form-label">妫�楠屽崟鍙�:</label>
-                  <input class="form-input" disabled="true" type="text" v-model="item.releaseNo"/>
-                </view>
-              </template>
-              <!-- 閫氳繃body鎻掓Ы瀹氫箟鍒楄〃鍐呭鏄剧ず -->
-              <template v-slot:body>
-                <view style="margin-top: 0;">
-                  <view class="uni-content">
-                    <view class="uni-note">
-                      <view class="form-group">
-                        <label class="form-label lab">閫佹鎵规鍙�:</label>
-                        <input class="form-input" disabled="true" type="text" v-model="item.billNo"/>
-                      </view>
-                    </view>
-                    <view class="uni-title-sub uni-ellipsis-2">
-                      <view class="form-group">
-                        <label class="form-label lab">鍒涘缓鏃堕棿:</label>
-                        <input class="form-input" disabled="true" type="text" v-model="item.createDate"/>
-                      </view>
-                    </view>
-                    <view class="uni-note">
-                      <view class="form-group">
-                        <label class="form-label lab">鍒涘缓浜�:</label>
-                        <input class="form-input" disabled="true" type="text" v-model="item.createBy"/>
-                      </view>
-                    </view>
-                    <view class="uni-title-sub uni-ellipsis-2">
-                      <view class="form-group">
-                        <label class="form-label lab">浜х嚎:</label>
-                        <input class="form-input" disabled="true" type="text" v-model="item.daa015"/>
-                      </view>
-                    </view>
-
-                    <view class="uni-title-sub uni-ellipsis-2">
-                      <view class="form-group">
-                        <label class="form-label lab">鐗╂枡缂栫爜:</label>
-                        <input class="form-input" disabled="true" type="text" v-model="item.itemNo"/>
-                      </view>
-                    </view>
-
-                    <!--                    <view class="uni-title-sub uni-ellipsis-2">-->
-                    <!--                      <view class="form-group">-->
-                    <!--                        <label class="form-label">棰滆壊:</label>-->
-                    <!--                        <input class="form-input" disabled="true" type="text" v-model="item.colorName"/>-->
-                    <!--                      </view>-->
-                    <!--                    </view>-->
-
-                    <view class="uni-title-sub uni-ellipsis-2">
-                      <view class="form-group">
-                        <label class="form-label">浜у搧鍚嶇О:</label>
-                        <input class="form-input" disabled="true" type="text" v-model="item.itemName"/>
-                      </view>
-                    </view>
-                    <view class="uni-title-sub uni-ellipsis-2">
-                      <view class="form-group">
-                        <label class="form-label">浜у搧鍨嬪彿:</label>
-                        <input class="form-input" disabled="true" type="text" v-model="item.itemModel"/>
-                      </view>
-                    </view>
-
-                    <view class="uni-title-sub uni-ellipsis-2">
-                      <view class="form-group">
-                        <label class="form-label">閫佹鏁伴噺:</label>
-                        <input class="form-input" disabled="true" type="text" v-model="item.quantity"/>
-                      </view>
-                    </view>
-					
-					<view class="uni-title-sub uni-ellipsis-2">
-					  <view class="form-group">
-					    <label class="form-label">鎶ュ伐浜�:</label>
-					    <input class="form-input" disabled="true" type="text" v-model="item.bgr"/>
-					  </view>
-					</view>
-
-                    <view class="uni-note" style="color: red">
-                      <view class="form-group">
-                        <label class="form-label lab">妫�楠屼汉:</label>
-                        <input class="form-input" disabled="true" type="text" v-model="item.fcheckBy"/>
-                      </view>
-                    </view>
-                    <view class="uni-note" style="color: red">
-                      <view class="form-group">
-                        <label class="form-label lab">妫�娴嬬粨鏋�:</label>
-                        <input class="form-input" disabled="true" type="text" v-model="item.fcheckResu"/>
-                      </view>
-                    </view>
-                  </view>
-                </view>
-              </template>
-            </uni-list-item>
-          </uni-list>
+    <!-- 椤堕儴绛涢�夊尯 -->
+    <view class="filter-section">
+      <view class="filter-controls">
+        <!-- 鐘舵�佸垏鎹㈡爣绛� -->
+        <view class="status-tabs">
+          <button :class="['tab-button', current === 0 ? 'active' : '']" @click="onClickItem({currentIndex: 0})">
+            {{items[0]}}
+          </button>
+          <button :class="['tab-button', current === 1 ? 'active' : '']" @click="onClickItem({currentIndex: 1})">
+            {{items[1]}}
+          </button>
         </view>
       </view>
     </view>
 
+    <!-- 妫�楠屽崟鍒楄〃 -->
+    <view class="inspection-list">
+      <!-- 妫�楠屽崟鍗$墖 -->
+      <view class="inspection-card" v-for="item in data" :key="item.id" @click="navigateToDetail(item)">
+        <view class="card-header">
+          <text class="card-title">妫�楠屽崟鍙�: {{item.releaseNo}}</text>
+          <text class="status pass" v-if="item.fcheckResu === '鍚堟牸'">鍚堟牸</text>
+          <text class="status unqualified" v-if="item.fcheckResu === '涓嶅悎鏍�'">涓嶅悎鏍�</text>
+          <text class="status pending" v-if="!item.fcheckResu">寰呮楠�</text>
+        </view>
 
+        <view class="card-body">
+          <view class="info-row">
+            <view class="info-item">
+              <text class="info-label">閫佹鎵规鍙�</text>
+              <text class="info-content">{{item.billNo}}</text>
+            </view>
+            <view class="info-item">
+              <text class="info-label">浜х嚎</text>
+              <text class="info-content">{{item.daa015}}</text>
+            </view>
+          </view>
+
+          <view class="info-row">
+            <view class="info-item">
+              <text class="info-label">鐗╂枡淇℃伅</text>
+              <text class="info-content">{{item.itemNo}}<br>{{item.itemName}}</text>
+            </view>
+            <view class="info-item">
+              <text class="info-label">浜у搧鍨嬪彿</text>
+              <text class="info-content">{{item.itemModel}}</text>
+            </view>
+          </view>
+
+          <view class="info-row">
+            <view class="info-item">
+              <text class="info-label">閫佹鏁伴噺</text>
+              <text class="info-content highlight">{{item.quantity}}</text>
+            </view>
+            <view class="info-item">
+              <text class="info-label">鎶ュ伐浜�</text>
+              <text class="info-content">{{item.bgr}}</text>
+            </view>
+          </view>
+
+          <view class="info-row">
+            <view class="info-item">
+              <text class="info-label">妫�楠屼汉</text>
+              <text class="info-content">{{item.fcheckBy}}</text>
+            </view>
+            <view class="info-item">
+              <text class="info-label">鍒涘缓浜�</text>
+              <text class="info-content">{{item.createBy}}</text>
+            </view>
+          </view>
+
+          <view class="meta-info">
+            <text class="meta-item">
+              <uni-icons type="calendar" size="14" color="#95a5a6"></uni-icons>
+              {{item.createDate}}
+            </text>
+            <text class="meta-item" v-if="item.fcheckResu">
+              <uni-icons type="checkmarkempty" size="14" color="#95a5a6"></uni-icons>
+              妫�娴嬬粨鏋�: {{item.fcheckResu}}
+            </text>
+          </view>
+        </view>
+
+        <view class="card-actions">
+          <button class="primary" @click.stop="navigateToDetail(item)">
+            {{current === 0 ? '寮�濮嬫楠�' : '鏌ョ湅璇︽儏'}}
+          </button>
+        </view>
+      </view>
+    </view>
+
+    <!-- 鏂板鎸夐挳 -->
+    <view class="plus-button" @click="handleFabClick">
+      +
+    </view>
   </view>
 </template>
 
@@ -302,6 +177,11 @@
         this.init();
       }
     },
+    navigateToDetail(item) {
+      uni.navigateTo({
+        url: 'Add?id=' + item.id + '&releaseNo=' + item.releaseNo
+      });
+    },
   },
   /**
    * 涓嬫媺鍒锋柊鍥炶皟鍑芥暟
@@ -336,42 +216,169 @@
 };
 </script>
 
-<style lang="scss">
-@import '@/common/uni-ui.scss';
-
-.uni-note {
-  margin-top: 0;
+<style scoped>
+/* 鍩虹鏍峰紡閲嶇疆 */
+.inspection-app {
+  padding: 10px;
+  background-color: #f5f7fa;
+  min-height: 100vh;
 }
 
-/* Set the input backgrounds to be gray */
-.form-input {
-  background-color: #f2f2f2;
-  /* Or any other shade of gray you prefer */
+/* 椤堕儴绛涢�夊尯 */
+.filter-section {
+  margin-bottom: 24px;
 }
 
-/* Ensure automatic adaptation based on page size */
-.form-group {
+.filter-controls {
+  display: flex;
+  justify-content: center;
+  align-items: center;
+}
+
+.status-tabs {
+  display: flex;
+  border-radius: 4px;
+  overflow: hidden;
+  background-color: #ecf0f1;
+  width: 300px;
+}
+
+.tab-button {
+  padding: 0px 16px;
+  border: none;
+  background: none;
+  font-size: 14px;
+  transition: all 0.3s;
+  margin: 0;
+  height: 35px;
+  flex: 1;
+}
+
+.tab-button.active {
+  background-color: #3498db;
+  color: white;
+}
+
+/* 妫�楠屽崟鍒楄〃 */
+.inspection-list {
+  display: flex;
+  flex-direction: column;
+  gap: 20px;
+}
+
+/* 妫�楠屽崟鍗$墖 */
+.inspection-card {
+  background-color: white;
+  border-radius: 8px;
+  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
+  overflow: hidden;
+  transition: all 0.3s;
+}
+
+.card-header {
+  padding: 16px;
+  border-bottom: 1px solid #eee;
   display: flex;
   align-items: center;
 }
 
-.form-label {
-  margin-bottom: 0;
-  border-bottom: 1px solid #FFFFFF;
-  padding: 5px;
-  font-size: 12px;
-  width: 80px;
-  /* Adjust the font size as per your requirement */
+.card-title {
+  font-size: 16px;
+  font-weight: 600;
+  flex: 1;
+  margin: 0 8px;
 }
 
-.form-input {
-  flex: 1;
-  margin-bottom: 0;
-  border-bottom: 1px solid #c7c7c7;
-  padding: 5px;
+.status {
   font-size: 12px;
-  background-color: #FFFFFF;
-  /* Adjust the font size as per your requirement */
+  padding: 4px 8px;
+  border-radius: 4px;
+  font-weight: 500;
+}
+
+.status.pending {
+  background-color: #f39c12;
+  color: white;
+}
+
+.status.pass {
+  background-color: #00cd00;
+  color: white;
+}
+
+.status.unqualified {
+  background-color: #ff0000;
+  color: white;
+}
+
+.card-body {
+  padding: 16px;
+}
+
+.info-row {
+  display: flex;
+  margin-bottom: 12px;
+  gap: 16px;
+}
+
+.info-item {
+  flex: 1;
+}
+
+.info-label {
+  display: block;
+  font-size: 12px;
+  color: #7f8c8d;
+  margin-bottom: 4px;
+}
+
+.info-content {
+  font-size: 14px;
+  color: #2c3e50;
+  line-height: 1.5;
+}
+
+.highlight {
+  font-weight: 600;
+  color: #2c3e50;
+  font-size: 16px;
+}
+
+.meta-info {
+  display: flex;
+  gap: 16px;
+  font-size: 12px;
+  color: #95a5a6;
+  margin-top: 12px;
+}
+
+.meta-item {
+  display: flex;
+  align-items: center;
+  gap: 4px;
+}
+
+.card-actions {
+  padding: 12px 16px;
+  border-top: 1px solid #eee;
+  display: flex;
+  gap: 8px;
+}
+
+button {
+  padding: 8px 16px;
+  border: 1px solid #ddd;
+  border-radius: 4px;
+  background-color: white;
+  font-size: 14px;
+  transition: all 0.2s;
+  flex: 1;
+}
+
+button.primary {
+  background-color: #3498db;
+  color: white;
+  border-color: #2980b9;
 }
 
 .plus-button {
@@ -381,7 +388,7 @@
   width: 60px;
   height: 60px;
   border-radius: 50%;
-  background-color: #007bff;
+  background-color: #3498db;
   color: #ffffff;
   text-align: center;
   line-height: 59px;
@@ -389,15 +396,6 @@
   cursor: pointer;
   z-index: 1000;
   margin-bottom: 35px;
-}
-
-page {
-  display: flex;
-  flex-direction: column;
-  box-sizing: border-box;
-  background-color: #efeff4;
-  min-height: 100%;
-  height: auto;
 }
 
 .tips {
@@ -418,36 +416,26 @@
   opacity: 1;
 }
 
-.content {
-  width: 100%;
+/* 鍝嶅簲寮忚璁� */
+@media (min-width: 768px) {
+  .inspection-list {
+    display: grid;
+    grid-template-columns: repeat(auto-fill, minmax(400px, 1fr));
+  }
+  
+  .info-row {
+    flex-direction: row;
+  }
 }
 
-.list-picture {
-  width: 100%;
-  height: 145px;
-}
-
-.thumb-image {
-  width: 100%;
-  height: 100%;
-}
-
-.ellipsis {
-  display: flex;
-  overflow: hidden;
-}
-
-.uni-ellipsis-1 {
-  overflow: hidden;
-  white-space: nowrap;
-  text-overflow: ellipsis;
-}
-
-.uni-ellipsis-2 {
-  overflow: hidden;
-  text-overflow: ellipsis;
-  display: -webkit-box;
-  -webkit-line-clamp: 2;
-  -webkit-box-orient: vertical;
+@media (min-width: 300px) {
+  .inspection-list {
+    display: grid;
+    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
+  }
+  
+  .info-row {
+    flex-direction: row;
+  }
 }
 </style>
\ No newline at end of file

--
Gitblit v1.9.3