From 1888b426ff2b6a529f5fdef0f0453dadef71824b Mon Sep 17 00:00:00 2001
From: haoxuan <haoxuan>
Date: 星期三, 17 四月 2024 10:17:38 +0800
Subject: [PATCH] 隐藏多单位的问题

---
 src/views/operate/orderPoint/index.vue |  272 ++++++++++++++++++++++++++++-------------------------
 1 files changed, 143 insertions(+), 129 deletions(-)

diff --git a/src/views/operate/orderPoint/index.vue b/src/views/operate/orderPoint/index.vue
index eb8596f..340eb0e 100644
--- a/src/views/operate/orderPoint/index.vue
+++ b/src/views/operate/orderPoint/index.vue
@@ -1,29 +1,55 @@
 <template>
   <div class="rightContent">
     <div class="top">
-      <SearchCommonView :add-title="addTitle" :show-discard="showDiscard" :show-apply="false" :placeholder="'璇疯緭鍏ヤ綅缃�/浜у搧'"
-        :amount-view="false" @addCommonClick="addProductClick" @searchClick="getList"
-        @discardBtnClick="discardBtnClick" />
+      <SearchCommonView
+        :add-title="addTitle"
+        :show-discard="showDiscard"
+        :show-apply="false"
+        :placeholder="'璇疯緭鍏ヤ綅缃�/浜у搧'"
+        :amount-view="false"
+        :search-task-map="searchTaskMap"
+        :show-sreen="false"
+        :screen-array="screenArray"
+        @addCommonClick="addProductClick"
+        @searchClick="getList"
+        @discardBtnClick="discardBtnClick"
+        @delSelectClick="delSelectClick"
+        @switchKeywords="switchKeywords"
+      />
     </div>
     <div class="content_wrap">
       <div class="con_left">
-          <p>浣嶇疆</p>
-          <div class="stash">
-            <template>
-              <el-tree :data="datas" :props="defaultProps" @node-click="handleNodeClick"></el-tree>
-            </template>
-          </div>
+        <p>浣嶇疆</p>
+        <div class="stash">
+          <template>
+            <el-tree :data="datas" :props="defaultProps" @node-click="handleNodeClick">
+              <span class="span-ellipsis" slot-scope="{ node }">
+                <span :title="node.label">{{ node.label }}</span>
+              </span>
+            </el-tree>
+          </template>
+        </div>
       </div>
       <div class="list-view">
         <div class="table">
-          <CommonFormTableView ref="tablelistRef" :isReorder="true" :product-table-list="tableList"
-            @inputContent="inputContent" @selLocationClick="selLocationClick" @selProductClick="selProductClick"
-            @tableRowClick="tableRowClick" @selRouteClick="selRouteClick">
+          <CommonFormTableView
+            ref="tablelistRef"
+            :isReorder="true"
+            :product-table-list="tableList"
+            @inputContent="inputContent"
+            @selLocationClick="selLocationClick"
+            @selProductClick="selProductClick"
+            @tableRowClick="tableRowClick"
+            @selRouteClick="selRouteClick"
+          >
             <template slot="tableButton">
               <el-table-column label="鎿嶄綔" width="180" align="center">
                 <template slot-scope="scope">
-                  <span v-if="scope.row.isEdit && scope.row.isView" @click.stop="handleOrderOnceClick(scope.row)"
-                    class="yes-cursor">
+                  <span
+                    v-if="scope.row.isEdit && scope.row.isView"
+                    @click.stop="handleOrderOnceClick(scope.row)"
+                    class="yes-cursor"
+                  >
                     <i class="el-icon-truck"></i>
                     <span>璁㈣喘涓�娆�</span>
                   </span>
@@ -43,7 +69,13 @@
 <script>
 import CommonFormTableView from "@/components/makepager/CommonFormTableView"
 import pageMixin from "@/components/makepager/pager/mixin/pageMixin"
