From d68b036a3b3c67273b8effa3c9925ef3869a91ba Mon Sep 17 00:00:00 2001
From: haoxuan <haoxuan>
Date: 星期三, 07 二月 2024 13:56:50 +0800
Subject: [PATCH] wms项目 wms系统参数设置的页面开发+路由+是否显示表头配置

---
 src/views/reportForm/locationReport/index.vue |  233 +++++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 156 insertions(+), 77 deletions(-)

diff --git a/src/views/reportForm/locationReport/index.vue b/src/views/reportForm/locationReport/index.vue
index 39736e4..378c2e4 100644
--- a/src/views/reportForm/locationReport/index.vue
+++ b/src/views/reportForm/locationReport/index.vue
@@ -1,22 +1,42 @@
+<!-- 浣嶇疆鎶ヨ〃 -->
 <template>
   <div class="rightContent">
     <div class="top">
       <SearchCommonView
         :add-title="'鏂板缓'"
         :showAdd="false"
-        :placeholder="'璇疯緭鍏ュ弬鑰�'"
+        :placeholder="'璇疯緭鍏ヤ綅缃悕绉般�佷骇鍝佸悕绉版垨浜у搧绫诲埆'"
         :amount-view="false"
         @addCommonClick="addBtnClick"
         @searchClick="getList"
+        :isDisabled="true"
       />
     </div>
     <div class="list-view">
-      <TableCommonView
-        ref="tableListRef"
-        :table-list="tableList"
-        @selTableCol="selTableCol"
-        @tableRowClick="tableRowClick"
-      ></TableCommonView>
+      <div class="table">
+        <TableCommonView
+          ref="tableListRef"
+          :table-list="tableList"
+          @selTableCol="selTableCol"
+          @tableRowClick="tableRowClick"
+          :showSummary="true"
+        >
+          <template slot="tableButton">
+            <el-table-column label="鎿嶄綔" width="210" align="center">
+              <template slot-scope="scope">
+                <span @click="handleHistoryClick(scope.row)" class="yes-cursor">
+                  <i class="el-icon-refresh-left"></i>
+                  <span>鍘嗗彶</span>
+                </span>
+                <span @click="handleAddGoods(scope.row)" class="margin_left_5px">
+                  <i class="el-icon-refresh"></i>
+                  <span>琛ヨ揣</span>
+                </span>
+              </template>
+            </el-table-column>
+          </template>
+        </TableCommonView>
+      </div>
       <div class="btn-pager">
         <PagerView class="page" :pager-options="pagerOptions" v-on="pagerEvents" />
       </div>
@@ -28,7 +48,7 @@
 
 <script>
 import pageMixin from "@/components/makepager/pager/mixin/pageMixin"
