From ee4dc5d6c9d3bc8ae8e704f93fa6b233e8b42e8f Mon Sep 17 00:00:00 2001
From: guoyuji <guoyujie@ng.com>
Date: 星期五, 31 五月 2024 11:49:55 +0800
Subject: [PATCH] 首页分成两张表格

---
 north-glass-erp/northglass-erp/src/views/sd/order/SelectOrder.vue |  213 +++++++++++++++++++++++++++++++---------------------
 1 files changed, 126 insertions(+), 87 deletions(-)

diff --git a/north-glass-erp/northglass-erp/src/views/sd/order/SelectOrder.vue b/north-glass-erp/northglass-erp/src/views/sd/order/SelectOrder.vue
index b6ec9f4..45bd89c 100644
--- a/north-glass-erp/northglass-erp/src/views/sd/order/SelectOrder.vue
+++ b/north-glass-erp/northglass-erp/src/views/sd/order/SelectOrder.vue
@@ -9,10 +9,13 @@
   import {VXETable} from "vxe-table"
   import  useUserInfoStore from '@/stores/userInfo'
   import footSum from "@/hook/footSum"
+  import OrderDetail from "@/components/sd/order/OrderDetail.vue"
+  import OrderCraftDetail from "@/components/sd/order/OrderCraftDetail.vue"
   import {useI18n} from "vue-i18n"
   import {columnDrop2, sortable2} from "@/hook/columnMove";
   const { t } = useI18n()
   const userStore = useUserInfoStore()
+  const tabsValue=ref('1')
   const router = useRouter()
   let rowClickIndex = ref(null)
   const dialogTableVisible = ref(false)
@@ -190,7 +193,7 @@
         }
       }
     },
-    cellClick({ row }){
+    cellDblclick({ row }){
       rowClickIndex.value = row
     }
   }
@@ -252,6 +255,7 @@
         selectDate.value=res.data.selectDate
         orderList.value = deepClone(res.data.data)
         xGrid.value.loadData(orderList.value)
+
       }else{
         ElMessage.warning(res.msg)
       }
@@ -305,6 +309,7 @@
   })
 
 
+
   // let initTime = null
   // nextTick(() => {
   //   // 鍔犺浇瀹屾垚涔嬪悗鍦ㄧ粦瀹氭嫋鍔ㄤ簨浠�
@@ -324,100 +329,126 @@
 
 <template>
   <div  style="width: 100%;height: 100% ;">
-    <el-date-picker
-        v-model="selectDate"
-        type="daterange"
-        :start-placeholder="$t('basicData.startDate')"
-        :end-placeholder="$t('basicData.startDate')"
-        format="YYYY-MM-DD"
-        value-format="YYYY-MM-DD"
+    <div style="width: 100%;height: 55%">
+      <el-date-picker
+          v-model="selectDate"
+          type="daterange"
+          :start-placeholder="$t('basicData.startDate')"
+          :end-placeholder="$t('basicData.startDate')"
+          format="YYYY-MM-DD"
+          value-format="YYYY-MM-DD"
 
-    />
-    <el-button @click="changeDate"
-               style="margin-top: -5px"
-               id="searchButton"
-               type="primary"
-               :icon="Search">
-      {{ $t('basicData.search') }}
-    </el-button>
-    <vxe-grid
-        @filter-change="filterChanged"
-        max-height="100%"
-        class="mytable-scrollbar"
-        ref="xGrid"
-        v-bind="gridOptions"
-        v-on="gridEvents"
+      />
+      <el-button @click="changeDate"
+                 style="margin-top: -5px"
+                 id="searchButton"
+                 type="primary"
+                 :icon="Search">
+        {{ $t('basicData.search') }}
+      </el-button>
+      <vxe-grid
+          @filter-change="filterChanged"
+          height="110%"
+          size="mini"
+          class="mytable-scrollbar"
+          ref="xGrid"
+          v-bind="gridOptions"
+          v-on="gridEvents"
 
-    >
-      <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
-      <template #content="{ row }">
-        <ul class="expand-wrapper">
-          <li  v-for="(item,index) in gridOptions.columns" v-show="item.field!==undefined && index>9">
-            <span style="font-weight: bold">{{item.title+':  '}}</span>
-            <span>{{ row[item.field] }}</span>
-          </li>
-        </ul>
-      </template>
+      >
+        <!--      涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
+        <template #content="{ row }">
+          <ul class="expand-wrapper">
+            <li  v-for="(item,index) in gridOptions.columns" v-show="item.field!==undefined && index>9">
+              <span style="font-weight: bold">{{item.title+':  '}}</span>
+              <span>{{ row[item.field] }}</span>
+            </li>
+          </ul>
+        </template>
 
