From 1e31f9f7fe6f04236e97f72c0df3ce051d5f867e Mon Sep 17 00:00:00 2001
From: chenlu <1320612696@qq.com>
Date: 星期一, 24 十一月 2025 16:26:23 +0800
Subject: [PATCH] Merge branch 'master' of http://bore.pub:10439/r/ERP_override

---
 north-glass-erp/northglass-erp/src/views/pp/reportingWorks/AddReportingWork.vue |  125 +++++++++++++++++++++++++----------------
 1 files changed, 75 insertions(+), 50 deletions(-)

diff --git a/north-glass-erp/northglass-erp/src/views/pp/reportingWorks/AddReportingWork.vue b/north-glass-erp/northglass-erp/src/views/pp/reportingWorks/AddReportingWork.vue
index 0c59c12..929ad0f 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/reportingWorks/AddReportingWork.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/reportingWorks/AddReportingWork.vue
@@ -119,16 +119,16 @@
   //   label: t('reportingWorks.nightShift'),
   // },
    {
-    value: '鏈ㄧ',
-    label: '鏈ㄧ',
+    value: t('reportingWorks.woodenBox'),
+    label: t('reportingWorks.woodenBox'),
   },
   {
-    value: '閾佹灦',
-    label: '閾佹灦',
+    value: t('reportingWorks.brandreth'),
+    label: t('reportingWorks.brandreth'),
   },
   {
-    value: '鍊掓灦',
-    label: '鍊掓灦',
+    value: t('reportingWorks.tilting'),
+    label: t('reportingWorks.tilting'),
   },
 ]
 
@@ -152,6 +152,7 @@
    //route.query.reportingWorkId = 'BG2403150004'
   //鍒ゆ柇鏄惁浼犲叆鎶ュ伐缂栧彿
   if(route.query.reportingWorkId !== '' && route.query.reportingWorkId!=null){
+    gridOptions.loading = true
     request.post(`reportingWork/selectUpdateReportingWork/${route.query.reportingWorkId}`).then(res=>{
       if(res.code === '200'){
         titleUploadData.value = res.data.reportingWork
@@ -206,6 +207,7 @@
         }
       }
      // getQuantity()
+      gridOptions.loading = false
       inputDisabled.value = true
     })
   }
@@ -305,14 +307,14 @@
           },
           {
             code: 'SecondaryBreakage',
-            name: "搴忓彿娆$牬鐩稿悓",
+            name: t('reportingWorks.secondaryBreakage'),
             prefixIcon: 'vxe-icon-indicator',
             visible: true,
             disabled: false
           },
           {
             code: 'checkedBreakage',
-            name: "閫変腑娆$牬鐩稿悓",
+            name: t('reportingWorks.checkedBreakage'),
             prefixIcon: 'vxe-icon-indicator',
             visible: true,
             disabled: false
@@ -431,8 +433,15 @@
           }else  if(row.quantity_card<row.completedQuantity){
             return new Error(t('reportingWorks.pleaseNumber10'))
           }
+          const nextProcess = titleUploadData.value.nextProcess//涓嬪伐搴�
+
           const completedSum = Number(row.thisQuantitySum) //鎬诲畬宸ユ暟閲�
-          const nextQuantitySum = Number(row.nextQuantitySum) //鎬讳笅宸ュ簭瀹屽伐鏁伴噺
+          let nextQuantitySum = ''
+          if (nextProcess!=''){
+             nextQuantitySum = Number(row.nextQuantitySum) //鎬讳笅宸ュ簭瀹屽伐鏁伴噺
+          }else {
+             nextQuantitySum = Number(row.received_quantity) //鎬讳笅宸ュ簭瀹屽伐鏁伴噺
+          }
           const totalQuantity = Number(row.quantity) //鍙畬宸ユ暟閲�
           const val = Number(cellValue) //杈撳叆鍊�
 
