提交 4f1f332f 编写于 作者: changdi.hao's avatar changdi.hao

优化编辑商品和新建商品

上级 3ff96ca9
...@@ -11,9 +11,9 @@ ...@@ -11,9 +11,9 @@
</el-col> </el-col>
</el-row> </el-row>
<el-form <el-form
ref="formData" ref="formData3"
:model="formData" :model="formData3"
:rules="rules" :rules="rules3"
label-width="150px" label-width="150px"
label-suffix=":" label-suffix=":"
class="basic-form" class="basic-form"
...@@ -25,7 +25,7 @@ ...@@ -25,7 +25,7 @@
<el-col :span="13"> <el-col :span="13">
<el-input <el-input
size="small" size="small"
v-model="formData.goodsName" v-model="formData3.goodsName"
placeholder="请输入商品名称" placeholder="请输入商品名称"
show-word-limit show-word-limit
maxlength="60" maxlength="60"
...@@ -40,7 +40,7 @@ ...@@ -40,7 +40,7 @@
type="textarea" type="textarea"
rows="4" rows="4"
size="small" size="small"
v-model="formData.goodsDescription" v-model="formData3.goodsDescription"
placeholder="请输入商品介绍" placeholder="请输入商品介绍"
maxlength="40" maxlength="40"
show-word-limit show-word-limit
...@@ -115,11 +115,11 @@ ...@@ -115,11 +115,11 @@
<el-form-item label="商品类型" prop="goodsType"> <el-form-item label="商品类型" prop="goodsType">
<el-select <el-select
v-model="formData.goodsType" v-model="formData3.goodsType"
placeholder="请选择商品类型" placeholder="请选择商品类型"
size="small" size="small"
:disabled="isEdit" :disabled="isEdit"
@change="getGoodsTypes(formData.goodsType,2)"> @change="getGoodsTypes(formData3.goodsType,2)">
<el-option <el-option
v-for="(item,index) in oneLever" v-for="(item,index) in oneLever"
:key="item.categoryName+'-'+index" :key="item.categoryName+'-'+index"
...@@ -129,7 +129,7 @@ ...@@ -129,7 +129,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="是否支持售后" prop="expressLimitFlag" v-if="storeType < 3"> <el-form-item label="是否支持售后" prop="expressLimitFlag" v-if="storeType < 3">
<el-radio-group v-model="formData.expressLimitFlag" :disabled="!hasRepoFlag"> <el-radio-group v-model="formData3.expressLimitFlag" :disabled="!hasRepoFlag">
<el-radio :label="1"></el-radio> <el-radio :label="1"></el-radio>
<el-radio :label="0"></el-radio> <el-radio :label="0"></el-radio>
</el-radio-group> </el-radio-group>
...@@ -917,8 +917,8 @@ ...@@ -917,8 +917,8 @@
import { updateGoods ,updateStock,dosageAll,getDeparts,getGoodsList, getGoodDetails, updateGoodsV2, getHospitalInfoByStoreId, getCheckPackageIdList, getTypeCodeList } from '@/utils/goods'; import { updateGoods ,updateStock,dosageAll,getDeparts,getGoodsList, getGoodDetails, updateGoodsV2, getHospitalInfoByStoreId, getCheckPackageIdList, getTypeCodeList } from '@/utils/goods';
import { getStoreAdressRepot } from "@/utils/shop"; import { getStoreAdressRepot } from "@/utils/shop";
import Cropper from '@/components/common/cropper.vue' import Cropper from '@/components/common/cropper.vue'
import { originRules1, originRules2, originRules } from './rules'; import { originRules1, originRules2, originRules, originRules3 } from './rules';
import { originForm1, originForm2, originForm } from './forms'; import { originForm1, originForm2, originForm, originForm3 } from './forms';
export default { export default {
components: { components: {
...@@ -1010,6 +1010,7 @@ ...@@ -1010,6 +1010,7 @@
formData: JSON.parse(JSON.stringify(originForm)), // 通用信息 formData: JSON.parse(JSON.stringify(originForm)), // 通用信息
formData1: JSON.parse(JSON.stringify(originForm1)), // 基本信息 formData1: JSON.parse(JSON.stringify(originForm1)), // 基本信息
formData2: JSON.parse(JSON.stringify(originForm2)), formData2: JSON.parse(JSON.stringify(originForm2)),
formData3: JSON.parse(JSON.stringify(originForm3)),
buyLimitDtoList:[], buyLimitDtoList:[],
rules: {}, rules: {},
rules1: {}, rules1: {},
...@@ -1077,6 +1078,7 @@ ...@@ -1077,6 +1078,7 @@
this.rules = originRules; this.rules = originRules;
this.rules1 = originRules1; this.rules1 = originRules1;
this.rules2 = originRules2; this.rules2 = originRules2;
this.rules3 = originRules3
// this.rules2.barCode = originRules.barCode; // this.rules2.barCode = originRules.barCode;
this.jumPathThird = '/goods-manage?storeId=' + storeId +'&commissionFlag=' + this.commissionFlag +'&storeType=' + this.storeType; this.jumPathThird = '/goods-manage?storeId=' + storeId +'&commissionFlag=' + this.commissionFlag +'&storeType=' + this.storeType;
...@@ -1158,6 +1160,7 @@ ...@@ -1158,6 +1160,7 @@
this.formData = {...this.formData, ...goodsInfo}; this.formData = {...this.formData, ...goodsInfo};
this.formData2 = medicalService; this.formData2 = medicalService;
this.formData = { ...this.formData, ...this.formData2 }; this.formData = { ...this.formData, ...this.formData2 };
this.formData3 = { ...goodsInfo};
this.buyLimitDtoList = buyLimitDtoList; this.buyLimitDtoList = buyLimitDtoList;
this.hasRepoFlag = hasRepoFlag; this.hasRepoFlag = hasRepoFlag;
this.$set(this.formData2, 'suitableArr', this.formData.suitable.split(',')); this.$set(this.formData2, 'suitableArr', this.formData.suitable.split(','));
...@@ -1201,6 +1204,7 @@ ...@@ -1201,6 +1204,7 @@
const {goodsList, hasRepoFlag } = res.data; const {goodsList, hasRepoFlag } = res.data;
this.formData1 = goodsList[0]; this.formData1 = goodsList[0];
this.formData = goodsList[0]; this.formData = goodsList[0];
this.formData3 = goodsList[0];
this.hasRepoFlag = hasRepoFlag; this.hasRepoFlag = hasRepoFlag;
this.buyLimitDtoList = this.formData.buyLimitDtoList; this.buyLimitDtoList = this.formData.buyLimitDtoList;
this.formData.optPrice = this.formData.costPrice/100; this.formData.optPrice = this.formData.costPrice/100;
...@@ -1482,15 +1486,15 @@ ...@@ -1482,15 +1486,15 @@
complete() { complete() {
this.formData1.leastCount = this.formData.leastCount; this.formData1.leastCount = this.formData.leastCount;
this.formData1.mostCount = this.formData.mostCount; this.formData1.mostCount = this.formData.mostCount;
let formNameList = ['formData', 'formData1', 'formData2']; let formNameList = ['formData', 'formData1', 'formData2', 'formData3'];
// let formName = "formData"; // let formName = "formData";
if(this.goodsType == 337 ){ if(this.goodsType == 337 ){
formNameList = ['formData', 'formData2']; formNameList = ['formData', 'formData2', 'formData3'];
this.formData = { ...this.formData, ...this.formData2 }; this.formData = { ...this.formData, ...this.formData2,...this.formData3 };
}else{ }else{
formNameList = ['formData', 'formData1']; formNameList = ['formData', 'formData1', 'formData3'];
this.formData = { ...this.formData, ...this.formData1 }; this.formData = { ...this.formData, ...this.formData1,...this.formData3 };
} }
for(let i=0;i<this.fileGoodsList.length;i++){ for(let i=0;i<this.fileGoodsList.length;i++){
this.fileGoodsList[i].imageSort = i+1 this.fileGoodsList[i].imageSort = i+1
...@@ -1512,11 +1516,11 @@ ...@@ -1512,11 +1516,11 @@
this.isgoodsImages = this.formData.goodsImages.length == 0 ? false :true; this.isgoodsImages = this.formData.goodsImages.length == 0 ? false :true;
// 如果是【药品】类型的商品 // 如果是【药品】类型的商品
if(this.isMedic){ // if(this.isMedic){
if(!this.isgoodsImages){ if(!this.isgoodsImages){
return; return;
} }
} // }
// 如果是【检测服务】类型的商品 // 如果是【检测服务】类型的商品
if(this.isCheckServe){ if(this.isCheckServe){
this.formData.goodsCheckImages = this.goodsCheckList; this.formData.goodsCheckImages = this.goodsCheckList;
......
...@@ -69,7 +69,17 @@ const form = { ...@@ -69,7 +69,17 @@ const form = {
expressLimitFlag: 0, //是否支持退货退款 expressLimitFlag: 0, //是否支持退货退款
}; };
const form3 = {
goodsName: "",
goodsDescription: "",
goodsHeaderImages: [],
goodsVideoList: [],
goodsType: "",
expressLimitFlag: 0, //是否支持退货退款
};
export const originForm1 = form1; export const originForm1 = form1;
export const originForm2 = form2; export const originForm2 = form2;
export const originForm3 = form3;
export const originForm = form; export const originForm = form;
...@@ -89,22 +89,6 @@ const rules = { ...@@ -89,22 +89,6 @@ const rules = {
{ required: true, message: "请输入条形码", trigger: "submit" }, { required: true, message: "请输入条形码", trigger: "submit" },
{ validator: checkBarcode, trigger: "submit" } { validator: checkBarcode, trigger: "submit" }
], ],
goodsName: [
{ required: true, message: "请输入商品名称", trigger: "submit" },
{ validator: checkProjectStr, trigger: "submit" }
],
goodsDescription: [
{required: true, message: "请输入商品介绍", trigger: "submit"}
],
goodsHeaderImages: [
{ required: true, message: "请上传商品头图", trigger: "blur" }
],
goodsType:[
{ required: true, message: "请选择商品类型", trigger: "change" }
],
hcd:[
{ required: true, message: "请选择是否支持退货退款", trigger: "change" }
],
optPrice: [ optPrice: [
{ required: true, message: "请输入价格", trigger: "blur" }, { required: true, message: "请输入价格", trigger: "blur" },
], ],
...@@ -129,8 +113,22 @@ const rules = { ...@@ -129,8 +113,22 @@ const rules = {
// ], // ],
} }
const rules3 = {
goodsName: [
{ required: true, message: "请输入商品名称", trigger: "submit" },
{ validator: checkProjectStr, trigger: "submit" },
],
goodsDescription: [
{ required: true, message: "请输入商品介绍", trigger: "submit" },
],
goodsHeaderImages: [
{ required: true, message: "请上传商品头图", trigger: "blur" },
],
goodsType: [{ required: true, message: "请选择商品类型", trigger: "change" }],
};
export const originRules1 = rules1; export const originRules1 = rules1;
export const originRules2 = rules2; export const originRules2 = rules2;
export const originRules3 = rules3;
export const originRules = rules; export const originRules = rules;
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册