From f0957ff7692bbf4f721121ed695df01f4c6d640d Mon Sep 17 00:00:00 2001
From: chenlu <1320612696@qq.com>
Date: 星期四, 25 四月 2024 09:37:11 +0800
Subject: [PATCH] Merge branch 'master' of https://gitee.com/a1536384743/erp_-override

---
 north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue |   77 +++++++++++++++++++++++++-------------
 1 files changed, 51 insertions(+), 26 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 119553f..2a5597d 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
@@ -24,7 +24,9 @@
 const route = useRoute()
 const xGrid = ref()
 let cellArea = ref()
-const shapeList = ref(['鏅舰','寮傚舰'])
+const shapeList = ref([
+    {name:'鏅舰',value:1}, {name:'寮傚舰',value: 2}
+])
 
 // 瀹氫箟琛ㄥご涓婁紶鏁版嵁
 const titleUploadData = ref({
@@ -73,6 +75,8 @@
 
 const gridOptions = reactive({
   loading:false,
+  showHeaderOverflow: false,
+  showFooterOverflow: false,
   border:  "full",//琛ㄦ牸鍔犺竟妗�
   keepSource: true,//淇濇寔婧愭暟鎹�
   align: 'center',//鏂囧瓧灞呬腑
@@ -84,8 +88,8 @@
   printConfig: {},
   importConfig: {},
   exportConfig: {},
-  scrollY:{ enabled: true,gt:15 },//寮�鍚櫄鎷熸粴鍔�
-  scrollX:{ enabled: true,gt:30 },//寮�鍚櫄鎷熸粴鍔�
+  scrollY:{ enabled: true,gt:13 },//寮�鍚櫄鎷熸粴鍔�
+  //scrollX:{ enabled: true,gt:15 },//寮�鍚櫄鎷熸粴鍔�
   showOverflow:true,
   menuConfig: {
     body: {
@@ -206,7 +210,7 @@
           }
         }
       }
-    ]
+    ],
   },
   toolbarConfig: {
     buttons: [
@@ -445,7 +449,6 @@
   if (typeof str === 'undefined' || str === null || str === '' || str === '\n' || str === '\r'){
     return
   }
-  gridOptions.loading=true
   request.post(`/order/getOrderById/${str}`).then((res) => {
     if(res.code==200){
       titleUploadData.value = res.data.order
@@ -503,7 +506,6 @@
       otherMoney.value =res.data.orderOtherMoneyList
           //鍔犺浇鍓〃鏁版嵁
       xGrid.value.reloadData(orderDetails)
-      gridOptions.loading=false
     }else{
       ElMessage.error(res.msg)
     }
@@ -531,9 +533,27 @@
     otherMoney.value = titleSelectJson.value.orderOtherMoney[0]
     //let columns = []
     otherMoney.value.forEach(item => {
-      let column = {field: `otherColumns.${item.column}`,width:50,  title: item.alias,editRender: { name: 'input'}}
+      let column = {
+        field: `otherColumns.${item.column}`,
+        width:50,  title: item.alias,
+        editRender: {
+          name: 'input',
+        }
+      }
+      gridOptions.editRules[`otherColumns.${item.column}`] = [
+        {
+          validator ({ cellValue }) {
+            const regex = /^(0|[1-9][0-9]{0,4}([.][0-9]{1,2})?)$/
+            if (cellValue && !regex.test(cellValue)) {
+              return new Error(t('basicData.msg.range99999Dec2'))
+            }
+          }
+        }
+      ]
+
       //columns.push(column)
       gridOptions.columns.push(column)
+
     })
 
     //杩涘叆椤甸潰涓嬫媺妗嗚缃粯璁ゅ��
@@ -633,9 +653,9 @@
   list.forEach((item)=>{
     countMoney += parseFloat(item.grossAmount)
   })
-  otherMoney.value.forEach(item => {
-    countMoney+=item.quantity*item.price
-  })
+  // otherMoney.value.forEach(item => {
+  //   countMoney+=item.quantity*item.price
+  // })
   return parseFloat((countMoney).toFixed(2))
 }
 //瀵煎叆鍔熻兘
@@ -699,21 +719,22 @@
    }else if(column.property === 'computeArea'){
      row.computeGrossArea=parseFloat((row.computeArea*row.quantity).toFixed(2))
      row.grossAmount=parseFloat((row.price * row.computeGrossArea).toFixed(2))
-   }else if(column.property.indexOf('otherColumns.M')>-1){
-     let quantity = 0
-     xGrid.value.getTableData().fullData.forEach(item => {
-       let orderQuantity = isNaN(item.quantity) ? 0 : item.quantity
-       let value = isNaN((getNestedProperty(item,column.property)*1)) ? 0 : (getNestedProperty(item,column.property)*1)
-       quantity += orderQuantity*value
-     })
-     if(!isNaN(quantity)){
-       otherMoney.value.forEach(item => {
-         if(item.column===column.property.split('.')[1]){
-           item.quantity = quantity
-         }
-       })
-     }
    }
+   // else if(column.property.indexOf('otherColumns.M')>-1){
+   //   let quantity = 0
+   //   xGrid.value.getTableData().fullData.forEach(item => {
+   //     let orderQuantity = isNaN(item.quantity) ? 0 : item.quantity
+   //     let value = isNaN((getNestedProperty(item,column.property)*1)) ? 0 : (getNestedProperty(item,column.property)*1)
+   //     quantity += orderQuantity*value
+   //   })
+   //   if(!isNaN(quantity)){
+   //     otherMoney.value.forEach(item => {
+   //       if(item.column===column.property.split('.')[1]){
+   //         item.quantity = quantity
+   //       }
+   //     })
+   //   }
+   // }
   titleUploadData.value.money=countMoney(xGrid.value.getTableData().fullData).toString()
 
 
@@ -907,7 +928,7 @@
         </template>
         <template #shape_edit="{ row }">
           <vxe-select v-model="row.shape" transfer>
-            <vxe-option v-for="item in shapeList" :key="item" :value="item" :label="item" />
+            <vxe-option v-for="item in shapeList" :key="item" :value="item.value" :label="item.name" />
           </vxe-select>
         </template>
 
@@ -921,7 +942,7 @@
           :autosize="{ minRows: 2, maxRows: 20 }"
       />
     </el-dialog>
-    <el-dialog v-model="productVisible"  style="width: 80%;height:75% ">
+    <el-dialog id="product" v-model="productVisible"  style="width: 80%;height:75% ">
       <select-product :rowIndex="rowIndex" @getProductRow="getProductRow" style="width: 100%;height: 100%" />
     </el-dialog>
 <!--璇樊缁撶畻-->
@@ -982,5 +1003,9 @@
     -ms-user-select: none;
     user-select: none;
   }
+  :deep(#product .el-dialog__body){
+    height: 90%;
+    width: 100%;
+  }
 
 </style>
\ No newline at end of file

--
Gitblit v1.8.0