From 1888b426ff2b6a529f5fdef0f0453dadef71824b Mon Sep 17 00:00:00 2001 From: haoxuan <haoxuan> Date: 星期三, 17 四月 2024 10:17:38 +0800 Subject: [PATCH] 隐藏多单位的问题 --- src/views/operate/inventoryAdjustment/index.vue | 218 ++++++++++++++++++++++++++++++++++-------------------- 1 files changed, 137 insertions(+), 81 deletions(-) diff --git a/src/views/operate/inventoryAdjustment/index.vue b/src/views/operate/inventoryAdjustment/index.vue index 8e9c374..90897a0 100644 --- a/src/views/operate/inventoryAdjustment/index.vue +++ b/src/views/operate/inventoryAdjustment/index.vue @@ -16,33 +16,35 @@ <div class="list-view"> <div class="table"> <CommonFormTableView - :isinventory="true" + ref="tablelistRef" + :isOperateAdd="false" :product-table-list="tableList" @inputContent="inputContent" @selLocationClick="selLocationClick" @selProductClick="selProductClick" + @tableRowClick="tableRowClick" > <template slot="tableButton"> - <el-table-column label="鎿嶄綔" width="180" fixed="right" align="center"> + <el-table-column label="鎿嶄綔" width="180" align="center"> <template slot-scope="scope"> - <span @click="handleHistoryClick(scope.row)" class="yes-cursor"> + <span v-if="scope.row.isEdit" @click.stop="handleHistoryClick(scope.row)" class="yes-cursor"> <i class="el-icon-refresh-left"></i> <span>鍘嗗彶</span> </span> <!-- <span v-if="scope.row.isSet" @click="handleSetClick(scope)" class="margin_left_5px"> <i class="el-icon-setting"></i> <span>璁剧疆</span> - </span> - <template v-else> - <span @click="handleUseClick(scope)" class="margin_left_5px"> + </span> --> + <template v-if="scope.row.status === 3"> + <span @click.stop="handleUseClick(scope.row)" class="margin_left_5px"> <i class="el-icon-document"></i> <span>搴旂敤</span> </span> - <span @click="handleCleanupClick(scope)" class="margin_left_5px"> + <!-- <span @click="handleCleanupClick(scope)" class="margin_left_5px"> <i class="el-icon-delete"></i> <span>娓呴櫎</span> - </span> - </template> --> + </span> --> + </template> </template> </el-table-column> </template> @@ -58,8 +60,15 @@ <script> import CommonFormTableView from "@/components/makepager/CommonFormTableView" import pageMixin from "@/components/makepager/pager/mixin/pageMixin" -import { getInventoryAdjustmentList, addInventoryAdjustment } from "@/api/operate/inventoryAdjustment" +import { + getInventoryAdjustmentList, + addInventoryAdjustment, + updateInventoryAdjustment, + finishInventoryAdjustment, + getLocationProductAmount +} from "@/api/operate/inventoryAdjustment" import { currentTime } from "@/common/config/index" + export default { name: "InventoryAdjustment", props: {}, @@ -79,7 +88,9 @@ locationId: 0, productId: 0, differenceAmount: 0, - Amount: 0 + amount: 0, + operationId: 0, + adjustAmount: 0 } }, created() { @@ -90,7 +101,8 @@ setTable() { this.tableList = { tableData: this.tableData, - selectBox: true, + selectBox: false, + selectIndex: true, tableColumn: [ { label: "浣嶇疆", prop: "locationName", location: true }, { label: "浜у搧", prop: "productName", product: true }, @@ -112,11 +124,13 @@ if (res.code === 200) { console.log(res) const list = res.data.map((item) => { + item.adjustAmount = 0 return { ...item, isSet: false, isEdit: true, - editable: true + editable: true, + adjustAmount: 0 } }) this.tableList.tableData = list || [] @@ -124,34 +138,33 @@ this.pagerOptions.totalCount = res.total } }) + }, // 鎿嶄綔杈撳叆 inputContent(val, prop, row) { - console.log("22222222222222") console.log(val, prop, row) - // this.countId = row.countId - // this.tableData.map((item) => { - // if (item.countId === row.countId) { - // item[prop] = val - // } - // }) + console.log(val - row.amount, "缁撴灉") + this.adjustAmount = val - row.amount + this.tableList.tableData[row.index].adjustAmount = this.adjustAmount + // this.differenceAmount = val this.differenceAmount = val }, // 鏂板 addProductClick() { console.log(this.tableData) - this.isSel() + console.log(this.addTitle) this.isSel() if (this.isNoProduct && this.addTitle === "鏂板缓") { + this.$refs.tablelistRef.getLocationList() this.addTitle = "淇濆瓨" this.showDiscard = true this.isRowClick = false + this.operationId = 0 this.currentRowId = 0 this.countId++ - this.tableData.push({ + this.tableData.unshift({ countId: this.countId, - Amount: 0, - areaName: "", + amount: 0, adjustAmount: 0, productId: "", differenceAmount: 0, @@ -166,40 +179,38 @@ this.productCategoryId = 0 this.productId = 0 } else { - if (this.locationId === 0) { - this.$message.error("璇烽�夋嫨浣嶇疆") - } else if (this.productId === 0) { - this.$message.error("璇烽�夋嫨浜у搧") - } else { - this.addTitle = "鏂板缓" - this.showDiscard = false - // let requestUrl = this.currentRowId === 0 ? addInventoryAdjustment : updateListingRules - addInventoryAdjustment({ - // id: this.currentRowId, - locationId: this.locationId, - Amount: this.Amount, - differenceAmount: this.differenceAmount, - productId: this.productId - }) - .then((res) => { - console.log(res) - if (res.code === 200) { - // let tipStr = this.currentRowId === 0 ? "娣诲姞鎴愬姛" : "淇敼鎴愬姛" - this.$message.success("娣诲姞鎴愬姛") - this.getData() - } - }) - .catch((err) => { - console.log(err) + this.addTitle = "鏂板缓" + this.showDiscard = false + let requestUrl = this.currentRowId === 0 ? addInventoryAdjustment : updateInventoryAdjustment + + requestUrl({ + amount: this.amount, + // adjustAmount: this.adjustAmount, + differenceAmount: this.differenceAmount, + locationId: this.locationId, + operationId: this.operationId, + productId: this.productId + }) + .then((res) => { + console.log(res) + if (res.code === 200) { + let tipStr = this.currentRowId === 0 ? "娣诲姞鎴愬姛" : "淇敼鎴愬姛" + this.$message.success(tipStr) this.getData() - }) - } + } + }) + .catch((err) => { + console.log(err) + this.getData() + }) + // } } }, // 鏄惁閫夋嫨浜у搧 isSel() { for (let i = 0; i < this.tableData.length; i++) { - if (this.tableData[i].productName.length === 0) { + // this.tableData[i].productName?.length === 0||!this.tableData[i].productId + if (!this.tableData[i].productId||!this.tableData[i].isEdit) { this.isNoProduct = false break } else { @@ -209,13 +220,19 @@ }, // 鍙栨秷 discardBtnClick() { - if (this.isRowClick) { - this.tableData.map((item) => { - item.isEdit = true - }) - } else { - this.tableData.splice(this.tableData.length - 1, 1) - } + this.getData() + // this.tableList.tableData.forEach((item) => { + // item.differenceAmount = 0 + // item.adjustAmount = 0 + // }) + // this.tableList + // if (this.isRowClick) { + // this.tableData.map((item) => { + // item.isEdit = true + // }) + // } else { + // this.tableData.splice(0, 1) + // } this.addTitle = "鏂板缓" this.showDiscard = false }, @@ -228,10 +245,9 @@ this.isSel() console.log(row) if (this.isNoProduct) { - console.log("鍘嗗彶") this.$router.push({ name: "inventoryAdjustmentHistory", - params: { locationId: row.locationId, productId: row.productId } + params: { locationId: row.locationId, productId: row.productId, baseOperationType: row.baseOperationType } }) } }, @@ -243,8 +259,19 @@ } }, // 搴旂敤 - handleUseClick(scope) { - scope.row.isSet = !scope.row.isSet + handleUseClick(row) { + // scope.row.isSet = !scope.row.isSet + finishInventoryAdjustment({ + locationProductAmountId: row.locationProductAmountId, + operationId: row.operationId, + productId: row.productId + }).then((res) => { + console.log(res) + if (res.code === 200) { + this.$message.success("搴旂敤鎴愬姛") + this.getData() + } + }) }, // 娓呴櫎 handleCleanupClick(scope) { @@ -252,22 +279,33 @@ }, // 琛岀偣鍑� tableRowClick(row, rowIndex) { - console.log(row, rowIndex) - this.addTitle = "淇濆瓨" - this.showDiscard = true - this.isRowClick = true + this.locationId = row.locationId + this.rowIndex = rowIndex this.isSel() + //!this.isNoProduct && this.currentRowId == 0 if (!this.isNoProduct) { - this.tableData.splice(this.tableData.length - 1, 1) - } - this.tableData.map((item, index) => { - if (index === rowIndex) { - item.isEdit = false - item.editable = true - } else { - item.isEdit = true + this.$message.error("璇峰畬鎴愬綋鍓嶄繚瀛樻垨鍙栨秷淇濆瓨锛�") + } else { + this.currentRowId = row.id + this.addTitle = "淇濆瓨" + this.showDiscard = true + this.isRowClick = true + if (!this.isNoProduct) { + this.tableData.splice(this.tableData.length - 1, 1) } - }) + this.tableData.map((item, index) => { + if (index === rowIndex) { + item.isEdit = false + item.editable = true + } else { + item.isEdit = true + } + }) + this.differenceAmount = row.differenceAmount + this.amount = row.amount + this.productId = row.productId + this.operationId = row.operationId + } }, // 鎼滅储 getList(val) { @@ -280,10 +318,20 @@ console.log(item, prop) this.locationId = item.value }, - // 閫変腑浜у搧鏂规硶 - selProductClick(item) { - console.log(item) - this.productId = item.value + // 閫夋嫨浜у搧鏂规硶 + async selProductClick(value, item) { + console.log("鐪嬬湅杩斿洖",this.tableData) + if (value === "product") { + this.productId = item.productId + await getLocationProductAmount({ + locationId:this.locationId, + productId:this.productId + }).then((res)=>{ + if(res&&res.code===200){ + this.tableData[0].amount=res.data?res.data.amount:0 + } + }) + } }, // 鑾峰彇褰撳墠鏃堕棿 currentTime() { @@ -294,4 +342,12 @@ </script> <!-- Add "scoped" attribute to limit CSS to this component only --> -<style lang="scss" scoped></style> +<style lang="scss" scoped> +::v-deep { + .el-table { + border-top-left-radius: 12px; + border-top-right-radius: 12px; + overflow: auto; + } +} +</style> -- Gitblit v1.8.0