From cabafcce20d0ae702449957dba99fd7d4d32e5f6 Mon Sep 17 00:00:00 2001
From: haoxuan <haoxuan>
Date: 星期五, 22 三月 2024 18:07:24 +0800
Subject: [PATCH] 概述模块的出库保存报错的问题修改+出库产品信息增加调入位置的选择
---
src/views/warehouseManage/bussinessType/AddBussinessType.vue | 365 ++++++++++++++++++++++++++++-----------------------
1 files changed, 199 insertions(+), 166 deletions(-)
diff --git a/src/views/warehouseManage/bussinessType/AddBussinessType.vue b/src/views/warehouseManage/bussinessType/AddBussinessType.vue
index 4d907a1..b3d2827 100644
--- a/src/views/warehouseManage/bussinessType/AddBussinessType.vue
+++ b/src/views/warehouseManage/bussinessType/AddBussinessType.vue
@@ -17,6 +17,7 @@
<span class="btn" style="margin-left: 15px">
<i class="el-icon-s-tools"></i>
<span>鍔ㄤ綔</span>
+ <!-- <el-button plain size="mini" style="margin-left: 15px" @click="deleteClick">鍒犻櫎</el-button> -->
</span>
<el-button v-if="showEdit" plain size="mini" style="margin-left: 15px" @click="editClick">缂栬緫</el-button>
</div>
@@ -26,81 +27,62 @@
ref="form"
:model="editConfig.infomation"
:rules="rules"
- label-position="left"
- label-width="110px"
+ label-position="right"
+ label-width="120px"
size="mini"
- style="height: 60vh; overflow-x: hidden"
>
<div class="basic-info">
<!-- <FormBtnsView :showProduct="true" @productClick="productClick" /> -->
<div class="basic-info-view">
- <el-row>
- <el-col :span="24">
- <div style="margin-left: 20px">鍏ュ簱绫诲瀷</div>
- <el-form-item label="" prop="client_name" label-width="20px">
+ <div class="purchase-view">
+ <div class="left">
+ <el-form-item label="鍗曟嵁绫诲瀷" prop="name">
<el-input
- v-model="editConfig.infomation.client_name"
- placeholder=""
+ v-model="editConfig.infomation.name"
+ placeholder="璇峰~鍐�"
:disabled="!showFooter"
- style="width: 85%"
+ style="width: 100%"
></el-input>
</el-form-item>
- </el-col>
- </el-row>
- <div class="purchase-view">
- <div class="left" style="margin-left: 20px">
- <el-form-item label="浣滀笟绫诲瀷" prop="baseOperationType" :label-width="labelWidth">
+ <el-form-item label="浣滀笟绫诲瀷" prop="baseOperationType">
<el-select
v-model="editConfig.infomation.baseOperationType"
placeholder="璇烽�夋嫨"
size="mini"
- style="width: 85%"
+ style="width: 100%"
:disabled="!showFooter"
>
- <el-option v-for="item in baseOperationTypeList" :key="item.id" :label="item.name" :value="item.id"> </el-option>
+ <el-option v-for="item in baseOperationTypeList" :key="item.id" :label="item.name" :value="item.id">
+ </el-option>
</el-select>
</el-form-item>
-
- <el-form-item label="搴忓彿鍓嶇紑" prop="client_name" :label-width="labelWidth">
- <el-input
- v-model="editConfig.infomation.client_name"
- placeholder=""
- :disabled="!showFooter"
- style="width: 85%"
- ></el-input>
- </el-form-item>
- <el-form-item label="浠撳簱" prop="warehouseId" :label-width="labelWidth">
+ <el-form-item label="榛樿婧愪綅缃�" prop="defaultLocationSrcId">
<el-select
- v-model="editConfig.infomation.warehouseId"
+ v-model="editConfig.infomation.defaultLocationSrcId"
placeholder="璇烽�夋嫨"
size="mini"
- style="width: 85%"
+ style="width: 100%"
:disabled="!showFooter"
>
- <el-option v-for="item in warehouseList" :key="item.id" :label="item.name" :value="item.id">
+ <el-option v-for="item in positionlist" :key="item.id" :label="item.name" :value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item
v-if="editConfig.infomation.baseOperationType !== 1"
- label="淇濈暀鏂瑰紡"
- prop="reservationMethod"
- :label-width="labelWidth"
+ label="榛樿鐩殑浣嶇疆"
+ prop="defaultLocationDestId"
>
- <el-radio-group
- v-model="editConfig.infomation.reservationMethod"
- @input="reserveMethodClick"
+ <el-select
+ v-model="editConfig.infomation.defaultLocationDestId"
+ placeholder="璇烽�夋嫨"
+ size="mini"
+ style="width: 100%"
:disabled="!showFooter"
>
- <div style="margin-top: 8px">
- <el-radio v-for="item in reservationMethodList"
- :key="item.id"
- :value="item.id"
- :label="item.name"
- >
- </el-radio>
- </div>
- </el-radio-group>
+ <el-option v-for="item in positionlist" :key="item.id" :label="item.name" :value="item.id">
+ </el-option>
+ </el-select>
</el-form-item>
<!-- <el-form-item
v-if="editConfig.infomation.resource == '鍦ㄩ瀹氭棩鏈熶箣鍓�'"
@@ -117,17 +99,71 @@
</el-form-item> -->
</div>
<div class="right">
-
- <el-form-item label="閫�璐х被鍨�" prop="returnOperationTypeID">
+ <el-form-item label="搴忓彿鍓嶇紑" prop="prefix">
+ <el-input
+ v-model="editConfig.infomation.prefix"
+ placeholder=""
+ :disabled="!showFooter"
+ style="width: 100%"
+ ></el-input>
+ </el-form-item>
+ <el-form-item
+ v-if="editConfig.infomation.baseOperationType !== 1"
+ label="淇濈暀鏂瑰紡"
+ prop="reservationMethod"
+ >
+ <el-radio-group v-model="editConfig.infomation.reservationMethod" :disabled="!showFooter">
+ <el-radio v-for="item in reservationMethodList" :key="item.id" :value="item.id" :label="item.id"
+ >{{ item.name }}
+ </el-radio>
+ </el-radio-group>
+ </el-form-item>
+ <el-form-item label="浠撳簱" prop="warehouseId">
<el-select
- v-model="editConfig.infomation.returnOperationTypeID"
- v-if="editConfig.infomation.baseOperationType"
+ v-model="editConfig.infomation.warehouseId"
placeholder="璇烽�夋嫨"
size="mini"
- style="width: 85%"
+ style="width: 100%"
:disabled="!showFooter"
>
- <el-option v-for="item in returnOperationTypeList" :key="item.id" :label="item.username" :value="item.id">
+ <el-option v-for="item in warehouseList" :key="item.id" :label="item.name" :value="item.id">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item
+ v-if="editConfig.infomation.baseOperationType === 1"
+ label="榛樿鐩殑浣嶇疆"
+ prop="defaultLocationDestId"
+ >
+ <el-select
+ v-model="editConfig.infomation.defaultLocationDestId"
+ placeholder="璇烽�夋嫨"
+ size="mini"
+ style="width: 100%"
+ :disabled="!showFooter"
+ >
+ <el-option v-for="item in positionlist" :key="item.id" :label="item.name" :value="item.id">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <!-- <el-form-item
+ v-if="editConfig.infomation.baseOperationType"
+ label="閫�璐х被鍨�"
+ prop="returnOperationTypeID"
+ >
+ <el-select
+ v-model="editConfig.infomation.returnOperationTypeID"
+ placeholder="璇烽�夋嫨"
+ size="mini"
+ style="width: 100%"
+ :disabled="!showFooter"
+ >
+ <el-option
+ v-for="item in returnOperationTypeList"
+ :key="item.id"
+ :label="item.username"
+ :value="item.id"
+ >
</el-option>
</el-select>
</el-form-item>
@@ -136,7 +172,7 @@
v-model="editConfig.infomation.createBackorder"
placeholder="璇烽�夋嫨"
size="mini"
- style="width: 85%"
+ style="width: 100%"
:disabled="!showFooter"
>
<el-option v-for="item in createBackorderList" :key="item.id" :label="item.name" :value="item.id">
@@ -144,59 +180,23 @@
</el-select>
</el-form-item>
<el-form-item label="鏄剧ず浣滀笟璇︽儏" prop="showOperations">
- <el-checkbox v-model="editConfig.infomation.showOperations"></el-checkbox>
+ <el-checkbox v-model="editConfig.infomation.showOperations" :disabled="!showFooter"></el-checkbox>
</el-form-item>
<el-form-item
v-if="editConfig.infomation.baseOperationType === 1"
label="棰勫~鍐欎綔涓氳鎯�"
- prop="showOperations"
+ prop="earlyOperations"
>
- <el-checkbox v-model="editConfig.infomation.showOperations"></el-checkbox>
- </el-form-item>
+ <el-checkbox v-model="editConfig.infomation.earlyOperations" :disabled="!showFooter"></el-checkbox>
+ </el-form-item> -->
</div>
- </div>
- <!-- <el-col :span="24">
-
- </el-col> -->
- </div>
- <div class="bottom">
- <div class="purchase-view">
- <div class="left">
- <div class="second-label">浣嶇疆</div>
- <el-form-item label="榛樿婧愪綅缃�" prop="defaultLocationSrcId" style="margin-left: 20px">
- <el-select
- v-model="editConfig.infomation.defaultLocationSrcId"
- placeholder="璇烽�夋嫨"
- size="mini"
- style="width: 85%"
- :disabled="!showFooter"
- >
- <el-option v-for="item in locationList" :key="item.id" :label="item.username" :value="item.id">
- </el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="榛樿鐩殑浣嶇疆" prop="defaultLocationDestId" style="margin-left: 20px">
- <el-select
- v-model="editConfig.infomation.defaultLocationDestId"
- placeholder="璇烽�夋嫨"
- size="mini"
- style="width: 85%"
- :disabled="!showFooter"
- >
- <el-option v-for="item in locationList" :key="item.id" :label="item.username" :value="item.id">
- </el-option>
- </el-select>
- </el-form-item>
- </div>
- <div class="right"></div>
</div>
</div>
</div>
</el-form>
<!-- 灏� -->
- <div v-if="showFooter" slot="footer" class="dialog-footer">
- <!-- <el-button type="primary" size="small" @click="editConfig.visible = false">淇濆苟鎻愪氦瀹℃壒</el-button> -->
- <el-button type="primary" size="small" @click="saveClick('form')">淇濆瓨</el-button>
+ <div slot="footer" class="dialog-footer">
+ <el-button type="primary" size="small" @click="saveClick('form')" :disabled="!showFooter">淇濆瓨</el-button>
<el-button size="small" @click="editConfig.visible = false">鍙栨秷</el-button>
</div>
</el-dialog>
@@ -204,8 +204,14 @@
</template>
<script>
-import { addOperationType,updateOperationType,getWarehouseList,deleteOperationType} from "@/api/warehouseManage/warehouse"
-import { getDataByType } from "@/api/data";
+import {
+ addOperationType,
+ updateOperationType,
+ getWarehouseList,
+ deleteOperationType,
+ getLocationList
+} from "@/api/warehouseManage/warehouse"
+import { getDataByType } from "@/api/data"
export default {
name: "AddBussinessType",
props: {
@@ -227,28 +233,29 @@
dialogWidth: "50%",
editConfig: this.editCommonConfig,
rules: {
- // 鍏ュ簱绫诲瀷
- client_name: [{ required: true, message: "璇疯緭鍏�", trigger: "change" }],
+ // 涓氬姟绫诲瀷
+ name: [{ required: true, message: "璇疯緭鍏�", trigger: "change" }],
// 鍓嶇紑
- number: [{ required: true, message: "璇疯緭鍏�", trigger: "change" }],
- baseOperationType: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }],
+ prefix: [{ required: true, message: "璇疯緭鍏�", trigger: "change" }],
+ baseOperationType: [{ required: true, message: "璇烽�夋嫨", trigger: "change" }]
},
// 浣嶇疆
locationList: [],
- warehouseList:[],
+ warehouseList: [],
// 閫�璐х被鍨�
- returnOperationTypeList:[],
+ returnOperationTypeList: [],
// 浣滀笟绫诲瀷
- baseOperationTypeList:getDataByType('baseOperationType'),
+ baseOperationTypeList: getDataByType("baseOperationType"),
// 鍒涘缓娆犲崟
- createBackorderList:getDataByType('createBackorder'),
+ createBackorderList: getDataByType("createBackorder"),
// 淇濈暀鏂瑰紡
- reservationMethodList:getDataByType('reservationMethod'),
+ reservationMethodList: getDataByType("reservationMethod"),
showButton: true,
showEdit: false, // 鏄惁鏄剧ず缂栬緫鎸夐挳
isDelClick: false, // 鍒犻櫎鎸夐挳鏄惁鍙偣鍑�
showFooter: false, // 鏄惁鏄剧ず鍙栨秷淇濆瓨
- labelWidth: "90px"
+ labelWidth: "90px",
+ positionlist: []
}
},
created() {
@@ -258,23 +265,36 @@
methods: {
// 浠撳簱
async getWarehouse() {
- await getWarehouseList({
- keyword: '',
+ await getLocationList({
+ keyword: "",
page: 0,
pageSize: 0
}).then((res) => {
- if (res.data.code == 200) {
- this.warehouseList = res.data.data?res.data.data:[]
+ if (res.code === 200) {
+ this.positionlist = res.data ? res.data : []
+ this.$forceUpdate()
+ }
+ })
+ await getWarehouseList({
+ keyword: "",
+ page: 0,
+ pageSize: 0
+ }).then((res) => {
+ if (res.code == 200) {
+ this.warehouseList = res.data ? res.data : []
}
})
},
- getList(){
+ getList() {
this.getWarehouse()
},
// 璁剧疆鍒犻櫎/鎵撳嵃/缂栬緫鏄惁鏄剧ず
setBottonView() {
if (this.editConfig.title === "鏂板缓") {
this.showButton = false
+ this.showEdit = false
+ this.showFooter = true
+ } else if (this.editConfig.title === "缂栬緫") {
this.showEdit = false
this.showFooter = true
} else {
@@ -288,14 +308,16 @@
},
// 鍒櫎
deleteClick() {
- let data = JSON.parse(JSON.stringify(this.editConfig.infomation));
+ let data = JSON.parse(JSON.stringify(this.editConfig.infomation))
deleteOperationType({ id: data.id }).then((res) => {
if (res.code === 200) {
- this.editConfig.visible = false;
- this.$message.success("鍒櫎鎴愬姛");
- this.$emit("refresh");
+ this.editConfig.visible = false
+ this.$message.success("鍒櫎鎴愬姛!")
+ this.$emit("refresh")
+ } else {
+ this.$message.warning(res.msg ? res.msg : "鍒犻櫎澶辫触!")
}
- });
+ })
},
// 缂栬緫
editClick() {
@@ -304,73 +326,82 @@
this.showFooter = true
},
saveParams() {
- let data =JSON.parse(JSON.stringify(this.editConfig.infomation));
-
+ let data = JSON.parse(JSON.stringify(this.editConfig.infomation))
+
let params = {
+ // 涓氬姟绫诲瀷
+ name: data.name,
+ // 鍓嶇紑
+ prefix: data.prefix,
// 浣滀笟绫诲瀷
- baseOperationType:data.baseOperationType,
+ baseOperationType: data.baseOperationType,
// 閫�璐х被鍨�
- returnOperationTypeID:data.returnOperationTypeID,
+ returnOperationTypeID: data.returnOperationTypeID,
// 鍒涘缓娆犲崟
- createBackorder:data.createBackorder,
+ createBackorder: data.createBackorder,
// 浠撳簱
- warehouseId:data.warehouseId,
+ warehouseId: data.warehouseId,
// 鏄剧ず浣滀笟璇︽儏
- showOperations:data.showOperations,
+ showOperations: data.showOperations ? data.showOperations : false,
+ earlyOperations: data.earlyOperations,
// 淇濈暀鏂瑰紡
- reservationMethod:data.reservationMethod,
+ reservationMethod: data.reservationMethod ? data.reservationMethod : 0,
// 榛樿鍘熶綅缃�
- defaultLocationSrcId:data.defaultLocationSrcId,
+ defaultLocationSrcId: data.defaultLocationSrcId,
// 榛樿鐩爣浣嶇疆
- defaultLocationDestId:data.defaultLocationDestId,
+ defaultLocationDestId: data.defaultLocationDestId
}
- if(data.id){
- params.id=data.id
+ if (data.id) {
+ params.id = data.id
}
- return params;
+ return params
},
// 淇濆瓨
saveClick(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
- const params = this.saveParams();
- if (this.editConfig.title === "鏂板缓") {
- addOperationType(params).then((res) => {
- if (res.code === 200) {
- this.editConfig.visible = false;
- this.$message.success("娣诲姞鎴愬姛");
- this.$emit('refresh')
- }
- });
- } else {
- updateOperationType(params).then((res) => {
- if (res.code === 200) {
- this.editConfig.visible = false;
- this.$message.success("缂栬緫鎴愬姛");
- this.$emit('refresh')
- }
- });
- }
- }else {
- console.log("error submit");
- return false;
+ const params = this.saveParams()
+ if (this.editConfig.title === "鏂板缓") {
+ addOperationType(params).then((res) => {
+ if (res.code === 200) {
+ this.editConfig.visible = false
+ this.$message.success("娣诲姞鎴愬姛!")
+ this.$emit("refresh")
+ } else {
+ this.$message.warning(res.msg ? res.msg : "娣诲姞澶辫触!")
+ }
+ })
+ } else {
+ updateOperationType(params).then((res) => {
+ if (res.code === 200) {
+ this.editConfig.visible = false
+ this.$message.success("缂栬緫鎴愬姛!")
+ this.$emit("refresh")
+ } else {
+ this.$message.warning(res.msg ? res.msg : "缂栬緫澶辫触!")
+ }
+ })
+ }
+ } else {
+ console.log("error submit")
+ return false
}
- });
+ })
},
// 鍒犻櫎
delClick() {},
// 浜у搧
productClick() {
this.$router.push({ path: "/productManage/productList", query: { name: "浜у搧" } })
- },
- // 淇濈暀鏂瑰紡
- reserveMethodClick(val) {
- if (val === "鍦ㄩ瀹氭棩鏈熶箣鍓�") {
- this.labelWidth = "140px"
- } else {
- this.labelWidth = "80px"
- }
}
+ // 淇濈暀鏂瑰紡
+ // reserveMethodClick(val) {
+ // if (val === "鍦ㄩ瀹氭棩鏈熶箣鍓�") {
+ // this.labelWidth = "140px"
+ // } else {
+ // this.labelWidth = "80px"
+ // }
+ // }
}
}
</script>
@@ -397,13 +428,15 @@
border-bottom: 1px solid #e9e9e9;
}
.basic-info {
- height: calc(100% - 80px);
- overflow: auto;
- margin: 20px;
- border: 1px solid #dcdfe6;
- box-shadow: inset 0 0 2px #dee2e6;
- -moz-box-shadow: inset 0 0 2px #dee2e6;
- -webkit-box-shadow: inset 0 0 2px #dee2e6;
+ // height: 350px;
+ // overflow-y: auto;
+ // overflow-x: hidden;
+ width: calc(100% - 60px);
+ margin: 30px;
+ // border: 1px solid #dcdfe6;
+ // box-shadow: inset 0 0 2px #dee2e6;
+ // -moz-box-shadow: inset 0 0 2px #dee2e6;
+ // -webkit-box-shadow: inset 0 0 2px #dee2e6;
.content-number {
display: flex;
justify-content: right;
--
Gitblit v1.8.0