-import { getReorderRuleList, addReorderRule, updateReorderRule, orderAgain,getLocationList } from "@/api/product/reorderRules"
+import {
+  getReorderRuleList,
+  addReorderRule,
+  updateReorderRule,
+  orderAgain,
+  getLocationTreeList
+} from "@/api/product/reorderRules"
 import { currentTime } from "@/common/config/index"
 export default {
   name: "ReorderRules",
@@ -53,45 +85,10 @@
   computed: {},
   data() {
     return {
-      datas:[],
-      // datas: [{
-      //     label: '涓�绾� 1',
-      //     children: [{
-      //       label: '浜岀骇 1-1',
-      //       children: [{
-      //         label: '涓夌骇 1-1-1'
-      //       }]
-      //     }]
-      //   }, {
-      //     label: '涓�绾� 2',
-      //     children: [{
-      //       label: '浜岀骇 2-1',
-      //       children: [{
-      //         label: '涓夌骇 2-1-1'
-      //       }]
-      //     }, {
-      //       label: '浜岀骇 2-2',
-      //       children: [{
-      //         label: '涓夌骇 2-2-1'
-      //       }]
-      //     }]
-      //   }, {
-      //     label: '涓�绾� 3',
-      //     children: [{
-      //       label: '浜岀骇 3-1',
-      //       children: [{
-      //         label: '涓夌骇 3-1-1'
-      //       }]
-      //     }, {
-      //       label: '浜岀骇 3-2',
-      //       children: [{
-      //         label: '涓夌骇 3-2-1'
-      //       }]
-      //     }]
-      // }],
+      datas: [],
       defaultProps: {
-        children: 'children',
-        label: 'jointName'
+        children: "children",
+        label: "jointName"
       },
       addTitle: "鏂板缓",
       showDiscard: false,
@@ -106,15 +103,36 @@
       amount: 0,
       operationId: 0,
       minInventory: 0,
-      maxInventory: 0,
-      orderNumber: 0,
+      maxInventory: 1,
+      orderNumber: 1,
       unit: "",
-      reorderId: 0
+      reorderId: 0,
+      searchTaskMap: [],
+      type: "bh",
+      screenArray: [{ id: "0", type: "bh", title: "閲嶆柊璁㈣喘" }]
     }
   },
   created() {
+    if (this.$route.params.productId) {
+      this.getData({
+        productId: this.$route.params.productId,
+        pageSize: 15,
+        page: 1
+      })
+    }else if(this.$route.params.locationId){
+      this.searchTaskMap=[]
+      this.getData({
+        id: this.$route.params.locationId,
+        jointName:this.$route.params.locationName,
+        // type:"",
+        pageSize: 15,
+        page: 1
+      })
+    }else {
+      this.getData()
+    }
     this.setTable()
-    this.getData()
+    this.searchTaskMap = [{ id: "0", type: this.type, title: "閲嶆柊璁㈣喘" }]
     this.getLocationList()
   },
   methods: {
@@ -137,14 +155,18 @@
       }
     },
     // 璇锋眰鏁版嵁