@@ -450,21 +459,37 @@
             `)
           }
           if(titleUploadData.value.reportingWorkId!=null){
-            if(row.completedQuantityComputed>=row.minQuantity ){
-              if((val<(row.completedQuantityComputed-row.minQuantity || val>=row.completedQuantityComputed))){
-                return new Error(`${row.completedQuantityComputed-row.minQuantity}
+            if (nextProcess!=''){//闈炴渶鍚庝竴閬撳伐搴�
+              if(row.completedQuantityComputed>=row.minQuantity ){
+                if((val<(row.completedQuantityComputed-row.minQuantity || val>=row.completedQuantityComputed))){
+                  return new Error(`${row.completedQuantityComputed-row.minQuantity}
                                   <=val<=
                                   ${row.completedQuantityComputed}`)
-              }
-            }else{
-              if((val>row.completedQuantityComputed)){
-                return new Error(`val
+                }
+              }else{
+                if((val>row.completedQuantityComputed)){
+                  return new Error(`val
                                   <=
                                   ${row.completedQuantityComputed}`)
+                }
+              }
+            }else {//鏈�鍚庝竴閬撳伐搴�
+              if (val<row.completedQuantityComputed){
+                         //搴撳瓨鏁伴噺銆佸凡鍏ュ簱鏁伴噺
+                if (val>(row.inventory_quantity-row.received_quantity)){
+                  return new Error(`val
+                                  <=
+                                  ${row.inventory_quantity-row.received_quantity}`)
+                }else {
+                  if (val < (row.inventory_quantity-row.received_quantity)){
+                        //瀹屽伐鎬绘暟銆佹湰娆″畬宸ユ暟銆佸凡鍏ュ簱鏁伴噺
+                    if (completedSum-row.completedQuantityComputed <row.received_quantity){
+                      return new Error(`${t('reportingWorks.pleaseNumber15')}`)
+                    }
+                  }
+                }
               }
             }
-
-
 
           }
         }
@@ -585,7 +610,7 @@
           //灞傚彿
           let technologyStr = resultProcessId[2];
           if (last != titleUploadData.value.thisProcess){
-            ElMessage.error('璇烽�夋嫨鏈�鍚庡伐搴忔姤宸ュ叆搴�')
+            ElMessage.error(t('reportingWorks.pleaseNumber16'))
             return
           }
           storageBtn.value = true
@@ -797,7 +822,7 @@
     },
     {
       field: 'responsiblePersonnel',
-      title: '璐d换淇℃伅',
+      title: t('rework.responsibilityInformation'),
       editRender: {name: 'input', attrs: {placeholder: ''}}
 
     },
@@ -1001,6 +1026,23 @@
     return
   }
 
+  const reportingWorkTime = titleUploadData.value.reportingWorkTime
+    const currentTime = new Date()
+    const targetTime = new Date(reportingWorkTime)
+    //鏈潵鏃堕棿
+    if (targetTime > currentTime) {
+      ElMessage.error(t('reportingWorks.futureTime'))
+      return
+    }
+    // 涓や釜鏃堕棿鐨勬绉掑樊
+    const diffMs = currentTime - targetTime
+    // 杞崲涓哄ぉ鏁�
+    const diffDays = diffMs / (1000 * 60 * 60 * 24)
+    if (diffDays > 396 && saveType!="update") {
+      ElMessage.error(t('reportingWorks.longTime'))
+      return
+    }
+
   const seenIds = {}
   const uniqueByOrderNum = xGrid.value.getTableData().fullData.filter(item => {
     // 妫�鏌tem鐨刬d鏄惁宸茬粡鍦╯eenIds涓�
@@ -1051,6 +1093,7 @@
   }
   gridOptions.toolbarConfig.buttons[0].disabled=true
   gridOptions.toolbarConfig.buttons[1].disabled=true
+  gridOptions.loading=true
   //鍒ゆ柇淇濆瓨杩樻槸淇敼
   if(saveType==='save'){
     saveReportingWorkRequest(requestData)
@@ -1068,6 +1111,7 @@
       if(storageBtn.value == true){
         getStorageWork();
       }
+      gridOptions.loading=false
       router.push({path:'/main/reportingWorks/AddReportingWork',query:{processId:titleUploadData.value.processId,random:Math.random()}})
     }else{
       const errorObj = JSON.parse(res.msg)
@@ -1076,15 +1120,16 @@
           +t('reportingWorks.pleaseNumber3')+'锛�'+errorObj.processNum+'<'+
           +t('reportingWorks.pleaseNumber4')+'锛�'+errorObj.sumNum+'\n'
           +t('reportingWorks.pleaseNumber5')
-
+      gridOptions.loading=false
       ElMessage.error(msg)
     }
   }).catch(err =>{
-    ElMessage.error('鎻愪氦澶辫触锛岃鍒锋柊鍚庨噸璇�')
+    ElMessage.error(t('basicData.msg.ServerConnectionError'))
+    gridOptions.loading=false
   }).finally(()=>{
-
     gridOptions.toolbarConfig.buttons[0].disabled=false
     gridOptions.toolbarConfig.buttons[1].disabled=false
+    gridOptions.loading=false
   })
 }
 
@@ -1279,28 +1324,7 @@
 
       //鍒ゆ柇鏃╂櫄鐝�
       titleUploadData.value.classes=t('reportingWorks.early')
-      titleUploadData.value.reportingWorkTime = formatCurrentTime()
-
-      //澶勭悊缂栧彿鍒�
-      //瀹氫箟瀛樻斁缂栧彿鏁扮粍
-      const s01Values = [];
-      for (let i = 0; i < res.data.Detail.length; i++) {
-        const s01Values = [];
-        // 閬嶅巻 detailList 鏁扮粍锛屾彁鍙� S01 鍊煎埌 s01Values 鏁扮粍
-        if (res.data.Detail[i].other_columns!=null|| res.data.Detail[i].other_columns!=undefined){
-          res.data.Detail.forEach(element => {
-            const otherColumnsObject = JSON.parse(element.other_columns);
-            const s01Value = otherColumnsObject.S01;
-            s01Values.push(s01Value || ''); // 濡傛灉 S01 鍊间负绌猴紝娣诲姞绌哄瓧绗︿覆鎴栬�呭叾浠栭粯璁ゅ��
-          });
-
-          // 灏� s01Values 涓殑鍊艰祴缁欐瘡涓鍗曡鎯呭璞$殑 s01Value 灞炴��
-          res.data.Detail.forEach((detail, index) => {
-            detail.s01Value = index < s01Values.length ? s01Values[index] : ''; // 璧嬪�肩粰 s01Value 灞炴��
-          });
-        }
-
-      }
+      titleUploadData.value.reportingWorkTime = res.data.reportingWorkTiem
 
 
       //缁戝畾涓嬫柟琛ㄦ牸
@@ -1308,10 +1332,10 @@
       // 浣跨敤map鏂规硶鏉ュ鐞嗘瘡涓璞�
       let modifiedCollection = res.data.Detail.map(item => {
         if (item.reviewed_state === 1) {
-          return { ...item, reviewed_state: "宸插鏍�" };
+          return { ...item, reviewed_state: t('productStock.approved') };
         }
         else if (item.reviewed_state === 0) {
-          return { ...item, reviewed_state: "鏈鏍�" };
+          return { ...item, reviewed_state: t('reportingWorks.unreviewed') };
         }
         else {
           // 鍏朵粬鎯呭喌淇濇寔涓嶅彉
@@ -1527,7 +1551,8 @@
       orderId: titleUploadData.value.orderId
     },
     processId:processIdStr,
-    orderNumber:item.order_number
+    orderNumber:item.order_number,
+    inventoryQuantity:item.completedQuantity
   }));
   let flowData = ref({
     decValue:company.decValue,
@@ -1537,6 +1562,7 @@
     remark: remark.value,
     container: container.value,
     flowCard: resultData,
+    createTime: titleUploadData.value.reportingWorkTime
   })
   //璋冪敤鍏ュ簱鎺ュ彛
   request.post("/finishedGoodsInventory/addSelectWarehousing",flowData.value).then((res) => {
@@ -2045,8 +2071,7 @@
 }
 
 ::v-deep(.mytable-scrollbar .col-red) {
-  background-color: rgb(66,159,254);
-  color: #fff;
+  background-color: rgb(66,159,254)!important;
 }
 
 

--
Gitblit v1.8.0