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