-      <template #state="{ row,column}">
-        <el-checkbox
-            v-if="row[column.field] === 2"
-            @click.native.prevent
-            :indeterminate="row[column.field]===1"
-            :checked="true"/>
-        <el-checkbox
-            v-else
-            @click.native.prevent
-            :indeterminate="row[column.field]===1"
-            :checked="false"/>
-      </template>
+        <template #state="{ row,column}">
+          <el-checkbox
+              v-if="row[column.field] === 2"
+              @click.native.prevent
+              :indeterminate="row[column.field]===1"
+              :checked="true"/>
+          <el-checkbox
+              v-else
+              @click.native.prevent
+              :indeterminate="row[column.field]===1"
+              :checked="false"/>
+        </template>
 
-      <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
-      <template #button_slot="{ row }">
-        <el-button @click="getTableRow(row,'edit')"
-                   v-if="userStore.user.permissions.indexOf('selectOrder.edit') > -1"
-                   link
-                   type="primary"
-                   size="small">
-          {{ $t('basicData.edit') }}
-        </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>
-        </el-popconfirm>
-      </template>
+        <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
+        <template #button_slot="{ row }">
+          <el-button @click="getTableRow(row,'edit')"
+                     v-if="userStore.user.permissions.indexOf('selectOrder.edit') > -1"
+                     link
+                     type="primary"
+                     size="small">
+            {{ $t('basicData.edit') }}
+          </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>
+          </el-popconfirm>
+        </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)"/>
+        <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>
-        </div>
-      </template>
+        </template>
 
-      <template #toolbar_buttons>
-        <vxe-select @change="changeOrderType" v-model="orderType" :placeholder="$t('searchOrder.orderType')">
-          <vxe-option value="2" :label="$t('searchOrder.regularOrders')"></vxe-option>
-          <vxe-option value="-2" :label="$t('searchOrder.cancelledOrders')"></vxe-option>
-          <vxe-option value="0" :label="$t('searchOrder.allOrders')"></vxe-option>
-        </vxe-select>
-      </template>
+        <template #toolbar_buttons>
+          <vxe-select @change="changeOrderType" v-model="orderType" :placeholder="$t('searchOrder.orderType')">
+            <vxe-option value="2" :label="$t('searchOrder.regularOrders')"></vxe-option>
+            <vxe-option value="-2" :label="$t('searchOrder.cancelledOrders')"></vxe-option>
+            <vxe-option value="0" :label="$t('searchOrder.allOrders')"></vxe-option>
+          </vxe-select>
+        </template>
 
-      <template #pager>
-        <!--浣跨敤 pager 鎻掓Ы-->
-<!--        'PrevJump','NextJump', -->
-        <vxe-pager
-            @page-change="handlePageChange"
-            :layouts="[  'PrevPage', 'Jump','PageCount', 'NextPage',  'Total']"
-            v-model:current-page="pageNum"
-            v-model:page-size="total.pageSize"
-            v-model:pager-count="total.pageTotal"
-            :total="total.dataTotal"
-        >
-        </vxe-pager>
-      </template>
-    </vxe-grid>
+        <template #pager>
+          <!--浣跨敤 pager 鎻掓Ы-->
+          <!--        'PrevJump','NextJump', -->
+          <vxe-pager
+              @page-change="handlePageChange"
+              :layouts="[  'PrevPage', 'Jump','PageCount', 'NextPage',  'Total']"
+              v-model:current-page="pageNum"
+              v-model:page-size="total.pageSize"
+              v-model:pager-count="total.pageTotal"
+              :total="total.dataTotal"
+          >
+          </vxe-pager>
+        </template>
+      </vxe-grid>
+
+    </div>
+    <div style="width: 100%;height: 45%;">
+      <el-tabs type="border-card"
+               v-model="tabsValue"
+               class="demo-tabs"
+               style="width: 100%;height: 100%" >
+        <el-tab-pane label="璇︽儏" name="1" >
+          <order-detail
+              v-if="tabsValue==='1'"
+            :orderId="rowClickIndex===null?null:rowClickIndex.orderId"
+          />
+        </el-tab-pane>
+        <el-tab-pane label="宸ヨ壓 " name="2">
+          <order-craft-detail
+              v-if="tabsValue==='2'"
+              :orderId="rowClickIndex===null?null:rowClickIndex.orderId"
+          />
+        </el-tab-pane>
+        <el-tab-pane label="娴佺▼鍗�" name="3"></el-tab-pane>
+      </el-tabs>
+
+    </div>
+
 
     <el-dialog
         v-model="dialogTableVisible"
@@ -432,5 +463,13 @@
 </template>
 
 <style scoped>
+:deep(.el-tabs__content) {
+  width: 100%;
+  height: 86%;
+}
+.el-tab-pane{
+  width: 100%;
+  height: 100%;
+}
 
 </style>
\ No newline at end of file

--
Gitblit v1.8.0