From cdaa6b433a2ce3fbb727a9661015e6f76683529f Mon Sep 17 00:00:00 2001
From: 南骏 池 <chiffly@163.com>
Date: 星期五, 13 六月 2025 14:35:56 +0800
Subject: [PATCH] 1.采购退货单优化 2.采购退料单拆分 3.采购入库优化

---
 H5/LLJ/Add.aspx |  360 +++++++++++++++++------------------------------------------
 1 files changed, 103 insertions(+), 257 deletions(-)

diff --git a/H5/LLJ/Add.aspx b/H5/LLJ/Add.aspx
index e7f5e5a..cc9e1fe 100644
--- a/H5/LLJ/Add.aspx
+++ b/H5/LLJ/Add.aspx
@@ -11,222 +11,6 @@
                 vertical-align: middle;
             }
 
-            .van-popup__close-icon--top-right {
-                top: .25rem;
-                right: -.00rem;
-            }
-
-            .content-wrapper-jymx {
-                margin: 27px;
-                background: #ffffff;
-                border-radius: 8px;
-                padding: 3px;
-                box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
-            }
-
-            .van-cell__value--alone {
-                color: #323233;
-                text-align: center;
-            }
-
-            .si-container {
-                padding: 0.16rem;
-            }
-
-            /* 鐘舵�佹樉绀虹粍 */
-            .si-status-group {
-                display: flex;
-                gap: 0.08rem;
-                margin-bottom: 0.16rem;
-            }
-
-            .si-status-box {
-                flex: 1;
-                height: 0.6rem;
-                border-radius: 0.08rem;
-                display: flex;
-                overflow: hidden;
-            }
-
-            /* 宸︿晶鐘舵�佹爣绛� */
-            .si-status__left {
-                width: 1.2rem;
-                display: flex;
-                align-items: center;
-                justify-content: center;
-                position: relative;
-            }
-
-                .si-status__left::after {
-                    content: '';
-                    position: absolute;
-                    right: -0.13rem;
-                    width: 0.27rem;
-                    height: 100%;
-                    transform: skewX(-10deg);
-                    z-index: 1;
-                }
-
-            /* 鍙充晶鏁板�兼樉绀� */
-            .si-status__right {
-                flex: 1;
-                display: flex;
-                align-items: center;
-                padding-left: 0.16rem;
-                background: #fff;
-                font-weight: bold;
-            }
-
-            /* 鐘舵�佺被鍨嬩慨楗扮 */
-            .si-status--ok .si-status__left {
-                background: #07c160;
-            }
-
-                .si-status--ok .si-status__left::after {
-                    background: #07c160;
-                }
-
-            .si-status--error .si-status__left {
-                background: #ee0a24;
-            }
-
-                .si-status--error .si-status__left::after {
-                    background: #ee0a24;
-                }
-
-            /* 杈撳叆妗嗘牱寮� */
-            .si-input-box {
-                height: 0.6rem;
-                border-radius: 0.08rem;
-                display: flex;
-                overflow: hidden;
-                background: #fff;
-                box-shadow: 0 0.02rem 0.04rem rgba(0,0,0,0.05);
-            }
-
-            .si-input__left {
-                width: 1.2rem;
-                display: flex;
-                align-items: center;
-                justify-content: center;
-                background: #e6f7ff;
-                position: relative;
-            }
-
-                .si-input__left::after {
-                    content: '';
-                    position: absolute;
-                    right: 0;
-                    top: 50%;
-                    transform: translateY(-50%);
-                    width: 0.01rem;
-                    height: 50%;
-                    background: #d9d9d9;
-                }
-
-            /* 缁熶竴鏂囧瓧鏍峰紡 */
-            .si-status__label,
-            .si-input__label,
-            .si-status__right {
-                font-size: 0.20rem;
-                line-height: 0.23rem;
-            }
-
-            .si-input__label {
-                color: #1890ff;
-            }
-
-            .si-status__label{
-                 color: #ffffff;
-            }
-
-            .si-status__right{
-                justify-content: center; /* 鏂板灞呬腑 */
-                background: #e3edf7;
-                padding-right: 0.16rem;
-            }
-
-            /* Vant杈撳叆妗嗘繁搴﹀畾鍒� */
-            :deep(.si-input-field .van-field__control) {
-                height: 0.6rem !important;
-                font-size: 0.20rem !important;
-                line-height: 0.23rem !important;
-                color: #333;
-            }
-
-            .van-icon-popup {
-                font-size: 0.5rem;
-            }
-
-            .inline-title {
-              display: flex;
-              align-items: center;
-              gap: 8px; /* 闂磋窛鎺у埗 */
-              max-width: 80vw;
-            }
-
-            .release-no {
-              overflow: hidden;
-              text-overflow: ellipsis;
-              white-space: nowrap;
-            }
-
-            .status-tag {
-              flex-shrink: 0; /* 闃叉琚帇缂� */
-              font-size: 12px;
-              padding: 2px 6px;
-            }
-
-            /* 瑕嗙洊瀵艰埅鏍忛粯璁ゆ牱寮� */
-            :deep(.van-nav-bar__title) {
-              max-width: none !important;
-            }
-
-
-            /* 娣卞害瑕嗙洊vant鏍峰紡,鎹㈣ */
-            :deep(.wrap-field .van-field__control) {
-              white-space: pre-wrap !important;
-              word-break: break-all !important;
-              line-height: 1.5;
-              min-height: 24px; /* 鏈�灏忛珮搴︿繚闅� */
-              padding: 4px 0; /* 澧炲姞鍨傜洿闂磋窛 */
-            }
-
-            /* 涓撶敤鍐呭瀹瑰櫒,鎹㈣ */
-            .wrap-content {
-              width: 100%;
-              display: block;
-            }
-
-
-/*            .si-input-box {
-                display: flex;
-                align-items: center;
-                padding: 12px 16px;
-            }*/
-
-            .input-container {
-                flex: 1;
-                display: flex;
-                gap: 20px; /* 鎺у埗涓や釜杈撳叆缁勪箣闂寸殑闂磋窛 */
-                align-items: center;
-                 background: #e3edf7;
-            }
-
-            .input-group {
-                display: flex;
-                align-items: center;
-                gap: 8px;
-                flex: 1; /* 浣夸袱涓緭鍏ョ粍鍧囧垎鍓╀綑绌洪棿 */
-            }
-
-            .si-input-field {
-                flex: 1; /* 杈撳叆妗嗗崰鎹墿浣欑┖闂� */
-                width: 100%; /* 鎺у埗鏈�澶у搴� */
-                background: #f7f8fa;
-                border-radius: 4px;
-                padding: 8px 12px;
-            }
 
         </style>
 </asp:Content>
