From 5cfaaffd38b1cd91e1279261fa7f5df0675117e0 Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期三, 24 九月 2025 16:13:04 +0800
Subject: [PATCH] 把erp中文修改成语言变量

---
 north-glass-erp/northglass-erp/src/views/sd/bom/ProductBomAdd.vue                                |   32 +-
 north-glass-erp/northglass-erp/src/views/mm/productStock/OrderAllocation.vue                     |    1 
 north-glass-erp/northglass-erp/src/components/sd/order/UpdateAlienEditor.vue                     |    6 
 north-glass-erp/northglass-erp/src/views/pp/replenish/SelectReplenish.vue                        |    2 
 north-glass-erp/northglass-erp/src/views/pp/processCard/SelectAddProcess.vue                     |    2 
 north-glass-erp/northglass-erp/src/lang/zh.js                                                    |   71 ++++++
 north-glass-erp/northglass-erp/src/views/mm/ingredientStock/CreateOutBound.vue                   |    6 
 north-glass-erp/northglass-erp/src/views/mm/productStock/TransferRecord.vue                      |    2 
 north-glass-erp/northglass-erp/src/lang/ar.js                                                    |   68 ++++++
 north-glass-erp/northglass-erp/src/views/sd/glassPrice/ProductList.vue                           |    2 
 north-glass-erp/northglass-erp/src/views/sd/delivery/SelectOrderList.vue                         |    1 
 north-glass-erp/northglass-erp/src/views/mm/productStock/TakeOutRecord.vue                       |    2 
 north-glass-erp/northglass-erp/src/views/pp/processCard/SelectDetailProcessCard.vue              |    2 
 north-glass-erp/northglass-erp/src/views/mm/ingredientStock/SelectIngredientsStock.vue           |    1 
 north-glass-erp/northglass-erp/src/views/mm/stockReport/MaterialAdditionReport.vue               |    4 
 north-glass-erp/northglass-erp/src/views/pp/processCard/AddProcessCard.vue                       |    6 
 north-glass-erp/northglass-erp/src/views/mm/ingredientStock/MaterialAdditionRecord.vue           |    6 
 north-glass-erp/northglass-erp/src/views/pp/processCard/SelectPrintProject.vue                   |    4 
 north-glass-erp/northglass-erp/src/views/mm/ingredientStock/MaterialAddition.vue                 |    2 
 north-glass-erp/northglass-erp/src/views/pp/replenish/PrintReplenishFlowCard.vue                 |    6 
 north-glass-erp/northglass-erp/src/views/pp/reportingWorks/SelectReportingWorks.vue              |   24 +-
 north-glass-erp/northglass-erp/src/views/mm/productStock/ProductStockList.vue                    |    4 
 north-glass-erp/northglass-erp/src/components/pp/SelectProcessCardDetail.vue                     |    6 
 north-glass-erp/northglass-erp/src/views/pp/reportingWorks/QualityInspectionReview.vue           |    9 
 north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue                                |    2 
 north-glass-erp/northglass-erp/src/views/mm/ingredient/CreateIngredients.vue                     |    2 
 north-glass-erp/northglass-erp/src/views/pp/replenish/AddReplenish.vue                           |    2 
 north-glass-erp/src/main/resources/mapper/mm/MaterialInventory.xml                               |    5 
 north-glass-erp/northglass-erp/src/views/pp/processCard/SelectProcessCard.vue                    |    4 
 north-glass-erp/src/main/java/com/example/erp/dto/mm/MaterialLogDTO.java                         |    2 
 north-glass-erp/northglass-erp/src/views/mm/stockReport/FinishedGlassShelfEmitReport.vue         |    2 
 north-glass-erp/northglass-erp/src/views/mm/stockReport/MaterialOutboundReport.vue               |    3 
 north-glass-erp/northglass-erp/src/lang/en.js                                                    |   68 ++++++
 north-glass-erp/northglass-erp/src/views/mm/productStock/StorageRecord.vue                       |    6 
 north-glass-erp/northglass-erp/src/views/sd/delivery/CreateDelivery.vue                          |    2 
 north-glass-erp/northglass-erp/src/views/mm/stockReport/StockMonthReport.vue                     |    2 
 north-glass-erp/northglass-erp/src/components/pp/TagStyle.vue                                    |   24 +-
 north-glass-erp/northglass-erp/src/views/pp/rework/PrintReworkFlowCard.vue                       |    2 
 north-glass-erp/northglass-erp/src/views/pp/processCard/ProductionScheduling.vue                 |    2 
 north-glass-erp/northglass-erp/src/views/mm/stockReport/FinishedGlassShelfWithdrawReport.vue     |    2 
 north-glass-erp/northglass-erp/src/components/pp/SelectSortDetailProcessCard.vue                 |    2 
 north-glass-erp/northglass-erp/src/views/mm/productStock/ReworkRecord.vue                        |    2 
 north-glass-erp/northglass-erp/src/views/pp/rework/SelectRework.vue                              |    2 
 north-glass-erp/northglass-erp/src/views/mm/finishedGlassShelf/FinishedGlassShelfInformation.vue |    4 
 north-glass-erp/northglass-erp/src/views/sd/product/CreateProduct.vue                            |    4 
 north-glass-erp/northglass-erp/src/components/sd/order/UpdateAlienEditor2.vue                    |    4 
 north-glass-erp/northglass-erp/src/views/pp/machine/MaintenanceAndRepair.vue                     |    1 
 north-glass-erp/northglass-erp/src/views/pp/reportingWorks/AddReportingWork.vue                  |   26 +-
 north-glass-erp/northglass-erp/src/views/mm/stockReport/StockWarehouseReport.vue                 |    6 
 north-glass-erp/northglass-erp/src/views/mm/ingredientStock/SelectSurplusMaterials.vue           |    1 
 north-glass-erp/northglass-erp/src/views/sd/delivery/SelectDelivery.vue                          |    8 
 north-glass-erp/northglass-erp/src/views/mm/productStock/StorageRecordPint.vue                   |   10 
 north-glass-erp/northglass-erp/src/views/mm/stockReport/FinishedProductInventoryReport.vue       |    2 
 north-glass-erp/northglass-erp/src/views/pp/productionBasicData/SelectProductionBasicData.vue    |    1 
 north-glass-erp/northglass-erp/src/views/sd/bom/BOM.vue                                          |    6 
 north-glass-erp/src/main/java/com/example/erp/entity/mm/MaterialLog.java                         |    2 
 north-glass-erp/northglass-erp/src/views/sd/bom/OrderBOM.vue                                     |    2 
 north-glass-erp/northglass-erp/src/lang/ru.js                                                    |   68 ++++++
 north-glass-erp/northglass-erp/src/lang/kr.js                                                    |   68 ++++++
 north-glass-erp/northglass-erp/src/views/sd/bom/MaterialBOM.vue                                  |   28 +-
 60 files changed, 477 insertions(+), 169 deletions(-)

diff --git a/north-glass-erp/northglass-erp/src/components/pp/SelectProcessCardDetail.vue b/north-glass-erp/northglass-erp/src/components/pp/SelectProcessCardDetail.vue
index c1f756b..4631e83 100644
--- a/north-glass-erp/northglass-erp/src/components/pp/SelectProcessCardDetail.vue
+++ b/north-glass-erp/northglass-erp/src/components/pp/SelectProcessCardDetail.vue
@@ -143,9 +143,9 @@
 
   toolbarConfig: {
     buttons: [
-      {code: 'update', name: t('鍚堟灦'), status: 'primary'},
-      {code: 'save', name: t('淇濆瓨'), status: 'primary'},
-      {code: 'clear', name: t('娓呯┖'), status: 'primary'},
+      {code: 'update', name: t('processCard.combinedFrame'), status: 'primary'},
+      {code: 'save', name: t('basicData.save'), status: 'primary'},
+      {code: 'clear', name: t('basicData.empty'), status: 'primary'},
     ],
 
   },
diff --git a/north-glass-erp/northglass-erp/src/components/pp/SelectSortDetailProcessCard.vue b/north-glass-erp/northglass-erp/src/components/pp/SelectSortDetailProcessCard.vue
index 2e06522..9eae22a 100644
--- a/north-glass-erp/northglass-erp/src/components/pp/SelectSortDetailProcessCard.vue
+++ b/north-glass-erp/northglass-erp/src/components/pp/SelectSortDetailProcessCard.vue
@@ -174,7 +174,7 @@
           },
           {
             code: 'flashback',
-            name: '鍊掑彊',
+            name: t('processCard.flashback'),
             prefixIcon: 'vxe-icon-indicator',
             visible: true,
             disabled: false
diff --git a/north-glass-erp/northglass-erp/src/components/pp/TagStyle.vue b/north-glass-erp/northglass-erp/src/components/pp/TagStyle.vue
index a72dfa4..4b7c0aa 100644
--- a/north-glass-erp/northglass-erp/src/components/pp/TagStyle.vue
+++ b/north-glass-erp/northglass-erp/src/components/pp/TagStyle.vue
@@ -33,27 +33,27 @@
   alType:'order.alType',
   customerBatch:'order.customerBatch',
   processingNote:'order.processingNote',
-  remarks:'璁㈠崟澶囨敞',
+  remarks:'basicData.orderRemarks',
   customerAbbreviation:'customer.customerAbbreviation',
   productAbbreviation:'product.msg.productAbbreviation',
   processId:'processCard.processId',
-  createTime:'涓嬪崟鏃ユ湡',
+  createTime:'report.orderTime',
   orderNumber:'order.OrderNum',
   technologyNumber:'processCard.technologyNumber',
   process:'orderBasicData.process',
   color:'mainIngredient.films',
-  figureNumber:'鍥惧彿',
-  colourCeramicGlaze:'褰╅噳鍥惧彿',
+  figureNumber:'order.drawingNo',
+  colourCeramicGlaze:'order.colourCeramicGlaze',
   glassNumber:"reportingWorks.glassNumber",
-  remarks1:'澶囨敞1',
-  remarks2:'澶囨敞2',
-  remarks3:'澶囨敞3',
-  remarks4:'澶囨敞4',
-  filmNumber:'浜у搧澶囨敞',
+  remarks1:'basicData.remarks1',
+  remarks2:'basicData.remarks2',
+  remarks3:'basicData.remarks3',
+  remarks4:'basicData.remarks4',
+  filmNumber:'basicData.filmNumber',
   bendRadius:'order.bendRadius',
   glassChild:'reportingWorks.glassChild',
   glassAddress:'replenish.sliceMarking',
-  quantity:'宸ョ▼鐢ㄦ暟閲�'
+  quantity:'processCard.quantity'
 
 
 
@@ -214,8 +214,8 @@
             </el-select>
 
             <el-button v-if="tag.id!==null" @click="close" type="primary" circle  :icon="CloseBold"/>
-            <el-input placeholder="瀹�" v-model="tag.tagWidth" style="width: 40px"/>
-            <el-input placeholder="楂�" v-model="tag.tagHeight" style="width: 40px"/>
+            <el-input :placeholder="$t('order.width')" v-model="tag.tagWidth" style="width: 40px"/>
+            <el-input :placeholder="$t('order.height')" v-model="tag.tagHeight" style="width: 40px"/>
           </el-row>
 
         </el-header>
diff --git a/north-glass-erp/northglass-erp/src/components/sd/order/UpdateAlienEditor.vue b/north-glass-erp/northglass-erp/src/components/sd/order/UpdateAlienEditor.vue
index 4d71aaa..f68c05c 100644
--- a/north-glass-erp/northglass-erp/src/components/sd/order/UpdateAlienEditor.vue
+++ b/north-glass-erp/northglass-erp/src/components/sd/order/UpdateAlienEditor.vue
@@ -206,7 +206,7 @@
       circle.value.r=0
       exportToDXF(1)
     }else{
-      ElMessage.warning("璇疯緭鍏ュぇ浜�0鐨勬湁鏁堝弬鏁�")
+      ElMessage.warning(t('basicData.greater0Msg'))
     }
 
   }
@@ -242,7 +242,7 @@
       rect.value.h=0
       exportToDXF(1)
     }else{
-      ElMessage.warning("璇疯緭鍏ュぇ浜�0鐨勬湁鏁堝弬鏁�")
+      ElMessage.warning(t('basicData.greater0Msg'))
     }
 
   }
@@ -643,7 +643,7 @@
   else if(value===2&&state.value){
     saveAs(blob, 'map.dxf');
   }else{
-    ElMessage.warning("璇ユ牸寮忎笉鏀寔瀵煎嚭")
+    ElMessage.warning(t('basicData.notExport'))
   }
 }
 
diff --git a/north-glass-erp/northglass-erp/src/components/sd/order/UpdateAlienEditor2.vue b/north-glass-erp/northglass-erp/src/components/sd/order/UpdateAlienEditor2.vue
index 7ec154a..38b1e8a 100644
--- a/north-glass-erp/northglass-erp/src/components/sd/order/UpdateAlienEditor2.vue
+++ b/north-glass-erp/northglass-erp/src/components/sd/order/UpdateAlienEditor2.vue
@@ -368,7 +368,7 @@
   else if(value===2&&state.value){
     saveAs(blob, 'map.dxf');
   }else{
-    ElMessage.warning("璇ユ牸寮忎笉鏀寔瀵煎嚭")
+    ElMessage.warning(t('basicData.notExport'))
   }
 }
 
@@ -744,7 +744,7 @@
     }
     emits('getUploadPicture', fileName.value,fileDate.value,fileJson.value)
   }else{
-    ElMessage.warning("鏈弬涓庝慨鏀�")
+    ElMessage.warning(t('basicData.notUpdate'))
   }
 
 }
diff --git a/north-glass-erp/northglass-erp/src/lang/ar.js b/north-glass-erp/northglass-erp/src/lang/ar.js
index d497828..ba283b2 100644
--- a/north-glass-erp/northglass-erp/src/lang/ar.js
+++ b/north-glass-erp/northglass-erp/src/lang/ar.js
@@ -69,6 +69,13 @@
         partiallySelected:'閮ㄥ垎閫変腑',
         unchecked :'鏈�変腑',
         copy:'澶嶅埗',
