From 2bdd525d521205f0106c6008f4e8e14d7b8051f6 Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期一, 01 十二月 2025 09:17:50 +0800
Subject: [PATCH] 订单工艺属性提交

---
 north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue |  116 +++++++++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 99 insertions(+), 17 deletions(-)

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 c003253..0ddf09a 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
@@ -21,6 +21,7 @@
 import {multiply,multiplyAuto,divideAuto} from '@/utils/decimal'
 import OrderNumberReportTransfer from "@/components/sd/order/OrderNumberReportTransfer.vue"
 import UploadPicture from "@/components/sd/order/UploadPicture.vue"
+import ProcessAttribute from "@/components/sd/order/ProcessAttribute.vue"
 const { t } = useI18n()
 
 let dialogTableVisible = ref(false)
@@ -32,6 +33,7 @@
 let uploadPictureVisible = ref(false)
 let alienEditorVisible = ref(false)
 let fileUploadVisible = ref(false)
+let processAttributeVisible = ref(false)
 const transferData = ref({
   oldOrderId:null,
   newOrderNumber:null,
@@ -50,7 +52,7 @@
 const shapeList = ref([
     {label:t('order.universalShape'),value:'1'}, {label:t('order.alien'),value:'2'}
 ])
-const edgingTypeList = ref([])
+
 const newOrderId = ref([])
 
 const orderTypeState = ref(0)
@@ -188,8 +190,14 @@
       filters:[{ data: '' }],
       slots: { filter: 'num1_filter',edit:'shape_edit',default:'default_shape' }, sortable: true,filterMethod:filterChanged},
     {field: 'bendRadius',width:160,  title: t('order.bendRadius'),editRender: { name: 'input'},filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged},
-    {field: 'edgingType',width:160,  title: t('order.edgingType'),editRender: { name: 'input'},filters:[{ data: '' }],
-      slots: { filter: 'num1_filter',edit:'edgingType_edit' }, sortable: true,filterMethod:filterChanged},
+    {field: 'edgingType',width:160,  title: t('order.edgingType'),filters:[{ data: '' }],
+      slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged},
+    {
+      field: 'processAttribute',
+      width: 160,
+      title: t('宸ヨ壓灞炴��'),
+      filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged
+    },
     {field: 'processingNote',width:200,  title: t('order.processingNote'),editRender: { name: 'input'},filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged},
     {field: 'fileName',width:200,  title: t('order.drawingNo'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged},
     {field: 'remarks',width:140,  title: t('basicData.remarks'),editRender: { name: 'input'},filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true,filterMethod:filterChanged},
@@ -581,6 +589,24 @@
                   item["productName"] = val1
                 }
               })
+            }else if(result.cell=='processAttribute'){
+              const val = dataList[result.start][result.cell]
+              const val1 = dataList[result.start]["edgingType"]
+              dataList.forEach((item,index) =>{
+                if(index>=result.start && index<=result.end){
+                  item[result.cell] = val
+                  item["edgingType"] = val1
+                }
+              })
+            }else if(result.cell=='edgingType'){
+              const val = dataList[result.start][result.cell]
+              const val1 = dataList[result.start]["processAttribute"]
+              dataList.forEach((item,index) =>{
+                if(index>=result.start && index<=result.end){
+                  item[result.cell] = val
+                  item["processAttribute"] = val1
+                }
+              })
             }else{
 
               const val = getNestedProperty(dataList[result.start],result.cell)
@@ -619,6 +645,24 @@
                   item["productName"] = val1
                 }
               })
