From c880739ec4cd5ede33b31eb98ad5f7628ea288e5 Mon Sep 17 00:00:00 2001
From: zss <zss@example.com>
Date: 星期一, 11 十二月 2023 17:41:40 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 src/views/warehouse/pallettransports/index.vue |  141 +++++++++++++++++++++++++++++------------------
 1 files changed, 87 insertions(+), 54 deletions(-)

diff --git a/src/views/warehouse/pallettransports/index.vue b/src/views/warehouse/pallettransports/index.vue
index a0428d9..5303f6a 100644
--- a/src/views/warehouse/pallettransports/index.vue
+++ b/src/views/warehouse/pallettransports/index.vue
@@ -52,10 +52,15 @@
             </div>
           </div>
           <div>
-            <el-table class="pallet-transports-material-table" :data="palletTransportsMaterialData" style="width: 100%;"
-              height="350px" border @selection-change="palletTransportsMaterialSelectionChange" stripe
+            <el-table class="pallet-transports-material-table" @current-change="handleCurrentChange"  :data="palletTransportsMaterialData" style="width: 100%;"
+              height="350px" border  stripe
               ref="palletTransportsMaterialTable">
-              <el-table-column type="selection" width="55"> </el-table-column>
+              				<!--鍗曢�夋 @selection-change="palletTransportsMaterialSelectionChange"-->
+				      <el-table-column align="center"  width="55" label="鍗曢��">
+					        <template slot-scope="scope">
+						        <el-checkbox v-model="scope.row.commonChecked" @change="handleCurrentChange(scope.row)" ></el-checkbox>
+					        </template>
+				      </el-table-column>
               <el-table-column prop="partNo" label="闆朵欢鍙�" align="center" show-overflow-tooltip>
               </el-table-column>
               <el-table-column prop="partDesc" label="闆朵欢鎻忚堪" align="center" show-overflow-tooltip>
@@ -78,10 +83,10 @@
               </el-table-column>
               <el-table-column label="鎿嶄綔" align="center" width="100">
                 <template slot-scope="scope">
-                  <el-button v-show="!scope.row.canEdit" type="text" :disabled="scope.row.detailExistState"
-                    @click="scope.row.canEdit = true">缂栬緫</el-button>
-                  <el-button v-show="scope.row.canEdit" type="text" :disabled="scope.row.detailExistState"
-                    @click="updateMaterial(scope.row)">淇濆瓨</el-button>
+                  <!-- <el-button v-show="!scope.row.canEdit" type="text" :disabled="scope.row.detailExistState"
+                    @click="scope.row.canEdit = true">缂栬緫</el-button> -->
+                  <!-- <el-button v-show="scope.row.canEdit" type="text" :disabled="scope.row.detailExistState"
+                    @click="updateMaterial(scope.row)">淇濆瓨</el-button> -->
                   <el-button type="text" :disabled="scope.row.detailExistState"
                     @click="delMaterial(scope.row)">鍒犻櫎</el-button>
                 </template>
@@ -91,13 +96,13 @@
           <div style="margin-top:10px;display:flex;height:36px;justify-content: space-between;align-items:center;">
             <div>
               <span style="font-weight:bold;">绉诲簱鏄庣粏</span>
-              <!-- <span style="color:red;">({{
+              <span style="color:red;">({{
                 palletTransportsMaterialMultipleSelection.length > 0
                 ? palletTransportsMaterialMultipleSelection[
                   palletTransportsMaterialMultipleSelection.length - 1
                 ].partDesc
                 : ''
-              }})</span> -->
+              }})</span>
             </div>
             <div>
               <el-button type="primary" v-if="permissions.warehouse_pallettransports_detail_add" round
@@ -113,27 +118,27 @@
               v-adaptive="{ bottomOffset: 20, fixedHeight: 0 }" height="100px" border
               @selection-change="palletTransportsDetailSelectionChange" stripe ref="palletTransportsDetailTable">
               <el-table-column type="selection" width="55"> </el-table-column>
-              <el-table-column prop="partNo" label="闆朵欢鍙�" align="center" show-overflow-tooltip>
+              <el-table-column prop="part_no" label="闆朵欢鍙�" align="center" show-overflow-tooltip>
               </el-table-column>
-              <el-table-column prop="partDesc" label="闆朵欢鎻忚堪" align="center" show-overflow-tooltip>
+              <el-table-column prop="part_desc" label="闆朵欢鎻忚堪" align="center" show-overflow-tooltip>
               </el-table-column>
               <!-- <el-table-column prop="batchNo" label="鎵规鍙�" align="center" show-overflow-tooltip>
               </el-table-column>
               <el-table-column prop="wdr" label="WDR" align="center">
               </el-table-column> -->
-              <el-table-column prop="operationTaskNo" label="宸ュ崟" align="center" show-overflow-tooltip>
+              <el-table-column prop="operation_task_no" label="宸ュ崟" align="center" show-overflow-tooltip>
               </el-table-column>
