提交 30c7633b 编写于 作者: vino's avatar vino

商品分佣

上级 adc9945d
......@@ -432,7 +432,7 @@ export default {
path: `/shop-list`
})
} else {
this.$message({ type: "error", message: "保存失败!" });
this.$message({ type: "error", message: res.message });
}
})
.finally((res) => {
......
......@@ -3,15 +3,19 @@
<bread-crumb :curmbFirst="curmbFirst" :curmbSecond="curmbSecond"></bread-crumb>
<div class="yqshop-content screenSet" id="screenSet">
<div class="header-title">商品管理</div>
<el-form ref="searchForm" :model="searchForm" label-width="80px" label-suffix=":" :inline="true">
<el-form ref="searchForm" :model="searchForm" label-width="100px" label-suffix=":" :inline="true">
<el-row :gutter="30" type="flex" style="margin-top: 10px">
<el-col :span="18">
<el-col :span="6">
<el-form-item label="商品名称">
<el-input v-model="searchForm.goodsName" size="small" placeholder="请输入商品名称"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="商品ID">
<el-input v-model="id" size="small" placeholder="请输入商品ID"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="商品类型">
<el-select
v-model="searchForm.goodsType"
......@@ -26,6 +30,10 @@
></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="30" type="flex" style="margin-top: 10px">
<el-col :span="6">
<el-form-item label="分佣方式" v-if="commissionFlag == 2">
<el-select
v-model="searchForm.commissionType"
......@@ -41,11 +49,28 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="药代分佣方式">
<el-select
v-model="searchForm.proxyCommissionType"
placeholder="请选择分佣方式"
size="small"
clearable>
<el-option
v-for="item in commissionTypeList"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6" style="text-align: right">
<el-button type="primary" size="small" @click="searchList">查询</el-button>
<el-button type="default" size="small" @click="resetForm" style="margin-left:0;">重置</el-button>
</el-col>
</el-row>
<el-row :gutter="30" type="flex" style="margin-top: 10px">
<el-col :span="12">
<el-button type="primary" size="small" @click="batchOpt('on')">批量上架</el-button>
......@@ -102,6 +127,17 @@
<span v-if="scope.row.commissionType == 2">{{scope.row.commissionPrice | priceNum}}</span>
</template>
</el-table-column>
<el-table-column prop="commissionType" label="药代分佣方式" width="120" align="center">
<template slot-scope="scope">
<span>{{ scope.row.proxyCommissionType | commissionTypeFormat}}</span>
</template>
</el-table-column>
<el-table-column prop="commissionPrice" label="药代分佣" width="120" align="center">
<template slot-scope="scope">
<span v-if="scope.row.proxyCommissionType == 1">{{scope.row.proxyCommissionPrice | priceNum}}%</span>
<span v-if="scope.row.proxyCommissionType == 2">{{scope.row.proxyCommissionPrice | priceNum}}</span>
</template>
</el-table-column>
<el-table-column prop="saleTime" label="发布时间" width="170" align="center">
</el-table-column>
......@@ -211,20 +247,50 @@
label-position="right"
size="mini"
style="width: 100%;">
<el-form-item label="分佣方式" prop="commissionType">
<el-col :span="18">
<el-radio-group v-model="setPriceForm.commissionType" size="small" style="line-height: 45px;">
<div>
<el-radio :label="1" style="float: left;margin-top: 5px;line-height: 20px;">按比例分佣(%)</el-radio>
<span style="float: right;width: 100px;"><el-input-number v-model="setPriceForm.commissionPrice1" size="small" :precision="2" :min="0"></el-input-number></span>
</div>
<div>
<el-radio :label="2" style="float: left;margin-top: 30px;line-height: 20px;">固定分佣金额(元)</el-radio>
<span style="float: right;width: 100px;margin-left: 14px;"><el-input-number v-model="setPriceForm.commissionPrice2" size="small" :precision="2" :min="0" :max="9999.99"></el-input-number></span>
</div>
</el-radio-group>
</el-col>
</el-form-item>
<div v-for="(item, index) in setPriceForm.adminCommissionGoodsRespList" :key="index" >
<el-form-item v-if="item.commissionKind == 1" label="分佣方式" prop="commissionType">
<el-col :span="18">
<el-radio-group v-model="item.commissionType" size="small" style="line-height: 45px;">
<div>
<el-radio :label="1" style="float: left;margin-top: 5px;line-height: 20px;">按比例分佣(%)</el-radio>
<span style="float: right;width: 100px;"><el-input-number v-model="item.commissionPrice1" size="small" :precision="2" :min="0"></el-input-number></span>
</div>
<div>
<el-radio :label="2" style="float: left;margin-top: 30px;line-height: 20px;">固定分佣金额(元)</el-radio>
<span style="float: right;width: 100px;margin-left: 14px;"><el-input-number v-model="item.commissionPrice2" size="small" :precision="2" :min="0" :max="9999.99"></el-input-number></span>
</div>
</el-radio-group>
</el-col>
</el-form-item>
<el-form-item v-if="item.commissionKind == 2" label="药代分佣方式">
<el-col :span="18">
<el-radio-group v-model="item.commissionType" size="small" style="line-height: 45px;">
<div>
<el-radio :label="1" style="float: left;margin-top: 5px;line-height: 20px;">按比例分佣(%)</el-radio>
<span style="float: right;width: 100px;"><el-input-number v-model="item.commissionPrice1" size="small" :precision="2" :min="0"></el-input-number></span>
</div>
<div>
<el-radio :label="2" style="float: left;margin-top: 30px;line-height: 20px;">固定分佣金额(元)</el-radio>
<span style="float: right;width: 100px;margin-left: 14px;"><el-input-number v-model="item.commissionPrice2" size="small" :precision="2" :min="0" :max="9999.99"></el-input-number></span>
</div>
</el-radio-group>
</el-col>
</el-form-item>
</div>
<!-- <el-form-item label="分佣方式" prop="commissionType">-->
<!-- <el-col :span="18">-->
<!-- <el-radio-group v-model="setPriceForm.commissionType" size="small" style="line-height: 45px;">-->
<!-- <div>-->
<!-- <el-radio :label="1" style="float: left;margin-top: 5px;line-height: 20px;">按比例分佣(%)</el-radio>-->
<!-- <span style="float: right;width: 100px;"><el-input-number v-model="setPriceForm.commissionPrice1" size="small" :precision="2" :min="0"></el-input-number></span>-->
<!-- </div>-->
<!-- <div>-->
<!-- <el-radio :label="2" style="float: left;margin-top: 30px;line-height: 20px;">固定分佣金额(元)</el-radio>-->
<!-- <span style="float: right;width: 100px;margin-left: 14px;"><el-input-number v-model="setPriceForm.commissionPrice2" size="small" :precision="2" :min="0" :max="9999.99"></el-input-number></span>-->
<!-- </div>-->
<!-- </el-radio-group>-->
<!-- </el-col>-->
<!-- </el-form-item>-->
</el-form>
<!-- </el-row>-->
......@@ -282,7 +348,8 @@
pageNo:1,
pageSize: 10,
storeId:0,
commissionType: 0
commissionType: 0,
proxyCommissionType:0
},
innerVisible:false,
selectList:[],
......@@ -320,13 +387,14 @@
commissionFlag: 2,
setPriceVisible: false,
setPriceForm:{
commissionType: 1,
commissionPrice: '',
commissionPrice1: '',
commissionPrice2: '',
storeId: '',
goodsId: '',
maxPrice: ''
// commissionType: 1,
// commissionPrice: '',
// commissionPrice1: '',
// commissionPrice2: '',
// storeId: '',
// goodsId: '',
// maxPrice: ''
adminCommissionGoodsRespList:[]
},
setPriceRules: {
commissionType: [
......@@ -693,22 +761,79 @@
if(this.$refs.setPriceForm) {
this.$refs.setPriceForm.resetFields()
}
this.batchUpdatePriceFlag = batchUpdatePriceFlag;
this.setPriceForm.storeId = row.storeId;
this.setPriceForm.goodsId = row.goodsId;
this.setPriceForm.commissionType = "";
this.setPriceForm.commissionPrice1 = undefined;
this.setPriceForm.commissionPrice2 = undefined;
this.setPriceForm.commissionType = row.commissionType;
if(this.setPriceForm.commissionType == 1){
this.setPriceForm.commissionPrice1 = row.commissionPrice/100;
if(row.adminCommissionGoodsRespList){
this.setPriceForm.adminCommissionGoodsRespList = row.adminCommissionGoodsRespList;
for(let i = 0; i < this.setPriceForm.adminCommissionGoodsRespList.length; i++){
if(this.setPriceForm.adminCommissionGoodsRespList[i].commissionType == 1){
this.setPriceForm.adminCommissionGoodsRespList[i].commissionPrice1 = this.setPriceForm.adminCommissionGoodsRespList[i].commissionPrice/100;
}
else if(this.setPriceForm.adminCommissionGoodsRespList[i].commissionType == 2){
this.setPriceForm.adminCommissionGoodsRespList[i].commissionPrice2 = this.setPriceForm.adminCommissionGoodsRespList[i].commissionPrice/100;
}
}
let newArray = this.setPriceForm.adminCommissionGoodsRespList.filter(function (item) {
return item.commissionKind == 1;
});
if(newArray == null || newArray.length == 0){
this.setPriceForm.adminCommissionGoodsRespList.push({
commissionKind: 1,
commissionPrice: "",
commissionType: 1,
goodsId: row.goodsId,
maxPrice: "",
storeId: row.id,
});
}
let array = this.setPriceForm.adminCommissionGoodsRespList.filter(function (item) {
return item.commissionKind == 2;
});
if(array == null || array.length == 0){
this.setPriceForm.adminCommissionGoodsRespList.push({
commissionKind: 2,
commissionPrice: "",
commissionType: 1,
goodsId: row.goodsId,
maxPrice: "",
storeId: row.id,
});
}
}
else if(this.setPriceForm.commissionType == 2){
this.setPriceForm.commissionPrice2 = row.commissionPrice/100;
else {
this.setPriceForm.adminCommissionGoodsRespList = [{
commissionKind: 1,
commissionPrice: "",
commissionType: 1,
goodsId: row.goodsId,
maxPrice: "",
storeId: row.id,
},
{
commissionKind: 2,
commissionPrice: "",
commissionType: 1,
goodsId: row.goodsId,
maxPrice: "",
storeId: row.id,
}]
}
// this.batchUpdatePriceFlag = batchUpdatePriceFlag;
// this.setPriceForm.storeId = row.storeId;
// this.setPriceForm.goodsId = row.goodsId;
// this.setPriceForm.commissionType = "";
// this.setPriceForm.commissionPrice1 = undefined;
// this.setPriceForm.commissionPrice2 = undefined;
// this.setPriceForm.commissionType = row.commissionType;
// if(this.setPriceForm.commissionType == 1){
// this.setPriceForm.commissionPrice1 = row.commissionPrice/100;
// }
// else if(this.setPriceForm.commissionType == 2){
// this.setPriceForm.commissionPrice2 = row.commissionPrice/100;
// }
this.setPriceVisible = true;
// this.setPriceForm.price = row.price;
this.setPriceVisible = true;
// if(this.$refs.setPriceForm) {
// this.$refs.setPriceForm.resetFields()
// }
......@@ -716,34 +841,49 @@
},
confirmSetPrice() {
if(this.setPriceForm.commissionType == null || this.setPriceForm.commissionType == ""){
this.$message({
message: '请选择分佣方式',
type: "warning"
});
return;
}
for(let i = 0; i < this.setPriceForm.adminCommissionGoodsRespList.length; i++){
if(this.setPriceForm.adminCommissionGoodsRespList[i].commissionKind == 1
&& (this.setPriceForm.adminCommissionGoodsRespList[i].commissionType == null || this.setPriceForm.adminCommissionGoodsRespList[i].commissionType == "")){
this.$message({
message: '请选择分佣方式',
type: "warning"
});
return;
}
if(this.setPriceForm.adminCommissionGoodsRespList[i].commissionKind == 1
&& this.setPriceForm.adminCommissionGoodsRespList[i].commissionType == 1 && this.setPriceForm.adminCommissionGoodsRespList[i].commissionPrice1 == undefined ){
this.$message({
message: '请输入按比例分佣',
type: "warning"
});
return;
}
else if(this.setPriceForm.adminCommissionGoodsRespList[i].commissionKind == 1
&& this.setPriceForm.adminCommissionGoodsRespList[i].commissionType == 1 && this.setPriceForm.adminCommissionGoodsRespList[i].commissionPrice1 > 100){
this.$message({
message: '请输入按比例分佣0-100',
type: "warning"
});
return;
}
if(this.setPriceForm.adminCommissionGoodsRespList[i].commissionKind == 1
&& this.setPriceForm.adminCommissionGoodsRespList[i].commissionType == 2 && this.setPriceForm.adminCommissionGoodsRespList[i].commissionPrice2 == undefined ){
this.$message({
message: '请输入固定分佣金额',
type: "warning"
});
return;
}
if(this.setPriceForm.adminCommissionGoodsRespList[i].commissionType == 1){
this.setPriceForm.adminCommissionGoodsRespList[i].commissionPrice = this.setPriceForm.adminCommissionGoodsRespList[i].commissionPrice1 * 100;
}
else if(this.setPriceForm.adminCommissionGoodsRespList[i].commissionType == 2){
this.setPriceForm.adminCommissionGoodsRespList[i].commissionPrice = this.setPriceForm.adminCommissionGoodsRespList[i].commissionPrice2 * 100;
}
if(this.setPriceForm.commissionType == 1 && this.setPriceForm.commissionPrice1 == undefined ){
this.$message({
message: '请输入按比例分佣',
type: "warning"
});
return;
}
else if(this.setPriceForm.commissionType == 1 && this.setPriceForm.commissionPrice1 > 100){
this.$message({
message: '请输入按比例分佣0-100',
type: "warning"
});
return;
}
if(this.setPriceForm.commissionType == 2 && this.setPriceForm.commissionPrice2 == undefined ){
this.$message({
message: '请输入固定分佣金额',
type: "warning"
});
return;
}
let timeoutId = null
......@@ -754,23 +894,23 @@
},
// 防止按钮多次点击
clickHandle() {
this.$refs.setPriceForm.validate((valid) => {
if(valid) {
// this.$refs.setPriceForm.validate((valid) => {
// if(valid) {
vm.loading = true
// 批量设置价格
if(vm.batchUpdatePriceFlag){
let setPriceList = [];
if(vm.setPriceForm.commissionType == 1){
vm.setPriceForm.commissionPriceStr = vm.setPriceForm.commissionPrice1;
}
else if(vm.setPriceForm.commissionType == 2){
vm.setPriceForm.commissionPriceStr = vm.setPriceForm.commissionPrice2;
}
// if(vm.setPriceForm.commissionType == 1){
// vm.setPriceForm.commissionPriceStr = vm.setPriceForm.commissionPrice1;
// }
// else if(vm.setPriceForm.commissionType == 2){
// vm.setPriceForm.commissionPriceStr = vm.setPriceForm.commissionPrice2;
// }
let parm = {
commissionPrice: vm.setPriceForm.commissionPriceStr * 100,
commissionType: vm.setPriceForm.commissionType,
goodsIdList:[],
storeId: vm.setPriceForm.storeId
adminCommissionGoodsReqList:vm.setPriceForm.adminCommissionGoodsRespList,
// commissionPrice: vm.setPriceForm.commissionPriceStr * 100,
// commissionType: vm.setPriceForm.commissionType,
goodsIdList:[]
}
for(let i = 0; i < vm.selectList.length; i++){
parm.goodsIdList.push(vm.selectList[i].goodsId);
......@@ -794,14 +934,14 @@
});
}
else {
if(vm.setPriceForm.commissionType == 1){
vm.setPriceForm.commissionPriceStr = vm.setPriceForm.commissionPrice1;
}
else if(vm.setPriceForm.commissionType == 2){
vm.setPriceForm.commissionPriceStr = vm.setPriceForm.commissionPrice2;
}
vm.setPriceForm.commissionPrice = vm.setPriceForm.commissionPriceStr * 100;
vm.POST('/store/commission/admin/goods/save', vm.setPriceForm).then(res => {
// if(vm.setPriceForm.commissionType == 1){
// vm.setPriceForm.commissionPriceStr = vm.setPriceForm.commissionPrice1;
// }
// else if(vm.setPriceForm.commissionType == 2){
// vm.setPriceForm.commissionPriceStr = vm.setPriceForm.commissionPrice2;
// }
// vm.setPriceForm.commissionPrice = vm.setPriceForm.commissionPriceStr * 100;
vm.POST('/store/commission/admin/goods/save', vm.setPriceForm.adminCommissionGoodsRespList).then(res => {
vm.loading = false
// closeLoading(this);
if (res.code == "000000") {
......@@ -820,8 +960,8 @@
});
}
}
})
// }
// })
},
},
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册