+            }else if(result.cell=='processAttribute'){
+              const val = dataList[result.start][result.cell]
+              const val1 = dataList[result.start]["edgingType"]
+              dataList.forEach((item,index) =>{
+                if(index>=result.start ){
+                  item[result.cell] = val
+                  item["edgingType"] = val1
+                }
+              })
+            }else if(result.cell=='edgingType'){
+              const val = dataList[result.start][result.cell]
+              const val1 = dataList[result.start]["processAttribute"]
+              dataList.forEach((item,index) =>{
+                if(index>=result.start ){
+                  item[result.cell] = val
+                  item["processAttribute"] = val1
+                }
+              })
             }else{
               const val = getNestedProperty(dataList[result.start],result.cell)
               dataList.forEach((item,index) =>{
@@ -639,11 +683,28 @@
           let result = toolbarButtonClickEvent()
           if(result){
             const dataList = xGrid.value.getTableData().visibleData
-            dataList.forEach((item,index) =>{
-              if(index>=result.start && index<=result.end){
-                item[result.cell] = ''
-              }
-            })
+            if(result.cell=='processAttribute'){
+              dataList.forEach((item,index) =>{
+                if(index>=result.start && index<=result.end){
+                  item[result.cell] = ''
+                  item['edgingType'] = ''
+                }
+              })
+            }else if(result.cell=='edgingType'){
+              dataList.forEach((item,index) =>{
+                if(index>=result.start && index<=result.end){
+                  item[result.cell] = ''
+                  item['processAttribute'] = ''
+                }
+              })
+            }else{
+              dataList.forEach((item,index) =>{
+                if(index>=result.start && index<=result.end){
+                  item[result.cell] = ''
+                }
+              })
+            }
+
           }
           computedMoney(result.cell)
           gridOptions.menuConfig.body.options[0][5].disabled=false
@@ -841,9 +902,13 @@
   },
   cellDblclick (params) {//琛ㄦ牸鍐呭鍙屽嚮鎵撳紑浜у搧鐣岄潰
     const { row,column } = params
-    if(column.field==='productName' || column.field==='productId'){
+    if (column.field === 'processAttribute'||column.field === 'edgingType') {
+      rowIndex = row
+      processAttributeVisible.value = true
+    } else if (column.field === 'productName' || column.field === 'productId') {
+      // 淇濈暀鍘熶骇鍝侀�夋嫨閫昏緫
       productVisible.value = true
-      rowIndex=row
+      rowIndex = row
     }
 
   },
@@ -1092,10 +1157,7 @@
 
         })
       }
-      titleSelectJson.value.edgingType.forEach(item=>{
-        let type= {label:item.basicName,value:item.basicName}
-        edgingTypeList.value.push(type)
-      })
+
       //杩涘叆椤甸潰涓嬫媺妗嗚缃粯璁ゅ��
       titleUploadData.value.orderType = titleSelectJson.value.orderType[0].basicName
       titleUploadData.value.orderClassify = titleSelectJson.value.orderClassify[0].basicName
@@ -1733,6 +1795,15 @@
   });
 };
 
+
+
+
+const getEdgingProcess = (value,edgingType) => {
+  rowIndex.processAttribute=JSON.stringify(value)
+  rowIndex.edgingType=edgingType
+  processAttributeVisible.value = false
+}
+
 </script>
 
 <template>
@@ -1915,9 +1986,7 @@
         <template #shape_edit="{ row }">
           <vxe-select v-model="row.shape" transfer :options="shapeList"  placeholder=" "/>
         </template>
-        <template #edgingType_edit="{ row }">
-          <vxe-select v-model="row.edgingType" transfer :options="edgingTypeList"  placeholder=" "/>
-        </template>
+
 
 
       </vxe-grid>
@@ -2041,6 +2110,19 @@
     </el-dialog>
 
 
+    <el-dialog
+        v-model="processAttributeVisible"
+        :close-on-click-modal="false"
+        :close-on-press-escape="false"
+        destroy-on-close
+        style="width: 1114px;height:650px ">
+      <process-attribute :rowIndex="rowIndex"
+          :edging-type-list="titleSelectJson"
+          @getEdgingProcess="getEdgingProcess"
+      />
+    </el-dialog>
+
+
   </div>
 </template>
 

--
Gitblit v1.8.0