From 5e007b770cf0a20d194012dcdfa880df0db79dde Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期二, 04 六月 2024 15:10:56 +0800
Subject: [PATCH] Merge branch 'master' of http://bore.pub:10439/r/ERP_override

---
 north-glass-erp/northglass-erp/src/views/sd/order/CreateOrder.vue         |   41 +++++++++
 north-glass-erp/northglass-erp/src/components/sd/order/OrderSizeCheck.vue |  138 ++++++++++++++++++++++++++++++++++
 north-glass-erp/northglass-erp/src/components/sd/order/OrderProcess.vue   |    4 
 3 files changed, 179 insertions(+), 4 deletions(-)

diff --git a/north-glass-erp/northglass-erp/src/components/sd/order/OrderProcess.vue b/north-glass-erp/northglass-erp/src/components/sd/order/OrderProcess.vue
index 14e1c64..b83e218 100644
--- a/north-glass-erp/northglass-erp/src/components/sd/order/OrderProcess.vue
+++ b/north-glass-erp/northglass-erp/src/components/sd/order/OrderProcess.vue
@@ -54,8 +54,8 @@
   {field: 'technology_number', width: 90,title: '灏忕墖椤哄簭',showOverflow:"ellipsis"},
   {field: 'quantity', width: 90,title: '鏁伴噺'},
   {field: 'shippedQuantity',width: 120, title: '鍙戣揣鏁伴噺'},
-  {field: 'inventory',width: 120, title: '鍏ュ簱鏁伴噺'},
-  {field: 'inventoryArea',width: 120, title: '鍏ュ簱闈㈢Н'},
+  {field: 'inventory',width: 120, title: '搴撳瓨鏁伴噺'},
+  {field: 'inventoryArea',width: 120, title: '搴撳瓨闈㈢Н'},
   {field: 'broken_num',width: 90, title: '娆$牬鏁伴噺'},
 ]
 let column = [0,1,3,6,7,8,9]
diff --git a/north-glass-erp/northglass-erp/src/components/sd/order/OrderSizeCheck.vue b/north-glass-erp/northglass-erp/src/components/sd/order/OrderSizeCheck.vue
new file mode 100644
index 0000000..ca27479
--- /dev/null
+++ b/north-glass-erp/northglass-erp/src/components/sd/order/OrderSizeCheck.vue
@@ -0,0 +1,138 @@
+<script setup>
+import {defineEmits, onMounted, reactive, ref, watch} from "vue";
+import {changeFilterEvent, filterChanged} from "@/hook"
+import {useI18n} from "vue-i18n"
+import request from "@/utils/request"
+import {ElMessage} from "element-plus";
+const { t } = useI18n()
+const xGrid = ref()
+const gridOptions = reactive({
+  loading:false,
+  border:  "full",//琛ㄦ牸鍔犺竟妗�
+  keepSource: true,//淇濇寔婧愭暟鎹�
+  align: 'center',//鏂囧瓧灞呬腑
+  stripe:true,//鏂戦┈绾�
+  showOverflow:true,
+  id:'sizeCheck',
+  toolbarConfig: {
+    buttons: [
+      {'code': 'review', 'name': '瀹℃牳',status: 'primary'},
+    ]
+  },
+
+  rowConfig: {isCurrent: true, isHover: true,height: 30},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
+  virtualScroll: true, // 寮�鍚櫄鎷熸粴鍔ㄥ姛鑳�
+  scrollY:{ enabled: true,gt:13 },//寮�鍚櫄鎷熸粴鍔�
+  //scrollX:{ enabled: true,gt:15 },//寮�鍚櫄鎷熸粴鍔�
+
+  columnConfig: {
+    useKey: true
+  },
+  editConfig: {
+    trigger: 'dblclick',
+    mode: 'cell',
+    showStatus: true,
+    showIcon:false
+  },
+  mouseConfig:{selected: true},
+  keyboardConfig:{
+    isArrow: true,
+    isDel: true,
+    isEnter: true,
+    isTab: true,
+    isEdit: true,
+    isChecked: true,
+    enterToTab:true
+  },
+
+  customConfig: {
+    storage: true
+  },
+  columns:[
+    {field: 'width',  title: '瀹�',editRender: { name: 'input'}},
+    {field: 'height',  title:'楂�', editRender: { name: 'input'}},
+    {field: 'quantity', title: '鏁伴噺' ,editRender: { name: 'input'}, },
+  ],
+  editRules: {
+    width: [
+      { required: true, message: '蹇呭~,鍙傛暟涓嶄竴鑷�' }
+    ],
+    height: [
+      { required: true, message: '蹇呭~,鍙傛暟涓嶄竴鑷�' }
+    ],
+    quantity: [
+      { required: true, message: '蹇呭~,鍙傛暟涓嶄竴鑷�' }
+    ]
+  }
+})
+
+const gridEvents = {
+  async toolbarButtonClick({code}) {
+    const $grid = xGrid.value
+    if ($grid) {
+      switch (code) {
+        case 'review' :{
+          const errMap = await $grid.validate(true)
+          if (errMap) {
+            ElMessage.error(t('basicData.msg.checkoutLose'))
+            return
+          }
+          // const $table = props.OrderDetail
+          // $table.getTableData().fullData.forEach((row)=>{
+          //   if()row.computeGrossArea
+          // })
+
+
+          emit('getParent')
+          break
+        }
+      }
+    }
+  }
+}
+
+
+const emit = defineEmits(['getParent'])
+
+let props = defineProps({
+  OrderDetail:null
+})
+onMounted(()=>{
+  const length = props.OrderDetail.getTableData().fullData.length
+  const $grid = xGrid.value
+  let list = []
+  for (let i = 0; i < length; i++) {
+    list.push({})
+  }
+  xGrid.value.reloadData(list)
+
+})
+
+const editClosedEvent = ({ row, column,rowIndex}) => {
+  const $table = props.OrderDetail
+  let checkVal = row[column.property]*1
+  const oldVal = $table.getTableData().fullData[rowIndex][column.property]*1
+  if(checkVal!=oldVal){
+    row[column.property]=null
+  }
+}
+
+</script>
+
+<template>
+  <div style="width: 100%;height: 100%">
+    <vxe-grid
+        height="100%"
+        class="mytable-scrollbar"
+        ref="xGrid"
+        v-bind="gridOptions"
+        v-on="gridEvents"
+        @edit-closed="editClosedEvent"
+    >
+    </vxe-grid>
+  </div>
+</template>
+
+<style scoped>
+
+</style>
\ No newline at end of file
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 d500099..e90865b 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
@@ -8,6 +8,7 @@
 import  useUserInfoStore from '@/stores/userInfo'
 import SelectProduct from "@/views/sd/product/SelectProduct.vue"
 import OrderOtherMoney from "@/components/sd/order/OrderOtherMoney.vue"