-    async getData() {
+    async getData(data) {
       await getReorderRuleList({
+        locationId: data?.id,
+        type: this.type,
+        keyWord: data?.jointName,
         page: this.pagerOptions.currPage,
-        pageSize: this.pagerOptions.pageSize
+        pageSize: this.pagerOptions.pageSize,
+        productId: data?.productId
       }).then((res) => {
         if (res.code === 200) {
           console.log(res)
-          const list = res.data.map((item) => {
+          const list = res.data?.map((item) => {
             let orderNum = 0
             if (parseFloat(item.minInventory) - parseFloat(item.prediction) > 0) {
               orderNum = this.caculateOrderNumber(
@@ -177,7 +199,7 @@
     },
     // 鎿嶄綔杈撳叆
     inputContent(val, prop, row) {
-      console.log(val, prop, row)
+      console.log(row)
       if (prop === "minInventory") {
         this.minInventory = val
         if (parseFloat(this.minInventory) - parseFloat(this.prediction) > 0) {
@@ -202,7 +224,7 @@
     },
     // 鏂板
     addProductClick() {
-      console.log(this.addTitle)
+      console.log(this.addTitle, "qqqqqqqqqqqq")
       this.isSel()
       if (this.isNoProduct && this.addTitle === "鏂板缓") {
         this.$refs.tablelistRef.getProductList()
@@ -228,6 +250,7 @@
           editable: false,
           isOrder: true
         })
+        this.tableList.tableData = this.tableData
         this.locationId = 0
         this.productId = 0
       } else {
@@ -235,7 +258,10 @@
         this.showDiscard = false
         let requestUrl = this.currentRowId === 0 ? addReorderRule : updateReorderRule
         let params = this.saveParams()
-        requestUrl(params)
+        if(params.productId===0){
+          this.$message.warning("璇峰~鍐欎骇鍝佷俊鎭�!")
+        }else{
+          requestUrl(params)
           .then((res) => {
             console.log(res)
             if (res.code === 200) {
@@ -248,6 +274,7 @@
             console.log(err)
             this.getData()
           })
+        }
         // }
       }
     },
@@ -342,8 +369,10 @@
     },
     // 閫変腑浜у搧鏂规硶
     selProductClick(item) {
-      this.productId = item.value
+      this.productId = item.productId
       this.unit = item.unit
+      this.amount = item.amount
+      this.prediction = item.prediction
     },
     // 閫変腑璺嚎鏂规硶
     selRouteClick(item, prop) {
@@ -356,54 +385,30 @@
     },
     //鏍戠偣鍑�
     handleNodeClick(data) {
-      console.log(data,"sss");
-      getReorderRuleList({
-        locationId:data.id,
-        page:1,
-        pageSize:15,
-        type:"",
-        keyWord:data.jointName,
-      }).then((res)=>{
-        console.log(res,"res999")
-        if (res.code === 200) {
-          console.log(res)
-          const list = res.data.map((item) => {
-            let orderNum = 0
-            if (parseFloat(item.minInventory) - parseFloat(item.prediction) > 0) {
-              orderNum = this.caculateOrderNumber(
-                parseFloat(item.minInventory),
-                parseFloat(item.maxInventory),
-                parseFloat(item.prediction)
-              )
-            }
-            return {
-              ...item,
-              productName: item.product.name,
-              locationName: item.location.name,
-              isSet: false,
-              isEdit: true,
-              editable: true,
-              isOrder: true,
-              isView: item?.minInventory - item?.prediction > 0 ? true : false,
-              orderNumber: orderNum
-            }
-          })
-          this.tableList.tableData = list || []
-          this.tableData = list || []
-          this.pagerOptions.totalCount = res.total
-        }
+      console.log(data, "sss")
+      this.getData(data)
+    },
+    async getLocationList() {
+      await getLocationTreeList().then((res) => {
+        this.datas = [
+          {
+            id: 0,
+            jointName: "鍏ㄩ儴",
+            children: []
+          },
+          ...res.data
+        ]
       })
     },
-    async getLocationList(){
-      await getLocationList({
-        categoryId:"",
-        keyWord:"",
-        // page:1,
-        // pageSize:,
-      }).then((res)=>{
-        this.datas=res.data
-        console.log(res,"res666")
-      })
+    // 鍒犻櫎type
+    delSelectClick() {
+      this.type = ""
+      this.getData()
+    },
+    switchKeywords(item) {
+      console.log(item, "switchKeywords")
+      this.type = item?.length > 0 ? "bh" : ""
+      this.getData()
     }
   }
 }
@@ -418,28 +423,37 @@
     overflow: auto;
   }
   .content_wrap {
-  height: calc(100% - 0px);
-  display: flex;
-  justify-content: space-between;
-  .con_left {
-    width: 200px;
-    .el-checkbox-group {
-      width:100%;
-      display: flex;
-      flex-direction: column;
-    }
-    .stash {
-      display: flex;
-      flex-direction: column;
-      .el-tree{
-        background-color: #E6ECF2;
+    height: calc(100% - 0px);
+    display: flex;
+    justify-content: space-between;
+    .con_left {
+      max-height: calc(100% - 40px);
+      overflow: hidden;
+      width: 190px;
+      margin-right: 10px;
+      .el-checkbox-group {
+        width: 100%;
+        display: flex;
+        flex-direction: column;
+      }
+      .stash {
+        display: flex;
+        flex-direction: column;
+        .el-tree {
+          background-color: #e6ecf2;
+        }
       }
     }
+    .list-view {
+      flex: 1;
+    }
   }
-  .list-view {
-    flex: 1;
+  .span-ellipsis {
+    width: 100%;
+    overflow: hidden;
+    white-space: nowrap;
+    text-overflow: ellipsis;
+    font-size: 13px;
   }
-}
-  
 }
 </style>

--
Gitblit v1.8.0