From 7b5e1c2372faf11b6211126410d2713f2b47f147 Mon Sep 17 00:00:00 2001
From: haoxuan <haoxuan>
Date: 星期五, 19 四月 2024 17:01:44 +0800
Subject: [PATCH] 嘉联 excel转化pdf的文件裁剪问题调整
---
src/views/productManage/reorderRules/index.vue | 227 ++++++++++++++++++++++++++++++--------------------------
1 files changed, 121 insertions(+), 106 deletions(-)
diff --git a/src/views/productManage/reorderRules/index.vue b/src/views/productManage/reorderRules/index.vue
index a56a44c..91de486 100644
--- a/src/views/productManage/reorderRules/index.vue
+++ b/src/views/productManage/reorderRules/index.vue
@@ -7,22 +7,24 @@
:show-apply="false"
:placeholder="'璇疯緭鍏ヤ綅缃�/浜у搧'"
:amount-view="false"
+ :search-task-map="searchTaskMap"
@addCommonClick="addProductClick"
@searchClick="getList"
@discardBtnClick="discardBtnClick"
- @applyBtnClick="applyBtnClick"
+ @delSelectClick="delSelectClick"
/>
</div>
<div class="list-view">
<div class="table">
<CommonFormTableView
ref="tablelistRef"
- :isinventory="true"
+ :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">
@@ -50,12 +52,7 @@
<script>
import CommonFormTableView from "@/components/makepager/CommonFormTableView"
import pageMixin from "@/components/makepager/pager/mixin/pageMixin"
-import {
- getInventoryAdjustmentList,
- addInventoryAdjustment,
- updateInventoryAdjustment,
- finishInventoryAdjustment
-} from "@/api/operate/inventoryAdjustment"
+import { getReorderRuleList, addReorderRule, updateReorderRule, orderAgain } from "@/api/product/reorderRules"
import { currentTime } from "@/common/config/index"
export default {
name: "ReorderRules",
@@ -75,14 +72,27 @@
isRowClick: false,
locationId: 0,
productId: 0,
- differenceAmount: 0,
amount: 0,
operationId: 0,
- adjustAmount: 0
+ minInventory: 0,
+ maxInventory: 0,
+ orderNumber: 0,
+ unit: "",
+ reorderId: 0,
+ queryProductId: null,
+ searchTaskMap: [],
+ currentRowId: -1
}
},
created() {
this.setTable()
+ let query = this.$route.query
+ if (query) {
+ this.queryProductId = query.productId?.length ? query.productId : null
+ this.pagerOptions.currPage = 1
+ this.searchTaskMap =
+ query.productId?.length > 0 ? [{ productId: this.queryProductId, title: query.productName }] : []
+ }
this.getData()
},
methods: {
@@ -92,40 +102,45 @@
selectBox: false,
selectIndex: true,
tableColumn: [
- { label: "浜у搧", prop: "productName", product: true },
- { label: "浣嶇疆", prop: "locationName", location: true },
+ { label: "浜у搧", prop: "productName", product: true, width: "150px" },
+ { label: "浣嶇疆", prop: "locationName", defaultLocation: true },
{ label: "鍦ㄥ簱鏁伴噺", prop: "amount" },
- { label: "棰勬祴", prop: "forecastAmount" },
+ { label: "棰勬祴鏁伴噺", prop: "prediction" },
{ label: "棣栭�夎矾绾�", prop: "route", route: true },
- { label: "鏈�灏忔暟閲�", prop: "minAmount", inputFloat: true },
- { label: "鏈�澶ф暟閲�", prop: "maxAmount", inputFloat: true },
- { label: "璁㈣喘", prop: "orderAmount", inputFloat: true },
+ { label: "鏈�灏忔暟閲�", prop: "minInventory", inputFloat: true },
+ { label: "鏈�澶ф暟閲�", prop: "maxInventory", inputFloat: true },
+ { label: "璁㈣喘鏁伴噺", prop: "orderNumber", inputFloat: true },
{ label: "璁¢噺鍗曚綅", prop: "unit" }
]
}
},
// 璇锋眰鏁版嵁
async getData() {
- await getInventoryAdjustmentList({
+ await getReorderRuleList({
+ productId: this.queryProductId ? this.queryProductId : null,
page: this.pagerOptions.currPage,
pageSize: this.pagerOptions.pageSize
}).then((res) => {
if (res.code === 200) {
- console.log(res)
const list = res.data.map((item) => {
- item.adjustAmount = 0
- let forecastAmount = 500
- let maxAmount = 600
+ 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,
- forecastAmount: forecastAmount,
- maxAmount: maxAmount,
- adjustAmount: 0,
- isView: maxAmount - forecastAmount > 0 ? true : false
+ isView: item?.minInventory - item?.prediction > 0 ? true : false,
+ orderNumber: orderNum
}
})
this.tableList.tableData = list || []
@@ -134,22 +149,41 @@
}
})
},
+ // 鎶�鏈璐暟閲�
+ caculateOrderNumber(minInventory, maxInventory, prediction) {
+ return maxInventory > minInventory ? maxInventory - prediction : minInventory - prediction
+ },
// 鎿嶄綔杈撳叆
inputContent(val, prop, row) {
console.log(val, prop, row)
- console.log(val - row.amount, "缁撴灉")
- this.adjustAmount = val - row.amount
- this.tableList.tableData[row.index].adjustAmount = this.adjustAmount
- // this.differenceAmount = val
- this.differenceAmount = val
+ if (prop === "minInventory") {
+ this.minInventory = val
+ if (parseFloat(this.minInventory) - parseFloat(this.prediction) > 0) {
+ this.orderNumber = this.caculateOrderNumber(
+ parseFloat(this.minInventory),
+ parseFloat(this.maxInventory),
+ parseFloat(this.prediction)
+ )
+ }
+ } else if (prop === "maxInventory") {
+ this.maxInventory = val
+ if (parseFloat(this.minInventory) - parseFloat(this.prediction) > 0) {
+ this.orderNumber = this.caculateOrderNumber(
+ parseFloat(this.minInventory),
+ parseFloat(this.maxInventory),
+ parseFloat(this.prediction)
+ )
+ }
+ } else if (prop === "orderNumber") {
+ this.orderNumber = val
+ }
},
// 鏂板
addProductClick() {
- console.log(this.tableData)
- console.log(this.addTitle)
this.isSel()
if (this.isNoProduct && this.addTitle === "鏂板缓") {
- this.$refs.tablelistRef.getRuleList()
+ this.$refs.tablelistRef.getProductList()
+ this.$refs.tablelistRef.getLocationList()
this.addTitle = "淇濆瓨"
this.showDiscard = true
this.isRowClick = false
@@ -159,9 +193,11 @@
this.tableData.unshift({
countId: this.countId,
amount: 0,
- adjustAmount: 0,
+ minInventory: 0,
productId: "",
- differenceAmount: 0,
+ maxInventory: 0,
+ orderNumber: 0,
+ prediction: 0,
locationId: 0,
createDate: this.currentTime(),
isSet: true,
@@ -170,24 +206,14 @@
isOrder: true
})
this.locationId = 0
- this.subLocationId = 0
- this.productCategoryId = 0
this.productId = 0
} else {
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
- })
+ let requestUrl = this.currentRowId === 0 ? addReorderRule : updateReorderRule
+ let params = this.saveParams()
+ requestUrl(params)
.then((res) => {
- console.log(res)
if (res.code === 200) {
let tipStr = this.currentRowId === 0 ? "娣诲姞鎴愬姛" : "淇敼鎴愬姛"
this.$message.success(tipStr)
@@ -195,16 +221,30 @@
}
})
.catch((err) => {
- console.log(err)
this.getData()
+ console.log(err)
})
- // }
+ }
+ },
+ saveParams() {
+ return {
+ id: this.reorderId,
+ amount: this.amount,
+ locationId: this.locationId,
+ maxInventory: this.maxInventory,
+ minInventory: this.minInventory,
+ orderNumber: this.orderNumber,
+ prediction: this.prediction,
+ operationId: this.operationId,
+ productId: this.productId,
+ route: this.route,
+ unit: this.unit
}
},
// 鏄惁閫夋嫨浜у搧
isSel() {
for (let i = 0; i < this.tableData.length; i++) {
- if (this.tableData && this.tableData[i].productName.length === 0) {
+ if (this.tableData[i].productName?.length === 0) {
this.isNoProduct = false
break
} else {
@@ -214,72 +254,32 @@
},
// 鍙栨秷
discardBtnClick() {
- 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.getData()
this.addTitle = "鏂板缓"
this.showDiscard = false
},
- // 搴旂敤鍏ㄩ儴
- applyBtnClick() {
- console.log("搴旂敤鍏ㄩ儴")
- },
- // 鍘嗗彶
- handleHistoryClick(row) {
- this.isSel()
- console.log(row)
- if (this.isNoProduct) {
- console.log("鍘嗗彶")
- this.$router.push({
- name: "inventoryAdjustmentHistory",
- params: { locationId: row.locationId, productId: row.productId, baseOperationType: row.baseOperationType }
- })
+ // 璁㈣喘涓�娆�
+ handleOrderOnceClick(row) {
+ let params = {
+ ...row
}
- },
- // 璁剧疆
- handleSetClick(scope) {
- this.isSel()
- if (this.isNoProduct) {
- 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)
+ orderAgain(params).then((res) => {
if (res.code === 200) {
- this.$message.success("搴旂敤鎴愬姛")
+ this.$message.success("璁㈣喘鎴愬姛")
this.getData()
}
})
- },
- // 娓呴櫎
- handleCleanupClick(scope) {
- scope.row.isSet = !scope.row.isSet
},
// 琛岀偣鍑�
tableRowClick(row, rowIndex) {
this.locationId = row.locationId
this.rowIndex = rowIndex
+ this.reorderId = row.id
this.isSel()
if (!this.isNoProduct && this.currentRowId === 0) {
this.$message.error("璇峰畬鎴愬綋鍓嶆柊寤烘垨鍙栨秷鏂板缓")
} else {
- this.currentRowId = row.id
+ this.currentRowId = row.id || 0
this.addTitle = "淇濆瓨"
this.showDiscard = true
this.isRowClick = true
@@ -295,10 +295,13 @@
item.isEdit = true
}
})
- this.differenceAmount = row.differenceAmount
+ this.minInventory = row.minInventory
this.amount = row.amount
this.productId = row.productId
- this.operationId = row.operationId
+ this.maxInventory = row.maxInventory
+ this.orderNumber = row.orderNumber
+ this.prediction = row.prediction
+ this.locationId = row.locationId
}
},
// 鎼滅储
@@ -307,19 +310,31 @@
this.pagerOptions.currPage = 1
this.getData()
},
- // 閫夋嫨浣嶇疆鏂规硶
+ // 閫変腑浣嶇疆鏂规硶
selLocationClick(item, prop) {
console.log(item, prop)
- this.locationId = item.value
+ this.locationId = item?.value ?? item?.id
},
// 閫変腑浜у搧鏂规硶
selProductClick(item) {
- console.log(item)
- this.productId = item.value
+ this.productId = item.productId
+ this.unit = item.unit
+ this.amount = item.amount
+ this.prediction = item.prediction
+ },
+ // 閫変腑璺嚎鏂规硶
+ selRouteClick(item, prop) {
+ console.log(item, prop)
+ this.route = item.label
},
// 鑾峰彇褰撳墠鏃堕棿
currentTime() {
return currentTime()
+ },
+ // 鍒犻櫎浜у搧
+ delSelectClick() {
+ this.queryProductId = ""
+ this.getData()
}
}
}
--
Gitblit v1.8.0