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