+
+        orderRemarks:'璁㈠崟澶囨敞',
+        filmNumber:'浜у搧澶囨敞',
+        remarks1:'澶囨敞1',
+        remarks2:'澶囨敞2',
+        remarks3:'澶囨敞3',
+        remarks4:'澶囨敞4',
         msg:{
             max255:'兀丿禺賱 255 丨乇賮賸丕 賰丨丿 兀賯氐賶',
             max10:"鏈�澶氳緭鍏�10涓瓧绗�",
@@ -96,7 +103,10 @@
             range9999Dec:'賷乇噩賶 廿丿禺丕賱 毓丿丿 氐丨賷丨 賲賰賵賳 賲賳 兀乇亘毓丞 兀乇賯丕賲',
             quantityError: "鏁伴噺閿欒锛岃鍒锋柊鍐嶄繚瀛�",
             dataDoesNotExist: "鏁版嵁涓嶅瓨鍦�",
-            greater0Sec1:"璇疯緭鍏ュぇ浜�0鐨勬暣鏁版垨鑰呬繚鐣欎竴浣嶅皬鏁�"
+            greater0Sec1:"璇疯緭鍏ュぇ浜�0鐨勬暣鏁版垨鑰呬繚鐣欎竴浣嶅皬鏁�",
+            greater0Msg:"璇疯緭鍏ュぇ浜�0鐨勬暟瀛�",
+            notExport:"璇ユ牸寮忎笉鏀寔瀵煎嚭",
+            notUpdate:"鍙傛暟鏈慨鏀�",
         }
     },
     product:{
@@ -272,6 +282,7 @@
         surtax:'闄勫姞绋�',
         valueAddedTax:'澧炲�肩◣',
         cuttingTransport:'杩愯緭娑堝噺',
+        colourCeramicGlaze:'褰╅噳鍥惧彿',
         msg:{
             productCheck:'丕賱乇噩丕亍 丕禺鬲賷丕乇 賲賳鬲噩',
             tableLengthNot:'賱丕 鬲賵噩丿 亘賷丕賳丕鬲 賱賱噩丿賵賱',
@@ -553,6 +564,21 @@
         terminationQuantity:'鐢熶骇缁堟鏁伴噺',
         terminationMsg:'璇疯緭鍏ユ纭殑鍙慨鏀规暟閲�',
         maxCompleted:'鏈�澶у凡瀹屽伐鏁伴噺',
+        updateProcessMsg:'淇濆瓨澶辫触锛佽妫�鏌ュ彉鏇村伐搴忔槸鍚︽姤宸�',
+        termination:'缁堟',
+
+        quantity:'宸ョ▼鐢ㄦ暟閲�',
+        print1:'11鍒�4琛�',
+        print2:'6琛�3鍒�',
+        msg:{
+            msg1:'娴佺▼鍗″垱寤哄け璐�',
+            msg2:'璇疯緭鍏ュ皬浜庣瓑浜庡緟鍒嗘暟閲忕殑鏁板瓧',
+            msg3:'鎵�閫夋暟鎹殑鏁伴噺鎬诲拰',
+            msg4:'涓庤鍗曟暟閲�',
+            msg5:'涓嶅尮閰嶏紝璇锋鏌ュ悗閲嶈瘯锛�',
+            msg6:'鏄惁鍚堝苟?',
+            msg7:'鎾ら攢澶辫触锛岃妫�鏌ユ槸鍚﹀凡鐢熸垚宸ョ▼鍙�',
+        }
     },
     reportingWorks:{
         page:{
@@ -669,6 +695,17 @@
         pleaseNumber13:'涓嬪伐搴忔姤宸ユ暟:',
         pleaseNumber14:'鏈伐搴忎慨鏀规暟涓嶈兘灏忎簬涓嬪伐搴忔姤宸ユ暟',
         pleaseNumber15:'宸插叆搴撴暟閲忎笉鑳藉ぇ浜庡凡瀹屽伐鏁伴噺',
+
+        pleaseNumber16:'璇烽�夋嫨鏈�鍚庡伐搴忔姤宸ュ叆搴�',
+
+        woodenBox:'鏈ㄧ:',
+        brandreth:'閾佹灦',
+        tilting:'鍊掓灦',
+        secondaryBreakage:'搴忓彿娆$牬鐩稿悓',
+        checkedBreakage:'閫変腑娆$牬鐩稿悓',
+        unreviewed:'鏈鏍�',
+        notunreviewed:'瀹℃牳鏈�氳繃',
+        notQualified:'鏃犻渶璐ㄦ',
     },
     productStock:{
         page:{
@@ -779,6 +816,8 @@
         packing:'瑁呯璋冩灦',
         msgPacking:'瑁呯璋冩灦鎴愬姛',
         boxNumberOrRemarks:'绠卞彿鎴栧娉�',
+        msg4:'鍙戣揣鍗曞凡鍒涘缓',
+        msg5:'鐗╂枡鍙兘瀛樺湪瑁呯璋冩灦锛屾棤娉曢��鍥�',
     },
     customer:{
         page:{
@@ -856,6 +895,8 @@
         freightQuantity:'杩愯垂鏁伴噺',
         freight:'杩愯垂閲戦',
         pleaseMsg1:'璁㈠崟瀛樺湪鍏朵粬閲戦鍗曚环娌℃湁濉啓',
+        print1:'娲涢槼鎵撳嵃鏃犲昂瀵�',
+        print2:'娲涢槼鎵撳嵃鏈夊昂瀵�',
 
     },
     replenish:{
@@ -894,6 +935,7 @@
         PleaseSelectAReworkTeam:'丕賱乇噩丕亍 鬲丨丿賷丿 賮乇賷賯 廿毓丕丿丞 丕賱毓賲賱',
         TheReworkQuantityCannotBeGreaterThanTheSecondBreakQuantity:'賱丕 賷賲賰賳 兀賳 鬲賰賵賳 賰賲賷丞 廿毓丕丿丞 丕賱毓賲賱 兀賰亘乇 賲賳 賰賲賷丞 丕賱賮丕氐賱 丕賱孬丕賳賷',
         reworkQuantityCannotBeEmptyOr0:'賱丕 賷賲賰賳 兀賳 鬲賰賵賳 賰賲賷丞 廿毓丕丿丞 丕賱毓賲賱 賮丕乇睾丞 兀賵 0',
+        msg1:'璇峰~鍏ラ渶瑕佸悎骞剁殑灞�',
     },
 
 
@@ -1125,6 +1167,7 @@
         pleaseEnter :'賲賳 賮囟賱賰 兀丿禺賱',
         msg1 :'搴撳瓨宸插瓨鍦ㄦ鐗╂枡涓嶈兘鍒犻櫎',
         unit :'鍗曚綅',
+        msg2 :'璇ョ墿鏂欏凡瀛樺湪',
     },
     ingredientsStock:{
         page:{
@@ -1179,7 +1222,10 @@
         additionOfSurplusMaterials :'浣欐枡鏂板',
         excessMaterialOutflow :'浣欐枡鍑哄簱',
         pleaseSelectTheTypeOfReturnToStock:'璇烽�夋嫨杩斿簱绫诲瀷',
-        pleaseSelectOneData:'璇烽�変腑涓�琛屾暟鎹�'
+        pleaseSelectOneData:'璇烽�変腑涓�琛屾暟鎹�',
+        msg1:'搴撳瓨瀛樺湪澶氭潯',
+        msg2:'鏁伴噺涓嶅璇锋鏌�',
+        msg3:'搴撳瓨涓嶅瓨鍦ㄦ垨鑰呭瓨鍦ㄥ鏉�',
     },
     warehouseBasicData:{
         page:{
@@ -1317,6 +1363,24 @@
         withdrawId:'鍏ュ簱缂栧彿',
         returnDelivery:'杩斿洖鍙戣揣',
         withdrawQuantity1:'寰呭綊杩樻暟閲�',
+        summary:'姹囨��',
+        detail:'鏄庣粏',
+    },
+    bom:{
+        orderBOM:'璁㈠崟BOM',
+        productBOM:'浜у搧BOM',
+        materialBOM:'鐗╂枡BOM',
+        msg:{
+            msg1:'璇峰厛閫夋嫨涓�涓骇鍝佹爣绛�',
+        },
+        bomType:'绫诲瀷',
+        consume:'娑堣�楅噺',
+        price:'浣跨敤浠锋牸',
+        price1:'浠锋牸',
+        usageType:'浣跨敤绫诲瀷',
+        bomPrice:'BOM鎴愭湰',
+        other:'鍏跺畠',
+
     }
 
 
diff --git a/north-glass-erp/northglass-erp/src/lang/en.js b/north-glass-erp/northglass-erp/src/lang/en.js
index 2a95ce8..9578b1a 100644
--- a/north-glass-erp/northglass-erp/src/lang/en.js
+++ b/north-glass-erp/northglass-erp/src/lang/en.js
@@ -69,6 +69,13 @@
         partiallySelected:'partially selected',
         unchecked :'unchecked',
         copy:'Copy',
+
+        orderRemarks:'璁㈠崟澶囨敞',
+        filmNumber:'浜у搧澶囨敞',
+        remarks1:'澶囨敞1',
+        remarks2:'澶囨敞2',
+        remarks3:'澶囨敞3',
+        remarks4:'澶囨敞4',
         msg:{
             max255:"The value contains a maximum of 255 characters",
             max10:"鏈�澶氳緭鍏�10涓瓧绗�",
@@ -96,7 +103,10 @@
             range9999Dec: "Please enter a four digit integer",
             quantityError: "Quantity Error",
             dataDoesNotExist: "Data Does Not Exist",
-            greater0Sec1:"璇疯緭鍏ュぇ浜�0鐨勬暣鏁版垨鑰呬繚鐣欎竴浣嶅皬鏁�"
+            greater0Sec1:"璇疯緭鍏ュぇ浜�0鐨勬暣鏁版垨鑰呬繚鐣欎竴浣嶅皬鏁�",
+            greater0Msg:"璇疯緭鍏ュぇ浜�0鐨勬暟瀛�",
+            notExport:"璇ユ牸寮忎笉鏀寔瀵煎嚭",
+            notUpdate:"鍙傛暟鏈慨鏀�",
         }
     },
     product:{
@@ -272,6 +282,7 @@
         surtax:'闄勫姞绋�',
         valueAddedTax:'澧炲�肩◣',
         cuttingTransport:'杩愯緭娑堝噺',
+        colourCeramicGlaze:'褰╅噳鍥惧彿',
         msg:{
             productCheck:'Please select a product',
             tableLengthNot:'No table data',
@@ -554,6 +565,21 @@
         terminationQuantity:'鐢熶骇缁堟鏁伴噺',
         terminationMsg:'璇疯緭鍏ユ纭殑鍙慨鏀规暟閲�',
         maxCompleted:'鏈�澶у凡瀹屽伐鏁伴噺',
+        updateProcessMsg:'淇濆瓨澶辫触锛佽妫�鏌ュ彉鏇村伐搴忔槸鍚︽姤宸�',
+        termination:'缁堟',
+
+        quantity:'宸ョ▼鐢ㄦ暟閲�',
+        print1:'11鍒�4琛�',
+        print2:'6琛�3鍒�',
+        msg:{
+            msg1:'娴佺▼鍗″垱寤哄け璐�',
+            msg2:'璇疯緭鍏ュ皬浜庣瓑浜庡緟鍒嗘暟閲忕殑鏁板瓧',
+            msg3:'鎵�閫夋暟鎹殑鏁伴噺鎬诲拰',
+            msg4:'涓庤鍗曟暟閲�',
+            msg5:'涓嶅尮閰嶏紝璇锋鏌ュ悗閲嶈瘯锛�',
+            msg6:'鏄惁鍚堝苟?',
+            msg7:'鎾ら攢澶辫触锛岃妫�鏌ユ槸鍚﹀凡鐢熸垚宸ョ▼鍙�',
+        }
     },
     reportingWorks:{
         page:{
@@ -670,6 +696,17 @@
         pleaseNumber13:'涓嬪伐搴忔姤宸ユ暟:',
         pleaseNumber14:'鏈伐搴忎慨鏀规暟涓嶈兘灏忎簬涓嬪伐搴忔姤宸ユ暟',
         pleaseNumber15:'宸插叆搴撴暟閲忎笉鑳藉ぇ浜庡凡瀹屽伐鏁伴噺',
+
+        pleaseNumber16:'璇烽�夋嫨鏈�鍚庡伐搴忔姤宸ュ叆搴�',
+
+        woodenBox:'鏈ㄧ:',
+        brandreth:'閾佹灦',
+        tilting:'鍊掓灦',
+        secondaryBreakage:'搴忓彿娆$牬鐩稿悓',
+        checkedBreakage:'閫変腑娆$牬鐩稿悓',
+        unreviewed:'鏈鏍�',
+        notunreviewed:'瀹℃牳鏈�氳繃',
+        notQualified:'鏃犻渶璐ㄦ',
     },
     productStock:{
         page:{
@@ -780,6 +817,8 @@
         packing:'瑁呯璋冩灦',
         msgPacking:'瑁呯璋冩灦鎴愬姛',
         boxNumberOrRemarks:'绠卞彿鎴栧娉�',
+        msg4:'鍙戣揣鍗曞凡鍒涘缓',
+        msg5:'鐗╂枡鍙兘瀛樺湪瑁呯璋冩灦锛屾棤娉曢��鍥�',
     },
     customer:{
         page:{
@@ -858,6 +897,8 @@
         freightQuantity:'Freight Quantity',
         freight:'Freight Money',
         pleaseMsg1:'There are other amounts in the order and the unit price is not filled in',
+        print1:'娲涢槼鎵撳嵃鏃犲昂瀵�',
+        print2:'娲涢槼鎵撳嵃鏈夊昂瀵�',
 
     },
     replenish:{
@@ -895,6 +936,7 @@
         PleaseSelectAReworkTeam:'Please select a rework team',
         TheReworkQuantityCannotBeGreaterThanTheSecondBreakQuantity:'The rework quantity cannot be greater than the second break quantity',
         reworkQuantityCannotBeEmptyOr0:'Rework quantity cannot be empty or 0',
+        msg1:'璇峰~鍏ラ渶瑕佸悎骞剁殑灞�',
     },
 
 
@@ -1126,6 +1168,7 @@
         pleaseEnter :'Please enter',
         msg1 :'This material is already in stock and cannot be deleted',
         unit :'unit',
+        msg2 :'璇ョ墿鏂欏凡瀛樺湪',
     },
     ingredientsStock:{
         page:{
@@ -1180,7 +1223,10 @@
         additionOfSurplusMaterials :'Surplus addition',
         excessMaterialOutflow :'Residual materials out of storage',
         pleaseSelectTheTypeOfReturnToStock:'Please select a return type',
-        pleaseSelectOneData:'璇烽�変腑涓�琛屾暟鎹�'
+        pleaseSelectOneData:'璇烽�変腑涓�琛屾暟鎹�',
+        msg1:'搴撳瓨瀛樺湪澶氭潯',
+        msg2:'鏁伴噺涓嶅璇锋鏌�',
+        msg3:'搴撳瓨涓嶅瓨鍦ㄦ垨鑰呭瓨鍦ㄥ鏉�',
     },
     warehouseBasicData:{
         page:{
@@ -1318,6 +1364,24 @@
         withdrawId:'鍏ュ簱缂栧彿',
         returnDelivery:'杩斿洖鍙戣揣',
         withdrawQuantity1:'寰呭綊杩樻暟閲�',
+        summary:'姹囨��',
+        detail:'鏄庣粏',
+    },
+    bom:{
+        orderBOM:'璁㈠崟BOM',
+        productBOM:'浜у搧BOM',
+        materialBOM:'鐗╂枡BOM',
+        msg:{
+            msg1:'璇峰厛閫夋嫨涓�涓骇鍝佹爣绛�',
+        },
+        bomType:'绫诲瀷',
+        consume:'娑堣�楅噺',
+        price:'浣跨敤浠锋牸',
+        price1:'浠锋牸',
+        usageType:'浣跨敤绫诲瀷',
+        bomPrice:'BOM鎴愭湰',
+        other:'鍏跺畠',
+
     }
 
 
diff --git a/north-glass-erp/northglass-erp/src/lang/kr.js b/north-glass-erp/northglass-erp/src/lang/kr.js
index ca2be4d..020115f 100644
--- a/north-glass-erp/northglass-erp/src/lang/kr.js
+++ b/north-glass-erp/northglass-erp/src/lang/kr.js
@@ -69,6 +69,13 @@
         partiallySelected:'攵�攵� 靹犿儩',
         unchecked :'氙胳劆韮� 雿办澊韯�',
         copy:'欤茧 氤奠牅',
+
+        orderRemarks:'璁㈠崟澶囨敞',
+        filmNumber:'浜у搧澶囨敞',
+        remarks1:'澶囨敞1',
+        remarks2:'澶囨敞2',
+        remarks3:'澶囨敞3',
+        remarks4:'澶囨敞4',
         msg:{
             max255:"斓滊寑 255鞛� 鞛呺牓 臧�電�",
             max10:"鏈�澶氳緭鍏�10涓瓧绗�",
@@ -96,7 +103,10 @@
             range9999Dec: "4鞛愲Μ 鞝曥垬 鞛呺牓頃橃劯鞖�",
             quantityError: '靾橂焿 鞓る, 靸堧瓿犾龚 頉� 鞝�鞛ロ晿靹胳殧',
             dataDoesNotExist: "雿办澊韯� 鞐嗢潓",
-            greater0Sec1:"璇疯緭鍏ュぇ浜�0鐨勬暣鏁版垨鑰呬繚鐣欎竴浣嶅皬鏁�"
+            greater0Sec1:"璇疯緭鍏ュぇ浜�0鐨勬暣鏁版垨鑰呬繚鐣欎竴浣嶅皬鏁�",
+            greater0Msg:"璇疯緭鍏ュぇ浜�0鐨勬暟瀛�",
+            notExport:"璇ユ牸寮忎笉鏀寔瀵煎嚭",
+            notUpdate:"鍙傛暟鏈慨鏀�",
         }
     },
     product:{
@@ -272,6 +282,7 @@
         surtax:'攵�臧�靹�',
         valueAddedTax:'攵�臧�靹�',
         cuttingTransport:'鞛嫧鞝勳啞',
+        colourCeramicGlaze:'褰╅噳鍥惧彿',
         transferPage:{
             oldOrderId:'旮办〈 欤茧 氩堩樃',
             newOrderId:'鞁犼窚 欤茧 氩堩樃',
@@ -561,6 +572,21 @@
         terminationQuantity:'鐢熶骇缁堟鏁伴噺',
         terminationMsg:'璇疯緭鍏ユ纭殑鍙慨鏀规暟閲�',
         maxCompleted:'鏈�澶у凡瀹屽伐鏁伴噺',
+        updateProcessMsg:'淇濆瓨澶辫触锛佽妫�鏌ュ彉鏇村伐搴忔槸鍚︽姤宸�',
+        termination:'缁堟',
+
+        quantity:'宸ョ▼鐢ㄦ暟閲�',
+        print1:'11鍒�4琛�',
+        print2:'6琛�3鍒�',
+        msg:{
+            msg1:'娴佺▼鍗″垱寤哄け璐�',
+            msg2:'璇疯緭鍏ュ皬浜庣瓑浜庡緟鍒嗘暟閲忕殑鏁板瓧',
+            msg3:'鎵�閫夋暟鎹殑鏁伴噺鎬诲拰',
+            msg4:'涓庤鍗曟暟閲�',
+            msg5:'涓嶅尮閰嶏紝璇锋鏌ュ悗閲嶈瘯锛�',
+            msg6:'鏄惁鍚堝苟?',
+            msg7:'鎾ら攢澶辫触锛岃妫�鏌ユ槸鍚﹀凡鐢熸垚宸ョ▼鍙�',
+        }
     },
     reportingWorks:{
         page:{
@@ -677,6 +703,17 @@
         pleaseNumber13:'涓嬪伐搴忔姤宸ユ暟:',
         pleaseNumber14:'鏈伐搴忎慨鏀规暟涓嶈兘灏忎簬涓嬪伐搴忔姤宸ユ暟',
         pleaseNumber15:'宸插叆搴撴暟閲忎笉鑳藉ぇ浜庡凡瀹屽伐鏁伴噺',
+
+        pleaseNumber16:'璇烽�夋嫨鏈�鍚庡伐搴忔姤宸ュ叆搴�',
+
+        woodenBox:'鏈ㄧ:',
+        brandreth:'閾佹灦',
+        tilting:'鍊掓灦',
+        secondaryBreakage:'搴忓彿娆$牬鐩稿悓',
+        checkedBreakage:'閫変腑娆$牬鐩稿悓',
+        unreviewed:'鏈鏍�',
+        notunreviewed:'瀹℃牳鏈�氳繃',
+        notQualified:'鏃犻渶璐ㄦ',
     },
     productStock:{
         page:{
@@ -787,6 +824,8 @@
         packing:'瑁呯璋冩灦',
         msgPacking:'瑁呯璋冩灦鎴愬姛',
         boxNumberOrRemarks:'绠卞彿鎴栧娉�',
+        msg4:'鍙戣揣鍗曞凡鍒涘缓',
+        msg5:'鐗╂枡鍙兘瀛樺湪瑁呯璋冩灦锛屾棤娉曢��鍥�',
     },
     customer:{
         page:{
@@ -864,6 +903,8 @@
         freightQuantity:'鞖挫啞 靾橂焿',
         freight:'鞖挫啞 牍勳毄',
         pleaseMsg1:'欤茧靹� 旮绊儉旮堨暋 雼皜臧� 旮办瀰霅橃 鞎婌晿鞀惦媹雼�',
+        print1:'娲涢槼鎵撳嵃鏃犲昂瀵�',
+        print2:'娲涢槼鎵撳嵃鏈夊昂瀵�',
 
     },
     replenish:{
@@ -903,6 +944,7 @@
         PleaseSelectAReworkTeam:'鞛瀾鞐� 韺�鞚� 靹犿儩頃� 欤检劯鞖�',
         TheReworkQuantityCannotBeGreaterThanTheSecondBreakQuantity:'鞛瀾鞐� 靾橂焿鞚� 觳矆歆� 韺岇啇 靾橂焿鞚� 齑堦臣頃� 靾� 鞐嗢潓',
         reworkQuantityCannotBeEmptyOr0:'鞛瀾鞐� 靾橂焿鞚� 瓿惦氨鞚搓卑雮� 0鞚� 靾� 鞐嗢潓',
+        msg1:'璇峰~鍏ラ渶瑕佸悎骞剁殑灞�',
     },
 
 
@@ -1135,6 +1177,7 @@
         pleaseEnter :'鞛呺牓',
         msg1 :'斓滊寑 5MB 鞚措偞 鞚措歆� 韺岇澕鞚� 靹犿儩頃挫<靹胳殧',
         unit :'鍗曚綅',
+        msg2 :'璇ョ墿鏂欏凡瀛樺湪',
     },
     ingredientsStock:{
         page:{
@@ -1189,7 +1232,10 @@
         additionOfSurplusMaterials :'浣欐枡鏂板',
         excessMaterialOutflow :'浣欐枡鍑哄簱',
         pleaseSelectTheTypeOfReturnToStock:'璇烽�夋嫨杩斿簱绫诲瀷',
-        pleaseSelectOneData:'璇烽�変腑涓�琛屾暟鎹�'
+        pleaseSelectOneData:'璇烽�変腑涓�琛屾暟鎹�',
+        msg1:'搴撳瓨瀛樺湪澶氭潯',
+        msg2:'鏁伴噺涓嶅璇锋鏌�',
+        msg3:'搴撳瓨涓嶅瓨鍦ㄦ垨鑰呭瓨鍦ㄥ鏉�',
     },
     warehouseBasicData:{
         page:{
@@ -1327,6 +1373,24 @@
         withdrawId:'鍏ュ簱缂栧彿',
         returnDelivery:'杩斿洖鍙戣揣',
         withdrawQuantity1:'寰呭綊杩樻暟閲�',
+        summary:'姹囨��',
+        detail:'鏄庣粏',
+    },
+    bom:{
+        orderBOM:'璁㈠崟BOM',
+        productBOM:'浜у搧BOM',
+        materialBOM:'鐗╂枡BOM',
+        msg:{
+            msg1:'璇峰厛閫夋嫨涓�涓骇鍝佹爣绛�',
+        },
+        bomType:'绫诲瀷',
+        consume:'娑堣�楅噺',
+        price:'浣跨敤浠锋牸',
+        price1:'浠锋牸',
+        usageType:'浣跨敤绫诲瀷',
+        bomPrice:'BOM鎴愭湰',
+        other:'鍏跺畠',
+
     }
 
 
diff --git a/north-glass-erp/northglass-erp/src/lang/ru.js b/north-glass-erp/northglass-erp/src/lang/ru.js
index 1ddb33b..472dfb7 100644
--- a/north-glass-erp/northglass-erp/src/lang/ru.js
+++ b/north-glass-erp/northglass-erp/src/lang/ru.js
@@ -69,6 +69,13 @@
         partiallySelected:'閮ㄥ垎閫変腑',
         unchecked :'鏈�変腑',
         copy:'澶嶅埗',
+
+        orderRemarks:'璁㈠崟澶囨敞',
+        filmNumber:'浜у搧澶囨敞',
+        remarks1:'澶囨敞1',
+        remarks2:'澶囨敞2',
+        remarks3:'澶囨敞3',
+        remarks4:'澶囨敞4',
         msg:{
             max255:"袙胁械写懈褌械 255 褋懈屑胁芯谢芯胁.",
             max10:"鏈�澶氳緭鍏�10涓瓧绗�",
@@ -96,7 +103,10 @@
             range9999Dec: "袙胁械写懈褌械 褔械褌褘褉械 褑械谢褘褏 褔懈褋谢邪.",
             quantityError: "鏁伴噺閿欒锛岃鍒锋柊鍐嶄繚瀛�",
             dataDoesNotExist: "鏁版嵁涓嶅瓨鍦�",
-            greater0Sec1:"璇疯緭鍏ュぇ浜�0鐨勬暣鏁版垨鑰呬繚鐣欎竴浣嶅皬鏁�"
+            greater0Sec1:"璇疯緭鍏ュぇ浜�0鐨勬暣鏁版垨鑰呬繚鐣欎竴浣嶅皬鏁�",
+            greater0Msg:"璇疯緭鍏ュぇ浜�0鐨勬暟瀛�",
+            notExport:"璇ユ牸寮忎笉鏀寔瀵煎嚭",
+            notUpdate:"鍙傛暟鏈慨鏀�",
         }
     },
     product:{
@@ -273,6 +283,7 @@
         surtax:'闄勫姞绋�',
         valueAddedTax:'澧炲�肩◣',
         cuttingTransport:'杩愯緭娑堝噺',
+        colourCeramicGlaze:'褰╅噳鍥惧彿',
         msg:{
             productCheck:'袩芯卸邪谢褍泄褋褌邪, 胁褘斜械褉懈褌械 锌褉芯写褍泻褌',
             tableLengthNot:'袧械褌 写邪薪薪褘褏 褌邪斜谢懈褑褘',
@@ -551,6 +562,21 @@
         terminationQuantity:'鐢熶骇缁堟鏁伴噺',
         terminationMsg:'璇疯緭鍏ユ纭殑鍙慨鏀规暟閲�',
         maxCompleted:'鏈�澶у凡瀹屽伐鏁伴噺',
+        updateProcessMsg:'淇濆瓨澶辫触锛佽妫�鏌ュ彉鏇村伐搴忔槸鍚︽姤宸�',
+        termination:'缁堟',
+
+        quantity:'宸ョ▼鐢ㄦ暟閲�',
+        print1:'11鍒�4琛�',
+        print2:'6琛�3鍒�',
+        msg:{
+            msg1:'娴佺▼鍗″垱寤哄け璐�',
+            msg2:'璇疯緭鍏ュ皬浜庣瓑浜庡緟鍒嗘暟閲忕殑鏁板瓧',
+            msg3:'鎵�閫夋暟鎹殑鏁伴噺鎬诲拰',
+            msg4:'涓庤鍗曟暟閲�',
+            msg5:'涓嶅尮閰嶏紝璇锋鏌ュ悗閲嶈瘯锛�',
+            msg6:'鏄惁鍚堝苟?',
+            msg7:'鎾ら攢澶辫触锛岃妫�鏌ユ槸鍚﹀凡鐢熸垚宸ョ▼鍙�',
+        }
     },
     reportingWorks:{
         page:{
@@ -667,6 +693,17 @@
         pleaseNumber13:'涓嬪伐搴忔姤宸ユ暟:',
         pleaseNumber14:'鏈伐搴忎慨鏀规暟涓嶈兘灏忎簬涓嬪伐搴忔姤宸ユ暟',
         pleaseNumber15:'宸插叆搴撴暟閲忎笉鑳藉ぇ浜庡凡瀹屽伐鏁伴噺',
+
+        pleaseNumber16:'璇烽�夋嫨鏈�鍚庡伐搴忔姤宸ュ叆搴�',
+
+        woodenBox:'鏈ㄧ:',
+        brandreth:'閾佹灦',
+        tilting:'鍊掓灦',
+        secondaryBreakage:'搴忓彿娆$牬鐩稿悓',
+        checkedBreakage:'閫変腑娆$牬鐩稿悓',
+        unreviewed:'鏈鏍�',
+        notunreviewed:'瀹℃牳鏈�氳繃',
+        notQualified:'鏃犻渶璐ㄦ',
     },
     productStock:{
         page:{
@@ -777,6 +814,8 @@
         packing:'瑁呯璋冩灦',
         msgPacking:'瑁呯璋冩灦鎴愬姛',
         boxNumberOrRemarks:'绠卞彿鎴栧娉�',
+        msg4:'鍙戣揣鍗曞凡鍒涘缓',
+        msg5:'鐗╂枡鍙兘瀛樺湪瑁呯璋冩灦锛屾棤娉曢��鍥�',
     },
     customer:{
         page:{
@@ -854,6 +893,8 @@
         freightQuantity:'杩愯垂鏁伴噺',
         freight:'杩愯垂閲戦',
         pleaseMsg1:'璁㈠崟瀛樺湪鍏朵粬閲戦鍗曚环娌℃湁濉啓',
+        print1:'娲涢槼鎵撳嵃鏃犲昂瀵�',
+        print2:'娲涢槼鎵撳嵃鏈夊昂瀵�',
 
     },
     replenish:{
@@ -893,6 +934,7 @@
         PleaseSelectAReworkTeam:'袩芯卸邪谢褍泄褋褌邪, 胁褘斜械褉懈褌械 褉邪斜芯褔褍褞 谐褉褍锌锌褍.',
         TheReworkQuantityCannotBeGreaterThanTheSecondBreakQuantity:'袩械褉械褉邪斜芯褌泻邪 薪械 写芯谢卸薪邪 锌褉械胁褘褕邪褌褜 泻芯谢懈褔械褋褌胁芯 锌芯胁褉械卸写械薪懈泄.',
         reworkQuantityCannotBeEmptyOr0:'袩械褉械褉邪斜芯褌泻邪 薪械 屑芯卸械褌 斜褘褌褜 锌褍褋褌芯泄 懈谢懈 薪褍谢械胁芯泄.',
+        msg1:'璇峰~鍏ラ渶瑕佸悎骞剁殑灞�',
     },
 
 
@@ -1124,6 +1166,7 @@
         pleaseEnter :'袙胁械写懈褌械',
         msg1 :'搴撳瓨宸插瓨鍦ㄦ鐗╂枡涓嶈兘鍒犻櫎',
         unit :'鍗曚綅',
+        msg2 :'璇ョ墿鏂欏凡瀛樺湪',
     },
     ingredientsStock:{
         page:{
@@ -1178,7 +1221,10 @@
         additionOfSurplusMaterials :'浣欐枡鏂板',
         excessMaterialOutflow :'浣欐枡鍑哄簱',
         pleaseSelectTheTypeOfReturnToStock:'璇烽�夋嫨杩斿簱绫诲瀷',
-        pleaseSelectOneData:'璇烽�変腑涓�琛屾暟鎹�'
+        pleaseSelectOneData:'璇烽�変腑涓�琛屾暟鎹�',
+        msg1:'搴撳瓨瀛樺湪澶氭潯',
+        msg2:'鏁伴噺涓嶅璇锋鏌�',
+        msg3:'搴撳瓨涓嶅瓨鍦ㄦ垨鑰呭瓨鍦ㄥ鏉�',
     },
     warehouseBasicData:{
         page:{
@@ -1316,6 +1362,24 @@
         withdrawId:'鍏ュ簱缂栧彿',
         returnDelivery:'杩斿洖鍙戣揣',
         withdrawQuantity1:'寰呭綊杩樻暟閲�',
+        summary:'姹囨��',
+        detail:'鏄庣粏',
+    },
+    bom:{
+        orderBOM:'璁㈠崟BOM',
+        productBOM:'浜у搧BOM',
+        materialBOM:'鐗╂枡BOM',
+        msg:{
+            msg1:'璇峰厛閫夋嫨涓�涓骇鍝佹爣绛�',
+        },
+        bomType:'绫诲瀷',
+        consume:'娑堣�楅噺',
+        price:'浣跨敤浠锋牸',
+        price1:'浠锋牸',
+        usageType:'浣跨敤绫诲瀷',
+        bomPrice:'BOM鎴愭湰',
+        other:'鍏跺畠',
+
     }
 
 
diff --git a/north-glass-erp/northglass-erp/src/lang/zh.js b/north-glass-erp/northglass-erp/src/lang/zh.js
index f2f695d..ba1404d 100644
--- a/north-glass-erp/northglass-erp/src/lang/zh.js
+++ b/north-glass-erp/northglass-erp/src/lang/zh.js
@@ -69,6 +69,13 @@
         partiallySelected:'閮ㄥ垎閫変腑',
         unchecked :'鏈�変腑',
         copy:'澶嶅埗',
+
+        orderRemarks:'璁㈠崟澶囨敞',
+        filmNumber:'浜у搧澶囨敞',
+        remarks1:'澶囨敞1',
+        remarks2:'澶囨敞2',
+        remarks3:'澶囨敞3',
+        remarks4:'澶囨敞4',
         msg:{
             max255:"鏈�澶氳緭鍏�255涓瓧绗�",
             max10:"鏈�澶氳緭鍏�10涓瓧绗�",
@@ -96,7 +103,10 @@
             range9999Dec: "璇疯緭鍏ュ洓浣嶆暣鏁�",
             quantityError: "鏁伴噺閿欒锛岃鍒锋柊鍐嶄繚瀛�",
             dataDoesNotExist: "鏁版嵁涓嶅瓨鍦�",
-            greater0Sec1:"璇疯緭鍏ュぇ浜�0鐨勬暣鏁版垨鑰呬繚鐣欎竴浣嶅皬鏁�"
+            greater0Sec1:"璇疯緭鍏ュぇ浜�0鐨勬暣鏁版垨鑰呬繚鐣欎竴浣嶅皬鏁�",
+            greater0Msg:"璇疯緭鍏ュぇ浜�0鐨勬暟瀛�",
+            notExport:"璇ユ牸寮忎笉鏀寔瀵煎嚭",
+            notUpdate:"鍙傛暟鏈慨鏀�",
         }
     },
     product:{
@@ -167,6 +177,8 @@
 
            productAbbreviation:'浜у搧绠�绉�',
            productDuplication:'浜у搧閲嶅',
+           msg1:'鍒涘缓浜烘槸锛�',
+           msg2:'鏃犳硶鎿嶄綔锛�',
        }
     },
     order:{
@@ -272,6 +284,7 @@
         surtax:'闄勫姞绋�',
         valueAddedTax:'澧炲�肩◣',
         cuttingTransport:'杩愯緭娑堝噺',
+        colourCeramicGlaze:'褰╅噳鍥惧彿',
         transferPage:{
             oldOrderId:'鍘熻鍗曞彿',
             newOrderId:'鏂拌鍗曞彿',
@@ -566,6 +579,19 @@
         maxCompleted:'鏈�澶у凡瀹屽伐鏁伴噺',
         updateProcessMsg:'淇濆瓨澶辫触锛佽妫�鏌ュ彉鏇村伐搴忔槸鍚︽姤宸�',
         termination:'缁堟',
+
+        quantity:'宸ョ▼鐢ㄦ暟閲�',
+        print1:'11鍒�4琛�',
+        print2:'6琛�3鍒�',
+        msg:{
+            msg1:'娴佺▼鍗″垱寤哄け璐�',
+            msg2:'璇疯緭鍏ュ皬浜庣瓑浜庡緟鍒嗘暟閲忕殑鏁板瓧',
+            msg3:'鎵�閫夋暟鎹殑鏁伴噺鎬诲拰',
+            msg4:'涓庤鍗曟暟閲�',
+            msg5:'涓嶅尮閰嶏紝璇锋鏌ュ悗閲嶈瘯锛�',
+            msg6:'鏄惁鍚堝苟?',
+            msg7:'鎾ら攢澶辫触锛岃妫�鏌ユ槸鍚﹀凡鐢熸垚宸ョ▼鍙�',
+        }
     },
     reportingWorks:{
         page:{
@@ -685,6 +711,17 @@
         pleaseNumber13:'涓嬪伐搴忔姤宸ユ暟:',
         pleaseNumber14:'鏈伐搴忎慨鏀规暟涓嶈兘灏忎簬涓嬪伐搴忔姤宸ユ暟',
         pleaseNumber15:'宸插叆搴撴暟閲忎笉鑳藉ぇ浜庡凡瀹屽伐鏁伴噺',
+
+        pleaseNumber16:'璇烽�夋嫨鏈�鍚庡伐搴忔姤宸ュ叆搴�',
+
+        woodenBox:'鏈ㄧ:',
+        brandreth:'閾佹灦',
+        tilting:'鍊掓灦',
+        secondaryBreakage:'搴忓彿娆$牬鐩稿悓',
+        checkedBreakage:'閫変腑娆$牬鐩稿悓',
+        unreviewed:'鏈鏍�',
+        notunreviewed:'瀹℃牳鏈�氳繃',
+        notQualified:'鏃犻渶璐ㄦ',
     },
     productStock:{
         page:{
@@ -795,6 +832,8 @@
         packing:'瑁呯璋冩灦',
         msgPacking:'瑁呯璋冩灦鎴愬姛',
         boxNumberOrRemarks:'绠卞彿鎴栧娉�',
+        msg4:'鍙戣揣鍗曞凡鍒涘缓',
+        msg5:'鐗╂枡鍙兘瀛樺湪瑁呯璋冩灦锛屾棤娉曢��鍥�',
     },
     customer:{
         page:{
@@ -872,6 +911,8 @@
         freightQuantity:'杩愯垂鏁伴噺',
         freight:'杩愯垂閲戦',
         pleaseMsg1:'璁㈠崟瀛樺湪鍏朵粬閲戦鍗曚环娌℃湁濉啓',
+        print1:'娲涢槼鎵撳嵃鏃犲昂瀵�',
+        print2:'娲涢槼鎵撳嵃鏈夊昂瀵�',
 
     },
     replenish:{
@@ -889,7 +930,8 @@
         sliceMarking:'鐗囨爣璁�',
         printPatchesMsg1:'璇烽�夋嫨鏍囩妯℃澘',
         labelTemplate:'鏍囩妯℃澘锛�',
-        listLabelTemplates:'鏍囩妯℃澘鍒楄〃'
+        listLabelTemplates:'鏍囩妯℃澘鍒楄〃',
+        label:'灏忕墖鏍囩',
     },
     rework:{
         page:{
@@ -910,6 +952,7 @@
         PleaseSelectAReworkTeam:'璇烽�夋嫨杩斿伐鐝粍',
         TheReworkQuantityCannotBeGreaterThanTheSecondBreakQuantity:'杩斿伐鏁伴噺涓嶈兘澶т簬娆$牬鏁伴噺',
         reworkQuantityCannotBeEmptyOr0:'杩斿伐鏁伴噺涓嶈兘涓虹┖鎴栬�呮槸0',
+        msg1:'璇峰~鍏ラ渶瑕佸悎骞剁殑灞�',
     },
 
 
@@ -1145,6 +1188,7 @@
         pleaseEnter :'璇疯緭鍏�',
         msg1 :'搴撳瓨宸插瓨鍦ㄦ鐗╂枡涓嶈兘鍒犻櫎',
         unit :'鍗曚綅',
+        msg2 :'璇ョ墿鏂欏凡瀛樺湪',
     },
     ingredientsStock:{
         page:{
@@ -1199,7 +1243,10 @@
         additionOfSurplusMaterials :'浣欐枡鏂板',
         excessMaterialOutflow :'浣欐枡鍑哄簱',
         pleaseSelectTheTypeOfReturnToStock:'璇烽�夋嫨杩斿簱绫诲瀷',
-        pleaseSelectOneData:'璇烽�変腑涓�琛屾暟鎹�'
+        pleaseSelectOneData:'璇烽�変腑涓�琛屾暟鎹�',
+        msg1:'搴撳瓨瀛樺湪澶氭潯',
+        msg2:'鏁伴噺涓嶅璇锋鏌�',
+        msg3:'搴撳瓨涓嶅瓨鍦ㄦ垨鑰呭瓨鍦ㄥ鏉�',
     },
     warehouseBasicData:{
         page:{
@@ -1337,6 +1384,24 @@
         withdrawId:'鍏ュ簱缂栧彿',
         returnDelivery:'杩斿洖鍙戣揣',
         withdrawQuantity1:'寰呭綊杩樻暟閲�',
+        summary:'姹囨��',
+        detail:'鏄庣粏',
+    },
+    bom:{
+        orderBOM:'璁㈠崟BOM',
+        productBOM:'浜у搧BOM',
+        materialBOM:'鐗╂枡BOM',
+        msg:{
+            msg1:'璇峰厛閫夋嫨涓�涓骇鍝佹爣绛�',
+        },
+        bomType:'绫诲瀷',
+        consume:'娑堣�楅噺',
+        price:'浣跨敤浠锋牸',
+        price1:'浠锋牸',
+        usageType:'浣跨敤绫诲瀷',
+        bomPrice:'BOM鎴愭湰',
+        other:'鍏跺畠',
+
     }
 
 
diff --git a/north-glass-erp/northglass-erp/src/views/mm/finishedGlassShelf/FinishedGlassShelfInformation.vue b/north-glass-erp/northglass-erp/src/views/mm/finishedGlassShelf/FinishedGlassShelfInformation.vue
index 64fca0c..bf02114 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/finishedGlassShelf/FinishedGlassShelfInformation.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/finishedGlassShelf/FinishedGlassShelfInformation.vue
@@ -339,8 +339,8 @@
         <template #toolbar_buttons="{ $grid }">
           &nbsp;&nbsp;
           <vxe-select @change="changeOrderType" v-model="values" >
-            <vxe-option value="1" label="姹囨��"></vxe-option>
-            <vxe-option value="2" label="鏄庣粏"></vxe-option>
+            <vxe-option value="1" :label= t('finishedGlassShelf.summary')></vxe-option>
+            <vxe-option value="2" :label= t('finishedGlassShelf.detail')></vxe-option>
           </vxe-select>
           &nbsp;&nbsp;
 
diff --git a/north-glass-erp/northglass-erp/src/views/mm/ingredient/CreateIngredients.vue b/north-glass-erp/northglass-erp/src/views/mm/ingredient/CreateIngredients.vue
index 0913f01..6f1339e 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/ingredient/CreateIngredients.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/ingredient/CreateIngredients.vue
@@ -130,7 +130,7 @@
         resetForm()
         ElMessage.success(t('basicData.msg.saveSuccess'))
       }else if(res.data==="false1"){
-        ElMessage.warning("璇ョ墿鏂欏凡瀛樺湪")
+        ElMessage.warning(t('ingredients.msg2'))
       }else{
         ElMessage.warning(t('basicData.msg.saveFail'))
       }
diff --git a/north-glass-erp/northglass-erp/src/views/mm/ingredientStock/CreateOutBound.vue b/north-glass-erp/northglass-erp/src/views/mm/ingredientStock/CreateOutBound.vue
index 6d3bda2..86a5979 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/ingredientStock/CreateOutBound.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/ingredientStock/CreateOutBound.vue
@@ -28,12 +28,12 @@
 const getTableRow = (row,type) =>{
   switch (type) {
     case 'edit' :{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+
       router.push({path: '/main/trader/CreateTrader', query: { id: row.id }})
       break
     }
     case 'delete':{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
+
       break
     }
   }
@@ -534,7 +534,7 @@
     return[
       columns.map((column, columnIndex) => {
         if (columnIndex === 0) {
-          return '鍚堣:'
+          return t('basicData.total')
         }
         // if (props.tableProp.footList.includes(column.field)) {
         //   return sumNum(data, column.field)
diff --git a/north-glass-erp/northglass-erp/src/views/mm/ingredientStock/MaterialAddition.vue b/north-glass-erp/northglass-erp/src/views/mm/ingredientStock/MaterialAddition.vue
index 77cfed8..c7b22a7 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/ingredientStock/MaterialAddition.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/ingredientStock/MaterialAddition.vue
@@ -193,7 +193,7 @@
       ElMessage.success(t('basicData.msg.saveSuccess'))
       router.push({path: '/main/ingredientsStock/SelectIngredientsStock', query:{random:Math.random()}})
     }else if(res.data==="false1") {
-      ElMessage.warning("搴撳瓨瀛樺湪澶氭潯")
+      ElMessage.warning(t('ingredientsStock.msg1'))
     }else {
       ElMessage.warning(t('basicData.msg.ServerConnectionError'))
     }
diff --git a/north-glass-erp/northglass-erp/src/views/mm/ingredientStock/MaterialAdditionRecord.vue b/north-glass-erp/northglass-erp/src/views/mm/ingredientStock/MaterialAdditionRecord.vue
index 2cbabb6..1c68371 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/ingredientStock/MaterialAdditionRecord.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/ingredientStock/MaterialAdditionRecord.vue
@@ -22,11 +22,9 @@
 const getTableRow = (row,type) =>{
   switch (type) {
     case 'add' :{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
       break
     }
     case 'delete':{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
       break
     }
   }
@@ -361,9 +359,9 @@
                   })
 
                 }else if(res.data === "false1"){
-                  ElMessage.warning(t('鏁伴噺涓嶅璇锋鏌�'))
+                  ElMessage.warning(t('ingredientsStock.msg2'))
                 }else if(res.data === "false2"){
-                  ElMessage.warning(t('搴撳瓨涓嶅瓨鍦ㄦ垨鑰呭瓨鍦ㄥ鏉�'))
+                  ElMessage.warning(t('ingredientsStock.msg3'))
                 }else {
                   ElMessage.warning(t('productStock.cancellationFailed'))
                 }
diff --git a/north-glass-erp/northglass-erp/src/views/mm/ingredientStock/SelectIngredientsStock.vue b/north-glass-erp/northglass-erp/src/views/mm/ingredientStock/SelectIngredientsStock.vue
index 9f1d146..14e821b 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/ingredientStock/SelectIngredientsStock.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/ingredientStock/SelectIngredientsStock.vue
@@ -36,7 +36,6 @@
       break
     }
     case 'delete':{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
       break
     }
   }
diff --git a/north-glass-erp/northglass-erp/src/views/mm/ingredientStock/SelectSurplusMaterials.vue b/north-glass-erp/northglass-erp/src/views/mm/ingredientStock/SelectSurplusMaterials.vue
index d73ac37..f58a364 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/ingredientStock/SelectSurplusMaterials.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/ingredientStock/SelectSurplusMaterials.vue
@@ -26,7 +26,6 @@
       break
     }
     case 'delete':{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
       break
     }
   }
diff --git a/north-glass-erp/northglass-erp/src/views/mm/productStock/OrderAllocation.vue b/north-glass-erp/northglass-erp/src/views/mm/productStock/OrderAllocation.vue
index 68827b0..15f675c 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/productStock/OrderAllocation.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/productStock/OrderAllocation.vue
@@ -25,7 +25,6 @@
 const getTableRow = (row,type) =>{
   switch (type) {
     case 'edit' :{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
       // router.push({path: '/main/productStock/OrderAllocation', query: { id: row.id }})
       break
     }
diff --git a/north-glass-erp/northglass-erp/src/views/mm/productStock/ProductStockList.vue b/north-glass-erp/northglass-erp/src/views/mm/productStock/ProductStockList.vue
index c7a157e..b26660e 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/productStock/ProductStockList.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/productStock/ProductStockList.vue
@@ -433,7 +433,7 @@
       <template #footer>
         <div class="dialog-footer">
           <el-button type="primary" @click="changeRack">
-            璋冩灦
+            {{t('basicData.save')}}
           </el-button>
         </div>
       </template>
@@ -442,7 +442,7 @@
     <el-dialog
         id="sizePrintCalrd1"
         v-model="dialogTableVisible1"
-        title="瑁呯鍗曟墦鍗�"
+        :title="$t('productStock.boxingPrinting')"
         destroy-on-close
         style="width: 75%;height:75% ">
       <template #header="{ close, titleId, titleClass }">
diff --git a/north-glass-erp/northglass-erp/src/views/mm/productStock/ReworkRecord.vue b/north-glass-erp/northglass-erp/src/views/mm/productStock/ReworkRecord.vue
index c5f8236..b557410 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/productStock/ReworkRecord.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/productStock/ReworkRecord.vue
@@ -21,11 +21,9 @@
 const getTableRow = (row,type) =>{
   switch (type) {
     case 'add' :{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
       break
     }
     case 'delete':{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
       break
     }
   }
diff --git a/north-glass-erp/northglass-erp/src/views/mm/productStock/StorageRecord.vue b/north-glass-erp/northglass-erp/src/views/mm/productStock/StorageRecord.vue
index c239a2d..9065520 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/productStock/StorageRecord.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/productStock/StorageRecord.vue
@@ -24,11 +24,9 @@
 const getTableRow = (row,type) =>{
   switch (type) {
     case 'add' :{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
       break
     }
     case 'delete':{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
       break
     }
   }
@@ -292,9 +290,9 @@
                 router.push({path:'/main/productStock/storageRecord',query:{random:Math.random(),storageType: type.value}})
 
               }else if(res.data==="false1"){
-                ElMessage.warning("鍙戣揣鍗曞凡鍒涘缓")
+                ElMessage.warning(t('productStock.msg4'))
               }else if(res.data==="false2"){
-                ElMessage.warning("鐗╂枡鍙兘瀛樺湪瑁呯璋冩灦锛屾棤娉曢��鍥�")
+                ElMessage.warning(t('productStock.msg5'))
               }else{
                 ElMessage.warning(t('productStock.cancellationFailed'))
               }
diff --git a/north-glass-erp/northglass-erp/src/views/mm/productStock/StorageRecordPint.vue b/north-glass-erp/northglass-erp/src/views/mm/productStock/StorageRecordPint.vue
index 89934cc..978b17c 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/productStock/StorageRecordPint.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/productStock/StorageRecordPint.vue
@@ -206,16 +206,16 @@
 
     {type: 'checkbox',fixed:"left", title: t('basicData.check'), width: '80' },
     {type: 'seq',fixed:"left", title: t('basicData.Number'), width: '80' },
-    {field: 'remarks', width:'150', title: t('绠卞彿'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'remarks', width:'150', title: t('productStock.boxNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'orderId', width: '150',title: t('order.orderId'),showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'processId', width: '150',title: t('processCard.processId'), showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'orderDetail.productId',width: '100', title: t('order.productId'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'orderDetail.productName',width: '140', title: t('order.product'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'orderDetail.width', width: '100',title: t('order.width'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'orderDetail.height',width: '100', title: t('order.height'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
-    {field: 'order.project', width: '100',title: t('椤圭洰鍚嶇О'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
-    {field: 'order.customerName', width:'140', title: t('瀹㈡埛鍚嶇О'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
-    {field: 'order.deliveryAddress', width: '100',title: t('閫佽揣鍦板潃'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'order.project', width: '100',title: t('order.project'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'order.customerName', width:'140', title: t('customer.customerName'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'order.deliveryAddress', width: '100',title: t('delivery.shippingAddress'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
   ],//琛ㄥご鎸夐挳
   toolbarConfig: {
     buttons: [
@@ -387,7 +387,7 @@
     <el-dialog
         id="sizePrintCalrd"
         v-model="dialogTableVisible"
-        title="瑁呯鍗曟墦鍗�"
+        :title="$t('productStock.boxingPrinting')"
         destroy-on-close
         style="width: 75%;height:75% ">
       <template #header="{ close, titleId, titleClass }">
diff --git a/north-glass-erp/northglass-erp/src/views/mm/productStock/TakeOutRecord.vue b/north-glass-erp/northglass-erp/src/views/mm/productStock/TakeOutRecord.vue
index 5b49787..c463aec 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/productStock/TakeOutRecord.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/productStock/TakeOutRecord.vue
@@ -22,11 +22,9 @@
 const getTableRow = (row,type) =>{
   switch (type) {
     case 'add' :{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
       break
     }
     case 'delete':{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
       break
     }
   }
diff --git a/north-glass-erp/northglass-erp/src/views/mm/productStock/TransferRecord.vue b/north-glass-erp/northglass-erp/src/views/mm/productStock/TransferRecord.vue
index ce25993..78e2ecd 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/productStock/TransferRecord.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/productStock/TransferRecord.vue
@@ -21,11 +21,9 @@
 const getTableRow = (row,type) =>{
   switch (type) {
     case 'add' :{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
       break
     }
     case 'delete':{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
       break
     }
   }
diff --git a/north-glass-erp/northglass-erp/src/views/mm/stockReport/FinishedGlassShelfEmitReport.vue b/north-glass-erp/northglass-erp/src/views/mm/stockReport/FinishedGlassShelfEmitReport.vue
index b56d852..ac8275a 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/stockReport/FinishedGlassShelfEmitReport.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/stockReport/FinishedGlassShelfEmitReport.vue
@@ -31,7 +31,7 @@
   data:[],//琛ㄦ牸鏁版嵁
   url :'/finishedGlassShelf/getFinishedGlassShelfLogReport/鏂欐灦鍑哄簱',
   exportUrl :'/finishedGlassShelf/exportFinishedGlassShelfLogReport/鏂欐灦鍑哄簱',
-  exportName:t('鏂欐灦鍑哄簱鎶ヨ〃'),
+  exportName:t('stockReport.finishedGlassShelfEmitReport'),
   footList:['quantity']
 })
 
diff --git a/north-glass-erp/northglass-erp/src/views/mm/stockReport/FinishedGlassShelfWithdrawReport.vue b/north-glass-erp/northglass-erp/src/views/mm/stockReport/FinishedGlassShelfWithdrawReport.vue
index 52bb3d1..9394990 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/stockReport/FinishedGlassShelfWithdrawReport.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/stockReport/FinishedGlassShelfWithdrawReport.vue
@@ -32,7 +32,7 @@
   data:[],//琛ㄦ牸鏁版嵁
   url :'/finishedGlassShelf/getFinishedGlassShelfLogReport/鏂欐灦鍏ュ簱',
   exportUrl :'/finishedGlassShelf/exportFinishedGlassShelfLogReport/鏂欐灦鍏ュ簱',
-  exportName:t('鏂欐灦鍏ュ簱鎶ヨ〃'),
+  exportName:t('stockReport.finishedGlassShelfWithdrawReport'),
   footList:['quantity']
 })
 
diff --git a/north-glass-erp/northglass-erp/src/views/mm/stockReport/FinishedProductInventoryReport.vue b/north-glass-erp/northglass-erp/src/views/mm/stockReport/FinishedProductInventoryReport.vue
index 8502a8a..0e981d2 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/stockReport/FinishedProductInventoryReport.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/stockReport/FinishedProductInventoryReport.vue
@@ -40,7 +40,7 @@
   url :'/finishedGoodsInventory/getSelectFinishedOperateLogReport/鍏ュ簱',
   exportUrl :'/finishedGoodsInventory/exportFinishedOperateLogReport/鍏ュ簱',
   exportName:t('stockReport.finishedProductInventoryReport'),
-  footList:['quantity']
+  footList:['quantity','area','money']
 })
 
 </script>
diff --git a/north-glass-erp/northglass-erp/src/views/mm/stockReport/MaterialAdditionReport.vue b/north-glass-erp/northglass-erp/src/views/mm/stockReport/MaterialAdditionReport.vue
index 817bf51..f28face 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/stockReport/MaterialAdditionReport.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/stockReport/MaterialAdditionReport.vue
@@ -11,7 +11,7 @@
 const childrenData = ref({
   columns:[
     {type: 'seq',fixed:"left", title: t('basicData.Number'), width: '80' },
-    {field: 'operationOrderNumber', width:'150', title: t('productStock.operationOrderNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'operationOrderNumber', width:'150', title: t('ingredientsStock.dateOfManufacture'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'operationNumber', width: '100',title: t('order.OrderNum'), showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'operateType', width: '120',title:t('warehouseBasicData.type'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'quantity', width: '140',title: t('order.quantity'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
@@ -26,7 +26,7 @@
     {field: 'singlePieceArea', width:'140', title: t('productStock.singlePieceArea'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'inventoryArea', width:'140', title: t('productStock.inventoryArea'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'operator', width: '100',title: t('productStock.creator'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
-    {field: 'operateTime', width:'140', title: t('productStock.productionDate'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'operateTime', width:'140', title: t('productStock.productionDate')},
     {field: 'remarks', width: '140',title: t('productStock.remarks'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
 
   ],//琛ㄦ牸琛ㄥご瀛楁
diff --git a/north-glass-erp/northglass-erp/src/views/mm/stockReport/MaterialOutboundReport.vue b/north-glass-erp/northglass-erp/src/views/mm/stockReport/MaterialOutboundReport.vue
index e095f29..88da5d1 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/stockReport/MaterialOutboundReport.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/stockReport/MaterialOutboundReport.vue
@@ -29,7 +29,8 @@
     {field: 'singlePieceArea', width:'140', title: t('productStock.singlePieceArea'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'inventoryArea', width:'140', title: t('productStock.inventoryArea'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'operator', width: '100',title: t('productStock.creator'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
-    {field: 'operateTime', width:'140', title: t('productStock.productionDate'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'operateTime', width:'140', title: t('productStock.productionDate')},
+    {field: 'materialOutboundDetail.dateOfManufacture', width:'140', title: t('ingredientsStock.dateOfManufacture')},
     {field: 'remarks', width: '140',title: t('productStock.remarks'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
 
   ],//琛ㄦ牸琛ㄥご瀛楁
diff --git a/north-glass-erp/northglass-erp/src/views/mm/stockReport/StockMonthReport.vue b/north-glass-erp/northglass-erp/src/views/mm/stockReport/StockMonthReport.vue
index 66e3442..80c4f0f 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/stockReport/StockMonthReport.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/stockReport/StockMonthReport.vue
@@ -13,7 +13,7 @@
     {type: 'seq',fixed:"left", title: t('basicData.Number'), width: '80' },
     {field: 'operationOrderNumber', width:'150', title: t('productStock.operationOrderNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'orderId', width: '150',title: t('order.orderId'),showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
-    {field: 'operateType', width: '120',title:'绫诲瀷',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
+    {field: 'operateType', width: '120',title:t('machine.type'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
     {field: 'operationNumber', width: '100',title: t('order.OrderNum'), showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'quantity', width: '140',title: t('order.quantity'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'orderDetail.productId',width: '100', title: t('order.productId'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
diff --git a/north-glass-erp/northglass-erp/src/views/mm/stockReport/StockWarehouseReport.vue b/north-glass-erp/northglass-erp/src/views/mm/stockReport/StockWarehouseReport.vue
index d928942..cb7db10 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/stockReport/StockWarehouseReport.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/stockReport/StockWarehouseReport.vue
@@ -14,14 +14,14 @@
     {field: 'operationOrderNumber', width:'150', title: t('productStock.operationOrderNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'orderId', width: '150',title: t('order.orderId'),showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'operationNumber', width: '100',title: t('order.OrderNum'), showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
-    {field: 'operateType', width: '120',title:'绫诲瀷',filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'operateType', width: '120',title:t('machine.type'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'quantity', width: '140',title: t('order.quantity'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'orderDetail.productId',width: '100', title: t('order.productId'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'orderDetail.productName',width: '140', title: t('order.product'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'orderDetail.width', width: '100',title: t('order.width'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'orderDetail.height',width: '100', title: t('order.height'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
-    {field: 'staterOperationOrderNumber', width: '150',title: '璋冩嫧閿�鍞崟鍙�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
-    {field: 'endOperationOrderNumber', width: '100',title: '璋冩嫧搴忓彿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'staterOperationOrderNumber', width: '150',title: t('productStock.staterOperationOrderNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'endOperationOrderNumber', width: '100',title: t('productStock.endOperationOrderNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'operator', width: '100',title: t('productStock.creator'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'operateTime', width:'140', title: t('productStock.productionDate'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'reviewed', width: '100',title: t('productStock.reviewed'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
diff --git a/north-glass-erp/northglass-erp/src/views/pp/machine/MaintenanceAndRepair.vue b/north-glass-erp/northglass-erp/src/views/pp/machine/MaintenanceAndRepair.vue
index 5d81422..01984df 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/machine/MaintenanceAndRepair.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/machine/MaintenanceAndRepair.vue
@@ -47,7 +47,6 @@
       break
     }
     case  'setType': {
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍙嶅鐘舵��')
       break
     }
   }
diff --git a/north-glass-erp/northglass-erp/src/views/pp/processCard/AddProcessCard.vue b/north-glass-erp/northglass-erp/src/views/pp/processCard/AddProcessCard.vue
index c12ce0b..9bb534c 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/processCard/AddProcessCard.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/processCard/AddProcessCard.vue
@@ -567,7 +567,7 @@
     checkedNum.value = ''
 
   } catch (e) {
-    ElMessage.warning(e.message || '娴佺▼鍗″垱寤哄け璐�')
+    ElMessage.warning(e.message || t('processCard.msg.msg1'))
   }
 }
 
@@ -1016,7 +1016,7 @@
 
       checkedList.forEach((item) => {
         if ((item.baiscQuantity * 1) < moveQty) {
-          throw new Error('璇疯緭鍏ュ皬浜庣瓑浜庡緟鍒嗘暟閲忕殑鏁板瓧')
+          throw new Error(t('processCard.msg.msg2'))
         }
 
         // 鍙宠〃鎵f暟閲忋�佹墸闈㈢Н锛堝彧鎵d竴娆★紝閬垮厤宸﹁〃鍐嶆墸閲嶅锛�
@@ -1225,7 +1225,7 @@
             let totalQuantity = data.reduce((sum, record) => sum + (Number(record.quantity) || 0), 0);
             // 瀵规瘮鍏ㄥ眬鍙橀噺 orderQuantity
             if (totalQuantity !== orderQuantity*1) {
-              ElMessage.warning(`鎵�閫夋暟鎹殑鏁伴噺鎬诲拰 (${totalQuantity}) 涓庤鍗曟暟閲� (${orderQuantity}) 涓嶅尮閰嶏紝璇锋鏌ュ悗閲嶈瘯锛乣);
+              ElMessage.warning(`${t('processCard.msg.msg3')} (${totalQuantity}) ${t('processCard.msg.msg4')} (${orderQuantity}) ${t('processCard.msg.msg5')}`);
               gridLeftOptions.toolbarConfig.buttons[0].disabled = false;
               return;
             }
diff --git a/north-glass-erp/northglass-erp/src/views/pp/processCard/ProductionScheduling.vue b/north-glass-erp/northglass-erp/src/views/pp/processCard/ProductionScheduling.vue
index c71579a..443bbc8 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/processCard/ProductionScheduling.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/processCard/ProductionScheduling.vue
@@ -38,7 +38,7 @@
 
 
 //宸ュ簭
-const processVal = ref('鍒囧壊')
+const processVal = ref(t('machine.cutting'))
 
 
 //鎺掍骇鐘舵��
diff --git a/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectAddProcess.vue b/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectAddProcess.vue
index 5b3e39f..0f2a341 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectAddProcess.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectAddProcess.vue
@@ -22,11 +22,9 @@
       break
     }
     case 'delete':{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
       break
     }
     case  'setType':{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鎺掔増鐘舵��')
       break
     }
   }
diff --git a/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectDetailProcessCard.vue b/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectDetailProcessCard.vue
index b5c8b5c..b421de7 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectDetailProcessCard.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectDetailProcessCard.vue
@@ -315,7 +315,7 @@
 
           })
           ElMessageBox.confirm(
-              "鏄惁鍚堝苟锛�",
+              t('processCard.msg.msg6'),
               {
                 confirmButtonText: t('basicData.confirmButtonText'),
                 cancelButtonText: t('basicData.cancelButtonText'),
diff --git a/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectPrintProject.vue b/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectPrintProject.vue
index 54d44f2..c00170d 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectPrintProject.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectPrintProject.vue
@@ -437,8 +437,8 @@
 
         <template #toolbar_buttons="{ $grid }">
           <vxe-select @change="changeOrderType" v-model="printStyle" >
-            <vxe-option value="1" label="11鍒�4琛�"></vxe-option>
-            <vxe-option value="2" label="6琛�3鍒�"></vxe-option>
+            <vxe-option value="1" :label="t('processCard.print1')"></vxe-option>
+            <vxe-option value="2" :label="t('processCard.print2')"></vxe-option>
           </vxe-select>
           &nbsp;&nbsp;
 <!--          <el-button
diff --git a/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectProcessCard.vue b/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectProcessCard.vue
index d1615ab..29f6d17 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectProcessCard.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/processCard/SelectProcessCard.vue
@@ -459,7 +459,7 @@
                 })
               } else {
 
-                ElMessage.warning("鎾ら攢澶辫触锛岃妫�鏌ユ槸鍚﹀凡鐢熸垚宸ョ▼鍙�")
+                ElMessage.warning(t('processCard.msg.msg7'))
 
               }
             })
@@ -701,7 +701,7 @@
     <el-dialog
         id="sizePrintCalrd"
         v-model="dialogTableVisible"
-        :title="$t('娴佺▼鍗″悎鏋�')"
+        :title="$t('processCard.combinedFrame')"
         destroy-on-close
         style="width: 75%;height:75% ">
       <select-process-card-detail
diff --git a/north-glass-erp/northglass-erp/src/views/pp/productionBasicData/SelectProductionBasicData.vue b/north-glass-erp/northglass-erp/src/views/pp/productionBasicData/SelectProductionBasicData.vue
index e22334a..ec2e63b 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/productionBasicData/SelectProductionBasicData.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/productionBasicData/SelectProductionBasicData.vue
@@ -62,7 +62,6 @@
       break
     }
     case  'setType':{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍙嶅鐘舵��')
       break
     }
   }
diff --git a/north-glass-erp/northglass-erp/src/views/pp/replenish/AddReplenish.vue b/north-glass-erp/northglass-erp/src/views/pp/replenish/AddReplenish.vue
index 4cb0a15..5b3be73 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/replenish/AddReplenish.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/replenish/AddReplenish.vue
@@ -210,7 +210,7 @@
               router.push("/login")
             }
           }).catch(err =>{
-            ElMessage.error('鎻愪氦澶辫触锛岃鍒锋柊鍚庨噸璇�')
+            ElMessage.error(t('basicData.msg.ServerConnectionError'))
           }).finally(()=>{
             gridOptions.toolbarConfig.buttons[0].disabled=false
           })
diff --git a/north-glass-erp/northglass-erp/src/views/pp/replenish/PrintReplenishFlowCard.vue b/north-glass-erp/northglass-erp/src/views/pp/replenish/PrintReplenishFlowCard.vue
index fde9e6e..cafc09e 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/replenish/PrintReplenishFlowCard.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/replenish/PrintReplenishFlowCard.vue
@@ -182,7 +182,7 @@
 })
 
 //鎵撳嵃绫诲瀷
-const printType = ref('灏忕墖鏍囩')
+const printType = ref(t('replenish.label'))
 
 //瀹氫箟鎺ユ敹鍔犺浇琛ㄥご涓嬫媺鏁版嵁
 const titleSelectJson = ref({
@@ -358,7 +358,7 @@
     {field: 'patch_area', title:  t('order.area'),width:80,filters: [{data: ''}],slots: {filter: 'num1_filter'}, filterMethod: filterChanged},
     {field: 'responsible_team', title:  t('reportingWorks.responsibleTeam'),width:110,filters: [{data: ''}],slots: {filter: 'num1_filter'}, filterMethod: filterChanged},
     {field: 'responsible_equipment', title:  t('reportingWorks.responsibleEquipment'),width:110,filters: [{data: ''}],slots: {filter: 'num1_filter'}, filterMethod: filterChanged},
-    {field: 'responsible_personnel', title:  '璐d换淇℃伅',width:110,filters: [{data: ''}],slots: {filter: 'num1_filter'}, filterMethod: filterChanged},
+    {field: 'responsible_personnel', title:  t('rework.responsibilityInformation'),width:110,filters: [{data: ''}],slots: {filter: 'num1_filter'}, filterMethod: filterChanged},
     {field: 'patch_type', title:  t('reportingWorks.breakageType'),width:110,filters: [{data: ''}],slots: {filter: 'num1_filter'}, filterMethod: filterChanged},
     {field: 'patch_reason', title:  t('reportingWorks.breakageReason'),width:110,filters: [{data: ''}],slots: {filter: 'num1_filter'}, filterMethod: filterChanged},
     {field: 'patch_processes', title:  t('reportingWorks.responsibleProcess'),width:110,filters: [{data: ''}],slots: {filter: 'num1_filter'}, filterMethod: filterChanged},
@@ -527,7 +527,7 @@
             return
           }
           if(printMerge.value===null ||printMerge.value===''){
-            ElMessage.warning('璇峰~鍏ラ渶瑕佸悎骞剁殑灞�')
+            ElMessage.warning(t('rework.msg1'))
             return
           }
 
diff --git a/north-glass-erp/northglass-erp/src/views/pp/replenish/SelectReplenish.vue b/north-glass-erp/northglass-erp/src/views/pp/replenish/SelectReplenish.vue
index 20a661f..a3b2d5b 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/replenish/SelectReplenish.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/replenish/SelectReplenish.vue
@@ -28,11 +28,9 @@
       break
     }
     case 'delete':{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
       break
     }
     case  'setType':{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍙嶅鐘舵��')
       break
     }
   }
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 b45659b..db27df8 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'),
   },
 ]
 
@@ -305,14 +305,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
@@ -609,7 +609,7 @@
           //灞傚彿
           let technologyStr = resultProcessId[2];
           if (last != titleUploadData.value.thisProcess){
-            ElMessage.error('璇烽�夋嫨鏈�鍚庡伐搴忔姤宸ュ叆搴�')
+            ElMessage.error(t('reportingWorks.pleaseNumber16'))
             return
           }
           storageBtn.value = true
@@ -821,7 +821,7 @@
     },
     {
       field: 'responsiblePersonnel',
-      title: '璐d换淇℃伅',
+      title: t('rework.responsibilityInformation'),
       editRender: {name: 'input', attrs: {placeholder: ''}}
 
     },
@@ -1121,7 +1121,7 @@
       ElMessage.error(msg)
     }
   }).catch(err =>{
-    ElMessage.error('鎻愪氦澶辫触锛岃鍒锋柊鍚庨噸璇�')
+    ElMessage.error(t('basicData.msg.ServerConnectionError'))
   }).finally(()=>{
 
     gridOptions.toolbarConfig.buttons[0].disabled=false
@@ -1328,10 +1328,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 {
           // 鍏朵粬鎯呭喌淇濇寔涓嶅彉
diff --git a/north-glass-erp/northglass-erp/src/views/pp/reportingWorks/QualityInspectionReview.vue b/north-glass-erp/northglass-erp/src/views/pp/reportingWorks/QualityInspectionReview.vue
index 8ab3bcd..1a11d59 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/reportingWorks/QualityInspectionReview.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/reportingWorks/QualityInspectionReview.vue
@@ -22,7 +22,6 @@
       break
     }
     case 'delete':{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
       break
     }
     case  'setType':{
@@ -179,13 +178,13 @@
       produceList = deepClone(res.data.data)
       produceList.forEach(item => {
         if (item.damageDetails.qualityInsStatus === 2) {
-          item.damageDetails.qualityInsStatus = '宸茶川妫�';
+          item.damageDetails.qualityInsStatus = t('reportingWorks.qualified');
         }
         else if (item.damageDetails.qualityInsStatus === 1){
-          item.damageDetails.qualityInsStatus = '寰呰川妫�';
+          item.damageDetails.qualityInsStatus = t('reportingWorks.unqualified');
         }
         else if (item.damageDetails.qualityInsStatus === 0){
-          item.damageDetails.qualityInsStatus = '鏃犻渶璐ㄦ';
+          item.damageDetails.qualityInsStatus = t('reportingWorks.notQualified');
         }
       });
       xGrid.value.reloadData(produceList)
@@ -407,7 +406,7 @@
                      size="small">
             {{ $t('basicData.edit') }}
           </el-button>
-          <el-button v-if="row.damageDetails.qualityInsStatus==='宸茶川妫�'||row.damageDetails.qualityInsStatus==='鏃犻渶璐ㄦ'" disabled @click="getTableRow(row,'setType')" link type="primary" size="small">{{ $t('basicData.review') }}</el-button>
+          <el-button v-if="row.damageDetails.qualityInsStatus===t('reportingWorks.qualified')||row.damageDetails.qualityInsStatus===t('reportingWorks.notQualified')" disabled @click="getTableRow(row,'setType')" link type="primary" size="small">{{ $t('basicData.review') }}</el-button>
           <el-button v-else  @click="getTableRow(row,'setType')" link type="primary" size="small">{{ $t('basicData.review') }}</el-button>
         </template>
 
diff --git a/north-glass-erp/northglass-erp/src/views/pp/reportingWorks/SelectReportingWorks.vue b/north-glass-erp/northglass-erp/src/views/pp/reportingWorks/SelectReportingWorks.vue
index 18f4e9a..3e8a47e 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/reportingWorks/SelectReportingWorks.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/reportingWorks/SelectReportingWorks.vue
@@ -134,11 +134,11 @@
       // 浣跨敤map鏂规硶鏉ュ鐞嗘瘡涓璞�
       let modifiedCollection = produceList.map(item => {
         if (item.reviewedState === 1) {
-          return {...item, reviewedState: "宸插鏍�"};
+          return {...item, reviewedState: t('productStock.approved')};
         } else if (item.reviewedState === 0) {
-          return {...item, reviewedState: "鏈鏍�"};
+          return {...item, reviewedState: t('reportingWorks.unreviewed')};
         } else if (item.reviewedState === 2) {
-          return {...item, reviewedState: "瀹℃牳涓嶉�氳繃"};
+          return {...item, reviewedState: t('reportingWorks.notunreviewed')};
         } else {
           // 鍏朵粬鎯呭喌淇濇寔涓嶅彉
           return item;
@@ -172,13 +172,13 @@
       // 浣跨敤map鏂规硶鏉ュ鐞嗘瘡涓璞�
       let modifiedCollection = produceList.map(item => {
         if (item.reviewedState === 1) {
-          return { ...item, reviewedState: "宸插鏍�" };
+          return { ...item, reviewedState: t('productStock.approved') };
         }
         else if (item.reviewedState === 0) {
-          return { ...item, reviewedState: "鏈鏍�" };
+          return { ...item, reviewedState: t('reportingWorks.unreviewed') };
         }
         else if (item.reviewedState === 2){
-          return { ...item, reviewedState: "瀹℃牳涓嶉�氳繃" };
+          return { ...item, reviewedState: t('reportingWorks.notunreviewed') };
         }
         else {
           // 鍏朵粬鎯呭喌淇濇寔涓嶅彉
@@ -217,13 +217,13 @@
       // 浣跨敤map鏂规硶鏉ュ鐞嗘瘡涓璞�
       let modifiedCollection = produceList.map(item => {
         if (item.reviewedState === 1) {
-          return { ...item, reviewedState: "宸插鏍�" };
+          return { ...item, reviewedState: t('productStock.approved') };
         }
         else if (item.reviewedState === 0) {
-          return { ...item, reviewedState: "鏈鏍�" };
+          return { ...item, reviewedState: t('reportingWorks.unreviewed') };
         }
         else if (item.reviewedState === 2){
-          return { ...item, reviewedState: "瀹℃牳涓嶉�氳繃" };
+          return { ...item, reviewedState: t('reportingWorks.notunreviewed') };
         }
         else {
           // 鍏朵粬鎯呭喌淇濇寔涓嶅彉
@@ -283,13 +283,13 @@
       // 浣跨敤map鏂规硶鏉ュ鐞嗘瘡涓璞�
       let modifiedCollection = produceList.map(item => {
         if (item.reviewedState === 1) {
-          return { ...item, reviewedState: "宸插鏍�" };
+          return { ...item, reviewedState: t('productStock.approved') };
         }
         else if (item.reviewedState === 0) {
-          return { ...item, reviewedState: "鏈鏍�" };
+          return { ...item, reviewedState: t('reportingWorks.unreviewed') };
         }
         else if (item.reviewedState === 2){
-          return { ...item, reviewedState: "瀹℃牳涓嶉�氳繃" };
+          return { ...item, reviewedState: t('reportingWorks.notunreviewed') };
         }
         else {
           // 鍏朵粬鎯呭喌淇濇寔涓嶅彉
diff --git a/north-glass-erp/northglass-erp/src/views/pp/rework/PrintReworkFlowCard.vue b/north-glass-erp/northglass-erp/src/views/pp/rework/PrintReworkFlowCard.vue
index 6addaf2..6c65d39 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/rework/PrintReworkFlowCard.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/rework/PrintReworkFlowCard.vue
@@ -525,7 +525,7 @@
             return
           }
           if(printMerge.value===null ||printMerge.value===''){
-            ElMessage.warning('璇峰~鍏ラ渶瑕佸悎骞剁殑灞�')
+            ElMessage.warning(t('rework.msg1'))
             return
           }
 
diff --git a/north-glass-erp/northglass-erp/src/views/pp/rework/SelectRework.vue b/north-glass-erp/northglass-erp/src/views/pp/rework/SelectRework.vue
index b0c1fba..7a76dfc 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/rework/SelectRework.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/rework/SelectRework.vue
@@ -39,11 +39,9 @@
       break
     }
     case 'delete': {
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
       break
     }
     case  'setType': {
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鎺掔増鐘舵��')
       break
     }
   }
diff --git a/north-glass-erp/northglass-erp/src/views/sd/bom/BOM.vue b/north-glass-erp/northglass-erp/src/views/sd/bom/BOM.vue
index d120a12..7571dfe 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/bom/BOM.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/bom/BOM.vue
@@ -20,9 +20,9 @@
   <div id="main-div">
     <div id="div-title">
       <el-breadcrumb :separator-icon="ArrowRight">
-        <el-breadcrumb-item @click="changeRouter(1)" :class="indexFlag===1?'indexTag':''" :to="{ path: '/main/bom/orderBOM' }">璁㈠崟BOM</el-breadcrumb-item>
-        <el-breadcrumb-item @click="changeRouter(2)" :class="indexFlag===2?'indexTag':''" :to="{ path: '/main/bom/productBOM' }">浜у搧BOM</el-breadcrumb-item>
-        <el-breadcrumb-item @click="changeRouter(3)" :class="indexFlag===3?'indexTag':''" :to="{ path: '/main/bom/materialBOM' }">鐗╂枡BOM</el-breadcrumb-item>
+        <el-breadcrumb-item @click="changeRouter(1)" :class="indexFlag===1?'indexTag':''" :to="{ path: '/main/bom/orderBOM' }">{{ $t('bom.orderBOM') }}</el-breadcrumb-item>
+        <el-breadcrumb-item @click="changeRouter(2)" :class="indexFlag===2?'indexTag':''" :to="{ path: '/main/bom/productBOM' }">{{ $t('bom.productBOM') }}</el-breadcrumb-item>
+        <el-breadcrumb-item @click="changeRouter(3)" :class="indexFlag===3?'indexTag':''" :to="{ path: '/main/bom/materialBOM' }">{{ $t('bom.materialBOM') }}</el-breadcrumb-item>
         <el-breadcrumb-item v-show="false" :to="{ path: '/main/order/orderReport' }"></el-breadcrumb-item>
       </el-breadcrumb>
     </div>
diff --git a/north-glass-erp/northglass-erp/src/views/sd/bom/MaterialBOM.vue b/north-glass-erp/northglass-erp/src/views/sd/bom/MaterialBOM.vue
index 96585bd..1b1b879 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/bom/MaterialBOM.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/bom/MaterialBOM.vue
@@ -133,9 +133,9 @@
   {title: t('basicData.operate'), width: '110', slots: { default: 'button_slot' },fixed:'left'},
   { type: 'seq',fixed:'left', title: t('basicData.Number'), width: '80' },
   {field: 'id', width: '150',title: t('ingredients.materialCode'), sortable: true,showOverflow:'ellipsis' ,filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod:filterChanged},
-  {field: 'bomType',title: '绫诲瀷', showOverflow:'ellipsis' },
-  {field: 'consume',title: '娑堣�楅噺',showOverflow:'ellipsis' },
-  {field: 'price',title: '浣跨敤浠锋牸',showOverflow:'ellipsis' }
+  {field: 'bomType',title: t('bom.bomType'), showOverflow:'ellipsis' },
+  {field: 'consume',title: t('bom.consume'),showOverflow:'ellipsis' },
+  {field: 'price',title: t('bom.price'),showOverflow:'ellipsis' }
 ]
 const bomTitle = [
 
@@ -211,13 +211,13 @@
         materialStore.value[i].consume= res.data.data[i].consume
         switch (res.data.data[i].bomType) {
           case '1':
-            materialStore.value[i].bomType = '闈㈢Н';
+            materialStore.value[i].bomType = t('order.area');
             break;
           case '2':
-            materialStore.value[i].bomType = '鍛ㄩ暱';
+            materialStore.value[i].bomType = t('order.perimeter');
             break;
           case "3":
-            materialStore.value[i].bomType = '鏁伴噺';
+            materialStore.value[i].bomType = t('order.quantity');
             break;
           default:
             materialStore.value[i].bomType = res.data.data[i].bomType; // 淇濈暀鍘熷��
@@ -443,26 +443,26 @@
         label-width="auto"
         class="demo-ruleForm"
     >
-      <el-form-item label="浣跨敤绫诲瀷" prop="type">
+      <el-form-item :label="t('bom.usageType')" prop="type">
         <el-select v-model="ruleForm.type" autocomplete="off">
-          <el-option label="闈㈢Н" :value="1" />
-          <el-option label="鍛ㄩ暱" :value="2" />
-          <el-option label="鏁伴噺" :value="3" />
+          <el-option :label="t('order.area')" :value="1" />
+          <el-option :label="t('order.perimeter')" :value="2" />
+          <el-option :label="t('order.quantity')" :value="3" />
         </el-select>
       </el-form-item>
 
-      <el-form-item label="娑堣�楅噺" prop="consume">
+      <el-form-item :label="t('bom.consume')" prop="consume">
         <el-input v-model="ruleForm.consume" autocomplete="off" />
       </el-form-item>
 
-      <el-form-item label="浠锋牸" prop="price">
+      <el-form-item :label="t('bom.price1')" prop="price">
         <el-input v-model="ruleForm.price" autocomplete="off" />
       </el-form-item>
 
       <el-form-item>
-        <el-button style="margin-left: 235px" @click="resetForm(ruleFormRef)">閲嶇疆</el-button>
+        <el-button style="margin-left: 235px" @click="resetForm(ruleFormRef)">{{ $t('product.msg.reset') }}</el-button>
         <el-button style="float: right"  type="primary" @click="submitForm(ruleFormRef)">
-          鎻愪氦
+          {{ $t('basicData.save') }}
         </el-button>
 
       </el-form-item>
diff --git a/north-glass-erp/northglass-erp/src/views/sd/bom/OrderBOM.vue b/north-glass-erp/northglass-erp/src/views/sd/bom/OrderBOM.vue
index 672c32a..dde3d60 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/bom/OrderBOM.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/bom/OrderBOM.vue
@@ -129,7 +129,7 @@
     {field: 'quantity',width:120,  title: t('order.quantity'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
    // {field: 'goodsQuantity',width:120,  title: t('searchOrder.inventoryNum'), sortable: true},
     {field: 'area',width:120,  title: t('order.computeGrossArea'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'bomPrice',width:120,  title: 'BOM鎴愭湰',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
+    {field: 'bomPrice',width:120,  title: t('bom.bomPrice'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
     {field: 'money',width:120,  title: t('order.money'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
     {field: 'createTime',width:120,filters:[{ data: '' }],slots: { filter: 'num1_filter' },   title: t('basicData.reportData'), sortable: true},
     {field: 'packType',width:120,  title: t('order.packType'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
diff --git a/north-glass-erp/northglass-erp/src/views/sd/bom/ProductBomAdd.vue b/north-glass-erp/northglass-erp/src/views/sd/bom/ProductBomAdd.vue
index b62f0be..1d74ce3 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/bom/ProductBomAdd.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/bom/ProductBomAdd.vue
@@ -91,14 +91,14 @@
   },
   columns:[
     {title: '', width: '110', slots: { default: 'button_slot' },fixed:'left'},
-    {field:'id',title: '鐗╂枡缂栧彿', },
-    {field: 'name', title: '鐗╂枡鍚嶇О'},
-    {field: 'thickness', title: '鍘氬害'},
-    {field: 'width', title: '瀹�'},
-    {field: 'height', title: '楂�'},
-    {field:'consume',title: '娑堣�楅噺' },
-    {field:'unit',title: '鍗曚綅' },
-    {field:'price',title: '浠锋牸' }
+    {field:'id',title: t('ingredients.materialCode') },
+    {field: 'name', title: t('ingredientsStock.materialName')},
+    {field: 'thickness', title: t('product.msg.allThickness')},
+    {field: 'width', title: t('order.width')},
+    {field: 'height', title: t('order.height')},
+    {field:'consume',title: t('bom.consume') },
+    {field:'unit',title: t('ingredients.unit') },
+    {field:'price',title: t('bom.price1') }
   ],//琛ㄥご鍙傛暟
   data:[
 
@@ -114,8 +114,8 @@
   {title: t('basicData.add'), width: '110', slots: { default: 'button_slot' },fixed:'left'},
   {field: 'tabId', width: '150',title: 'BOMId', sortable: true,showOverflow:'ellipsis' ,filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod:filterChanged},
   {field: 'id', width: '150',title: t('ingredients.materialCode'), sortable: true,showOverflow:'ellipsis' ,filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod:filterChanged},
-  {field: 'consume',title: '娑堣�楅噺',showOverflow:'ellipsis' },
-  {field: 'price',title: '浣跨敤浠锋牸',showOverflow:'ellipsis' }
+  {field: 'consume',title: t('bom.consume'),showOverflow:'ellipsis' },
+  {field: 'price',title: t('bom.price'),showOverflow:'ellipsis' }
 ]
 const bomTitle = [
 
@@ -207,13 +207,13 @@
         materialStore.value[i].tabId= res.data.data[i].tabId
         switch (res.data.data[i].bomType) {
           case '1':
-            materialStore.value[i].bomType = '闈㈢Н';
+            materialStore.value[i].bomType = t('order.area');
             break;
           case '2':
-            materialStore.value[i].bomType = '鍛ㄩ暱';
+            materialStore.value[i].bomType = t('order.perimeter');
             break;
           case "3":
-            materialStore.value[i].bomType = '鏁伴噺';
+            materialStore.value[i].bomType = t('order.quantity');
             break;
           default:
             materialStore.value[i].bomType = res.data.data[i].bomType; // 淇濈暀鍘熷��
@@ -239,14 +239,14 @@
 //鎷嗗垎姣忎釜浜у搧
 const productList = computed(() => {
   const raw = (props.productName ?? '').toString().trim()
-  if (!raw) return ['鍏跺畠']
+  if (!raw) return [t('bom.other')]
 
   const parts = raw
       .split(/[+*]/)
       .map(s => s.trim())
       .filter(Boolean)
 
-  parts.push('鍏跺畠')
+  parts.push(t('bom.other'))
 
   return parts
 })
@@ -267,7 +267,7 @@
   if (type !== 'add') return
   const key = activeProductIndex.value
   if (key=="" && key==null) {
-    ElMessage.warning('璇峰厛閫夋嫨涓�涓骇鍝佹爣绛�')
+    ElMessage.warning(t('bom.msg.msg1'))
     return
   }
   const plainRow = JSON.parse(JSON.stringify(row))
diff --git a/north-glass-erp/northglass-erp/src/views/sd/delivery/CreateDelivery.vue b/north-glass-erp/northglass-erp/src/views/sd/delivery/CreateDelivery.vue
index fd3cb28..f92673d 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/delivery/CreateDelivery.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/delivery/CreateDelivery.vue
@@ -326,7 +326,7 @@
     {type: 'seq', title: t('basicData.Number'), width: 80 ,fixed:"left"},
     {field: 'orderId',width:120,  title: t('order.orderId'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged},
     {field: 'orderNumber',width:120,  title: t('order.OrderNum'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged},
-    {field: 'finishedGoodsInventory.boxNo',width:120,  title: t('绠卞彿'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged},
+    {field: 'finishedGoodsInventory.boxNo',width:120,  title: t('productStock.boxNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged},
     {field: 'productName',width:120,  title: t('order.product'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged},
     {field: 'width',width:120,  title: t('order.width'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged},
     {field: 'height',width:120,  title: t('order.height'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged},
diff --git a/north-glass-erp/northglass-erp/src/views/sd/delivery/SelectDelivery.vue b/north-glass-erp/northglass-erp/src/views/sd/delivery/SelectDelivery.vue
index 50d025f..f813054 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/delivery/SelectDelivery.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/delivery/SelectDelivery.vue
@@ -463,10 +463,10 @@
         [
           { code: 'sheet1', name: t('basicData.print'), prefixIcon: 'vxe-icon-file-txt', visible: true},
           { code: 'sheet2', name: t('basicData.print')+ t('delivery.noMoney'), prefixIcon: 'vxe-icon-file-txt', visible: true},
-          { code: 'sheet3', name: t('娲涢槼鎵撳嵃鏃犲昂瀵�'), prefixIcon: 'vxe-icon-file-txt', visible: false},
-          { code: 'sheet4', name: t('娲涢槼鎵撳嵃鏃犲昂瀵�')+ t('delivery.noMoney'), prefixIcon: 'vxe-icon-file-txt', visible: false},
-          { code: 'sheet5', name: t('娲涢槼鎵撳嵃鏈夊昂瀵�'), prefixIcon: 'vxe-icon-file-txt', visible: false},
-          { code: 'sheet6', name: t('娲涢槼鎵撳嵃鏈夊昂瀵�')+ t('delivery.noMoney'), prefixIcon: 'vxe-icon-file-txt', visible: false},
+          { code: 'sheet3', name: t('delivery.print1'), prefixIcon: 'vxe-icon-file-txt', visible: false},
+          { code: 'sheet4', name: t('delivery.print1')+ t('delivery.noMoney'), prefixIcon: 'vxe-icon-file-txt', visible: false},
+          { code: 'sheet5', name: t('delivery.print2'), prefixIcon: 'vxe-icon-file-txt', visible: false},
+          { code: 'sheet6', name: t('delivery.print2')+ t('delivery.noMoney'), prefixIcon: 'vxe-icon-file-txt', visible: false},
         ]
       ]
     }
diff --git a/north-glass-erp/northglass-erp/src/views/sd/delivery/SelectOrderList.vue b/north-glass-erp/northglass-erp/src/views/sd/delivery/SelectOrderList.vue
index fce9d0b..f4356c9 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/delivery/SelectOrderList.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/delivery/SelectOrderList.vue
@@ -27,7 +27,6 @@
       break
     }
     case 'delete':{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
       break
     }
   }
diff --git a/north-glass-erp/northglass-erp/src/views/sd/glassPrice/ProductList.vue b/north-glass-erp/northglass-erp/src/views/sd/glassPrice/ProductList.vue
index 970ca16..17c6346 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/glassPrice/ProductList.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/glassPrice/ProductList.vue
@@ -241,7 +241,7 @@
     {type: 'seq',fixed:"left", title: t('basicData.Number'), width: 80 },
     {field: 'id', title: t('basicData.number'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
     {field: 'productName', title: t('product.productName'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: false},
-    {field: 'productAbbreviation', title: '浜у搧绠�绉�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: false},
+    {field: 'productAbbreviation', title: t('product.msg.productAbbreviation'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: false},
     {field: 'basicGlassType.typeName', title: t('product.typeName'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: false},
     {field: 'query', title: t('product.query'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: false},
     {field: 'remarks', title: t('basicData.remarks'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: false},
diff --git a/north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue b/north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue
index 2d305a0..e4ded9a 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue
@@ -1689,7 +1689,7 @@
   row.fileName = name
   row.fileData = fileData
   row.shape=2
-  ElMessage.success("淇濆瓨鎴愬姛")
+  ElMessage.success(t('basicData.msg.saveSuccess'))
   alienEditorVisible.value=false
 
 }
diff --git a/north-glass-erp/northglass-erp/src/views/sd/product/CreateProduct.vue b/north-glass-erp/northglass-erp/src/views/sd/product/CreateProduct.vue
index 3772269..31fbd81 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/product/CreateProduct.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/product/CreateProduct.vue
@@ -157,7 +157,7 @@
           productTotal.value.creator !== userInfo.user.userName
           & company.notChangeProduct
       ){
-    ElMessage.warning('鍒涘缓浜烘槸锛�'+productTotal.value.creator+'    鏃犳硶鎿嶄綔锛�')
+    ElMessage.warning(t('product.msg.msg1')+productTotal.value.creator+t('product.msg.msg2'))
     return;
   }
 
@@ -196,7 +196,7 @@
 //瀹℃牳浜у搧鐘舵��
 const updateProductState =  (state) => {
   if(productTotal.value.id!==null && productTotal.value.creator!==userInfo.user.userName && company.notChangeProduct){
-    ElMessage.warning('鍒涘缓浜烘槸锛�'+productTotal.value.creator+'    鏃犳硶鎿嶄綔锛�')
+    ElMessage.warning(t('product.msg.msg1')+productTotal.value.creator+t('product.msg.msg2'))
     return;
   }
   request.post(`/product/updateProductStateById/${productTotal.value.id}/${state}/${userInfo.user.userName}`).then((res) =>{
diff --git a/north-glass-erp/src/main/java/com/example/erp/dto/mm/MaterialLogDTO.java b/north-glass-erp/src/main/java/com/example/erp/dto/mm/MaterialLogDTO.java
index ca1d906..2b62c85 100644
--- a/north-glass-erp/src/main/java/com/example/erp/dto/mm/MaterialLogDTO.java
+++ b/north-glass-erp/src/main/java/com/example/erp/dto/mm/MaterialLogDTO.java
@@ -59,6 +59,8 @@
     private String batch;
     @ExcelProperty("閿�鍞崟鍙�")
     private String orderId;
+    @ExcelProperty("鐢熶骇鏃ユ湡")
+    private LocalDate dateOfManufacture;
 
 
 
diff --git a/north-glass-erp/src/main/java/com/example/erp/entity/mm/MaterialLog.java b/north-glass-erp/src/main/java/com/example/erp/entity/mm/MaterialLog.java
index 75063e7..181a851 100644
--- a/north-glass-erp/src/main/java/com/example/erp/entity/mm/MaterialLog.java
+++ b/north-glass-erp/src/main/java/com/example/erp/entity/mm/MaterialLog.java
@@ -55,5 +55,7 @@
 
     private MaterialOutbound materialOutbound;
 
+    private MaterialOutboundDetail materialOutboundDetail;
+
 
 }
diff --git a/north-glass-erp/src/main/resources/mapper/mm/MaterialInventory.xml b/north-glass-erp/src/main/resources/mapper/mm/MaterialInventory.xml
index 2c7206a..65a1c44 100644
--- a/north-glass-erp/src/main/resources/mapper/mm/MaterialInventory.xml
+++ b/north-glass-erp/src/main/resources/mapper/mm/MaterialInventory.xml
@@ -59,6 +59,8 @@
         <result column="order_id" property="materialOutbound.orderId"/>
         <result column="project" property="materialOutbound.project"/>
         <result column="batch" property="materialOutbound.batch"/>
+
+        <result column="date_of_manufacture" property="materialOutboundDetail.dateOfManufacture"/>
     </resultMap>
 
 
@@ -1012,6 +1014,7 @@
     <select id="getMaterialLogReport" resultMap="selectMaterialOutboundLog">
         select *
         from mm.material_log ml left join mm.material_outbound mo on mo.material_outbound_id=ml.operation_order_number
+        left join mm.material_outbound_detail md on md.material_outbound_id=ml.operation_order_number and md.material_outbound_number=ml.operation_number
         <where>
             date(ml.operate_time)>=#{startDate} and date(ml.operate_time) &lt;= #{endDate} and ml.operate_type=#{type}
             <if test="materialLog.operateType != null and materialLog.operateType != ''">
@@ -1085,6 +1088,7 @@
         select CEILING(count(ml.id)/#{pageSize}) as 'pageTotal',
         count(ml.id) as 'total'
         from mm.material_log ml left join mm.material_outbound mo on mo.material_outbound_id=ml.operation_order_number
+        left join mm.material_outbound_detail md on md.material_outbound_id=ml.operation_order_number and md.material_outbound_number=ml.operation_number
         <where>
             date(ml.operate_time)>=#{startDate} and date(ml.operate_time) &lt;= #{endDate} and ml.operate_type=#{type}
             <if test="materialLog.operateType != null and materialLog.operateType != ''">
@@ -1155,6 +1159,7 @@
     <select id="exportMaterialLogReport" >
         select *
         from mm.material_log ml left join mm.material_outbound mo on mo.material_outbound_id=ml.operation_order_number
+                                left join mm.material_outbound_detail md on md.material_outbound_id=ml.operation_order_number and md.material_outbound_number=ml.operation_number
         where  date(ml.operate_time)>=#{dates[0]} and date(ml.operate_time) &lt;= #{dates[1]} and ml.operate_type=#{type}
 
     </select>

--
Gitblit v1.8.0