Browse Source

代码上传

zhangqiOMG 2 years ago
parent
commit
2eddd1f242

+ 9 - 0
src/DRP/HDrpManagement/dispatchMxList/index.vue

@@ -8,6 +8,12 @@
         <table-export :param="param"></table-export>
       </template>
       <template #tb_cell="{data}">
+        <template v-if="data.column.dataIndex === 'billno'">
+          <a-button type="link" size="small" @click="base.openDrawerPage('dispatchDetail',data.record.sa_dispatchid)">{{data.record.billno}}</a-button>
+        </template>
+        <template v-if="data.column.dataIndex === 'sonum'">
+          <a-button type="link" size="small" @click="base.openDrawerPage('orderdetail',data.record.sa_orderid)">{{data.record.sonum}}</a-button>
+        </template>
         <template v-if="data.column.dataIndex === 'amount'">
           <span>{{utils.formatAmount(data.record.amount)}}</span>
         </template>
@@ -20,6 +26,9 @@
   import Api from '@/api/api'
   import listTemp from '@/components/listTemplate/index.vue';
   import tableExport from '@/components/tableExport/index.vue'
+  import { storeToRefs } from 'pinia'
+  import { useBaseStore } from '@/stores/modules/base'
+  const base = useBaseStore()
   import { ref } from 'vue'
   import { useRouter } from "vue-router";
   import { onMounted } from "vue";

+ 5 - 2
src/DRP/HDrpManagement/productManage/index.vue

@@ -37,7 +37,11 @@
     </listTemp>
   </div>
 </template>
-
+<script>
+export default {
+  name:'productmag'
+}
+</script>
 <script setup>
   import listTemp from '@/components/listTemplate/index.vue';
   import batchOperation from './modules/batchOperation.vue';
@@ -53,7 +57,6 @@
     {label:'领域',key:'tradefield',type:'select',dataSource:tradefield},
     {label:'状态',key:'status',type:'select',dataSource:[{value:"新建",remarks:"新建"},{value:"审核",remarks:"审核"}]},
     {label:'上架状态',key:'isonsale',type:'select',dataSource:[{value:"1",remarks:"上架"},{value:"0",remarks:"下架"}]},
-    // {label:'上架未上架产品组',key:'isonsale',type:'select',dataSource:[{value:"1",remarks:"是"},{value:"0",remarks:"否"}]},
     {label:'其他',key:'isonsalebutnotingroup',type:'select',dataSource:[{value:"1",remarks:"产品上架未上架产品组"}]},
     {label:'搜索',key:'condition',type:'input'},
   ])

+ 1 - 1
src/components/detailTemplate/index.vue

@@ -70,7 +70,7 @@
   const activeKey = ref(0)
   
   const goBack = ()=>{
-    router.go(-1)
+    router.replace(router.currentRoute.value.meta.name)
   }
 
   const delData = ()=>{

+ 16 - 2
src/components/layout/index.vue

@@ -8,7 +8,7 @@
         <headTemp style="width:100%;margin:10px 0"></headTemp>
         <historyTabs/>
         <div :style="{ padding: '0px', minHeight: 'calc(100vh - 146px)'}">
-          <router-view v-slot="{ Component }">
+          <router-view ref="keepAlive" v-slot="{ Component }">
             <keep-alive v-if="router.currentRoute.value.meta.keepAlive">
               <component :is="Component" :key="router.currentRoute.value.fullPath"/>
             </keep-alive>
@@ -29,23 +29,37 @@
       <p style="margin-top:40px;color:rgb(100, 108, 255)">站点切换中,正在加载站点配置...</p>
     </div>
   </div>
+  <a-drawer
+    v-model:open="open"
+    placement="right"
+    :mask="true"
+    :closable="false"
+    :title="null"
+    :bodyStyle="{padding:'0px',background:'#f1f2f3'}"
+    width="80%">
+    <component :is="currentComponent"></component>
+  </a-drawer>
 </template>
 <script setup>
+import {ref} from 'vue'
 import { theme } from 'ant-design-vue';
 const { useToken } = theme;
 const { token } = useToken();
 import noticeModal from '@/components/noticeModal/index.vue'
+
 import headTemp from './modules/header.vue';
 import asideTemp from './modules/aside.vue'
 import historyTabs from './modules/historyTabs.vue'
 import webSocket from '../webSocket/index.vue'
 import { storeToRefs } from 'pinia'
 import { useAuthStore } from '@/stores/modules/auth'
+import { useBaseStore } from '@/stores/modules/base'
 import { useRouter } from "vue-router";
 const router = useRouter()
-
+const base = useBaseStore()
 const store = useAuthStore()
 let { isRefresh } = storeToRefs(store)
+let { open,currentComponent } = storeToRefs(base)
 </script>
 <style>
 .layout{

+ 1 - 1
src/components/listTemplate/index.vue

@@ -59,7 +59,7 @@
             <a-tag :color="utils.statusAndColor(record.status)">{{record.status}}</a-tag>
           </template>
           <template v-if="column.dataIndex === props.keyRouteName" >
-            <a-button type="link" size="small" @click="toDetailPage(record)"><span class="btn-link">{{record[props.keyRouteName]}}</span></a-button>
+            <a-button type="link" size="small" @click="toDetailPage(record)"><span>{{record[props.keyRouteName]}}</span></a-button>
           </template>
           <slot v-else name="tb_cell" :data="{column, record}"></slot>
         </template>

+ 2 - 1
src/router/HDrpManagement.js

@@ -57,7 +57,8 @@ const HDrpManagement = [
       name: 'ordermag',
       keepAlive:true
     },
-    component: () => import(/* webpackChunkName: "about" */ '@/DRP/HDrpManagement/orderManage/detail/index.vue')
+    component: () => import(/* webpackChunkName: "about" */ '@/DRP/HDrpManagement/orderManage/detail/index.vue'),
+    InnerPage: () => import(/* webpackChunkName: "about" */ '@/DRP/HDrpManagement/orderManage/detail/index.vue')
   },
   {
     path: '/orderMx',

+ 15 - 3
src/stores/modules/base.js

@@ -1,6 +1,6 @@
 import { defineStore } from 'pinia'
 import { theme } from 'ant-design-vue';
-
+import router from '@/router/index';
 import { message } from 'ant-design-vue';
 import { useRouter } from "vue-router";
 import Api from '@/api/api'
@@ -15,7 +15,9 @@ export const useBaseStore = defineStore('base', {
       colMap:new Map(),
       fullscreen:false,
       siteInfo:{},
-      themeAlgorithm:'defaultAlgorithm'
+      themeAlgorithm:'defaultAlgorithm',
+      open:false,
+      currentComponent:null  //抽屉详情路径
     }
   },
   // 开启数据缓存
@@ -88,6 +90,16 @@ export const useBaseStore = defineStore('base', {
       } else {
         this.themeAlgorithm = 'defaultAlgorithm'
       }
-    }
+    },
+    /**
+     * 详情弹出抽屉
+     */
+    async openDrawerPage (routerName,id) {
+      this.router.push({name:this.router.currentRoute.name,query:{id:id}})
+      let routes = this.router.getRoutes()
+      const rs = await routes.filter(e=>e.name == routerName)[0].components.default()
+      this.currentComponent = rs.default
+      this.open = !this.open
+    },
   }
 })