@@ -246,13 +30,21 @@
               <template #title>
                 <div class="inline-title">
                   <span class="release-no">{{ formData.releaseNo }}</span>
-                  <van-tag  round plain
+                    <van-tag round plain v-if="formData.fcheckResu === 'N:涓嶅悎鏍�'" type="danger">涓嶅悎鏍�</van-tag>
+                    <van-tag round plain v-else-if="formData.fcheckResu === 'I:杩涜涓�'" type="warning">杩涜涓�</van-tag>
+                    <van-tag round plain v-else-if="formData.fcheckResu === 'W:鏈煡'" type="warning">鏈煡</van-tag>
+                    <van-tag round plain v-else-if="formData.fcheckResu === ''" type="warning">鏈煡</van-tag>
+                    <van-tag round plain v-else-if="formData.fcheckResu === 'Y:鍚堟牸'" type="success">鍚堟牸</van-tag>
+                    <van-tag round plain v-else type="danger">鏈煡</van-tag>
+<%--                  <van-tag  round plain
                     :type="formData.fcheckResu === '涓嶅悎鏍�' ? 'danger' : 
-                          formData.fcheckResu === '妫�楠屼腑' ? 'warning' : 'success'"
+                          formData.fcheckResu === '妫�楠屼腑' ? 'warning' :
+                          formData.fcheckResu === '鏈楠�' ? 'warning' :
+                          formData.fcheckResu === '鍚堟牸' ? 'success' :'danger'"
                     class="status-tag"
                   >
-                    {{ formData.fcheckResu || '鍚堟牸' }}
-                  </van-tag>
+                    {{ formData.fcheckResu }}
+                  </van-tag>--%>
                 </div>
               </template>
                 <template #right>