-              <el-table-column prop="transferQuantity" label="绉诲簱鏁伴噺" align="center">
+              <el-table-column prop="transfer_quantity" label="绉诲簱鏁伴噺" align="center">
               </el-table-column>
               <el-table-column prop="unit" label="鍗曚綅" align="center">
               </el-table-column>
               <!-- <el-table-column prop="fromIfsLocationNo" label="IFS浠庡簱浣�" align="center">
               </el-table-column> -->
-              <el-table-column prop="toIfsLocationNo" label="绉昏嚦搴撲綅" align="center">
-                <template slot-scope="scope">
+              <el-table-column prop="to_ifs_location_no" label="绉昏嚦搴撲綅" align="center">
+                <!-- <template slot-scope="scope">
                   <el-link type="primary" @click="openSingleLocationDialog(scope.row)">{{ scope.row.toIfsLocationNo
                   }}</el-link>
-                </template>
+                </template> -->
               </el-table-column>
               <el-table-column prop="state" label="鐘舵��" align="center">
                 <template slot-scope="scope">
@@ -148,8 +153,8 @@
               </el-table-column>
               <el-table-column label="鎿嶄綔" align="center" width="85">
                 <template slot-scope="scope">
-                  <el-button type="text" @click="openEditStockDialog(scope.row)"
-                    :disabled="scope.row.state === '01initial' ? false : true">缂栬緫</el-button>
+                  <!-- <el-button type="text" @click="openEditStockDialog(scope.row)"
+                    :disabled="scope.row.state === '01initial' ? false : true">缂栬緫</el-button> -->
                   <el-button type="text" @click="delDetail(scope.row)"
                     :disabled="scope.row.state === '01initial' ? false : true">鍒犻櫎</el-button>
                 </template>
@@ -188,7 +193,8 @@
   delPalletTransportsMaterialObj,
   palletTransportsDetailFetchList,
   delPalletTransportsDetailObj,
-  executeMoveLocation
+  executeMoveLocation,
+  selectAll,
 } from '@/api/warehouse/pallettransports'
 import { getByPalletTransId } from '@/api/plan/operationtask'
 import ttable from '@/views/common/ztt-table.vue'
