提交 c364810b 编写于 作者: xinglee23's avatar xinglee23

feat: 下单限购

上级 6add88ed
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
"private": true, "private": true,
"license": "GPL", "license": "GPL",
"scripts": { "scripts": {
"dev": "cross-env BUILD_ENV=dev node build/dev-server.js", "dev": "cross-env BUILD_ENV=test node build/dev-server.js",
"local": "cross-env BUILD_ENV=development node build/dev-server.js", "local": "cross-env BUILD_ENV=development node build/dev-server.js",
"build": "node build/build.js", "build": "node build/build.js",
"build:dev": "cross-env BUILD_ENV=dev node build/build.js", "build:dev": "cross-env BUILD_ENV=dev node build/build.js",
......
...@@ -388,7 +388,7 @@ ...@@ -388,7 +388,7 @@
<div class="part-tit">销售信息</div> <div class="part-tit">销售信息</div>
<div class="inline"> <div class="inline">
<el-form-item label="销售方式" prop="saleType"> <el-form-item label="销售方式" prop="saleType">
<el-radio-group v-model="formData.saleType" size="small"> <el-radio-group @change="handleSaleTypeChange" v-model="formData.saleType" size="small">
<el-radio :label="1">零售</el-radio> <el-radio :label="1">零售</el-radio>
<el-radio :label="2" :disabled="commissionFlag == 1" <el-radio :label="2" :disabled="commissionFlag == 1"
>批发</el-radio >批发</el-radio
...@@ -519,8 +519,7 @@ ...@@ -519,8 +519,7 @@
</el-col> </el-col>
</el-form-item> </el-form-item>
</div> </div>
<div class="inline">
<div class="inline" v-if="formData.saleType == 1">
<el-form-item <el-form-item
label="单次购买上限" label="单次购买上限"
prop="mostCount" prop="mostCount"
...@@ -616,7 +615,7 @@ ...@@ -616,7 +615,7 @@
</p> </p>
</el-form-item> </el-form-item>
</div> </div>
<div class="basic-item-icon" v-if="formData.saleType == 1"> <div class="basic-item-icon">
<div class="part-tit">限购条件</div> <div class="part-tit">限购条件</div>
<div v-for="(item, index) in buyLimitDtoList" :key="index"> <div v-for="(item, index) in buyLimitDtoList" :key="index">
<el-form-item label="限制条件"> <el-form-item label="限制条件">
...@@ -631,8 +630,10 @@ ...@@ -631,8 +630,10 @@
size="small" size="small"
@change="changeLimitUserType(item, index)" @change="changeLimitUserType(item, index)"
> >
<el-radio :label="1">开单人</el-radio> <!-- <el-radio :label=1>开单人</el-radio>
<el-radio :label="2">患者</el-radio> <el-radio :label=2>患者</el-radio>
<el-radio :label=3>单个机构</el-radio> -->
<el-radio v-for="(i, idx) in userTypeList" :label="i.value" :key="idx">{{ i.label }}</el-radio>
</el-radio-group> </el-radio-group>
</el-col> </el-col>
</el-form-item> </el-form-item>
...@@ -1083,6 +1084,25 @@ export default { ...@@ -1083,6 +1084,25 @@ export default {
}; };
}, },
computed: { computed: {
userTypeList() {
const wholesale = [
{
label: '开单人',
value: 1
},
{
label: '患者',
value: 2
}
]
const retail = [
{
label: '单个机构',
value: 3
}
]
return this.formData.saleType === 1 ? wholesale: retail;
},
mCommonName() { mCommonName() {
return [4, 5].includes(this.formData1.medicalCategoryId) return [4, 5].includes(this.formData1.medicalCategoryId)
? "产品名称" ? "产品名称"
...@@ -1154,6 +1174,10 @@ export default { ...@@ -1154,6 +1174,10 @@ export default {
radioChange(val) { radioChange(val) {
this.formData.expressLimitFlag = val; this.formData.expressLimitFlag = val;
}, },
handleSaleTypeChange(val) {
console.log('handleSaleTypeChange', val)
this.buyLimitDtoList = [];
},
getArr(arr) { getArr(arr) {
if (arr.length > 0) { if (arr.length > 0) {
let newoodsList = []; let newoodsList = [];
...@@ -2019,25 +2043,34 @@ export default { ...@@ -2019,25 +2043,34 @@ export default {
}); });
return; return;
} }
const commonItem = {
days: 0,
daysType: 1,
limitCount: 0,
}
if (this.buyLimitDtoList == null || this.buyLimitDtoList.length == 0) { if (this.buyLimitDtoList == null || this.buyLimitDtoList.length == 0) {
this.buyLimitDtoList.push({ this.buyLimitDtoList.push({
days: 0, ...commonItem,
daysType: 1, limitUserType: this.formData.saleType === 1 ? 1 : 3,
limitCount: 0,
limitUserType: 1,
}); });
return; return;
} }
if (this.buyLimitDtoList.length < 2) { if (this.buyLimitDtoList.length < 2) {
if (this.formData.saleType === 2) {
this.buyLimitDtoList.push({
...commonItem,
limitUserType: 3,
});
return
}
let limitUserType = 1; let limitUserType = 1;
if (this.buyLimitDtoList[0].limitUserType == 1) { if (this.buyLimitDtoList[0].limitUserType == 1) {
limitUserType = 2; limitUserType = 2;
} }
this.buyLimitDtoList.push({ this.buyLimitDtoList.push({
days: 0, ...commonItem,
daysType: 1,
limitCount: 0,
limitUserType: limitUserType, limitUserType: limitUserType,
}); });
} }
...@@ -2047,23 +2080,31 @@ export default { ...@@ -2047,23 +2080,31 @@ export default {
this.buyLimitDtoList.splice(index, 1); this.buyLimitDtoList.splice(index, 1);
}, },
changeLimitUserType(item, index) { changeLimitUserType(item, index) {
if (item.limitUserType == 1) { if (item.limitUserType === 1) {
if (this.buyLimitDtoList.length == 2 && index == 0) { if (this.buyLimitDtoList.length === 2 && index === 0) {
this.buyLimitDtoList[1].limitUserType = 2; this.buyLimitDtoList[1].limitUserType = 2;
} else if (this.buyLimitDtoList.length == 2 && index == 1) { } else if (this.buyLimitDtoList.length === 2 && index === 1) {
this.buyLimitDtoList[0].limitUserType = 2; this.buyLimitDtoList[0].limitUserType = 2;
} }
} else { }
if (this.buyLimitDtoList.length == 2 && index == 0) { if (item.limitUserType === 2) {
if (this.buyLimitDtoList.length === 2 && index === 0) {
this.buyLimitDtoList[1].limitUserType = 1; this.buyLimitDtoList[1].limitUserType = 1;
} else if (this.buyLimitDtoList.length == 2 && index == 1) { } else if (this.buyLimitDtoList.length === 2 && index === 1) {
this.buyLimitDtoList[0].limitUserType = 1; this.buyLimitDtoList[0].limitUserType = 1;
} }
} }
if (item.limitUserType === 3) {
if (this.buyLimitDtoList.length === 2 && index === 0) {
this.buyLimitDtoList[1].limitUserType = 3;
} else if (this.buyLimitDtoList.length == 2 && index == 1) {
this.buyLimitDtoList[0].limitUserType = 3;
}
}
}, },
checkCount() { checkCount() {
let flag = true; let flag = true;
if (this.formData.saleType == 1 && this.formData.mostCount == 0) { if (this.formData.mostCount == 0) {
flag = false; flag = false;
this.$message({ this.$message({
message: "单次购买上限不能为0", message: "单次购买上限不能为0",
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册