From 9497f101126c9f03dbd7917a3396696bdac6998c Mon Sep 17 00:00:00 2001 From: 石广澎 <shiguangpeng@163.com> Date: 星期五, 01 十二月 2023 10:56:43 +0800 Subject: [PATCH] feat: 部门物品 报废 --- admin-web/src/views/departmentitem/itemdis/distribution/edit.vue | 71 ++++++++--------------------------- 1 files changed, 17 insertions(+), 54 deletions(-) diff --git a/admin-web/src/views/departmentitem/itemdis/distribution/edit.vue b/admin-web/src/views/departmentitem/itemdis/distribution/edit.vue index f84c322..0e53b54 100644 --- a/admin-web/src/views/departmentitem/itemdis/distribution/edit.vue +++ b/admin-web/src/views/departmentitem/itemdis/distribution/edit.vue @@ -1,11 +1,11 @@ <template> - <win-md class="stock-edit" title="鐗╁搧鍒嗗彂" @close="close" width="900px"> - <el-form v-loading="loading" class="form" ref="ruleForm" :model="formData" :rules="rules" label-width="120px"> + <win-md class="stock-edit" title="鐗╁搧鍒嗗彂" @close="close" width="900px" :loading="loading"> + <el-form class="form" ref="ruleForm" :model="formData" :rules="rules" label-width="120px"> <div class="main-w"> <el-row :gutter="24" class="headerHeight"> <el-col :span="12"> <el-form-item label="閮ㄩ棬" prop="departmentId"> - <el-select ref="department" v-model="formData.departmentId" placeholder="璇烽�夋嫨" style="width: 100%"> + <el-select ref="department" v-model="formData.departmentId" clearable placeholder="璇烽�夋嫨" style="width: 100%"> <el-option v-for="item in departmentOptions" :key="item.id" :label="item.name" :value="item.id" clearable/> </el-select> @@ -61,6 +61,7 @@ :options="categoryOptions" :props="{ value: 'id',emitPath: false }" :show-all-levels="false" + filterable clearable @change="categoryChange($event, goodsIndex)" style="width: 100%" @@ -75,7 +76,7 @@ > <el-select v-model="goodsItem.baseGoodsTemplateId" - placeholder="璇烽�夋嫨鐗╁搧" + :placeholder="goodsItem.baseCategoryId?'璇烽�夋嫨鐗╁搧':'璇峰厛閫夋嫨鐗╁搧鍒嗙被'" filterable clearable :disabled="!goodsItem.baseCategoryId" @@ -97,12 +98,12 @@ <el-form-item label="瑙勬牸鍨嬪彿" :prop="`transferGoods.${goodsIndex}.modelsIds`" - :rules="{required: true,message: '璇烽�夋嫨',trigger: 'change',}"> + :rules="{required: true,message: '璇烽�夋嫨瑙勬牸鍨嬪彿',trigger: 'change',}"> <el-select v-model="goodsItem.modelsIds" multiple - placeholder="璇烽�夋嫨鐗╁搧瑙勬牸鍨嬪彿" - :disabled="!goodsItem.baseCategoryId" + :placeholder="goodsItem.baseGoodsTemplateId?'璇烽�夋嫨瑙勬牸鍨嬪彿':'璇峰厛閫夋嫨鐗╁搧鍚嶇О'" + :disabled="!goodsItem.baseGoodsTemplateId" @change="modelChange($event, goodsIndex)" @remove-tag="modelRemoveTag($event, goodsIndex)" style="width: 100%" @@ -290,17 +291,7 @@ } callback(); }, - loading: false, - buyTypeOptions: [ - { - label: '闆嗛噰', - value: '1', - }, - { - label: '鑷噰', - value: '2', - }, - ], + loading: true, fileList: [], departmentOptions: [], // 閮ㄩ棬鍒楄〃 categoryOptions: [], // 鐗╁搧鍒嗙被鍒楄〃 @@ -342,7 +333,7 @@ createTime: [{required: true, message: '璇烽�夋嫨鍒嗗彂鏃堕棿', trigger: 'change'}], procureDoc: [{required: true, message: '璇蜂笂浼犲鎵规墜缁�', trigger: 'change'}], baseCategoryIds: [{required: true, message: '璇烽�夋嫨', trigger: 'change'}], - baseGoodsTemplateId: [{validator: checkGoodsTemplateId, trigger: ['blur', 'change']}], + baseGoodsTemplateId: [{required: true, message: '璇烽�夋嫨', trigger: 'change'},{validator: checkGoodsTemplateId, trigger: ['blur', 'change']}], modelsIds: [{required: true, message: '璇烽�夋嫨', trigger: 'change'}], transferGoods: [ { @@ -369,7 +360,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, // 鏄惁鏀寔鎵归噺涓婁紶 @@ -386,48 +376,21 @@ }, methods: { async init() { - this.getdeptmentList(); - this.getgoodsTemplate(); - this.getgoodsModel(); + await this.getdeptmentList(); // 鑾峰彇鐗╁搧鍒嗙被鍒楄〃 const treeRes = await getTree(); this.categoryOptions = this.removeEmptyChildren(treeRes); - /*if (this.setting.id) { - const detail = await procureDetail({ id: this.setting.id }); - this.formData = Object.assign(this.formData, detail); - if (this.formData.procureDoc) { - this.fileList = JSON.parse(this.formData.procureDoc); - } - this.$set(this.formData, 'buyType', this.formData.buyType.toString()); - this.formData.procureTime = this.formData.procureTime.toString(); - this.formData.transferGoods.map((item, index) => { - this.$set( - this.formData.transferGoods[index], - 'modelsIds', - item.models.map((v) => v.baseGoodsModelsId), - ); - this.getgoodsTemplate(item.baseCategoryId, index); - this.getgoodsModel(item.baseGoodsTemplateId, index); - item.models.forEach((child, childIndex) => { - this.$set(this.formData.transferGoods[index].models[childIndex], 'priceYuan', child.price / 100); - }); - return item; - }); - }*/ + this.loading = false + this.getgoodsTemplate(); + this.getgoodsModel(); }, - // 鑾峰彇鍏ュ簱浠撳簱鍒楄〃 + // 鑾峰彇閮ㄩ棬鍒楄〃 getdeptmentList() { departmentListAll({tenantId: this.userInfo.tenantId}) .then((res) => { this.departmentOptions = res; - if (!this.setting.id && res.length) { - this.formData.transferGoods.push(JSON.parse(JSON.stringify(this.goodsItem))); - } - if (this.departmentOptions.length && !this.formData.warehouseId) { - // 榛樿閫変腑绗竴涓粨搴� - this.formData.warehouseId = this.departmentOptions[0].id; - } + this.formData.transferGoods.push(JSON.parse(JSON.stringify(this.goodsItem))); }) .catch((err) => { console.log('err', err); @@ -568,7 +531,6 @@ // 鎻愪氦 handleSubmit() { console.log('formData', this.formData); - if(this.loading) return this.$refs['ruleForm'].validate((valid) => { if (valid) { this.formData.transferGoods.map(goods => { @@ -585,6 +547,7 @@ this.formData.departmentName = this.$refs.department.selected.currentLabel this.formData.outAgencyId = this.userInfo.tenantId + if(this.loading) return this.loading = true transferAdd(this.formData) .then((res) => { -- Gitblit v1.9.1