From d3475019350136c3946afcb3a831a5444e97bc17 Mon Sep 17 00:00:00 2001
From: guoyuji <guoyujie@ng.com>
Date: 星期五, 29 三月 2024 09:59:02 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/ERP_override

---
 north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/ReturnToStorageCreate.vue |  567 +++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 494 insertions(+), 73 deletions(-)

diff --git a/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/ReturnToStorageCreate.vue b/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/ReturnToStorageCreate.vue
index 006feae..08f3220 100644
--- a/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/ReturnToStorageCreate.vue
+++ b/north-glass-erp/northglass-erp/src/views/mm/mainIngredientStock/ReturnToStorageCreate.vue
@@ -1,8 +1,430 @@
 <script setup>
-import {reactive, ref} from "vue"
-import {VXETable} from "vxe-table"
-import {useRouter} from "vue-router"
+import {onMounted, reactive, ref} from "vue";
+import {Search} from "@element-plus/icons-vue";
+import {useRoute, useRouter} from "vue-router"
+import request from "@/utils/request"
+import deepClone from "@/utils/deepClone"
+import VXETable from "vxe-table";
+import useUserInfoStore from "@/stores/userInfo";
+import {ElMessage} from "element-plus";
+import {addListener,toolbarButtonClickEvent} from "@/hook/mouseMove";
+import { useI18n } from 'vue-i18n'
+import {changeFilterEvent,filterChanged} from "@/hook"
+
+const { t } = useI18n()
 const router = useRouter()
