From a660db06773007b1be690e0674829c00a57aeb7b Mon Sep 17 00:00:00 2001
From: 廖井涛 <2265517004@qq.com>
Date: 星期三, 24 十二月 2025 16:21:23 +0800
Subject: [PATCH] 订单首页流程卡新增楼层编号显示

---
 north-glass-erp/northglass-erp/src/views/sd/customer/SelectCustomer.vue |   80 ++++++++++++++++++++++++++++++++++-----
 1 files changed, 69 insertions(+), 11 deletions(-)

diff --git a/north-glass-erp/northglass-erp/src/views/sd/customer/SelectCustomer.vue b/north-glass-erp/northglass-erp/src/views/sd/customer/SelectCustomer.vue
index 453d9e9..df97c1d 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/customer/SelectCustomer.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/customer/SelectCustomer.vue
@@ -13,10 +13,10 @@
 const { t } = useI18n()
 
 const userStore = useUserInfoStore()
-console.log(userStore.user.permissions)
 const username = userStore.user.userName
 const userid = userStore.user.userId
 let router=useRouter()
+let rowClickIndex = ref(null)
 let produceList = ref([])
 const getTableRow = (row,type) =>{
   switch (type) {
@@ -43,19 +43,20 @@
       })
       ruleForm.value.id=row.id
       let flowData = ref({
-        customer: ruleForm.value
+        customer: ruleForm.value,
+        userName:userStore.user.userName,
+        userId:userStore.user.userId
       })
 
       request.post("/customer/deleteCustomer", flowData.value).then((res) => {
         if(res.code==200 && res.data===true){
-          ElMessage.success("鍒犻櫎鎴愬姛")
+          ElMessage.success(t('basicData.msg.deleteSuccess'))
           router.push({path:'/main/customer/selectCustomer',query:{random:Math.random()}})
         }else{
-          ElMessage.warning("鍒犻櫎澶辫触")
-          router.push("/login")
+          ElMessage.warning(t('basicData.msg.deleteFail'))
         }
       }).catch((err)=>{
-        ElMessage.error('绯荤粺閿欒')
+        ElMessage.error(t('basicData.msg.ServerConnectionError'))
         router.push("/login")
       })
       break
@@ -163,6 +164,15 @@
   selectOrderList()
 }
 
+const handleSortChange=({ sortList, sortOrder })=> {
+  // 鏍规嵁鎺掑簭鍙傛暟鏋勫缓璇锋眰鏁版嵁
+  filterData.value.sortList=sortList.map(item => item.property)
+  filterData.value.sortOrder=sortList.map(item => item.order)
+  console.log(filterData.value)
+
+
+}
+
 
 
 //瀛愮粍浠舵帴鏀跺弬鏁�
@@ -173,7 +183,7 @@
   align: 'center',//鏂囧瓧灞呬腑
   stripe:true,//鏂戦┈绾�
   rowConfig: {isCurrent: true, isHover: true,height: 30},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
-  id: 'CustomerList',
+  id: 'SelectCustomer',
   showFooter: true,//鏄剧ず鑴�
   printConfig: {},
   importConfig: {},
@@ -186,6 +196,16 @@
   },
   filterConfig: {   //绛涢�夐厤缃」
     remote: true
+  },
+  menuConfig: {
+    body: {
+      options: [
+        [
+          { code: 'sheet1', name: t('orderBasicData.order'), prefixIcon: 'vxe-icon-file-txt', visible: true},
+          { code: 'sheet2', name: t('searchOrder.delivery'), prefixIcon: 'vxe-icon-file-txt', visible: true},
+        ]
+      ]
+    }
   },
   customConfig: {
     storage: true
@@ -201,6 +221,7 @@
           {title: t('basicData.operate'), width: 180, slots: { default: 'button_slot' },fixed:"left"},
           {field: 'id', title: t('customer.customerNumber'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
           {field: 'customerName', title: t('customer.customerName'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
+          {field: 'customerAbbreviation', title: t('customer.customerAbbreviation'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
           {field: 'grade', title: t('customer.customerGrade'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
           {field: 'moneyLimit', title: t('customer.moneyLimit'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
           {field: 'address', title: t('customer.address'),filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
@@ -231,6 +252,38 @@
 
 })
 
+const gridEvents = {
+
+  menuClick ({ menu, row, column }) {
+    const $grid = xGrid.value
+    if ($grid) {
+      switch (menu.code) {
+        case 'sheet1': {
+          if(rowClickIndex.value===null){
+            ElMessage.warning(t('customer.msgList.notCustomerInfo'))//"鏈煡璇㈠埌瀹㈡埛淇℃伅"
+            return
+          }
+          router.push({path: '/main/customer/selectCustomerOrder', query: { id: row.id,type:1 }})
+          break
+
+        }
+        case 'sheet2': {
+          if(rowClickIndex.value===null){
+            ElMessage.warning(t('customer.msgList.notCustomerInfo'))
+            return
+          }
+          router.push({path: '/main/customer/selectCustomerOrder', query: { id: row.id,type:2 }})
+          break
+        }
+
+      }
+    }
+  },
+  cellClick({ row }){
+    rowClickIndex.value = row
+  }
+}
+
 
 
 </script>
@@ -243,6 +296,8 @@
         class="mytable-scrollbar"
         ref="xGrid"
         v-bind="gridOptions"
+        v-on="gridEvents"
+        @sort-change="handleSortChange"
 
     >
       <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
@@ -261,9 +316,9 @@
         <el-button @click="getTableRow(row,'edit')"
                    v-if="userStore.user.permissions.indexOf('selectCustomer.edit') > -1"
                    link type="primary" size="small">{{$t('basicData.edit')}}</el-button>
-        <el-button @click="getTableRow(row,'customerOrder')"
-                   link type="primary" size="small">瀹㈡埛璁㈠崟</el-button>
-        <el-popconfirm @confirm="getTableRow(row,'delete')" title="纭畾鍒犻櫎?">
+<!--        <el-button @click="getTableRow(row,'customerOrder')"
+                   link type="primary" size="small">{{$t('customer.customerOrders')}}</el-button>-->
+        <el-popconfirm @confirm="getTableRow(row,'delete')" :title="$t('searchOrder.deleteConfirm')">
           <template #reference>
             <el-button  link type="primary" size="small">{{ $t('basicData.delete') }}</el-button>
           </template>
@@ -273,7 +328,10 @@
       <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)"/>
+            <input type="type"
+                   v-model="option.data"
+                   @keyup.enter.native="$panel.confirmFilter()"
+                   @input="changeFilterEvent($event, option, $panel)"/>
           </div>
         </div>
       </template>

--
Gitblit v1.8.0