-import { getProductOperatonList } from "@/api/product/product"
+import { getLocationData } from "@/api/locationApi/locationApi"
 import AddOverviewDialog from "@/views/overview/AddOverviewDialog"
 
 export default {
@@ -40,7 +60,39 @@
   data() {
     return {
       tableList: {},
-      showcol: ["鐘舵��"],
+      showcol: [ "浜у搧绫诲埆",  "浠峰��"],
+      // countcol: [
+      //   { label: "鍦ㄥ簱鏁伴噺", unit: "" },
+      //   { label: "棰勭暀鏁伴噺", unit: "" },
+      //   { label: "浠峰��", unit: "锟�" },
+      // ],
+      countcol: ["鍦ㄥ簱鏁伴噺", "棰勭暀鏁伴噺", "浠峰��"],
+      testArr: [
+        {
+          product: "HC/閿�鍞尯/b鍖�",
+          category: "涓濈桓鍒跺搧/鐪熶笣鐫¤",
+          cost: "800.00",
+          totalPrices: "2000.00",
+          inStore: "00.00",
+          availableStore: "200.00",
+          inStorage: "00.00",
+          toStore: 65432.0,
+          forecast: "0.00",
+          unit: "浠�"
+        },
+        {
+          product: "HC閿�鍞尯/A鍖�",
+          category: "涓濈桓鍒跺搧/閲戜笣鐫¤",
+          cost: "9980.00",
+          totalPrices: "00.00",
+          inStore: "00.00",
+          availableStore: "20.00",
+          inStorage: "0.00",
+          toStore: 32618.0,
+          forecast: "0.00",
+          unit: "浠�"
+        }
+      ],
       searchOptions: [],
       commonDetail: {
         visible: false,
@@ -53,7 +105,9 @@
         infomation: {}
       },
       productId: this.$route.params.id,
-      productName: this.$route.params.name
+      productName: this.$route.params.name,
+      metaTitle: this.$route.meta.title,
+      keyWord:''
     }
   },
   created() {
@@ -64,8 +118,10 @@
     setTable() {
       this.tableList = {
         tableInfomation: [],
-        selectBox: true,
+        selectBox: false,
+        selectIndex: true,
         showcol: this.showcol,
+        countcol: this.countcol,
         allcol: [],
         tableColumn: this.setTableColumn(this.showcol)
       }
@@ -81,63 +137,62 @@
     setTableColumn(showcol) {
       let tableColumn = [
         {
-          label: "鏃ユ湡",
-          prop: "operationDate",
-          isShowColumn: true,
+          label: "浣嶇疆",
+          prop: "locationName",
           default: true,
-          date: true
+          isShowColumn: true
         },
+
         {
-          label: "鍗曞彿",
-          prop: "number",
-          isShowColumn: true,
-          default: true
+          label: "瀛樺偍绫诲埆",
+          prop: "category",
+          default: false,
+          isShowColumn: showcol.includes("瀛樺偍绫诲埆")
         },
         {
           label: "浜у搧",
           prop: "productName",
-          isShowColumn: true,
-          default: true
+          default: true,
+          isShowColumn: true
         },
         {
-          label: "浠�",
-          prop: "from",
-          isShowColumn: true,
-          default: true
+          label: "浜у搧绫诲埆",
+          prop: "productTypeName",
+          default: false,
+          isShowColumn: showcol.includes("浜у搧绫诲埆")
         },
         {
-          label: "鑷�",
-          prop: "to",
-          isShowColumn: true,
-          default: true
-        },
-        {
-          label: "鏁伴噺",
+          label: "鍦ㄥ簱鏁伴噺",
+          width:100,
           prop: "amount",
           isShowColumn: true,
-          default: true
+          default: true,
+          unit: "",
+          textAlign:"right"
+        },
+        {
+          label: "棰勭暀鏁伴噺",
+          prop: "availableStore",
+          default: false,
+          isShowColumn: showcol.includes("棰勭暀鏁伴噺"),
+          unit: "",
+          textAlign:"right"
         },
         {
           label: "鍗曚綅",
           prop: "unit",
-          isShowColumn: true,
-          default: true
-        },
-        {
-          label: "鐘舵��",
-          prop: "status",
           width: 120,
-          isShowColumn: showcol.includes("鐘舵��"),
           default: false,
-          status: true,
-          isCallMethod: true,
-          getCallMethod: this.getStatus
+          isShowColumn: showcol.includes("鍗曚綅")
         },
         {
-          label: "瀹屾垚鑰�",
-          prop: "admin",
-          isShowColumn: showcol.includes("瀹屾垚鑰�"),
-          default: false
+          label: "浠峰��",
+          prop: "value",
+          width: 120,
+          default: false,
+          isShowColumn: showcol.includes("浠峰��"),
+          textAlign:"right",
+          unit: "锟�"
         }
       ]
       return tableColumn
@@ -147,34 +202,47 @@
       this.tableList.tableColumn = this.setTableColumn(val)
     },
     // 璇锋眰鏁版嵁
-    async getData() {
-      await getProductOperatonList({
-        productId: this.productId,
-        page: this.pagerOptions.currPage,
-        pageSize: this.pagerOptions.pageSize
-      }).then((res) => {
+    async getLocationData(params) {
+      await getLocationData(params).then((res) => {
         if (res.code === 200) {
-          const list = res.data.map((item) => {
-            return {
-              ...item,
-              from: item.fromLocation.name,
-              to: item.toLocation.name,
-              productName: this.productName
-            }
-          })
+          const list = res.data
           this.tableList.tableInfomation = list || []
           this.pagerOptions.totalCount = res.total
         }
       })
     },
+    getData() {
+      if(this.$route.params.name==="搴撳瓨鎶ヨ〃"){
+        this.getLocationData({
+        wareHouseCode:this.$route.params.wareHouseCode,
+        productId:this.$route.params.productId,
+        page: this.pagerOptions.currPage,
+        pageSize: this.pagerOptions.pageSize
+      })
+      }else{
+        let params={
+          page: this.pagerOptions.currPage,
+          pageSize: this.pagerOptions.pageSize,
+          keyWord:this.keyWord,
+        }
+        if(this.$route.params.locationId){
+          params.locationId=this.$route.params.locationId
+        }
+        this.getLocationData(params)
+      }
+    },
+
     // 鎼滅储
     getList(val) {
-      console.log(val)
+      this.keyWord=val
+      this.pagerOptions.currPage=1
+      this.pagerOptions.pageSize=15
+      this.getData()
     },
     // 琛岀偣鍑�
     tableRowClick(row) {
       console.log(row)
-      this.editConfig.visible = true
+      // this.editConfig.visible = true;
       this.editConfig.title = "鏌ョ湅"
       this.editConfig.infomation = { ...row }
     },
@@ -182,10 +250,35 @@
     addBtnClick() {
       this.editConfig.visible = true
       this.editConfig.title = "鏂板缓"
+      this.getData()
     },
     // 鐘舵��
     getStatus(val) {
       return val === 1 ? "鑽夌" : val === 3 ? "灏辩华" : "瀹屾垚"
+    },
+    // 鍘嗗彶
+    handleHistoryClick(row) {
+      console.log(row)
+      this.$router.push({
+        name: "outEnterLibrary",
+        params: {
+          keyWord:row.productName,
+          produceId:row.produceId,
+          productName:row.productName,
+          unit:row.unit,
+          name: "鎶ヨ〃"
+        }
+      })
+    },
+    // 琛ヨ揣
+    handleAddGoods(row) {
+      this.$router.push({
+        name: 'orderPoint',
+        params:{
+          locationId:row.locationId,
+          locationName:row.locationName
+        }
+      })
     }
   }
 }
@@ -193,18 +286,4 @@
 
 <!-- Add "scoped" attribute to limit CSS to this component only -->
 <style lang="scss" scoped>
-// .rightContent {
-//   height: 100%;
-//   background: #e6ecf2;
-//   padding: 10px;
-//   .top {
-//     margin-bottom: 20px;
-//     height: 60px;
-//     background: #fff;
-//     border-radius: 8px;
-//   }
-//   .list-view {
-//     height: calc(100% - 120px);
-//   }
-// }
 </style>

--
Gitblit v1.8.0