+const route = useRoute()
+const userStore = useUserInfoStore()
+const username = userStore.user.userName
+const userid = userStore.user.userId
+let produceList = ref([])
+let cellArea = ref()
+
+
+const hasDecimal=(value)=>{
+  const regex=/\./ // 瀹氫箟姝e垯琛ㄨ揪寮忥紝鏌ユ壘灏忔暟鐐�
+  return regex.test(value) //杩斿洖true/false
+}
+
+const hasDecimalhtml=(item,row)=>{
+  let aa=item.split('.').length
+  if (aa===2){
+    return row[item.split('.')[0]][item.split('.')[1]]
+  }else if(aa===3){
+    return row[item.split('.')[0]][item.split('.')[1]][item.split('.')[2]]
+  }
+
+
+}
+
+//瀹氫箟鎺ユ敹鍔犺浇琛ㄥご涓嬫媺鏁版嵁
+const titleSelectJson = ref({
+  returningType:"",
+  inventoryOrganization:""
+})
+
+// 瀹氫箟琛ㄥご涓婁紶鏁版嵁
+let titleUploadData = ref({
+  returningType:'',
+  returningId:'',
+  materialRequisitionPersonnel:'',
+  materialRequisitionTeam:'',
+  orderId:'',
+  batch:'',
+  project:'',
+  reviewedState:'',
+  reviewed:'',
+  createTime:'',
+  warehouseManager:userStore.user.userName
+})
+
+//绛涢�夋潯浠讹紝鏈夊閿渶瑕佸厛瀹氫箟鏄庣粏閲岄潰鐨勬暟鎹�
+let filterData = ref({
+
+
+})
+
+let BasicData = ref([])
+let materialStore= ref([])
+
+const value = ref('')
+const options = [
+  {
+    value: '鍘熺墖',
+    label: '鍘熺墖'
+  },
+  {
+    value: '杈呮枡',
+    label: '杈呮枡',
+  }
+]
+
+let arr = [
+  {field: 'select',type: 'checkbox',fixed:"left", title: '閫夋嫨', width: '80' },
+  { type: 'seq',fixed:"left", title: '鑷簭', width: '80' },
+  {field: 'returnQuantity', width:'150', title: '杩斿簱鏁伴噺', sortable: true,editRender: { name: 'input', attrs: { placeholder: '' } }},
+  {field: 'dateOfManufacture', width:'150', title: '鐢熶骇鏃ユ湡', sortable: true,editRender: {name: 'input', attrs: {placeholder: '', type: 'date'}},},
+
+  {field: 'inventoryOrganization', width:'150', title: '搴撳瓨缁勭粐', sortable: true,folding: true,slots: { edit: 'inventoryOrganization'},editRender: { name: '$select', attrs: { placeholder: '' } }},
+  {field: 'producer', width:'150', title: '浜у湴', sortable: true,editRender: { name: 'input', attrs: { placeholder: '' } }},
+  {field: 'qualityGuaranteePeriod', width:'150', title: '淇濊川鏈�', sortable: true,editRender: { name: 'input', attrs: { placeholder: '' } }},
+  {field: 'inventoryArea', width:'150', title: '搴撳瓨鍖哄煙',sortable: true,editRender: { name: 'input', attrs: { placeholder: '' } }},
+
+  {field: 'remarks',width: '80', title: '澶囨敞', sortable: true,editRender: { name: 'input', attrs: { placeholder: '' } }},
+  {field: 'id', width: '150',title: '鐗╂枡缂栫爜', sortable: true,showOverflow:'ellipsis' ,filters:[{ data: '' }],slots: { filter: 'num1_filter' },filterMethod:filterChanged}
+]
+
+
+
+
+//椤甸潰绗竴娆″姞杞�
+request.get(`/BasicWarehouse/BasicWarehouseTypes/鏉愭枡杩斿簱绫诲瀷`).then((res) => {
+
+  if(res.code==200){
+    titleSelectJson.value=deepClone(res.data)
+    const today = new Date
+    today.setTime(today.getTime() + (15 * 24 * 60 * 60 * 1000))
+    titleUploadData.value.createTime = today.getFullYear() +
+        '-' + ("0" + (today.getMonth() + 1)).slice(-2)
+        + '-' + ("0" + today.getDate()).slice(-2)
+
+  }else{
+    ElMessage.warning(res.msg)
+  }
+})
+
+
+
+const  number = ref();
+
+onMounted(()=>{
+  //鍚敤琛ㄦ牸鎷栧姩閫変腑
+  addListener(xGrid.value,gridOptions,cellArea.value)
+
+
+  //杩斿簱缂栬緫
+  const str = route.query.returningId
+  if (typeof str != 'undefined' && str != null && str !== '' && str !== '\n' && str !== '\r'){
+    filterData.value.returningId=str
+    console.log(filterData.value)
+    //绗竴娆¤皟鐢�
+    request.post("/MaterialInventory/getSelectReturningWarehouse/1/100",filterData.value).then((res) => {
+
+      if(res.code==200){
+        titleUploadData.value=deepClone(res.data.returningWarehouse)
+        //鏍规嵁瀹℃牳鐘舵�佹樉绀哄鏍告寜閽垨鑰呮槸鍙嶅鎸夐挳
+        value.value='鍘熺墖|杈呮枡'
+        getStoreWork()
+        console.log(res.data)
+        if(titleUploadData.value.reviewedState!==0){
+          gridOptions.toolbarConfig.buttons[1].disabled = true
+          gridOptions.toolbarConfig.buttons[0].disabled = true
+
+
+        }
+        if(titleUploadData.value.reviewedState===0){
+          gridOptions.toolbarConfig.buttons[2].disabled = true
+        }
+
+        materialStore.value=[]
+        for (let i=0;i<res.data.data.length;i++){
+          materialStore.value[i]=(res.data.data[i])
+          materialStore.value[i].json=(JSON.parse(res.data.data[i].json))
+
+        }
+        produceList = deepClone(materialStore.value)
+
+        xGrid.value.loadData(produceList)
+        //闅愯棌澶嶉�夋
+        /*xGrid.value.hideColumn("select")
+        gridOptions.loading=false*/
+        xGrid.value.showColumn("select")
+        gridOptions.loading=false
+
+
+      }else{
+        ElMessage.warning(res.msg)
+      }
+    })
+  }else{
+    //杩斿簱鏂板
+    request.post(`/MaterialStore/getSelectMaterialStore/1/100`,filterData.value).then((res) => {
+
+      if(res.code==200){
+
+        console.log(res.data.data)
+        titleUploadData.value.warehouseManager=userStore.user.userName
+        titleUploadData.value.returningType = titleSelectJson.value.returningType[0].operateTypeName
+
+        //绂佺敤鎸夐挳
+        gridOptions.toolbarConfig.buttons[1].disabled  = true
+        gridOptions.toolbarConfig.buttons[2].disabled = true
+        //鏄剧ず澶嶉�夋
+        xGrid.value.showColumn("select")
+
+        value.value='鍘熺墖'
+        getStoreWork()
+
+        getStoreWorks()
+        getInventoryOrganization()
+
+
+      }else{
+        ElMessage.warning(res.msg)
+      }
+    })
+  }
+
+
+})
+
+//搴撳瓨缁勭粐
+const getInventoryOrganization=()=>{
+  //椤甸潰绗竴娆″姞杞�
+  request.get(`/BasicWarehouse/BasicWarehouseTypes/搴撳瓨缁勭粐`).then((res) => {
+
+    if(res.code==200){
+      titleSelectJson.value=deepClone(res.data)
+      // for(let i=0;i<titleSelectJson.value.inventoryOrganization.length;i++){
+      //   this.$set(this.produceList[i], "inventoryOrganization", titleSelectJson.value["inventoryOrganization"][i].operateTypeName);
+      // }
+
+
+    }else{
+      ElMessage.warning(res.msg)
+    }
+  })
+}
+
+
+//鍒楁煡璇�
+const getStoreWork = () => {
+  filterData.value.type=value.value
+  request.get(`/BasicWarehouse/BasicWarehouseType/${value.value}`).then((res) => {
+    if(res.code==200){
+      gridOptions.columns=[]
+      BasicData.value = res.data
+      //娣诲姞鍒�
+      gridOptions.columns=arr.slice()
+
+      for (let i=0;i<BasicData.value.length;i++){
+        let column={field: "json."+BasicData.value[i].OperateType,
+          width: '150',title: BasicData.value[i].OperateTypeName,
+          sortable: true,showOverflow:'ellipsis' ,
+          filters:[{ data: '' }],
+          slots: { filter: 'num1_filter' },
+          filterMethod:filterChanged}
+
+        gridOptions.columns.push(column)
+
+
+
+      }
+
+
+    }else{
+      ElMessage.warning(res.msg)
+    }
+  })
+}
+
+//鏁版嵁缁戝畾
+const getStoreWorks = () => {
+  console.log(filterData.value)
+  request.post(`/MaterialStore/getSelectMaterialStore/1/100`,filterData.value).then((res) => {
+
+    if(res.code==200){
+      console.log(res.data)
+      materialStore.value=[]
+      for (let i=0;i<res.data.data.length;i++){
+        materialStore.value[i]=(res.data.data[i])
+        materialStore.value[i].json=(JSON.parse(res.data.data[i].json))
+
+      }
+      materialStore.value.forEach(item => {
+        item['inventoryOrganization'] = titleSelectJson.value["inventoryOrganization"][0].operateTypeName
+      })
+
+
+      produceList = deepClone(materialStore.value)
+      xGrid.value.loadData(produceList)
+      gridOptions.loading=false
+    }else{
+      ElMessage.warning(res.msg)
+      router.push("/login")
+    }
+  })
+}
+
+
+
+const gridEvents = {
+  async toolbarButtonClick({code}) {
+    const $grid = xGrid.value
+    if ($grid) {
+      switch (code) {
+        case 'add': {
+          const selectRecords = $grid.getCheckboxRecords()
+          console.log(selectRecords)
+          if (selectRecords.length === 0) {
+            ElMessage.warning(t('productStock.unselectedData'))
+            return
+          }
+          const errMap = await $grid.validate(selectRecords)
+          if (errMap) {
+            ElMessage.warning(t('productStock.dataVerificationFailed'))
+            return
+          }
+          //琛ㄥご鏁版嵁鏍¢獙
+          const returningType = titleUploadData.value.returningType
+          if(returningType === null || returningType === undefined || returningType === ''){
+            ElMessage.error("璇烽�夋嫨杩斿簱绫诲瀷")
+            return
+          }
+          const materialRequisitionPersonnel = titleUploadData.value.materialRequisitionPersonnel
+          if(materialRequisitionPersonnel === null || materialRequisitionPersonnel === undefined || materialRequisitionPersonnel === ''){
+            ElMessage.error("璇疯緭鍏ラ鏂欏憳")
+            return
+          }
+          const materialRequisitionTeam = titleUploadData.value.materialRequisitionTeam
+          if(materialRequisitionTeam === null || materialRequisitionTeam === undefined || materialRequisitionTeam === ''){
+            ElMessage.error("璇疯緭鍏ラ鏂欑彮缁�")
+            return
+          }
+          const orderId = titleUploadData.value.orderId
+          if(orderId === null || orderId === undefined || orderId === ''){
+            ElMessage.error("璇疯緭鍏ラ攢鍞崟鍙�")
+            return
+          }
+          const project = titleUploadData.value.project
+          if(project === null || project === undefined || project === ''){
+            ElMessage.error("璇疯緭鍏ラ」鐩悕绉�")
+            return
+          }
+          const batch = titleUploadData.value.batch
+          if(batch === null || batch === undefined || batch === ''){
+            ElMessage.error("璇疯緭鍏ユ壒娆�")
+            return
+          }
+
+
+
+
+          let flowData = ref({
+            returningWarehouseDetail: selectRecords,
+            title: titleUploadData.value,
+            returningId: route.query.returningId
+
+          })
+          console.log(flowData)
+          request.post("/MaterialInventory/saveReturningWarehouse", flowData.value).then((res) => {
+            if(res.code==200){
+              ElMessage.success('淇濆瓨鎴愬姛')
+              router.push({path: '/main/ingredientsStock/MaterialOutbound', query:{random:Math.random()}})
+            }else{
+              ElMessage.warning(res.msg)
+              router.push("/login")
+            }
+          })
+          break
+        }
+        case 'toExamine': {
+          let flowData = ref({
+            returningId: route.query.returningId,
+            reviewed:userStore.user.userName,
+            type: 1
+
+          })
+          console.log(flowData.value)
+          request.post("/MaterialInventory/updateReturningWarehouseToExamine", flowData.value).then((res) => {
+            if (res.code == 200) {
+              ElMessage.success(t('basicData.msg.ReviewSuccess'))
+              router.push({path: '/main/ingredientsStock/MaterialOutbound', query:{random:Math.random()}})
+            } else {
+              ElMessage.warning(res.msg)
+              router.push("/login")
+            }
+          })
+          break
+        }
+        case 'CounterExamination': {
+          let flowData = ref({
+            returningId: route.query.returningId,
+            type: 0
+
+          })
+          console.log(flowData.value)
+          request.post("/MaterialInventory/updateReturningWarehouseToExamine", flowData.value).then((res) => {
+            if (res.code == 200) {
+              ElMessage.success(t('basicData.msg.cancelReviewSuccess'))
+              router.push({path: '/main/ingredientsStock/MaterialOutbound', query:{random:Math.random()}})
+            } else {
+              ElMessage.warning(res.msg)
+              router.push("/login")
+            }
+          })
+          break
+        }
+
+      }
+    }
+  },
+  menuClick ({ menu, row, column }) {
+    const $grid = xGrid.value
+    if ($grid) {
+      switch (menu.code) {
+
+        case 'copyChecked' :{
+          let result = toolbarButtonClickEvent()
+          if(result){
+            const dataList = xGrid.value.getTableData().visibleData
+            let firstVal=null;
+            if(result.cell.indexOf('.')>-1){
+              firstVal = eval("dataList["+result.start +"]."+result.cell)
+            }else {
+              firstVal=dataList[result.start][result.cell];
+            }
+            dataList.forEach((item,index) =>{
+              if(index>=result.start && index<=result.end){
+                if(result.cell.indexOf('.')>-1){
+                  const  columnArr = result.cell.split('.')
+                  item[columnArr[0]][columnArr[1]]  = firstVal
+                }else{
+                  item[result.cell]  = firstVal
+                }
+
+              }
+            })
+          }
+          break
+        }
+
+      }
+    }
+  }
+}
+
+
 
 const xGrid = ref()
 const gridOptions = reactive({
@@ -23,7 +445,7 @@
     useKey: true
   },
   filterConfig: {   //绛涢�夐厤缃」
-    remote: true
+    //remote: true
   },
   customConfig: {
     storage: true
@@ -34,32 +456,17 @@
     showStatus: true
   },//琛ㄥご鍙傛暟
   columns:[
-    {type: 'seq',fixed:"left", title: '鑷簭', width: 80 },
-    {field: 'orderID',width:120,  title: '鐗╂枡缂栫爜',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'orderID',width:120,  title: '鐗╂枡鍚嶇О',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'orderID',width:120,  title: '浜у湴',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'orderID',width:120,  title: '瀹藉害',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'orderID',width:120,  title: '楂樺害',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'orderID',width:120,  title: '鍘氬害',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'orderID',width:120,  title: '搴撳瓨缂栧彿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'orderID',width:120,  title: '绛夌骇',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'orderID',width:120,  title: '闈㈢Н',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'orderID',width:120,  title: '鎹㈢畻鐜�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'orderID',width:120,  title: '鏈鏁伴噺',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'orderID',width:120,  title: '杩斿簱鏁伴噺',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'orderID',width:120,  title: '鎬绘暟閲�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'orderID',width:120,  title: '搴撳尯',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'orderID',width:120,  title: '搴撲綅',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'orderID',width:120,  title: '宸ョ▼鍗曞彿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'orderID',width:120,  title: '鐢熶骇鏃ユ湡',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-    {field: 'orderID',width:120,  title: '澶囨敞',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
+
   ],//琛ㄥご鎸夐挳
   toolbarConfig: {
     buttons: [
+      {'code': 'add', 'name': t('basicData.save'),status: 'primary',icon: 'vxe-icon-save'},
+      {'code': 'toExamine', 'name': t('basicData.review'),status: 'primary'},
+      {'code': 'CounterExamination', 'name': t('basicData.cancelReview'),status: 'primary'}
     ],
-    import: false,
+    /*import: false,
     export: true,
-    print: true,
+    print: true,*/
     zoom: true,
     custom: true
   },
@@ -81,19 +488,23 @@
 
 })
 
-const gridEvents = {
-  toolbarButtonClick ({ code }) {
-    const $grid = xGrid.value
-    if ($grid) {
-      switch (code) {
-        case 'Craft': {
-          router.push({path: '/main/order/updateOrderCraft', query: { orderID: 12123 }})
-          break
-        }
+const validRules = ref({
+
+  returnQuantity: [{
+    validator (e) {
+     if (e.row.returnQuantity ==="") {
+        return new Error("杩斿簱鏁伴噺涓嶈兘涓虹┖鎴栬�呮槸绛変簬0")
       }
+      const regex = /^[1-9]\d*$/g
+      if ( !regex.test(e.row.returnQuantity) ) {
+        return new Error(t('productStock.pleaseEnterAPositiveInteger'))
+      }
+
     }
-  }
-}
+
+  }]
+
+})
 
 </script>
 
@@ -102,52 +513,60 @@
 
     <div class="order-primary" style="background-color: white">
       <el-row>
-        <el-col  :span="2"><el-text>浜よ揣鏃ユ湡锛�</el-text></el-col>
-        <el-col  :span="4">
-          <el-date-picker
-              type="week"
-              format="[Week] ww"
-              placeholder="閫夋嫨鏃ユ湡"/>
-        </el-col>
-        <el-col  :span="2"><el-text>*閫�鏂欏憳/渚涘簲鍟嗭細</el-text></el-col>
-        <el-col  :span="4"><el-input/></el-col>
-        <el-col  :span="2"><el-text>*閫�鏂欑彮缁勶細</el-text></el-col>
-        <el-col  :span="4">
-          <el-select  clearable placeholder=" " >
-            <el-option/>
-          </el-select>
-        </el-col>
-        <el-col  :span="2"><el-text>*鍒跺崟鍛橈細</el-text></el-col>
-        <el-col  :span="4">
-          <el-select  clearable placeholder=" " >
-            <el-option />
-          </el-select>
-        </el-col>
-
-        <!--      <el-col :span="2"><el-text  /></el-col>-->
+        <el-col  :span="2"><el-text>杩斿簱鏃ユ湡:</el-text></el-col>
+        <el-col  :span="3"><el-input  v-model="titleUploadData.createTime" :readonly="true" ></el-input></el-col>
+        <el-col  :span="2"><el-text>棰嗘枡鍛�/渚涘簲鍟�:</el-text></el-col>
+        <el-col  :span="3"><el-input v-model="titleUploadData.materialRequisitionPersonnel" /></el-col>
+        <el-col  :span="2"><el-text>棰嗘枡鐝粍/渚涘簲鍟�:</el-text></el-col>
+        <el-col  :span="3"><el-input v-model="titleUploadData.materialRequisitionTeam" /></el-col>
+        <el-col  :span="2"><el-text>浠撶鍛�:</el-text></el-col>
+        <el-col  :span="3"><el-input v-model="titleUploadData.warehouseManager" :readonly="true" /></el-col>
       </el-row>
       <el-row>
-        <el-col  :span="2"><el-text>*鍑哄簱绫诲瀷锛�</el-text></el-col>
-        <el-col  :span="4">
-          <el-select  clearable placeholder=" " >
-            <el-option/>
+        <el-col  :span="2"><el-text>杩斿簱绫诲瀷锛�</el-text></el-col>
+        <el-col  :span="3">
+          <el-select v-model="titleUploadData.returningType"  clearable placeholder=""  >
+            <el-option
+                v-for="item in titleSelectJson['returningType']"
+                :key="item.id"
+                :label="item.operateTypeName"
+                :value="item.operateTypeName"
+            />
           </el-select>
         </el-col>
-        <el-col  :span="2"><el-text>璁㈠崟缂栧彿锛�</el-text></el-col>
-        <el-col  :span="4"><el-text /></el-col>
-        <el-col  :span="2"><el-text>椤圭洰鍚嶇О锛�</el-text></el-col>
-        <el-col  :span="4"><el-text /></el-col>
-        <el-col  :span="2"><el-text>鎵规鍙凤細</el-text></el-col>
-        <el-col  :span="4"><el-text /></el-col>
+        <el-col  :span="2"><el-text>閿�鍞崟鍙�:</el-text></el-col>
+        <el-col  :span="3"><el-input v-model="titleUploadData.orderId" /></el-col>
+        <el-col  :span="2"><el-text>椤圭洰鍚嶇О:</el-text></el-col>
+        <el-col  :span="3"><el-input v-model="titleUploadData.project" /></el-col>
+        <el-col  :span="2"><el-text>鎵规:</el-text></el-col>
+        <el-col  :span="3"><el-input v-model="titleUploadData.batch" /></el-col>
+
+
+      </el-row>
+
+
+      <el-row>
+        <el-select v-model="value" placeholder="璇烽�夋嫨绫诲埆" @change="getStoreWork" style="margin-top: 10px;border: #181818 1px solid;">
+          <el-option
+              v-for="item in options"
+              :key="item.value"
+              :label="item.label"
+              :value="item.value"
+          />
+        </el-select>
       </el-row>
     </div>
+
+
     <div class="order-detail">
+
       <vxe-grid
           max-height="97%"
           class="mytable-scrollbar"
           ref="xGrid"
           v-bind="gridOptions"
           v-on="gridEvents"
+          :edit-rules="validRules"
       >
         <template #num1_filter="{ column, $panel }">
           <div>
@@ -157,12 +576,14 @@
           </div>
         </template>
 
+        <template #inventoryOrganization="{ row }">
+          <vxe-select v-model="row.inventoryOrganization" transfer >
+            <vxe-option v-for="item in titleSelectJson['inventoryOrganization']"  :key="item.ID" :label="item.operateTypeName" :value="item.operateTypeName"/>
+          </vxe-select>
+        </template>
+
 
       </vxe-grid>
-      <el-row justify="center">
-          <el-button  id="searchButton" type="primary" :icon="Search" style="margin-right:20px;">娓呴櫎</el-button>
-          <el-button  id="searchButton" type="primary" :icon="save" style="margin-left:20px;">纭畾</el-button>
-      </el-row>
     </div>
   </div>
 </template>

--
Gitblit v1.8.0