From 4708131e4e9e97ce280b9befbd57b7d405931a66 Mon Sep 17 00:00:00 2001
From: haoxuan <haoxuan>
Date: 星期三, 17 四月 2024 09:48:47 +0800
Subject: [PATCH] 调拨模块 下面的产品显示 辅助单位和辅助数量
---
src/views/overview/OverviewListView.vue | 25 ++++++-
src/api/data.js | 21 +++++++
src/views/productManage/product/AddProductDialog.vue | 102 +++++++++++++++++++++++++++++++++-
3 files changed, 140 insertions(+), 8 deletions(-)
diff --git a/src/api/data.js b/src/api/data.js
index 37e68c5..311de84 100644
--- a/src/api/data.js
+++ b/src/api/data.js
@@ -216,6 +216,25 @@
id: 3,
},
];
+// 鐗╂枡 姣涢噸锛屽噣閲嶇殑鍗曚綅
+const grossUnit=[
+ {
+ name: "g",
+ id: 1,
+ },
+ {
+ name: "kg",
+ id: 2,
+ },
+ {
+ name: "鍚�",
+ id: 3,
+ },
+ {
+ name: "鏂�",
+ id: 4,
+ },
+]
export const getDataByType = (type) => {
if (type == "purchaseStatus") {
return purchaseStatus
@@ -241,5 +260,7 @@
return baseOperationTypeTwo
}else if(type=='purchaseType'){
return purchaseType;
+ }else if(type=='grossUnit'){
+ return grossUnit;
}
}
diff --git a/src/views/overview/OverviewListView.vue b/src/views/overview/OverviewListView.vue
index cce7adf..49354f5 100644
--- a/src/views/overview/OverviewListView.vue
+++ b/src/views/overview/OverviewListView.vue
@@ -130,8 +130,8 @@
{ label: "浜у搧鍨嬪彿", prop: "model" },
{ label: "鏁伴噺", prop: "amount" },
{ label: "璁¢噺鍗曚綅", prop: "unit" },
- { label: "杈呭姪鏁伴噺", prop: "unit" },
- { label: "杈呭姪鍗曚綅", prop: "amount" }
+ { label: "杈呭姪鏁伴噺", prop: "adjunctAmount" },
+ { label: "杈呭姪鍗曚綅", prop: "adjunctUnit" }
],
allotProductColumn: [
{ label: "浜у搧缂栧彿", prop: "id", default: true },
@@ -142,8 +142,8 @@
{ label: "璋冨嚭浣嶇疆", prop: "location" },
{ label: "璋冨叆浣嶇疆", prop: "toLocation" },
{ label: "鏁伴噺", prop: "amount" },
- { label: "杈呭姪鏁伴噺", prop: "unit" },
- { label: "杈呭姪鍗曚綅", prop: "amount" }
+ { label: "杈呭姪鏁伴噺", prop: "adjunctAmount" },
+ { label: "杈呭姪鍗曚綅", prop: "adjunctUnit" }
]
}
},
@@ -350,12 +350,27 @@
// bottom浜у搧淇℃伅鏁版嵁澶勭悊
bottomProductData(arr) {
const list = arr.details.map((item) => {
+ let adjunctUnit=''
+ let adjunctAmount=''
+ if(item.product.moreUnit&&item.product.moreUnitList){
+ let moreUnitList=item.product.moreUnitList
+ if(moreUnitList.length>0){
+ for(let j in moreUnitList){
+ if(moreUnitList[j].floating){
+ adjunctUnit=moreUnitList[j].unit
+ adjunctAmount=moreUnitList[j].amount
+ }
+ }
+ }
+ }
return {
...item,
productName: item.product.name,
unit: item.product.unit,
location: arr.location.name,
- toLocation: arr.toLocation.name
+ toLocation: arr.toLocation.name,
+ adjunctUnit:adjunctUnit,
+ adjunctAmount:adjunctAmount
}
})
this.productTableList.tableInfomation = list
diff --git a/src/views/productManage/product/AddProductDialog.vue b/src/views/productManage/product/AddProductDialog.vue
index 4649572..6c74ea1 100644
--- a/src/views/productManage/product/AddProductDialog.vue
+++ b/src/views/productManage/product/AddProductDialog.vue
@@ -326,7 +326,7 @@
</el-option>
</el-select>
</el-form-item>
- <el-form-item label="閲嶉噺" prop="weight" label-width="80px">
+ <!-- <el-form-item label="閲嶉噺" prop="weight" label-width="80px">
<el-input-number
v-model="editConfig.infomation.weight"
placeholder="璇疯緭鍏�"
@@ -337,7 +337,63 @@
:disabled="!showFooter"
></el-input-number>
<span> kg</span>
- </el-form-item>
+ </el-form-item> -->
+ <el-form-item label="姣涢噸" prop="grossWeight">
+ <el-col :span="15"
+ >
+ <el-input
+ v-model="editConfig.infomation.grossWeight"
+ placeholder="璇疯緭鍏�"
+ :disabled="!showFooter"
+ ></el-input>
+ </el-col>
+ <el-col :span="1"> </el-col>
+ <el-col :span="4">
+ <el-select
+ v-model="editConfig.infomation.grossUnit"
+ placeholder="鍗曚綅"
+ filterable
+ :disabled="!showFooter"
+ style="width: 100%; float: right"
+ :popper-append-to-body="false"
+ >
+ <el-option
+ v-for="ele in grossUnitList"
+ :key="ele.id"
+ :label="ele.name"
+ :value="ele.name"
+ ></el-option>
+ </el-select>
+ </el-col>
+ </el-form-item>
+ <el-form-item label="鍑�閲�" prop="netWeight">
+ <el-col :span="15"
+ >
+ <el-input
+ v-model="editConfig.infomation.netWeight"
+ :disabled="!showFooter"
+ placeholder="璇疯緭鍏�"
+ ></el-input>
+ </el-col>
+ <el-col :span="1"> </el-col>
+ <el-col :span="4">
+ <el-select
+ v-model="editConfig.infomation.netUnit"
+ placeholder="鍗曚綅"
+ filterable
+ :disabled="!showFooter"
+ style="width: 100%; float: right"
+ :popper-append-to-body="false"
+ >
+ <el-option
+ v-for="ele in grossUnitList"
+ :key="ele.id"
+ :label="ele.name"
+ :value="ele.name"
+ ></el-option>
+ </el-select>
+ </el-col>
+ </el-form-item>
<el-form-item label="浣撶Н" prop="volume" label-width="80px">
<el-input-number
v-model="editConfig.infomation.volume"
@@ -615,7 +671,29 @@
// salePrice: [{ required: true, message: "璇疯緭鍏ラ攢鍞环鏍�", trigger: "blur" }],
unit: [{ required: true, message: "璇疯緭鍏ュ崟浣�", trigger: ["blur"] }],
// 閲囪喘绫诲瀷
- purchaseTypeList: [{ required: true, message: "璇烽�夋嫨", trigger: "blur" }]
+ purchaseTypeList: [{ required: true, message: "璇烽�夋嫨", trigger: "blur" }],
+ netWeight: [
+ {
+ required: false,
+ message: "璇峰~鍐�",
+ trigger: "change",
+ },
+ {
+ validator: this.validatorNumFour,
+ trigger: "blur",
+ },
+ ],
+ grossWeight: [
+ {
+ required: false,
+ message: "璇峰~鍐�",
+ trigger: "change",
+ },
+ {
+ validator: this.validatorNumFour,
+ trigger: "blur",
+ },
+ ],
},
memberOptions: [],
productCategoryOptions: [], // 浜у搧绫诲埆
@@ -673,6 +751,7 @@
isView: false,
fileFormdata: null, // 涓婁紶鍥剧墖鍏ュ弬
bomPurchaseTypeList: getDataByType("purchaseType"),
+ grossUnitList:getDataByType("grossUnit"),
unitList: [],
editRow:{
editDialogVisible:false,
@@ -701,6 +780,23 @@
this.getUnitInfo()
},
methods: {
+ validatorNumFour(rule, value, callback) {
+ if (value != "") {
+ if (value == undefined || value == null) {
+ callback(new Error("璇疯緭鍏ユ湁鏁堟暟瀛�"));
+ } else {
+ let reg2 =
+ /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/;
+ if (!reg2.test(value) || value == 0) {
+ callback(new Error("璇峰~鍐欏ぇ浜庨浂鐨�2浣嶅皬鏁扮殑鏁板瓧"));
+ } else {
+ callback();
+ }
+ }
+ } else {
+ callback();
+ }
+ },
// 鍗曚綅
handleUnitShow() {
this.editRow.editDialogVisible = true;
--
Gitblit v1.8.0