@@ -291,21 +83,57 @@
                   </template>
                 </van-field>
               <van-field label="鏁伴噺" colon="true" v-model="formData.fcovertQty" readonly ></van-field>
-              <van-field label="涓嶅悎鏍兼弿杩�" v-if='formData.fcheckResu == "涓嶅悎鏍�"' colon="true" v-model="formData.remarks" ></van-field>
-<%--              <van-field label="妫�娴嬬粨鏋�" colon="true" v-model="formData.fcheckResu" readonly ></van-field>--%>
-<%--                <van-field label="妫�娴嬬粨鏋�" colon="true" readonly >
-                   <template #input>
-                       <van-tag round v-if="formData.fcheckResu === '涓嶅悎鏍�'" type="danger">涓嶅悎鏍�</van-tag>
-                       <van-tag round v-else-if="formData.fcheckResu === '妫�楠屼腑'" type="warning">妫�楠屼腑</van-tag>
-                       <van-tag round v-else type="success">鍚堟牸</van-tag>
-                   </template>
-                </van-field>--%>
+              <van-field label="涓嶅悎鏍兼弿杩�"   v-if='formData.fcheckResu == "N:涓嶅悎鏍�"' colon v-model="remarks" readonly class="wrap-field"> 
+                  <template #input>
+                      <div class="wrap-content">{{ remarks }}</div>
+                    </template>
+                  <template #button>
+                    <van-tag type="primary" style="font-size:15px" @click="updateRemarks(formData.guid)">杈撳叆</van-tag>
+                  </template>
+              </van-field>
+<%--            <van-field
+                v-if='formData.fcheckResu == "涓嶅悎鏍�"' colon="true"
+                v-model="formData.remarks"
+                rows="2"
+                autosize
+                label="涓嶅悎鏍兼弿杩�"
+                type="textarea"
+                maxlength="50"
+                placeholder="璇疯緭鍏ヤ笉鍚堟牸鎻忚堪"
+                show-word-limit
+            />--%>
+                            <!-- 涓嶅悎鏍艰〃杩拌緭鍏� -->
+            <van-dialog v-model="showDialog" title="涓嶅悎鏍兼弿杩�" :show-cancel-button="false"  @confirm="remarksConfirm">
+              <van-field
+                v-model="remarks"
+                rows="5"
+                autosize
+                type="textarea"
+                maxlength="500"
+                placeholder="璇疯緭鍏ヤ笉鍚堟牸鎻忚堪"
+                show-word-limit
+            />
+           </van-dialog>
             </van-cell-group>
         </div>
-<%--            <van-button :loading="ttrre" type="info" loading-text="鍔犺浇涓�..." v-if="!isShowTable && formData.fsubmit == 0" @click="submit">妫�楠屾彁浜�</van-button>
-            <van-button type="danger" v-if="!isShowTable && formData.fsubmit == 0" @click="removeXJ">閲嶆柊鍔犺浇椤圭洰</van-button>--%>
-<%--            <van-button :loading="ttrre"  type="info" loading-text="鍔犺浇涓�..."  @click="submit">妫�楠屾彁浜�</van-button>
-            <van-button type="danger"  @click="removeXJ">鍒锋柊閲嶅仛</van-button>--%>
+     <!-- 鏂瑰紡 -->
+             <div class="uploader-container">
+  <!-- 浣跨敤 field 鏍峰紡鍖呰9 -->
+  <div class="van-cell van-field" style="padding: 10px 16px">
+    <!-- 宸︿晶鏍囩 -->
+    <div class="van-field__label" style="width: 90px">鍥剧墖涓婁紶</div>
+    
+    <!-- 鍙充晶涓婁紶鍖哄煙 -->
+    <div class="van-field__body" style="flex: 1">
+      <van-uploader 
+        v-model="fileList" 
+        :after-read="afterRead"
+        style="padding: 8px 0"
+        @delete="handleDelete"
+      />
+    </div>
+  </div>
+</div>  
           <van-tabs color="#000"  title-active-color="#0283EF" style="padding-bottom: 120px;">
               <van-tab title="妫�楠岄」鐩�" class="mySolid font">
                   <van-row type="flex" justify="center">
@@ -326,20 +154,20 @@
                         </van-col>
                       <van-col span="4" >
                             <van-cell center 