+import OrderSizeCheck from "@/components/sd/order/OrderSizeCheck.vue"
 import {changeFilterEvent,filterChanged} from "@/hook"
 import {addListener,toolbarButtonClickEvent} from "@/hook/mouseMove"
 import downLoadFile from "@/hook/downLoadFile"
@@ -19,6 +20,7 @@
 let productVisible = ref(false)
 let errorAreaVisible = ref(false)
 let otherMoneyVisible = ref(false)
+let sizeCheckVisible = ref(false)
 const maxTableLen =ref(150)
 let errorArea = ref(0.4)
 const userStore = useUserInfoStore()
@@ -104,7 +106,8 @@
           { code: 'clearChecked', name: t('basicData.clearSelection'), prefixIcon: 'vxe-icon-indicator', visible: true, disabled: false },
           { code: 'computedMoney', name: t('basicData.calculateAmount'), prefixIcon: 'vxe-icon-chart-bar-x', visible: true, disabled: true },
           { code: 'errorArea', name: '璇樊缁撶畻闈㈢Н', prefixIcon: 'vxe-icon-chart-bar-x', visible: true, disabled: false },
-          { code: 'otherMoney', name: '鍏朵粬閲戦', prefixIcon: 'vxe-icon-chart-bar-x', visible: true, disabled: false }
+          { code: 'otherMoney', name: '鍏朵粬閲戦', prefixIcon: 'vxe-icon-chart-bar-x', visible: true, disabled: false },
+          { code: 'sizeCheck', name: '灏哄瀹℃牳', prefixIcon: 'vxe-icon-eye-fill', visible: true, disabled: true }
         ]
       ]
     }
@@ -434,6 +437,10 @@
           otherMoneyVisible.value=true
           break
         }
+        case 'sizeCheck' :{
+          sizeCheckVisible.value=true
+          break
+        }
       }
     }
   },
@@ -500,10 +507,12 @@
       if(res.data.order.processReview === 2){
         gridOptions.toolbarConfig.buttons[4].disabled = true
 
+
       }
-      //鍙栨秷瀹℃牳鎸夐挳绂佺敤
+      //宸ヨ壓瀹℃牳鍚庯紝璁㈠崟鏈鏍� 鍙栨秷瀹℃牳鎸夐挳绂佺敤鍜屽昂瀵稿鏍�
       if(res.data.order.processReview === 2 && res.data.order.orderReview === 0){
         gridOptions.toolbarConfig.buttons[2].disabled = false
+        gridOptions.menuConfig.body.options[0][8].disabled =false
       }
 
       //鎸夐挳瀹℃牳杩囧悗鍙樹负鍙嶅
@@ -512,6 +521,7 @@
         gridOptions.toolbarConfig.buttons[2].code='reviews'
         gridOptions.toolbarConfig.buttons[2].name=t('basicData.cancelReview')
         gridOptions.toolbarConfig.buttons[3].disabled = false
+
         const button = {'code': 'cancelOrder',
           status: 'primary',
           'name': (res.data.order.orderReview>0?t('basicData.cancel'):t('basicData.restore'))}
@@ -656,6 +666,13 @@
       ElMessage.error(res.msg)
     }
   })
+}
+
+const gaveOrderSizeCheck = () => {
+
+
+
+  reviewOrder(2)
 }
 
 const changeCustomer =  () => {
@@ -1074,6 +1091,21 @@
           style="width: 100%;height: 100%" />
     </el-dialog>
 
+<!--    灏哄瀹℃牳绐楀彛-->
+    <el-dialog
+        id="sizeCheck"
+        v-model="sizeCheckVisible"
+       :title="'灏哄鏍¢獙'"
+       destroy-on-close
+       :close-on-click-modal="false"
+       :close-on-press-escape="false"
+       style="width: 614px;height:445px "
+    >
+      <order-size-check
+          @getParent="gaveOrderSizeCheck"
+          :OrderDetail="xGrid"/>
+    </el-dialog>
+
   </div>
 </template>
 
@@ -1111,4 +1143,9 @@
     width: 100%;
   }
 
+  :deep(#sizeCheck .el-dialog__body){
+    height: 90%;
+    width: 100%;
+  }
+
 </style>
\ No newline at end of file

--
Gitblit v1.8.0