From 97c3f97a11524d8bacc6d36cf2ec4e3b93b5c277 Mon Sep 17 00:00:00 2001
From: NNowhZzU <1539353356@qq.com>
Date: 星期三, 27 十二月 2023 10:36:19 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 north-glass-erp/northglass-erp/src/views/mm/mainTrader/Trader.vue                                |    5 
 north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/MaterialOutbound.vue             |  244 ++
 north-glass-erp/northglass-erp/src/views/mm/mainProductStock/ProductStock.vue                    |    9 
 north-glass-erp/src/main/java/com/example/erp/service/sd/ProductService.java                     |    5 
 north-glass-erp/northglass-erp/src/components/basic/BasicTable.vue                               |   18 
 north-glass-erp/northglass-erp/src/views/sd/delivery/Delivery.vue                                |   14 
 north-glass-erp/northglass-erp/src/stores/sd/product/prduct.js                                   |   15 
 north-glass-erp/northglass-erp/src/views/mm/purchaseOrder/PurchaseOrder.vue                      |   22 
 north-glass-erp/northglass-erp/src/views/pp/processCard/ProcessCard.vue                          |   31 
 north-glass-erp/northglass-erp/src/views/pp/processCard/SplittingDetails.vue                     |    2 
 north-glass-erp/northglass-erp/src/views/sd/order/Order.vue                                      |   13 
 north-glass-erp/northglass-erp/src/views/mm/mainIngredient/Ingredients.vue                       |    3 
 north-glass-erp/northglass-erp/src/views/pp/BOM/OrderBOMDetails.vue                              |    1 
 north-glass-erp/northglass-erp/src/views/mm/mainTrader/CreateTrader.vue                          |    4 
 north-glass-erp/northglass-erp/src/components/basic/product/GlassType.vue                        |    2 
 north-glass-erp/northglass-erp/src/hook/index.js                                                 |   12 
 north-glass-erp/.idea/dataSources.local.xml                                                      |    2 
 north-glass-erp/northglass-erp/src/views/mm/purchaseOrder/Select.vue                             |  427 +--
 north-glass-erp/src/main/java/com/example/erp/mapper/sd/ProductMapper.java                       |    3 
 north-glass-erp/src/main/resources/application.yml                                               |    4 
 north-glass-erp/northglass-erp/src/views/sd/product/SelectProduct.vue                            |  240 +
 north-glass-erp/northglass-erp/src/views/pp/processCard/SelectProcessCard.vue                    |   18 
 north-glass-erp/target/classes/application.yml                                                   |    4 
 north-glass-erp/northglass-erp/src/stores/sd/product/productGlassType.js                         |    0 
 north-glass-erp/northglass-erp/src/router/index.js                                               |   19 
 north-glass-erp/northglass-erp/src/views/mm/mainProductStock/OrderAllocation.vue                 |  322 +-
 north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/OriginalMonthlySettlement.vue    |  312 ++
 north-glass-erp/northglass-erp/src/views/mm/mainIngredient/SelectIngredients.vue                 |  327 +-
 north-glass-erp/northglass-erp/src/views/sd/product/Product.vue                                  |   13 
 north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/SelectIngredientsStock.vue       |  471 +--
 north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/AccessoriesMonthlySettlement.vue |  324 ++
 north-glass-erp/northglass-erp/src/views/pp/processCard/ProductionScheduling.vue                 |  285 ++
 north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductReturn.vue           |  251 +
 north-glass-erp/northglass-erp/src/views/mm/mainIngredient/CreateIngredients.vue                 |  282 +-
 north-glass-erp/northglass-erp/src/views/sd/customer/CreateCustomer.vue                          |    1 
 north-glass-erp/src/main/resources/mapper/sd/Product.xml                                         |    1 
 north-glass-erp/northglass-erp/src/views/mm/mainTrader/SelectTrader.vue                          |  371 +-
 north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/IngredientsStock.vue             |    4 
 north-glass-erp/northglass-erp/src/views/sd/customer/Customer.vue                                |   12 
 north-glass-erp/src/main/java/com/example/erp/controller/sd/ProductController.java               |   11 
 north-glass-erp/.idea/workspace.xml                                                              |    4 
 north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedGoodsIssue.vue              |  338 ++
 north-glass-erp/northglass-erp/src/views/mm/mainProductStock/CreateProductStock.vue              |  397 ++-
 north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductRework.vue           |  330 +-
 north-glass-erp/northglass-erp/src/views/mm/mainProductStock/ProductStockList.vue                |  563 ++--
 north-glass-erp/northglass-erp/src/views/sd/returns/Returns.vue                                  |   15 
 /dev/null                                                                                        |  203 -
 north-glass-erp/northglass-erp/src/views/mm/stockReport/StockReport.vue                          |    6 
 north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/CreateOutBound.vue               |  225 ++
 north-glass-erp/northglass-erp/src/views/pp/workOrder/SelectWorkOrder.vue                        |   31 
 north-glass-erp/src/main/java/com/example/erp/common/interceptor/JwtInterceptor.java             |    4 
 north-glass-erp/target/classes/mapper/sd/Product.xml                                             |    1 
 north-glass-erp/northglass-erp/src/components/sd/product/GlassType.vue                           |    2 
 north-glass-erp/src/main/java/com/example/erp/common/Result.java                                 |    2 
 north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductOut.vue              |  457 ++-
 55 files changed, 4,114 insertions(+), 2,568 deletions(-)

diff --git a/north-glass-erp/.idea/dataSources.local.xml b/north-glass-erp/.idea/dataSources.local.xml
index 8f9f738..bf05ca9 100644
--- a/north-glass-erp/.idea/dataSources.local.xml
+++ b/north-glass-erp/.idea/dataSources.local.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project version="4">
-  <component name="dataSourceStorageLocal" created-in="IU-232.8660.185">
+  <component name="dataSourceStorageLocal" created-in="IU-232.9559.62">
     <data-source name="@localhost [2]" uuid="165c5447-d19a-4aaf-af5f-cee92ae696c2">
       <database-info product="MySQL" version="8.0.22" jdbc-version="4.2" driver-name="MySQL Connector/J" driver-version="mysql-connector-java-8.0.25 (Revision: 08be9e9b4cba6aa115f9b27b215887af40b159e0)" dbms="MYSQL" exact-version="8.0.22" exact-driver-version="8.0">
         <extra-name-characters>#@</extra-name-characters>
diff --git a/north-glass-erp/.idea/workspace.xml b/north-glass-erp/.idea/workspace.xml
index 28febcd..a442afe 100644
--- a/north-glass-erp/.idea/workspace.xml
+++ b/north-glass-erp/.idea/workspace.xml
@@ -104,7 +104,7 @@
       <command value="length" />
     </option>
   </component>
-  <component name="RunManager" selected="npm.dev">
+  <component name="RunManager" selected="Spring Boot.ErpApplication">
     <configuration default="true" type="ArquillianJUnit" factoryName="" nameIsGenerated="true">
       <option name="arquillianRunConfiguration">
         <value>
@@ -212,7 +212,7 @@
       <workItem from="1702631535326" duration="205000" />
       <workItem from="1702858329054" duration="9016000" />
       <workItem from="1703031064839" duration="55055000" />
-      <workItem from="1703463546867" duration="5864000" />
+      <workItem from="1703463546867" duration="15771000" />
     </task>
     <task id="LOCAL-00001" summary="绗竴娆℃帹閫�">
       <option name="closed" value="true" />
diff --git a/north-glass-erp/northglass-erp/src/components/basic/BasicTable.vue b/north-glass-erp/northglass-erp/src/components/basic/BasicTable.vue
index 9fdcc29..c626c51 100644
--- a/north-glass-erp/northglass-erp/src/components/basic/BasicTable.vue
+++ b/north-glass-erp/northglass-erp/src/components/basic/BasicTable.vue
@@ -1,20 +1,10 @@
 <template>
-  <div style="width: 100%;height: 100%;">
+  <div style="width: 100%;height: 100%;" >
     <!-- 姝e父鍖哄煙鐨勬 -->
     <div class="vxe-table--cell-area" ref="cellarea">
       <span class="vxe-table--cell-main-area"></span>
       <span class="vxe-table--cell-active-area"></span>
     </div>
-    <!-- 宸︿晶fixed鍖哄煙鐨勬 -->
-<!--    <div class="vxe-table&#45;&#45;cell-area" ref="leftfixedcellarea">-->
-<!--      <span class="vxe-table&#45;&#45;cell-main-area"></span>-->
-<!--      <span class="vxe-table&#45;&#45;cell-active-area"></span>-->
-<!--    </div>-->
-    <!-- 鍙充晶fixed鍖哄煙鐨勬 -->
-<!--    <div class="vxe-table&#45;&#45;cell-area" ref="rightfixedcellarea">-->
-<!--      <span class="vxe-table&#45;&#45;cell-main-area"></span>-->
-<!--      <span class="vxe-table&#45;&#45;cell-active-area"></span>-->
-<!--    </div>-->
     <vxe-grid
         max-height="100%"
         @filter-change="filterChanged"
@@ -22,6 +12,7 @@
         ref="xGrid"
         v-bind="gridOptions"
         v-on="gridEvents"
+        @scroll ="scrollEvnt"
 
     >
 <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
@@ -57,11 +48,14 @@
 <script lang="ts" setup>
 import {ref, reactive, defineEmits, onMounted, nextTick, toRef, watch} from 'vue'
 import {VxeGridProps, VXETable} from 'vxe-table'
+import scrollEvnt from '@/hook/index'
 import request from "@/utils/request"
 import deepClone from "@/utils/deepClone";
 import {ElMessage} from "element-plus";
 import router from "@/router";
 //prop鎺ユ敹鐖剁粍浠跺嚱鏁�
+
+
 
 let props = defineProps({
   tableProp:{
@@ -111,7 +105,7 @@
   printConfig: {},
   importConfig: {},
   exportConfig: {},
-  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
+  scrollY:{ enabled: true , gt: 40},//寮�鍚櫄鎷熸粴鍔�
   showOverflow:true,
   columnConfig: {
     resizable: true,
diff --git a/north-glass-erp/northglass-erp/src/components/basic/product/GlassType.vue b/north-glass-erp/northglass-erp/src/components/basic/product/GlassType.vue
index 874b797..df6819f 100644
--- a/north-glass-erp/northglass-erp/src/components/basic/product/GlassType.vue
+++ b/north-glass-erp/northglass-erp/src/components/basic/product/GlassType.vue
@@ -2,7 +2,7 @@
 import request from "@/utils/request";
 import deepClone from "@/utils/deepClone";
 import {ElMessage} from "element-plus";
-import useProductGlassTypeStore from "@/stores/productGlassType"
+import useProductGlassTypeStore from "@/stores/sd/product/productGlassType"
 let productGlassTypeStore = useProductGlassTypeStore()
 
 let options=$ref([])
diff --git a/north-glass-erp/northglass-erp/src/components/sd/product/GlassType.vue b/north-glass-erp/northglass-erp/src/components/sd/product/GlassType.vue
index a3c7882..7545d94 100644
--- a/north-glass-erp/northglass-erp/src/components/sd/product/GlassType.vue
+++ b/north-glass-erp/northglass-erp/src/components/sd/product/GlassType.vue
@@ -2,7 +2,7 @@
 import request from "@/utils/request";
 import deepClone from "@/utils/deepClone";
 import {ElMessage} from "element-plus";
-import useProductGlassTypeStore from "@/stores/productGlassType"
+import useProductGlassTypeStore from "@/stores/sd/product/productGlassType"
 let productGlassTypeStore = useProductGlassTypeStore()
 
 let options=$ref([])
diff --git a/north-glass-erp/northglass-erp/src/hook/index.js b/north-glass-erp/northglass-erp/src/hook/index.js
index e69de29..bc74eef 100644
--- a/north-glass-erp/northglass-erp/src/hook/index.js
+++ b/north-glass-erp/northglass-erp/src/hook/index.js
@@ -0,0 +1,12 @@
+import useProductStore from "@/stores/sd/product/prduct"
+let productStore = useProductStore()
+export default  function  scrollEvnt(row){
+    // 鍐呭楂樺害
+    var scrollHeight = row.$event.target.scrollHeight
+    var clientHeight = row.$event.target.clientHeight
+    var scrollTop = row.$event.target.scrollTop
+    //婊氬姩鍒板簳閮�
+    if ((Math.round(scrollTop + clientHeight) >= scrollHeight ) ) {
+        productStore.flag=true
+    }
+}
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/router/index.js b/north-glass-erp/northglass-erp/src/router/index.js
index 64d0c13..7935ed0 100644
--- a/north-glass-erp/northglass-erp/src/router/index.js
+++ b/north-glass-erp/northglass-erp/src/router/index.js
@@ -255,9 +255,9 @@
               component: () => import('../views/pp/processCard/PrintProcess.vue'),
             },
             {
-              path: 'reShelving',
-              name: 'reShelving',
-              component: () => import('../views/pp/processCard/ReShelving.vue'),
+              path: 'productionScheduling',
+              name: 'productionScheduling',
+              component: () => import('../views/pp/processCard/ProductionScheduling.vue'),
             },
             {
               path: '',
@@ -631,6 +631,17 @@
               name: 'originalMonthlySettlement',
               component:()=>import('../views/mm/mainIngredientStock/OriginalMonthlySettlement.vue')
             },
+            //   鐗╂枡鍑哄簱
+            {
+              path: 'materialOutbound',
+              name: 'materialOutbound',
+              component:()=>import('../views/mm/mainIngredientStock/MaterialOutbound.vue')
+            },
+            {
+              path:'createOutBound',
+              name:'createOutBound',
+              component:()=>import('../views/mm/mainIngredientStock/CreateOutBound.vue')
+            },
             {
               path: '',
               redirect:'/main/ingredientsStock/SelectIngredientsStock'
@@ -770,7 +781,7 @@
         },
         {
           path: '',
-          redirect:'/main/Product'
+          redirect:'/main/order'
         }
       ]
     },
diff --git a/north-glass-erp/northglass-erp/src/stores/sd/product/prduct.js b/north-glass-erp/northglass-erp/src/stores/sd/product/prduct.js
new file mode 100644
index 0000000..4b117d6
--- /dev/null
+++ b/north-glass-erp/northglass-erp/src/stores/sd/product/prduct.js
@@ -0,0 +1,15 @@
+import {defineStore} from 'pinia'
+import {ref} from "vue";
+
+export  default defineStore("product",{
+    state: () =>{
+        let pageNum=$ref(1)
+        let pageSize=$ref(100)
+        let flag=$ref(false)
+        return {
+            pageNum,
+            pageSize,
+            flag
+        }
+    }
+})
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/stores/productGlassType.js b/north-glass-erp/northglass-erp/src/stores/sd/product/productGlassType.js
similarity index 100%
rename from north-glass-erp/northglass-erp/src/stores/productGlassType.js
rename to north-glass-erp/northglass-erp/src/stores/sd/product/productGlassType.js
diff --git a/north-glass-erp/northglass-erp/src/views/mm/mainIngredient/CreateIngredients.vue b/north-glass-erp/northglass-erp/src/views/mm/mainIngredient/CreateIngredients.vue
index 643687f..265fd86 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/mainIngredient/CreateIngredients.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainIngredient/CreateIngredients.vue
@@ -1,171 +1,183 @@
-<!-- 鐗╂枡璧勬枡鏂板 -->
+<!-- 鐗╂枡璧勬枡鏂板鍘熺墖 -->
 
 <script lang="ts" setup>
 import {ref} from "vue";
+const value = ref('')
+const options = [
+  {
+    value: '鍘熺墖',
+    label: '鍘熺墖'
+  },
+  {
+    value: '杈呮枡',
+    label: '杈呮枡',
+  }
+]
 </script>
 <template>
 
  <div class="center-box">
    <el-card class="form-card">
    <el-form  size="medium" >
+<div>
+  <el-row>
+  <el-col :span="4">
+    <el-select v-model="value" placeholder="璇烽�夋嫨绫诲埆">
+      <el-option
+          v-for="item in options"
+          :key="item.value"
+          :label="item.label"
+          :value="item.value"
+      />
+    </el-select>
+  </el-col>
+  </el-row>
+</div>
 
+     <el-divider ></el-divider> <!-- 娣诲姞鍒嗛殧绾� -->
 
-
-     <el-row gutter="5">
+     <el-row gutter="5" v-show="value=='鍘熺墖'" >
        <el-col :span="4.5">
-         <el-input v-model="name" placeholder="璇疯緭鍏ョ墿鏂欑紪鐮�" style="width: 150px; height: 30px;" />
+        闀垮害 <el-input v-show="value=='鍘熺墖'" v-model="name" placeholder="璇疯緭鍏ラ暱搴�" style="width: 150px; height: 30px;" />
        </el-col>
        <el-col :span="4.5">
-         <el-input v-model="productName" placeholder="璇疯緭鍏ョ墿鏂欏悕绉�" style="width: 150px; height: 30px;" />
+         鍘氬害 <el-input v-show="value=='鍘熺墖'"  v-model="name" placeholder="璇疯緭鍏ュ帤搴�" style="width: 150px; height: 30px;" />
        </el-col>
        <el-col :span="4.5">
-         <el-input v-model="salId" placeholder="璇疯緭鍏ラ噸閲�" style="width: 150px; height: 30px;" />
+         瀹藉害 <el-input v-show="value=='鍘熺墖'" v-model="name" placeholder="璇疯緭鍏ュ搴�" style="width: 150px; height: 30px;" />
        </el-col>
-       <el-col :span="4">
-         <el-dropdown>
-           <el-button type="primary">
-             绛夌骇<el-icon class="el-icon--right" style="width: 66px;"><arrow-down /></el-icon>
-           </el-button>
-           <template #dropdown>
-             <el-dropdown-menu>
-               <el-dropdown-item>鍒堕暅绾�</el-dropdown-item>
-               <el-dropdown-item>鍚堟牸鍝�</el-dropdown-item>
-               <el-dropdown-item>涓�绛夊搧</el-dropdown-item>
-               <el-dropdown-item>鍗忚鍝�</el-dropdown-item>
-               <el-dropdown-item>浼樼瓑鍝�</el-dropdown-item>
-             </el-dropdown-menu>
-           </template>
-         </el-dropdown>
-       </el-col>
+<!--       <el-col :span="4">-->
+<!--         <el-dropdown>-->
+<!--           <el-button type="primary">-->
+<!--             鑶滅郴<el-icon class="el-icon&#45;&#45;right" style="width: 66px;"><arrow-down /></el-icon>-->
+<!--           </el-button>-->
+<!--           <template #dropdown>-->
+<!--             <el-dropdown-menu>-->
+<!--               <el-dropdown-item>闈為晙鑶�</el-dropdown-item>-->
+<!--               <el-dropdown-item>鍦ㄧ嚎LOW-E</el-dropdown-item>-->
+<!--               <el-dropdown-item>SUPPER-I</el-dropdown-item>-->
+<!--               <el-dropdown-item>SUPPER-I+</el-dropdown-item>-->
+<!--               <el-dropdown-item>SUPPER-II</el-dropdown-item>-->
+<!--               <el-dropdown-item>SUPPER-III</el-dropdown-item>-->
+<!--               <el-dropdown-item>SUPPER-V</el-dropdown-item>-->
+<!--               <el-dropdown-item>SUPPER-IA</el-dropdown-item>-->
+<!--               <el-dropdown-item>SUNLITE LOWE</el-dropdown-item>-->
+<!--               <el-dropdown-item>LOW-E40</el-dropdown-item>-->
+<!--               <el-dropdown-item>LOW-E40A</el-dropdown-item>-->
+<!--               <el-dropdown-item>LOW-E50</el-dropdown-item>-->
+<!--               <el-dropdown-item>LOW-E55N</el-dropdown-item>-->
+<!--             </el-dropdown-menu>-->
+<!--           </template>-->
+<!--         </el-dropdown>-->
+<!--       </el-col>-->
      </el-row>
+     <el-divider ></el-divider> <!-- 娣诲姞鍒嗛殧绾� -->
+       <el-row gutter="5" v-show="value=='鍘熺墖'|| value=='杈呮枡'">
+       <el-col :span="4.5">
+         鍚嶇О <el-input  v-show="value=='鍘熺墖' || value=='杈呮枡'" v-model="productName" placeholder="璇疯緭鍏ュ悕绉�" style="width: 150px; height: 30px;" />
+       </el-col>
+         <el-col :span="4.5">
+           鏁伴噺 <el-input v-show="value=='鍘熺墖' || value=='杈呮枡'"  v-model="salId" placeholder="璇疯緭鍏ユ暟閲�" style="width: 150px; height: 30px;" />
+         </el-col>
+         <el-col :span="4.5">
+           鍗曚綅 <el-input v-model="name" placeholder="璇疯緭鍏ュ崟浣�" style="width: 150px; height: 30px;" />
+         </el-col>
+         <el-col :span="4.5">
+           鍨嬪彿<el-input v-model="name" placeholder="璇疯緭鍏ュ瀷鍙�" style="width: 150px; height: 30px;" />
+         </el-col>
+       </el-row>
+     <el-divider v-show="false" ></el-divider> <!-- 娣诲姞鍒嗛殧绾� -->
+<!--         <el-row gutter="5">-->
+<!--           <el-col span="4.5">-->
+<!--           <el-input v-model="name" placeholder="璇疯緭鍏ユ崲绠楀崟浣�" style="width: 150px; height: 30px;" />-->
+<!--           </el-col>-->
+<!--           <el-col :span="4.5">-->
+<!--             <el-input v-model="name" placeholder="璇疯緭鍏ユ崲绠楃巼" style="width: 150px; height: 30px;" />-->
+<!--           </el-col>-->
+<!--     </el-row>-->
 
      <el-divider ></el-divider> <!-- 娣诲姞鍒嗛殧绾� -->
 
      <el-row gutter="5">
-       <el-col :span="4.5">
-         <el-input v-model="name" placeholder="璇疯緭鍏ュ搴�" style="width: 150px; height: 30px;" />
-       </el-col>
-       <el-col :span="4.5">
-         <el-input v-model="name" placeholder="璇疯緭鍏ラ珮搴�" style="width: 150px; height: 30px;" />
-       </el-col>
-       <el-col :span="4.5">
-         <el-input v-model="name" placeholder="璇疯緭鍏ュ帤搴�" style="width: 150px; height: 30px;" />
-       </el-col>
-       <el-col :span="4">
-         <el-dropdown>
-           <el-button type="primary">
-             澶х被<el-icon class="el-icon--right" style="width: 66px;"><arrow-down /></el-icon>
-           </el-button>
-           <template #dropdown>
-             <el-dropdown-menu>
-               <el-dropdown-item>杈呯墖</el-dropdown-item>
-               <el-dropdown-item>鍘熺墖</el-dropdown-item>
-             </el-dropdown-menu>
-           </template>
-         </el-dropdown>
-       </el-col>
+
+
+
+
      </el-row>
 
-     <el-divider ></el-divider> <!-- 娣诲姞鍒嗛殧绾� -->
+<!--     <el-divider ></el-divider> &lt;!&ndash; 娣诲姞鍒嗛殧绾� &ndash;&gt;-->
 
-     <el-row gutter="5">
-       <el-col :span="4.5">
-         <el-input v-model="name" placeholder="璇疯緭鍏ュ瀷鍙�" style="width: 150px; height: 30px;" />
-       </el-col>
+<!--     <el-row gutter="5">-->
+<!--       <el-col :span="4.5">-->
+<!--         <el-input v-model="name" placeholder="璇疯緭鍏ュ瀷鍙�" style="width: 150px; height: 30px;" />-->
+<!--       </el-col>-->
 
-       <el-col :span="4.5">
-         <el-input v-model="name" placeholder="璇疯緭鍏ュ崟浣�" style="width: 150px; height: 30px;" />
-       </el-col>
-       <el-col :span="4">
-         <el-dropdown>
-           <el-button type="primary">
-             浜у湴<el-icon class="el-icon--right" style="width: 66px;"><arrow-down /></el-icon>
-           </el-button>
-           <template #dropdown>
-             <el-dropdown-menu>
-               <el-dropdown-item>鏆傛棤</el-dropdown-item>
-             </el-dropdown-menu>
-           </template>
-         </el-dropdown>
-       </el-col>
-       <el-col :span="4">
-         <el-dropdown>
-           <el-button type="primary">
-             涓被<el-icon class="el-icon--right" style="width: 66px;"><arrow-down /></el-icon>
-           </el-button>
-           <template #dropdown>
-             <el-dropdown-menu>
-               <el-dropdown-item>0</el-dropdown-item>
-             </el-dropdown-menu>
-           </template>
-         </el-dropdown>
-       </el-col>
-     </el-row>
+<!--       <el-col :span="4.5">-->
+<!--         <el-input v-model="name" placeholder="璇疯緭鍏ュ崟浣�" style="width: 150px; height: 30px;" />-->
+<!--       </el-col>-->
+<!--       <el-col :span="4">-->
+<!--         <el-dropdown>-->
+<!--           <el-button type="primary">-->
+<!--             浜у湴<el-icon class="el-icon&#45;&#45;right" style="width: 66px;"><arrow-down /></el-icon>-->
+<!--           </el-button>-->
+<!--           <template #dropdown>-->
+<!--             <el-dropdown-menu>-->
+<!--               <el-dropdown-item>鏆傛棤</el-dropdown-item>-->
+<!--             </el-dropdown-menu>-->
+<!--           </template>-->
+<!--         </el-dropdown>-->
+<!--       </el-col>-->
+<!--       <el-col :span="4">-->
+<!--         <el-dropdown>-->
+<!--           <el-button type="primary">-->
+<!--             涓被<el-icon class="el-icon&#45;&#45;right" style="width: 66px;"><arrow-down /></el-icon>-->
+<!--           </el-button>-->
+<!--           <template #dropdown>-->
+<!--             <el-dropdown-menu>-->
+<!--               <el-dropdown-item>0</el-dropdown-item>-->
+<!--             </el-dropdown-menu>-->
+<!--           </template>-->
+<!--         </el-dropdown>-->
+<!--       </el-col>-->
+<!--     </el-row>-->
 
 
-     <el-divider ></el-divider> <!-- 娣诲姞鍒嗛殧绾� -->
+<!--     <el-divider ></el-divider> &lt;!&ndash; 娣诲姞鍒嗛殧绾� &ndash;&gt;-->
 
-     <el-row gutter="5">
-       <el-col :span="4.5">
-         <el-input v-model="name" placeholder="璇疯緭鍏ユ崲绠楀崟浣�" style="width: 150px; height: 30px;" />
-       </el-col>
-       <el-col :span="4.5">
-         <el-input v-model="name" placeholder="璇疯緭鍏ユ崲绠楃巼" style="width: 150px; height: 30px;" />
-       </el-col>
-       <el-col :span="4.5">
-         <el-input v-model="name" placeholder="璇疯緭鍏ュ娉�" style="width: 150px; height: 30px;" />
-       </el-col>
-       <el-col :span="4">
-         <el-dropdown>
-           <el-button type="primary">
-             灏忕被<el-icon class="el-icon--right" style="width: 66px;"><arrow-down /></el-icon>
-           </el-button>
-           <template #dropdown>
-             <el-dropdown-menu>
-               <el-dropdown-item>0</el-dropdown-item>
-             </el-dropdown-menu>
-           </template>
-         </el-dropdown>
-       </el-col>
-     </el-row>
+<!--     <el-row gutter="5">-->
 
-     <el-divider ></el-divider> <!-- 娣诲姞鍒嗛殧绾� -->
+
+<!--       <el-col :span="4.5">-->
+<!--         <el-input v-model="name" placeholder="璇疯緭鍏ュ娉�" style="width: 150px; height: 30px;" />-->
+<!--       </el-col>-->
+<!--       <el-col :span="4">-->
+<!--         <el-dropdown>-->
+<!--           <el-button type="primary">-->
+<!--             灏忕被<el-icon class="el-icon&#45;&#45;right" style="width: 66px;"><arrow-down /></el-icon>-->
+<!--           </el-button>-->
+<!--           <template #dropdown>-->
+<!--             <el-dropdown-menu>-->
+<!--               <el-dropdown-item>0</el-dropdown-item>-->
+<!--             </el-dropdown-menu>-->
+<!--           </template>-->
+<!--         </el-dropdown>-->
+<!--       </el-col>-->
+<!--     </el-row>-->
+
+<!--     <el-divider ></el-divider> &lt;!&ndash; 娣诲姞鍒嗛殧绾� &ndash;&gt;-->
 
 
      <el-row gutter="5">
-       <el-col :span="4.5">
-         <el-input v-model="name" placeholder="璇疯緭鍏ヤ繚璐ㄦ湡" style="width: 150px; height: 30px;" />
-       </el-col>
-       <el-col :span="4.5">
-         <el-input v-model="name" placeholder="璇疯緭鍏ユ渶楂橀璀�" style="width: 150px; height: 30px;" />
-       </el-col>
-       <el-col :span="4.5">
-         <el-input v-model="name" placeholder="璇疯緭鍏ユ媶鍖呴璀�" style="width: 150px; height: 30px;" />
-       </el-col>
-       <el-col :span="4">
-         <el-dropdown>
-           <el-button type="primary">
-             鑶滅郴<el-icon class="el-icon--right" style="width: 66px;"><arrow-down /></el-icon>
-           </el-button>
-           <template #dropdown>
-             <el-dropdown-menu>
-               <el-dropdown-item>闈為晙鑶�</el-dropdown-item>
-               <el-dropdown-item>鍦ㄧ嚎LOW-E</el-dropdown-item>
-               <el-dropdown-item>SUPPER-I</el-dropdown-item>
-               <el-dropdown-item>SUPPER-I+</el-dropdown-item>
-               <el-dropdown-item>SUPPER-II</el-dropdown-item>
-               <el-dropdown-item>SUPPER-III</el-dropdown-item>
-               <el-dropdown-item>SUPPER-V</el-dropdown-item>
-               <el-dropdown-item>SUPPER-IA</el-dropdown-item>
-               <el-dropdown-item>SUNLITE LOWE</el-dropdown-item>
-               <el-dropdown-item>LOW-E40</el-dropdown-item>
-               <el-dropdown-item>LOW-E40A</el-dropdown-item>
-               <el-dropdown-item>LOW-E50</el-dropdown-item>
-               <el-dropdown-item>LOW-E55N</el-dropdown-item>
-             </el-dropdown-menu>
-           </template>
-         </el-dropdown>
-       </el-col>
+<!--       <el-col :span="4.5">-->
+<!--         <el-input v-model="name" placeholder="璇疯緭鍏ヤ繚璐ㄦ湡" style="width: 150px; height: 30px;" />-->
+<!--       </el-col>-->
+<!--       <el-col :span="4.5">-->
+<!--         <el-input v-model="name" placeholder="璇疯緭鍏ユ渶楂橀璀�" style="width: 150px; height: 30px;" />-->
+<!--       </el-col>-->
+<!--       <el-col :span="4.5">-->
+<!--         <el-input v-model="name" placeholder="璇疯緭鍏ユ媶鍖呴璀�" style="width: 150px; height: 30px;" />-->
+<!--       </el-col>-->
+
      </el-row>
      <el-divider ></el-divider> <!-- 娣诲姞鍒嗛殧绾� -->
      <el-row  gutter="10" justify="center" >
diff --git a/north-glass-erp/northglass-erp/src/views/mm/mainIngredient/Ingredients.vue b/north-glass-erp/northglass-erp/src/views/mm/mainIngredient/Ingredients.vue
index 91428a8..e8fbf67 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/mainIngredient/Ingredients.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainIngredient/Ingredients.vue
@@ -19,8 +19,9 @@
   <div id="main">
     <div id="div-title">
       <el-breadcrumb :separator-icon="ArrowRight">
-        <el-breadcrumb-item :to="{ path: '/main/ingredients/SelectIngredients' }">浜у搧鏌ヨ</el-breadcrumb-item>
+        <el-breadcrumb-item :to="{ path: '/main/ingredients/SelectIngredients' }">鐗╂枡璧勬枡</el-breadcrumb-item>
         <el-breadcrumb-item :to="{ path: '/main/ingredients/CreateIngredients' }">鐗╂枡鏂板</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/mm/mainIngredient/SelectIngredients.vue b/north-glass-erp/northglass-erp/src/views/mm/mainIngredient/SelectIngredients.vue
index 17b05a6..777c902 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/mainIngredient/SelectIngredients.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainIngredient/SelectIngredients.vue
@@ -1,174 +1,183 @@
-<!-- 鐗╂枡璧勬枡 -->
-<script lang="ts" setup>
-import { ref } from 'vue';
-const name = ref('')
-const productName = ref('')
-const salId = ref('')
-let tableData = ref([
-  {
-    "鑷簭":'1',
-    "鐗╂枡缂栫爜":'700900000000941',
-    "鐗╂枡鍚嶇О":'涓濊闃叉檼鎵嬪濂楄',
-    "浜у湴":'00',
-    "瀹藉害":'0.00',
-    "楂樺害":'0.00',
-    "鍘氬害":'0.00',
-    "鍨嬪彿":'',
-    "鎹㈢畻鐜�":'1000',
-    "鍗曚綅":'鍙�',
-    "鎹㈢畻鍗曚綅":'1',
-    "淇濊川鏈�":'12',
-    "閲嶉噺":'0.0000',
-    "鏁伴噺":'2016-10-17',
-    "搴撳瓨缁勭粐":'浜哄伐搴�',
-    "澶囨敞":'',
+<script setup>
+
+import {reactive} from "vue";
+import {useRouter} from  'vue-router'
+let router=useRouter()
+const getTableRow = (row,type) =>{
+  switch (type) {
+    case 'edit' :{
+      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+      router.push({path: '/main/ingredients/CreateIngredients', query: { id: row.id }})
+      break
+    }
+    case 'delete':{
+      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
+      break
+    }
+  }
+}
+
+
+
+//瀛愮粍浠舵帴鏀跺弬鏁�
+
+const gridOptions = reactive({
+  border:  "full",//琛ㄦ牸鍔犺竟妗�
+  keepSource: true,//淇濇寔婧愭暟鎹�
+  align: 'center',//鏂囧瓧灞呬腑
+  stripe:true,//鏂戦┈绾�
+  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
+  id: 'CustomerList',
+  showFooter: true,//鏄剧ず鑴�
+  printConfig: {},
+  importConfig: {},
+  exportConfig: {},
+  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
+  showOverflow:true,
+  columnConfig: {
+    resizable: true,
+    useKey: true
   },
-  {
-    "鑷簭":'2',
-    "鐗╂枡缂栫爜":'700900000000940',
-    "鐗╂枡鍚嶇О":'鑷浣嶆寜閽紑鍏�',
-    "浜у湴":'00',
-    "瀹藉害":'0.00',
-    "楂樺害":'0.00',
-    "鍘氬害":'0.00',
-    "鍨嬪彿":'',
-    "鎹㈢畻鐜�":'1000',
-    "鍗曚綅":'浠�',
-    "鎹㈢畻鍗曚綅":'1',
-    "淇濊川鏈�":'12',
-    "閲嶉噺":'0.0000',
-    "鏁伴噺":'2016-10-17',
-    "搴撳瓨缁勭粐":'浜哄伐搴�',
-    "澶囨敞":'',
+  filterConfig: {   //绛涢�夐厤缃」
+    remote: true
   },
-  {
-    "鑷簭":'3',
-    "鐗╂枡缂栫爜":'700900000001189',
-    "鐗╂枡鍚嶇О":'鎴峰鏄庤闃叉按鎻掑骇',
-    "浜у湴":'00',
-    "瀹藉害":'0.00',
-    "楂樺害":'0.00',
-    "鍘氬害":'0.00',
-    "鍨嬪彿":'',
-    "鎹㈢畻鐜�":'1000',
-    "鍗曚綅":'涓�',
-    "鎹㈢畻鍗曚綅":'1',
-    "淇濊川鏈�":'12',
-    "閲嶉噺":'0.0000',
-    "鏁伴噺":'2016-10-17',
-    "搴撳瓨缁勭粐":'浜哄伐搴�',
-    "澶囨敞":'',
+  customConfig: {
+    storage: true
   },
-  {
-    "鑷簭":'4',
-    "鐗╂枡缂栫爜":'700900000001188',
-    "鐗╂枡鍚嶇О":'骞虫澘鍦版嫋',
-    "浜у湴":'00',
-    "瀹藉害":'0.00',
-    "楂樺害":'0.00',
-    "鍘氬害":'0.00',
-    "鍨嬪彿":'',
-    "鎹㈢畻鐜�":'1000',
-    "鍗曚綅":'鎶�',
-    "鎹㈢畻鍗曚綅":'1',
-    "淇濊川鏈�":'12',
-    "閲嶉噺":'0.0000',
-    "鏁伴噺":'2016-10-17',
-    "搴撳瓨缁勭粐":'浜哄伐搴�',
-    "澶囨敞":'',
+  editConfig: {
+    trigger: 'click',
+    mode: 'row',
+    showStatus: true
+  },//琛ㄥご鍙傛暟
+  columns:[
+    {type:'expand',fixed:"left",slots: { content:'content' },width: '50'},
+    // { type: 'checkbox',fixed:"left", title: '閫夋嫨', width: '80' },
+    { type: 'seq',fixed:"left", title: '鑷簭', width: '80' },
+    {title: '鎿嶄綔', width: '110', slots: { default: 'button_slot' },fixed:"left"},
+    {field: 'materialCode', width:'150', title: '鐗╂枡缂栫爜', sortable: true,editRender: { name: 'input', attrs: { placeholder: '' } } },
+    {field: 'materialName', width: '150',title: '鐗╂枡鍚嶇О', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'origin', width: '120',title: '浜у湴', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'width', width: '100',title: '瀹藉害', sortable: true},
+    {field: 'height',width: '100', title: '楂樺害', sortable: true,showOverflow:"ellipsis"},
+    {field: 'thickness', width: '80',title: '鍘氬害', sortable: true},
+    {field: 'model',width: '100', title: '鍨嬪彿', sortable: true},
+    {field: 'conversionRate', width: '100',title: '鎹㈢畻鐜�', sortable: true},
+    {field: 'unit',width: '100', title: '鍗曚綅', sortable: true},
+    {field: 'conversionUnit', width: '80',title: '鎹㈢畻鍗曚綅', sortable: true},
+    {field: 'shelfLife',width: '100', title: '淇濊川鏈�', sortable: true},
+    {field: 'weight', width: '100',title: ' 閲嶉噺', sortable: true},
+    {field: 'quantity',width: '110', title: '鏁伴噺', sortable: true},
+    {field: 'inventoryOrganization',width: '100', title: '搴撳瓨缁勭粐', sortable: true},
+    {field: 'remark',width: '80', title: '澶囨敞', sortable: true},
+
+  ],//琛ㄥご鎸夐挳
+  toolbarConfig: {
+
+    import: false,
+    export: true,
+    print: true,
+    zoom: true,
+    custom: true
   },
-])
+  data:  [
+    {
+      "materialCode": 700900000000941,
+      "materialName": "涓濊闃叉檼鎵嬪濂楄",
+      "origin": "00",
+      "width": "00",
+      "height": "00",
+      "thickness":'00',
+      "model": "鏈嶉グ",
+      "conversionRate": "1000",
+      "unit": "鍙�",
+      "conversionUnit": "1",
+      "shelfLife": "12涓湀",
+      "weight": "0.0000",
+      "quantity": "10000",
+      "inventoryOrganization": "浜哄伐搴�",
+      "remark": "娴嬭瘯",
+    },
+    {
+      "materialCode": 700900000000941,
+      "materialName": "涓濊闃叉檼鎵嬪濂楄",
+      "origin": "00",
+      "width": "00",
+      "height": "00",
+      "thickness":'00',
+      "model": "鏈嶉グ",
+      "conversionRate": "1000",
+      "unit": "鍙�",
+      "conversionUnit": "1",
+      "shelfLife": "12涓湀",
+      "weight": "0.0000",
+      "quantity": "10000",
+      "inventoryOrganization": "浜哄伐搴�",
+      "remark": "娴嬭瘯",
+    },
+  ],//table body瀹為檯鏁版嵁
+  footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
+    return[
+      columns.map((column, columnIndex) => {
+        if (columnIndex === 0) {
+          return '鍚堣:'
+        }
+        // if (props.tableProp.footList.includes(column.field)) {
+        //   return sumNum(data, column.field)
+        // }
+        return ''
+      })
+    ]
+  }
+
+})
+
+
+
 </script>
+
 <template>
-  <div>
-    <!-- 琛ㄥ崟寮�濮� -->
-    <div>
-      <el-form  size="medium" >
+  <div class="main-div-customer">
+    <vxe-grid
+        max-height="100%"
+        @filter-change="filterChanged"
+        class="mytable-scrollbar"
+        ref="xGrid"
+        v-bind="gridOptions"
 
-<!--        <el-row gutter="5">-->
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="name" placeholder="璇疯緭鍏ョ墿鏂欑紪鐮�" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="productName" placeholder="璇疯緭鍏ョ墿鏂欏悕绉�" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="salId" placeholder="璇疯緭鍏ュ搴�" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="salId" placeholder="璇疯緭鍏ラ珮搴�" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
+    >
+      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
+      <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
+      <template #content="{ row}">
+        <ul class="expand-wrapper">
+          <li  v-for="(item,key,index) in row">
+            <span style="font-weight: bold">{{key+':  '}}</span>
+            <span>{{ item }}</span>
+          </li>
+        </ul>
+      </template>
 
-<!--        </el-row>-->
+      <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
+      <template #button_slot="{ row }">
+        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">缂栬緫</el-button>
+        <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">鍒犻櫎</el-button>
+      </template>
 
-<!--        &lt;!&ndash; <el-form-item size="large">-->
-<!--          <el-button type="primary" @click="submitForm">鏌ヨ</el-button>-->
-<!--          <el-button @click="resetForm">閲嶇疆</el-button>-->
-<!--        </el-form-item>&ndash;&gt;-->
-<!--        <el-row gutter="5">-->
-<!--          <el-col :span="4">-->
-<!--            <el-dropdown>-->
-<!--              <el-button type="primary">-->
-<!--                璇烽�夋嫨搴撳瓨缁勭粐<el-icon class="el-icon&#45;&#45;right" style="width: 66px;"><arrow-down /></el-icon>-->
-<!--              </el-button>-->
-<!--              <template #dropdown>-->
-<!--                <el-dropdown-menu>-->
-<!--                  <el-dropdown-item>Action 1</el-dropdown-item>-->
-<!--                  <el-dropdown-item>Action 2</el-dropdown-item>-->
-<!--                  <el-dropdown-item>Action 3</el-dropdown-item>-->
-<!--                  <el-dropdown-item>Action 4</el-dropdown-item>-->
-<!--                  <el-dropdown-item>Action 5</el-dropdown-item>-->
-<!--                </el-dropdown-menu>-->
-<!--              </template>-->
-<!--            </el-dropdown>-->
-<!--          </el-col>-->
+      <template #num1_filter="{ column, $panel }">
+        <div>
+          <div v-for="(option, index) in column.filters" :key="index">
+            <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
+          </div>
+        </div>
+      </template>
 
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="name" placeholder="璇疯緭瀹藉害" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="name" placeholder="璇疯緭鍨嬪彿" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
 
-<!--          <el-col :span="4">-->
-<!--            <el-button id="searchButton" type="primary" :icon="Search">鏌ヨ</el-button>-->
-<!--          </el-col>-->
-
-<!--        </el-row>-->
-      </el-form>
-    </div>
-    <!-- 琛ㄥ崟缁撴潫 -->
-    <!-- 琛ㄦ牸寮�濮� -->
-    <div>
-      <el-table :data="tableData" border style="width: 100%">
-        <el-table-column prop="鑷簭" label="鑷簭" width="180" />
-        <el-table-column prop="鐗╂枡缂栫爜" label="鐗╂枡缂栫爜" width="180" />
-        <el-table-column prop="鐗╂枡鍚嶇О" label="鐗╂枡鍚嶇О" width="180"/>
-        <el-table-column prop="浜у湴" label="浜у湴" width="180"/>
-        <el-table-column prop="瀹藉害" label="瀹藉害" width="180"/>
-        <el-table-column prop="楂樺害" label="楂樺害" width="180"/>
-        <el-table-column prop="鍘氬害" label="鍘氬害" width="180"/>
-        <el-table-column prop="鍨嬪彿" label="鍨嬪彿" width="180"/>
-        <el-table-column prop="鎹㈢畻鐜�" label="鎹㈢畻鐜�" width="180"/>
-        <el-table-column prop="鍗曚綅" label="鍗曚綅" width="180"/>
-        <el-table-column prop="鎹㈢畻鍗曚綅" label="鎹㈢畻鍗曚綅" width="180"/>
-        <el-table-column prop="淇濊川鏈�" label="淇濊川鏈�" width="180"/>
-        <el-table-column prop="閲嶉噺" label="閲嶉噺" width="180"/>
-        <el-table-column prop="鏁伴噺" label="鏁伴噺" width="180"/>
-        <el-table-column prop="搴撳瓨缁勭粐" label="搴撳瓨缁勭粐" width="180"/>
-        <el-table-column prop="澶囨敞" label="澶囨敞" width="180"/>
-        <el-table-column fixed="left" label="鎿嶄綔" width="120">
-          <template #default>
-            <el-button link type="primary" size="small" @click="handleClick"
-            >缂栬緫</el-button
-            >
-            <el-button link type="primary" size="small">鍒犻櫎</el-button>
-          </template>
-        </el-table-column>
-      </el-table>
-    </div>
+    </vxe-grid>
   </div>
 </template>
 
-<style>
+<style scoped>
+.main-div-customer{
+  width: 99%;
+  height: 100%;
+}
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/AccessoriesMonthlySettlement.vue b/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/AccessoriesMonthlySettlement.vue
index 95794bc..f34ff81 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/AccessoriesMonthlySettlement.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/AccessoriesMonthlySettlement.vue
@@ -1,94 +1,252 @@
-<!--杈呮枡鏈堢粨-->
+<script setup>
 
+import {reactive, ref} from "vue";
+import {useRouter} from  'vue-router'
+import {VXETable} from "vxe-table";
+let router=useRouter()
+const getTableRow = (row,type) =>{
+  switch (type) {
+    case 'edit' :{
+      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+      router.push({path: '/main/trader/CreateTrader', query: { id: row.id }})
+      break
+    }
+    case 'delete':{
+      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
+      break
+    }
 
-<script lang="ts" setup>
+  }
+}
 
-</script>
-<template>
-  <div>
-    <div>
-      <el-form>
-        <el-row gutter="10" >
-          <el-col :span="2.5">
-            <div class="label-text">鏌ヨ杈呮枡鎶ヨ〃鏃ユ湡</div>
-          </el-col>
-          <el-col :span="4">
-            <el-date-picker
-                type="daterange"
-                start-placeholder="寮�濮嬫椂闂�"
-                end-placeholder="缁撴潫鏃堕棿"
-                style="width: 200px;"
-            />
-          </el-col>
-          <el-col :span="4">
-            <el-dropdown>
-              <el-button type="primary">
-                杈呮枡绫诲瀷<el-icon class="el-icon--right" style="width: 66px;"><arrow-down /></el-icon>
-              </el-button>
-              <template #dropdown>
-                <el-dropdown-menu>
-                  <el-dropdown-item>鍖栧鍝�</el-dropdown-item>
-                  <el-dropdown-item>纾ㄨ疆</el-dropdown-item>
-                  <el-dropdown-item>鏃犲皹绾�</el-dropdown-item>
-                  <el-dropdown-item>鑶�</el-dropdown-item>
-                  <el-dropdown-item>鏈ㄧ</el-dropdown-item>
-                  <el-dropdown-item>鐢靛伐鐢垫皵</el-dropdown-item>
-                  <el-dropdown-item>鏈哄櫒閰嶄欢</el-dropdown-item>
-                  <el-dropdown-item>宸ュ叿</el-dropdown-item>
-                  <el-dropdown-item>鍔炲叕鐢ㄥ搧</el-dropdown-item>
-                  <el-dropdown-item>杈呮枡浣欐枡</el-dropdown-item>
-                  <el-dropdown-item>鏉ユ枡鍔犲伐</el-dropdown-item>
-                  <el-dropdown-item>涓濆嵃</el-dropdown-item>
-                  <el-dropdown-item>鏈ㄦ澘</el-dropdown-item>
-                  <el-dropdown-item>姘斾綋</el-dropdown-item>
-                  <el-dropdown-item>鍖栧伐绠′欢</el-dropdown-item>
-                  <el-dropdown-item>鍙戝鍔犲伐</el-dropdown-item>
-                  <el-dropdown-item>鏈哄櫒璁惧缁翠慨</el-dropdown-item>
-                  <el-dropdown-item>鏈烘璁惧</el-dropdown-item>
-                  <el-dropdown-item>鍙版澘</el-dropdown-item>
-                </el-dropdown-menu>
-              </template>
-            </el-dropdown>
-          </el-col>
-          <el-col :span="4">
-            <el-button id="searchButton" type="primary" :icon="Search">鏌ヨ鎶ヨ〃</el-button>
-          </el-col>
-        </el-row>
-      </el-form>
-    </div>
-    <div>
-      <div>
-        <el-table :data="tableData" border style="width: 100%">
-          <el-table-column prop="鑷簭" label="鑷簭" width="100" />
-          <el-table-column prop="鏈堜唤" label="鏈堜唤" width="100" />
-          <el-table-column prop="鍗曚綅" label="鍗曚綅" width="60"/>
-          <el-table-column prop="鐗╂枡缂栫爜" label="鐗╂枡缂栫爜" width="100"/>
-          <el-table-column prop="鐗╂枡鍚嶇О" label="鐗╂枡鍚嶇О" width="100"/>
-          <el-table-column prop="楂樺害" label="楂樺害" width="100"/>
-          <el-table-column prop="鍘氬害" label="鍘氬害" width="100"/>
-          <el-table-column prop="瀹藉害" label="瀹藉害" width="100"/>
-          <el-table-column prop="涓婃湀鏁伴噺" label="涓婃湀鏁伴噺" width="100"/>
-          <el-table-column prop="鏈湀鍏ュ簱鏁伴噺" label="鏈湀鍏ュ簱鏁伴噺" width="110"/>
-          <el-table-column prop="鏈湀鍑哄簱鏁伴噺" label="鏈湀鍑哄簱鏁伴噺" width="110"/>
-          <el-table-column prop="鏈湀搴撳瓨鏁伴噺" label="鏈湀搴撳瓨鏁伴噺" width="110"/>
-        </el-table>
-      </div>
-    </div>
-  </div>
-</template>
-<style>
-.centered-box {
-  display: flex;
-  justify-content: center;
-  align-items: center;
-  height: 100vh;
+//瀛愮粍浠舵帴鏀跺弬鏁�
+
+const gridOptions = reactive({
+  border:  "full",//琛ㄦ牸鍔犺竟妗�
+  keepSource: true,//淇濇寔婧愭暟鎹�
+  align: 'center',//鏂囧瓧灞呬腑
+  stripe:true,//鏂戦┈绾�
+  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
+  id: 'CustomerList',
+  showFooter: true,//鏄剧ず鑴�
+  printConfig: {},
+  importConfig: {},
+  exportConfig: {},
+  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
+  showOverflow:true,
+  columnConfig: {
+    resizable: true,
+    useKey: true
+  },
+  filterConfig: {   //绛涢�夐厤缃」
+    remote: true
+  },
+  customConfig: {
+    storage: true
+  },
+  editConfig: {
+    trigger: 'click',
+    mode: 'row',
+    showStatus: true
+  },//琛ㄥご鍙傛暟
+  columns:  [
+    {type:'expand',fixed:"left",slots: { content:'content' },width: '50'},
+    // { type: 'checkbox',fixed:"left", title: '閫夋嫨', width: '80' },
+    { type: 'seq',fixed:"left", title: '鑷簭', width: '80' },
+    // {title: '鎿嶄綔', width: '110', slots: { default: 'button_slot' },fixed:"left"},
+    {field: 'month', width:'150', title: '鏈堜唤', sortable: true,editRender: { name: 'input' },filters:[{ data: '' }],slots: { filter: 'num1_filter' } },
+    {field: 'unit', width: '150',title: '鍗曚綅', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'materialCode', width: '120',title: '鐗╂枡缂栫爜', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'materialName', width: '100',title: '鐗╂枡鍚嶇О', sortable: true},
+    {field: 'height',width: '100', title: '楂樺害', sortable: true,showOverflow:"ellipsis"},
+    {field: 'thickness', width: '80',title: '鍘氬害', sortable: true},
+    {field: 'width',width: '100', title: '瀹藉害', sortable: true},
+    {field: 'lastMonthQuantity', width: '100',title: '涓婃湀鏁伴噺', sortable: true},
+    {field: 'lastMonthArea',width: '100', title: '涓婃湀闈㈢Н', sortable: true},
+    {field: 'thisMonthReceivedQuantity', width: '140',title: '鏈湀鍏ュ簱鏁伴噺', sortable: true},
+    {field: 'thisMonthReceivedArea',width: '140', title: '鏈湀鍏ュ簱闈㈢Н', sortable: true},
+    {field: 'thisMonthIssuedQuantity', width: '140',title: '鏈湀鍑哄簱鏁伴噺', sortable: true},
+    {field: 'thisMonthIssuedArea',width: '140', title: '鏈湀鍑哄簱闈㈢Н', sortable: true},
+    {field: 'thisMonthInventoryQuantity',width: '140', title: '鏈湀搴撳瓨鏁伴噺', sortable: true},
+    {field: 'thisMonthInventoryArea',width: '140', title: '鏈湀搴撳瓨闈㈢Н', sortable: true},
+  ],//琛ㄥご鎸夐挳
+  toolbarConfig: {
+    // buttons: [{
+    //   'name': '鏌ヨ',
+    //   'code':'add'
+    // },],
+    import: false,
+    export: true,
+    print: true,
+    zoom: true,
+    custom: true
+  },
+  data:  [
+    {
+      'month':'3',
+      'unit':'浠�',
+      'materialCode':'KF2023122101',
+      'materialName':'鍏墰鎻掑骇',
+      'height':'0',
+      'thickness':'0',
+      'width':'0',
+      'lastMonthQuantity':'100',
+      'lastMonthArea':'0',
+      'thisMonthReceivedQuantity':'100',
+      'thisMonthReceivedArea':'0',
+      'thisMonthIssuedQuantity':'23',
+      'thisMonthIssuedArea':'0',
+      'thisMonthInventoryQuantity':'77',
+      'thisMonthInventoryArea':'0',
+    },
+    {
+      'month':'3',
+      'unit':'浠�',
+      'materialCode':'KF2023122101',
+      'materialName':'鍏墰鎻掑骇',
+      'height':'0',
+      'thickness':'0',
+      'width':'0',
+      'lastMonthQuantity':'100',
+      'lastMonthArea':'0',
+      'thisMonthReceivedQuantity':'100',
+      'thisMonthReceivedArea':'0',
+      'thisMonthIssuedQuantity':'23',
+      'thisMonthIssuedArea':'0',
+      'thisMonthInventoryQuantity':'77',
+      'thisMonthInventoryArea':'0',
+    },
+    {
+      'month':'3',
+      'unit':'浠�',
+      'materialCode':'KF2023122101',
+      'materialName':'鍏墰鎻掑骇',
+      'height':'0',
+      'thickness':'0',
+      'width':'0',
+      'lastMonthQuantity':'100',
+      'lastMonthArea':'0',
+      'thisMonthReceivedQuantity':'100',
+      'thisMonthReceivedArea':'0',
+      'thisMonthIssuedQuantity':'23',
+      'thisMonthIssuedArea':'0',
+      'thisMonthInventoryQuantity':'77',
+      'thisMonthInventoryArea':'0',
+    },
+  ],//table body瀹為檯鏁版嵁
+  footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
+    return[
+      columns.map((column, columnIndex) => {
+        if (columnIndex === 0) {
+          return '鍚堣:'
+        }
+        // if (props.tableProp.footList.includes(column.field)) {
+        //   return sumNum(data, column.field)
+        // }
+        return ''
+      })
+    ]
+  }
+
+})
+
+const  xGrid = ref();
+
+const gridEvents = {
+  toolbarButtonClick ({ code }) {
+    const $grid = xGrid.value
+    if ($grid) {
+      switch (code) {
+        case 'add': {
+
+          router.push({path: '/main/trader/CreateTrader'})
+          /*if($grid.getCheckboxRecords().length==0){
+            VXETable.modal.message( '璇烽�夋嫨涓�鏉℃暟鎹紒')
+            return
+          }*/
+          return;
+        }
+
+      }
+    }
+  },
+  toolbarToolClick ({ code }) {
+    const $grid = xGrid.value
+    if ($grid) {
+      switch (code) {
+        case 'myPrint': {
+          $grid.print()
+          break
+        }
+      }
+    }
+  },
 }
 
 
 
+</script>
+
+<template>
+  <div class="main-div-customer">
+    <el-row gutter="10" >
+      <el-col :span="2.5">
+        <div class="label-text">鏌ヨ杈呮枡鎶ヨ〃鏃ユ湡</div>
+      </el-col>
+      <el-col :span="4">
+        <el-date-picker
+            type="daterange"
+            start-placeholder="寮�濮嬫椂闂�"
+            end-placeholder="缁撴潫鏃堕棿"
+            style="width: 200px;"
+        />
+      </el-col>
+      <el-col span="4">
+        <el-button id="searchButton" type="primary" :icon="Search">鏌ヨ鎶ヨ〃</el-button>
+      </el-col>
+    </el-row>
+    <vxe-grid
+        max-height="100%"
+        @filter-change="filterChanged"
+        class="mytable-scrollbar"
+        ref="xGrid"
+        v-bind="gridOptions"
+        v-on="gridEvents"
+
+    >
+      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
+      <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
+      <template #content="{ row}">
+        <ul class="expand-wrapper">
+          <li  v-for="(item,key,index) in row">
+            <span style="font-weight: bold">{{key+':  '}}</span>
+            <span>{{ item }}</span>
+          </li>
+        </ul>
+      </template>
+
+      <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
+      <template #button_slot="{ row }">
+        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">缂栬緫</el-button>
+        <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">鍒犻櫎</el-button>
+      </template>
+
+      <template #num1_filter="{ column, $panel }">
+        <div>
+          <div v-for="(option, index) in column.filters" :key="index">
+            <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
+          </div>
+        </div>
+      </template>
 
 
-.label-text {
-  font-weight: bold;
+    </vxe-grid>
+  </div>
+</template>
+
+<style scoped>
+.main-div-customer{
+  width: 99%;
+  height: 100%;
 }
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/CreateOutBound.vue b/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/CreateOutBound.vue
new file mode 100644
index 0000000..f34a0a3
--- /dev/null
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/CreateOutBound.vue
@@ -0,0 +1,225 @@
+<!--鐗╂枡鍑哄簱-->
+
+
+<script setup>
+
+import {reactive} from "vue";
+import {useRouter} from  'vue-router'
+let router=useRouter()
+const getTableRow = (row,type) =>{
+  switch (type) {
+    case 'edit' :{
+      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+      // router.push({path: '/main/trader/CreateTrader', query: { id: row.id }})
+      break
+    }
+    case 'delete':{
+      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
+      break
+    }
+  }
+}
+
+
+
+//瀛愮粍浠舵帴鏀跺弬鏁�
+
+const gridOptions = reactive({
+  border:  "full",//琛ㄦ牸鍔犺竟妗�
+  keepSource: true,//淇濇寔婧愭暟鎹�
+  align: 'center',//鏂囧瓧灞呬腑
+  stripe:true,//鏂戦┈绾�
+  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
+  id: 'CustomerList',
+  showFooter: true,//鏄剧ず鑴�
+  printConfig: {},
+  importConfig: {},
+  exportConfig: {},
+  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
+  showOverflow:true,
+  columnConfig: {
+    resizable: true,
+    useKey: true
+  },
+  filterConfig: {   //绛涢�夐厤缃」
+    remote: true
+  },
+  customConfig: {
+    storage: true
+  },
+  editConfig: {
+    trigger: 'click',
+    mode: 'row',
+    showStatus: true
+  },//琛ㄥご鍙傛暟
+  columns:[
+    {type:'expand',fixed:"left",slots: { content:'content' },width: '50'},
+    { type: 'checkbox',fixed:"left", title: '閫夋嫨', width: '80' },
+    // { type: 'seq',fixed:"left", title: '鑷簭', width: '80' },
+    {title: '鎿嶄綔', width: '110', slots: { default: 'button_slot' },fixed:"left"},
+    {field: 'MaterialCode', width: '150',title: '鐗╂枡缂栫爜', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'MaterialName', width: '120',title: '鐗╂枡鍚嶇О', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'InventoryCount',width: '100', title: '搴撳瓨鏁伴噺', sortable: true},
+    {field: 'OutNum', width:'150', title: '鍑哄簱鏁伴噺', sortable: true,editRender: { name: 'input', attrs: { placeholder: '' } } },
+    {field: 'Origin', width: '100',title: '浜у湴', sortable: true},
+    {field: 'Width', width: '80',title: '瀹藉害', sortable: true},
+    {field: 'Height',width: '100', title: '楂樺害', sortable: true},
+    {field: 'Thickness', width: '100',title: '鍘氬害', sortable: true},
+    {field: 'MainUnit',width: '100', title: '鍗曚綅', sortable: true},
+    {field: 'SafetyStock', width: '100',title: '鍗曠墖闈㈢Н', sortable: true},
+    {field: 'AvailableInventory', width: '100',title: '鎹㈢畻鐜�', sortable: true},
+    {field: 'UnclaimedQuantity',width: '140', title: '鏈鍙栨暟閲�', sortable: true},
+    {field: 'TotalArea',width: '100', title: '搴撳尯', sortable: true,editRender: { name: 'input', attrs: { placeholder: '' } }},
+    {field: 'ProductionDate',width: '100', title: '搴撲綅', sortable: true,editRender: { name: 'input', attrs: { placeholder: '' } }},
+    {field: 'ShelfLife',width: '100', title: '宸ョ▼鍗曞彿', sortable: true},
+    {field: 'LocationNumber',width: '100', title: '鐢熶骇鏃ユ湡', sortable: true},
+    {field: 'remark',width: '80', title: '澶囨敞', sortable: true,editRender: { name: 'input', attrs: { placeholder: '' } }},
+  ],//琛ㄥご鎸夐挳
+  toolbarConfig: {
+    buttons: [{
+      'name': '鎻愪氦',status:'primary'
+    }],
+    import: false,
+    export: true,
+    print: true,
+    zoom: true,
+    custom: true
+  },
+  data:  [
+
+  ],//table body瀹為檯鏁版嵁
+  footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
+    return[
+      columns.map((column, columnIndex) => {
+        if (columnIndex === 0) {
+          return '鍚堣:'
+        }
+        // if (props.tableProp.footList.includes(column.field)) {
+        //   return sumNum(data, column.field)
+        // }
+        return ''
+      })
+    ]
+  }
+
+})
+
+
+
+</script>
+
+<template>
+  <el-row gutter="10" >
+    <el-col :span="2.5">
+      <div class="label-text">棰嗘枡鏃ユ湡</div>
+    </el-col>
+    <el-col :span="4">
+      <el-date-picker
+          type="daterange"
+          start-placeholder="寮�濮嬫椂闂�"
+          end-placeholder="缁撴潫鏃堕棿"
+          style="width: 200px;height: 30px"
+      />
+    </el-col>
+    <el-col :span="4">
+    <el-input v-model="productName" placeholder="璇疯緭鍏ラ鏂欏憳鍚嶇О" style="width: 200px; height: 30px;" />
+    </el-col>
+    <el-col :span="4">
+    <el-input v-model="banzu" placeholder="璇疯緭鍏ラ鏂欑彮缁�" style="width: 200px; height: 30px;" />
+    </el-col>
+    <el-col :span="7">
+    浠撶鍛�<el-input v-model="banzu" placeholder="鐜嬬繝鍏�" style="width: 200px; height: 30px;" />
+    </el-col>
+<!--    <el-col span="4">-->
+<!--      <el-button id="searchButton" type="primary" :icon="Search">鏌ヨ鎶ヨ〃</el-button>-->
+<!--    </el-col>-->
+  </el-row>
+
+  <el-row gutter="10" >
+    <el-col :span="2.5">
+      <div class="label-text">搴撳瓨缁勭粐</div>
+    </el-col>
+    <el-col :span="4">
+                  <el-dropdown>
+                    <el-button type="primary">
+                      璇烽�夋嫨搴撳瓨缁勭粐<el-icon class="el-icon--right" style="width: 66px;height: 30px"><arrow-down /></el-icon>
+                    </el-button>
+                    <template #dropdown>
+                      <el-dropdown-menu>
+                        <el-dropdown-item>浜哄伐搴�</el-dropdown-item>
+                        <el-dropdown-item>璁″垝搴�</el-dropdown-item>
+                        <el-dropdown-item>鑷姩鍖栧簱</el-dropdown-item>
+                      </el-dropdown-menu>
+                    </template>
+                  </el-dropdown>
+                </el-col>
+
+    <el-col :span="4">
+      <el-dropdown>
+        <el-button type="primary">
+          璇烽�夋嫨鍑哄簱绫诲瀷<el-icon class="el-icon--right" style="width:66px;"><arrow-down /></el-icon>
+        </el-button>
+        <template #dropdown>
+          <el-dropdown-menu>
+            <el-dropdown-item>鏍囧噯鍑哄簱</el-dropdown-item>
+            <el-dropdown-item>琛ュ崟棰嗘枡</el-dropdown-item>
+            <el-dropdown-item>杩斿伐棰嗘枡</el-dropdown-item>
+          </el-dropdown-menu>
+        </template>
+      </el-dropdown>
+    </el-col>
+    <el-col :span="12">
+      <el-input v-model="banzu" placeholder="璇疯緭鍏ラ攢鍞崟鍙�" style="width: 200px; height: 30px;" />
+    </el-col>
+<!--    <el-col span="4">-->
+<!--      <el-button id="searchButton" type="primary" :icon="Search">鎻愪氦</el-button>-->
+<!--    </el-col>-->
+    <!--    <el-col span="4">-->
+    <!--      <el-button id="searchButton" type="primary" :icon="Search">鏌ヨ鎶ヨ〃</el-button>-->
+    <!--    </el-col>-->
+  </el-row>
+  <div class="main-div-customer">
+    <vxe-grid
+        max-height="100%"
+        @filter-change="filterChanged"
+        class="mytable-scrollbar"
+        ref="xGrid"
+        v-bind="gridOptions"
+
+    >
+      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
+      <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
+      <template #content="{ row}">
+        <ul class="expand-wrapper">
+          <li  v-for="(item,key,index) in row">
+            <span style="font-weight: bold">{{key+':  '}}</span>
+            <span>{{ item }}</span>
+          </li>
+        </ul>
+      </template>
+
+      <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
+      <template #button_slot="{ row }">
+        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">缂栬緫</el-button>
+        <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">鍒犻櫎</el-button>
+      </template>
+
+      <template #num1_filter="{ column, $panel }">
+        <div>
+          <div v-for="(option, index) in column.filters" :key="index">
+            <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
+          </div>
+        </div>
+      </template>
+
+
+    </vxe-grid>
+  </div>
+</template>
+
+<style scoped>
+.main-div-customer{
+  width: 99%;
+  height: 100%;
+}
+</style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/IngredientsStock.vue b/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/IngredientsStock.vue
index 476517e..4904079 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/IngredientsStock.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/IngredientsStock.vue
@@ -19,9 +19,11 @@
   <div id="main">
     <div id="div-title">
       <el-breadcrumb :separator-icon="ArrowRight">
-        <el-breadcrumb-item :to="{ path: '/main/ingredientsStock/SelectIngredientsStock' }">浜у搧鏌ヨ</el-breadcrumb-item>
+        <el-breadcrumb-item :to="{ path: '/main/ingredientsStock/SelectIngredientsStock' }">鐗╂枡搴撳瓨</el-breadcrumb-item>
+        <el-breadcrumb-item :to="{ path: '/main/ingredientsStock/MaterialOutbound' }">鐗╂枡鍑哄簱</el-breadcrumb-item>
         <el-breadcrumb-item :to="{ path: '/main/ingredientsStock/OriginalMonthlySettlement' }">鍘熺墖鏈堢粨</el-breadcrumb-item>
         <el-breadcrumb-item :to="{ path: '/main/ingredientsStock/AccessoriesMonthlySettlement' }">杈呮枡鏈堢粨</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/mm/mainIngredientStock/MaterialOutbound.vue b/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/MaterialOutbound.vue
new file mode 100644
index 0000000..5c370a7
--- /dev/null
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/MaterialOutbound.vue
@@ -0,0 +1,244 @@
+<!--鐗╂枡鍑哄簱-->
+
+
+<script setup>
+
+import {reactive, ref} from "vue";
+import {useRouter} from  'vue-router'
+let router=useRouter()
+const getTableRow = (row,type) =>{
+  switch (type) {
+    case 'edit' :{
+      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+      // router.push({path: '/main/trader/CreateTrader', query: { id: row.id }})
+      break
+    }
+    case 'delete':{
+      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
+      break
+    }
+  }
+}
+
+
+
+//瀛愮粍浠舵帴鏀跺弬鏁�
+
+const gridOptions = reactive({
+  border:  "full",//琛ㄦ牸鍔犺竟妗�
+  keepSource: true,//淇濇寔婧愭暟鎹�
+  align: 'center',//鏂囧瓧灞呬腑
+  stripe:true,//鏂戦┈绾�
+  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
+  id: 'CustomerList',
+  showFooter: true,//鏄剧ず鑴�
+  printConfig: {},
+  importConfig: {},
+  exportConfig: {},
+  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
+  showOverflow:true,
+  columnConfig: {
+    resizable: true,
+    useKey: true
+  },
+  filterConfig: {   //绛涢�夐厤缃」
+    remote: true
+  },
+  customConfig: {
+    storage: true
+  },
+  editConfig: {
+    trigger: 'click',
+    mode: 'row',
+    showStatus: true
+  },//琛ㄥご鍙傛暟
+  columns:[
+    {type:'expand',fixed:"left",slots: { content:'content' },width: '50'},
+    { type: 'checkbox',fixed:"left", title: '閫夋嫨', width: '80' },
+    { type: 'seq',fixed:"left", title: '鑷簭', width: '80' },
+    {title: '鎿嶄綔', width: '110', slots: { default: 'button_slot' },fixed:"left"},
+    {field: 'InventoryOrganization', width:'150', title: '搴撳瓨缁勭粐', sortable: true,editRender: { name: 'input', attrs: { placeholder: '' } } },
+    {field: 'MaterialCode', width: '150',title: '鐗╂枡缂栫爜', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'MaterialName', width: '120',title: '鐗╂枡鍚嶇О', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'InventoryCount',width: '100', title: '搴撳瓨鏁伴噺', sortable: true},
+    {field: 'OutNum', width:'150', title: '鍑哄簱鏁伴噺', sortable: true,editRender: { name: 'input', attrs: { placeholder: '' } } },
+    {field: 'Origin', width: '100',title: '浜у湴', sortable: true},
+    {field: 'InventoryNumber',width: '100', title: '搴撳瓨缂栧彿', sortable: true,showOverflow:"ellipsis"},
+    {field: 'Width', width: '80',title: '瀹藉害', sortable: true},
+    {field: 'Height',width: '100', title: '楂樺害', sortable: true},
+    {field: 'Thickness', width: '100',title: '鍘氬害', sortable: true},
+    {field: 'MainUnit',width: '100', title: '涓诲崟浣�', sortable: true},
+    {field: 'SafetyStock', width: '100',title: '瀹夊叏搴撳瓨', sortable: true},
+    {field: 'AvailableInventory', width: '100',title: '鍙敤搴撳瓨', sortable: true},
+    {field: 'UnclaimedQuantity',width: '140', title: '鏈鍙栨暟閲�', sortable: true},
+    {field: 'TotalArea',width: '100', title: '鎬婚潰绉�', sortable: true},
+    {field: 'ProductionDate',width: '100', title: '鐢熶骇鏃ユ湡', sortable: true},
+    {field: 'ShelfLife',width: '100', title: '淇濊川鏈�', sortable: true},
+    {field: 'LocationNumber',width: '100', title: '搴撲綅缂栧彿', sortable: true},
+    {field: 'StorageArea',width: '100', title: '瀛樺偍鍖哄煙', sortable: true},
+    {field: 'Location',width: '100', title: '搴撲綅', sortable: true},
+    {field: 'BacklogInventory',width: '100', title: '绉帇搴撳瓨', sortable: true},
+    {field: 'remark',width: '80', title: '澶囨敞', sortable: true},
+  ],//琛ㄥご鎸夐挳
+  toolbarConfig: {
+    buttons: [{
+      code:'add','name': '鍑哄簱鏂板',status:'primary'
+    }],
+    import: false,
+    export: true,
+    print: true,
+    zoom: true,
+    custom: true
+  },
+  data:  [
+    {
+      "InventoryOrganization": "浜哄伐搴�",
+      "MaterialCode": "700900000000115",
+      "MaterialName": "鍐170",
+      "Origin": "China",
+      "InventoryNumber": "KC2006891",
+      "Width": '',
+      "Height": "",
+      "Thickness": "",
+      "MainUnit": "浠�",
+      "SafetyStock": "5",
+      "InventoryCount": "20",
+      "AvailableInventory": "9",
+      "UnclaimedQuantity": "2",
+      "TotalArea": "0",
+      "ProductionDate": "2016-10-17",
+      "ShelfLife": "0",
+      "LocationNumber": "0",
+      "StorageArea": "0",
+      "Location": "0",
+      "BacklogInventory": "40",
+      "remark": "娴嬭瘯",
+    },
+    {
+      "InventoryOrganization": "浜哄伐搴�",
+      "MaterialCode": "700900000000115",
+      "MaterialName": "鍐175",
+      "Origin": "China",
+      "InventoryNumber": "KC2006891",
+      "Width": '',
+      "Height": "",
+      "Thickness": "",
+      "MainUnit": "浠�",
+      "SafetyStock": "5",
+      "InventoryCount": "20",
+      "AvailableInventory": "9",
+      "UnclaimedQuantity": "2",
+      "TotalArea": "0",
+      "ProductionDate": "2016-10-17",
+      "ShelfLife": "0",
+      "LocationNumber": "0",
+      "StorageArea": "0",
+      "Location": "0",
+      "BacklogInventory": "40",
+      "remark": "娴嬭瘯",
+    },{
+      "InventoryOrganization": "浜哄伐搴�",
+      "MaterialCode": "700900000000115",
+      "MaterialName": "鍐180",
+      "Origin": "China",
+      "InventoryNumber": "KC2006891",
+      "Width": '',
+      "Height": "",
+      "Thickness": "",
+      "MainUnit": "浠�",
+      "SafetyStock": "2",
+      "InventoryCount": "23",
+      "AvailableInventory": "4",
+      "UnclaimedQuantity": "3",
+      "TotalArea": "0",
+      "ProductionDate": "2016-10-17",
+      "ShelfLife": "0",
+      "LocationNumber": "0",
+      "StorageArea": "0",
+      "Location": "0",
+      "BacklogInventory": "40",
+      "remark": "娴嬭瘯",
+    },
+  ],//table body瀹為檯鏁版嵁
+  footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
+    return[
+      columns.map((column, columnIndex) => {
+        if (columnIndex === 0) {
+          return '鍚堣:'
+        }
+        // if (props.tableProp.footList.includes(column.field)) {
+        //   return sumNum(data, column.field)
+        // }
+        return ''
+      })
+    ]
+  }
+
+})
+
+const  xGrid = ref();
+const gridEvents = {
+  toolbarButtonClick({ code }) {
+    const $grid = xGrid.value
+    if($grid){
+      switch (code){
+        case 'add':{
+          /*VXETable.modal.confirm('鐐瑰嚮浜嗗簱瀛樿皟鎷�');*/
+          router.push({path: '/main/ingredientsStock/CreateOutbound'});
+          return;
+          break
+        }
+      }
+    }
+  }
+}
+
+
+</script>
+
+<template>
+  <div class="main-div-customer">
+    <vxe-grid
+        max-height="100%"
+        @filter-change="filterChanged"
+        class="mytable-scrollbar"
+        ref="xGrid"
+        v-bind="gridOptions"
+        v-on="gridEvents"
+    >
+      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
+      <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
+      <template #content="{ row}">
+        <ul class="expand-wrapper">
+          <li  v-for="(item,key,index) in row">
+            <span style="font-weight: bold">{{key+':  '}}</span>
+            <span>{{ item }}</span>
+          </li>
+        </ul>
+      </template>
+
+      <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
+      <template #button_slot="{ row }">
+        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">缂栬緫</el-button>
+        <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">鍒犻櫎</el-button>
+      </template>
+
+      <template #num1_filter="{ column, $panel }">
+        <div>
+          <div v-for="(option, index) in column.filters" :key="index">
+            <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
+          </div>
+        </div>
+      </template>
+
+
+    </vxe-grid>
+  </div>
+</template>
+
+<style scoped>
+.main-div-customer{
+  width: 99%;
+  height: 100%;
+}
+</style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/OriginalMonthlySettlement.vue b/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/OriginalMonthlySettlement.vue
index 866a79b..a5f6bf3 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/OriginalMonthlySettlement.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/OriginalMonthlySettlement.vue
@@ -1,81 +1,253 @@
-<!-- 鍘熺墖鏈堢粨  -->
+<script setup>
+
+import {reactive, ref} from "vue";
+import {useRouter} from  'vue-router'
+import {VXETable} from "vxe-table";
+let router=useRouter()
+const getTableRow = (row,type) =>{
+  switch (type) {
+    case 'edit' :{
+      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+      router.push({path: '/main/trader/CreateTrader', query: { id: row.id }})
+      break
+    }
+    case 'delete':{
+      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
+      break
+    }
 
 
-<script lang="ts" setup>
+  }
+}
 
-</script>
-<template>
-  <div>
-    <div>
-      <el-form>
-        <el-row gutter="10" >
-        <el-col :span="2.5">
-          <div class="label-text">鏌ヨ鍘熺墖鎶ヨ〃鏃ユ湡</div>
-        </el-col>
-        <el-col :span="4">
-          <el-date-picker
-              type="daterange"
-              start-placeholder="寮�濮嬫椂闂�"
-              end-placeholder="缁撴潫鏃堕棿"
-              style="width: 200px;"
-          />
-        </el-col>
-          <el-col :span="4">
-            <el-dropdown>
-              <el-button type="primary">
-                鍘熺墖<el-icon class="el-icon--right" style="width: 66px;"><arrow-down /></el-icon>
-              </el-button>
-              <template #dropdown>
-                <el-dropdown-menu>
-                  <el-dropdown-item>鍘熺墖</el-dropdown-item>
-                  <el-dropdown-item>浣欐枡</el-dropdown-item>
-                </el-dropdown-menu>
-              </template>
-            </el-dropdown>
-          </el-col>
-          <el-col :span="4">
-            <el-button id="searchButton" type="primary" :icon="Search">鏌ヨ鎶ヨ〃</el-button>
-          </el-col>
-        </el-row>
-      </el-form>
-    </div>
-    <div>
-      <div>
-        <el-table :data="tableData" border style="width: 100%">
-          <el-table-column prop="鑷簭" label="鑷簭" width="100" />
-          <el-table-column prop="鏈堜唤" label="鏈堜唤" width="100" />
-          <el-table-column prop="鍗曚綅" label="鍗曚綅" width="60"/>
-          <el-table-column prop="鐗╂枡缂栫爜" label="鐗╂枡缂栫爜" width="100"/>
-          <el-table-column prop="鐗╂枡鍚嶇О" label="鐗╂枡鍚嶇О" width="100"/>
-          <el-table-column prop="楂樺害" label="楂樺害" width="100"/>
-          <el-table-column prop="鍘氬害" label="鍘氬害" width="100"/>
-          <el-table-column prop="瀹藉害" label="瀹藉害" width="100"/>
-          <el-table-column prop="涓婃湀鏁伴噺" label="涓婃湀鏁伴噺" width="100"/>
-          <el-table-column prop="涓婃湀闈㈢Н" label="涓婃湀闈㈢Н" width="100"/>
-          <el-table-column prop="鏈湀鍏ュ簱鏁伴噺" label="鏈湀鍏ュ簱鏁伴噺" width="110"/>
-          <el-table-column prop="鏈湀鍏ュ簱闈㈢Н" label="鏈湀鍏ュ簱闈㈢Н" width="110"/>
-          <el-table-column prop="鏈湀鍑哄簱鏁伴噺" label="鏈湀鍑哄簱鏁伴噺" width="110"/>
-          <el-table-column prop="鏈湀鍑哄簱闈㈢Н" label="鏈湀鍑哄簱闈㈢Н" width="110"/>
-          <el-table-column prop="鏈湀搴撳瓨鏁伴噺" label="鏈湀搴撳瓨鏁伴噺" width="110"/>
-          <el-table-column prop="鏈湀搴撳瓨闈㈢Н" label="鏈湀搴撳瓨闈㈢Н" width="110"/>
-        </el-table>
-    </div>
-  </div>
-  </div>
-</template>
-<style>
-.centered-box {
-  display: flex;
-  justify-content: center;
-  align-items: center;
-  height: 100vh;
+//瀛愮粍浠舵帴鏀跺弬鏁�
+
+const gridOptions = reactive({
+  border:  "full",//琛ㄦ牸鍔犺竟妗�
+  keepSource: true,//淇濇寔婧愭暟鎹�
+  align: 'center',//鏂囧瓧灞呬腑
+  stripe:true,//鏂戦┈绾�
+  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
+  id: 'CustomerList',
+  showFooter: true,//鏄剧ず鑴�
+  printConfig: {},
+  importConfig: {},
+  exportConfig: {},
+  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
+  showOverflow:true,
+  columnConfig: {
+    resizable: true,
+    useKey: true
+  },
+  filterConfig: {   //绛涢�夐厤缃」
+    remote: true
+  },
+  customConfig: {
+    storage: true
+  },
+  editConfig: {
+    trigger: 'click',
+    mode: 'row',
+    showStatus: true
+  },//琛ㄥご鍙傛暟
+  columns:  [
+    {type:'expand',fixed:"left",slots: { content:'content' },width: '50'},
+    // { type: 'checkbox',fixed:"left", title: '閫夋嫨', width: '80' },
+    { type: 'seq',fixed:"left", title: '鑷簭', width: '80' },
+    // {title: '鎿嶄綔', width: '110', slots: { default: 'button_slot' },fixed:"left"},
+    {field: 'month', width:'150', title: '鏈堜唤', sortable: true,editRender: { name: 'input' },filters:[{ data: '' }],slots: { filter: 'num1_filter' } },
+    {field: 'unit', width: '150',title: '鍗曚綅', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'materialCode', width: '120',title: '鐗╂枡缂栫爜', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'materialName', width: '100',title: '鐗╂枡鍚嶇О', sortable: true},
+    {field: 'height',width: '100', title: '楂樺害', sortable: true,showOverflow:"ellipsis"},
+    {field: 'thickness', width: '80',title: '鍘氬害', sortable: true},
+    {field: 'width',width: '100', title: '瀹藉害', sortable: true},
+    {field: 'lastMonthQuantity', width: '100',title: '涓婃湀鏁伴噺', sortable: true},
+    {field: 'lastMonthArea',width: '100', title: '涓婃湀闈㈢Н', sortable: true},
+    {field: 'thisMonthReceivedQuantity', width: '140',title: '鏈湀鍏ュ簱鏁伴噺', sortable: true},
+    {field: 'thisMonthReceivedArea',width: '140', title: '鏈湀鍏ュ簱闈㈢Н', sortable: true},
+    {field: 'thisMonthIssuedQuantity', width: '140',title: '鏈湀鍑哄簱鏁伴噺', sortable: true},
+    {field: 'thisMonthIssuedArea',width: '140', title: '鏈湀鍑哄簱闈㈢Н', sortable: true},
+    {field: 'thisMonthInventoryQuantity',width: '140', title: '鏈湀搴撳瓨鏁伴噺', sortable: true},
+    {field: 'thisMonthInventoryArea',width: '140', title: '鏈湀搴撳瓨闈㈢Н', sortable: true},
+  ],//琛ㄥご鎸夐挳
+  toolbarConfig: {
+    // buttons: [{
+    //   'name': '鏌ヨ',
+    //   'code':'add'
+    // },],
+    import: false,
+    export: true,
+    print: true,
+    zoom: true,
+    custom: true
+  },
+  data:  [
+    {
+    'month':'3',
+    'unit':'mm',
+    'materialCode':'KF2023122101',
+    'materialName':'鏅�氶挗鍖栫幓鐠�',
+    'height':'110.20',
+    'thickness':'3.00',
+    'width':'90.40',
+    'lastMonthQuantity':'100',
+    'lastMonthArea':'0',
+    'thisMonthReceivedQuantity':'100',
+    'thisMonthReceivedArea':'0',
+    'thisMonthIssuedQuantity':'23',
+    'thisMonthIssuedArea':'0',
+    'thisMonthInventoryQuantity':'77',
+    'thisMonthInventoryArea':'0',
+    },
+    {
+      'month':'3',
+      'unit':'mm',
+      'materialCode':'KF2023122101',
+      'materialName':'鏅�氶挗鍖栫幓鐠�',
+      'height':'224.50',
+      'thickness':'5.00',
+      'width':'120.80',
+      'lastMonthQuantity':'100',
+      'lastMonthArea':'0',
+      'thisMonthReceivedQuantity':'100',
+      'thisMonthReceivedArea':'0',
+      'thisMonthIssuedQuantity':'23',
+      'thisMonthIssuedArea':'0',
+      'thisMonthInventoryQuantity':'77',
+      'thisMonthInventoryArea':'0',
+    },
+    {
+      'month':'3',
+      'unit':'mm',
+      'materialCode':'KF2023122101',
+      'materialName':'鏅�氶挗鍖栫幓鐠�',
+      'height':'190.00',
+      'thickness':'4.00',
+      'width':'90.00',
+      'lastMonthQuantity':'100',
+      'lastMonthArea':'0',
+      'thisMonthReceivedQuantity':'100',
+      'thisMonthReceivedArea':'0',
+      'thisMonthIssuedQuantity':'23',
+      'thisMonthIssuedArea':'0',
+      'thisMonthInventoryQuantity':'77',
+      'thisMonthInventoryArea':'0',
+    },
+  ],//table body瀹為檯鏁版嵁
+  footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
+    return[
+      columns.map((column, columnIndex) => {
+        if (columnIndex === 0) {
+          return '鍚堣:'
+        }
+        // if (props.tableProp.footList.includes(column.field)) {
+        //   return sumNum(data, column.field)
+        // }
+        return ''
+      })
+    ]
+  }
+
+})
+
+const  xGrid = ref();
+
+const gridEvents = {
+  toolbarButtonClick ({ code }) {
+    const $grid = xGrid.value
+    if ($grid) {
+      switch (code) {
+        case 'add': {
+
+          router.push({path: '/main/trader/CreateTrader'})
+          /*if($grid.getCheckboxRecords().length==0){
+            VXETable.modal.message( '璇烽�夋嫨涓�鏉℃暟鎹紒')
+            return
+          }*/
+          return;
+        }
+
+      }
+    }
+  },
+  toolbarToolClick ({ code }) {
+    const $grid = xGrid.value
+    if ($grid) {
+      switch (code) {
+        case 'myPrint': {
+          $grid.print()
+          break
+        }
+      }
+    }
+  },
 }
 
 
 
+</script>
+
+<template>
+  <div class="main-div-customer">
+    <el-row gutter="10" >
+      <el-col :span="2.5">
+        <div class="label-text">鏌ヨ鍘熺墖鎶ヨ〃鏃ユ湡</div>
+      </el-col>
+      <el-col :span="4">
+        <el-date-picker
+            type="daterange"
+            start-placeholder="寮�濮嬫椂闂�"
+            end-placeholder="缁撴潫鏃堕棿"
+            style="width: 200px;"
+        />
+      </el-col>
+    <el-col span="4">
+      <el-button id="searchButton" type="primary" :icon="Search">鏌ヨ鎶ヨ〃</el-button>
+    </el-col>
+    </el-row>
+    <vxe-grid
+        max-height="100%"
+        @filter-change="filterChanged"
+        class="mytable-scrollbar"
+        ref="xGrid"
+        v-bind="gridOptions"
+        v-on="gridEvents"
+
+    >
+      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
+      <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
+      <template #content="{ row}">
+        <ul class="expand-wrapper">
+          <li  v-for="(item,key,index) in row">
+            <span style="font-weight: bold">{{key+':  '}}</span>
+            <span>{{ item }}</span>
+          </li>
+        </ul>
+      </template>
+
+      <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
+      <template #button_slot="{ row }">
+        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">缂栬緫</el-button>
+        <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">鍒犻櫎</el-button>
+      </template>
+
+      <template #num1_filter="{ column, $panel }">
+        <div>
+          <div v-for="(option, index) in column.filters" :key="index">
+            <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
+          </div>
+        </div>
+      </template>
 
 
-.label-text {
-  font-weight: bold;
+    </vxe-grid>
+  </div>
+</template>
+
+<style scoped>
+.main-div-customer{
+  width: 99%;
+  height: 100%;
 }
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/SelectIngredientsStock.vue b/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/SelectIngredientsStock.vue
index 203d782..c56a4e2 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/SelectIngredientsStock.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/SelectIngredientsStock.vue
@@ -1,277 +1,224 @@
-<!-- 鐗╂枡搴撳瓨 -->
-<script lang="ts" setup>
-import { ref } from 'vue';
-const name = ref('')
-const productName = ref('')
-const salId = ref('')
-let tableData = ref([
-  {
-    "搴撳瓨缁勭粐":'浜哄伐搴�',
-    "鐗╂枡缂栫爜":'700900000000122',
-    "鐗╂枡鍚嶇О":'澶忚 鍝佺',
-    "浜у湴":'',
-    "搴撳瓨缂栧彿":'KC2006891',
-    "瀹藉害":'0.00',
-    "楂樺害":'0.00',
-    "鍘氬害":'0.00',
-    "涓诲崟浣�":'浠�',
-    "瀹夊叏搴撳瓨":'0.00',
-    "搴撳瓨鏁�":'20.00',
-    "鍙敤搴撳瓨":'',
-    "鏈鍙栨暟閲�":'',
-    "鎬婚潰绉�":'0.0000',
-    "鐢熶骇鏃ユ湡":'2016-10-17',
-    "淇濊川鏈�":'',
-    "搴撲綅缂栧彿":'',
-    "搴撳尯":'',
-    "搴撲綅":'',
-    "绉帇搴撳瓨":'40',
-    "澶囨敞":'',
+<script setup>
 
+import {reactive} from "vue";
+import {useRouter} from  'vue-router'
+let router=useRouter()
+const getTableRow = (row,type) =>{
+  switch (type) {
+    case 'edit' :{
+      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+      router.push({path: '/main/trader/CreateTrader', query: { id: row.id }})
+      break
+    }
+    case 'delete':{
+      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
+      break
+    }
+  }
+}
+
+
+
+//瀛愮粍浠舵帴鏀跺弬鏁�
+
+const gridOptions = reactive({
+  border:  "full",//琛ㄦ牸鍔犺竟妗�
+  keepSource: true,//淇濇寔婧愭暟鎹�
+  align: 'center',//鏂囧瓧灞呬腑
+  stripe:true,//鏂戦┈绾�
+  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
+  id: 'CustomerList',
+  showFooter: true,//鏄剧ず鑴�
+  printConfig: {},
+  importConfig: {},
+  exportConfig: {},
+  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
+  showOverflow:true,
+  columnConfig: {
+    resizable: true,
+    useKey: true
   },
-  {
-    "搴撳瓨缁勭粐":'浜哄伐搴�',
-    "鐗╂枡缂栫爜":'700900000000121',
-    "鐗╂枡鍚嶇О":'澶忚 娴呰摑',
-    "浜у湴":'',
-    "搴撳瓨缂栧彿":'KC2006891',
-    "瀹藉害":'0.00',
-    "楂樺害":'0.00',
-    "鍘氬害":'0.00',
-    "涓诲崟浣�":'浠�',
-    "瀹夊叏搴撳瓨":'0.00',
-    "搴撳瓨鏁�":'20.00',
-    "鍙敤搴撳瓨":'',
-    "鏈鍙栨暟閲�":'',
-    "鎬婚潰绉�":'0.0000',
-    "鐢熶骇鏃ユ湡":'2016-10-17',
-    "淇濊川鏈�":'',
-    "搴撲綅缂栧彿":'',
-    "搴撳尯":'',
-    "搴撲綅":'',
-    "绉帇搴撳瓨":'40',
-    "澶囨敞":'',
-
+  filterConfig: {   //绛涢�夐厤缃」
+    remote: true
   },
-  {
-    "搴撳瓨缁勭粐":'浜哄伐搴�',
-    "鐗╂枡缂栫爜":'700900000000120',
-    "鐗╂枡鍚嶇О":'澶忚 娣辫摑',
-    "浜у湴":'',
-    "搴撳瓨缂栧彿":'KC2006891',
-    "瀹藉害":'0.00',
-    "楂樺害":'0.00',
-    "鍘氬害":'0.00',
-    "涓诲崟浣�":'浠�',
-    "瀹夊叏搴撳瓨":'0.00',
-    "搴撳瓨鏁�":'20.00',
-    "鍙敤搴撳瓨":'',
-    "鏈鍙栨暟閲�":'',
-    "鎬婚潰绉�":'0.0000',
-    "鐢熶骇鏃ユ湡":'2016-10-17',
-    "淇濊川鏈�":'',
-    "搴撲綅缂栧彿":'',
-    "搴撳尯":'',
-    "搴撲綅":'',
-    "绉帇搴撳瓨":'40',
-    "澶囨敞":'',
-
-  },{
-    "搴撳瓨缁勭粐":'浜哄伐搴�',
-    "鐗╂枡缂栫爜":'700900000000119',
-    "鐗╂枡鍚嶇О":'鍐 鍝佺',
-    "浜у湴":'',
-    "搴撳瓨缂栧彿":'KC2006891',
-    "瀹藉害":'0.00',
-    "楂樺害":'0.00',
-    "鍘氬害":'0.00',
-    "涓诲崟浣�":'浠�',
-    "瀹夊叏搴撳瓨":'0.00',
-    "搴撳瓨鏁�":'20.00',
-    "鍙敤搴撳瓨":'',
-    "鏈鍙栨暟閲�":'',
-    "鎬婚潰绉�":'0.0000',
-    "鐢熶骇鏃ユ湡":'2016-10-17',
-    "淇濊川鏈�":'',
-    "搴撲綅缂栧彿":'',
-    "搴撳尯":'',
-    "搴撲綅":'',
-    "绉帇搴撳瓨":'40',
-    "澶囨敞":'',
-
-  },{
-    "搴撳瓨缁勭粐":'浜哄伐搴�',
-    "鐗╂枡缂栫爜":'700900000000118',
-    "鐗╂枡鍚嶇О":'鍐 娣辫摑',
-    "浜у湴":'',
-    "搴撳瓨缂栧彿":'KC2006891',
-    "瀹藉害":'0.00',
-    "楂樺害":'0.00',
-    "鍘氬害":'0.00',
-    "涓诲崟浣�":'浠�',
-    "瀹夊叏搴撳瓨":'0.00',
-    "搴撳瓨鏁�":'20.00',
-    "鍙敤搴撳瓨":'',
-    "鏈鍙栨暟閲�":'',
-    "鎬婚潰绉�":'0.0000',
-    "鐢熶骇鏃ユ湡":'2016-10-17',
-    "淇濊川鏈�":'',
-    "搴撲綅缂栧彿":'',
-    "搴撳尯":'',
-    "搴撲綅":'',
-    "绉帇搴撳瓨":'40',
-    "澶囨敞":'',
-
-  },{
-    "搴撳瓨缁勭粐":'浜哄伐搴�',
-    "鐗╂枡缂栫爜":'700900000000117',
-    "鐗╂枡鍚嶇О":'鑸悐瀹氭湡淇濆吇鍗�',
-    "浜у湴":'',
-    "搴撳瓨缂栧彿":'KC2006891',
-    "瀹藉害":'0.00',
-    "楂樺害":'0.00',
-    "鍘氬害":'0.00',
-    "涓诲崟浣�":'浠�',
-    "瀹夊叏搴撳瓨":'0.00',
-    "搴撳瓨鏁�":'20.00',
-    "鍙敤搴撳瓨":'',
-    "鏈鍙栨暟閲�":'',
-    "鎬婚潰绉�":'0.0000',
-    "鐢熶骇鏃ユ湡":'2016-10-17',
-    "淇濊川鏈�":'',
-    "搴撲綅缂栧彿":'',
-    "搴撳尯":'',
-    "搴撲綅":'',
-    "绉帇搴撳瓨":'40',
-    "澶囨敞":'',
-
-  },{
-    "搴撳瓨缁勭粐":'浜哄伐搴�',
-    "鐗╂枡缂栫爜":'700900000000116',
-    "鐗╂枡鍚嶇О":'鍐165',
-    "浜у湴":'',
-    "搴撳瓨缂栧彿":'KC2006891',
-    "瀹藉害":'0.00',
-    "楂樺害":'0.00',
-    "鍘氬害":'0.00',
-    "涓诲崟浣�":'浠�',
-    "瀹夊叏搴撳瓨":'0.00',
-    "搴撳瓨鏁�":'20.00',
-    "鍙敤搴撳瓨":'',
-    "鏈鍙栨暟閲�":'',
-    "鎬婚潰绉�":'0.0000',
-    "鐢熶骇鏃ユ湡":'2016-10-17',
-    "淇濊川鏈�":'',
-    "搴撲綅缂栧彿":'',
-    "搴撳尯":'',
-    "搴撲綅":'',
-    "绉帇搴撳瓨":'40',
-    "澶囨敞":'',
-
-  },{
-    "搴撳瓨缁勭粐":'浜哄伐搴�',
-    "鐗╂枡缂栫爜":'700900000000115',
-    "鐗╂枡鍚嶇О":'鍐170',
-    "浜у湴":'',
-    "搴撳瓨缂栧彿":'KC2006891',
-    "瀹藉害":'0.00',
-    "楂樺害":'0.00',
-    "鍘氬害":'0.00',
-    "涓诲崟浣�":'浠�',
-    "瀹夊叏搴撳瓨":'0.00',
-    "搴撳瓨鏁�":'20.00',
-    "鍙敤搴撳瓨":'',
-    "鏈鍙栨暟閲�":'',
-    "鎬婚潰绉�":'0.0000',
-    "鐢熶骇鏃ユ湡":'2016-10-17',
-    "淇濊川鏈�":'',
-    "搴撲綅缂栧彿":'',
-    "搴撳尯":'',
-    "搴撲綅":'',
-    "绉帇搴撳瓨":'40',
-    "澶囨敞":'',
-
+  customConfig: {
+    storage: true
   },
-])
+  editConfig: {
+    trigger: 'click',
+    mode: 'row',
+    showStatus: true
+  },//琛ㄥご鍙傛暟
+  columns:[
+    {type:'expand',fixed:"left",slots: { content:'content' },width: '50'},
+    // { type: 'checkbox',fixed:"left", title: '閫夋嫨', width: '80' },
+    { type: 'seq',fixed:"left", title: '鑷簭', width: '80' },
+    // {title: '鎿嶄綔', width: '110', slots: { default: 'button_slot' },fixed:"left"},
+    {field: 'InventoryOrganization', width:'150', title: '搴撳瓨缁勭粐', sortable: true,editRender: { name: 'input', attrs: { placeholder: '' } } },
+    {field: 'MaterialCode', width: '150',title: '鐗╂枡缂栫爜', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'MaterialName', width: '120',title: '鐗╂枡鍚嶇О', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'Origin', width: '100',title: '浜у湴', sortable: true},
+    {field: 'InventoryNumber',width: '100', title: '搴撳瓨缂栧彿', sortable: true,showOverflow:"ellipsis"},
+    {field: 'Width', width: '80',title: '瀹藉害', sortable: true},
+    {field: 'Height',width: '100', title: '楂樺害', sortable: true},
+    {field: 'Thickness', width: '100',title: '鍘氬害', sortable: true},
+    {field: 'MainUnit',width: '100', title: '涓诲崟浣�', sortable: true},
+    {field: 'SafetyStock', width: '100',title: '瀹夊叏搴撳瓨', sortable: true},
+    {field: 'InventoryCount',width: '100', title: '搴撳瓨鏁伴噺', sortable: true},
+    {field: 'AvailableInventory', width: '100',title: '鍙敤搴撳瓨', sortable: true},
+    {field: 'UnclaimedQuantity',width: '140', title: '鏈鍙栨暟閲�', sortable: true},
+    {field: 'TotalArea',width: '100', title: '鎬婚潰绉�', sortable: true},
+    {field: 'ProductionDate',width: '100', title: '鐢熶骇鏃ユ湡', sortable: true},
+    {field: 'ShelfLife',width: '100', title: '淇濊川鏈�', sortable: true},
+    {field: 'LocationNumber',width: '100', title: '搴撲綅缂栧彿', sortable: true},
+    {field: 'StorageArea',width: '100', title: '瀛樺偍鍖哄煙', sortable: true},
+    {field: 'Location',width: '100', title: '搴撲綅', sortable: true},
+    {field: 'BacklogInventory',width: '100', title: '绉帇搴撳瓨', sortable: true},
+    {field: 'remark',width: '80', title: '澶囨敞', sortable: true},
+  ],//琛ㄥご鎸夐挳
+  toolbarConfig: {
+    // buttons: [{
+    //   'name': '鏂板'
+    // }],
+    import: false,
+    export: true,
+    print: true,
+    zoom: true,
+    custom: true
+  },
+  data:  [
+    {
+      "InventoryOrganization": "浜哄伐搴�",
+      "MaterialCode": "700900000000115",
+      "MaterialName": "鍐170",
+      "Origin": "China",
+      "InventoryNumber": "KC2006891",
+      "Width": '',
+      "Height": "",
+      "Thickness": "",
+      "MainUnit": "浠�",
+      "SafetyStock": "5",
+      "InventoryCount": "20",
+      "AvailableInventory": "9",
+      "UnclaimedQuantity": "2",
+      "TotalArea": "0",
+      "ProductionDate": "2016-10-17",
+      "ShelfLife": "0",
+      "LocationNumber": "0",
+      "StorageArea": "0",
+      "Location": "0",
+      "BacklogInventory": "40",
+      "remark": "娴嬭瘯",
+    },
+    {
+      "InventoryOrganization": "浜哄伐搴�",
+      "MaterialCode": "700900000000115",
+      "MaterialName": "鍐175",
+      "Origin": "China",
+      "InventoryNumber": "KC2006891",
+      "Width": '',
+      "Height": "",
+      "Thickness": "",
+      "MainUnit": "浠�",
+      "SafetyStock": "5",
+      "InventoryCount": "20",
+      "AvailableInventory": "9",
+      "UnclaimedQuantity": "2",
+      "TotalArea": "0",
+      "ProductionDate": "2016-10-17",
+      "ShelfLife": "0",
+      "LocationNumber": "0",
+      "StorageArea": "0",
+      "Location": "0",
+      "BacklogInventory": "40",
+      "remark": "娴嬭瘯",
+    },{
+      "InventoryOrganization": "浜哄伐搴�",
+      "MaterialCode": "700900000000115",
+      "MaterialName": "鍐180",
+      "Origin": "China",
+      "InventoryNumber": "KC2006891",
+      "Width": '',
+      "Height": "",
+      "Thickness": "",
+      "MainUnit": "浠�",
+      "SafetyStock": "2",
+      "InventoryCount": "23",
+      "AvailableInventory": "4",
+      "UnclaimedQuantity": "3",
+      "TotalArea": "0",
+      "ProductionDate": "2016-10-17",
+      "ShelfLife": "0",
+      "LocationNumber": "0",
+      "StorageArea": "0",
+      "Location": "0",
+      "BacklogInventory": "40",
+      "remark": "娴嬭瘯",
+    },
+  ],//table body瀹為檯鏁版嵁
+  footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
+    return[
+      columns.map((column, columnIndex) => {
+        if (columnIndex === 0) {
+          return '鍚堣:'
+        }
+        // if (props.tableProp.footList.includes(column.field)) {
+        //   return sumNum(data, column.field)
+        // }
+        return ''
+      })
+    ]
+  }
+
+})
+
+
+
 </script>
+
 <template>
-  <div>
-    <div>
-      <el-form  size="medium" >
+  <div class="main-div-customer">
+    <vxe-grid
+        max-height="100%"
+        @filter-change="filterChanged"
+        class="mytable-scrollbar"
+        ref="xGrid"
+        v-bind="gridOptions"
 
-<!--        <el-row gutter="5">-->
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="name" placeholder="璇疯緭鍏ョ墿鏂欑紪鐮�" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="productName" placeholder="璇疯緭鍏ュ" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="salId" placeholder="璇疯緭鍏ラ珮" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="name" placeholder="璇疯緭鍏ョ墿鏂欏悕绉�" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
-<!--          <el-col span="4">-->
-<!--            <el-button id="searchWarehousing" type="primary" :icon="Search1">绾胯竟浠撳偍鏌ヨ</el-button>-->
-<!--          </el-col>-->
-<!--          <el-col span="4">-->
-<!--            <el-button id="searchButton" type="primary" :icon="Search">鏌ヨ</el-button>-->
-<!--          </el-col>-->
+    >
+      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
+      <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
+      <template #content="{ row}">
+        <ul class="expand-wrapper">
+          <li  v-for="(item,key,index) in row">
+            <span style="font-weight: bold">{{key+':  '}}</span>
+            <span>{{ item }}</span>
+          </li>
+        </ul>
+      </template>
 
-<!--        </el-row>-->
+      <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
+      <template #button_slot="{ row }">
+        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">缂栬緫</el-button>
+        <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">鍒犻櫎</el-button>
+      </template>
 
-        <!-- <el-form-item size="large">
-          <el-button type="primary" @click="submitForm">鏌ヨ</el-button>
-          <el-button @click="resetForm">閲嶇疆</el-button>
-        </el-form-item>-->
-        <el-row gutter="5">
+      <template #num1_filter="{ column, $panel }">
+        <div>
+          <div v-for="(option, index) in column.filters" :key="index">
+            <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
+          </div>
+        </div>
+      </template>
 
-          <el-col :span="4">
 
-          </el-col>
-
-        </el-row>
-      </el-form>
-    </div>
-
-    <!-- 琛ㄦ牸寮�濮� -->
-    <div>
-      <el-table :data="tableData" border style="width: 100%">
-        <el-table-column prop="搴撳瓨缁勭粐" label="搴撳瓨缁勭粐" width="180" />
-        <el-table-column prop="鐗╂枡缂栫爜" label="鐗╂枡缂栫爜" width="180" />
-        <el-table-column prop="鐗╂枡鍚嶇О" label="鐗╂枡鍚嶇О" width="180"/>
-        <el-table-column prop="浜у湴" label="浜у湴" width="180"/>
-        <el-table-column prop="瀹藉害" label="瀹藉害" width="180"/>
-        <el-table-column prop="楂樺害" label="楂樺害" width="180"/>
-        <el-table-column prop="鍘氬害" label="鍘氬害" width="180"/>
-        <el-table-column prop="涓诲崟浣�" label="涓诲崟浣�" width="180"/>
-        <el-table-column prop="瀹夊叏搴撳瓨" label="瀹夊叏搴撳瓨" width="180"/>
-        <el-table-column prop="搴撳瓨鏁�" label="搴撳瓨鏁�" width="180"/>
-        <el-table-column prop="鍙敤搴撳瓨" label="鍙敤搴撳瓨" width="180"/>
-        <el-table-column prop="鏈鍙栨暟閲�" label="鏈鍙栨暟閲�" width="180"/>
-        <el-table-column prop="鎬婚潰绉�" label="鎬婚潰绉�" width="180"/>
-        <el-table-column prop="鐢熶骇鏃ユ湡" label="鐢熶骇鏃ユ湡" width="180"/>
-        <el-table-column prop="淇濊川鏈�" label="淇濊川鏈�" width="180"/>
-        <el-table-column prop="搴撲綅缂栧彿" label="搴撲綅缂栧彿" width="180"/>
-        <el-table-column prop="搴撳尯" label="搴撳尯" width="180"/>
-        <el-table-column prop="搴撲綅" label="搴撲綅" width="180"/>
-        <el-table-column prop="绉帇搴撳瓨" label="绉帇搴撳瓨" width="180"/>
-        <el-table-column prop="澶囨敞" label="澶囨敞" width="180"/>
-        <el-table-column fixed="left" label="鎿嶄綔" width="120">
-          <template #default>
-            <el-button link type="primary" size="small" @click="handleClick"
-            >淇敼</el-button
-            >
-            <el-button link type="primary" size="small">瀹℃牳</el-button>
-          </template>
-        </el-table-column>
-
-      </el-table>
-    </div>
-    <!-- 琛ㄦ牸缁撴潫 -->
+    </vxe-grid>
   </div>
 </template>
 
-<style>
+<style scoped>
+.main-div-customer{
+  width: 99%;
+  height: 100%;
+}
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/CreateProductStock.vue b/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/CreateProductStock.vue
index 2acc341..fed6891 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/CreateProductStock.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/CreateProductStock.vue
@@ -1,156 +1,267 @@
-<!--浜у搧鍏ュ簱-->
+<script setup>
+
+import {reactive} from "vue";
+import {useRouter} from  'vue-router'
+let router=useRouter()
+const getTableRow = (row,type) =>{
+  switch (type) {
+    case 'edit' :{
+      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+      router.push({path: '/main/productStock/OrderAllocation', query: { id: row.id }})
+      break
+    }
+    case 'back':{
+      router.push({path: '/main/productStock/FinishedProductRework', query: { id: row.id }})
+      break
+    }
+    case 'out' :{
+      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+      router.push({path: '/main/productStock/FinishedGoodsIssue', query: { id: row.id }})
+      break
+    }
+  }
+}
 
 
-<script lang="ts" setup>
-import {ref} from "vue";
-let tableData = ref([
-  {
-    "閿�鍞崟鍙�":'NG23072003',
-    "妤煎眰缂栧彿":'10059419',
-    "鎴愬搧缂栧彿":'0604000027',
-    "鎴愬搧鍚嶇О":'NG23072003A01',
-    "浜у搧鍚嶇О":'',
-    "闀�":'1075.00',
-    "瀹�":'440.00',
-    "涓氬姟鍛�":'闄堝畻鍑�',
-    "瀹㈡埛鍚嶇О":'71',
-    "椤圭洰鍚嶇О":'閽㈠寲鐜荤拑',
-    "璁㈠簭":'1',
-    "璁㈠崟鎬绘暟":'3800',
-    "鏁伴噺":'1140',
-    "瀹屽伐":'1140',
-    "闈㈢Н":'505.270000',
-    "娴佺▼鍗″彿":'NG23112311A01',
-    "宸插叆鏁伴噺":'0',
-    "涓嬪伐搴�":'鎴愬搧',
-    "鎵规":'',
-  },{
-    "閿�鍞崟鍙�":'NG23072003',
-    "妤煎眰缂栧彿":'10059419',
-    "鎴愬搧缂栧彿":'0604000027',
-    "鎴愬搧鍚嶇О":'NG23072003A01',
-    "浜у搧鍚嶇О":'',
-    "闀�":'1075.00',
-    "瀹�":'440.00',
-    "涓氬姟鍛�":'闄堝畻鍑�',
-    "瀹㈡埛鍚嶇О":'71',
-    "椤圭洰鍚嶇О":'閽㈠寲鐜荤拑',
-    "璁㈠簭":'1',
-    "璁㈠崟鎬绘暟":'3800',
-    "鏁伴噺":'1140',
-    "瀹屽伐":'1140',
-    "闈㈢Н":'505.270000',
-    "娴佺▼鍗″彿":'NG23112311A01',
-    "宸插叆鏁伴噺":'0',
-    "涓嬪伐搴�":'鎴愬搧',
-    "鎵规":'',
-  },{
-    "閿�鍞崟鍙�":'NG23072003',
-    "妤煎眰缂栧彿":'10059419',
-    "鎴愬搧缂栧彿":'0604000027',
-    "鎴愬搧鍚嶇О":'NG23072003A01',
-    "浜у搧鍚嶇О":'',
-    "闀�":'1075.00',
-    "瀹�":'440.00',
-    "涓氬姟鍛�":'闄堝畻鍑�',
-    "瀹㈡埛鍚嶇О":'71',
-    "椤圭洰鍚嶇О":'閽㈠寲鐜荤拑',
-    "璁㈠簭":'1',
-    "璁㈠崟鎬绘暟":'3800',
-    "鏁伴噺":'1140',
-    "瀹屽伐":'1140',
-    "闈㈢Н":'505.270000',
-    "娴佺▼鍗″彿":'NG23112311A01',
-    "宸插叆鏁伴噺":'0',
-    "涓嬪伐搴�":'鎴愬搧',
-    "鎵规":'',
-  },{
-    "閿�鍞崟鍙�":'NG23072003',
-    "妤煎眰缂栧彿":'10059419',
-    "鎴愬搧缂栧彿":'0604000027',
-    "鎴愬搧鍚嶇О":'NG23072003A01',
-    "浜у搧鍚嶇О":'',
-    "闀�":'1075.00',
-    "瀹�":'440.00',
-    "涓氬姟鍛�":'闄堝畻鍑�',
-    "瀹㈡埛鍚嶇О":'71',
-    "椤圭洰鍚嶇О":'閽㈠寲鐜荤拑',
-    "璁㈠簭":'1',
-    "璁㈠崟鎬绘暟":'3800',
-    "鏁伴噺":'1140',
-    "瀹屽伐":'1140',
-    "闈㈢Н":'505.270000',
-    "娴佺▼鍗″彿":'NG23112311A01',
-    "宸插叆鏁伴噺":'0',
-    "涓嬪伐搴�":'鎴愬搧',
-    "鎵规":'',
+
+//瀛愮粍浠舵帴鏀跺弬鏁�
+
+const gridOptions = reactive({
+  border:  "full",//琛ㄦ牸鍔犺竟妗�
+  keepSource: true,//淇濇寔婧愭暟鎹�
+  align: 'center',//鏂囧瓧灞呬腑
+  stripe:true,//鏂戦┈绾�
+  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
+  id: 'CustomerList',
+  showFooter: true,//鏄剧ず鑴�
+  printConfig: {},
+  importConfig: {},
+  exportConfig: {},
+  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
+  showOverflow:true,
+  columnConfig: {
+    resizable: true,
+    useKey: true
   },
-])
-const checked1 = ref(true)
+  filterConfig: {   //绛涢�夐厤缃」
+    remote: true
+  },
+  customConfig: {
+    storage: true
+  },
+  editConfig: {
+    trigger: 'click',
+    mode: 'row',
+    showStatus: true
+  },//琛ㄥご鍙傛暟
+  columns:[
+    {type:'expand',fixed:"left",slots: { content:'content' },width: '50'},
+    { type: 'checkbox',fixed:"left", title: '閫夋嫨', width: '80' },
+    { type: 'seq',fixed:"left", title: '鑷簭', width: '80' },
+    // {title: '鎿嶄綔', width: '220', slots: { default: 'button_slot' },fixed:"left"},
+    {field: 'SalesOrderNumber', width: '150',title: '閿�鍞崟鍙�', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'floorNumber', width: '120',title: '妤煎眰缂栧彿', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'finishedProductNumber',width: '100', title: '鎴愬搧缂栧彿', sortable: true,showOverflow:"ellipsis"},
+    {field: 'finishedProductName', width: '100',title: ' 鎴愬搧鍚嶇О', sortable: true},
+    {field: 'productName',width: '100', title: '浜у搧鍚嶇О', sortable: true},
+    {field: 'length', width: '100',title: '闀垮害', sortable: true},
+    {field: 'width',width: '100', title: '瀹藉害', sortable: true},
+    {field: 'salesperson', width: '100',title: '涓氬姟鍛�', sortable: true},
+    {field: 'customerName',width: '100', title: '瀹㈡埛鍚嶇О', sortable: true},
+    {field: 'projectName', width: '100',title: '椤圭洰鍚嶇О', sortable: true},
+    {field: 'orderNumber',width: '140', title: '璁㈠簭', sortable: true},
+    {field: 'totalOrders',width: '140', title: '璁㈠崟鎬绘暟', sortable: true},
+    {field: 'quantity',width: '100', title: '鏁伴噺', sortable: true},
+    {field: 'completion',width: '140', title: '瀹屽伐', sortable: true},
+    {field: 'area',width: '140', title: '闈㈢Н', sortable: true},
+    {field: 'processCardNumber',width: '100', title: '娴佺▼鍗″彿', sortable: true},
+    {field: 'quantityEntered',width: '100', title: '宸插叆鏁伴噺', sortable: true},
+    {field: 'nextProcess',width: '100', title: ' 涓嬪伐搴�', sortable: true},
+    {field: 'Batch',width: '100', title: '鎵规', sortable: true},
+  ],//琛ㄥご鎸夐挳
+  toolbarConfig: {
+    buttons: [{
+      'name': '纭鍏ュ簱',status: 'primary',
+
+      'code':'add'
+    }
+      ],
+    import: false,
+    export: true,
+    print: true,
+    zoom: true,
+    custom: true
+  },
+  data:  [
+    {
+      "SalesOrderNumber": "NG23072003",
+      "floorNumber": "10059419",
+      "finishedProductNumber": "0604000027",
+      "finishedProductName": "NG23072003A01",
+      "productName": '閽㈠寲鐜荤拑',
+      "length": "1075.00",
+      "width": "440.00",
+      "salesperson": "灏忓渤",
+      "customerName": "澶уご",
+      "projectName": "Tempered Glass",
+      "orderNumber": "1",
+      "totalOrders": "3800",
+      "quantity": "1140",
+      "completion":'1140',
+      "area": "505.270000",
+      "processCardNumber": "NG23112311A01",
+      "quantityEntered": "0",
+      "nextProcess": "Finished Product",
+      "Batch": "涓�",
+    },
+    {
+      "SalesOrderNumber": "NG23072003",
+      "floorNumber": "10059419",
+      "finishedProductNumber": "0604000027",
+      "finishedProductName": "NG23072003A01",
+      "productName": '閽㈠寲鐜荤拑',
+      "length": "1075.00",
+      "width": "440.00",
+      "salesperson": "灏忓渤",
+      "customerName": "澶уご",
+      "projectName": "Tempered Glass",
+      "orderNumber": "1",
+      "totalOrders": "3800",
+      "quantity": "1140",
+      "completion":'1140',
+      "area": "505.270000",
+      "processCardNumber": "NG23112311A01",
+      "quantityEntered": "0",
+      "nextProcess": "Finished Product",
+      "Batch": "涓�",
+    },
+    {
+      "SalesOrderNumber": "NG23072003",
+      "floorNumber": "10059419",
+      "finishedProductNumber": "0604000027",
+      "finishedProductName": "NG23072003A01",
+      "productName": '閽㈠寲鐜荤拑',
+      "length": "1075.00",
+      "width": "440.00",
+      "salesperson": "灏忓渤",
+      "customerName": "澶уご",
+      "projectName": "Tempered Glass",
+      "orderNumber": "1",
+      "totalOrders": "3800",
+      "quantity": "1140",
+      "completion":'1140',
+      "area": "505.270000",
+      "processCardNumber": "NG23112311A01",
+      "quantityEntered": "0",
+      "nextProcess": "Finished Product",
+      "Batch": "涓�",
+    },
+    {
+      "SalesOrderNumber": "NG23072003",
+      "floorNumber": "10059419",
+      "finishedProductNumber": "0604000027",
+      "finishedProductName": "NG23072003A01",
+      "productName": '閽㈠寲鐜荤拑',
+      "length": "1075.00",
+      "width": "440.00",
+      "salesperson": "灏忓渤",
+      "customerName": "澶уご",
+      "projectName": "Tempered Glass",
+      "orderNumber": "1",
+      "totalOrders": "3800",
+      "quantity": "1140",
+      "completion":'1140',
+      "area": "505.270000",
+      "processCardNumber": "NG23112311A01",
+      "quantityEntered": "0",
+      "nextProcess": "Finished Product",
+      "Batch": "涓�",
+    },
+
+  ],//table body瀹為檯鏁版嵁
+  footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
+    return[
+      columns.map((column, columnIndex) => {
+        if (columnIndex === 0) {
+          return '鍚堣:'
+        }
+        // if (props.tableProp.footList.includes(column.field)) {
+        //   return sumNum(data, column.field)
+        // }
+        return ''
+      })
+    ]
+  }
+
+})
+
+const gridEvents = {
+  toolbarButtonClick ({ code }) {
+    const $grid = xGrid.value
+    if ($grid) {
+      switch (code) {
+        case 'add': {
+
+          router.push({path: '/main/trader/CreateTrader'})
+          /*if($grid.getCheckboxRecords().length==0){
+            VXETable.modal.message( '璇烽�夋嫨涓�鏉℃暟鎹紒')
+            return
+          }*/
+          return;
+        }
+
+      }
+    }
+  },
+
+}
+
 </script>
+
 <template>
-<div>
-  <div>
-    <el-form  size="medium" >
+  <div class="main-div-customer">
+    <vxe-grid
+        max-height="100%"
+        @filter-change="filterChanged"
+        class="mytable-scrollbar"
+        ref="xGrid"
+        v-bind="gridOptions"
+        v-on="gridEvents"
+    >
+      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
+      <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
+      <template #content="{ row}">
+        <ul class="expand-wrapper">
+          <li  v-for="(item,key,index) in row">
+            <span style="font-weight: bold">{{key+':  '}}</span>
+            <span>{{ item }}</span>
+          </li>
+        </ul>
+      </template>
 
-<!--      <el-row gutter="7">-->
-<!--        <el-col :span="4">-->
-<!--          <el-input v-model="name" placeholder="閿�鍞崟鍙�" style="width: 200px; height: 30px;" />-->
-<!--        </el-col>-->
-<!--        <el-col :span="4">-->
-<!--          <el-input v-model="productName" placeholder="娴佺▼鍗″彿" style="width: 200px; height: 30px;" />-->
-<!--        </el-col>-->
-<!--        <el-col :span="4">-->
-<!--          <el-input v-model="salId" placeholder="璁㈠簭" style="width: 200px; height: 30px;" />-->
-<!--        </el-col>-->
+      <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
+      <template #button_slot="{ row }">
+<!--        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">璁㈠崟璋冩嫧</el-button>-->
+<!--        <el-button @click="getTableRow(row,'out')" link type="primary" size="small">鎴愬搧棰嗗嚭</el-button>-->
+<!--        <el-button @click="getTableRow(row,'back')" link type="primary" size="small">鎴愬搧杩斿伐</el-button>-->
+      </template>
 
-<!--        <el-col :span="4">-->
-<!--          <el-button id="searchButton" type="primary" :icon="Search" style="width: 100px; height: 25px">鏌ヨ</el-button>-->
-<!--        </el-col>-->
-<!--      </el-row>-->
-      <el-row gutter="7">
-        <el-col :span="4">
-          <el-input v-model="name" placeholder="鍒跺崟鍛�" style="width: 200px; height: 30px;" />
-        </el-col>
-        <el-col :span="4">
-          <el-input v-model="productName" placeholder="宸ュ彿" style="width: 200px; height: 30px;" />
-        </el-col>
-        <el-col :span="4">
-          <el-input v-model="salId" placeholder="搴撲綅" style="width: 200px; height: 30px;" />
-        </el-col>
+      <template #num1_filter="{ column, $panel }">
+        <div>
+          <div v-for="(option, index) in column.filters" :key="index">
+            <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
+          </div>
+        </div>
+      </template>
 
-        <el-col :span="4">
-          <el-button id="searchButton" type="primary" :icon="Search" style="width: 100px; height: 25px">纭畾</el-button>
-        </el-col>
-      </el-row>
-    </el-form>
-    <div>
-      <el-table :data="tableData" border style="width: 100%">
-        <el-table-column prop="閿�鍞崟鍙�" label="閿�鍞崟鍙�" width="100" />
-        <el-table-column prop="妤煎眰缂栧彿" label="妤煎眰缂栧彿" width="100" />
-        <el-table-column prop="鎴愬搧缂栧彿" label="鎴愬搧缂栧彿" width="100"/>
-        <el-table-column prop="鎴愬搧鍚嶇О" label="鎴愬搧鍚嶇О" width="180"/>
-        <el-table-column prop="闀�" label="闀�" width="80"/>
-        <el-table-column prop="瀹�" label="瀹�" width="80"/>
-        <el-table-column prop="涓氬姟鍛�" label="涓氬姟鍛�" width="100"/>
-        <el-table-column prop="瀹㈡埛鍚嶇О" label="瀹㈡埛鍚嶇О" width="100"/>
-        <el-table-column prop="椤圭洰鍚嶇О" label="椤圭洰鍚嶇О" width="180"/>
-        <el-table-column prop="璁㈠簭" label="璁㈠簭" width="80"/>
-        <el-table-column prop="璁㈠崟鎬绘暟" label="璁㈠崟鎬绘暟" width="100"/>
-        <el-table-column prop="鏁伴噺" label="鏁伴噺" width="80"/>
-        <el-table-column prop="瀹屽伐" label="瀹屽伐" width="80"/>
-        <el-table-column prop="闈㈢Н" label="闈㈢Н" width="80"/>
-        <el-table-column prop="娴佺▼鍗″彿" label="娴佺▼鍗″彿" width="100"/>
-        <el-table-column prop="宸插叆鏁伴噺" label="宸插叆鏁伴噺" width="100"/>
-        <el-table-column prop="涓嬪伐搴�" label="涓嬪伐搴�" width="80"/>
-        <el-table-column prop="鎵规" label="鎵规" width="80"/>
-        <el-table-column prop="閫夋嫨" label="閫夋嫨"  type="selection" width="80"/>
 
-      </el-table>
-    </div>
+    </vxe-grid>
   </div>
-</div>
 </template>
-<style>
 
+<style scoped>
+.main-div-customer{
+  width: 99%;
+  height: 100%;
+}
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedGoodsIssue.vue b/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedGoodsIssue.vue
index 93b82a8..42f7a37 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedGoodsIssue.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedGoodsIssue.vue
@@ -1,119 +1,247 @@
-<!-- 鎴愬搧棰嗗嚭 -->
+<!--鎴愬搧棰嗗嚭-->
 
 
-<script lang="ts" setup>
-import {ref} from "vue";
+<script setup>
 
-let tableData = ref([
-  {
-    "閿�鍞崟鍙�":'NG23121309',
-    "椤圭洰鍚嶇О":'閽㈠寲鐜荤拑',
-    "瀹㈡埛缂栧彿":'89',
-    "瀹㈡埛鍚嶇О":'',
-    "娴佺▼鍗″彿":'NG23121309A01',
-    "鎴愬搧缂栧彿":'0604000299',
-    "绠辨灦鍙�":'0',
-    "鎴愬搧鍚嶇О":'3.2mm鎷卞舰閽㈠寲鐜荤拑',
-    "闀�":'1610.00',
-    "瀹�":'520.00',
-    "鍘�":'3.20',
-    "鏁伴噺":'122.00',
-    "鍗曠墖闈㈢Н":'0.8372',
-    "鎬婚潰绉�":'102.1384',
-    "搴撳尯":'搴撳尯',
-    "搴撲綅":'0',
-  },  {
-    "閿�鍞崟鍙�":'NG23121309',
-    "椤圭洰鍚嶇О":'閽㈠寲鐜荤拑',
-    "瀹㈡埛缂栧彿":'89',
-    "瀹㈡埛鍚嶇О":'',
-    "娴佺▼鍗″彿":'NG23121309A01',
-    "鎴愬搧缂栧彿":'0604000299',
-    "绠辨灦鍙�":'0',
-    "鎴愬搧鍚嶇О":'3.2mm鎷卞舰閽㈠寲鐜荤拑',
-    "闀�":'1610.00',
-    "瀹�":'520.00',
-    "鍘�":'3.20',
-    "鏁伴噺":'122.00',
-    "鍗曠墖闈㈢Н":'0.8372',
-    "鎬婚潰绉�":'102.1384',
-    "搴撳尯":'搴撳尯',
-    "搴撲綅":'0',
+import {reactive} from "vue";
+import {useRouter} from  'vue-router'
+let router=useRouter()
+const getTableRow = (row,type) =>{
+  switch (type) {
+    // case 'edit' :{
+    //   //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+    //   router.push({path: '/main/productStock/OrderAllocation', query: { id: row.id }})
+    //   break
+    // }
+    // case 'back':{
+    //   router.push({path: '/main/productStock/FinishedProductRework', query: { id: row.id }})
+    //   break
+    // }
+    // case 'out' :{
+    //   //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+    //   router.push({path: '/main/productStock/FinishedGoodsIssue', query: { id: row.id }})
+    //   break
+    // }
+  }
+}
+const gridEvents = {
+  toolbarButtonClick ({ code }) {
+    const $grid = xGrid.value
+    if ($grid) {
+      switch (code) {
+        case 'add': {
+
+          router.push({path: '/main/trader/CreateTrader'})
+          /*if($grid.getCheckboxRecords().length==0){
+            VXETable.modal.message( '璇烽�夋嫨涓�鏉℃暟鎹紒')
+            return
+          }*/
+          return;
+        }
+
+      }
+    }
   },
-  {
-    "閿�鍞崟鍙�":'NG23121309',
-    "椤圭洰鍚嶇О":'閽㈠寲鐜荤拑',
-    "瀹㈡埛缂栧彿":'89',
-    "瀹㈡埛鍚嶇О":'',
-    "娴佺▼鍗″彿":'NG23121309A01',
-    "鎴愬搧缂栧彿":'0604000299',
-    "绠辨灦鍙�":'0',
-    "鎴愬搧鍚嶇О":'3.2mm鎷卞舰閽㈠寲鐜荤拑',
-    "闀�":'1610.00',
-    "瀹�":'520.00',
-    "鍘�":'3.20',
-    "鏁伴噺":'122.00',
-    "鍗曠墖闈㈢Н":'0.8372',
-    "鎬婚潰绉�":'102.1384',
-    "搴撳尯":'搴撳尯',
-    "搴撲綅":'0',
+  toolbarToolClick ({ code }) {
+    const $grid = xGrid.value
+    if ($grid) {
+      switch (code) {
+        case 'myPrint': {
+          $grid.print()
+          break
+        }
+      }
+    }
   },
-])
+}
+
+
+
+
+//瀛愮粍浠舵帴鏀跺弬鏁�
+
+const gridOptions = reactive({
+  border:  "full",//琛ㄦ牸鍔犺竟妗�
+  keepSource: true,//淇濇寔婧愭暟鎹�
+  align: 'center',//鏂囧瓧灞呬腑
+  stripe:true,//鏂戦┈绾�
+  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
+  id: 'CustomerList',
+  showFooter: true,//鏄剧ず鑴�
+  printConfig: {},
+  importConfig: {},
+  exportConfig: {},
+  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
+  showOverflow:true,
+  columnConfig: {
+    resizable: true,
+    useKey: true
+  },
+  filterConfig: {   //绛涢�夐厤缃」
+    remote: true
+  },
+  customConfig: {
+    storage: true
+  },
+  editConfig: {
+    trigger: 'click',
+    mode: 'row',
+    showStatus: true
+  },//琛ㄥご鍙傛暟
+  columns:[
+    {type:'expand',fixed:"left",slots: { content:'content' },width: '50'},
+    { type: 'checkbox',fixed:"left", title: '閫夋嫨', width: '80' },
+    // { type: 'seq',fixed:"left", title: '鑷簭', width: '80' },
+    // {title: '鎿嶄綔', width: '220', slots: { default: 'button_slot' },fixed:"left"},
+    {field: 'SalesOrderNumber', width: '150',title: '閿�鍞崟鍙�', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'ProjectName', width: '120',title: '椤圭洰鍚嶇О', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'ProcessCardNumber',width: '100', title: '娴佺▼鍗″彿', sortable: true,showOverflow:"ellipsis"},
+    {field: 'FinishedProductNumber', width: '100',title: '鎴愬搧缂栧彿', sortable: true},
+    {field: 'Quantity',width: '140', title: '鏁伴噺', sortable: true},
+    {field: 'DiaoQuantity',width: '140', title: '棰嗗嚭鏁伴噺',editRender: { name: 'input', attrs: { placeholder: '' } }, sortable: true},
+    {field: 'ProductNumber',width: '100', title: '浜у搧缂栧彿', sortable: true},
+    {field: 'CustomerNumber', width: '100',title: '瀹㈡埛缂栧彿', sortable: true},
+    {field: 'CustomerName',width: '100', title: '瀹㈡埛鍚嶇О', sortable: true},
+    {field: 'Length', width: '100',title: '闀垮害', sortable: true},
+    {field: 'Width',width: '100', title: '瀹藉害', sortable: true},
+    {field: 'Thickness', width: '100',title: '鍘氬害', sortable: true},
+    {field: 'SingleArea',width: '140', title: '鍗曠墖闈㈢Н', sortable: true},
+    {field: 'TotalArea',width: '100', title: '鎬婚潰绉�', sortable: true},
+    {field: 'StorageArea',width: '100', title: '搴撳尯', sortable: true},
+    {field: 'Location',width: '100', title: '搴撲綅', sortable: true},
+  ],//琛ㄥご鎸夐挳
+  toolbarConfig: {
+    buttons: [{
+      'name': '纭棰嗗嚭',
+      status: 'primary'
+    },{
+      'name': '棰嗗嚭璁板綍',
+    }],
+    import: false,
+    export: true,
+    print: true,
+    zoom: true,
+    custom: true
+  },
+  data:  [
+    {
+      "SalesOrderNumber": "NG23072003",
+      "ProjectName": "閽㈠寲鐜荤拑",
+      "ProcessCardNumber": "NG23072003A01",
+      'FinishedProductNumber':'',
+      'FinishedProductName':'',
+      'BoxNumber':'',
+      "CustomerNumber": "KD0071",
+      "CustomerName": "浠�",
+      "Length": "1075.00",
+      "Width": "440.00",
+      "Thickness": "3.00",
+      "Quantity": "360",
+      "SingleArea": "0.473000",
+      "TotalArea": "170.28",
+      "StorageArea": "0.47",
+      "Location": "170.28",
+    },{
+      "SalesOrderNumber": "NG23072003",
+      "ProjectName": "閽㈠寲鐜荤拑",
+      "ProcessCardNumber": "NG23072003A01",
+      'FinishedProductNumber':'',
+      'FinishedProductName':'',
+      'BoxNumber':'',
+      "CustomerNumber": "KD0071",
+      "CustomerName": "浠�",
+      "Length": "1075.00",
+      "Width": "440.00",
+      "Thickness": "3.00",
+      "Quantity": "360",
+      "SingleArea": "0.473000",
+      "TotalArea": "170.28",
+      "StorageArea": "0.47",
+      "Location": "170.28",
+    },{
+      "SalesOrderNumber": "NG23072003",
+      "ProjectName": "閽㈠寲鐜荤拑",
+      "ProcessCardNumber": "NG23072003A01",
+      'FinishedProductNumber':'',
+      'FinishedProductName':'',
+      'BoxNumber':'',
+      "CustomerNumber": "KD0071",
+      "CustomerName": "浠�",
+      "Length": "1075.00",
+      "Width": "440.00",
+      "Thickness": "3.00",
+      "Quantity": "360",
+      "SingleArea": "0.473000",
+      "TotalArea": "170.28",
+      "StorageArea": "0.47",
+      "Location": "170.28",
+    },
+
+  ],//table body瀹為檯鏁版嵁
+  footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
+    return[
+      columns.map((column, columnIndex) => {
+        if (columnIndex === 0) {
+          return '鍚堣:'
+        }
+        // if (props.tableProp.footList.includes(column.field)) {
+        //   return sumNum(data, column.field)
+        // }
+        return ''
+      })
+    ]
+  }
+
+})
+
+
+
 </script>
+
 <template>
-  <div>
-    <div>
-      <el-form  size="medium" >
+  <div class="main-div-customer">
+    <vxe-grid
+        max-height="100%"
+        @filter-change="filterChanged"
+        class="mytable-scrollbar"
+        ref="xGrid"
+        v-bind="gridOptions"
 
-        <el-row gutter="5">
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="name" placeholder="璇疯緭瀹㈡埛鍚嶇О" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="name" placeholder="璇疯緭椤圭洰鍚嶇О" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="name" placeholder="璇疯緭閿�鍞崟鍙�" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
-          <el-col :span="2.5">
-            <el-button id="searchButton" type="primary" :icon="Search">棰嗗嚭璁板綍</el-button>
-          </el-col>
-          <el-col :span="4">
-            <el-button id="searchButton" type="primary" :icon="Search">鏌ヨ</el-button>
-          </el-col>
+    >
+      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
+      <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
+      <template #content="{ row}">
+        <ul class="expand-wrapper">
+          <li  v-for="(item,key,index) in row">
+            <span style="font-weight: bold">{{key+':  '}}</span>
+            <span>{{ item }}</span>
+          </li>
+        </ul>
+      </template>
 
-        </el-row>
-      </el-form>
-    </div>
-    <div>
-      <el-table :data="tableData" border style="width: 100%;">
-        <el-table-column prop="閿�鍞崟鍙�" label="閿�鍞崟鍙�" width="180" style="text-align: center"/>
-        <el-table-column prop="椤圭洰鍚嶇О" label="椤圭洰鍚嶇О" width="180" />
-        <el-table-column prop="瀹㈡埛缂栧彿" label="瀹㈡埛缂栧彿" width="180"/>
-        <el-table-column prop="瀹㈡埛鍚嶇О" label="瀹㈡埛鍚嶇О" width="180"/>
-        <el-table-column prop="娴佺▼鍗″彿" label="娴佺▼鍗″彿" width="180"/>
-        <el-table-column prop="鎴愬搧缂栧彿" label="鎴愬搧缂栧彿" width="180"/>
-        <el-table-column prop="绠辨灦鍙�" label="绠辨灦鍙�" width="180"/>
-        <el-table-column prop="鎴愬搧鍚嶇О" label="鎴愬搧鍚嶇О" width="180"/>
-        <el-table-column prop="闀�" label="闀�" width="180"/>
-        <el-table-column prop="瀹�" label="瀹�" width="180"/>
-        <el-table-column prop="鍘�" label="鍘�" width="180"/>
-        <el-table-column prop="鏁伴噺" label="鏁伴噺" width="180"/>
-        <el-table-column prop="鍗曠墖闈㈢Н" label="鍗曠墖闈㈢Н" width="180"/>
-        <el-table-column prop="鎬婚潰绉�" label="鎬婚潰绉�" width="180"/>
-        <el-table-column prop="搴撳尯" label="搴撳尯" width="180"/>
-        <el-table-column prop="搴撲綅" label="搴撲綅" width="180"/>
-        <el-table-column fixed="left" label="鎿嶄綔" width="80">
-          <template #default>
-            <el-button link type="primary" size="small" @click="handleClick(row)"
-            >缂栬緫</el-button>
+      <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
+      <template #button_slot="{ row }">
+        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">璁㈠崟璋冩嫧</el-button>
+        <el-button @click="getTableRow(row,'out')" link type="primary" size="small">鎴愬搧棰嗗嚭</el-button>
+        <el-button @click="getTableRow(row,'back')" link type="primary" size="small">鎴愬搧杩斿伐</el-button>
+      </template>
 
-          </template>
-        </el-table-column>
-      </el-table>
-    </div>
+      <template #num1_filter="{ column, $panel }">
+        <div>
+          <div v-for="(option, index) in column.filters" :key="index">
+            <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
+          </div>
+        </div>
+      </template>
+
+
+    </vxe-grid>
   </div>
 </template>
-<style>
 
+<style scoped>
+.main-div-customer{
+  width: 99%;
+  height: 100%;
+}
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductOut.vue b/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductOut.vue
index 15d4193..f192b1d 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductOut.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductOut.vue
@@ -1,200 +1,289 @@
-<!--鎴愬搧鍑哄簱-->
+<script setup>
 
-<script lang="ts" setup>
-import {ref} from "vue";
-import {Search} from "@element-plus/icons-vue";
-import {defineComponent} from "vue";
+import {reactive} from "vue";
+import {useRouter} from  'vue-router'
+let router=useRouter()
+const getTableRow = (row,type) =>{
+  switch (type) {
+    case 'edit' :{
+      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+      router.push({path: '/main/productStock/OrderAllocation', query: { id: row.id }})
+      break
+    }
+    case 'back':{
+      router.push({path: '/main/productStock/FinishedProductRework', query: { id: row.id }})
+      break
+    }
+    case 'out' :{
+      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+      router.push({path: '/main/productStock/FinishedGoodsIssue', query: { id: row.id }})
+      break
+    }
+  }
+}
 
 
 
+//瀛愮粍浠舵帴鏀跺弬鏁�
 
-let tableData = ref([
-  {
-    "閫佽揣鍗曞彿":'JG23121112',
-    "閿�鍞崟鍙�":'NG23120610',
-    "瀹㈡埛鍚嶇О":'涓北甯傛í鏍忛晣鐜収鐏グ鍘�',
-    "椤圭洰鍚嶇О":'閽㈠寲闀�',
-    "涓氬姟鍛�":'鐜嬭壇',
-    "璁㈠簭":'1',
-    "妤煎眰缂栧彿":'813404',
-    "璁㈠崟鏁�":'346',
-    "闀�":'813.00',
-    "瀹�":'404.00',
-    "鍘氬害":'4.00',
-    "鎬绘暟閲�":'176.00',
-    "鎬婚潰绉�":'58.0800',
-    "绠卞彿":'',
-    "鎶ヨ〃鏃ユ湡":'2023-23-13',
-    "鎴愬搧缂栧彿":'0601000622',
-    "鎴愬搧鍚嶇О":'4mm鏂瑰舰閽㈠寲闀�',
-    "鏁伴噺":'176',
-    "鐘舵��":'宸插嚭搴�',
-    "澶囨敞":'',
-  }, {
-    "閫佽揣鍗曞彿":'JG23121112',
-    "閿�鍞崟鍙�":'NG23120610',
-    "瀹㈡埛鍚嶇О":'涓北甯傛í鏍忛晣鐜収鐏グ鍘�',
-    "椤圭洰鍚嶇О":'閽㈠寲闀�',
-    "涓氬姟鍛�":'鐜嬭壇',
-    "璁㈠簭":'1',
-    "妤煎眰缂栧彿":'813404',
-    "璁㈠崟鏁�":'346',
-    "闀�":'813.00',
-    "瀹�":'404.00',
-    "鍘氬害":'4.00',
-    "鎬绘暟閲�":'176.00',
-    "鎬婚潰绉�":'58.0800',
-    "绠卞彿":'',
-    "鎶ヨ〃鏃ユ湡":'2023-23-13',
-    "鎴愬搧缂栧彿":'0601000622',
-    "鎴愬搧鍚嶇О":'4mm鏂瑰舰閽㈠寲闀�',
-    "鏁伴噺":'176',
-    "鐘舵��":'宸插嚭搴�',
-    "澶囨敞":'',
-  }, {
-    "閫佽揣鍗曞彿":'JG23121112',
-    "閿�鍞崟鍙�":'NG23120610',
-    "瀹㈡埛鍚嶇О":'涓北甯傛í鏍忛晣鐜収鐏グ鍘�',
-    "椤圭洰鍚嶇О":'閽㈠寲闀�',
-    "涓氬姟鍛�":'鐜嬭壇',
-    "璁㈠簭":'1',
-    "妤煎眰缂栧彿":'813404',
-    "璁㈠崟鏁�":'346',
-    "闀�":'813.00',
-    "瀹�":'404.00',
-    "鍘氬害":'4.00',
-    "鎬绘暟閲�":'176.00',
-    "鎬婚潰绉�":'58.0800',
-    "绠卞彿":'',
-    "鎶ヨ〃鏃ユ湡":'2023-23-13',
-    "鎴愬搧缂栧彿":'0601000622',
-    "鎴愬搧鍚嶇О":'4mm鏂瑰舰閽㈠寲闀�',
-    "鏁伴噺":'176',
-    "鐘舵��":'宸插嚭搴�',
-    "澶囨敞":'',
-  }, {
-    "閫佽揣鍗曞彿":'JG23121112',
-    "閿�鍞崟鍙�":'NG23120610',
-    "瀹㈡埛鍚嶇О":'涓北甯傛í鏍忛晣鐜収鐏グ鍘�',
-    "椤圭洰鍚嶇О":'閽㈠寲闀�',
-    "涓氬姟鍛�":'鐜嬭壇',
-    "璁㈠簭":'1',
-    "妤煎眰缂栧彿":'813404',
-    "璁㈠崟鏁�":'346',
-    "闀�":'813.00',
-    "瀹�":'404.00',
-    "鍘氬害":'4.00',
-    "鎬绘暟閲�":'176.00',
-    "鎬婚潰绉�":'58.0800',
-    "绠卞彿":'',
-    "鎶ヨ〃鏃ユ湡":'2023-23-13',
-    "鎴愬搧缂栧彿":'0601000622',
-    "鎴愬搧鍚嶇О":'4mm鏂瑰舰閽㈠寲闀�',
-    "鏁伴噺":'176',
-    "鐘舵��":'宸插嚭搴�',
-    "澶囨敞":'',
-  }, {
-    "閫佽揣鍗曞彿":'JG23121112',
-    "閿�鍞崟鍙�":'NG23120610',
-    "瀹㈡埛鍚嶇О":'涓北甯傛í鏍忛晣鐜収鐏グ鍘�',
-    "椤圭洰鍚嶇О":'閽㈠寲闀�',
-    "涓氬姟鍛�":'鐜嬭壇',
-    "璁㈠簭":'1',
-    "妤煎眰缂栧彿":'813404',
-    "璁㈠崟鏁�":'346',
-    "闀�":'813.00',
-    "瀹�":'404.00',
-    "鍘氬害":'4.00',
-    "鎬绘暟閲�":'176.00',
-    "鎬婚潰绉�":'58.0800',
-    "绠卞彿":'',
-    "鎶ヨ〃鏃ユ湡":'2023-23-13',
-    "鎴愬搧缂栧彿":'0601000622',
-    "鎴愬搧鍚嶇О":'4mm鏂瑰舰閽㈠寲闀�',
-    "鏁伴噺":'176',
-    "鐘舵��":'宸插嚭搴�',
-    "澶囨敞":'',
-  }, {
-    "閫佽揣鍗曞彿":'JG23121112',
-    "閿�鍞崟鍙�":'NG23120610',
-    "瀹㈡埛鍚嶇О":'涓北甯傛í鏍忛晣鐜収鐏グ鍘�',
-    "椤圭洰鍚嶇О":'閽㈠寲闀�',
-    "涓氬姟鍛�":'鐜嬭壇',
-    "璁㈠簭":'1',
-    "妤煎眰缂栧彿":'813404',
-    "璁㈠崟鏁�":'346',
-    "闀�":'813.00',
-    "瀹�":'404.00',
-    "鍘氬害":'4.00',
-    "鎬绘暟閲�":'176.00',
-    "鎬婚潰绉�":'58.0800',
-    "绠卞彿":'',
-    "鎶ヨ〃鏃ユ湡":'2023-23-13',
-    "鎴愬搧缂栧彿":'0601000622',
-    "鎴愬搧鍚嶇О":'4mm鏂瑰舰閽㈠寲闀�',
-    "鏁伴噺":'176',
-    "鐘舵��":'宸插嚭搴�',
-    "澶囨敞":'',
+const gridOptions = reactive({
+  border:  "full",//琛ㄦ牸鍔犺竟妗�
+  keepSource: true,//淇濇寔婧愭暟鎹�
+  align: 'center',//鏂囧瓧灞呬腑
+  stripe:true,//鏂戦┈绾�
+  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
+  id: 'CustomerList',
+  showFooter: true,//鏄剧ず鑴�
+  printConfig: {},
+  importConfig: {},
+  exportConfig: {},
+  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
+  showOverflow:true,
+  columnConfig: {
+    resizable: true,
+    useKey: true
   },
+  filterConfig: {   //绛涢�夐厤缃」
+    remote: true
+  },
+  customConfig: {
+    storage: true
+  },
+  editConfig: {
+    trigger: 'click',
+    mode: 'row',
+    showStatus: true
+  },//琛ㄥご鍙傛暟
+  columns:[
+    {type:'expand',fixed:"left",slots: { content:'content' },width: '50'},
+    { type: 'checkbox',fixed:"left", title: '閫夋嫨', width: '80' },
+    { type: 'seq',fixed:"left", title: '鑷簭', width: '80' },
+    {title: '鎿嶄綔', width: '80', slots: { default: 'button_slot' },fixed:"left"},
+    {field: 'DeliveryOrderNumber', width:'150', title: '閫佽揣鍗曞彿', sortable: true,editRender: { name: 'input', attrs: { placeholder: '' } } },
+    {field: 'SalesOrderNumber', width: '150',title: '閿�鍞崟鍙�', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'ProjectName', width: '120',title: '椤圭洰鍚嶇О', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'ProductName', width: '100',title: '鎴愬搧鍚嶇О', sortable: true},
+    {field: 'ProductNumber',width: '100', title: '鎴愬搧缂栧彿', sortable: true},
+    {field: 'CustomerName',width: '100', title: '瀹㈡埛鍚嶇О', sortable: true},
+    {field: 'Length', width: '100',title: '闀垮害', sortable: true},
+    {field: 'Width',width: '100', title: '瀹藉害', sortable: true},
+    {field: 'Thickness', width: '100',title: '鍘氬害', sortable: true},
+    {field: 'TotalQuantity',width: '140', title: '鎬绘暟閲�', sortable: true},
+    {field: 'TotalArea',width: '100', title: '鎬婚潰绉�', sortable: true},
+    {field: 'FloorNumber',width: '100', title: '妤煎眰缂栧彿', sortable: true},
+    {field: 'OrderNumber',width: '100', title: '璁㈠簭', sortable: true},
+    {field: 'Salesman',width: '100', title: '涓氬姟鍛�', sortable: true},
+    {field: 'BoxNumber',width: '100', title: '绠卞彿', sortable: true},
+    {field: 'Quantity',width: '100', title: '鏁伴噺', sortable: true},
+    {field: 'ReportingDate',width: '140', title: '鎶ヨ〃鏃ユ湡', sortable: true},
+    {field: 'OrderQuantity',width: '100', title: '璁㈠崟鏁�', sortable: true},
+    {field: 'Status',width: '100', title: '鐘舵��', sortable: true},
+    {field: 'remark',width: '80', title: '澶囨敞', sortable: true},
+  ],//琛ㄥご鎸夐挳
+  toolbarConfig: {
+    buttons: [{
+      'name': '纭鍑哄簱',
+      status: 'primary'
+    }],
+    import: false,
+    export: true,
+    print: true,
+    zoom: true,
+    custom: true
+  },
+  data:  [
+    {
+      "DeliveryOrderNumber": "1",
+      "SalesOrderNumber": "NG23072003",
+      "ProjectName": "閽㈠寲鐜荤拑",
+      "CustomerName": "鏉庝簩鐗�",
+      "Salesman": "灏忓渤",
+      "OrderNumber": '7',
+      "FloorNumber": "06040000022",
+      "OrderQuantity": "7",
+      "Length": "1230.00",
+      "Width": "1075.00",
+      "Thickness": "6銆�700",
+      "TotalQuantity": "100.00",
+      "TotalArea": "360.80",
+      "BoxNumber": "06",
+      "ReportingDate": "2023-12-22",
+      "ProductNumber": "NG2312220001",
+      "ProductName": "瓒呯骇鐜荤拑",
+      "Quantity": "360",
+      "Status": "宸茶皟鏋�",
+      "remark": "娴嬭瘯",
+    },  {
+      "DeliveryOrderNumber": "1",
+      "SalesOrderNumber": "NG23072003",
+      "ProjectName": "閽㈠寲鐜荤拑",
+      "CustomerName": "鏉庝簩鐗�",
+      "Salesman": "灏忓渤",
+      "OrderNumber": '7',
+      "FloorNumber": "06040000022",
+      "OrderQuantity": "7",
+      "Length": "1230.00",
+      "Width": "1075.00",
+      "Thickness": "6銆�700",
+      "TotalQuantity": "100.00",
+      "TotalArea": "360.80",
+      "BoxNumber": "06",
+      "ReportingDate": "2023-12-22",
+      "ProductNumber": "NG2312220001",
+      "ProductName": "瓒呯骇鐜荤拑",
+      "Quantity": "360",
+      "Status": "宸茶皟鏋�",
+      "remark": "娴嬭瘯",
+    },  {
+      "DeliveryOrderNumber": "1",
+      "SalesOrderNumber": "NG23072003",
+      "ProjectName": "閽㈠寲鐜荤拑",
+      "CustomerName": "鏉庝簩鐗�",
+      "Salesman": "灏忓渤",
+      "OrderNumber": '7',
+      "FloorNumber": "06040000022",
+      "OrderQuantity": "7",
+      "Length": "1230.00",
+      "Width": "1075.00",
+      "Thickness": "6銆�700",
+      "TotalQuantity": "100.00",
+      "TotalArea": "360.80",
+      "BoxNumber": "06",
+      "ReportingDate": "2023-12-22",
+      "ProductNumber": "NG2312220001",
+      "ProductName": "瓒呯骇鐜荤拑",
+      "Quantity": "360",
+      "Status": "宸茶皟鏋�",
+      "remark": "娴嬭瘯",
+    },  {
+      "DeliveryOrderNumber": "1",
+      "SalesOrderNumber": "NG23072003",
+      "ProjectName": "閽㈠寲鐜荤拑",
+      "CustomerName": "鏉庝簩鐗�",
+      "Salesman": "灏忓渤",
+      "OrderNumber": '7',
+      "FloorNumber": "06040000022",
+      "OrderQuantity": "7",
+      "Length": "1230.00",
+      "Width": "1075.00",
+      "Thickness": "6銆�700",
+      "TotalQuantity": "100.00",
+      "TotalArea": "360.80",
+      "BoxNumber": "06",
+      "ReportingDate": "2023-12-22",
+      "ProductNumber": "NG2312220001",
+      "ProductName": "瓒呯骇鐜荤拑",
+      "Quantity": "360",
+      "Status": "宸茶皟鏋�",
+      "remark": "娴嬭瘯",
+    },  {
+      "DeliveryOrderNumber": "1",
+      "SalesOrderNumber": "NG23072003",
+      "ProjectName": "閽㈠寲鐜荤拑",
+      "CustomerName": "鏉庝簩鐗�",
+      "Salesman": "灏忓渤",
+      "OrderNumber": '7',
+      "FloorNumber": "06040000022",
+      "OrderQuantity": "7",
+      "Length": "1230.00",
+      "Width": "1075.00",
+      "Thickness": "6銆�700",
+      "TotalQuantity": "100.00",
+      "TotalArea": "360.80",
+      "BoxNumber": "06",
+      "ReportingDate": "2023-12-22",
+      "ProductNumber": "NG2312220001",
+      "ProductName": "瓒呯骇鐜荤拑",
+      "Quantity": "360",
+      "Status": "宸茶皟鏋�",
+      "remark": "娴嬭瘯",
+    },  {
+      "DeliveryOrderNumber": "1",
+      "SalesOrderNumber": "NG23072003",
+      "ProjectName": "閽㈠寲鐜荤拑",
+      "CustomerName": "鏉庝簩鐗�",
+      "Salesman": "灏忓渤",
+      "OrderNumber": '7',
+      "FloorNumber": "06040000022",
+      "OrderQuantity": "7",
+      "Length": "1230.00",
+      "Width": "1075.00",
+      "Thickness": "6銆�700",
+      "TotalQuantity": "100.00",
+      "TotalArea": "360.80",
+      "BoxNumber": "06",
+      "ReportingDate": "2023-12-22",
+      "ProductNumber": "NG2312220001",
+      "ProductName": "瓒呯骇鐜荤拑",
+      "Quantity": "360",
+      "Status": "宸茶皟鏋�",
+      "remark": "娴嬭瘯",
+    },
 
-]);
+  ],//table body瀹為檯鏁版嵁
+  footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
+    return[
+      columns.map((column, columnIndex) => {
+        if (columnIndex === 0) {
+          return '鍚堣:'
+        }
+        // if (props.tableProp.footList.includes(column.field)) {
+        //   return sumNum(data, column.field)
+        // }
+        return ''
+      })
+    ]
+  }
+
+})
+
+
 
 </script>
+
 <template>
-  <div>
-    <div>
-      <el-form  size="medium" >
+  <div class="main-div-customer">
+    <vxe-grid
+        max-height="100%"
+        @filter-change="filterChanged"
+        class="mytable-scrollbar"
+        ref="xGrid"
+        v-bind="gridOptions"
 
-        <el-row gutter="7">
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="name" placeholder="閿�鍞崟鍙�" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="productName" placeholder="閫佽揣鍗曞彿" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="salId" placeholder="瀹㈡埛鍚嶇О" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
-<!--          <el-col :span="2">-->
-<!--            <el-button id="searchButton" type="primary" :icon="Search" style="width: 100px; height: 25px">瀵煎嚭</el-button>-->
-<!--          </el-col>-->
-<!--          <el-col :span="4">-->
-<!--            <el-button id="searchButton" type="primary" :icon="Search" style="width: 100px; height: 25px">鏌ヨ</el-button>-->
-<!--          </el-col>-->
-          <el-col :span="4">
-            <el-button id="searchButton" type="primary" :icon="Search" style="width: 100px; height: 25px">纭畾</el-button>
-          </el-col>
-        </el-row>
+    >
+      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
+      <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
+      <template #content="{ row}">
+        <ul class="expand-wrapper">
+          <li  v-for="(item,key,index) in row">
+            <span style="font-weight: bold">{{key+':  '}}</span>
+            <span>{{ item }}</span>
+          </li>
+        </ul>
+      </template>
 
-      </el-form>
-      <div>
-        <el-table :data="tableData" border style="width: 100%">
-          <el-table-column prop="閫佽揣鍗曞彿" label="閫佽揣鍗曞彿" width="100" />
-          <el-table-column prop="閿�鍞崟鍙�" label="閿�鍞崟鍙�" width="120" />
-          <el-table-column prop="瀹㈡埛鍚嶇О" label="瀹㈡埛鍚嶇О" width="180"/>
-          <el-table-column prop="椤圭洰鍚嶇О" label="椤圭洰鍚嶇О" width="100"/>
-          <el-table-column prop="涓氬姟鍛�" label="涓氬姟鍛�" width="80"/>
-          <el-table-column prop="璁㈠簭" label="璁㈠簭" width="80"/>
-          <el-table-column prop="妤煎眰缂栧彿" label="妤煎眰缂栧彿" width="100"/>
-          <el-table-column prop="璁㈠崟鏁�" label="璁㈠崟鏁�" width="100"/>
-          <el-table-column prop="闀�" label="闀�" width="180"/>
-          <el-table-column prop="瀹�" label="瀹�" width="80"/>
-          <el-table-column prop="鍘氬害" label="鍘氬害" width="100"/>
-          <el-table-column prop="鎬绘暟閲�" label="鎬绘暟閲�" width="80"/>
-          <el-table-column prop="绠卞彿" label="绠卞彿" width="80"/>
-          <el-table-column prop="鎬婚潰绉�" label="鎬婚潰绉�" width="80"/>
-          <el-table-column prop="鎶ヨ〃鏃ユ湡" label="鎶ヨ〃鏃ユ湡" width="100"/>
-          <el-table-column prop="鎴愬搧缂栧彿" label="鎴愬搧缂栧彿" width="120"/>
-          <el-table-column prop="鎴愬搧鍚嶇О" label="鎴愬搧鍚嶇О" width="130"/>
-          <el-table-column prop="鏁伴噺" label="鏁伴噺" width="80"/>
-          <el-table-column prop="鐘舵��" label="鐘舵��" width="80"/>
-          <el-table-column prop="澶囨敞" label="澶囨敞" width="80"/>
-          <el-table-column prop="閫夋嫨" label="閫夋嫨" type="selection"  width="80"/>
-        </el-table>
-      </div>
-    </div>
+      <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
+      <template #button_slot="{ row }">
+        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">缂栬緫</el-button>
+
+      </template>
+
+      <template #num1_filter="{ column, $panel }">
+        <div>
+          <div v-for="(option, index) in column.filters" :key="index">
+            <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
+          </div>
+        </div>
+      </template>
+
+
+    </vxe-grid>
   </div>
 </template>
-<style>
 
+<style scoped>
+.main-div-customer{
+  width: 99%;
+  height: 100%;
+}
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductReturn.vue b/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductReturn.vue
index b50564f..6157485 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductReturn.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductReturn.vue
@@ -1,87 +1,184 @@
-<!-- 鎴愬搧閫�璐� -->
+<!--鎴愬搧閫�璐�-->
 
-<script lang="ts" setup>
-import {ref} from "vue";
-let tableData = ref([
-  {
-    "閫�璐у崟鍙�":'TH23113001',
-    "閿�鍞崟鍙�":'NG23112209',
-    "鍙戣揣鍗曞彿":'JG23112209',
-    "瀹㈡埛鍚嶇О":'79',
-    "椤圭洰鍚嶇О":'楂樻�ц兘鐜繚闀�',
-    "浜у搧鍚嶇О":'4mm楂樻�ц兘鐜繚闀�',
-    "閫�璐ф暟閲�":'367',
-    "涓氬姟鍛�":'姣涘崼',
-    "鍒跺崟鏃ユ湡":'23-11-30 00:00:00',
-    "澶囨敞":'',
-  },
-  {
-    "閫�璐у崟鍙�":'TH23113001',
-    "閿�鍞崟鍙�":'NG23112209',
-    "鍙戣揣鍗曞彿":'JG23112209',
-    "瀹㈡埛鍚嶇О":'79',
-    "椤圭洰鍚嶇О":'楂樻�ц兘鐜繚闀�',
-    "浜у搧鍚嶇О":'4mm楂樻�ц兘鐜繚闀�',
-    "閫�璐ф暟閲�":'367',
-    "涓氬姟鍛�":'姣涘崼',
-    "鍒跺崟鏃ユ湡":'23-11-30 00:00:00',
-    "澶囨敞":'',
-  },
-  {
-    "閫�璐у崟鍙�":'TH23113001',
-    "閿�鍞崟鍙�":'NG23112209',
-    "鍙戣揣鍗曞彿":'JG23112209',
-    "瀹㈡埛鍚嶇О":'79',
-    "椤圭洰鍚嶇О":'楂樻�ц兘鐜繚闀�',
-    "浜у搧鍚嶇О":'4mm楂樻�ц兘鐜繚闀�',
-    "閫�璐ф暟閲�":'367',
-    "涓氬姟鍛�":'姣涘崼',
-    "鍒跺崟鏃ユ湡":'23-11-30 00:00:00',
-    "澶囨敞":'',
+<script setup>
+
+import {reactive} from "vue";
+import {useRouter} from  'vue-router'
+let router=useRouter()
+const getTableRow = (row,type) =>{
+  switch (type) {
+    case 'edit' :{
+      alert('鏍规嵁閫�璐у崟鍙锋煡璇㈠悇鍗曟槑缁嗭紝鍦ㄦ槑缁嗕腑淇敼')
+      // router.push({path: '/main/trader/CreateTrader', query: { id: row.id }})
+      break
+    }
+    case 'delete':{
+      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
+      break
+    }
   }
-])
+}
+
+
+
+//瀛愮粍浠舵帴鏀跺弬鏁�
+
+const gridOptions = reactive({
+  border:  "full",//琛ㄦ牸鍔犺竟妗�
+  keepSource: true,//淇濇寔婧愭暟鎹�
+  align: 'center',//鏂囧瓧灞呬腑
+  stripe:true,//鏂戦┈绾�
+  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
+  id: 'CustomerList',
+  showFooter: true,//鏄剧ず鑴�
+  printConfig: {},
+  importConfig: {},
+  exportConfig: {},
+  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
+  showOverflow:true,
+  columnConfig: {
+    resizable: true,
+    useKey: true
+  },
+  filterConfig: {   //绛涢�夐厤缃」
+    remote: true
+  },
+  customConfig: {
+    storage: true
+  },
+  editConfig: {
+    trigger: 'click',
+    mode: 'row',
+    showStatus: true
+  },//琛ㄥご鍙傛暟
+  columns:[
+    {type:'expand',fixed:"left",slots: { content:'content' },width: '50'},
+    // { type: 'checkbox',fixed:"left", title: '閫夋嫨', width: '80' },
+    // { type: 'seq',fixed:"left", title: '鑷簭', width: '80' },
+    {title: '鎿嶄綔', width: '100', slots: { default: 'button_slot' },fixed:"left"},
+    {field: 'ReturnNumber', width: '150',title: '閫�璐у崟鍙�', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'SalesNumber', width: '120',title: '閿�鍞崟鍙�', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'NewNum', width:'150', title: '璁㈠簭', sortable: true },
+    {field: 'ShippingNumber',width: '100', title: '鍙戣揣鍗曞彿', sortable: true,showOverflow:"ellipsis"},
+    {field: 'CustomerName', width: '100',title: '瀹㈡埛鍚嶇О', sortable: true},
+    {field: 'ProjectName',width: '100', title: '浜у搧鍚嶇О', sortable: true},
+    {field: 'ReturnedQuantity', width: '100',title: '閫�璐ф暟閲�', sortable: true},
+    {field: 'ProductName',width: '100', title: '瀹㈡埛鍚嶇О', sortable: true},
+    {field: 'Salesperson', width: '100',title: '涓氬姟鍛�', sortable: true},
+    {field: 'OrderDate',width: '100', title: '鍒跺崟鏃ユ湡', sortable: true},
+    {field: 'Remark', width: '100',title: '澶囨敞', sortable: true},
+  ],//琛ㄥご鎸夐挳
+  toolbarConfig: {
+    // buttons: [{
+    //   'name': '鏂板'
+    // }],
+    import: false,
+    export: true,
+    print: true,
+    zoom: true,
+    custom: true
+  },
+  data:  [
+    {
+      "ReturnNumber": "TD23072003",
+      "SalesNumber": "NG23112209",
+      "ShippingNumber": "JG23112209",
+      'CustomerName':'寮犱笁',
+      'ProjectName':'楂樻�ц兘鐜繚闀�',
+      'ProductName':'4mm楂樻�ц兘鐜繚闀�',
+      "ReturnedQuantity": "367",
+      "Salesperson": "姣涘崼",
+      "OrderDate": "23-11-30 00:00:00",
+      "NewNum":'123123123',
+      "Remark": "娴嬭瘯",
+    } ,{
+      "ReturnNumber": "TD23072003",
+      "SalesNumber": "NG23112209",
+      "ShippingNumber": "JG23112209",
+      'CustomerName':'寮犱笁',
+      'ProjectName':'楂樻�ц兘鐜繚闀�',
+      'ProductName':'4mm楂樻�ц兘鐜繚闀�',
+      "ReturnedQuantity": "367",
+      "Salesperson": "姣涘崼",
+      "OrderDate": "23-11-30 00:00:00",
+      "NewNum":'123123123',
+      "Remark": "娴嬭瘯",
+    }, {
+      "ReturnNumber": "TD23072003",
+      "SalesNumber": "NG23112209",
+      "ShippingNumber": "JG23112209",
+      'CustomerName':'寮犱笁',
+      'ProjectName':'楂樻�ц兘鐜繚闀�',
+      'ProductName':'4mm楂樻�ц兘鐜繚闀�',
+      "ReturnedQuantity": "367",
+      "Salesperson": "姣涘崼",
+      "OrderDate": "23-11-30 00:00:00",
+      "NewNum":'123123123',
+      "Remark": "娴嬭瘯",
+    }
+  ],//table body瀹為檯鏁版嵁
+  footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
+    return[
+      columns.map((column, columnIndex) => {
+        if (columnIndex === 0) {
+          return '鍚堣:'
+        }
+        // if (props.tableProp.footList.includes(column.field)) {
+        //   return sumNum(data, column.field)
+        // }
+        return ''
+      })
+    ]
+  }
+
+})
+
+
+
 </script>
+
 <template>
-<div>
-  <div>
-    <el-form  size="medium" >
+  <div class="main-div-customer">
+    <vxe-grid
+        max-height="100%"
+        @filter-change="filterChanged"
+        class="mytable-scrollbar"
+        ref="xGrid"
+        v-bind="gridOptions"
 
-<!--      <el-row gutter="7">-->
-<!--        <el-col :span="4">-->
-<!--          <el-input v-model="name" placeholder="閿�鍞崟鍙�" style="width: 200px; height: 30px;" />-->
-<!--        </el-col>-->
-<!--        <el-col :span="4">-->
-<!--          <el-input v-model="productName" placeholder="鍙戣揣鍗曞彿" style="width: 200px; height: 30px;" />-->
-<!--        </el-col>-->
-<!--        <el-col :span="4">-->
-<!--          <el-input v-model="salId" placeholder="瀹㈡埛鍚嶇О" style="width: 200px; height: 30px;" />-->
-<!--        </el-col>-->
-<!--        <el-col :span="4">-->
-<!--          <el-input v-model="salId" placeholder="椤圭洰鍚嶇О" style="width: 200px; height: 30px;" />-->
-<!--        </el-col>-->
-<!--        <el-col :span="4">-->
-<!--          <el-button id="searchButton" type="primary" :icon="Search" style="width: 100px; height: 25px">鏌ヨ</el-button>-->
-<!--        </el-col>-->
-<!--      </el-row>-->
+    >
+      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
+      <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
+      <template #content="{ row}">
+        <ul class="expand-wrapper">
+          <li  v-for="(item,key,index) in row">
+            <span style="font-weight: bold">{{key+':  '}}</span>
+            <span>{{ item }}</span>
+          </li>
+        </ul>
+      </template>
 
-    </el-form>
+      <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
+      <template #button_slot="{ row }">
+        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">缂栬緫</el-button>
+      </template>
+
+      <template #num1_filter="{ column, $panel }">
+        <div>
+          <div v-for="(option, index) in column.filters" :key="index">
+            <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
+          </div>
+        </div>
+      </template>
+
+
+    </vxe-grid>
   </div>
-  <div>
-    <el-table :data="tableData" border style="width: 85.3%">
-      <el-table-column prop="閫�璐у崟鍙�" label="閫�璐у崟鍙�" width="110" />
-      <el-table-column prop="閿�鍞崟鍙�" label="閿�鍞崟鍙�" width="110" />
-      <el-table-column prop="鍙戣揣鍗曞彿" label="鍙戣揣鍗曞彿" width="100"/>
-      <el-table-column prop="瀹㈡埛鍚嶇О" label="瀹㈡埛鍚嶇О" width="80"/>
-      <el-table-column prop="椤圭洰鍚嶇О" label="椤圭洰鍚嶇О" width="110"/>
-      <el-table-column prop="浜у搧鍚嶇О" label="浜у搧鍚嶇О" width="180"/>
-      <el-table-column prop="閫�璐ф暟閲�" label="閫�璐ф暟閲�" width="100"/>
-      <el-table-column prop="涓氬姟鍛�" label="涓氬姟鍛�" width="100"/>
-      <el-table-column prop="鍒跺崟鏃ユ湡" label="鍒跺崟鏃ユ湡" width="180"/>
-      <el-table-column prop="澶囨敞" label="澶囨敞" width="80"/>
-    </el-table>
-  </div>
-</div>
 </template>
-<style>
 
+<style scoped>
+.main-div-customer{
+  width: 99%;
+  height: 100%;
+}
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductRework.vue b/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductRework.vue
index 6735d38..bf6222e 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductRework.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/FinishedProductRework.vue
@@ -1,146 +1,216 @@
-<!-- 鎴愬搧杩斿伐 -->
+<!--鎴愬搧杩斿伐-->
 
 
-<script lang="ts" setup>
-import {ref} from "vue";
-const handleClick = (row)=>{
-  router.push({
-    path: '/orderAllocationUpdate',
-    query: {
-      rowData: JSON.stringify(row)
+
+<script setup>
+
+import {reactive} from "vue";
+import {useRouter} from  'vue-router'
+let router=useRouter()
+const getTableRow = (row,type) =>{
+  switch (type) {
+    case 'edit' :{
+      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+      router.push({path: '/main/productStock/OrderAllocation', query: { id: row.id }})
+      break
     }
-  });
-  return {
-    tableData,
-    handleClick
-  };
+    case 'back':{
+      router.push({path: '/main/productStock/FinishedProductRework', query: { id: row.id }})
+      break
+    }
+    case 'out' :{
+      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+      router.push({path: '/main/productStock/FinishedGoodsIssue', query: { id: row.id }})
+      break
+    }
+  }
 }
-let tableData = ref([
-  {
-    "閿�鍞崟鍙�":'NG23121309',
-    "椤圭洰鍚嶇О":'閽㈠寲鐜荤拑',
-    "瀹㈡埛缂栧彿":'89',
-    "瀹㈡埛鍚嶇О":'',
-    "娴佺▼鍗″彿":'NG23121309A01',
-    "鎴愬搧缂栧彿":'0604000299',
-    "绠辨灦鍙�":'0',
-    "鎴愬搧鍚嶇О":'3.2mm鎷卞舰閽㈠寲鐜荤拑',
-    "闀�":'1610.00',
-    "瀹�":'520.00',
-    "鍘�":'3.20',
-    "鏁伴噺":'122.00',
-    "鍗曠墖闈㈢Н":'0.8372',
-    "鎬婚潰绉�":'102.1384',
-    "搴撳尯":'搴撳尯',
-    "搴撲綅":'0',
-  },  {
-    "閿�鍞崟鍙�":'NG23121309',
-    "椤圭洰鍚嶇О":'閽㈠寲鐜荤拑',
-    "瀹㈡埛缂栧彿":'89',
-    "瀹㈡埛鍚嶇О":'',
-    "娴佺▼鍗″彿":'NG23121309A01',
-    "鎴愬搧缂栧彿":'0604000299',
-    "绠辨灦鍙�":'0',
-    "鎴愬搧鍚嶇О":'3.2mm鎷卞舰閽㈠寲鐜荤拑',
-    "闀�":'1610.00',
-    "瀹�":'520.00',
-    "鍘�":'3.20',
-    "鏁伴噺":'122.00',
-    "鍗曠墖闈㈢Н":'0.8372',
-    "鎬婚潰绉�":'102.1384',
-    "搴撳尯":'搴撳尯',
-    "搴撲綅":'0',
+
+
+
+//瀛愮粍浠舵帴鏀跺弬鏁�
+
+const gridOptions = reactive({
+  border:  "full",//琛ㄦ牸鍔犺竟妗�
+  keepSource: true,//淇濇寔婧愭暟鎹�
+  align: 'center',//鏂囧瓧灞呬腑
+  stripe:true,//鏂戦┈绾�
+  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
+  id: 'CustomerList',
+  showFooter: true,//鏄剧ず鑴�
+  printConfig: {},
+  importConfig: {},
+  exportConfig: {},
+  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
+  showOverflow:true,
+  columnConfig: {
+    resizable: true,
+    useKey: true
   },
-  {
-    "閿�鍞崟鍙�":'NG23121309',
-    "椤圭洰鍚嶇О":'閽㈠寲鐜荤拑',
-    "瀹㈡埛缂栧彿":'89',
-    "瀹㈡埛鍚嶇О":'',
-    "娴佺▼鍗″彿":'NG23121309A01',
-    "鎴愬搧缂栧彿":'0604000299',
-    "绠辨灦鍙�":'0',
-    "鎴愬搧鍚嶇О":'3.2mm鎷卞舰閽㈠寲鐜荤拑',
-    "闀�":'1610.00',
-    "瀹�":'520.00',
-    "鍘�":'3.20',
-    "鏁伴噺":'122.00',
-    "鍗曠墖闈㈢Н":'0.8372',
-    "鎬婚潰绉�":'102.1384',
-    "搴撳尯":'搴撳尯',
-    "搴撲綅":'0',
+  filterConfig: {   //绛涢�夐厤缃」
+    remote: true
   },
-])
+  customConfig: {
+    storage: true
+  },
+  editConfig: {
+    trigger: 'click',
+    mode: 'row',
+    showStatus: true
+  },//琛ㄥご鍙傛暟
+  columns:[
+    {type:'expand',fixed:"left",slots: { content:'content' },width: '50'},
+    { type: 'checkbox',fixed:"left", title: '閫夋嫨', width: '80' },
+    // { type: 'seq',fixed:"left", title: '鑷簭', width: '80' },
+    // {title: '鎿嶄綔', width: '220', slots: { default: 'button_slot' },fixed:"left"},
+    {field: 'SalesOrderNumber', width: '150',title: '閿�鍞崟鍙�', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'ProjectName', width: '120',title: '椤圭洰鍚嶇О', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'ProcessCardNumber',width: '100', title: '娴佺▼鍗″彿', sortable: true,showOverflow:"ellipsis"},
+    {field: 'FinishedProductNumber', width: '100',title: '鎴愬搧缂栧彿', sortable: true},
+    {field: 'Quantity',width: '140', title: '鏁伴噺', sortable: true},
+    {field: 'ReworkQuantity',width: '140', title: '杩斿伐鏁伴噺',editRender: { name: 'input', attrs: { placeholder: '' } }, sortable: true},
+    {field: 'ProductNumber',width: '100', title: '浜у搧缂栧彿', sortable: true},
+    {field: 'CustomerNumber', width: '100',title: '瀹㈡埛缂栧彿', sortable: true},
+    {field: 'CustomerName',width: '100', title: '瀹㈡埛鍚嶇О', sortable: true},
+    {field: 'Length', width: '100',title: '闀垮害', sortable: true},
+    {field: 'Width',width: '100', title: '瀹藉害', sortable: true},
+    {field: 'Thickness', width: '100',title: '鍘氬害', sortable: true},
+    {field: 'SingleArea',width: '140', title: '鍗曠墖闈㈢Н', sortable: true},
+    {field: 'TotalArea',width: '100', title: '鎬婚潰绉�', sortable: true},
+    {field: 'StorageArea',width: '100', title: '搴撳尯', sortable: true},
+    {field: 'Location',width: '100', title: '搴撲綅', sortable: true},
+  ],//琛ㄥご鎸夐挳
+  toolbarConfig: {
+    buttons: [{
+      'name': '杩斿伐纭',status: 'primary'
+    },{
+      'name': '杩斿伐璁板綍'
+    }],
+    import: false,
+    export: true,
+    print: true,
+    zoom: true,
+    custom: true
+  },
+  data:  [
+    {
+      "SalesOrderNumber": "NG23072003",
+      "ProjectName": "閽㈠寲鐜荤拑",
+      "ProcessCardNumber": "NG23072003A01",
+      'FinishedProductNumber':'',
+      'FinishedProductName':'',
+      'BoxNumber':'',
+      "CustomerNumber": "KD0071",
+      "CustomerName": "浠�",
+      "Length": "1075.00",
+      "Width": "440.00",
+      "Thickness": "3.00",
+      "Quantity": "360",
+      "SingleArea": "0.473000",
+      "TotalArea": "170.28",
+      "StorageArea": "0.47",
+      "Location": "170.28",
+    },{
+      "SalesOrderNumber": "NG23072003",
+      "ProjectName": "閽㈠寲鐜荤拑",
+      "ProcessCardNumber": "NG23072003A01",
+      'FinishedProductNumber':'',
+      'FinishedProductName':'',
+      'BoxNumber':'',
+      "CustomerNumber": "KD0071",
+      "CustomerName": "浠�",
+      "Length": "1075.00",
+      "Width": "440.00",
+      "Thickness": "3.00",
+      "Quantity": "360",
+      "SingleArea": "0.473000",
+      "TotalArea": "170.28",
+      "StorageArea": "0.47",
+      "Location": "170.28",
+    },{
+      "SalesOrderNumber": "NG23072003",
+      "ProjectName": "閽㈠寲鐜荤拑",
+      "ProcessCardNumber": "NG23072003A01",
+      'FinishedProductNumber':'',
+      'FinishedProductName':'',
+      'BoxNumber':'',
+      "CustomerNumber": "KD0071",
+      "CustomerName": "浠�",
+      "Length": "1075.00",
+      "Width": "440.00",
+      "Thickness": "3.00",
+      "Quantity": "360",
+      "SingleArea": "0.473000",
+      "TotalArea": "170.28",
+      "StorageArea": "0.47",
+      "Location": "170.28",
+    },
+
+  ],//table body瀹為檯鏁版嵁
+  footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
+    return[
+      columns.map((column, columnIndex) => {
+        if (columnIndex === 0) {
+          return '鍚堣:'
+        }
+        // if (props.tableProp.footList.includes(column.field)) {
+        //   return sumNum(data, column.field)
+        // }
+        return ''
+      })
+    ]
+  }
+
+})
+
+
+
 </script>
+
 <template>
-  <div>
-    <div>
-      <el-form  size="medium" >
+  <div class="main-div-customer">
+    <vxe-grid
+        max-height="100%"
+        @filter-change="filterChanged"
+        class="mytable-scrollbar"
+        ref="xGrid"
+        v-bind="gridOptions"
 
-        <el-row gutter="5">
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="name" placeholder="璇疯緭瀹㈡埛鍚嶇О" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="name" placeholder="璇疯緭椤圭洰鍚嶇О" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="name" placeholder="璇疯緭閿�鍞崟鍙�" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
+    >
+      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
+      <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
+      <template #content="{ row}">
+        <ul class="expand-wrapper">
+          <li  v-for="(item,key,index) in row">
+            <span style="font-weight: bold">{{key+':  '}}</span>
+            <span>{{ item }}</span>
+          </li>
+        </ul>
+      </template>
 
-          <el-col :span="4">
-            <el-dropdown>
-              <el-button type="primary" style="width: auto">
-                璇烽�夋嫨杩斿伐绫诲瀷<el-icon class="el-icon--right" style="width: 60px;">
-                <arrow-down />
-              </el-icon>
-              </el-button>
-              <template #dropdown>
-                <el-dropdown-menu>
-                  <el-dropdown-item>搴撳瓨杩斿伐</el-dropdown-item>
-                  <el-dropdown-item>閫�璐ц繑宸�</el-dropdown-item>
-                </el-dropdown-menu>
-              </template>
-            </el-dropdown>
-          </el-col>
-          <el-col :span="2">
-            <el-button id="searchButton" type="primary" :icon="Search">杩斿伐璁板綍</el-button>
-          </el-col>
-          <el-col :span="4">
-            <el-button id="searchButton" type="primary" :icon="Search">鏌ヨ</el-button>
-          </el-col>
+      <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
+      <template #button_slot="{ row }">
+        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">璁㈠崟璋冩嫧</el-button>
+        <el-button @click="getTableRow(row,'out')" link type="primary" size="small">鎴愬搧棰嗗嚭</el-button>
+        <el-button @click="getTableRow(row,'back')" link type="primary" size="small">鎴愬搧杩斿伐</el-button>
+      </template>
 
-        </el-row>
-      </el-form>
-    </div>
-    <div>
-      <el-table :data="tableData" border style="width: 100%;">
-        <el-table-column prop="閿�鍞崟鍙�" label="閿�鍞崟鍙�" width="180" style="text-align: center"/>
-        <el-table-column prop="椤圭洰鍚嶇О" label="椤圭洰鍚嶇О" width="180" />
-        <el-table-column prop="瀹㈡埛缂栧彿" label="瀹㈡埛缂栧彿" width="180"/>
-        <el-table-column prop="瀹㈡埛鍚嶇О" label="瀹㈡埛鍚嶇О" width="180"/>
-        <el-table-column prop="娴佺▼鍗″彿" label="娴佺▼鍗″彿" width="180"/>
-        <el-table-column prop="鎴愬搧缂栧彿" label="鎴愬搧缂栧彿" width="180"/>
-        <el-table-column prop="绠辨灦鍙�" label="绠辨灦鍙�" width="180"/>
-        <el-table-column prop="鎴愬搧鍚嶇О" label="鎴愬搧鍚嶇О" width="180"/>
-        <el-table-column prop="闀�" label="闀�" width="180"/>
-        <el-table-column prop="瀹�" label="瀹�" width="180"/>
-        <el-table-column prop="鍘�" label="鍘�" width="180"/>
-        <el-table-column prop="鏁伴噺" label="鏁伴噺" width="180"/>
-        <el-table-column prop="鍗曠墖闈㈢Н" label="鍗曠墖闈㈢Н" width="180"/>
-        <el-table-column prop="鎬婚潰绉�" label="鎬婚潰绉�" width="180"/>
-        <el-table-column prop="搴撳尯" label="搴撳尯" width="180"/>
-        <el-table-column prop="搴撲綅" label="搴撲綅" width="180"/>
-        <el-table-column fixed="left" label="鎿嶄綔" width="80">
-          <template #default>
-            <el-button link type="primary" size="small" @click="handleClick(row)"
-            >缂栬緫</el-button>
+      <template #num1_filter="{ column, $panel }">
+        <div>
+          <div v-for="(option, index) in column.filters" :key="index">
+            <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
+          </div>
+        </div>
+      </template>
 
-          </template>
-        </el-table-column>
-      </el-table>
-    </div>
+
+    </vxe-grid>
   </div>
 </template>
-<style>
 
+<style scoped>
+.main-div-customer{
+  width: 99%;
+  height: 100%;
+}
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/OrderAllocation.vue b/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/OrderAllocation.vue
index 44a9b02..269bac9 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/OrderAllocation.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/OrderAllocation.vue
@@ -1,130 +1,220 @@
-<!-- 璁㈠崟璋冩嫧 -->
+<!--鎴愬搧璋冩嫧-->
 
 
-<script lang="ts" setup>
-import {ref} from "vue";
-const handleClick = (row)=>{
-  router.push({
-    path: '/orderAllocationUpdate',
-    query: {
-      rowData: JSON.stringify(row)
+<script setup>
+
+import {reactive} from "vue";
+import {useRouter} from  'vue-router'
+let router=useRouter()
+const getTableRow = (row,type) =>{
+  switch (type) {
+    case 'edit' :{
+      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+      // router.push({path: '/main/productStock/OrderAllocation', query: { id: row.id }})
+      break
     }
-  });
-  return {
-    tableData,
-    handleClick
-  };
+    case 'back':{
+      router.push({path: '/main/productStock/FinishedProductRework', query: { id: row.id }})
+      break
+    }
+    case 'out' :{
+      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+      router.push({path: '/main/productStock/FinishedGoodsIssue', query: { id: row.id }})
+      break
+    }
+  }
 }
-let tableData = ref([
-  {
-    "閿�鍞崟鍙�":'NG23121309',
-    "椤圭洰鍚嶇О":'閽㈠寲鐜荤拑',
-    "瀹㈡埛缂栧彿":'89',
-    "瀹㈡埛鍚嶇О":'',
-    "娴佺▼鍗″彿":'NG23121309A01',
-    "鎴愬搧缂栧彿":'0604000299',
-    "绠辨灦鍙�":'0',
-    "鎴愬搧鍚嶇О":'3.2mm鎷卞舰閽㈠寲鐜荤拑',
-    "闀�":'1610.00',
-    "瀹�":'520.00',
-    "鍘�":'3.20',
-    "鏁伴噺":'122.00',
-    "鍗曠墖闈㈢Н":'0.8372',
-    "鎬婚潰绉�":'102.1384',
-    "搴撳尯":'搴撳尯',
-    "搴撲綅":'0',
-  },  {
-    "閿�鍞崟鍙�":'NG23121309',
-    "椤圭洰鍚嶇О":'閽㈠寲鐜荤拑',
-    "瀹㈡埛缂栧彿":'89',
-    "瀹㈡埛鍚嶇О":'',
-    "娴佺▼鍗″彿":'NG23121309A01',
-    "鎴愬搧缂栧彿":'0604000299',
-    "绠辨灦鍙�":'0',
-    "鎴愬搧鍚嶇О":'3.2mm鎷卞舰閽㈠寲鐜荤拑',
-    "闀�":'1610.00',
-    "瀹�":'520.00',
-    "鍘�":'3.20',
-    "鏁伴噺":'122.00',
-    "鍗曠墖闈㈢Н":'0.8372',
-    "鎬婚潰绉�":'102.1384',
-    "搴撳尯":'搴撳尯',
-    "搴撲綅":'0',
+
+
+
+//瀛愮粍浠舵帴鏀跺弬鏁�
+
+const gridOptions = reactive({
+  border:  "full",//琛ㄦ牸鍔犺竟妗�
+  keepSource: true,//淇濇寔婧愭暟鎹�
+  align: 'center',//鏂囧瓧灞呬腑
+  stripe:true,//鏂戦┈绾�
+  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
+  id: 'CustomerList',
+  showFooter: true,//鏄剧ず鑴�
+  printConfig: {},
+  importConfig: {},
+  exportConfig: {},
+  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
+  showOverflow:true,
+  columnConfig: {
+    resizable: true,
+    useKey: true
   },
-  {
-    "閿�鍞崟鍙�":'NG23121309',
-    "椤圭洰鍚嶇О":'閽㈠寲鐜荤拑',
-    "瀹㈡埛缂栧彿":'89',
-    "瀹㈡埛鍚嶇О":'',
-    "娴佺▼鍗″彿":'NG23121309A01',
-    "鎴愬搧缂栧彿":'0604000299',
-    "绠辨灦鍙�":'0',
-    "鎴愬搧鍚嶇О":'3.2mm鎷卞舰閽㈠寲鐜荤拑',
-    "闀�":'1610.00',
-    "瀹�":'520.00',
-    "鍘�":'3.20',
-    "鏁伴噺":'122.00',
-    "鍗曠墖闈㈢Н":'0.8372',
-    "鎬婚潰绉�":'102.1384',
-    "搴撳尯":'搴撳尯',
-    "搴撲綅":'0',
+  filterConfig: {   //绛涢�夐厤缃」
+    remote: true
   },
-])
+  customConfig: {
+    storage: true
+  },
+  editConfig: {
+    trigger: 'click',
+    mode: 'row',
+    showStatus: true
+  },//琛ㄥご鍙傛暟
+  columns:[
+    {type:'expand',fixed:"left",slots: { content:'content' },width: '50'},
+    { type: 'checkbox',fixed:"left", title: '閫夋嫨', width: '80' },
+    // { type: 'seq',fixed:"left", title: '鑷簭', width: '80' },
+    // {title: '鎿嶄綔', width: '80', slots: { default: 'button_slot' },fixed:"left"},
+    {field: 'SalesOrderNumber', width: '150',title: '閿�鍞崟鍙�', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'ProjectName', width: '120',title: '椤圭洰鍚嶇О', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'NowNum', width: '120',title: '褰撳墠搴忓彿', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'Quantity',width: '140', title: '璁㈠崟鏁伴噺', sortable: true},
+    {field: 'DiaoSalesOrderNumber', width: '150',title: '璋冩嫧鍗曞彿',editRender: { name: 'input', attrs: { placeholder: '' } }, sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'NewNum', width:'150', title: '鏂拌搴�', sortable: true,editRender: { name: 'input', attrs: { placeholder: '' } } },
+    {field: 'DiaoQuantity',width: '140', title: '璋冩嫧鏁伴噺',editRender: { name: 'input', attrs: { placeholder: '' } }, sortable: true},
+    {field: 'ProcessCardNumber',width: '100', title: '娴佺▼鍗″彿', sortable: true,showOverflow:"ellipsis"},
+    {field: 'FinishedProductNumber', width: '100',title: '鎴愬搧缂栧彿', sortable: true},
+    {field: 'ProductNumber',width: '100', title: '浜у搧缂栧彿', sortable: true},
+    {field: 'CustomerNumber', width: '100',title: '瀹㈡埛缂栧彿', sortable: true},
+    {field: 'CustomerName',width: '100', title: '瀹㈡埛鍚嶇О', sortable: true},
+    {field: 'Length', width: '100',title: '闀垮害', sortable: true},
+    {field: 'Width',width: '100', title: '瀹藉害', sortable: true},
+    {field: 'Thickness', width: '100',title: '鍘氬害', sortable: true},
+    {field: 'SingleArea',width: '140', title: '鍗曠墖闈㈢Н', sortable: true},
+    {field: 'TotalArea',width: '100', title: '鎬婚潰绉�', sortable: true},
+    {field: 'StorageArea',width: '100', title: '搴撳尯', sortable: true},
+    {field: 'Location',width: '100', title: '搴撲綅', sortable: true},
+  ],//琛ㄥご鎸夐挳
+  toolbarConfig: {
+    buttons: [
+        {'name': '纭璋冩灦',status: 'primary'},
+        {'name': '璋冩嫧璁板綍'}
+    ],
+    import: false,
+    export: true,
+    print: true,
+    zoom: true,
+    custom: true
+  },
+  data:  [
+    {
+      "SalesOrderNumber": "NG23072003",
+      "ProjectName": "閽㈠寲鐜荤拑",
+      "ProcessCardNumber": "NG23072003A01",
+      'FinishedProductNumber':'',
+      'FinishedProductName':'',
+      'BoxNumber':'',
+      "CustomerNumber": "KD0071",
+      "CustomerName": "浠�",
+      "Length": "1075.00",
+      "Width": "440.00",
+      "Thickness": "3.00",
+      "Quantity": "360",
+      "SingleArea": "0.473000",
+      "TotalArea": "170.28",
+      "StorageArea": "0.47",
+      "Location": "170.28",
+      "NowNum":'1'
+    },{
+      "SalesOrderNumber": "NG23072003",
+      "ProjectName": "閽㈠寲鐜荤拑",
+      "ProcessCardNumber": "NG23072003A01",
+      'FinishedProductNumber':'',
+      'FinishedProductName':'',
+      'BoxNumber':'',
+      "CustomerNumber": "KD0071",
+      "CustomerName": "浠�",
+      "Length": "1075.00",
+      "Width": "440.00",
+      "Thickness": "3.00",
+      "Quantity": "360",
+      "SingleArea": "0.473000",
+      "TotalArea": "170.28",
+      "StorageArea": "0.47",
+      "Location": "170.28",
+      "NowNum":'1'
+    },{
+      "SalesOrderNumber": "NG23072003",
+      "ProjectName": "閽㈠寲鐜荤拑",
+      "ProcessCardNumber": "NG23072003A01",
+      'FinishedProductNumber':'',
+      'FinishedProductName':'',
+      'BoxNumber':'',
+      "CustomerNumber": "KD0071",
+      "CustomerName": "浠�",
+      "Length": "1075.00",
+      "Width": "440.00",
+      "Thickness": "3.00",
+      "Quantity": "360",
+      "SingleArea": "0.473000",
+      "TotalArea": "170.28",
+      "StorageArea": "0.47",
+      "Location": "170.28",
+      "NowNum":'1'
+    },
+
+  ],//table body瀹為檯鏁版嵁
+  footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
+    return[
+      columns.map((column, columnIndex) => {
+        if (columnIndex === 0) {
+          return '鍚堣:'
+        }
+        // if (props.tableProp.footList.includes(column.field)) {
+        //   return sumNum(data, column.field)
+        // }
+        return ''
+      })
+    ]
+  }
+
+})
+
+
+
 </script>
+
 <template>
-<div>
-  <div>
-    <el-form  size="medium" >
+  <div class="main-div-customer">
+    <vxe-grid
+        max-height="100%"
+        @filter-change="filterChanged"
+        class="mytable-scrollbar"
+        ref="xGrid"
+        v-bind="gridOptions"
 
-      <el-row gutter="5">
-<!--      <el-col :span="4">-->
-<!--        <el-input v-model="name" placeholder="璇疯緭瀹㈡埛鍚嶇О" style="width: 200px; height: 30px;" />-->
-<!--      </el-col>-->
-<!--      <el-col :span="4">-->
-<!--        <el-input v-model="name" placeholder="璇疯緭椤圭洰鍚嶇О" style="width: 200px; height: 30px;" />-->
-<!--      </el-col>-->
-<!--        <el-col :span="4">-->
-<!--          <el-input v-model="name" placeholder="璇疯緭閿�鍞崟鍙�" style="width: 200px; height: 30px;" />-->
-<!--        </el-col>-->
-        <el-col :span="2.5  ">
-          <el-button id="searchButton" type="primary" :icon="Search">璋冩灦璁板綍</el-button>
-        </el-col>
-        <el-col :span="4">
-          <el-button id="searchButton" type="primary" :icon="Search">鏌ヨ</el-button>
-        </el-col>
+    >
+      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
+      <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
+      <template #content="{ row}">
+        <ul class="expand-wrapper">
+          <li  v-for="(item,key,index) in row">
+            <span style="font-weight: bold">{{key+':  '}}</span>
+            <span>{{ item }}</span>
+          </li>
+        </ul>
+      </template>
 
-      </el-row>
-    </el-form>
+      <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
+      <template #button_slot="{ row }">
+        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">缂栬緫</el-button>
+<!--        <el-button @click="getTableRow(row,'out')" link type="primary" size="small">鎴愬搧棰嗗嚭</el-button>-->
+<!--        <el-button @click="getTableRow(row,'back')" link type="primary" size="small">鎴愬搧杩斿伐</el-button>-->
+      </template>
+
+      <template #num1_filter="{ column, $panel }">
+        <div>
+          <div v-for="(option, index) in column.filters" :key="index">
+            <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
+          </div>
+        </div>
+      </template>
+
+
+    </vxe-grid>
   </div>
-  <div>
-    <el-table :data="tableData" border style="width: 100%;">
-      <el-table-column prop="閿�鍞崟鍙�" label="閿�鍞崟鍙�" width="180" style="text-align: center"/>
-      <el-table-column prop="椤圭洰鍚嶇О" label="椤圭洰鍚嶇О" width="180" />
-      <el-table-column prop="瀹㈡埛缂栧彿" label="瀹㈡埛缂栧彿" width="180"/>
-      <el-table-column prop="瀹㈡埛鍚嶇О" label="瀹㈡埛鍚嶇О" width="180"/>
-      <el-table-column prop="娴佺▼鍗″彿" label="娴佺▼鍗″彿" width="180"/>
-      <el-table-column prop="鎴愬搧缂栧彿" label="鎴愬搧缂栧彿" width="180"/>
-      <el-table-column prop="绠辨灦鍙�" label="绠辨灦鍙�" width="180"/>
-      <el-table-column prop="鎴愬搧鍚嶇О" label="鎴愬搧鍚嶇О" width="180"/>
-      <el-table-column prop="闀�" label="闀�" width="180"/>
-      <el-table-column prop="瀹�" label="瀹�" width="180"/>
-      <el-table-column prop="鍘�" label="鍘�" width="180"/>
-      <el-table-column prop="鏁伴噺" label="鏁伴噺" width="180"/>
-      <el-table-column prop="鍗曠墖闈㈢Н" label="鍗曠墖闈㈢Н" width="180"/>
-      <el-table-column prop="鎬婚潰绉�" label="鎬婚潰绉�" width="180"/>
-      <el-table-column prop="搴撳尯" label="搴撳尯" width="180"/>
-      <el-table-column prop="搴撲綅" label="搴撲綅" width="180"/>
-      <el-table-column fixed="left" label="鎿嶄綔" width="80">
-        <template #default>
-          <el-button link type="primary" size="small" @click="handleClick(row)"
-          >缂栬緫</el-button>
-
-        </template>
-      </el-table-column>
-    </el-table>
-  </div>
-</div>
 </template>
-<style>
 
+<style scoped>
+.main-div-customer{
+  width: 99%;
+  height: 100%;
+}
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/ProductStock.vue b/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/ProductStock.vue
index 2c0511e..7515eee 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/ProductStock.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/ProductStock.vue
@@ -16,13 +16,14 @@
   <div id="main">
    <div id="div-title">
      <el-breadcrumb :separator-icon="ArrowRight">
-       <el-breadcrumb-item :to="{ path: '/main/productStock/ProductStockList' }">浜у搧鏌ヨ</el-breadcrumb-item>
+       <el-breadcrumb-item :to="{ path: '/main/productStock/ProductStockList' }">搴撳瓨鏌ヨ</el-breadcrumb-item>
        <el-breadcrumb-item :to="{ path: '/main/productStock/CreateProductStock' }">鎴愬搧鍏ュ簱</el-breadcrumb-item>
        <el-breadcrumb-item :to="{ path: '/main/productStock/FinishedProductOut' }">鎴愬搧鍑哄簱</el-breadcrumb-item>
        <el-breadcrumb-item :to="{ path: '/main/productStock/FinishedProductReturn' }">璁㈠崟鎴愬搧閫�璐�</el-breadcrumb-item>
-       <el-breadcrumb-item :to="{ path: '/main/productStock/OrderAllocation' }">璁㈠崟璋冩嫧</el-breadcrumb-item>
-       <el-breadcrumb-item :to="{ path: '/main/productStock/FinishedGoodsIssue' }">鎴愬搧棰嗗嚭</el-breadcrumb-item>
-       <el-breadcrumb-item :to="{ path: '/main/productStock/FinishedProductRework' }">鎴愬搧杩斿伐</el-breadcrumb-item>
+       <el-breadcrumb-item v-show="false" :to="{ path: '/main/order/orderReport' }">鎶ヨ〃</el-breadcrumb-item>
+<!--       <el-breadcrumb-item :to="{ path: '/main/productStock/OrderAllocation' }">璁㈠崟璋冩嫧</el-breadcrumb-item>-->
+<!--       <el-breadcrumb-item :to="{ path: '/main/productStock/FinishedGoodsIssue' }">鎴愬搧棰嗗嚭</el-breadcrumb-item>-->
+<!--       <el-breadcrumb-item :to="{ path: '/main/productStock/FinishedProductRework' }">鎴愬搧杩斿伐</el-breadcrumb-item>-->
        <!-- <el-breadcrumb-item :to="{ path: '/main/product/createProduct' }"></el-breadcrumb-item> -->
      </el-breadcrumb>
 
diff --git a/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/ProductStockList.vue b/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/ProductStockList.vue
index 24d9c59..4e88112 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/ProductStockList.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainProductStock/ProductStockList.vue
@@ -1,287 +1,292 @@
-<!-- 鎴愬搧搴撳瓨 -->
-<script  lang="ts" setup>
-import { ref } from 'vue'
-import router from "@/router";
-let tableData = ref([
-  {
-    "鑷簭":'30',
-    "璁㈠崟搴忓彿":'1',
-    "閿�鍞崟鍙�":'NG23072003',
-    "椤圭洰鍚嶇О":'閽㈠寲鐜荤拑',
-    "璁㈠崟绫诲瀷":'鏅�氳鍗�',
-    "娴佺▼鍗″彿":'NG23072003A01',
-    "浜у搧鍚嶇О":'',
-    "浜у搧缂栧彿":'06040000022',
-    "瀹㈡埛缂栧彿":'KD0071',
-    "瀹㈡埛鍚嶇О":'',
-    "闀垮害":'1075.00',
-    "瀹藉害":'440.00',
-    "鍘氬害":'3.00',
-    "搴撳瓨鏁�":'360',
-    "瀹為檯鍗曠墖闈㈢Н":'0.473000',
-    "闈㈢Н":'170.28',
-    "缁撶畻鍗曠墖闈㈢Н":'0.47',
-    "缁撶畻鎬婚潰绉�":'170.28',
-    "鍙敤鏁伴噺":'360',
-    "妤煎眰缂栧彿":'10927769',
-    "閫佽揣鍦板潃":'閽㈠寲鐜荤拑',
-    "鎵规":'',
-    "涓氬姟鍛�":'闄堝畻鍑�',
-    "骞冲嚒姣背":'1915.6500',
-    "閲嶉噺":'1.91565',
-    "鏈�鍚庡叆搴撴棩鏈�":'2023-09-22 08:31:17',
-    "搴撲綅缂栧彿":'鎴愬搧搴�',
-    "搴撳尯":'搴撳尯',
-    "搴撲綅":'0',
-    "鍗曟嵁鐘舵��":'1',
-    "澶囨敞":'',
-  }, {
-    "鑷簭":'31',
-    "璁㈠崟搴忓彿":'1',
-    "閿�鍞崟鍙�":'NG23072003',
-    "椤圭洰鍚嶇О":'閽㈠寲鐜荤拑',
-    "璁㈠崟绫诲瀷":'鏅�氳鍗�',
-    "娴佺▼鍗″彿":'NG23072003A02',
-    "浜у搧鍚嶇О":'',
-    "浜у搧缂栧彿":'06040000022',
-    "瀹㈡埛缂栧彿":'KD0071',
-    "瀹㈡埛鍚嶇О":'',
-    "闀垮害":'1075.00',
-    "瀹藉害":'440.00',
-    "鍘氬害":'3.00',
-    "搴撳瓨鏁�":'360',
-    "瀹為檯鍗曠墖闈㈢Н":'0.473000',
-    "闈㈢Н":'170.28',
-    "缁撶畻鍗曠墖闈㈢Н":'0.47',
-    "缁撶畻鎬婚潰绉�":'170.28',
-    "鍙敤鏁伴噺":'360',
-    "妤煎眰缂栧彿":'10927769',
-    "閫佽揣鍦板潃":'閽㈠寲鐜荤拑',
-    "鎵规":'',
-    "涓氬姟鍛�":'闄堝畻鍑�',
-    "骞冲嚒姣背":'1915.6500',
-    "閲嶉噺":'1.91565',
-    "鏈�鍚庡叆搴撴棩鏈�":'2023-09-22 08:31:17',
-    "搴撲綅缂栧彿":'鎴愬搧搴�',
-    "搴撳尯":'搴撳尯',
-    "搴撲綅":'0',
-    "鍗曟嵁鐘舵��":'1',
-    "澶囨敞":'',
-  }, {
-    "鑷簭":'32',
-    "璁㈠崟搴忓彿":'1',
-    "閿�鍞崟鍙�":'NG23072003',
-    "椤圭洰鍚嶇О":'閽㈠寲鐜荤拑',
-    "璁㈠崟绫诲瀷":'鏅�氳鍗�',
-    "娴佺▼鍗″彿":'NG23072003A01',
-    "浜у搧鍚嶇О":'',
-    "浜у搧缂栧彿":'06040000022',
-    "瀹㈡埛缂栧彿":'KD0071',
-    "瀹㈡埛鍚嶇О":'',
-    "闀垮害":'1075.00',
-    "瀹藉害":'440.00',
-    "鍘氬害":'3.00',
-    "搴撳瓨鏁�":'360',
-    "瀹為檯鍗曠墖闈㈢Н":'0.473000',
-    "闈㈢Н":'170.28',
-    "缁撶畻鍗曠墖闈㈢Н":'0.47',
-    "缁撶畻鎬婚潰绉�":'170.28',
-    "鍙敤鏁伴噺":'360',
-    "妤煎眰缂栧彿":'10927769',
-    "閫佽揣鍦板潃":'閽㈠寲鐜荤拑',
-    "鎵规":'',
-    "涓氬姟鍛�":'闄堝畻鍑�',
-    "骞冲嚒姣背":'1915.6500',
-    "閲嶉噺":'1.91565',
-    "鏈�鍚庡叆搴撴棩鏈�":'2023-09-22 08:31:17',
-    "搴撲綅缂栧彿":'鎴愬搧搴�',
-    "搴撳尯":'搴撳尯',
-    "搴撲綅":'0',
-    "鍗曟嵁鐘舵��":'1',
-    "澶囨敞":'',
-  }, {
-    "鑷簭":'33',
-    "璁㈠崟搴忓彿":'1',
-    "閿�鍞崟鍙�":'NG23072003',
-    "椤圭洰鍚嶇О":'閽㈠寲鐜荤拑',
-    "璁㈠崟绫诲瀷":'鏅�氳鍗�',
-    "娴佺▼鍗″彿":'NG23072003A01',
-    "浜у搧鍚嶇О":'',
-    "浜у搧缂栧彿":'06040000022',
-    "瀹㈡埛缂栧彿":'KD0071',
-    "瀹㈡埛鍚嶇О":'',
-    "闀垮害":'1075.00',
-    "瀹藉害":'440.00',
-    "鍘氬害":'3.00',
-    "搴撳瓨鏁�":'360',
-    "瀹為檯鍗曠墖闈㈢Н":'0.473000',
-    "闈㈢Н":'170.28',
-    "缁撶畻鍗曠墖闈㈢Н":'0.47',
-    "缁撶畻鎬婚潰绉�":'170.28',
-    "鍙敤鏁伴噺":'360',
-    "妤煎眰缂栧彿":'10927769',
-    "閫佽揣鍦板潃":'閽㈠寲鐜荤拑',
-    "鎵规":'',
-    "涓氬姟鍛�":'闄堝畻鍑�',
-    "骞冲嚒姣背":'1915.6500',
-    "閲嶉噺":'1.91565',
-    "鏈�鍚庡叆搴撴棩鏈�":'2023-09-22 08:31:17',
-    "搴撲綅缂栧彿":'鎴愬搧搴�',
-    "搴撳尯":'搴撳尯',
-    "搴撲綅":'0',
-    "鍗曟嵁鐘舵��":'1',
-    "澶囨敞":'',
-  }, {
-    "鑷簭":'34',
-    "璁㈠崟搴忓彿":'1',
-    "閿�鍞崟鍙�":'NG23072003',
-    "椤圭洰鍚嶇О":'閽㈠寲鐜荤拑',
-    "璁㈠崟绫诲瀷":'鏅�氳鍗�',
-    "娴佺▼鍗″彿":'NG23072003A01',
-    "浜у搧鍚嶇О":'',
-    "浜у搧缂栧彿":'06040000022',
-    "瀹㈡埛缂栧彿":'KD0071',
-    "瀹㈡埛鍚嶇О":'',
-    "闀垮害":'1075.00',
-    "瀹藉害":'440.00',
-    "鍘氬害":'3.00',
-    "搴撳瓨鏁�":'360',
-    "瀹為檯鍗曠墖闈㈢Н":'0.473000',
-    "闈㈢Н":'170.28',
-    "缁撶畻鍗曠墖闈㈢Н":'0.47',
-    "缁撶畻鎬婚潰绉�":'170.28',
-    "鍙敤鏁伴噺":'360',
-    "妤煎眰缂栧彿":'10927769',
-    "閫佽揣鍦板潃":'閽㈠寲鐜荤拑',
-    "鎵规":'',
-    "涓氬姟鍛�":'闄堝畻鍑�',
-    "骞冲嚒姣背":'1915.6500',
-    "閲嶉噺":'1.91565',
-    "鏈�鍚庡叆搴撴棩鏈�":'2023-09-22 08:31:17',
-    "搴撲綅缂栧彿":'鎴愬搧搴�',
-    "搴撳尯":'搴撳尯',
-    "搴撲綅":'0',
-    "鍗曟嵁鐘舵��":'1',
-    "澶囨敞":'',
-  }, {
-    "鑷簭":'35',
-    "璁㈠崟搴忓彿":'1',
-    "閿�鍞崟鍙�":'NG23072003',
-    "椤圭洰鍚嶇О":'閽㈠寲鐜荤拑',
-    "璁㈠崟绫诲瀷":'鏅�氳鍗�',
-    "娴佺▼鍗″彿":'NG23072003A01',
-    "浜у搧鍚嶇О":'',
-    "浜у搧缂栧彿":'06040000022',
-    "瀹㈡埛缂栧彿":'KD0071',
-    "瀹㈡埛鍚嶇О":'',
-    "闀垮害":'1075.00',
-    "瀹藉害":'440.00',
-    "鍘氬害":'3.00',
-    "搴撳瓨鏁�":'360',
-    "瀹為檯鍗曠墖闈㈢Н":'0.473000',
-    "闈㈢Н":'170.28',
-    "缁撶畻鍗曠墖闈㈢Н":'0.47',
-    "缁撶畻鎬婚潰绉�":'170.28',
-    "鍙敤鏁伴噺":'360',
-    "妤煎眰缂栧彿":'10927769',
-    "閫佽揣鍦板潃":'閽㈠寲鐜荤拑',
-    "鎵规":'',
-    "涓氬姟鍛�":'闄堝畻鍑�',
-    "骞冲嚒姣背":'1915.6500',
-    "閲嶉噺":'1.91565',
-    "鏈�鍚庡叆搴撴棩鏈�":'2023-09-22 08:31:17',
-    "搴撲綅缂栧彿":'鎴愬搧搴�',
-    "搴撳尯":'搴撳尯',
-    "搴撲綅":'0',
-    "鍗曟嵁鐘舵��":'1',
-    "澶囨敞":'',
+<script setup>
+
+import {reactive, ref} from "vue";
+import {useRouter} from  'vue-router'
+let router=useRouter()
+const getTableRow = (row,type) =>{
+  switch (type) {
+    case 'edit' :{
+      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+      router.push({path: '/main/productStock/OrderAllocation', query: { id: row.id }})
+      break
+    }
+    case 'back':{
+      router.push({path: '/main/productStock/FinishedProductRework', query: { id: row.id }})
+      break
+    }
+    case 'out' :{
+      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+      router.push({path: '/main/productStock/FinishedGoodsIssue', query: { id: row.id }})
+      break
+    }
   }
-])
-const name = ref('')
-const productName = ref('')
-const salId = ref('')
+}
+
+
+
+//瀛愮粍浠舵帴鏀跺弬鏁�
+
+const gridOptions = reactive({
+  border:  "full",//琛ㄦ牸鍔犺竟妗�
+  keepSource: true,//淇濇寔婧愭暟鎹�
+  align: 'center',//鏂囧瓧灞呬腑
+  stripe:true,//鏂戦┈绾�
+  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
+  id: 'CustomerList',
+  showFooter: true,//鏄剧ず鑴�
+  printConfig: {},
+  importConfig: {},
+  exportConfig: {},
+  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
+  showOverflow:true,
+  columnConfig: {
+    resizable: true,
+    useKey: true
+  },
+  filterConfig: {   //绛涢�夐厤缃」
+    remote: true
+  },
+  customConfig: {
+    storage: true
+  },
+  editConfig: {
+    trigger: 'click',
+    mode: 'row',
+    showStatus: true
+  },//琛ㄥご鍙傛暟
+  columns:[
+    {type:'expand',fixed:"left",slots: { content:'content' },width: '50'},
+    // { type: 'checkbox',fixed:"left", title: '閫夋嫨', width: '80' },
+    { type: 'seq',fixed:"left", title: '鑷簭', width: '80' },
+    // {title: '鎿嶄綔', width: '220', slots: { default: 'button_slot' },fixed:"left"},
+    {field: 'OrderNumber', width:'150', title: '璁㈠崟搴忓彿', sortable: true,editRender: { name: 'input', attrs: { placeholder: '' } } },
+    {field: 'SalesOrderNumber', width: '150',title: '閿�鍞崟鍙�', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'ProjectName', width: '120',title: '椤圭洰鍚嶇О', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'OrderType', width: '100',title: '璁㈠崟绫诲瀷', sortable: true},
+    {field: 'ProcessCardNumber',width: '100', title: '娴佺▼鍗″彿', sortable: true,showOverflow:"ellipsis"},
+    {field: 'ProductName', width: '100',title: '浜у搧鍚嶇О', sortable: true},
+    {field: 'ProductNumber',width: '100', title: '浜у搧缂栧彿', sortable: true},
+    {field: 'CustomerNumber', width: '100',title: '瀹㈡埛缂栧彿', sortable: true},
+    {field: 'CustomerName',width: '100', title: '瀹㈡埛鍚嶇О', sortable: true},
+    {field: 'Length', width: '100',title: '闀垮害', sortable: true},
+    {field: 'Width',width: '100', title: '瀹藉害', sortable: true},
+    {field: 'Thickness', width: '100',title: '鍘氬害', sortable: true},
+    {field: 'InventoryCount',width: '140', title: '搴撳瓨鏁�', sortable: true},
+    {field: 'ActualSingleArea',width: '140', title: '瀹為檯鍗曠墖闈㈢Н', sortable: true},
+    {field: 'Area',width: '100', title: '闈㈢Н', sortable: true},
+    {field: 'SettlementSingleArea',width: '140', title: '缁撶畻鍗曠墖闈㈢Н', sortable: true},
+    {field: 'SettlementTotalArea',width: '140', title: '缁撶畻鎬婚潰绉�', sortable: true},
+    {field: 'AvailableQuantity',width: '100', title: '鍙敤鏁伴噺', sortable: true},
+    {field: 'FloorNumber',width: '100', title: '妤煎眰缂栧彿', sortable: true},
+    {field: 'DeliveryAddress',width: '100', title: '閫佽揣鍦板潃', sortable: true},
+    {field: 'Batch',width: '100', title: '鎵规', sortable: true},
+    {field: 'Salesman',width: '100', title: '涓氬姟鍛�', sortable: true},
+    {field: 'OrdinaryMillimeter',width: '100', title: '骞冲嚒姣背', sortable: true},
+    {field: 'Weight',width: '100', title: '閲嶉噺', sortable: true},
+    {field: 'LastWarehousingDate',width: '140', title: '鏈�鍚庡叆搴撴棩鏈�', sortable: true},
+    {field: 'LocationNumber',width: '100', title: '搴撲綅缂栧彿', sortable: true},
+    {field: 'StorageArea',width: '100', title: '瀛樺偍鍖哄煙', sortable: true},
+    {field: 'Location',width: '100', title: '搴撲綅', sortable: true},
+    {field: 'DocumentStatus',width: '100', title: '鍗曟嵁鐘舵��', sortable: true},
+    {field: 'remark',width: '80', title: '澶囨敞', sortable: true},
+  ],//琛ㄥご鎸夐挳
+  toolbarConfig: {
+    buttons: [
+      { 'code' :'issue','name':'璁㈠崟璋冩嫧',status: 'primary'},
+      { 'code' :'out','name':'鎴愬搧棰嗗嚭',status: 'primary'},
+      { 'code' :'rework','name':'鎴愬搧杩斿伐',status: 'primary'},
+
+    ],
+    import: false,
+    export: true,
+    print: true,
+    zoom: true,
+    custom: true
+  },
+  data:  [
+    {
+      "OrderNumber": "1",
+      "SalesOrderNumber": "NG23072003",
+      "ProjectName": "閽㈠寲鐜荤拑",
+      "OrderType": "鏅�氳鍗�",
+      "ProcessCardNumber": "NG23072003A01",
+      "ProductName": '',
+      "ProductNumber": "06040000022",
+      "CustomerNumber": "KD0071",
+      "CustomerName": "浠�",
+      "Length": "1075.00",
+      "Width": "440.00",
+      "Thickness": "3.00",
+      "InventoryCount": "360",
+      "ActualSingleArea": "0.473000",
+      "Area": "170.28",
+      "SettlementSingleArea": "0.47",
+      "SettlementTotalArea": "170.28",
+      "AvailableQuantity": "360",
+      "FloorNumber": "10927769",
+      "DeliveryAddress": "涓婃捣",
+      "Batch": "娴嬭瘯",
+      "OrdinaryMillimeter": "闄堝畻鍑�",
+      "Weight": "1915.6500",
+      "LastWarehousingDate": "2023-09-22 08:31:17",
+      "LocationNumber": "鎴愬搧搴�",
+      "StorageArea": "娴嬭瘯",
+      "Location": "2",
+      "DocumentStatus": "1",
+      "Remarks": "娴嬭瘯",
+    },
+    {
+      "OrderNumber": "1",
+      "SalesOrderNumber": "NG23072003",
+      "ProjectName": "閽㈠寲鐜荤拑",
+      "OrderType": "鏅�氳鍗�",
+      "ProcessCardNumber": "NG23072003A01",
+      "ProductName": '',
+      "ProductNumber": "06040000022",
+      "CustomerNumber": "KD0071",
+      "CustomerName": "浠�",
+      "Length": "1075.00",
+      "Width": "440.00",
+      "Thickness": "3.00",
+      "InventoryCount": "360",
+      "ActualSingleArea": "0.473000",
+      "Area": "170.28",
+      "SettlementSingleArea": "0.47",
+      "SettlementTotalArea": "170.28",
+      "AvailableQuantity": "360",
+      "FloorNumber": "10927769",
+      "DeliveryAddress": "涓婃捣",
+      "Batch": "娴嬭瘯",
+      "OrdinaryMillimeter": "闄堝畻鍑�",
+      "Weight": "1915.6500",
+      "LastWarehousingDate": "2023-09-22 08:31:17",
+      "LocationNumber": "鎴愬搧搴�",
+      "StorageArea": "娴嬭瘯",
+      "Location": "2",
+      "DocumentStatus": "1",
+      "Remarks": "娴嬭瘯",
+    },{
+      "OrderNumber": "1",
+      "SalesOrderNumber": "NG23072003",
+      "ProjectName": "閽㈠寲鐜荤拑",
+      "OrderType": "鏅�氳鍗�",
+      "ProcessCardNumber": "NG23072003A01",
+      "ProductName": '',
+      "ProductNumber": "06040000022",
+      "CustomerNumber": "KD0071",
+      "CustomerName": "浠�",
+      "Length": "1075.00",
+      "Width": "440.00",
+      "Thickness": "3.00",
+      "InventoryCount": "360",
+      "ActualSingleArea": "0.473000",
+      "Area": "170.28",
+      "SettlementSingleArea": "0.47",
+      "SettlementTotalArea": "170.28",
+      "AvailableQuantity": "360",
+      "FloorNumber": "10927769",
+      "DeliveryAddress": "涓婃捣",
+      "Batch": "娴嬭瘯",
+      "OrdinaryMillimeter": "闄堝畻鍑�",
+      "Weight": "1915.6500",
+      "LastWarehousingDate": "2023-09-22 08:31:17",
+      "LocationNumber": "鎴愬搧搴�",
+      "StorageArea": "娴嬭瘯",
+      "Location": "2",
+      "DocumentStatus": "1",
+      "Remarks": "娴嬭瘯",
+    },
+  ],//table body瀹為檯鏁版嵁
+  footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
+    return[
+      columns.map((column, columnIndex) => {
+        if (columnIndex === 0) {
+          return '鍚堣:'
+        }
+        // if (props.tableProp.footList.includes(column.field)) {
+        //   return sumNum(data, column.field)
+        // }
+        return ''
+      })
+    ]
+  }
+
+})
+const  xGrid = ref();
+const gridEvents = {
+  toolbarButtonClick({ code }) {
+    const $grid = xGrid.value
+    if($grid){
+      switch (code){
+        case 'issue':{
+          /*VXETable.modal.confirm('鐐瑰嚮浜嗗簱瀛樿皟鎷�');*/
+          router.push({path: '/main/productStock/OrderAllocation'});
+          return;
+          break
+        }
+        case 'out':{
+          router.push({path: '/main/productStock/FinishedGoodsIssue'});
+          return;
+          break;
+        }
+        case 'rework':{
+          router.push({path: '/main/productStock/FinishedProductRework'});
+          return;
+          break;
+        }
+      }
+    }
+  }
+}
+
 
 </script>
+
 <template>
-  <div>
-    <!-- 琛ㄥ崟寮�濮� -->
-    <div>
-      <el-form  size="medium" >
-    
-       <el-row gutter="7">
-<!--  <el-col :span="4">-->
-<!--    <el-input v-model="name" placeholder="璇疯緭鍏ュ鎴峰悕绉�" style="width: 200px; height: 30px;" />-->
-<!--  </el-col>-->
-<!--  <el-col :span="4">-->
-<!--    <el-input v-model="productName" placeholder="璇疯緭鍏ラ」鐩悕绉�" style="width: 200px; height: 30px;" />-->
-<!--  </el-col>-->
-<!--  <el-col :span="4">-->
-<!--    <el-input v-model="salId" placeholder="璇疯緭鍏ラ攢鍞崟鍙�" style="width: 200px; height: 30px;" />-->
-<!--  </el-col>-->
-  <el-col :span="6.5">
-    <el-date-picker
-    type="daterange"
-    start-placeholder="寮�濮嬫椂闂�"
-    end-placeholder="缁撴潫鏃堕棿"
-   />
-  </el-col>
-  <el-col :span="4">
-           <el-button id="searchButton" type="primary" :icon="Search" style="width: 100px;">鏌ヨ</el-button>
-         </el-col>
-</el-row>
+  <div class="main-div-customer">
+    <vxe-grid
+        max-height="100%"
+        @filter-change="filterChanged"
+        class="mytable-scrollbar"
+        ref="xGrid"
+        v-bind="gridOptions"
+        v-on="gridEvents"
+
+    >
+      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
+      <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
+      <template #content="{ row}">
+        <ul class="expand-wrapper">
+          <li  v-for="(item,key,index) in row">
+            <span style="font-weight: bold">{{key+':  '}}</span>
+            <span>{{ item }}</span>
+          </li>
+        </ul>
+      </template>
+
+      <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
+      <template #button_slot="{ row }">
+<!--        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">璁㈠崟璋冩嫧</el-button>-->
+<!--        <el-button @click="getTableRow(row,'out')" link type="primary" size="small">鎴愬搧棰嗗嚭</el-button>-->
+<!--        <el-button @click="getTableRow(row,'back')" link type="primary" size="small">鎴愬搧杩斿伐</el-button>-->
+      </template>
+
+      <template #num1_filter="{ column, $panel }">
+        <div>
+          <div v-for="(option, index) in column.filters" :key="index">
+            <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
+          </div>
+        </div>
+      </template>
 
 
-        <!-- <el-form-item size="large">
-          <el-button type="primary" @click="submitForm">鏌ヨ</el-button>
-          <el-button @click="resetForm">閲嶇疆</el-button>
-        </el-form-item>-->
-      </el-form> 
-    </div>
-    <!-- 琛ㄥ崟缁撴潫 -->
-
-    <!-- 琛ㄦ牸寮�濮� -->
-    <div>
-  <el-table :data="tableData" border style="width: 100%">
-    <el-table-column prop="鑷簭" label="鑷簭" width="180" />
-    <el-table-column prop="璁㈠崟搴忓彿" label="璁㈠崟搴忓彿" width="180" />
-    <el-table-column prop="閿�鍞崟鍙�" label="閿�鍞崟鍙�" width="180"/>
-    <el-table-column prop="椤圭洰鍚嶇О" label="椤圭洰鍚嶇О" width="180"/>
-    <el-table-column prop="璁㈠崟绫诲瀷" label="璁㈠崟绫诲瀷" width="180"/>
-    <el-table-column prop="娴佺▼鍗″彿" label="娴佺▼鍗″彿" width="180"/>
-    <el-table-column prop="浜у搧鍚嶇О" label="浜у搧鍚嶇О" width="180"/>
-    <el-table-column prop="浜у搧缂栧彿" label="浜у搧缂栧彿" width="180"/>
-    <el-table-column prop="瀹㈡埛缂栧彿" label="瀹㈡埛缂栧彿" width="180"/>
-    <el-table-column prop="瀹㈡埛鍚嶇О" label="瀹㈡埛鍚嶇О" width="180"/>
-    <el-table-column prop="闀垮害" label="闀垮害" width="180"/>
-    <el-table-column prop="瀹藉害" label="瀹藉害" width="180"/>
-    <el-table-column prop="鍘氬害" label="鍘氬害" width="180"/>
-    <el-table-column prop="搴撳瓨鏁�" label="搴撳瓨鏁�" width="180"/>
-    <el-table-column prop="瀹為檯鍗曠墖闈㈢Н" label="瀹為檯鍗曠墖闈㈢Н" width="180"/>
-    <el-table-column prop="闈㈢Н" label="闈㈢Н" width="180"/>
-    <el-table-column prop="缁撶畻鍗曠墖闈㈢Н" label="缁撶畻鍗曠墖闈㈢Н" width="180"/>
-    <el-table-column prop="缁撶畻鎬婚潰绉�" label="缁撶畻鎬婚潰绉�" width="180"/>
-    <el-table-column prop="鍙敤鏁伴噺" label="鍙敤鏁伴噺" width="180"/>
-    <el-table-column prop="妤煎眰缂栧彿" label="妤煎眰缂栧彿" width="180"/>
-    <el-table-column prop="閫佽揣鍦板潃" label="閫佽揣鍦板潃" width="180"/>
-    <el-table-column prop="鎵规" label="鎵规" width="180"/>
-    <el-table-column prop="涓氬姟鍛�" label="涓氬姟鍛�" width="180"/>
-    <el-table-column prop="骞虫柟姣背" label="骞虫柟姣背" width="180"/>
-    <el-table-column prop="閲嶉噺" label="閲嶉噺" width="180"/>
-    <el-table-column prop="鏈�鍚庡叆搴撴棩鏈�" label="鏈�鍚庡叆搴撴棩鏈�" width="180"/>
-    <el-table-column prop="搴撲綅缂栧彿" label="搴撲綅缂栧彿" width="180"/>
-    <el-table-column prop="搴撳尯" label="搴撳尯" width="180"/>
-    <el-table-column prop="搴撲綅" label="搴撲綅" width="180"/>
-    <el-table-column prop="鍗曟嵁鐘舵��" label="鍗曟嵁鐘舵��" width="180"/>
-    <el-table-column prop="澶囨敞" label="澶囨敞" width="180"/>
-
-  </el-table>
-    </div>
-    <!-- 琛ㄦ牸缁撴潫 -->
+    </vxe-grid>
   </div>
-    
-  </template>
+</template>
 
-  <style scoped>
-  
-  </style>
-  
\ No newline at end of file
+<style scoped>
+.main-div-customer{
+  width: 99%;
+  height: 100%;
+}
+</style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/mm/mainTrader/CreateTrader.vue b/north-glass-erp/northglass-erp/src/views/mm/mainTrader/CreateTrader.vue
index 0c3a0db..1d2c874 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/mainTrader/CreateTrader.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainTrader/CreateTrader.vue
@@ -1,4 +1,4 @@
-<script>
+<script lang="ts" setup>
 
 </script>
 <template>
@@ -79,7 +79,7 @@
             <el-button id="searchButton" type="primary" :icon="Search">鏌ヨ</el-button>
           </el-col>
           <el-col span="4.5">
-            <el-button id="searchButton" type="primary" :icon="Search">纭畾</el-button>
+            <el-button id="searchButton" type="primary" :icon="save">纭畾</el-button>
           </el-col>
         </el-row>
       </el-form>
diff --git a/north-glass-erp/northglass-erp/src/views/mm/mainTrader/SelectTrader.vue b/north-glass-erp/northglass-erp/src/views/mm/mainTrader/SelectTrader.vue
index b9db151..02261a1 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/mainTrader/SelectTrader.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainTrader/SelectTrader.vue
@@ -1,184 +1,219 @@
-<!-- 渚涘簲鍟嗙鐞� -->
-<script lang="ts" setup>
-import { ref } from "vue";
-const name = ref('')
-const productName = ref('')
-const salId = ref('')
-let tableData = ref([
-  {
-    "渚涘簲鍟嗙紪鐮�":'221',
-    "渚涘簲鍟嗗悕绉�":'鎴愰兘姝e崕鐢靛瓙浠櫒鏈夐檺鍏徃',
-    "浠g悊浜у搧":'杈呮枡',
-    "缁撶畻鏂瑰紡":'璐у埌浠樻',
-    "鑱旂郴浜�":'',
-    "鑱旂郴鐢佃瘽":'',
-    "绋庣巼":'13.00',
-    "鍏徃鍦板潃":'鍖椾含甯傝緰鍖轰笢鍩庡尯',
-    "鏀惰揣鍦板潃":'鍖椾含甯傝緰鍖轰笢鍩庡尯',
-    "鎵�灞為泦鍥�":'',
-    "绛夌骇":'',
-    "鍗曟嵁鐘舵��":'鏈鏍�',
-    "瀹℃牳鍛�":'0.0000',
-    "瀹℃牳鏃ユ湡":'2023-11-19',
-    "鎹㈢畻鍗曚綅":'0',
-    "澶囨敞":'0',
+<script setup>
+
+import {reactive, ref} from "vue";
+import {useRouter} from  'vue-router'
+import {VXETable} from "vxe-table";
+let router=useRouter()
+const getTableRow = (row,type) =>{
+  switch (type) {
+    case 'edit' :{
+      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+      router.push({path: '/main/trader/CreateTrader', query: { id: row.id }})
+      break
+    }
+    case 'delete':{
+      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
+      break
+    }
+
+  }
+}
+
+//瀛愮粍浠舵帴鏀跺弬鏁�
+
+const gridOptions = reactive({
+  border:  "full",//琛ㄦ牸鍔犺竟妗�
+  keepSource: true,//淇濇寔婧愭暟鎹�
+  align: 'center',//鏂囧瓧灞呬腑
+  stripe:true,//鏂戦┈绾�
+  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
+  id: 'CustomerList',
+  showFooter: true,//鏄剧ず鑴�
+  printConfig: {},
+  importConfig: {},
+  exportConfig: {},
+  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
+  showOverflow:true,
+  columnConfig: {
+    resizable: true,
+    useKey: true
   },
-  {
-    "渚涘簲鍟嗙紪鐮�":'220',
-    "渚涘簲鍟嗗悕绉�":'骞垮窞鍚堢敵鏈虹數绉戞妧鏈夐檺鍏徃',
-    "浠g悊浜у搧":'杈呮枡',
-    "缁撶畻鏂瑰紡":'璐у埌浠樻',
-    "鑱旂郴浜�":'',
-    "鑱旂郴鐢佃瘽":'',
-    "绋庣巼":'13.00',
-    "鍏徃鍦板潃":'鍖椾含甯傝緰鍖轰笢鍩庡尯',
-    "鏀惰揣鍦板潃":'鍖椾含甯傝緰鍖轰笢鍩庡尯',
-    "鎵�灞為泦鍥�":'',
-    "绛夌骇":'',
-    "鍗曟嵁鐘舵��":'鏈鏍�',
-    "瀹℃牳鍛�":'0.0000',
-    "瀹℃牳鏃ユ湡":'2023-11-19',
-    "鎹㈢畻鍗曚綅":'0',
-    "澶囨敞":'0',
+  filterConfig: {   //绛涢�夐厤缃」
+    remote: true
   },
-  {
-    "渚涘簲鍟嗙紪鐮�":'219',
-    "渚涘簲鍟嗗悕绉�":'姹熼棬甯備腑閿愰噾鍒氱煶宸ュ叿鏈夐檺鍏徃',
-    "浠g悊浜у搧":'杈呮枡',
-    "缁撶畻鏂瑰紡":'璐у埌浠樻',
-    "鑱旂郴浜�":'',
-    "鑱旂郴鐢佃瘽":'',
-    "绋庣巼":'13.00',
-    "鍏徃鍦板潃":'鍖椾含甯傝緰鍖轰笢鍩庡尯',
-    "鏀惰揣鍦板潃":'鍖椾含甯傝緰鍖轰笢鍩庡尯',
-    "鎵�灞為泦鍥�":'',
-    "绛夌骇":'',
-    "鍗曟嵁鐘舵��":'鏈鏍�',
-    "瀹℃牳鍛�":'0.0000',
-    "瀹℃牳鏃ユ湡":'2023-11-19',
-    "鎹㈢畻鍗曚綅":'0',
-    "澶囨敞":'0',
+  customConfig: {
+    storage: true
   },
-  {
-    "渚涘簲鍟嗙紪鐮�":'218',
-    "渚涘簲鍟嗗悕绉�":'娣卞湷鎮﹀垱绮惧瘑鑷姩鍖栨妧鏈湁闄愬叕鍙�',
-    "浠g悊浜у搧":'杈呮枡',
-    "缁撶畻鏂瑰紡":'璐у埌浠樻',
-    "鑱旂郴浜�":'',
-    "鑱旂郴鐢佃瘽":'',
-    "绋庣巼":'13.00',
-    "鍏徃鍦板潃":'鍖椾含甯傝緰鍖轰笢鍩庡尯',
-    "鏀惰揣鍦板潃":'鍖椾含甯傝緰鍖轰笢鍩庡尯',
-    "鎵�灞為泦鍥�":'',
-    "绛夌骇":'',
-    "鍗曟嵁鐘舵��":'鏈鏍�',
-    "瀹℃牳鍛�":'0.0000',
-    "瀹℃牳鏃ユ湡":'2023-11-19',
-    "鎹㈢畻鍗曚綅":'0',
-    "澶囨敞":'0',
+  editConfig: {
+    trigger: 'click',
+    mode: 'row',
+    showStatus: true
+  },//琛ㄥご鍙傛暟
+  columns:[
+    {type:'expand',fixed:"left",slots: { content:'content' },width: '50'},
+    // { type: 'checkbox',fixed:"left", title: '閫夋嫨', width: '80' },
+    { type: 'seq',fixed:"left", title: '鑷簭', width: '80' },
+    {title: '鎿嶄綔', width: '110', slots: { default: 'button_slot' },fixed:"left"},
+    {field: 'supplierCode', width:'150', title: '渚涘簲鍟嗙紪鍙�', sortable: true,editRender: { name: 'input', attrs: { placeholder: '' } } },
+    {field: 'supplierName', width: '150',title: '渚涘簲鍟嗗悕绉�', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'agentProduct', width: '120',title: '浠g悊浜у搧', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'settlementMethod', width: '100',title: '缁撶畻鏂瑰紡', sortable: true},
+    {field: 'contactPerson',width: '100', title: '鑱旂郴浜�', sortable: true,showOverflow:"ellipsis"},
+    {field: 'taxRate', width: '80',title: '绋庣巼', sortable: true},
+    {field: 'companyAddress',width: '100', title: '鍏徃鍦板潃', sortable: true},
+    {field: 'receivingAddress', width: '100',title: '鏀惰揣鍦板潃', sortable: true},
+    {field: 'belongingGroup',width: '100', title: '鎵�灞為泦鍥�', sortable: true},
+    {field: 'grade', width: '80',title: '绛夌骇', sortable: true},
+    {field: 'documentStatus',width: '100', title: '鍗曟嵁鐘舵��', sortable: true},
+    {field: 'auditor', width: '100',title: '瀹℃牳鍛�', sortable: true},
+    {field: 'auditDate',width: '110', title: '瀹℃牳鏃ユ湡', sortable: true},
+    {field: 'conversionUnit',width: '100', title: '鎹㈢畻鍗曚綅', sortable: true},
+    {field: 'remark',width: '80', title: '澶囨敞', sortable: true},
+  ],//琛ㄥご鎸夐挳
+  toolbarConfig: {
+    buttons: [{
+      'name': '鏂板',
+       'code':'add'
+    },],
+    import: false,
+    export: true,
+    print: true,
+    zoom: true,
+    custom: true
   },
-  {
-    "渚涘簲鍟嗙紪鐮�":'217',
-    "渚涘簲鍟嗗悕绉�":'娣卞湷甯備集娆g鎶�鏈夐檺鍏徃',
-    "浠g悊浜у搧":'杈呮枡',
-    "缁撶畻鏂瑰紡":'璐у埌浠樻',
-    "鑱旂郴浜�":'',
-    "鑱旂郴鐢佃瘽":'',
-    "绋庣巼":'13.00',
-    "鍏徃鍦板潃":'鍖椾含甯傝緰鍖轰笢鍩庡尯',
-    "鏀惰揣鍦板潃":'鍖椾含甯傝緰鍖轰笢鍩庡尯',
-    "鎵�灞為泦鍥�":'',
-    "绛夌骇":'',
-    "鍗曟嵁鐘舵��":'鏈鏍�',
-    "瀹℃牳鍛�":'0.0000',
-    "瀹℃牳鏃ユ湡":'2023-11-19',
-    "鎹㈢畻鍗曚綅":'0',
-    "澶囨敞":'0',
+  data:  [
+    {
+      "supplierCode": 216,
+      "supplierName": "瀹胯縼瀹d箣鏂囩數瀛愬晢鍔℃湁闄愬叕鍙�",
+      "agentProduct": "杈呮枡",
+      "settlementMethod": "璐у埌浠樻",
+      "contactPerson": "骞抽挗",
+      "taxRate": 13.00,
+      "companyAddress": "鍖椾含甯傝緰鍖轰笢鍩庡尯",
+      "receivingAddress": "鍖椾含甯傝緰鍖轰笢鍩庡尯",
+      "belongingGroup": "涓婃捣鍖楃幓",
+      "grade": "5",
+      "documentStatus": "鏈鏍�",
+      "auditor": "灏忓渤",
+      "auditDate": "2023-11-19",
+      "conversionUnit": "0",
+      "remark": "娴嬭瘯",
+    },
+    {
+      "supplierCode": 215,
+      "supplierName": "瀹胯縼瀹d箣鏂囩數瀛愬晢鍔℃湁闄愬叕鍙�",
+      "agentProduct": "杈呮枡",
+      "settlementMethod": "璐у埌浠樻",
+      "contactPerson": "灏忓渤",
+      "taxRate": 13.00,
+      "companyAddress": "鍖椾含甯傝緰鍖轰笢鍩庡尯",
+      "receivingAddress": "鍖椾含甯傝緰鍖轰笢鍩庡尯",
+      "belongingGroup": "涓婃捣鍖楃幓",
+      "grade": "5",
+      "documentStatus": "鏈鏍�",
+      "auditor": "灏忓渤",
+      "auditDate": "2023-11-19",
+      "conversionUnit": "0",
+      "remark": "娴嬭瘯",
+    },
+  ],//table body瀹為檯鏁版嵁
+  footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
+    return[
+      columns.map((column, columnIndex) => {
+        if (columnIndex === 0) {
+          return '鍚堣:'
+        }
+        // if (props.tableProp.footList.includes(column.field)) {
+        //   return sumNum(data, column.field)
+        // }
+        return ''
+      })
+    ]
+  }
+
+})
+
+const  xGrid = ref();
+
+const gridEvents = {
+  toolbarButtonClick ({ code }) {
+    const $grid = xGrid.value
+    if ($grid) {
+      switch (code) {
+        case 'add': {
+
+          router.push({path: '/main/trader/CreateTrader'})
+          /*if($grid.getCheckboxRecords().length==0){
+            VXETable.modal.message( '璇烽�夋嫨涓�鏉℃暟鎹紒')
+            return
+          }*/
+          return;
+        }
+
+      }
+    }
   },
-  {
-    "渚涘簲鍟嗙紪鐮�":'216',
-    "渚涘簲鍟嗗悕绉�":'瀹胯縼瀹d箣鏂囩數瀛愬晢鍔℃湁闄愬叕鍙�',
-    "浠g悊浜у搧":'杈呮枡',
-    "缁撶畻鏂瑰紡":'璐у埌浠樻',
-    "鑱旂郴浜�":'',
-    "鑱旂郴鐢佃瘽":'',
-    "绋庣巼":'13.00',
-    "鍏徃鍦板潃":'鍖椾含甯傝緰鍖轰笢鍩庡尯',
-    "鏀惰揣鍦板潃":'鍖椾含甯傝緰鍖轰笢鍩庡尯',
-    "鎵�灞為泦鍥�":'',
-    "绛夌骇":'',
-    "鍗曟嵁鐘舵��":'鏈鏍�',
-    "瀹℃牳鍛�":'0.0000',
-    "瀹℃牳鏃ユ湡":'2023-11-19',
-    "鎹㈢畻鍗曚綅":'0',
-    "澶囨敞":'0',
+  toolbarToolClick ({ code }) {
+    const $grid = xGrid.value
+    if ($grid) {
+      switch (code) {
+        case 'myPrint': {
+          $grid.print()
+          break
+        }
+      }
+    }
   },
-])
+}
+
+
+
 </script>
 
 <template>
-  <div>
-    <!-- 琛ㄥ崟寮�濮� -->
-    <div>
-      <el-form  size="medium" >
+  <div class="main-div-customer">
+    <vxe-grid
+        max-height="100%"
+        @filter-change="filterChanged"
+        class="mytable-scrollbar"
+        ref="xGrid"
+        v-bind="gridOptions"
+        v-on="gridEvents"
 
-<!--        <el-row gutter="5">-->
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="name" placeholder="璇疯緭鍏ヤ緵搴斿晢缂栫爜" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="productName" placeholder="璇疯緭鍏ヤ緵搴斿晢鍚嶇О" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="salId" placeholder="璇疯緭鍏ヤ唬鐞嗕骇鍝�" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
-<!--          <el-col :span="4">-->
-<!--            <el-input v-model="salId" placeholder="璇疯緭鍏ヨ仈绯讳汉" style="width: 200px; height: 30px;" />-->
-<!--          </el-col>-->
-<!--          <el-col :span="4">-->
-<!--            <el-button id="searchButton" type="primary" :icon="Search">鏌ヨ</el-button>-->
-<!--          </el-col>-->
-<!--        </el-row>-->
+    >
+      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
+      <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
+      <template #content="{ row}">
+        <ul class="expand-wrapper">
+          <li  v-for="(item,key,index) in row">
+            <span style="font-weight: bold">{{key+':  '}}</span>
+            <span>{{ item }}</span>
+          </li>
+        </ul>
+      </template>
 
-        <!-- <el-form-item size="large">
-          <el-button type="primary" @click="submitForm">鏌ヨ</el-button>
-          <el-button @click="resetForm">閲嶇疆</el-button>
-        </el-form-item>-->
+      <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
+      <template #button_slot="{ row }">
+        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">缂栬緫</el-button>
+        <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">鍒犻櫎</el-button>
+      </template>
 
-      </el-form>
-    </div>
-    <!-- 琛ㄥ崟缁撴潫 -->
-    <!-- 琛ㄦ牸寮�濮� -->
-    <div>
-      <el-table :data="tableData" border style="width: 100%">
-        <el-table-column prop="渚涘簲鍟嗙紪鐮�" label="渚涘簲鍟嗙紪鐮�" width="180" />
-        <el-table-column prop="渚涘簲鍟嗗悕绉�" label="渚涘簲鍟嗗悕绉�" width="180" />
-        <el-table-column prop="浠g悊浜у搧" label="浠g悊浜у搧" width="180"/>
-        <el-table-column prop="缁撶畻鏂瑰紡" label="缁撶畻鏂瑰紡" width="180"/>
-        <el-table-column prop="鑱旂郴浜�" label="鑱旂郴浜�" width="180"/>
-        <el-table-column prop="鑱旂郴鐢佃瘽" label="鑱旂郴鐢佃瘽" width="180"/>
-        <el-table-column prop="绋庣巼" label="绋庣巼" width="180"/>
-        <el-table-column prop="鍏徃鍦板潃" label="鍏徃鍦板潃" width="180"/>
-        <el-table-column prop="鏀惰揣鍦板潃" label="鏀惰揣鍦板潃" width="180"/>
-        <el-table-column prop="鎵�灞為泦鍥�" label="鎵�灞為泦鍥�" width="180"/>
-        <el-table-column prop="绛夌骇" label="绛夌骇" width="180"/>
-        <el-table-column prop="鍗曟嵁鐘舵��" label="鍗曟嵁鐘舵��" width="180"/>
-        <el-table-column prop="瀹℃牳鍛�" label="瀹℃牳鍛�" width="180"/>
-        <el-table-column prop="瀹℃牳鏃ユ湡" label="瀹℃牳鏃ユ湡" width="180"/>
-        <el-table-column prop="鎹㈢畻鍗曚綅" label="鎹㈢畻鍗曚綅" width="180"/>
-        <el-table-column prop="澶囨敞" label="澶囨敞" width="180"/>
-        <el-table-column fixed="left" label="鎿嶄綔" width="120">
-          <template #default>
-            <el-button link type="primary" size="small" @click="handleClick"
-            >淇敼</el-button
-            >
-            <el-button link type="primary" size="small">鍒犻櫎</el-button>
-          </template>
-        </el-table-column>
-      </el-table>
-    </div>
+      <template #num1_filter="{ column, $panel }">
+        <div>
+          <div v-for="(option, index) in column.filters" :key="index">
+            <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
+          </div>
+        </div>
+      </template>
+
+
+    </vxe-grid>
   </div>
 </template>
 
-<style>
+<style scoped>
+.main-div-customer{
+  width: 99%;
+  height: 100%;
+}
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/mm/mainTrader/Trader.vue b/north-glass-erp/northglass-erp/src/views/mm/mainTrader/Trader.vue
index 7a82cd9..e72659b 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/mainTrader/Trader.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainTrader/Trader.vue
@@ -19,8 +19,9 @@
   <div id="main">
     <div id="div-title">
       <el-breadcrumb :separator-icon="ArrowRight">
-        <el-breadcrumb-item :to="{ path: '/main/trader/SelectTrader' }">浜у搧鏌ヨ</el-breadcrumb-item>
-        <el-breadcrumb-item :to="{ path: '/main/trader/CreateTrader' }">鍒涘缓</el-breadcrumb-item>
+        <el-breadcrumb-item :to="{ path: '/main/trader/SelectTrader' }">渚涘簲鍟嗗垪琛�</el-breadcrumb-item>
+        <el-breadcrumb-item v-show="false" :to="{ path: '/main/order/orderReport' }">鎶ヨ〃</el-breadcrumb-item>
+<!--        <el-breadcrumb-item :to="{ path: '/main/trader/CreateTrader' }">鍒涘缓</el-breadcrumb-item>-->
       </el-breadcrumb>
 
     </div>
diff --git a/north-glass-erp/northglass-erp/src/views/mm/purchaseOrder/PurchaseOrder.vue b/north-glass-erp/northglass-erp/src/views/mm/purchaseOrder/PurchaseOrder.vue
index 470db4c..7d68473 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/purchaseOrder/PurchaseOrder.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/purchaseOrder/PurchaseOrder.vue
@@ -1,33 +1,27 @@
 <template>
   <div class="common-layout">
-   <el-container>
+    <el-container>
       <el-header style="height: 30px">
         <el-breadcrumb :separator-icon="ArrowRight" >
-<!--          <el-breadcrumb-item>閲囪喘涓庣墿璧�</el-breadcrumb-item>
+          <el-breadcrumb-item>閲囪喘涓庣墿璧�</el-breadcrumb-item>
           <el-breadcrumb-item>閲囪喘璁㈠崟
-          </el-breadcrumb-item>-->
-          <el-breadcrumb-item :to="{path:'/main/purchaseOrder/SelectPurchaseOrder'}">鏌ヨ閲囪喘璁㈠崟
           </el-breadcrumb-item>
-          <el-breadcrumb-item :to="{path:'/main/purchaseOrder/CreatePurchaseOrder'}">鍒涘缓閲囪喘璁㈠崟
+          <el-breadcrumb-item :to="{path:'/main/purchaseOrder/SelectPurchaseOrder'}">鏌ヨ
           </el-breadcrumb-item>
-          <el-breadcrumb-item :to="{path:'/main/purchaseOrder/StoragePurchaseOrder'}">閲囪喘鍏ュ簱
+          <el-breadcrumb-item :to="{path:'/main/purchaseOrder/CreatePurchaseOrder'}">鍒涘缓
           </el-breadcrumb-item>
-          <el-breadcrumb-item :to="{path:'/main/purchaseOrder/ReturnPurchaseOrder'}">閲囪喘閫�璐�
+          <el-breadcrumb-item :to="{path:'/main/purchaseOrder/PaymentPurchaseOrder'}">搴斾粯
           </el-breadcrumb-item>
-          <el-breadcrumb-item :to="{path:'/main/purchaseOrder/PaymentPurchaseOrder'}">搴斾粯閲囪喘璁㈠崟
+          <el-breadcrumb-item >
           </el-breadcrumb-item>
-          <el-breadcrumb-item style="display: none"></el-breadcrumb-item>
         </el-breadcrumb>
       </el-header>
       <el-main style="padding: 0">
-<router-view/>
+        <router-view/>
       </el-main>
-<!--     <el-footer>Footer</el-footer>-->
+      <!--      <el-footer>Footer</el-footer>-->
     </el-container>
-
-
   </div>
-
 </template>
 
 
diff --git a/north-glass-erp/northglass-erp/src/views/mm/purchaseOrder/Select.vue b/north-glass-erp/northglass-erp/src/views/mm/purchaseOrder/Select.vue
index 11161c1..fe28c9d 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/purchaseOrder/Select.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/purchaseOrder/Select.vue
@@ -23,306 +23,189 @@
               id="select"
               type="primary"
               :icon="Search"
-              @click="BtnSearchPurchaseOrder">鏌ヨ
+              @click="autoAddRow">鏌ヨ
           </el-button>
         </el-col>
       </el-row>
+
     </el-header>
-    <el-main style="padding-top: 5px;height:100%">
-      <vxe-grid
+    <el-main style="padding-top: 5px">
+      <div @scroll="handleTableScroll">
 
-          max-height="600"
-          @filter-change="filterChanged"
-          class="mytable-scrollbar"
-          ref="xGrid"
-          v-bind="gridOptions"
-          v-on="gridEvents"
-      >
+        <el-table :data="tableData" empty-text="鏆傛棤鏁版嵁" style="width: 100%" max-height="550px" border
+                  show-summary
+                  sum-text=" ">
+          <el-table-column fixed="left" prop="rIndex" label="" width="50" align="center"></el-table-column>
 
-        <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
-        <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
-        <template #content="{ row}">
-          <ul class="expand-wrapper">
-            <li v-for="(item,key,index) in row">
-              <span style="font-weight: bold">{{ key + ':  ' }}</span>
-              <span>{{ item }}</span>
-            </li>
-          </ul>
-        </template>
-
-        <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
-        <template #button_slot="{ row }">
-          <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">缂栬緫</el-button>
-<!--          <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">鍒犻櫎</el-button>-->
-<!--          <el-button @click="cellClickEvent" link type="primary" size="small">璇︽儏</el-button>-->
-        </template>
+          <el-table-column fixed="left" label="鎿嶄綔" width="120">
+            <template #default="scope">
+              <el-button
+                  link
+                  type="primary"
+                  size="small"
+                  @click.prevent="editRow(scope.$index)"
+              >
+                缂栬緫
+              </el-button>
+              <el-button
+                  link
+                  type="primary"
+                  size="small"
+                  @click.prevent="deleteRow(scope.$index)"
+              >
+                鍒犻櫎
+              </el-button>
+            </template>
+          </el-table-column>
 
 
-        <template #num1_filter="{ column, $panel }">
-          <div>
-            <div v-for="(option, index) in column.filters" :key="index">
-              <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
-            </div>
-          </div>
-        </template>
-      </vxe-grid>
+          <el-table-column prop="ordernumber" label="閲囪喘鍗曞彿" width="150"/>
+          <el-table-column prop="name" label="渚涘簲鍟�" width="120"/>
+          <el-table-column prop="strockNumber" label="鐗╂枡缂栧彿" width="200"/>
+          <el-table-column prop="city" label="鐗╂枡鍚嶇О" width="120"/>
+          <el-table-column prop="width" sortable label="瀹藉害" width="120"/>
+          <el-table-column prop="height" sortable label="楂樺害" width="120"/>
+          <el-table-column prop="thick" sortable label="鍘氬害" width="120"/>
+          <el-table-column prop="zip" label="鍨嬪彿" width="120"/>
+          <el-table-column prop="number" label="鍗曚綅" width="120"/>
+          <el-table-column prop="number" sortable label="涓嶅惈绋庡崟浠�" width="120"/>
+          <el-table-column prop="number" label="鏁伴噺" width="120" show-summary="ture"/>
+          <el-table-column prop="number" label="宸查噰璐暟閲�" width="120"/>
+          <el-table-column prop="zip" sortable label="閲戦" width="120"/>
+          <el-table-column prop="zip" label="涓嶅惈绋庨噾棰�" width="120"/>
+          <el-table-column prop="date" label="绋庣巼" width="120"/>
+          <el-table-column prop="date" label="搴撳瓨" width="120"/>
+          <el-table-column prop="zip" label="鍛ㄧ敤閲�" width="120"/>
+          <el-table-column prop="zip" label="鏈堢敤閲�" width="120"/>
+          <el-table-column prop="state" label="鍗曟嵁鐘舵��" width="120"/>
+          <el-table-column prop="ordernumber" label="閿�鍞崟鍙�" width="200"/>
+          <el-table-column prop="date" label="鍒跺崟鏃ユ湡" width="120"/>
+          <el-table-column prop="zip" label="鍒跺崟浜�" width="120"/>
+          <el-table-column prop="zip" label="閲囪喘閮ㄩ棬" width="120"/>
+          <el-table-column prop="zip" label="閲囪喘缁勭粐" width="120"/>
+          <el-table-column prop="zip" label="澶囨敞" width="200"/>
 
 
-      <vxe-modal v-model="showDetails" title="鏌ョ湅璇︽儏" width="600" height="400" :mask="false" :lock-view="false" resize>
-        <template #default>
-          <vxe-table
-              border="inner"
-              auto-resize
-              show-overflow
-              height="auto"
-              :row-config="{isHover: true}"
-              :show-header="false"
-              :sync-resize="showDetails"
-              :data="detailData">
-            <vxe-column field="label" width="40%"></vxe-column>
-            <vxe-column field="value"></vxe-column>
-          </vxe-table>
-        </template>
-      </vxe-modal>
+        </el-table>
 
 
+      </div>
     </el-main>
   </el-container>
 </template>
 
 
 <script setup>
-import {ref} from "vue";
-import {reactive} from "vue";
-import {useRouter} from 'vue-router'
-import {Search} from "@element-plus/icons-vue";
-import dayjs from "dayjs";
-import {VXETable} from "vxe-table";
+import {ref} from 'vue'
+import {Plus, Search} from "@element-plus/icons-vue";
 
-let router = useRouter()
-const getTableRow = (row, type) => {
-  switch (type) {
-    case 'edit' : {
-      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
-      router.push({path: '/main/purchaseOrder/CreatePurchaseOrder', query: {id: row.id}})
-      break
-    }
-    case 'delete': {
+const s_wuliaomingcheng = ref('')
+const s_buyOrderNumber = ref('')
+const s_width = ref('')
+const s_height = ref('')
+const s_thick = ref('')
 
 
-
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅'+row.id)
-      break
-    }
-  }
-}
-
-const xGrid = ref()
-const gridEvents = {
-  toolbarButtonClick({code}) {
-    const $grid = xGrid.value
-    if ($grid) {
-      switch (code) {
-        case 'Add': {//鏂板
-          router.push({path: '/main/purchaseOrder/CreatePurchaseOrder'})
-          break
-        }
-        case 'AddNo': {//鏃犲崟鏂板
-          openAlert({type: 'alert', content: '鐐瑰嚮浜嗘棤鍗曟柊澧�', status: 'success'})
-          break
-        }
-
-      }
-    }
+const options = [
+  {
+    value: '0',
+    label: '鍏ㄩ儴'
   },
-  toolbarToolClick({code}) {
-    const $grid = xGrid.value
-    if ($grid) {
-      switch (code) {
-        case 'myPrint': {
-          $grid.print()
-          break
-        }
-      }
-    }
+  {
+    value: '1',
+    label: '鍘熺墖'
   },
-}
-
-const openAlert = (options) => {
-  if(options.type==='message'){
-    VXETable.modal.message(options)
-  }else{
-    VXETable.modal.alert(options)
-  }
-
-}
-const closeAlert = (id) => {
-  VXETable.modal.close(id)
-}
-
-const confirmEvent = async () => {
-  const type = await VXETable.modal.confirm('鎮ㄧ‘瀹氳鍒犻櫎鍚楋紵')
-  VXETable.modal.message({ content: `鐐瑰嚮浜� ${type}` })
-}
-
-const BtnSearchPurchaseOrder =()=>{
-  for (let i = 1; i < 6; i++) {
-    const randomInt = Math.floor(Math.random() * 999) + 1000;//4浣嶆暟闅忔満鏁�
-    const randomSumInt = Math.floor(Math.random() * 99) + 10;//2浣嶆暟闅忔満鏁�
-    const randomOrderInt = Math.floor(Math.random() * 99) + 100;//3浣嶆暟闅忔満鏁�
-    const t = i % 2 === 0 ? 5 : 6;
-    const s = i % 2 === 0 ? '鍏ュ簱':i % 3 === 0 ? '寰呭鏍�' : i % 5 === 0 ? '宸查噰璐�' :'閫�搴�';
-    const CGNo = 'NGCG231200' + randomOrderInt;//閲囪喘缂栧彿
-    const wlNo = 'NGWL1000' + randomInt;
-    const xh = 'NGXH' + randomSumInt;
-    const wlmc = 'WLMC' + randomInt;
-    const gys = '渚涘簲鍟�' + randomSumInt;
-    const xhdh='NG231200'+randomOrderInt;
-    const w = i % 2 === 0 ? '3300' : i % 3 === 0 ? '3660' : i % 4 === 0 ? '2250' : '2580';
-    const h = i % 2 === 0 ? '2440' : i % 3 === 0 ? '2440' : i % 4 === 0 ? '2000' : '2300';
-    const dw = i % 2 === 0 ? '鐗�' : i % 3 === 0 ? '骞崇背' : i % 4 === 0 ? '鍖�' : '鍚�';
-    now.setDate(now.getDate() + 1);
-    gridOptions.data.push({
-      cgdh: CGNo,
-      h: t,
-      xh: xh,
-      wlbh: wlNo,
-      wlmc: wlmc,
-      gys: gys,
-      w: w,
-      g: h,
-      dw: dw,
-      cgzt:s,
-      rq:dayjs(now).format('YYYY-MM-DD'),
-      yl:randomSumInt,
-      sl:randomOrderInt,
-      xsdh:xhdh,
-      je:randomInt,
-      6: '139xxxxxxxx',
-
-    })
-  }
-
-}
-
-
-
-//缁勪欢鎺ユ敹鍙傛暟
-const gridOptions = reactive({
-  border: "full",//琛ㄦ牸鍔犺竟妗�
-  keepSource: true,//淇濇寔婧愭暟鎹�
-  align: 'center',//鏂囧瓧灞呬腑
-  stripe: true,//鏂戦┈绾�
-  rowConfig: {isCurrent: true, isHover: true, height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
-  id: 'CustomerList',
-  showFooter: true,//鏄剧ず鑴�
-  printConfig: {},
-  importConfig: {},
-  exportConfig: {},
-  scrollY: {enabled: true},//寮�鍚櫄鎷熸粴鍔�
-  showOverflow: true,
-  columnConfig: {
-    resizable: true,
-    useKey: true
+  {
+    value: '2',
+    label: '鍖栧鍝�'
   },
-  filterConfig: {   //绛涢�夐厤缃」
-    remote: true
+  {
+    value: '3',
+    label: '宸ュ叿'
   },
-  customConfig: {
-    storage: true
+  {
+    value: '4',
+    label: '鏈ㄧ'
   },
-  editConfig: {
-    trigger: 'click',
-    mode: 'row',
-    showStatus: true
+  {
+    value: '5',
+    label: '鐧界幓'
   },
-  columns: [
-    {title: '鎿嶄綔', width: '8%', slots: {default: 'button_slot'}, fixed: "left"},
-    {type: 'seq', fixed: "left", title: ' ', width: 50},
-    { type: 'checkbox',fixed:"left", title: '', width: 50 },
-    {type: 'expand', title:'璇︽儏', fixed: "left", slots: {content: 'content'}, width: 50},
-    {field: 'cgdh', width: '10%', title: '閲囪喘鍗曞彿', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: 'cgzt', width: '10%', title: '鐘舵��', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: 'gys', width: '10%',title: '渚涘簲鍟�', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: 'wlbh', width: '10%',title: '鐗╂枡缂栧彿', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: 'wlmc', width: '10%', title: '鐗╂枡鍚嶇О', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: 'w', width: '8%',title: '瀹藉害', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: 'g', width: '8%',title: '楂樺害', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: 'h', width: '8%',title: '鍘氬害', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: 'xh', width: '8%',title: '鍨嬪彿', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: 'dw', width: '8%',title: '鍗曚綅', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: '6', width: '12%',title: '涓嶅惈绋庡崟浠�', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: 'sl', width: '8%',title: '鏁伴噺', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: 'sl', width: '12%',title: '宸查噰璐暟閲�', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: 'je', width: '8%',title: '閲戦', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: 'je', width: '12%',title: '涓嶅惈绋庨噾棰�', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: '6', width: '8%',title: '绋庣巼', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: 'sl', width: '8%',title: '搴撳瓨', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: 'yl', width: '10%',title: '鍛ㄧ敤閲�', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: 'yl', width: '10%',title: '鏈堢敤閲�', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: 'cgzt', width: '10%',title: '鍗曟嵁鐘舵��', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: 'xsdh', width: '10%',title: '閿�鍞崟鍙�', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: 'rq', width: '10%',title: '鍒跺崟鏃ユ湡', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: '6', width: '10%', title: '鍒跺崟浜�', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: '6', width: '10%',title: '閲囪喘閮ㄩ棬', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: '6', width: '10%',title: '閲囪喘缁勭粐', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
-    {field: '6', width: '10%',title: '澶囨敞', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true}
-  ],//琛ㄥご鍙傛暟
-  toolbarConfig: {
-    buttons: [/*{type:'text'},
-      {
-      'name': '鍒涘缓璁㈠崟',
+]
 
-      'code':'Add',
-    },
-
-      {
-        'name': '鏃犲崟鏂板',
-
-        'code':'AddNo'
-      }*/
-      ],
-    import: false,
-    export: true,
-    print: true,
-    zoom: true,
-    custom: true,
-    style: 'paddling-left:10px'
-  },//琛ㄥご鎸夐挳
-  data: [],//table body瀹為檯鏁版嵁
-  mergeFooterItems: [
-    {row: 0, col: 0, rowspan: 1, colspan: 4}
-  ],//鍚堝苟鑴�
-  footerMethod({columns, data}) {//椤佃剼鍑芥暟
-    return [
-      columns.map((column, columnIndex) => {
-        if (columnIndex === 0) {
-          return '鍚堣:'
-        }
-        /* if (props.tableProp.footList.includes(column.field)) {
-           return sumNum(data, column.field)
-         }*/
-        return ''
-      })
-    ]
+const buyerOptions = [
+  {
+    value: '0',
+    label: '鍏ㄩ儴'
   },
+  {
+    value: '1',
+    label: '閲囪喘鐢�'
+  },
+  {
+    value: '2',
+    label: '閲囪喘涔�'
+  },
+]
 
-})
+const stateOptions = [
+  {
+    value: '0',
+    label: '寰呭鏍�'
+  },
+  {
+    value: '1',
+    label: '寰呴噰璐�'
+  },
+  {
+    value: '2',
+    label: '宸查噰璐�'
+  },
+]
 
-/*const showDetails = ref(false)
-const detailData = ref([])
-const cellClickEvent = ({ row }) => {
-  detailData.value = ['閲囪喘鍗曞彿', 'wlbh', 'wlmc', 'gys', 'h', 'k', 'g'].map(field => {
-    return { label: field, value: row[field] }
-  })
-  showDetails.value = true
-}*/
-
+import dayjs from 'dayjs'
+import 'dayjs/locale/zh-cn'
 
 const now = new Date()
 
-//鏃堕棿蹇嵎閫夋嫨
+const tableData = ref([])
+
+const autoAddRow = () => {
+  for (let i = 0; i < 10; i++) {
+    now.setDate(now.getDate() + 1)
+    const randomInt = Math.floor(Math.random() * 999) + 1000;
+    const randomOrderInt = Math.floor(Math.random() * 99) + 100;
+    const randomSumInt = Math.floor(Math.random() * 99) + 10;
+    var t = i % 2 === 0 ? 5 : 6;
+    var s = i % 3 === 0 ? '' : i % 4 === 0 ? '宸查噰璐�' : '寰呭鏍�';
+    var oNo = 'NGNO100000' + randomOrderInt;//璁㈠崟缂栧彿
+    var wlNo = 'NGWL100000' + randomInt
+    tableData.value.push({
+
+      date: dayjs(now).format('YYYY-MM-DD'),
+      name: '渚涘簲鍟�' + randomSumInt,
+      state: s,
+      city: 'Los Angeles',
+      address: 'No. 189, Grove St, Los Angeles',
+      zip: 'CA 90036',
+      number: randomInt,
+      width: '3660',
+      height: '2440',
+      rIndex: tableData.value.length + 1,
+      ordernumber: oNo,
+      strockNumber: wlNo,
+      thick: t
+    })
+  }
+}
+
+const CreatePurchaseOrder = () => {
+
+
+}
+
 const datevalue = ref('')
+
 const shortcuts = [
   {
     text: '杩戜竴鍛�',
@@ -357,5 +240,19 @@
 
 
 <style scoped>
+.el-row {
+  margin-bottom: 20px;
+}
 
+.el-row:last-child {
+  margin-bottom: 0;
+}
+
+.el-col {
+  border-radius: 4px;
+}
+
+.m-header {
+  height: 32px;
+}
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/mm/stockReport/StockReport.vue b/north-glass-erp/northglass-erp/src/views/mm/stockReport/StockReport.vue
index 631737d..65ca331 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/stockReport/StockReport.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/stockReport/StockReport.vue
@@ -3,9 +3,9 @@
     <el-container>
       <el-header style="height: 30px">
         <el-breadcrumb :separator-icon="ArrowRight">
-<!--          <el-breadcrumb-item>閲囪喘涓庣墿璧�</el-breadcrumb-item>
+          <el-breadcrumb-item>閲囪喘涓庣墿璧�</el-breadcrumb-item>
           <el-breadcrumb-item>浠撳偍鎶ヨ〃
-          </el-breadcrumb-item>-->
+          </el-breadcrumb-item>
           <el-breadcrumb-item :to="{path:'/main/stockReport/WarehouseReport'}">鍘熸潗鏂欐姤琛�
           </el-breadcrumb-item>
           <el-breadcrumb-item :to="{path:'/main/stockReport/StockWarehouseReport'}">鎴愬搧鎶ヨ〃
@@ -15,7 +15,7 @@
           <el-breadcrumb-item :to="{path:'/main/stockReport/SubsidiaryMonthReport'}">
             杈呮枡鏈堢粨
           </el-breadcrumb-item>
-          <el-breadcrumb-item style="display: none"></el-breadcrumb-item>
+          <el-breadcrumb-item></el-breadcrumb-item>
         </el-breadcrumb>
       </el-header>
       <el-main style="padding: 0;width: 99%;height: 100%;">
diff --git a/north-glass-erp/northglass-erp/src/views/pp/BOM/OrderBOMDetails.vue b/north-glass-erp/northglass-erp/src/views/pp/BOM/OrderBOMDetails.vue
index 27bb6f2..484df31 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/BOM/OrderBOMDetails.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/BOM/OrderBOMDetails.vue
@@ -73,7 +73,6 @@
   columns:[
     {type:'expand',fixed:"left",slots: { content:'content' },width: 50},
     { type: 'seq',fixed:"left", title: '鑷簭', width: 50 },
-    {title: '鎿嶄綔', width: 60, slots: { default: 'button_slot' },fixed:"left"},
     { slots: { default: 'state' }, title: '鍩哄噯BOM', width: 110 },
     { slots: { default: 'state' }, title: '鏍囧噯BOM', width: 110 },
     { slots: { default: 'state' }, title: '瀹℃牳', width: 80 },
diff --git a/north-glass-erp/northglass-erp/src/views/pp/processCard/ProcessCard.vue b/north-glass-erp/northglass-erp/src/views/pp/processCard/ProcessCard.vue
index 195eb12..a8ae90b 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/processCard/ProcessCard.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/processCard/ProcessCard.vue
@@ -10,36 +10,7 @@
 
 
 const router = useRouter()
-let flag = $ref(true)
-let flag1 = $ref(true)
-let flag2 = $ref(true)
-// let flag2=router.currentRoute.value.path!='/main/processCard/SelectProcessCard'?false:true
-function intoSplitFrame(){
-  if(flag1){
-    router.push('/main/processCard/SelectAddProcess')
-  }else {
-    router.push('/main/processCard/SelectProcessCard')
-  }
-  flag1=!flag1
-}
-function intoPrint(){
-  if(flag){
-    router.push('/main/processCard/SelectPrintFlowCard')
-  }else {
-    router.push('/main/processCard/SelectProcessCard')
-  }
-  flag=!flag
-}
 
-function intoRe(){
-  console.log(flag2)
-  if(flag2){
-    router.push('/main/processCard/ReShelving')
-  }else {
-    router.push('/main/processCard/SelectProcessCard')
-  }
-  flag2=!flag2
-}
 </script>
 
 <template>
@@ -48,7 +19,7 @@
       <el-breadcrumb :separator-icon="ArrowRight">
         <el-breadcrumb-item :to="{ path: '/main/processCard/SelectProcessCard' }">娴佺▼鍗$鐞�</el-breadcrumb-item>
         <el-breadcrumb-item :to="{ path: '/main/processCard/SelectAddProcess' }">鍒嗘灦</el-breadcrumb-item>
-        <el-breadcrumb-item :to="{ path: '/main/processCard/ReShelving' }">鎯呭喌鍙樻洿</el-breadcrumb-item>
+        <el-breadcrumb-item :to="{ path: '/main/processCard/ProductionScheduling' }">鎺掍骇</el-breadcrumb-item>
 <!--        <el-breadcrumb-item :to="{ path: '/main/processCard/SelectPrintFlowCard' }">鎵撳嵃</el-breadcrumb-item>-->
         <el-breadcrumb-item :to="{ path: '/main/processCard/SelectPrintFlowCard' }" style="display: none">鎵撳嵃</el-breadcrumb-item>
       </el-breadcrumb>
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
new file mode 100644
index 0000000..63110f6
--- /dev/null
+++ b/north-glass-erp/northglass-erp/src/views/pp/processCard/ProductionScheduling.vue
@@ -0,0 +1,285 @@
+<script setup>
+
+import {reactive, ref} from "vue";
+import {useRouter} from  'vue-router'
+let router=useRouter()
+const getTableRow = (row,type) =>{
+  switch (type) {
+    case 'edit' :{
+      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
+      router.push({path: '/main/processCard/PrintFlowCard', query: { id: row.id }})
+      break
+    }
+    case 'delete':{
+      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
+      break
+    }
+    case  'setType':{
+      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鎺掔増鐘舵��')
+      break
+    }
+  }
+}
+
+
+
+//琛ㄥ熬姹傚拰
+const sumNum = (list, field) => {
+  let count = 0
+  list.forEach(item => {
+    count += Number(item[field])
+  })
+  return count.toFixed(2)
+}
+
+//瀛愮粍浠舵帴鏀跺弬鏁�
+
+const gridOptions = reactive({
+  border:  "full",//琛ㄦ牸鍔犺竟妗�
+  keepSource: true,//淇濇寔婧愭暟鎹�
+  align: 'center',//鏂囧瓧灞呬腑
+  stripe:true,//鏂戦┈绾�
+  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
+  id: 'CustomerList',
+  showFooter: true,//鏄剧ず鑴�
+  printConfig: {},
+  importConfig: {},
+  exportConfig: {},
+  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
+  showOverflow:true,
+  columnConfig: {
+    resizable: true,
+    useKey: true
+  },
+  filterConfig: {   //绛涢�夐厤缃」
+    remote: true
+  },
+  customConfig: {
+    storage: true
+  },
+  editConfig: {
+    trigger: 'click',
+    mode: 'row',
+    showStatus: true
+  },//琛ㄥご鍙傛暟
+  columns:[
+    {type:'expand',fixed:"left",slots: { content:'content' },width: 50},
+    { type: 'checkbox',fixed:"left", title: '閫夋嫨', width: 80 },
+    { type: 'seq',fixed:"left", title: '鑷簭', width: 50 },
+    {field: 'id', title: '鎺掍骇缂栧彿', sortable: true, width: 120 },
+    {field: 'salesOrderNo', title: '閿�鍞崟鍙�',slots: { filter: 'num1_filter' }, sortable: true, width: 100 },
+    {field: 'customerName', title: '瀹㈡埛鍚嶇О', sortable: true, width: 110},
+    {field: 'EntryName', title: '椤圭洰鍚嶇О', sortable: true , width: 100},
+    {field: 'serialNumber', title: '搴忓彿', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }, width: 90},
+    {field: 'productName', title: '浜у搧鍚嶇О', sortable: true, width: 140},
+    {field: 'width', title: '瀹�', sortable: true , width: 70},
+    {field: 'height', title: '楂�', sortable: true , width: 70},
+    {field: 'number', title: '鏁伴噺', sortable: true , width: 70},
+    {field: 'area', title: '闈㈢Н', sortable: true , width: 90},
+    {field: 'productionSchedulingQuantity' , width: 120,editRender: { name: 'input', attrs: { placeholder: '' } }, title: '鎺掍骇鏁伴噺', sortable: true},
+
+    {field: 'availableQuantity', title: '宸叉帓浜ф暟閲�', sortable: true , width: 120},
+    {field: 'availableQuantityArea', title: '宸叉帓浜ч潰绉�', sortable: true , width: 120},
+    {field: 'usedQuantity', title: '鏈帓浜ф暟閲�', sortable: true , width: 120},
+    {field: 'usedQuantityArea', title: '鏈帓浜ч潰绉�', sortable: true , width: 120},
+    {field: 'shape', title: '褰㈢姸', sortable: true , width: 80},
+    {field: 'notes', title: '澶囨敞', sortable: true , width: 120},
+  ],//琛ㄥご鎸夐挳
+
+  toolbarConfig: {
+    buttons: [
+      {code: 'print_lck', name: '鍒犻櫎',status:'primary' },
+      {code: 'print_lck', name: '鎺掍骇',status:'primary' ,icon:'vxe-icon-save'},
+    ],
+    import: false,
+    export: true,
+    print: true,
+    zoom: true,
+    custom: true
+  },
+  data:  [
+    {
+      id:"PC20230100001",
+      salesOrderNo: 'NG231207',
+      customerName:'XXX鍏徃',
+      EntryName:"XXXX鍏洯",
+      serialNumber: '1',
+      productName: '6mm瓒呯櫧Low-E(澶�)+A12+6mm瓒呯櫧骞抽挗(鍐�)',
+      width: '2000',
+      height: '1000',
+      number: '10',
+      area: '20000',
+      productionSchedulingQuantity: '',
+      availableQuantity: '10000',
+      availableQuantityArea: '10000',
+      usedQuantity: '',
+      usedQuantityArea: '',
+      shape: '鐭╁舰',
+      notes: '澶囨敞'
+    },
+    {
+      id:"PC20230100001",
+      salesOrderNo: 'NG231207',
+      customerName:'XXX鍏徃',
+      EntryName:"XXXX鍏洯",
+      serialNumber: '1',
+      productName: '12mm瓒呯櫧Low-E(澶�)+A12+12mm瓒呯櫧骞抽挗(鍐�)',
+      width: '2000',
+      height: '1000',
+      number: '10',
+      area: '20000',
+      productionSchedulingQuantity: '',
+      availableQuantity: '10000',
+      availableQuantityArea: '10000',
+      usedQuantity: '123',
+      usedQuantityArea: '123',
+      shape: '鐭╁舰',
+      notes: '澶囨敞'
+    },
+    {
+      id:"",
+      salesOrderNo: 'NG231207',
+      customerName:'XXX鍏徃',
+      EntryName:"XXXX鍏洯",
+      serialNumber: '1',
+      productName: '8mm瓒呯櫧Low-E(澶�)+A12+8mm瓒呯櫧骞抽挗(鍐�)',
+      width: '2000',
+      height: '1000',
+      number: '10',
+      area: '20000',
+      productionSchedulingQuantity: '',
+      availableQuantity: '10000',
+      availableQuantityArea: '10000',
+      usedQuantity: '',
+      usedQuantityArea: '',
+      shape: '鐭╁舰',
+      notes: '澶囨敞'
+    },
+  ],//table body瀹為檯鏁版嵁
+  //鑴氶儴姹傚拰
+  footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
+    let footList=['number','productionSchedulingQuantity','availableQuantity','availableQuantityArea','usedQuantity','area','usedQuantityArea']
+    return[
+      columns.map((column, columnIndex) => {
+        if (columnIndex === 0) {
+          return '鍚堣:'
+        }
+        if (footList.includes(column.field)) {
+          return sumNum(data, column.field)
+        }
+        return ''
+      })
+    ]
+  }
+
+})
+
+const form = reactive({
+  name: '',
+  region: '',
+  date1: '',
+  date2: '',
+  delivery: false,
+  type: [],
+  resource: '',
+  desc: '',
+})
+const value = ref('')
+const options = [
+  {
+    value: 'Option1',
+    label: 'Option1',
+  },
+  {
+    value: 'Option2',
+    label: 'Option2',
+  },
+  {
+    value: 'Option3',
+    label: 'Option3',
+  },
+]
+</script>
+
+<template>
+  <div class="main-div-customer">
+    <div id="selectForm">
+      <el-row :gutter="0">
+        <el-date-picker
+            v-model="form.date1"
+            type="daterange"
+            start-placeholder="寮�濮嬫椂闂�"
+            end-placeholder="缁撴潫鏃堕棿"
+            :default-time="defaultTime"
+        />
+        &nbsp;&nbsp;
+        <el-select v-model="value" class="m-2" placeholder="宸ュ簭">
+          <el-option
+              v-for="item in options"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+          />
+        </el-select>
+        <el-select v-model="value" class="m-2" placeholder="鏄惁鎺掍骇">
+          <el-option
+              v-for="item in options"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+          />
+        </el-select>
+        &nbsp;&nbsp;
+        <el-button type="primary">鏌ヨ</el-button>
+      </el-row>
+
+    </div>
+    <vxe-grid
+        max-height="100%"
+        @filter-change="filterChanged"
+        class="mytable-scrollbar"
+        ref="xGrid"
+        v-bind="gridOptions"
+
+    >
+      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
+      <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
+      <template #content="{ row}">
+        <ul class="expand-wrapper">
+          <li  v-for="(item,key,index) in row">
+            <span style="font-weight: bold">{{key+':  '}}</span>
+            <span>{{ item }}</span>
+          </li>
+        </ul>
+      </template>
+
+      <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
+      <template #button_slot="{ row }">
+        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">鎵撳嵃</el-button>
+        <el-button @click="getTableRow(row,'setType')" link type="primary" size="small">鎺掔増</el-button>
+        <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">鍒犻櫎</el-button>
+      </template>
+
+      <template #num1_filter="{ column, $panel }">
+        <div>
+          <div v-for="(option, index) in column.filters" :key="index">
+            <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
+          </div>
+        </div>
+      </template>
+
+
+    </vxe-grid>
+  </div>
+</template>
+
+<style scoped>
+.main-div-customer{
+  width: 99%;
+  height: 100%;
+}
+#selectForm {
+  width: 70%;
+  text-align: center;
+}
+</style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/pp/processCard/ReShelving.vue b/north-glass-erp/northglass-erp/src/views/pp/processCard/ReShelving.vue
deleted file mode 100644
index 3be6b4e..0000000
--- a/north-glass-erp/northglass-erp/src/views/pp/processCard/ReShelving.vue
+++ /dev/null
@@ -1,203 +0,0 @@
-<script setup>
-
-import {reactive} from "vue";
-import {useRouter} from  'vue-router'
-let router=useRouter()
-const getTableRow = (row,type) =>{
-  switch (type) {
-    case 'edit' :{
-      //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
-      router.push({path: '/main/processCard/PrintFlowCard', query: { id: row.id }})
-      break
-    }
-    case 'delete':{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
-      break
-    }
-    case  'setType':{
-      alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鎺掔増鐘舵��')
-      break
-    }
-  }
-}
-
-const form = reactive({
-  xsdh: 'NG231207'
-})
-
-//琛ㄥ熬姹傚拰
-const sumNum = (list, field) => {
-  let count = 0
-  list.forEach(item => {
-    count += Number(item[field])
-  })
-  return count.toFixed(2)
-}
-
-//瀛愮粍浠舵帴鏀跺弬鏁�
-
-const gridOptions = reactive({
-  border:  "full",//琛ㄦ牸鍔犺竟妗�
-  keepSource: true,//淇濇寔婧愭暟鎹�
-  align: 'center',//鏂囧瓧灞呬腑
-  stripe:true,//鏂戦┈绾�
-  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
-  id: 'CustomerList',
-  showFooter: true,//鏄剧ず鑴�
-  printConfig: {},
-  importConfig: {},
-  exportConfig: {},
-  scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
-  showOverflow:true,
-  columnConfig: {
-    resizable: true,
-    useKey: true
-  },
-  filterConfig: {   //绛涢�夐厤缃」
-    remote: true
-  },
-  customConfig: {
-    storage: true
-  },
-  editConfig: {
-    trigger: 'click',
-    mode: 'row',
-    showStatus: true
-  },//琛ㄥご鍙傛暟
-  columns:[
-    {type:'expand',fixed:"left",slots: { content:'content' },width: 50},
-    { type: 'checkbox',fixed:"left", title: '閫夋嫨', width: 80 },
-    { type: 'seq',fixed:"left", title: '鑷簭', width: 50 },
-    {field: 'salesOrderNo', title: '閿�鍞崟鍙�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true, },
-    {field: 'processCard', title: '娴佺▼鍗″彿', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
-    {field: 'serialNumber', title: '搴忓彿', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
-    {field: 'number', title: '鏁伴噺',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'technologicalProcess', title: '宸ヨ壓娴佺▼', sortable: true,showOverflow:"ellipsis"},
-  ],//琛ㄥご鎸夐挳
-
-  toolbarConfig: {
-    buttons: [
-      {code: 'print_lck', name: '閲嶆柊鍒嗘灦',status:'primary' ,icon:'vxe-icon-save'},
-    ],
-    import: false,
-    export: true,
-    print: true,
-    zoom: true,
-    custom: true
-  },
-  data:  [
-    {
-      salesOrderNo: 'NG231207',
-      processCard:'NG231207A01',
-      serialNumber:"1",
-      number: '11',
-      technologicalProcess: '鍒囧壊->纾ㄨ竟->閽㈠寲->涓┖->鍖呰,鍒囧壊->纾ㄨ竟->閽㈠寲->涓┖->鍖呰',
-
-    },
-    {
-      salesOrderNo: 'NG231207',
-      processCard:'NG231207A01',
-      serialNumber:"2",
-      number: '11',
-      technologicalProcess: '鍒囧壊->纾ㄨ竟->閽㈠寲->涓┖->鍖呰,鍒囧壊->纾ㄨ竟->閽㈠寲->涓┖->鍖呰',
-
-    },
-    {
-      salesOrderNo: 'NG231207',
-      processCard:'NG231207A01',
-      serialNumber:"3",
-      number: '11',
-      technologicalProcess: '鍒囧壊->纾ㄨ竟->閽㈠寲->涓┖->鍖呰,鍒囧壊->纾ㄨ竟->閽㈠寲->涓┖->鍖呰',
-
-    },
-    {
-      salesOrderNo: 'NG231207',
-      processCard:'NG231207A02',
-      serialNumber:"4",
-      number: '11',
-      technologicalProcess: '鍒囧壊->纾ㄨ竟->閽㈠寲->涓┖->鍖呰,鍒囧壊->纾ㄨ竟->閽㈠寲->涓┖->鍖呰',
-
-    },
-    {
-      salesOrderNo: 'NG231207',
-      processCard:'NG231207A02',
-      serialNumber:"5",
-      number: '11',
-      technologicalProcess: '鍒囧壊->纾ㄨ竟->閽㈠寲->涓┖->鍖呰,鍒囧壊->纾ㄨ竟->閽㈠寲->涓┖->鍖呰',
-
-    },
-  ],//table body瀹為檯鏁版嵁
-  //鑴氶儴姹傚拰
-  footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
-    let footList=['number']
-    return[
-      columns.map((column, columnIndex) => {
-        if (columnIndex === 0) {
-          return '鍚堣:'
-        }
-        if (footList.includes(column.field)) {
-          return sumNum(data, column.field)
-        }
-        return ''
-      })
-    ]
-  }
-
-})
-
-
-
-</script>
-
-<template>
-  <div class="main-div-customer">
-    <el-row :gutter="0">
-      <el-input placeholder="閿�鍞崟鍙�" v-model="form.xsdh" style="width: 200px"/>
-      &nbsp;&nbsp;
-      <el-button type="primary">鏌ヨ</el-button>
-    </el-row>
-    <vxe-grid
-        max-height="100%"
-        @filter-change="filterChanged"
-        class="mytable-scrollbar"
-        ref="xGrid"
-        v-bind="gridOptions"
-
-    >
-      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
-      <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
-      <template #content="{ row}">
-        <ul class="expand-wrapper">
-          <li  v-for="(item,key,index) in row">
-            <span style="font-weight: bold">{{key+':  '}}</span>
-            <span>{{ item }}</span>
-          </li>
-        </ul>
-      </template>
-
-      <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
-      <template #button_slot="{ row }">
-        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">鎵撳嵃</el-button>
-        <el-button @click="getTableRow(row,'setType')" link type="primary" size="small">鎺掔増</el-button>
-        <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">鍒犻櫎</el-button>
-      </template>
-
-      <template #num1_filter="{ column, $panel }">
-        <div>
-          <div v-for="(option, index) in column.filters" :key="index">
-            <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
-          </div>
-        </div>
-      </template>
-
-
-    </vxe-grid>
-  </div>
-</template>
-
-<style scoped>
-.main-div-customer{
-  width: 99%;
-  height: 100%;
-}
-</style>
\ No newline at end of file
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 290b620..574deb0 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
@@ -65,7 +65,7 @@
     { type: 'seq',fixed:"left", title: '鑷簭', width: 50 },
     {title: '鎿嶄綔', width: 140, slots: { default: 'button_slot' },fixed:"left"},
     {field: 'salesOrderNo', title: '閿�鍞崟鍙�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true, },
-    {field: 'productionOrderNo', title: '娴佺▼鍗″彿', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'productionOrderNo', width: 120, title: '娴佺▼鍗″彿', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'productID', title: '浜у搧缂栧彿', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'productName', title: '浜у搧鍚嶇О',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
     {field: 'entryName', title: '椤圭洰鍚嶇О', sortable: true,showOverflow:"ellipsis"},
@@ -89,7 +89,7 @@
   data:  [
     {
       salesOrderNo: 'NG231201',
-      productionOrderNo: 'NG231201A',
+      productionOrderNo: 'NG231201A01 ',
       productID: '9001010203000008',
       productName: '5mm鐧界幓骞抽挗(澶�)+0.76PVB閫忔槑+5mm鐧界幓骞抽挗(鍐�)',
       entryName: '淇″悎鏄ュぉ閲�',
@@ -101,7 +101,7 @@
     },
     {
       salesOrderNo: 'NG231201',
-      productionOrderNo: 'NG231201B',
+      productionOrderNo: 'NG231201B01',
       productID: '9001010203000008',
       productName: '5mm鐧界幓骞抽挗(澶�)+0.76PVB閫忔槑+5mm鐧界幓骞抽挗(鍐�)',
       entryName: '淇″悎鏄ュぉ閲�',
@@ -113,7 +113,7 @@
     },
     {
       salesOrderNo: 'NG231202',
-      productionOrderNo: 'NG231202A',
+      productionOrderNo: 'NG231202A01',
       productID: '9001010203000008',
       productName: '5mm鐧界幓骞抽挗(澶�)+0.76PVB閫忔槑+5mm鐧界幓骞抽挗(鍐�)',
       entryName: '淇″悎鏄ュぉ閲�',
@@ -125,7 +125,7 @@
     },
     {
       salesOrderNo: 'NG231203',
-      productionOrderNo: 'NG231203A',
+      productionOrderNo: 'NG231203A01',
       productID: '9001010203000008',
       productName: '5mm鐧界幓骞抽挗(澶�)+0.76PVB閫忔槑+5mm鐧界幓骞抽挗(鍐�)',
       entryName: '淇″悎鏄ュぉ閲�',
@@ -137,7 +137,7 @@
     },
     {
       salesOrderNo: 'NG231204',
-      productionOrderNo: 'NG231204A',
+      productionOrderNo: 'NG231204A01',
       productID: '9001010203000008',
       productName: '5mm鐧界幓骞抽挗(澶�)+0.76PVB閫忔槑+5mm鐧界幓骞抽挗(鍐�)',
       entryName: '淇″悎鏄ュぉ閲�',
@@ -149,7 +149,7 @@
     },
     {
       salesOrderNo: 'NG231205',
-      productionOrderNo: 'NG231205A',
+      productionOrderNo: 'NG231205A01',
       productID: '9001010203000008',
       productName: '5mm鐧界幓骞抽挗(澶�)+0.76PVB閫忔槑+5mm鐧界幓骞抽挗(鍐�)',
       entryName: '淇″悎鏄ュぉ閲�',
@@ -161,7 +161,7 @@
     },
     {
       salesOrderNo: 'NG231206',
-      productionOrderNo: 'NG231206A',
+      productionOrderNo: 'NG231206A01',
       productID: '9001010203000008',
       productName: '5mm鐧界幓骞抽挗(澶�)+0.76PVB閫忔槑+5mm鐧界幓骞抽挗(鍐�)',
       entryName: '淇″悎鏄ュぉ閲�',
@@ -173,7 +173,7 @@
     },
     {
       salesOrderNo: 'NG231207',
-      productionOrderNo: 'NG231207A',
+      productionOrderNo: 'NG231207A01',
       productID: '9001010203000008',
       productName: '5mm鐧界幓骞抽挗(澶�)+0.76PVB閫忔槑+5mm鐧界幓骞抽挗(鍐�)',
       entryName: '淇″悎鏄ュぉ閲�',
diff --git a/north-glass-erp/northglass-erp/src/views/pp/processCard/SplittingDetails.vue b/north-glass-erp/northglass-erp/src/views/pp/processCard/SplittingDetails.vue
index 222d3bf..f397e0f 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/processCard/SplittingDetails.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/processCard/SplittingDetails.vue
@@ -65,7 +65,7 @@
     { type: 'seq',fixed:"left", title: '鑷簭', width: 50 },
     {title: '鎿嶄綔', width: 80, slots: { default: 'button_slot' },fixed:"left"},
     {field: 'salesOrderNo',  title: '閿�鍞崟鍙�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true, },
-    {field: 'productionOrderNo', title: '娴佺▼鍗″彿', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'productionOrderNo', title: '鐢熶骇璁㈠崟鍙�', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'productID', title: '浜у搧缂栧彿', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'productName', title: '浜у搧鍚嶇О',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
     {field: 'total', title: '鎬绘暟閲�', sortable: true,showOverflow:"ellipsis"},
diff --git a/north-glass-erp/northglass-erp/src/views/pp/workOrder/SelectWorkOrder.vue b/north-glass-erp/northglass-erp/src/views/pp/workOrder/SelectWorkOrder.vue
index 93522b3..fd60acb 100644
--- a/north-glass-erp/northglass-erp/src/views/pp/workOrder/SelectWorkOrder.vue
+++ b/north-glass-erp/northglass-erp/src/views/pp/workOrder/SelectWorkOrder.vue
@@ -1,6 +1,6 @@
 <script setup>
 
-import {reactive} from "vue";
+import {reactive, ref} from "vue";
 import {useRouter} from  'vue-router'
 let router=useRouter()
 const getTableRow = (row,type) =>{
@@ -61,7 +61,7 @@
     { type: 'seq',fixed:"left", title: '鑷簭', width: 50 },
     {title: '鎿嶄綔', width: 110, slots: { default: 'button_slot' },fixed:"left"},
     {field: 'salesOrderNo', title: '閿�鍞崟鍙�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true, },
-    {field: 'productionOrderNo', title: '娴佺▼鍗″彿', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
+    {field: 'productionOrderNo', title: '鐢熶骇璁㈠崟鍙�', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'batch', title: '鎵规', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
     {field: 'productName', title: '浜у搧鍚嶇О',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
     {field: 'monolithicTotalArea', title: '鍗曠墖鎬婚潰绉�', sortable: true,showOverflow:"ellipsis"},
@@ -204,6 +204,22 @@
   desc: '',
 })
 
+const value = ref('')
+const options = [
+  {
+    value: 'Option1',
+    label: 'Option1',
+  },
+  {
+    value: 'Option2',
+    label: 'Option2',
+  },
+  {
+    value: 'Option3',
+    label: 'Option3',
+  },
+]
+
 </script>
 
 <template>
@@ -217,6 +233,15 @@
             end-placeholder="缁撴潫鏃堕棿"
             :default-time="defaultTime"
         />
+        &nbsp;&nbsp;
+        <el-select v-model="value" class="m-2" placeholder="鏄惁杞伐鍗�">
+          <el-option
+              v-for="item in options"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+          />
+        </el-select>
         &nbsp;&nbsp;
         <el-button type="primary">鏌ヨ</el-button>
       </el-row>
@@ -266,7 +291,7 @@
   height: 100%;
 }
 #selectForm {
-  width: 40%;
+  width: 50%;
   text-align: center;
 }
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/sd/customer/CreateCustomer.vue b/north-glass-erp/northglass-erp/src/views/sd/customer/CreateCustomer.vue
index 458c395..424bd72 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/customer/CreateCustomer.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/customer/CreateCustomer.vue
@@ -126,7 +126,6 @@
 }
 
 .div-form{
-  margin-left: 30%;
   height:70%;
   width: 40%;
 }
diff --git a/north-glass-erp/northglass-erp/src/views/sd/customer/Customer.vue b/north-glass-erp/northglass-erp/src/views/sd/customer/Customer.vue
index d69b78d..bb247e9 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/customer/Customer.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/customer/Customer.vue
@@ -1,6 +1,10 @@
 <script setup>
 import {ArrowLeftBold, ArrowRight, Search} from "@element-plus/icons-vue"
 import {useRouter} from "vue-router";
+let indexFlag=$ref(1)
+function changeRouter(index){
+  indexFlag=index
+}
 
 </script>
 
@@ -8,8 +12,9 @@
   <div id="main-div">
     <div id="div-title">
       <el-breadcrumb :separator-icon="ArrowRight">
-        <el-breadcrumb-item :to="{ path: '/main/customer/selectCustomer' }">瀹㈡埛棣栭〉</el-breadcrumb-item>
-        <el-breadcrumb-item :to="{ path: '/main/customer/CreateCustomer' }">鏂板</el-breadcrumb-item>
+        <el-breadcrumb-item @click="changeRouter(1)" :class="indexFlag===1?'indexTag':''" :to="{ path: '/main/customer/selectCustomer' }">瀹㈡埛棣栭〉</el-breadcrumb-item>
+        <el-breadcrumb-item @click="changeRouter(2)" :class="indexFlag===2?'indexTag':''" :to="{ path: '/main/customer/CreateCustomer' }">鏂板</el-breadcrumb-item>
+        <el-breadcrumb-item v-show="false" :to="{ path: '/main/product/test1' }">娴嬭瘯</el-breadcrumb-item>
       </el-breadcrumb>
     </div>
 
@@ -44,4 +49,7 @@
 #select{
   margin-left:0.5rem;
 }
+:deep(.indexTag .el-breadcrumb__inner){
+  color: #5CADFE !important;
+}
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/sd/delivery/Delivery.vue b/north-glass-erp/northglass-erp/src/views/sd/delivery/Delivery.vue
index 1e4b5ef..21d677e 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/delivery/Delivery.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/delivery/Delivery.vue
@@ -1,16 +1,19 @@
 <script setup>
 import {ArrowLeftBold, ArrowRight, Search} from "@element-plus/icons-vue"
 import {useRouter} from "vue-router";
-
+let indexFlag=$ref(1)
+function changeRouter(index){
+  indexFlag=index
+}
 </script>
 
 <template>
   <div id="main-div">
     <div id="div-title">
       <el-breadcrumb :separator-icon="ArrowRight">
-        <el-breadcrumb-item :to="{ path: '/main/delivery/selectDelivery' }">鍙戣揣棣栭〉</el-breadcrumb-item>
-        <el-breadcrumb-item :to="{ path: '/main/delivery/selectOrderList' }">璁㈠崟鍙戣揣</el-breadcrumb-item>
-        <el-breadcrumb-item :to="{ path: '/main/delivery/deliveryReport' }">鎶ヨ〃</el-breadcrumb-item>
+        <el-breadcrumb-item @click="changeRouter(1)" :class="indexFlag===1?'indexTag':''" :to="{ path: '/main/delivery/selectDelivery' }">鍙戣揣棣栭〉</el-breadcrumb-item>
+        <el-breadcrumb-item @click="changeRouter(2)" :class="indexFlag===2?'indexTag':''" :to="{ path: '/main/delivery/selectOrderList' }">璁㈠崟鍙戣揣</el-breadcrumb-item>
+        <el-breadcrumb-item @click="changeRouter(3)" :class="indexFlag===3?'indexTag':''" :to="{ path: '/main/delivery/deliveryReport' }">鎶ヨ〃</el-breadcrumb-item>
         <el-breadcrumb-item v-show="false" :to="{ path: '/main/delivery/deliveryReport' }">鎶ヨ〃</el-breadcrumb-item>
       </el-breadcrumb>
     </div>
@@ -46,4 +49,7 @@
 #select{
   margin-left:0.5rem;
 }
+:deep(.indexTag .el-breadcrumb__inner){
+  color: #5CADFE !important;
+}
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/sd/order/Order.vue b/north-glass-erp/northglass-erp/src/views/sd/order/Order.vue
index b1addba..78000a9 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/order/Order.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/order/Order.vue
@@ -3,15 +3,19 @@
 import {useRouter} from "vue-router";
 
 const router = useRouter()
+let indexFlag=$ref(1)
+function changeRouter(index){
+  indexFlag=index
+}
 </script>
 
 <template>
   <div id="main-div">
     <div id="div-title">
       <el-breadcrumb :separator-icon="ArrowRight">
-        <el-breadcrumb-item :to="{ path: '/main/order/selectOrder' }">璁㈠崟棣栭〉</el-breadcrumb-item>
-        <el-breadcrumb-item :to="{ path: '/main/order/createOrder' }">鍒涘缓</el-breadcrumb-item>
-        <el-breadcrumb-item :to="{ path: '/main/order/orderReport' }">鎶ヨ〃</el-breadcrumb-item>
+        <el-breadcrumb-item @click="changeRouter(1)" :class="indexFlag===1?'indexTag':''" :to="{ path: '/main/order/selectOrder' }">璁㈠崟棣栭〉</el-breadcrumb-item>
+        <el-breadcrumb-item @click="changeRouter(2)" :class="indexFlag===2?'indexTag':''" :to="{ path: '/main/order/createOrder' }">鍒涘缓</el-breadcrumb-item>
+        <el-breadcrumb-item @click="changeRouter(3)" :class="indexFlag===3?'indexTag':''" :to="{ path: '/main/order/orderReport' }">鎶ヨ〃</el-breadcrumb-item>
         <el-breadcrumb-item v-show="false" :to="{ path: '/main/order/orderReport' }">鎶ヨ〃</el-breadcrumb-item>
       </el-breadcrumb>
     </div>
@@ -47,4 +51,7 @@
 #select{
   margin-left:0.5rem;
 }
+:deep(.indexTag .el-breadcrumb__inner){
+  color: #5CADFE !important;
+}
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/sd/product/Product.vue b/north-glass-erp/northglass-erp/src/views/sd/product/Product.vue
index fd31b46..94a4787 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/product/Product.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/product/Product.vue
@@ -6,9 +6,11 @@
 import {ElMessage} from "element-plus";
 import {useRouter} from "vue-router";
 import  GlassType from '@/components/sd/product/GlassType.vue'
-
-
 const router = useRouter()
+let indexFlag=$ref(1)
+function changeRouter(index){
+  indexFlag=index
+}
 
 </script>
 
@@ -16,8 +18,8 @@
   <div id="main">
    <div id="div-title">
      <el-breadcrumb :separator-icon="ArrowRight">
-       <el-breadcrumb-item :to="{ path: '/main/product/selectProduct' }">浜у搧棣栭〉</el-breadcrumb-item>
-       <el-breadcrumb-item :to="{ path: '/main/product/createProduct' }">鍒涘缓</el-breadcrumb-item>
+       <el-breadcrumb-item @click="changeRouter(1)" :class="indexFlag===1?'indexTag':''" :to="{ path: '/main/product/selectProduct' }">浜у搧棣栭〉</el-breadcrumb-item>
+       <el-breadcrumb-item @click="changeRouter(2)" :class="indexFlag===2?'indexTag':''" :to="{ path: '/main/product/createProduct' }">鍒涘缓</el-breadcrumb-item>
 <!--       <el-breadcrumb-item :to="{ path: '/main/product/test' }">娴嬭瘯</el-breadcrumb-item>-->
 <!--       <el-breadcrumb-item :to="{ path: '/main/product/test1' }">娴嬭瘯</el-breadcrumb-item>-->
        <el-breadcrumb-item v-show="false" :to="{ path: '/main/product/test1' }">娴嬭瘯</el-breadcrumb-item>
@@ -56,4 +58,7 @@
 #select{
   margin-left:0.5rem;
 }
+:deep(.indexTag .el-breadcrumb__inner){
+  color: #5CADFE !important;
+}
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/sd/product/SelectProduct.vue b/north-glass-erp/northglass-erp/src/views/sd/product/SelectProduct.vue
index f0b1d2c..47be59c 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/product/SelectProduct.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/product/SelectProduct.vue
@@ -2,25 +2,57 @@
 import request from "@/utils/request"
 import deepClone from "@/utils/deepClone"
 import {ElDatePicker, ElMessage} from "element-plus"
-import useProductGlassTypeStore from "@/stores/productGlassType"
-import {watch} from "vue"
+import useProductGlassTypeStore from "@/stores/sd/product/productGlassType"
+import useProductStore from "@/stores/sd/product/prduct"
+import {onMounted, reactive, ref, watch} from "vue"
 import {Search} from "@element-plus/icons-vue"
 import GlassType from "@/components/sd/product/GlassType.vue"
 import {useRouter} from  'vue-router'
 import BasicTable from '@/components/basic/BasicTable.vue'
+import scrollEvnt from "@/hook";
 let productGlassTypeStore = useProductGlassTypeStore()
+let productStore = useProductStore()
 let router=useRouter()
+//鐩戝惉鐜荤拑绫诲瀷鏀瑰彉
 watch(productGlassTypeStore,(newVal,oldVal) => {
   let list = productList.filter( product=>{
     return  product.glassType==newVal.GlassType
   })
 })
 
-//let productList=$ref([])
+let pageNum=$ref(1)
+watch(productStore,(newVal,oldVal) => {
+  if(newVal.flag===true){
+    pageNum=pageNum+1
+    //鍚庣鑾峰彇鏈夊灏戦〉锛岃秴杩囧灏戦〉涓嶅啀璇锋眰
+    /*if(pageNum>5){
+      console.log(newVal.pageNum)
+      return
+    }*/
+    request.get(`/product/${pageNum}/100`).then((res) => {
+      gridOptions.loading=true
+      try{
+        if(res.code==200){
+          gridOptions.data=  gridOptions.data.concat(res.data)
+          newVal.flag=false
+          setTimeout(()=>{
+            gridOptions.loading=false
+          },1000)
+        }else{
+          ElMessage.warning(res.msg)
+        }
+      }finally {
+
+      }
+    })
+  }
+
+})
+
 let flag = $ref(false)
-request.get("/product").then((res) => {
+request.get("/product/1/100").then((res) => {
   if(res.code==200){
-    tableProp.datas= deepClone(res.data)
+    gridOptions.data= deepClone(res.data)
     flag = true
   }else{
     ElMessage.warning(res.msg)
@@ -30,18 +62,6 @@
 
 //瀛愮粍浠舵帴鏀跺弬鏁�
 let tableProp = $ref({
-  title:[
-    {type:'expand',fixed:"left",slots: { content:'content' },width: 50},
-    {type: 'seq',fixed:"left", title: '鑷簭', width: 80 },
-    {title: '鎿嶄綔', width: 110, slots: { default: 'button_slot' },fixed:"left"},
-    {field: 'prodID', title: '缂栧彿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'product', title: '鍚嶇О',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'typeName', title: '鎵�灞炵被鍒�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'query', title: '蹇�熸煡璇�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'remarks', title: '澶囨敞',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'creator', title: '鍒涘缓浜�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'createTime', title: '鍒涘缓鏃堕棿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}
-  ],
   datas:null,
   footList:[],
   //绛涢�夋潯浠跺垪
@@ -51,7 +71,7 @@
 
 
 
-const getChildren = (row,type) =>{
+const getTableRow = (row,type) =>{
   switch (type) {
     case 'edit' : {
       router.push({path: '/main/product/createProduct', query: { id: row.id }})
@@ -64,10 +84,80 @@
   }
 }
 
-const getCheckList = (row) =>{
-  alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑纭澶嶉�夋淇℃伅鍙湪鎺у埗鍙版煡鐪�')
-  console.log(row)
-}
+// const getCheckList = (row) =>{
+//   alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑纭澶嶉�夋淇℃伅鍙湪鎺у埗鍙版煡鐪�')
+// }
+
+
+const xGrid = ref()
+const gridOptions = reactive({
+  loading: false,
+  border:  "full",//琛ㄦ牸鍔犺竟妗�
+  keepSource: true,//淇濇寔婧愭暟鎹�
+  align: 'center',//鏂囧瓧灞呬腑
+  stripe:true,//鏂戦┈绾�
+  rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
+  id: 'demo_1',
+  showFooter: true,//鏄剧ず鑴�
+  printConfig: {},
+  importConfig: {},
+  exportConfig: {},
+  scrollY:{ enabled: true ,gt:100},//寮�鍚櫄鎷熸粴鍔�
+  showOverflow:true,
+  columnConfig: {
+    resizable: true,
+    useKey: true
+  },
+  filterConfig: {   //绛涢�夐厤缃」
+    remote: true
+  },
+  customConfig: {
+    storage: true
+  },
+  editConfig: {
+    trigger: 'click',
+    mode: 'row',
+    showStatus: true
+  },
+  columns:[
+    {type:'expand',fixed:"left",slots: { content:'content' },width: 50},
+    {type: 'seq',fixed:"left", title: '鑷簭', width: 80 },
+    {title: '鎿嶄綔', width: 110, slots: { default: 'button_slot' },fixed:"left"},
+    {field: 'prodID', title: '缂栧彿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
+    {field: 'product', title: '鍚嶇О',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
+    {field: 'typeName', title: '鎵�灞炵被鍒�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
+    {field: 'query', title: '蹇�熸煡璇�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
+    {field: 'remarks', title: '澶囨敞',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
+    {field: 'creator', title: '鍒涘缓浜�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
+    {field: 'createTime', title: '鍒涘缓鏃堕棿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}
+  ],//琛ㄥご鍙傛暟
+  toolbarConfig: {
+    buttons: [],
+    import: false,
+    export: true,
+    print: true,
+    zoom: true,
+    custom: true
+  },
+  data:  null,//table body瀹為檯鏁版嵁
+  footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
+    return[
+      columns.map((column, columnIndex) => {
+        if (columnIndex === 0) {
+          return '鍚堣:'
+        }
+        return ''
+      })
+    ]
+  }
+
+})
+
+
+
+
+
+
 
 </script>
 
@@ -80,53 +170,79 @@
           type="primary" :icon="Search">鏌ヨ</el-button>
 
 
-      <basic-table style="height: 97%" v-if="flag"
-                   :tableProp="tableProp"
-                   @getCheckList="getCheckList"
-                   @getChildren="getChildren"
-      ></basic-table>
 
+    <vxe-grid
+        max-height="100%"
+        class="mytable-scrollbar"
+        ref="xGrid"
+        v-bind="gridOptions"
+        v-on="gridEvents"
+        @scroll ="scrollEvnt"
 
+    >
+      <!--      @toolbar-button-click="toolbarButtonClickEvent"-->
+      <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
+      <template #content="{ row }">
+        <ul class="expand-wrapper">
+          <li  v-for="(item,key) in row">
+            <span style="font-weight: bold">{{key+':  '}}</span>
+            <span>{{ item }}</span>
+          </li>
+        </ul>
+      </template>
 
-<!--    <el-table
-        v-loading="loading"
-        :data="productList"
-        :header-cell-style="{ 'text-align': 'center' }"
-        :cell-style="{ 'text-align': 'center' }"
-        lazy
-        border
-        style="width: 100%;"
-        max-height="80vh">
+      <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
+      <template #button_slot="{ row }">
+        <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">缂栬緫</el-button>
+        <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">鍒犻櫎</el-button>
+      </template>
 
-
-      <el-table-column type="expand" fixed>
-        <template #default="props">
-          <div m="4">
-            <p m="t-0 b-2">缂栧彿: {{ props.row.prodID }}</p>
-            <p m="t-0 b-2">鍚嶇О: {{ props.row.product }}</p>
-            <p m="t-0 b-2">鎵�灞炵被鍒�: {{ props.row.glassType }}</p>
-            <p m="t-0 b-2">蹇�熸煡璇�: {{ props.row.query }}</p>
-            <p m="t-0 b-2">澶囨敞: {{ props.row.remarks }}</p>
-            <p m="t-0 b-2">鍒涘缓浜�: {{ props.row.creator }}</p>
-            <p m="t-0 b-2">鍒涘缓鏃堕棿: {{ props.row.createTime }}</p>
+      <template #num1_filter="{ column, $panel }">
+        <div>
+          <div v-for="(option, index) in column.filters" :key="index">
+            <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
           </div>
-        </template>
-      </el-table-column>
-      <el-table-column label="鎿嶄綔" width="110" fixed  >
-        <el-button link type="primary" size="small">缂栬緫</el-button>
-        <el-button link type="primary" size="small">鍒犻櫎</el-button>
-      </el-table-column>
-      <el-table-column sortable prop="prodID" label="缂栧彿" width="110"  />
-      <el-table-column prop="product" label="鍚嶇О" :show-overflow-tooltip='true'  />
-      <el-table-column prop="typeName" label="鎵�灞炵被鍒�" width="175" />
-      <el-table-column prop="query" label="蹇�熸煡璇�" width="150" />
-      <el-table-column prop="remarks" label="澶囨敞" :show-overflow-tooltip='true' width="100" />
-      <el-table-column prop="creator" label="鍒涘缓浜�" width="75" />
-      <el-table-column prop="createTime" label="鍒涘缓鏃堕棿" width="100" />
-    </el-table>-->
+        </div>
+      </template>
+
+
+    </vxe-grid>
+
+
+<!--      <basic-table-->
+<!--           style="height: 97%" v-if="flag"-->
+<!--          :tableProp="tableProp"-->
+<!--          @getCheckList="getCheckList"-->
+<!--          @getChildren="getChildren"-->
+<!--      ></basic-table>-->
   </div>
 </template>
 
 <style scoped>
-
+/*婊氬姩鏉℃暣浣撻儴鍒�*/
+.mytable-scrollbar ::-webkit-scrollbar {
+  width: 10px;
+  height: 10px;
+}
+/*婊氬姩鏉$殑杞ㄩ亾*/
+.mytable-scrollbar ::-webkit-scrollbar-track {
+  background-color: #FFFFFF;
+}
+/*婊氬姩鏉¢噷闈㈢殑灏忔柟鍧楋紝鑳藉悜涓婂悜涓嬬Щ鍔�*/
+.mytable-scrollbar ::-webkit-scrollbar-thumb {
+  background-color: transparent;
+  border-radius: 5px;
+  border: 1px solid #F1F1F1;
+  box-shadow: inset 0 0 6px rgba(0,0,0,.3);
+}
+.mytable-scrollbar ::-webkit-scrollbar-thumb:hover {
+  background-color: #ffffff;
+}
+.mytable-scrollbar ::-webkit-scrollbar-thumb:active {
+  background-color: white;
+}
+/*杈硅锛屽嵆涓や釜婊氬姩鏉$殑浜ゆ眹澶�*/
+.mytable-scrollbar ::-webkit-scrollbar-corner {
+  background-color: #FFFFFF;
+}
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/northglass-erp/src/views/sd/returns/Returns.vue b/north-glass-erp/northglass-erp/src/views/sd/returns/Returns.vue
index 9a4d48b..cfa6d0c 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/returns/Returns.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/returns/Returns.vue
@@ -1,16 +1,20 @@
 <script setup>
 import {ArrowLeftBold, ArrowRight, Search} from "@element-plus/icons-vue"
 import {useRouter} from "vue-router";
-
+let indexFlag=$ref(1)
+function changeRouter(index){
+  indexFlag=index
+}
 </script>
 
 <template>
   <div id="main-div">
     <div id="div-title">
       <el-breadcrumb :separator-icon="ArrowRight">
-        <el-breadcrumb-item :to="{ path: '/main/returns/selectReturns' }">閫�璐ч椤�</el-breadcrumb-item>
-        <el-breadcrumb-item :to="{ path: '/main/returns/selectDeliveryList' }">鍙戣揣閫�璐�</el-breadcrumb-item>
-        <el-breadcrumb-item :to="{ path: '/main/returns/returnsReport' }">鎶ヨ〃</el-breadcrumb-item>
+        <el-breadcrumb-item @click="changeRouter(1)" :class="indexFlag===1?'indexTag':''" :to="{ path: '/main/returns/selectReturns' }">閫�璐ч椤�</el-breadcrumb-item>
+        <el-breadcrumb-item @click="changeRouter(2)" :class="indexFlag===2?'indexTag':''" :to="{ path: '/main/returns/selectDeliveryList' }">鍙戣揣閫�璐�</el-breadcrumb-item>
+        <el-breadcrumb-item @click="changeRouter(3)" :class="indexFlag===3?'indexTag':''" :to="{ path: '/main/returns/returnsReport' }">鎶ヨ〃</el-breadcrumb-item>
+        <el-breadcrumb-item v-show="false" :to="{ path: '/main/product/test1' }">娴嬭瘯</el-breadcrumb-item>
       </el-breadcrumb>
     </div>
 
@@ -45,4 +49,7 @@
 #select{
   margin-left:0.5rem;
 }
+:deep(.indexTag .el-breadcrumb__inner){
+  color: #5CADFE !important;
+}
 </style>
\ No newline at end of file
diff --git a/north-glass-erp/src/main/java/com/example/erp/common/Result.java b/north-glass-erp/src/main/java/com/example/erp/common/Result.java
index d7c89e5..7ace997 100644
--- a/north-glass-erp/src/main/java/com/example/erp/common/Result.java
+++ b/north-glass-erp/src/main/java/com/example/erp/common/Result.java
@@ -23,7 +23,7 @@
         return new Result(code,msg,null);
     }
     public static  Result error(){
-        return new Result(Constants.Code_500,"绯荤粺鍙戠敓閿欒",null);
+        return new Result(Constants.Code_500,"鏈嶅姟鍣ㄥ彂鐢熷紓甯�",null);
     }
 
 }
diff --git a/north-glass-erp/src/main/java/com/example/erp/common/interceptor/JwtInterceptor.java b/north-glass-erp/src/main/java/com/example/erp/common/interceptor/JwtInterceptor.java
index 28b42e7..60ed717 100644
--- a/north-glass-erp/src/main/java/com/example/erp/common/interceptor/JwtInterceptor.java
+++ b/north-glass-erp/src/main/java/com/example/erp/common/interceptor/JwtInterceptor.java
@@ -29,7 +29,7 @@
     @Override
     public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
         //return HandlerInterceptor.super.preHandle(request, response, handler);
-        String token=request.getHeader("token");
+        /*String token=request.getHeader("token");
         if(!(handler instanceof HandlerMethod)){
             return  true;
         }
@@ -58,7 +58,7 @@
             jwtVerifier.verify(token);
         } catch (JWTVerificationException e) {
             throw new ServiceException(Constants.Code_401,"token楠岃瘉澶辫触,璇烽噸鏂扮櫥闄�");
-        }
+        }*/
         return true;
     }
 
diff --git a/north-glass-erp/src/main/java/com/example/erp/controller/sd/ProductController.java b/north-glass-erp/src/main/java/com/example/erp/controller/sd/ProductController.java
index f24f2bb..d948a09 100644
--- a/north-glass-erp/src/main/java/com/example/erp/controller/sd/ProductController.java
+++ b/north-glass-erp/src/main/java/com/example/erp/controller/sd/ProductController.java
@@ -3,9 +3,7 @@
 import com.example.erp.common.Result;
 import com.example.erp.service.sd.ProductService;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 @RestController
 @RequestMapping("/product")
@@ -13,9 +11,8 @@
     @Autowired
     ProductService productService;
 
-    @GetMapping
-    public Result defaultDateProduct(){
-        //璋冪敤productService鐨刣efaultDateProduct鏂规硶锛岃繑鍥炵粨鏋�
-        return Result.seccess(productService.defaultDateProduct());
+    @GetMapping("/{pageNum}/{pageSize}")
+    public Result defaultDateProduct(@PathVariable Integer pageNum, @PathVariable Integer pageSize){
+        return Result.seccess(productService.defaultDateProduct(pageNum,pageSize));
     }
 }
diff --git a/north-glass-erp/src/main/java/com/example/erp/mapper/sd/ProductMapper.java b/north-glass-erp/src/main/java/com/example/erp/mapper/sd/ProductMapper.java
index 6bc2b6a..912f2d9 100644
--- a/north-glass-erp/src/main/java/com/example/erp/mapper/sd/ProductMapper.java
+++ b/north-glass-erp/src/main/java/com/example/erp/mapper/sd/ProductMapper.java
@@ -2,10 +2,11 @@
 
 import com.example.erp.entity.sd.Product;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
 @Mapper
 public interface ProductMapper {
-    List<Product> defaultProduct();
+    List<Product> defaultProduct(@Param("offset") Integer offset, @Param("pageSize") Integer pageSize);
 }
diff --git a/north-glass-erp/src/main/java/com/example/erp/service/sd/ProductService.java b/north-glass-erp/src/main/java/com/example/erp/service/sd/ProductService.java
index aff3714..dcb9cad 100644
--- a/north-glass-erp/src/main/java/com/example/erp/service/sd/ProductService.java
+++ b/north-glass-erp/src/main/java/com/example/erp/service/sd/ProductService.java
@@ -13,7 +13,8 @@
 public class ProductService {
     @Autowired
     ProductMapper productMapper;
-    public List<Product> defaultDateProduct() {
-        return productMapper.defaultProduct();
+    public List<Product> defaultDateProduct(Integer pageNum,Integer pageSize) {
+        Integer offset = (pageNum-1)*pageSize;
+        return productMapper.defaultProduct(offset,pageSize);
     }
 }
diff --git a/north-glass-erp/src/main/resources/application.yml b/north-glass-erp/src/main/resources/application.yml
index ea893b0..80f43a2 100644
--- a/north-glass-erp/src/main/resources/application.yml
+++ b/north-glass-erp/src/main/resources/application.yml
@@ -10,12 +10,12 @@
       strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�.
       datasource:
         user_info:
-          url: jdbc:mysql://10.153.19.12:3306/erp_user_info?serverTimezone=GMT%2b8
+          url: jdbc:mysql://10.153.19.150:3306/erp_user_info?serverTimezone=GMT%2b8
           username: root
           password: beibo.123/
           driver-class-name: com.mysql.cj.jdbc.Driver
         erp_sd:
-          url: jdbc:mysql://10.153.19.12:3306/erp_sd?serverTimezone=GMT%2b8
+          url: jdbc:mysql://10.153.19.150:3306/erp_sd?serverTimezone=GMT%2b8
           username: root
           password: beibo.123/
           driver-class-name: com.mysql.cj.jdbc.Driver
diff --git a/north-glass-erp/src/main/resources/mapper/sd/Product.xml b/north-glass-erp/src/main/resources/mapper/sd/Product.xml
index acda317..1778fba 100644
--- a/north-glass-erp/src/main/resources/mapper/sd/Product.xml
+++ b/north-glass-erp/src/main/resources/mapper/sd/Product.xml
@@ -23,6 +23,7 @@
         left join basic_glass_type bgt on bgt.typeID = a.glassType
 
         order by id desc
+        limit #{offset},#{pageSize}
         ;
     </select>
 </mapper>
\ No newline at end of file
diff --git a/north-glass-erp/target/classes/application.yml b/north-glass-erp/target/classes/application.yml
index ea893b0..80f43a2 100644
--- a/north-glass-erp/target/classes/application.yml
+++ b/north-glass-erp/target/classes/application.yml
@@ -10,12 +10,12 @@
       strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�.
       datasource:
         user_info:
-          url: jdbc:mysql://10.153.19.12:3306/erp_user_info?serverTimezone=GMT%2b8
+          url: jdbc:mysql://10.153.19.150:3306/erp_user_info?serverTimezone=GMT%2b8
           username: root
           password: beibo.123/
           driver-class-name: com.mysql.cj.jdbc.Driver
         erp_sd:
-          url: jdbc:mysql://10.153.19.12:3306/erp_sd?serverTimezone=GMT%2b8
+          url: jdbc:mysql://10.153.19.150:3306/erp_sd?serverTimezone=GMT%2b8
           username: root
           password: beibo.123/
           driver-class-name: com.mysql.cj.jdbc.Driver
diff --git a/north-glass-erp/target/classes/mapper/sd/Product.xml b/north-glass-erp/target/classes/mapper/sd/Product.xml
index acda317..1778fba 100644
--- a/north-glass-erp/target/classes/mapper/sd/Product.xml
+++ b/north-glass-erp/target/classes/mapper/sd/Product.xml
@@ -23,6 +23,7 @@
         left join basic_glass_type bgt on bgt.typeID = a.glassType
 
         order by id desc
+        limit #{offset},#{pageSize}
         ;
     </select>
 </mapper>
\ No newline at end of file

--
Gitblit v1.8.0