From 1888b426ff2b6a529f5fdef0f0453dadef71824b Mon Sep 17 00:00:00 2001 From: haoxuan <haoxuan> Date: 星期三, 17 四月 2024 10:17:38 +0800 Subject: [PATCH] 隐藏多单位的问题 --- src/views/productManage/product/AddProductDialog.vue | 134 +++++++++++++++++++++++++++++++------------- 1 files changed, 93 insertions(+), 41 deletions(-) diff --git a/src/views/productManage/product/AddProductDialog.vue b/src/views/productManage/product/AddProductDialog.vue index 935a066..48f2ad1 100644 --- a/src/views/productManage/product/AddProductDialog.vue +++ b/src/views/productManage/product/AddProductDialog.vue @@ -130,23 +130,25 @@ </el-option> </el-select> </el-form-item> - <el-form-item label="鍗曚綅old" prop="unit"> + <!-- <el-form-item label="鍗曚綅old" prop="unit"> <el-input v-model="editConfig.infomation.unit" placeholder="璇疯緭鍏�" style="width: 85%" :disabled="!showFooter" ></el-input> - </el-form-item> + </el-form-item> --> <el-form-item label="鍗曚綅" prop="unit"> <el-select + :disabled="!showFooter" v-model="editConfig.infomation.unit" placeholder="鍗曚綅" filterable - @change="$forceUpdate()" - style="width: calc(100% - 30px)" + @change="Gtechange" + style="width: calc(85% - 0px)" > + <!-- style="width: calc(85% - 110px)" --> <el-option v-for="ele in unitList" :key="ele.id" @@ -159,6 +161,14 @@ style="font-size: 20px; color: gray" @click="handleUnitShow" ></i> + <!-- <el-checkbox + class="margin_left_10px" + :disabled="editConfig.infomation.unit&&showFooter?false:true" + v-model="editConfig.infomation.moreUnit" + @change="moreUnitChange" + ></el-checkbox + > --> + <!-- <span class="margin_left_10px cursor_pointer" @click="handleUnitMore">鍚敤澶氬崟浣�</span> --> </el-form-item> <el-form-item label="浜у搧鏍囩" prop="productTagName"> @@ -536,24 +546,32 @@ </el-dialog> <BomDialog ref="editDialog" - @sucessSet="handleGetBomKindDictList" + :editRow="editRow" @handleConfirmSave="handleConfirmSave" :workList="unitList" title="璁¢噺鍗曚綅" ></BomDialog> + <UnitMoreDialog + ref="unitMoreDialog" + @saveUnitMore="saveUnitMore" + :workList="unitList" + :dataList="editConfig.infomation.moreUnitList" + title="鍚敤澶氬崟浣�" + ></UnitMoreDialog> </div> </template> <script> import IconCropper from "./IconCropper" import { getProductCategoryList } from "@/api/product/productCategory" -import { getProductList, addProduct, updateProduct } from "@/api/product/product" -import { uploadFiles, getUserInfo } from "@/api/common/other" +import { getProductList, addProduct, updateProduct,saveUnitDict } from "@/api/product/product" +import { uploadFiles, getUserInfo, } from "@/api/common/other" import codeMixin from "@/components/mixin/codeMixin" import { getDataByType } from "@/api/data" import BomDialog from "./components/bomDialog"; +import {getUnitInfo, } from "@/api/basic/standard"; // import { postGetSaveSUnitDict } from "@/api/basic/standard"; - +import UnitMoreDialog from "./components/UnitMoreDialog"; export default { mixins: [codeMixin], @@ -574,6 +592,7 @@ components: { IconCropper, BomDialog, + UnitMoreDialog, }, computed: { modalTitle() { @@ -595,7 +614,7 @@ id: [{ required: true, validator: this.validateCheckCode, trigger: ["change", "blur"] }], model: [{ required: true, message: "璇烽�夋嫨鐗╂枡绫诲瀷", trigger: "change" }], // salePrice: [{ required: true, message: "璇疯緭鍏ラ攢鍞环鏍�", trigger: "blur" }], - unit: [{ required: true, message: "璇疯緭鍏ュ崟浣�", trigger: ["change", "blur"] }], + unit: [{ required: true, message: "璇疯緭鍏ュ崟浣�", trigger: ["blur"] }], // 閲囪喘绫诲瀷 purchaseTypeList: [{ required: true, message: "璇烽�夋嫨", trigger: "blur" }] }, @@ -656,6 +675,10 @@ fileFormdata: null, // 涓婁紶鍥剧墖鍏ュ弬 bomPurchaseTypeList: getDataByType("purchaseType"), unitList: [], + editRow:{ + editDialogVisible:false, + BomTableData:[] + } } }, created() { @@ -676,44 +699,51 @@ this.setOptionalFieldsToEmpty() this.formInfo() this.getUserInfo() + this.getUnitInfo() }, methods: { // 鍗曚綅 handleUnitShow() { - this.handleGetBomKindDictList(); - this.$refs.editDialog.editDialogVisible = true; + this.editRow.editDialogVisible = true; }, - // 鍗曚綅 - handleGetBomKindDictList(val) { - console.log(val) - // postGetUnitDictList().then((res) => { - // this.unitList = res.data; - // if (val) { - // for (let i in this.unitList) { - // if (this.unitList[i].isDefault) { - // this.form.unit = this.form.unit - // ? this.form.unit - // : this.unitList[i].name; - // // this.$set(this.form, "unit", this.form.unit); - // break; - // } - // } - // } - // }); + // 鍚敤澶氬崟浣� + handleUnitMore(){ + if(this.editConfig.infomation.unit){ + this.$refs.unitMoreDialog.editDialogVisible = true; + }else{ + this.$message.error('璇峰厛閫夋嫨鍗曚綅锛�') + } }, - handleConfirmSave(data) { - console.log(data) - // postGetSaveSUnitDict({ data: data }).then((res) => { - // if (res.code == 200) { - // this.$message({ - // message: "鎿嶄綔鎴愬姛锛�", - // type: "success", - // }); - // this.$refs.editDialog.editDialogVisible = false; - // this.handleGetBomKindDictList(); - // } - // }); - this.$refs.editDialog.editDialogVisible = false; + saveUnitMore(list){ + this.editConfig.infomation.moreUnitList=list + }, + // 鍚敤澶氬崟浣嶇殑寮�鍏� + moreUnitChange(){ + let string=false; + if(this.editConfig.infomation.moreUnitList&&this.editConfig.infomation.moreUnitList.length>0){ + for(let i in this.editConfig.infomation.moreUnitList){ + if(this.editConfig.infomation.moreUnitList[i].unit&&this.editConfig.infomation.moreUnitList[i].amount){ + string=true; + break; + } + } + } + if(!string){ + this.editConfig.infomation.moreUnit=false + this.$message.error('璇峰厛閰嶇疆澶氬崟浣嶏紒') + } + }, + handleConfirmSave(dataList) { + saveUnitDict({ data: dataList }).then((res) => { + if (res.code == 200) { + this.$message({ + message: "鎿嶄綔鎴愬姛锛�", + type: "success", + }); + this.getUnitInfo() + } + }); + this.editRow.editDialogVisible = false; }, // 鑾峰彇鐧诲綍鐢ㄦ埛淇℃伅 @@ -852,6 +882,11 @@ if (this.editConfig.title == "鏂板缓") { params.codeStandardID = this.autoCodeObj.codeStandardID params.autoIncr = this.autoCodeObj.maxAutoIncr + } + if(params.moreUnitList.length>0){ + for(let i in params.moreUnitList){ + params.moreUnitList[i].amount=Number(params.moreUnitList[i].amount) + } } requestUrl(params).then((res) => { console.log(res) @@ -992,6 +1027,23 @@ } else if (val === "閿�鍞�") { this.showSale = param } + }, + Gtechange(){ + this.$forceUpdate() + }, + // 鑾峰彇鍗曚綅鍒楄〃鏁版嵁 + async getUnitInfo(){ + await getUnitInfo().then((res)=>{ + if( this.editConfig.title==="鏂板缓"){ + res.data.map((item)=>{ + if(item.isDefault){ + this.editConfig.infomation.unit=item.name + } + }) + } + this.editRow.BomTableData = res.data; + this.unitList=res.data + }) } } } -- Gitblit v1.8.0