-                                center :title="item.fenterQty + '/' + item.checkQyt" @click="togglePopup(index)"></van-cell>
+                                center :title="item.ybslIn ?? 0 + '/' + item.ybsl" @click="togglePopup(index)"></van-cell>
                         </van-col>
                       <van-col center span="6" >
                           <van-cell center
-                            center v-if="item.fcheckResu === '鍚堟牸'">
+                            center v-if="item.fcheckResu === 'Y:鍚堟牸'">
                             <van-tag round  plain type="success" style="font-size:15px" @click="togglePopup(index)">鍚堟牸</van-tag>   
                           </van-cell>
                           <van-cell center
-                          center v-else-if="item.fcheckResu === '涓嶅悎鏍�'">
+                          center v-else-if="item.fcheckResu === 'N:涓嶅悎鏍�'">
                           <van-tag round plain type="danger" style="font-size:15px" @click="togglePopup(index)">涓嶅悎鏍�</van-tag>   
                         </van-cell>
                             <van-cell center
                               center v-else >
-                              <van-tag round plain type="warning" style="font-size:15px" @click="togglePopup(index)">妫�楠屼腑</van-tag>   
+                              <van-tag round plain type="warning" style="font-size:15px" @click="togglePopup(index)">杩涜涓�</van-tag>   
                             </van-cell>
                       </van-col>
                       
@@ -359,6 +187,7 @@
               height: '100%' ,
               boxShadow: '-2px 0 12px rgba(0, 0, 0, 0.1)'
               }"
+         @click-close-icon ="init"
         >
           <!-- 寮瑰嚭鍐呭 -->
           <div  class="content-wrapper-jymx">
@@ -379,6 +208,14 @@
                               <van-field label="鏍锋湰鏁�" colon="true" v-model="jymxData.ybsl" readonly ></van-field>
                               <%--<van-field label="棰勮缁撴灉" colon="true" v-model="jymxData.result" readonly ></van-field>--%>
                               <%--<van-field label="缁撴灉褰曞叆" colon="true" v-model="resultValue"  placeholder="璇疯緭鍏K-鏁板瓧鎴朜G-鏁板瓧"></van-field>--%>
+                              
+                              <van-field label="妫�娴嬬粨鏋�" colon="true" readonly >
+                                   <template #input>
+                                       <van-tag round plain v-if="jymxData.fcheckResu === 'Y:鍚堟牸'" type="success">鍚堟牸</van-tag>
+                                       <van-tag round plain v-else-if="jymxData.fcheckResu === 'N:涓嶅悎鏍�'" type="danger">涓嶅悎鏍�</van-tag>
+                                       <van-tag round plain v-else type="warning">杩涜涓�</van-tag>
+                                   </template>
+                                </van-field>
                               <template>
                                   <div class="si-input-box">
                                     <!-- 宸︿晶鏍囬 -->
@@ -398,10 +235,13 @@
                                           class="input-tag"
                                         >OK</van-tag>
                                         <van-field
+                                           :ref="'okValue_' + tabActive"
                                           v-model="okValue"
                                           class="si-input-field"
-                                          placeholder="璇疯緭鍏K鏁伴噺"
+                                          placeholder="杈撳叆OK鏁�"
                                           :border="false"
+                                          @keyup.enter.native="getInputOK"
+                                            @input="handleNumberInput1"
                                         />
                                       </div>
 
@@ -415,23 +255,19 @@
                                           class="input-tag"
                                         >NG</van-tag>
                                         <van-field
+                                            :ref="'ngValue_' + tabActive"
                                           v-model="ngValue"
                                           class="si-input-field"
-                                          placeholder="璇疯緭鍏G鏁伴噺"
+                                          placeholder="杈撳叆NG鏁�"
                                           :border="false"
+                                         @keyup.enter.native="getInputNG"
+                                            @input="handleNumberInput2"
                                         />
                                       </div>
                                     </div>
                                   </div>
                                 </template>
 
