From 9cf4b513cfc65d641d46be6ea424a9f45e4d48f7 Mon Sep 17 00:00:00 2001 From: 石广澎 <shiguangpeng@163.com> Date: 星期二, 12 十二月 2023 11:43:24 +0800 Subject: [PATCH] feat: bug修复 12564 --- admin-web/src/views/stock/accessStock/outbound/edit.vue | 65 ++++++++++++++++++-------------- 1 files changed, 37 insertions(+), 28 deletions(-) diff --git a/admin-web/src/views/stock/accessStock/outbound/edit.vue b/admin-web/src/views/stock/accessStock/outbound/edit.vue index e7d1cd4..f6477e9 100644 --- a/admin-web/src/views/stock/accessStock/outbound/edit.vue +++ b/admin-web/src/views/stock/accessStock/outbound/edit.vue @@ -5,7 +5,7 @@ <el-row :gutter="24" class="headerHeight"> <el-col :span="12"> <el-form-item label="鍑哄簱浠撳簱" prop="warehouseId"> - <el-select v-model="formData.warehouseId" placeholder="璇烽�夋嫨" style="width: 100%"> + <el-select v-model="formData.warehouseId" placeholder="璇烽�夋嫨" clearable style="width: 100%"> <el-option v-for="item in warehouseOptions" :key="item.id" @@ -20,6 +20,7 @@ <el-date-picker v-model="formData.dealTime" type="datetime" + clearable value="yyyy-MM-dd HH:mm:ss" value-format="yyyyMMddHHmmss" placeholder="璇烽�夋嫨鏃ユ湡" @@ -31,7 +32,7 @@ </el-row> <el-row :gutter="24" class="headerHeight"> <el-col :span="24"> - <el-form-item label="鍑哄簱鎵嬬画" prop="procureDoc"> + <el-form-item label="鍑哄簱鎵嬬画" prop="doc"> <upload ref="uploadRef" :settings="uploadSettings" @on-change="uploadChange"></upload> </el-form-item> </el-col> @@ -41,7 +42,7 @@ <el-col :span="12"> <el-form-item label="鐗╁搧鍒嗙被" - :prop="`goods[${goodsIndex}].baseCategoryIds`" + :prop="`goods.${goodsIndex}.baseCategoryId`" :rules="{ required: true, message: '璇烽�夋嫨', @@ -49,9 +50,13 @@ }" > <el-cascader - v-model="goodsItem.baseCategoryIds" + v-model="goodsItem.baseCategoryId" :options="categoryOptions" - :props="{ value: 'id' }" + placeholder="璇烽�夋嫨鐗╁搧鍒嗙被" + :props="{ value: 'id',emitPath: false }" + :show-all-levels="false" + filterable + clearable @change="categoryChange($event, goodsIndex)" style="width: 100%" ></el-cascader> @@ -60,13 +65,14 @@ <el-col :span="12"> <el-form-item label="鐗╁搧鍚嶇О" - :prop="`goods[${goodsIndex}].baseGoodsTemplateId`" + :prop="`goods.${goodsIndex}.baseGoodsTemplateId`" :rules="rules.baseGoodsTemplateId" > <el-select v-model="goodsItem.baseGoodsTemplateId" - placeholder="璇峰厛鎷╃墿鍝佸垎绫�" + :placeholder="goodsItem.baseCategoryId?'璇烽�夋嫨鐗╁搧':'璇峰厛閫夋嫨鐗╁搧鍒嗙被'" filterable + clearable :disabled="!goodsItem.baseCategoryId" style="width: 100%" @change="goodsTemplateChange($event, goodsIndex)" @@ -85,20 +91,22 @@ <el-col :span="12"> <el-form-item label="瑙勬牸鍨嬪彿" - :prop="`goods[${goodsIndex}].modelsIds`" + :prop="`goods.${goodsIndex}.modelsIds`" :rules="{ required: true, - message: '璇烽�夋嫨', + message: '璇烽�夋嫨瑙勬牸鍨嬪彿', trigger: 'change', }" > <el-select v-model="goodsItem.modelsIds" multiple - placeholder="璇峰厛鎷╃墿鍝佸悕绉�" - :disabled="!goodsItem.baseCategoryId" + clearable + :placeholder="goodsItem.baseGoodsTemplateId?'璇烽�夋嫨瑙勬牸鍨嬪彿':'璇峰厛閫夋嫨鐗╁搧鍚嶇О'" + :disabled="!goodsItem.baseGoodsTemplateId" @change="modelChange($event, goodsIndex)" @remove-tag="modelRemoveTag($event, goodsIndex)" + @clear="modelRemoveTag(-1, goodsIndex)" style="width: 100%" > <el-option @@ -131,8 +139,7 @@ <template slot-scope="scope"> <el-form-item label-width="0" - style="margin-bottom: 0" - :prop="`goods[${goodsIndex}].models[${scope.$index}].counts`" + :prop="`goods.${goodsIndex}.models.${scope.$index}.counts`" :rules="rules.counts" > <el-input @@ -182,6 +189,7 @@ import upload from '@/components/upload/index'; import {getUploadUrl} from '@/utils/base'; import {mapGetters} from 'vuex'; +import * as DateFormatter from "@/utils/DateFormatter"; export default { components: { MyButton, winMd, upload }, @@ -212,8 +220,8 @@ modelList: [], //鍨嬪彿鍒楄〃 formData: { warehouseId: '', // 鍑哄簱浠撳簱id - dealTime: '', // 鍑哄簱鏃堕棿 - procureDoc: '', + dealTime: DateFormatter.formatDate(new Date(), 'yyyyMMddhhmmss'), // 鍑哄簱鏃堕棿 + doc: '', goods: [], }, goodsItem: { @@ -231,15 +239,15 @@ worehouseCount: 0, counts: null, // 鎿嶄綔鏁伴噺 unit: null, //鍗曚綅 + totalAmount: 0, //鍗曚綅 }, rules: { - warehouseId: [{ required: true, message: '璇烽�夋嫨', trigger: 'change' }], - dealTime: [{ required: true, message: '璇烽�夋嫨', trigger: 'change' }], - buyType: [{ required: true, message: '璇烽�夋嫨', trigger: 'change' }], - - baseCategoryIds: [{ required: true, message: '璇烽�夋嫨', trigger: 'change' }], - baseGoodsTemplateId: [{ validator: checkGoodsTemplateId, trigger: ['blur', 'change'] }], - modelsIds: [{ required: true, message: '璇烽�夋嫨', trigger: 'change' }], + warehouseId: [{ required: true, message: '璇烽�夋嫨浠撳簱', trigger: 'change' }], + dealTime: [{ required: true, message: '璇烽�夋嫨鏃堕棿', trigger: 'change' }], + doc: [{required: true, message: '璇蜂笂浼犲鎵规墜缁�', trigger: 'change'}], + baseCategoryId: [{ required: true, message: '璇烽�夋嫨鐗╁搧鍒嗙被', trigger: 'change' }], + baseGoodsTemplateId: [{ required: true, message: '璇烽�夋嫨鐗╁搧', trigger: 'change' },{ validator: checkGoodsTemplateId, trigger: ['blur', 'change'] }], + modelsIds: [{ required: true, message: '璇烽�夋嫨瑙勬牸鍨嬪彿', trigger: 'change' }], counts: [{ required: true, message: '璇疯緭鍏�', trigger: 'change' }], }, @@ -247,7 +255,6 @@ title: '涓婁紶', max: 20, // 鏈�澶уぇ灏忥紝鍗曚綅M num: 10, // 鏀寔涓婁紶鍥剧墖涓暟 - accept: '.jpg,.png', // 闄愬埗鏍煎紡 tip: '', // 鎻愮ず 榛樿锛歚鍙兘涓婁紶${this.defaultSettings.num}涓�${this.defaultSettings.accept}鏂囦欢锛屼笖涓嶈秴杩�${this.defaultSettings.max}kb` uploadUrl: getUploadUrl(), // 涓婁紶璺緞 multiple: true, // 鏄惁鏀寔鎵归噺涓婁紶 @@ -304,7 +311,7 @@ // 鑾峰彇鐗╁搧鍚嶇О鍒楄〃 async getgoodsTemplate(id, index) { - await goodsTemplate({ categoryId: id || '' }).then((res) => { + await goodsTemplate({ agencyId: this.userInfo.tenantId, categoryId: id || '' }).then((res) => { if (index || index == 0) { this.$set(this.formData.goods[index], 'goodsOptions', res); } else { @@ -350,10 +357,8 @@ this.formData.goods[index].modelsOptions = []; this.formData.goods[index].modelsIds = []; this.formData.goods[index].models = []; - - this.formData.goods[index].baseCategoryId = e[e.length - 1]; // 鏍规嵁閫変腑鍒嗙被璇锋眰鐗╁搧鍚嶇О鍒楄〃 - this.getgoodsTemplate(e[e.length - 1], index); + this.getgoodsTemplate(e, index); }, // 鐗╁搧鍚嶇О鍒楄〃閫夋嫨 @@ -390,6 +395,10 @@ // 瑙勬牸鍨嬪彿绉婚櫎 modelRemoveTag(e, index) { + if(e===-1){ + this.formData.goods[index].models = [] + return + } let arr = this.formData.goods[index].models; let delIndex = arr.findIndex((v) => v.baseGoodsModelsId == e); this.formData.goods[index].models.splice(delIndex, 1); @@ -398,7 +407,7 @@ // 涓婁紶 uploadChange() { let arr = this.$refs.uploadRef.fileList; - this.formData.procureDoc = JSON.stringify(arr); + this.formData.doc = JSON.stringify(arr); }, // 鐐瑰嚮鏂板鐗╁搧 -- Gitblit v1.9.1