From 54df47d5b8c4de6d5dbddd05f96bd6add9be78a6 Mon Sep 17 00:00:00 2001
From: haoxuan <haoxuan>
Date: 星期二, 14 十一月 2023 15:03:27 +0800
Subject: [PATCH] 产品模块 增加 在库数量,预测数量,进,出数量,重订货规则1个的时候显示 最小最大,否则显示规则数量

---
 src/views/overview/OverviewListView.vue |  190 +++++++++++++++++++++++++++++++++-------------
 1 files changed, 135 insertions(+), 55 deletions(-)

diff --git a/src/views/overview/OverviewListView.vue b/src/views/overview/OverviewListView.vue
index aab7906..fc3a8d8 100644
--- a/src/views/overview/OverviewListView.vue
+++ b/src/views/overview/OverviewListView.vue
@@ -1,22 +1,37 @@
 <template>
   <div class="rightContent">
+    <div class="label-fixed-element">
+      <span>{{ params.name }}</span>
+    </div>
     <div class="top">
       <SearchCommonView
         :add-title="'鏂板缓'"
-        :placeholder="'璇疯緭鍏ュ崟鍙�'"
+        :placeholder="'璇疯緭鍏ュ崟鍙�/鏉ユ簮鍗曟嵁'"
         :amount-view="false"
+        :search-task-map="searchTaskMap"
         @addCommonClick="addBtnClick"
         @searchClick="getList"
+        @delSelectClick="delSelectClick"
       />
     </div>
     <div class="list-view">
       <div class="table">
-        <TableCommonView
-          ref="tableListRef"
-          :table-list="tableList"
-          @selTableCol="selTableCol"
-          @tableRowClick="tableRowClick"
-        ></TableCommonView>
+        <TableCommonView ref="tableListRef" :table-list="tableList" @selTableCol="selTableCol">
+          <template slot="tableButton">
+            <el-table-column label="鎿嶄綔" width="100">
+              <template slot-scope="scope">
+                <el-button @click="tableRowClick(scope.row, '鏌ョ湅')" type="text" size="small">鏌ョ湅</el-button>
+                <el-button
+                  v-if="scope.row.status !== 4"
+                  @click="tableRowClick(scope.row, '缂栬緫')"
+                  type="text"
+                  size="small"
+                  >缂栬緫</el-button
+                >
+              </template>
+            </el-table-column>
+          </template>
+        </TableCommonView>
       </div>
       <div class="btn-pager">
         <PagerView class="page" :pager-options="pagerOptions" v-on="pagerEvents" />
@@ -27,7 +42,8 @@
       v-if="editConfig.visible"
       :work-type="workType"
       :edit-common-config="editConfig"
-      :add-name="this.$route.params.name"
+      :add-name="addName"
+      :display-edit="displayEdit"
     />
   </div>
 </template>