-                              <van-field label="妫�娴嬬粨鏋�" colon="true" readonly >
-                                   <template #input>
-                                       <van-tag round plain v-if="jymxData.fcheckResu === '鍚堟牸'" type="success">鍚堟牸</van-tag>
-                                       <van-tag round plain v-else-if="jymxData.fcheckResu === '涓嶅悎鏍�'" type="danger">涓嶅悎鏍�</van-tag>
-                                       <van-tag round plain v-else type="warning">妫�楠屼腑</van-tag>
-                                   </template>
-                                </van-field>
                             </van-cell-group>
                     </template>
                    <!-- StatsInput.vue -->
@@ -443,16 +279,17 @@
                             <div class="si-status__left">
                               <span class="si-status__label">鍚堟牸鏁�</span>
                             </div>
-                            <div  class="si-status__right">256</div>
+                            <div  class="si-status__right">{{okNum}}</div>
                           </div>
 
                           <div class="si-status-box si-status--error">
                             <div class="si-status__left">
                               <span class="si-status__label">涓嶅悎鏍兼暟</span>
                             </div>
-                            <div class="si-status__right">32</div>
+                            <div class="si-status__right">{{ngNum}}</div>
                           </div>
                         </div>
+                       </div>
                     </template>
                     <template>
                               <!-- 杈撳叆妗� -->
@@ -462,31 +299,34 @@
                                 </div>
                                 <div class="si-status__right">
                                   <van-field
+                                      :ref="'inputValue' + tabActive"
                                     v-model="inputValue"
-                                    placeholder="璇疯緭鍏�"
+                                    placeholder="璇疯緭鍏ョ壒寰佸��"
                                     :border="false"
                                     class="si-input-field"
+                                    @input="handleNumberInput3"
+                                      @keyup.enter.native="getInputTZZ"
                                   />
                                 </div>
                               </div>
-                            </div>
                     </template>
                             <van-row type="flex" justify="center">
-                                 <van-col span="10" center class="text-left padding-left">妫�楠岄」鐩�</van-col>
+                                 <van-col span="6">鏍锋湰闆�</van-col>
                                 <van-col span="6">鏍锋湰鍊�</van-col>
-                                <van-col span="8">鍒ゅ畾鏍囧織</van-col>
+                                <van-col span="6">鍒ゅ畾鏍囧織</van-col>
+                                <van-col span="6">鎿嶄綔</van-col>
                             </van-row>
                             <van-row  v-for="(item,index) in tableMxData.list2" :key="index"  type="flex" justify="left">
         
-                                 <van-col span="10" center class="text-left padding-left" >
+                                 <van-col span="6"  >
                                      <van-cell center
-                                      center :title="item.fcheckItemd5" @click="togglePopup(index)"></van-cell>
+                                      center :title="item.fcheckItem" @click="togglePopup(index)"></van-cell>
                                 </van-col>
                                 <van-col span="6" >
                                     <van-cell center 
                                         center :title="item.fcheckResu"></van-cell>
                                 </van-col>
-                                <van-col center span="8" >
+                                <van-col center span="6" >
                                     <van-cell center
                                       center v-if="item.fstand === '鈭�'">
                                       <van-tag round plain type="success" style="font-size:15px">鍚堟牸</van-tag>   
@@ -497,8 +337,11 @@
                                   </van-cell>
                                       <van-cell center
                                         center v-else >
-                                        <van-tag round plain type="warning" style="font-size:15px">妫�楠屼腑</van-tag>   
+                                        <van-tag round plain type="warning" style="font-size:15px">杩涜涓�</van-tag>   
                                       </van-cell>
+                                </van-col>
+                                <van-col center span="6" >
+                                    <van-tag type="danger" style="font-size:15px" @click="deleteDetail13(item.guid)">鍒犻櫎</van-tag> 
                                 </van-col>
                           </van-row>
                     
@@ -532,11 +375,14 @@
               >鍒锋柊閲嶅仛</van-button>
             </div>
           </van-popup>
+
+
+
 </asp:Content>
 <asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder3" Runat="Server">
     <comloading  v-if="isLoading"></comloading>
   <%--<comback ></comback>--%>
 </asp:Content>
 <asp:Content ID="Content4" ContentPlaceHolderID="ContentPlaceHolder4" Runat="Server">
- <script src="../Js/LLJ/Add.js?<%=1192 %>"></script>
+ <script src="../Js/LLJ/Add.js?<%=119997112 %>"></script>
 </asp:Content>

--
Gitblit v1.9.3