@@ -204,6 +210,7 @@
 export default {
   data() {
     return {
+      partDesc: null,
       ajaxFun: palletTransportsFetchList,
       currPalletTransportsRow: null,
       palletTransportsMaterialMultipleSelection: [],
@@ -214,6 +221,7 @@
         url: ''
       },
       WorkOrder:{},
+      datalistAPI:'',
       prelang: 'pallettransports',
       options: {
         height: 300, // 榛樿楂樺害-涓轰簡琛ㄥご鍥哄畾
@@ -346,8 +354,29 @@
   computed: {
     ...mapGetters(['permissions'])
   },
+  watch:{
+    palletTransportsMaterialMultipleSelection(newVal){
+      if(newVal.length>0){
+        this.palletTransportsMaterialSelectionChange(newVal)
+      }else{
+        this.palletTransportsDetailData = []
+      }
+    }
+  },
   created() { },
   methods: {
+    			// 鍗曡閫変腑
+			handleCurrentChange(row) {
+					this.palletTransportsMaterialData.forEach((item) => {
+						// 鎺掍粬,姣忔閫夋嫨鏃舵妸鍏朵粬閫夐」閮芥竻闄�
+						if (item.id !== row.id) {
+							item.commonChecked = false
+						}else{
+              item.commonChecked = true
+            }
+					})
+          this.palletTransportsMaterialSelectionChange([row])
+			},
     // 宸ヨ壓绫诲瀷涓枃鏍煎紡鍖�
     formatStateType(row, column, cellValue) {
       this.stateOptions.forEach((obj) => {
@@ -396,7 +425,8 @@
                 unit: item.unit,
                 transportsId: item.transportsId,
                 detailExistState: item.detailExistState,
-                canEdit: false
+                canEdit: false,
+                commonChecked: false
               }
               this.palletTransportsMaterialData.push(palletTransportsMaterial)
             })
@@ -487,12 +517,10 @@
     openLocationDialog() {
       if (this.palletTransportsMaterialMultipleSelection.length > 0) {
         let flag = true
-        console.log(this.palletTransportsMaterialMultipleSelection)
         this.palletTransportsMaterialMultipleSelection.forEach((item) => {
           if (item.detailExistState) {
             flag = false
           }
-          console.log(item.detailExistState)
         })
         if (flag) {
           this.showLocation = true
@@ -547,8 +575,6 @@
     },
     // 鑾峰彇绉诲簱鏄庣粏鏁版嵁鍒楄〃
     getPalletTransportsDetailData() {
-      console.log("瀵瑰簲宸ュ崟",this.WorkOrder);
-      console.log("鐗╂枡闇�姹�",this.palletTransportsMaterialMultipleSelection);
       let transportsDetails =[]
       transportsDetails = this.palletTransportsMaterialMultipleSelection.map(el =>{
         return{
@@ -563,31 +589,34 @@
           operationTaskId:this.WorkOrder.id,
           unit: el.unit,
         }})
-      this.palletTransportsDetailData = transportsDetails
+      // this.palletTransportsDetailData = transportsDetails
       if (transportsDetails.length > 0) {
+        let selectionList = this.palletTransportsMaterialMultipleSelection
           saveBatchPalletTransportsDetail(transportsDetails)
             .then((response) => {
               const resData = response.data
               if (resData.code === 0) {
                 this.innerVisible = false
                 this.$message.success('娣诲姞绉诲簱鏄庣粏鎴愬姛')
-                this.$emit('refreshDataList')
+                let materialRow = selectionList[selectionList.length - 1]
+                this.palletTransportsMaterialData.forEach(ele=>{
+                  if(ele.id==materialRow.id){
+                      ele.transferQuantity = materialRow.surplusQuantity
+                      ele.surplusQuantity = 0
+                  }
+                })
               } else {
                 this.$message.error('娣诲姞绉诲簱鏄庣粏澶辫触')
               }
+              // this.getPalletTransportsMaterialData()
+              this.palletTransportsMaterialSelectionChange(selectionList)
             })
-            .catch(() => {
-            })
+            // .catch(() => {
+            // })
         }
     },
     // 娣诲姞ifs鐗╂枡搴撳瓨鍥炶皟
     addIfsStockCallback() {
-      // 鍒锋柊鐗╂枡闇�姹傘�佸埛鏂扮Щ搴撴槑缁�
-      // this.getPalletTransportsMaterialData()
-      // 鍒锋柊璐х洏杩愯緭浠诲姟鍒楄〃
-      // if (this.showStock) {
-      // this.getPallettransportsData()
-      // }
       const currRow = this.currPalletTransportsRow
       this.getPallettransportsData().then(() => {
         if (currRow) {
@@ -619,24 +648,22 @@
       if (row.state === '01initial') {
         this.detailList = []
         this.detailList.push(row)
-        this.showDetailLocation = true
+        // this.showDetailLocation = true
       } else {
         this.$message.error('绉诲簱鏄庣粏宸叉墽琛�')
       }
     },
     // 鍒犻櫎绉诲簱鏄庣粏
     delDetail(row) {
-      /* const delRow = this.palletTransportsDetailData.find((item) => {
+       const delRow = this.palletTransportsDetailData.find((item) => {
         return item.id === row.id
-      }) */
-
+      }) 
       delPalletTransportsDetailObj(row.id).then((response) => {
         const resData = response.data
         if (resData.code === 0) {
-          // const findRowIndex = this.palletTransportsDetailData.indexOf(delRow)
-          // this.palletTransportsDetailData.splice(findRowIndex, 1)
+          const findRowIndex = this.palletTransportsDetailData.indexOf(delRow)
+          this.palletTransportsDetailData.splice(findRowIndex, 1)
           this.$message.success('绉诲簱鏄庣粏鍒犻櫎鎴愬姛')
-          // this.getPalletTransportsMaterialData()
           const currRow = this.currPalletTransportsRow
           this.getPallettransportsData().then(() => {
             if (currRow) {
@@ -668,6 +695,7 @@
             if (resData.code === 0) {
               this.$message.success('鎵ц鎴愬姛')
               // this.getPalletTransportsMaterialData()
+              this.palletTransportsDetailData=[]
               const currRow = this.currPalletTransportsRow
               this.getPallettransportsData().then(() => {
                 if (currRow) {
@@ -701,19 +729,25 @@
       }
     },
     palletTransportsMaterialSelectionChange(val) {
-      console.log(val,"12312313");
-      
       this.palletTransportsMaterialMultipleSelection = val
-      // if (this.palletTransportsMaterialMultipleSelection.length > 0) {
-      //   const currPalletTransportsMaterial = this
-      //     .palletTransportsMaterialMultipleSelection[
-      //     this.palletTransportsMaterialMultipleSelection.length - 1
-      //   ]
-      //   this.materialRow = currPalletTransportsMaterial
-      // } else {
-      //   this.materialRow = null
-      // }
-      // this.getPalletTransportsDetailData()
+      if(val && val.length>0){
+        let ids =[]
+        this.palletTransportsMaterialMultipleSelection.forEach(el =>{ids.push(el.id)})
+        let pId = ids[ids.length - 1];
+        if(pId!=null){
+          selectAll({
+              transportsId:this.currPalletTransportsRow.id,
+              transportsMaterialId: pId
+            }).then((res) =>{
+              this.palletTransportsDetailData = []
+              if(res.data.data){
+                this.palletTransportsDetailData.push(res.data.data)
+              }
+              })
+           }else{
+            this.palletTransportsDetailData = []
+           }
+      }
     },
     palletTransportsDetailSelectionChange(val) {
       this.palletTransportsDetailMultipleSelection = val
@@ -730,7 +764,6 @@
       })
     },
     optaskRowClick(row, column) {
-      console.log(row,222222222222222);
       this.WorkOrder = row
       this.palletTransportsOptaskData.forEach((item) => {
         if (row.id !== item.id) {

--
Gitblit v1.9.3