From f7163108fef21286a2b447f1958ee3204d7854d0 Mon Sep 17 00:00:00 2001
From: 石广澎 <shiguangpeng@163.com>
Date: 星期六, 02 十二月 2023 11:39:44 +0800
Subject: [PATCH] feat: 部门物品报废 1、分发单选择增加校验 2、明细列表字段对接
---
admin-web/src/views/departmentitem/itemret/returnNote/detail.vue | 17 +-
/dev/null | 11 --
admin-web/src/api/deptGoods/scrap.js | 2
admin-web/src/views/departmentitem/itemscr/scrapping/edit.vue | 204 +++++++++++++++++++---------------------
admin-web/src/views/departmentitem/itemret/retDetails/index.vue | 8
admin-web/src/views/departmentitem/itemret/returnNote/edit.vue | 28 +---
admin-web/src/views/departmentitem/itemscr/scrappDetails/index.vue | 10 +-
admin-web/src/views/departmentitem/itemscr/scrapping/detail.vue | 17 +-
8 files changed, 133 insertions(+), 164 deletions(-)
diff --git a/admin-web/src/api/deptGoods/scrap.js b/admin-web/src/api/deptGoods/scrap.js
index d8a7953..c6538d1 100644
--- a/admin-web/src/api/deptGoods/scrap.js
+++ b/admin-web/src/api/deptGoods/scrap.js
@@ -20,7 +20,7 @@
// 鏂板
export function scrappedAdd(data) {
return request({
- url: '/pc/l/wh/form/scrapped/add',
+ url: '/pc/l/wh/form/scrapped/deptAdd',
method: 'post',
data,
});
diff --git a/admin-web/src/api/stock/deptScrap.js b/admin-web/src/api/stock/deptScrap.js
deleted file mode 100644
index 39ed3ec..0000000
--- a/admin-web/src/api/stock/deptScrap.js
+++ /dev/null
@@ -1,11 +0,0 @@
-import request from '@/utils/request';
-
-// 鐗╁搧鎶ュ簾
-// 鏂板
-export function scrappedAdd(data) {
- return request({
- url: '/pc/l/wh/form/scrapped/deptAdd',
- method: 'post',
- data,
- });
-}
diff --git a/admin-web/src/views/departmentitem/itemret/retDetails/index.vue b/admin-web/src/views/departmentitem/itemret/retDetails/index.vue
index e784083..9f9f062 100644
--- a/admin-web/src/views/departmentitem/itemret/retDetails/index.vue
+++ b/admin-web/src/views/departmentitem/itemret/retDetails/index.vue
@@ -143,19 +143,19 @@
// 鍒椾俊鎭�
columns: [
{title: '鍗曞彿', field: 'businessFormCode', align: 'center', width: 130},
- {title: '鐗╁搧鍚嶇О', field: 'goodsName', align: 'left', minWidth: 140},
+ {title: '鐗╁搧鍚嶇О', field: 'baseGoodsTemplateName', align: 'left', minWidth: 140},
/*{
title: '绫诲埆', field: 'type', align: 'center', formatter: (row) => {
return {value: row.type + '绫�'};
},
},*/
- {title: '瑙勬牸鍨嬪彿', field: 'goodsModelName', align: 'left', minWidth: 130},
- {title: '鎶ュ簾鏁伴噺', field: 'count', align: 'center'},
+ {title: '瑙勬牸鍨嬪彿', field: 'baseGoodsModelsName', align: 'left', minWidth: 130},
+ {title: '鎶ュ簾鏁伴噺', field: 'counts', align: 'center'},
/*{title: '鎵�灞炴満鏋�', field: 'tenantName', align: 'left', minWidth: 130},*/
{title: '閮ㄩ棬', field: 'departmentName', align: 'left', minWidth: 130},
{title: '鍒涘缓浜�', field: 'operatorName', align: 'center', width: 100},
{
- title: '鎿嶄綔鏃堕棿', field: 'createTime', align: 'center',
+ title: '鎿嶄綔鏃堕棿', field: 'dealTime', align: 'center',
width: 160,
formatter: (row) => {
return {value: DateFormatter.LongToDateTime(row.createTime)};
diff --git a/admin-web/src/views/departmentitem/itemret/returnNote/detail.vue b/admin-web/src/views/departmentitem/itemret/returnNote/detail.vue
index b9d24ac..157a8c5 100644
--- a/admin-web/src/views/departmentitem/itemret/returnNote/detail.vue
+++ b/admin-web/src/views/departmentitem/itemret/returnNote/detail.vue
@@ -51,22 +51,21 @@
<span>{{ goodsItem.businessFormCode }}</span>
</el-col>
</el-row>
- <!-- <div v-for="(mItem,k) in goodsItem.models" :key="k">-->
- <div class="card3">
- <el-row v-if="goodsItem.models[0].goodsUserName" :gutter="24" type="flex" align="middle">
+ <div class="card3" v-for="(mItem,k) in mItem" :key="k">
+ <el-row v-if="mItem[0].goodsUserName" :gutter="24" type="flex" align="middle">
<el-col :span="8">
<span>瑙勬牸鍨嬪彿锛�</span>
- <span>{{ goodsItem.models[0].baseGoodsModelsName }}</span>
+ <span>{{ mItem[0].baseGoodsModelsName }}</span>
</el-col>
<el-col :span="4">
<span>鍗曚綅锛�</span>
- <span>{{ goodsItem.models[0].unit }}</span>
+ <span>{{ mItem[0].unit }}</span>
</el-col>
</el-row>
- <el-table :data="goodsItem.models" style="margin-top: 15px">
- <el-table-column prop="baseGoodsModelsName" label="瑙勬牸鍨嬪彿" align="left" v-if="!goodsItem.models[0].goodsUserName"/>
- <el-table-column prop="unit" label="鍗曚綅" align="center" v-if="!goodsItem.models[0].goodsUserName"/>
- <el-table-column prop="goodsUserName" label="浣跨敤浜�" align="left" v-if="goodsItem.models[0].goodsUserName"/>
+ <el-table :data="mItem" style="margin-top: 15px">
+ <el-table-column prop="baseGoodsModelsName" label="瑙勬牸鍨嬪彿" align="left" v-if="!mItem[0].goodsUserName"/>
+ <el-table-column prop="unit" label="鍗曚綅" align="center" v-if="!mItem[0].goodsUserName"/>
+ <el-table-column prop="goodsUserName" label="浣跨敤浜�" align="left" v-if="mItem[0].goodsUserName"/>
<el-table-column prop="useCount" label="鍦ㄧ敤鏁伴噺" align="center"/>
<el-table-column prop="counts" label="鎶ュ簾鏁伴噺" align="center"/>
<el-table-column prop="scrappedName" label="鎶ュ簾鍘熷洜" align="left"/>
diff --git a/admin-web/src/views/departmentitem/itemret/returnNote/edit.vue b/admin-web/src/views/departmentitem/itemret/returnNote/edit.vue
index 7042a05..3969f68 100644
--- a/admin-web/src/views/departmentitem/itemret/returnNote/edit.vue
+++ b/admin-web/src/views/departmentitem/itemret/returnNote/edit.vue
@@ -231,18 +231,6 @@
},
},
data() {
- // 鑷畾涔夋牎楠�
- // 鐗╁搧閲嶅鏍¢獙
- var checkBusinessFormCode = (rule, value, callback) => {
- if (!value) {
- return callback(new Error('璇烽�夋嫨'));
- }
- let temp = this.formData.goods.filter((v) => v.businessFormCode == value);
- if (!temp || temp.length != 1) {
- return callback(new Error('宸查�夎繃姝ゅ垎鍙戝崟'));
- }
- callback();
- };
return {
checkCounts: (rule, value, callback) => {
if (!rule.counts) {
@@ -306,11 +294,7 @@
message: '璇烽�夋嫨鐗╁搧',
trigger: 'change'
}],
- businessFormCode: [{
- required: true,
- message: '璇烽�夋嫨鍒嗗彂鍗�',
- trigger: 'change'
- }, {validator: checkBusinessFormCode, trigger: ['blur', 'change']}],
+ businessFormCode: [{required: true, message: '璇烽�夋嫨鍒嗗彂鍗�', trigger: 'change'}],
counts: [{required: true, message: '璇疯緭鍏�', trigger: 'change'}],
reason: [{required: true, message: '璇烽�夋嫨', trigger: 'change'}],
},
@@ -411,9 +395,8 @@
// 鐗╁搧鍚嶇О鍒楄〃閫夋嫨
goodsTemplateChange(e, index) {
this.formData.goods[index].models = [];
-
+ this.formData.goods[index].businessFormCode = '';
this.formData.goods[index].goodsTemplateName = this.getGoodsTemplateName(e);
-
},
showFenFa(index) {
this.loading = true
@@ -457,6 +440,13 @@
this.$message.error('璇烽�夋嫨鍒嗗彂鍗�');
return
}
+ let bIdx = this.formData.goods.findIndex((v) => v.businessFormCode == this.curFenfa.businessFormCode);
+ let gIdx = this.formData.goods.findIndex((v) => v.baseGoodsTemplateId == this.fenfaSetting.baseGoodsTemplateId);
+
+ if (gIdx !== -1 && gIdx !== this.fenfaSetting.goodsIdx && bIdx !== -1 && bIdx !== this.fenfaSetting.goodsIdx) {
+ this.$message.error('鍚屼竴涓墿鍝佷笉鑳介�夋嫨鐩稿悓鐨勫垎鍙戝崟');
+ return;
+ }
getGoodsUseInfoByFfOrderAndGoodId({
transBusinessId: this.curFenfa.transBusinessId,
baseGoodsTemplateId: this.fenfaSetting.baseGoodsTemplateId
diff --git a/admin-web/src/views/departmentitem/itemscr/scrappDetails/index.vue b/admin-web/src/views/departmentitem/itemscr/scrappDetails/index.vue
index 6045a09..cbc6fcd 100644
--- a/admin-web/src/views/departmentitem/itemscr/scrappDetails/index.vue
+++ b/admin-web/src/views/departmentitem/itemscr/scrappDetails/index.vue
@@ -126,7 +126,7 @@
table: {
showIndex: true, // 鏄惁鏄剧ず搴忓彿
expand: false, // 鏄惁鏄剧ず璇︽儏鏁版嵁
- url: SettingIplatform.apiBaseURL + '/pc/l/wh/form/transfer/department/list', // 璇锋眰鍦板潃
+ url: SettingIplatform.apiBaseURL + '/pc/l/wh/form/scrapped/deptListByModel', // 璇锋眰鍦板潃
// 宸ュ叿鏉�
tools: {
columnsCtrl: {
@@ -143,19 +143,19 @@
// 鍒椾俊鎭�
columns: [
{title: '鍗曞彿', field: 'businessFormCode', align: 'center', width: 130},
- {title: '鐗╁搧鍚嶇О', field: 'goodsName', align: 'left', minWidth: 140},
+ {title: '鐗╁搧鍚嶇О', field: 'baseGoodsTemplateName', align: 'left', minWidth: 140},
/*{
title: '绫诲埆', field: 'type', align: 'center', formatter: (row) => {
return {value: row.type + '绫�'};
},
},*/
- {title: '瑙勬牸鍨嬪彿', field: 'goodsModelName', align: 'left', minWidth: 130},
- {title: '鎶ュ簾鏁伴噺', field: 'count', align: 'center'},
+ {title: '瑙勬牸鍨嬪彿', field: 'baseGoodsModelsName', align: 'left', minWidth: 130},
+ {title: '鎶ュ簾鏁伴噺', field: 'counts', align: 'center'},
/*{title: '鎵�灞炴満鏋�', field: 'tenantName', align: 'left', minWidth: 130},*/
{title: '閮ㄩ棬', field: 'departmentName', align: 'left', minWidth: 130},
{title: '鍒涘缓浜�', field: 'operatorName', align: 'center', width: 100},
{
- title: '鎿嶄綔鏃堕棿', field: 'createTime', align: 'center',
+ title: '鎿嶄綔鏃堕棿', field: 'dealTime', align: 'center',
width: 160,
formatter: (row) => {
return {value: DateFormatter.LongToDateTime(row.createTime)};
diff --git a/admin-web/src/views/departmentitem/itemscr/scrapping/detail.vue b/admin-web/src/views/departmentitem/itemscr/scrapping/detail.vue
index 1b54f95..4e8fbd7 100644
--- a/admin-web/src/views/departmentitem/itemscr/scrapping/detail.vue
+++ b/admin-web/src/views/departmentitem/itemscr/scrapping/detail.vue
@@ -51,22 +51,21 @@
<span>{{ goodsItem.businessFormCode }}</span>
</el-col>
</el-row>
-<!-- <div v-for="(mItem,k) in goodsItem.models" :key="k">-->
- <div class="card3">
- <el-row v-if="goodsItem.models[0].goodsUserName" :gutter="24" type="flex" align="middle">
+ <div class="card3" v-for="(mItem,k) in goodsItem.models" :key="k">
+ <el-row v-if="mItem[0].goodsUserName" :gutter="24" type="flex" align="middle">
<el-col :span="8">
<span>瑙勬牸鍨嬪彿锛�</span>
- <span>{{ goodsItem.models[0].baseGoodsModelsName }}</span>
+ <span>{{ mItem[0].baseGoodsModelsName }}</span>
</el-col>
<el-col :span="4">
<span>鍗曚綅锛�</span>
- <span>{{ goodsItem.models[0].unit }}</span>
+ <span>{{ mItem[0].unit }}</span>
</el-col>
</el-row>
- <el-table :data="goodsItem.models" style="margin-top: 15px">
- <el-table-column prop="baseGoodsModelsName" label="瑙勬牸鍨嬪彿" align="left" v-if="!goodsItem.models[0].goodsUserName"/>
- <el-table-column prop="unit" label="鍗曚綅" align="center" v-if="!goodsItem.models[0].goodsUserName"/>
- <el-table-column prop="goodsUserName" label="浣跨敤浜�" align="left" v-if="goodsItem.models[0].goodsUserName"/>
+ <el-table :data="mItem" style="margin-top: 15px">
+ <el-table-column prop="baseGoodsModelsName" label="瑙勬牸鍨嬪彿" align="left" v-if="!mItem[0].goodsUserName"/>
+ <el-table-column prop="unit" label="鍗曚綅" align="center" v-if="!mItem[0].goodsUserName"/>
+ <el-table-column prop="goodsUserName" label="浣跨敤浜�" align="left" v-if="mItem[0].goodsUserName"/>
<el-table-column prop="useCount" label="鍦ㄧ敤鏁伴噺" align="center"/>
<el-table-column prop="counts" label="鎶ュ簾鏁伴噺" align="center"/>
<el-table-column prop="scrappedName" label="鎶ュ簾鍘熷洜" align="left"/>
diff --git a/admin-web/src/views/departmentitem/itemscr/scrapping/edit.vue b/admin-web/src/views/departmentitem/itemscr/scrapping/edit.vue
index 42f1f36..69d67af 100644
--- a/admin-web/src/views/departmentitem/itemscr/scrapping/edit.vue
+++ b/admin-web/src/views/departmentitem/itemscr/scrapping/edit.vue
@@ -20,12 +20,12 @@
<el-col :span="12">
<el-form-item label="鎶ュ簾鏃堕棿" prop="dealTime">
<el-date-picker
- v-model="formData.dealTime"
- type="datetime"
- value="yyyy-MM-dd HH:mm:ss"
- value-format="yyyyMMddHHmmss"
- placeholder="璇烽�夋嫨鏃ユ湡"
- style="width: 100%"
+ v-model="formData.dealTime"
+ type="datetime"
+ value="yyyy-MM-dd HH:mm:ss"
+ value-format="yyyyMMddHHmmss"
+ placeholder="璇烽�夋嫨鏃ユ湡"
+ style="width: 100%"
>
</el-date-picker>
</el-form-item>
@@ -42,64 +42,64 @@
<el-row :gutter="24">
<el-col :span="12">
<el-form-item
- label="鐗╁搧鍒嗙被"
- :prop="`goods.${goodsIndex}.baseCategoryId`"
- :rules="{
+ label="鐗╁搧鍒嗙被"
+ :prop="`goods.${goodsIndex}.baseCategoryId`"
+ :rules="{
required: true,
message: '璇烽�夋嫨鐗╁搧鍒嗙被',
trigger: 'change',
}"
>
<el-cascader
- v-model="goodsItem.baseCategoryId"
- :options="categoryOptions"
- :props="{ value: 'id',emitPath: false }"
- :show-all-levels="false"
- filterable
- clearable
- @change="categoryChange($event, goodsIndex)"
- style="width: 100%"
+ v-model="goodsItem.baseCategoryId"
+ :options="categoryOptions"
+ :props="{ value: 'id',emitPath: false }"
+ :show-all-levels="false"
+ filterable
+ clearable
+ @change="categoryChange($event, goodsIndex)"
+ style="width: 100%"
></el-cascader>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
- label="鐗╁搧鍚嶇О"
- :prop="`goods.${goodsIndex}.baseGoodsTemplateId`"
- :rules="rules.baseGoodsTemplateId"
+ label="鐗╁搧鍚嶇О"
+ :prop="`goods.${goodsIndex}.baseGoodsTemplateId`"
+ :rules="rules.baseGoodsTemplateId"
>
<el-select
- v-model="goodsItem.baseGoodsTemplateId"
- :placeholder="goodsItem.baseCategoryId?'璇烽�夋嫨鐗╁搧':'璇峰厛閫夋嫨鐗╁搧鍒嗙被'"
- filterable
- clearable
- :disabled="!goodsItem.baseCategoryId"
- style="width: 100%"
- @change="goodsTemplateChange($event, goodsIndex)"
+ v-model="goodsItem.baseGoodsTemplateId"
+ :placeholder="goodsItem.baseCategoryId?'璇烽�夋嫨鐗╁搧':'璇峰厛閫夋嫨鐗╁搧鍒嗙被'"
+ filterable
+ clearable
+ :disabled="!goodsItem.baseCategoryId"
+ style="width: 100%"
+ @change="goodsTemplateChange($event, goodsIndex)"
>
<el-option
- v-for="item in goodsItem.goodsOptions"
- :key="item.id"
- :label="item.goodsName"
- :value="item.id"
+ v-for="item in goodsItem.goodsOptions"
+ :key="item.id"
+ :label="item.goodsName"
+ :value="item.id"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
- label="閫夋嫨鍒嗗彂鍗�"
- :prop="`goods.${goodsIndex}.businessFormCode`"
- :rules="rules.businessFormCode">
+ label="閫夋嫨鍒嗗彂鍗�"
+ :prop="`goods.${goodsIndex}.businessFormCode`"
+ :rules="rules.businessFormCode">
<div @click="showFenFa(goodsIndex)">
<el-input
- placeholder="璇烽�夋嫨鍒嗗彂鍗�"
- readonly
- v-model="goodsItem.businessFormCode"
- :placeholder="goodsItem.baseGoodsTemplateId?'璇烽�夋嫨鍒嗗彂鍗�':'璇峰厛閫夋嫨鐗╁搧'"
- :disabled="!goodsItem.baseGoodsTemplateId"
- suffix-icon="el-icon-arrow-down"
- class="cursor-p"></el-input>
+ placeholder="璇烽�夋嫨鍒嗗彂鍗�"
+ readonly
+ v-model="goodsItem.businessFormCode"
+ :placeholder="goodsItem.baseGoodsTemplateId?'璇烽�夋嫨鍒嗗彂鍗�':'璇峰厛閫夋嫨鐗╁搧'"
+ :disabled="!goodsItem.baseGoodsTemplateId"
+ suffix-icon="el-icon-arrow-down"
+ class="cursor-p"></el-input>
</div>
</el-form-item>
</el-col>
@@ -142,15 +142,15 @@
<el-table-column prop="counts" label="鎶ュ簾鏁伴噺" align="center">
<template slot-scope="{row,$index}">
<el-form-item
- label-width="0"
- :prop="`goods.${goodsIndex}.models.${mIndex}.counts`"
- :rules="[
+ label-width="0"
+ :prop="`goods.${goodsIndex}.models.${mIndex}.counts`"
+ :rules="[
{validator: checkCounts,counts:row.counts,userUseCount: row.userUseCount, trigger: ['blur', 'change']}
]"
>
<el-input
- type="number"
- v-model.number="row.counts"
+ type="number"
+ v-model.number="row.counts"
></el-input>
</el-form-item>
</template>
@@ -158,18 +158,18 @@
<el-table-column prop="counts" label="鎶ュ簾鍘熷洜" align="center">
<template slot-scope="{row,$index}">
<el-form-item
- label-width="0"
- :prop="`goods.${goodsIndex}.models.${mIndex}.scrappedCode`"
- :rules="[
+ label-width="0"
+ :prop="`goods.${goodsIndex}.models.${mIndex}.scrappedCode`"
+ :rules="[
{validator: checkReason,scrappedCode:row.scrappedCode, trigger: ['blur', 'change']}
]"
>
<el-select v-model="row.scrappedCode" placeholder="璇烽�夋嫨">
<el-option
- v-for="item in scrapReasonOptions"
- :key="item.dict_code"
- :label="item.dict_label"
- :value="item.dict_code"
+ v-for="item in scrapReasonOptions"
+ :key="item.dict_code"
+ :label="item.dict_label"
+ :value="item.dict_code"
/>
</el-select>
</el-form-item>
@@ -179,22 +179,22 @@
</div>
<div class="btn-group">
<el-button
- v-if="formData.goods.length > 1"
- name="绉婚櫎"
- type="danger"
- plain
- size="mini"
- @click="removeGoods(goodsIndex)"
+ v-if="formData.goods.length > 1"
+ name="绉婚櫎"
+ type="danger"
+ plain
+ size="mini"
+ @click="removeGoods(goodsIndex)"
>绉婚櫎
</el-button
>
<el-button
- v-if="formData.goods.length - 1 == goodsIndex"
- name="鏂板鐗╁搧"
- type="primary"
- plain
- size="mini"
- @click="addGoods"
+ v-if="formData.goods.length - 1 == goodsIndex"
+ name="鏂板鐗╁搧"
+ type="primary"
+ plain
+ size="mini"
+ @click="addGoods"
>鏂板鐗╁搧
</el-button
>
@@ -251,18 +251,6 @@
},
},
data() {
- // 鑷畾涔夋牎楠�
- // 鐗╁搧閲嶅鏍¢獙
- var checkBusinessFormCode = (rule, value, callback) => {
- if (!value) {
- return callback(new Error('璇烽�夋嫨'));
- }
- let temp = this.formData.goods.filter((v) => v.businessFormCode == value);
- if (!temp || temp.length != 1) {
- return callback(new Error('宸查�夎繃姝ゅ垎鍙戝崟'));
- }
- callback();
- };
return {
checkCounts: (rule, value, callback) => {
if (!rule.counts) {
@@ -332,11 +320,7 @@
message: '璇烽�夋嫨鐗╁搧',
trigger: 'change'
}],
- businessFormCode: [{
- required: true,
- message: '璇烽�夋嫨鍒嗗彂鍗�',
- trigger: 'change'
- }, {validator: checkBusinessFormCode, trigger: ['blur', 'change']}],
+ businessFormCode: [{required: true, message: '璇烽�夋嫨鍒嗗彂鍗�', trigger: 'change'}],
counts: [{required: true, message: '璇疯緭鍏�', trigger: 'change'}],
reason: [{required: true, message: '璇烽�夋嫨', trigger: 'change'}],
},
@@ -379,13 +363,13 @@
// 鑾峰彇閮ㄩ棬鍒楄〃
async getdeptmentList() {
await departmentListAll({tenantId: this.userInfo.tenantId})
- .then((res) => {
- this.departmentOptions = res;
- this.formData.goods.push(JSON.parse(JSON.stringify(this.goodsItem)));
- })
- .catch((err) => {
- console.log('err', err);
- });
+ .then((res) => {
+ this.departmentOptions = res;
+ this.formData.goods.push(JSON.parse(JSON.stringify(this.goodsItem)));
+ })
+ .catch((err) => {
+ console.log('err', err);
+ });
},
removeEmptyChildren(arr) {
@@ -432,6 +416,7 @@
categoryChange(e, index) {
this.formData.goods[index].goodsOptions = [];
this.formData.goods[index].baseGoodsTemplateId = '';
+ this.formData.goods[index].businessFormCode = '';
this.formData.goods[index].goodsTemplateName = '';
this.formData.goods[index].models = [];
// 鏍规嵁閫変腑鍒嗙被璇锋眰鐗╁搧鍚嶇О鍒楄〃
@@ -441,9 +426,8 @@
// 鐗╁搧鍚嶇О鍒楄〃閫夋嫨
goodsTemplateChange(e, index) {
this.formData.goods[index].models = [];
-
this.formData.goods[index].goodsTemplateName = this.getGoodsTemplateName(e);
-
+ this.formData.goods[index].businessFormCode = '';
},
showFenFa(index) {
this.loading = true
@@ -487,6 +471,13 @@
this.$message.error('璇烽�夋嫨鍒嗗彂鍗�');
return
}
+ let bIdx = this.formData.goods.findIndex((v) => v.businessFormCode == this.curFenfa.businessFormCode);
+ let gIdx = this.formData.goods.findIndex((v) => v.baseGoodsTemplateId == this.fenfaSetting.baseGoodsTemplateId);
+
+ if (gIdx !== -1 && gIdx !== this.fenfaSetting.goodsIdx && bIdx !== -1 && bIdx !== this.fenfaSetting.goodsIdx) {
+ this.$message.error('鍚屼竴涓墿鍝佷笉鑳介�夋嫨鐩稿悓鐨勫垎鍙戝崟');
+ return;
+ }
getGoodsUseInfoByFfOrderAndGoodId({
transBusinessId: this.curFenfa.transBusinessId,
baseGoodsTemplateId: this.fenfaSetting.baseGoodsTemplateId
@@ -513,26 +504,27 @@
this.$refs['ruleForm'].validate((valid) => {
if (valid) {
let params = JSON.parse(JSON.stringify(this.formData))
- params.goods.map((g,gid)=>{
+ params.goods.map((g, gid) => {
delete g.goodsOptions
- let arr=[]
- g.models.map(m=>{
- arr=arr.concat(m)
+ let arr = []
+ g.models.map(m => {
+ arr = arr.concat(m)
})
g.models = arr
})
- // console.log('params', params);
- // return
+ if(this.loading) return
+ this.loading = true
scrappedAdd(params)
- .then((res) => {
- this.$message.success('淇濆瓨鎴愬姛锛�');
- this.close();
- this.$emit('search');
- })
- .catch((err) => {
- console.log('edit err', err);
- this.$message.error('淇濆瓨澶辫触');
- });
+ .then((res) => {
+ this.loading = false
+ this.$message.success('淇濆瓨鎴愬姛锛�');
+ this.close();
+ this.$emit('search');
+ })
+ .catch((err) => {
+ this.loading = false
+ this.$message.error('淇濆瓨澶辫触');
+ });
} else {
this.$message.error('鏍¢獙鏈�氳繃锛岃妫�鏌ャ��');
}
--
Gitblit v1.9.1