@@ -47,7 +63,7 @@
   data() {
     return {
       tableList: {},
-      showcol: ["浠�", "鑷�", "鑱旂郴浜�", "鏃ユ湡", "鏉ユ簮鍗曟嵁", "鐘舵��"],
+      showcol: ["浠撳簱浣嶇疆", "璋冨嚭浣嶇疆", "璋冨叆浣嶇疆", "鑱旂郴浜�", "鏃ユ湡", "鏉ユ簮鍗曟嵁", "鐘舵��"],
       searchOptions: [],
       commonDetail: {
         visible: false,
@@ -59,19 +75,56 @@
         title: "鏂板缓",
         infomation: {}
       },
-      workType: this.$route.params.workType
+      workType: this.$route.params.workType,
+      keyword: "",
+      params: {},
+      displayEdit: false,
+      formLabel: "",
+      toLabel: "",
+      addName: "",
+      searchTaskMap: []
     }
   },
   created() {
+    console.log(this.workType)
+    this.setFormToLabel()
     this.setTable()
+    var paramsData = sessionStorage.getItem("paramsData")
+    let params = {}
+    if (paramsData) {
+      params = JSON.parse(sessionStorage.getItem("paramsData"))
+    } else {
+      params = this.$route.params
+      sessionStorage.setItem("paramsData", JSON.stringify(params))
+    }
+    this.params = params
+    this.searchTaskMap =
+      this.params.status > 0 ? [{ id: this.params.id, title: this.getStatus(this.params.status) }] : []
     this.getData()
-    console.log(this.$route.params.workType)
+    // console.log(this.$route.params.workType)
+  },
+  // 椤甸潰閿�姣佷箣鍓�
+  beforeDestroy() {
+    sessionStorage.removeItem("paramsData")
   },
   methods: {
+    setFormToLabel() {
+      if (this.workType === 1) {
+        this.formLabel = "渚涘簲鍟嗕綅缃�"
+        this.toLabel = "浠撳簱浣嶇疆"
+      } else if (this.workType === 2) {
+        this.formLabel = "浠撳簱浣嶇疆"
+        this.toLabel = "瀹㈡埛浣嶇疆"
+      } else {
+        this.formLabel = "璋冨嚭浣嶇疆"
+        this.toLabel = "璋冨叆浣嶇疆"
+      }
+    },
     setTable() {
       this.tableList = {
         tableInfomation: [],
-        selectBox: true,
+        selectBox: false,
+        selectIndex: true,
         showcol: this.showcol,
         allcol: [],
         tableColumn: this.setTableColumn(this.showcol)
@@ -94,15 +147,15 @@
           default: true
         },
         {
-          label: "浠�",
+          label: this.formLabel,
           prop: "from",
-          isShowColumn: showcol.includes("浠�"),
+          isShowColumn: showcol.includes(this.formLabel),
           default: false
         },
         {
-          label: "鑷�",
+          label: this.toLabel,
           prop: "to",
-          isShowColumn: showcol.includes("鑷�"),
+          isShowColumn: showcol.includes(this.toLabel),
           default: false
         },
         {
@@ -124,39 +177,39 @@
           default: false,
           date: true
         },
-        {
-          label: "浜у搧鍙敤鎬�",
-          prop: "status",
-          isShowColumn: showcol.includes("浜у搧鍙敤鎬�"),
-          default: false
-        },
-        {
-          label: "鎴鏃ユ湡",
-          prop: "faultTime",
-          isShowColumn: showcol.includes("鎴鏃ユ湡"),
-          default: false
-        },
-        {
-          label: "瀹為檯鏃ユ湡",
-          prop: "shopName",
-          isShowColumn: showcol.includes("瀹為檯鏃ユ湡"),
-          default: false
-        },
+        // {
+        //   label: "浜у搧鍙敤鎬�",
+        //   prop: "status",
+        //   isShowColumn: showcol.includes("浜у搧鍙敤鎬�"),
+        //   default: false
+        // },
+        // {
+        //   label: "鎴鏃ユ湡",
+        //   prop: "faultTime",
+        //   isShowColumn: showcol.includes("鎴鏃ユ湡"),
+        //   default: false
+        // },
+        // {
+        //   label: "瀹為檯鏃ユ湡",
+        //   prop: "shopName",
+        //   isShowColumn: showcol.includes("瀹為檯鏃ユ湡"),
+        //   default: false
+        // },
         {
           label: "鏉ユ簮鍗曟嵁",
           prop: "sourceNumber",
           isShowColumn: showcol.includes("鏉ユ簮鍗曟嵁"),
           default: false
         },
-        {
-          label: "娆犲崟",
-          prop: "status",
-          isShowColumn: showcol.includes("娆犲崟"),
-          default: false
-        },
+        // {
+        //   label: "娆犲崟",
+        //   prop: "status",
+        //   isShowColumn: showcol.includes("娆犲崟"),
+        //   default: false
+        // },
         {
           label: "鍏ュ簱绫诲瀷",
-          prop: "faultTime",
+          prop: "operationTypeName",
           isShowColumn: showcol.includes("鍏ュ簱绫诲瀷"),
           default: false
         },
@@ -180,13 +233,15 @@
     // 璇锋眰鏁版嵁
     async getData() {
       await getOperation({
-        operationTypeId: this.$route.params.id,
+        number: this.keyword,
+        operationTypeId: this.params.id,
         page: this.pagerOptions.currPage,
-        pageSize: this.pagerOptions.pageSize
+        pageSize: this.pagerOptions.pageSize,
+        status: this.params.status
       }).then((res) => {
-        console.log(res.data.data)
-        if (res.data.code === 200) {
-          const list = res.data.data.map((item) => {
+        console.log(res.data)
+        if (res.code === 200) {
+          const list = res.data.map((item) => {
             return {
               ...item,
               from: item.fromLocation.name,
@@ -194,36 +249,61 @@
             }
           })
           this.tableList.tableInfomation = list || []
-          this.pagerOptions.totalCount = res.data.total
+          this.pagerOptions.totalCount = res.total
         }
       })
     },
     // 鎼滅储
     getList(val) {
       console.log(val)
+      this.keyword = val
+      this.pagerOptions.currPage = 1
+      this.getData()
     },
-    // 琛岀偣鍑�
-    tableRowClick(row) {
+    // 鏌ョ湅 缂栬緫
+    tableRowClick(row, val) {
       console.log(row)
       this.editConfig.visible = true
-      this.editConfig.title = "缂栬緫"
-      this.editConfig.operationTypeId = this.$route.params.id
+      this.editConfig.title = val
+      this.editConfig.operationTypeId = this.params.id
       this.editConfig.infomation = { ...row }
     },
     // 鏂板缓
     addBtnClick() {
-      this.editConfig.visible = true
       this.editConfig.title = "鏂板缓"
-      this.editConfig.operationTypeId = this.$route.params.id
+      this.addName = this.params.name
+      console.log(this.params, "ss鍒锋柊")
+      this.editConfig.operationTypeId = this.params.id
+      this.editConfig.code = this.params.code
       this.editConfig.infomation = {}
+      this.editConfig.visible = true
     },
     // 鐘舵��
     getStatus(val) {
-      return val === 1 ? "鑽夌" : val === 3 ? "灏辩华" : "瀹屾垚"
+      return val === 1 ? "鑽夌" : val === 3 ? "灏辩华" : val === 4 ? "瀹屾垚" : ""
+    },
+    // 鍒犻櫎鎼滅储鐘舵��
+    delSelectClick() {
+      this.params.status = 0
+      this.getData()
     }
   }
 }
 </script>
 
 <!-- Add "scoped" attribute to limit CSS to this component only -->
-<style lang="scss" scoped></style>
+<style lang="scss" scoped>
+.label-fixed-element {
+  background: #e6ecf2;
+  position: fixed;
+  font-size: 14px;
+  width: calc(100% - 530px);
+  height: 45px;
+  line-height: 45px;
+  font-size: 18px;
+  font-weight: 700;
+  color: #171718;
+  margin-top: -60px;
+  margin-left: -5px;
+}
+</style>

--
Gitblit v1.8.0