Commit 67987195 authored by 黄媛媛's avatar 黄媛媛

update

parent a9bd9b45
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
商品列表 商品列表
<el-button @click="Export" style="float:right;margin-top: -5px;margin-left:20px;" size="small" type="primary">商品导出</el-button> <el-button @click="Export" style="float:right;margin-top: -5px;margin-left:20px;" size="small" type="primary">商品导出</el-button>
<el-button @click="CommonJump('goodsListEdit')" style="float:right;margin-top: -5px;margin-left:20px;" size="small" type="primary">添加商品</el-button> <el-button @click="CommonJump('goodsListEdit')" style="float:right;margin-top: -5px;margin-left:20px;" size="small" type="primary">添加商品</el-button>
<el-button style="float:right;margin-top: -5px;margin-left:20px;" size="small" type="primary">更新所有商品销量</el-button> <!-- <el-button style="float:right;margin-top: -5px;margin-left:20px;" size="small" type="primary">更新所有商品销量</el-button> -->
</div> </div>
<div class="content"> <div class="content">
...@@ -100,7 +100,7 @@ ...@@ -100,7 +100,7 @@
label="商品名称"> label="商品名称">
<template slot-scope="scope"> <template slot-scope="scope">
<div flex="box:first"> <div flex="box:first">
<img style="width:50px;height:50px;margin-right:1px" :src="domainManager().ImageUrl+scope.row.CoverImage" alt=""> <img style="width:50px;height:50px;margin-right:1px" :src="scope.row.CoverImage" alt="">
<template v-if="!scope.row.editname"> <template v-if="!scope.row.editname">
<div flex="cross:top" style="display:inline-flex"> <div flex="cross:top" style="display:inline-flex">
<div flex="dir:left" > <div flex="dir:left" >
......
...@@ -56,7 +56,7 @@ ...@@ -56,7 +56,7 @@
<div v-for="(item,index) in addMsg.CarouselImageList" :key="index" <div v-for="(item,index) in addMsg.CarouselImageList" :key="index"
style="margin-right: 20px; position: relative; "> style="margin-right: 20px; position: relative; ">
<div class="colapp-image" <div class="colapp-image"
:style="{backgroundImage:'url(' +domainManager().ImageUrl+ item.Path + ')'}"></div> :style="{backgroundImage:'url('+ item.Path + ')'}"></div>
<el-button @click="ClearCarouse(index)" class="delBtn" type="danger" icon="el-icon-close" <el-button @click="ClearCarouse(index)" class="delBtn" type="danger" icon="el-icon-close"
circle></el-button> circle></el-button>
</div> </div>
...@@ -91,12 +91,12 @@ ...@@ -91,12 +91,12 @@
<el-button @click="openChangeDig(2)" size="small">选择图片</el-button> <el-button @click="openChangeDig(2)" size="small">选择图片</el-button>
</el-tooltip> </el-tooltip>
<div class="app-gallery-item" style="position: relative;width: 100px;margin-top: 10px;"> <div class="app-gallery-item" style="position: relative;width: 100px;margin-top: 10px;">
<img v-if="!addMsg.CustomShareImagePath || addMsg.CustomShareImagePath==''" <img v-if="!addMsg.CustomShareImage || addMsg.CustomShareImage==''"
src="../../assets/img/default.png" style="width:80px;height:80px" alt=""> src="../../assets/img/default.png" style="width:80px;height:80px" alt="">
<el-button @click="clearCustom" style="position: absolute;right: 6px;top: -10px;" <el-button @click="clearCustom" style="position: absolute;right: 6px;top: -10px;"
v-if="addMsg.CustomShareImagePath && addMsg.CustomShareImagePath!=''" size="mini" type="danger" v-if="addMsg.CustomShareImage && addMsg.CustomShareImage!=''" size="mini" type="danger"
icon="el-icon-close" circle></el-button> icon="el-icon-close" circle></el-button>
<img style="width:80px;height:80px" :src="domainManager().ImageUrl+addMsg.CustomShareImagePath" <img style="width:80px;height:80px" :src="addMsg.CustomShareImage"
alt=""> alt="">
</div> </div>
<p style="margin-top:-15px" class="blue f12"> <p style="margin-top:-15px" class="blue f12">
...@@ -209,11 +209,20 @@ ...@@ -209,11 +209,20 @@
<div v-if="index==0 && item.EnabledImage==1" flex="cross:center main:center" <div v-if="index==0 && item.EnabledImage==1" flex="cross:center main:center"
class="img-box"> class="img-box">
<div class="attr-jt"></div> <div class="attr-jt"></div>
<div class="app-attachment"> <div v-if="item2.Image==''" @click="openggImg(item,index,item2,index2)" class="app-attachment">
<div style="line-height: normal; display: inline-block;"> <div style="line-height: normal; display: inline-block;">
<span>+添加图片</span> <span>+添加图片</span>
</div> </div>
</div> </div>
<div v-if="item2.Image!=''" class="el-image" style="height: 88px; width: 88px;">
<img :src="item2.Image" style="width:100%;height:100%">
</div>
<span v-if="item2.Image!=''" @click="DeleteImageUrl(item,index,item2,index2)" class="el-icon-error close"></span>
<div v-if="item2.Image!=''" style="position: absolute;">
<div class="app-attachment">
<el-button @click="openggImg(item,index,item2,index2)" type="primary" size="small">替换</el-button>
</div>
</div>
</div> </div>
</div> </div>
</div> </div>
...@@ -485,7 +494,10 @@ ...@@ -485,7 +494,10 @@
</el-select> </el-select>
<el-input style="width:150px;position:relative;top:5px" size="small" v-model="ptinput" <el-input style="width:150px;position:relative;top:5px" size="small" v-model="ptinput"
placeholder="请输入内容"> placeholder="请输入内容">
<el-button slot="append">%</el-button> <el-button slot="append">
<span v-if="addMsg.SeparateDistributionMoneyType==2"></span>
<span v-if="addMsg.SeparateDistributionMoneyType==1">%</span>
</el-button>
</el-input> </el-input>
<el-button @click="PuSet" style="position:relative;" size="small" type="primary">设置</el-button> <el-button @click="PuSet" style="position:relative;" size="small" type="primary">设置</el-button>
</el-form-item> </el-form-item>
...@@ -602,13 +614,59 @@ ...@@ -602,13 +614,59 @@
</el-switch> </el-switch>
</el-form-item> </el-form-item>
<el-form-item label="是否单独设置会员价"> <el-form-item label="是否单独设置会员价">
<el-switch v-model="addMsg.SeparateDistribution" active-color="#409EFF" :active-value="1" <el-switch v-model="addMsg.SeparateSetMember" active-color="#409EFF" :active-value="1"
:inactive-value="0"> :inactive-value="0">
</el-switch> </el-switch>
</el-form-item> </el-form-item>
<el-form-item label="会员价设置"> <el-form-item v-if="addMsg.SeparateSetMember==1&&huiyList.length==0" label="会员价设置">
<el-button @click="CommonJump('setMember')" size="small" type="danger">如需设置请先添加会员</el-button> <el-button @click="CommonJump('setMember')" size="small" type="danger">如需设置请先添加会员</el-button>
</el-form-item> </el-form-item>
<el-form-item v-if="addMsg.SeparateSetMember==1 && SpecificationPriceList.length==0" label="默认规格会员价设置">
<div v-for="(item,index) in memberList1[0].GradePriceList" :key="index">
<el-input style="width:700px" placeholder="请输入内容" v-model="item.MemberPrice" size="small" class="input-with-select">
<el-button slot="prepend">{{item.Name}}</el-button>
<el-button slot="append"></el-button>
</el-input>
</div>
<el-tag type="danger">如需设置多规格会员价,请先添加商品规格</el-tag>
</el-form-item>
<el-form-item v-if="addMsg.SeparateSetMember==1 && SpecificationPriceList.length>0" label="会员价设置">
<div class="app-attr">
<div class="box">
<el-form-item style="display:inline-block">
<el-input style="width:500px;position:relative;top:5px" size="small" v-model="memberinput"
placeholder="请输入内容">
<el-select slot="prepend" style="width:130px" v-model="memberVal" size="small">
<el-option v-for="(item,index) in huiyList" :label="item.Name" :value="item.Grade"
:key="index"></el-option>
</el-select>
<el-button @click="HySet" slot="append">确定</el-button>
</el-input>
</el-form-item>
</div>
<el-table ref="table" :data="memberList2" border style="width: 100%"
@selection-change="TbaleSelectionChange4">
<el-table-column type="selection" width="55">
</el-table-column>
<template v-for="(item,index) in SpecificationList">
<el-table-column :key="index" :label="item.Name" width="100">
<template slot-scope="scope">
<span v-if="index==index2" v-for="(item2,index2) in scope.row.AttrList" :key="index2">
{{scope.row.AttrList[index2].SVName}}
</span>
</template>
</el-table-column>
</template>
<template v-for="(item,index) in huiyList">
<el-table-column :key="index" :label="item.Name">
<template slot-scope="scope">
<el-input v-model="scope.row.GradePriceList[index].MemberPrice" size="small"></el-input>
</template>
</el-table-column>
</template>
</el-table>
</div>
</el-form-item>
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
...@@ -742,8 +800,8 @@ ...@@ -742,8 +800,8 @@
<el-button size="small" @click="choosebdDig = false" type="primary">确 定</el-button> <el-button size="small" @click="choosebdDig = false" type="primary">确 定</el-button>
</span> </span>
</el-dialog> </el-dialog>
<!--新增规则弹窗--> <!--区域-->
<el-dialog custom-class="regionDig" title="新增规则" :visible.sync="dialogFormVisible"> <el-dialog custom-class="regionDig" title="区域" :visible.sync="dialogFormVisible">
<region_Choice @event1="change($event)" :List="AreaList" ref="child"></region_Choice> <region_Choice @event1="change($event)" :List="AreaList" ref="child"></region_Choice>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button type="primary" size="small" @click="Addto">确 定</el-button> <el-button type="primary" size="small" @click="Addto">确 定</el-button>
...@@ -864,8 +922,8 @@ ...@@ -864,8 +922,8 @@
EnjoyMember: 1, EnjoyMember: 1,
SeparateSetMember: 2, SeparateSetMember: 2,
IsQuickBuy: 1, IsQuickBuy: 1,
FullNumPinkage:0,
FullMoneyPinkage:0,
}, },
fenleiData: [], fenleiData: [],
...@@ -940,6 +998,23 @@ ...@@ -940,6 +998,23 @@
xxVal: '', xxVal: '',
xxList: [], xxList: [],
huiyList:[],
memberList1:[
{
Id:0,
SpecificationSort:'',
GradePriceList:[],
}
],
memberList2:[],
memberinput:'',
memberVal:'',
memberCheck:[],
imgListIndex1:0,
imgListIndex2:0,
}; };
}, },
created() {}, created() {},
...@@ -954,15 +1029,55 @@ ...@@ -954,15 +1029,55 @@
this.getRule(); this.getRule();
this.getSpeciList(); this.getSpeciList();
this.getDistributor(); this.getDistributor();
this.gethuiyList();
}, },
methods: { methods: {
HySet(){
this.memberList2.forEach(item=>{
this.memberCheck.forEach(check=>{
if(item.Id==check.Id){
item.GradePriceList.forEach(list1=>{
if(list1.MemberGrade==this.memberVal){
list1.MemberPrice=this.memberinput;
}
})
}
})
})
},
TbaleSelectionChange4(val){
this.memberCheck=val;
},
gethuiyList(){
let msg={
pageIndex:1,
pageSize:999,
Grade:0,
Name:'',
Enabled:1,
};
this.apipost("/api/user/GetMemberGradePageList",msg, res => {
this.loading=false;
if(res.data.resultCode==1){
let pageData=res.data.data.pageData;
this.huiyList=pageData;
this.huiyList.forEach(item=>{
let obj={
Name:item.Name,
MemberGrade:item.Grade,
MemberPrice:0,
}
this.memberList1[0].GradePriceList.push(obj);
})
}
})
},
TbaleSelectionChange3(val) { TbaleSelectionChange3(val) {
this.xxList = val; this.xxList = val;
}, },
xxSet() { xxSet() {
if (this.gradeVal === '') { if (this.gradeVal === '') {
this.Error("请选择等级!"); this.Error("请选择等级!");
return; return;
...@@ -971,28 +1086,28 @@ ...@@ -971,28 +1086,28 @@
this.Error("请选择层级!"); this.Error("请选择层级!");
return; return;
} }
// this.disList2.forEach(item=>{ this.disList2.forEach(item=>{
// item=JSON.parse(JSON.stringify(item)) item.GradeCommissionList.forEach(grade=>{
// item.GradeCommissionList(grade=>{ this.xxList.forEach(list=>{
// this.pusetList.forEach(list=>{ if(item.Id==list.Id){
// if(item.Id==list.Id){
// if(grade.DistributorGrade==this.gradeVal){ if(grade.DistributorGrade==this.gradeVal){
// if(this.fxVal==1){ if(this.fxVal==1){
// grade.OneCommission=this.xxVal; grade.OneCommission=this.xxVal;
// } }
// if(this.fxVal==2){ if(this.fxVal==2){
// grade.TwoCommission=this.xxVal; grade.TwoCommission=this.xxVal;
// } }
// if(this.fxVal==3){ if(this.fxVal==3){
// grade.ThreeCommission=this.xxVal; grade.ThreeCommission=this.xxVal;
// } }
// } }
// } }
// }) })
// }) })
// }) })
}, },
PuSet() { PuSet() {
this.GradeCommissionList.forEach(item => { this.GradeCommissionList.forEach(item => {
...@@ -1066,8 +1181,12 @@ ...@@ -1066,8 +1181,12 @@
// 删除规格模板 // 删除规格模板
DeleteggModule(item, index) { DeleteggModule(item, index) {
this.SpecificationList.splice(index, 1); this.SpecificationList.splice(index, 1);
if(this.SpecificationList.length==0){
this.addMsg.SeparateDistributionType=1;
}
this.$forceUpdate(); this.$forceUpdate();
this.skuList = []; this.skuList = [];
this.getSkuData([], 0, this.SpecificationList); this.getSkuData([], 0, this.SpecificationList);
}, },
// 删除规格值 // 删除规格值
...@@ -1077,6 +1196,7 @@ ...@@ -1077,6 +1196,7 @@
if (this.SpecificationList[index].SpecificationValueList.length == 0) { if (this.SpecificationList[index].SpecificationValueList.length == 0) {
this.SpecificationList.splice(index, 1) this.SpecificationList.splice(index, 1)
} }
this.skuList = []; this.skuList = [];
this.getSkuData([], 0, this.SpecificationList); this.getSkuData([], 0, this.SpecificationList);
}, },
...@@ -1143,21 +1263,24 @@ ...@@ -1143,21 +1263,24 @@
this.speciDig = false; this.speciDig = false;
}, },
getSkuData(skuArr = [], i, list) { getSkuData(skuArr = [], i, list) {
for (let j = 0; j < list[i].SpecificationValueList.length; j++) { if(list[i]){
skuArr[i] = {}; for (let j = 0; j < list[i].SpecificationValueList.length; j++) {
if (i < list.length - 1) { skuArr[i] = {};
skuArr[i].SName = list[i].Name; if (i < list.length - 1) {
skuArr[i].SVName = list[i].SpecificationValueList[j].Name; skuArr[i].SName = list[i].Name;
skuArr[i].SVId = list[i].SpecificationValueList[j].Sort; skuArr[i].SVName = list[i].SpecificationValueList[j].Name;
this.getSkuData(skuArr, i + 1, list); // 递归循环 skuArr[i].SVId = list[i].SpecificationValueList[j].Sort;
} else { this.getSkuData(skuArr, i + 1, list); // 递归循环
skuArr[i].SName = list[i].Name; } else {
skuArr[i].SVName = list[i].SpecificationValueList[j].Name; skuArr[i].SName = list[i].Name;
skuArr[i].SVId = list[i].SpecificationValueList[j].Sort; skuArr[i].SVName = list[i].SpecificationValueList[j].Name;
this.skuList.push([...skuArr]); // 扩展运算符,连接两个数组 skuArr[i].SVId = list[i].SpecificationValueList[j].Sort;
this.skuList.push([...skuArr]); // 扩展运算符,连接两个数组
}
} }
} }
this.calcList(this.skuList, this.SpecificationList); this.calcList(this.skuList, this.SpecificationList);
}, },
calcList(list, calist) { calcList(list, calist) {
this.SpecificationPriceList = []; this.SpecificationPriceList = [];
...@@ -1206,7 +1329,9 @@ ...@@ -1206,7 +1329,9 @@
this.calcdis(JSON.parse(JSON.stringify(arrList))); this.calcdis(JSON.parse(JSON.stringify(arrList)));
}, },
calcdis(dislist) { calcdis(dislist) {
let memberList2=JSON.parse(JSON.stringify(dislist))
dislist.forEach(item => { dislist.forEach(item => {
item.GradeCommissionList=[];
for (let i = 0; i < this.DropdownList.length; i++) { for (let i = 0; i < this.DropdownList.length; i++) {
let obj = { let obj = {
DistributorGrade: this.DropdownList[i].Id, DistributorGrade: this.DropdownList[i].Id,
...@@ -1218,7 +1343,19 @@ ...@@ -1218,7 +1343,19 @@
item.GradeCommissionList.push(obj); item.GradeCommissionList.push(obj);
} }
}) })
memberList2.forEach(item => {
item.GradePriceList=[];
for (let i = 0; i < this.huiyList.length; i++) {
let obj = {
MemberGrade: this.huiyList[i].Grade,
MemberPrice:'',
}
item.GradePriceList.push(obj);
}
})
this.disList2 = JSON.parse(JSON.stringify(dislist)); this.disList2 = JSON.parse(JSON.stringify(dislist));
this.memberList2 = JSON.parse(JSON.stringify(memberList2));
console.log("this.memberList2",this.memberList2)
}, },
addggModeule() { addggModeule() {
this.speciDig = true; this.speciDig = true;
...@@ -1248,6 +1385,12 @@ ...@@ -1248,6 +1385,12 @@
} else { } else {
this.addMsg.DistributionCommissionList = this.disList2; this.addMsg.DistributionCommissionList = this.disList2;
} }
if(this.addMsg.SeparateSetMember==1 && this.SpecificationList.length==0){
this.addMsg.MemberPriceList=this.memberList1;
}
if(this.addMsg.SeparateSetMember==1 && this.SpecificationList.length>0){
this.addMsg.MemberPriceList=this.memberList2;
}
this.addMsg.SpecificationPriceList = this.SpecificationPriceList; this.addMsg.SpecificationPriceList = this.SpecificationPriceList;
this.addMsg.SpecificationList = this.SpecificationList; this.addMsg.SpecificationList = this.SpecificationList;
this.apipost("/api/product/SetProductGoodsInfo", this.addMsg, res => { this.apipost("/api/product/SetProductGoodsInfo", this.addMsg, res => {
...@@ -1345,6 +1488,17 @@ ...@@ -1345,6 +1488,17 @@
ClearCarouse(index) { ClearCarouse(index) {
this.addMsg.CarouselImageList.splice(index, 1); this.addMsg.CarouselImageList.splice(index, 1);
}, },
DeleteImageUrl(item,index,item2,index2){
this.SpecificationList[index].SpecificationValueList[index2].Image='';
},
openggImg(item,index,item2,index2){
this.changeState = true;
this.imgType = 3;
this.imgListIndex1=index;
this.imgListIndex2=index2;
},
openChangeDig(val) { openChangeDig(val) {
this.changeState = true; this.changeState = true;
this.imgType = val; this.imgType = val;
...@@ -1353,13 +1507,22 @@ ...@@ -1353,13 +1507,22 @@
if (this.imgType == 1) { if (this.imgType == 1) {
let obj = { let obj = {
Id: msg.selectId, Id: msg.selectId,
Path: msg.url, Path: this.domainManager().ImageUrl+msg.url,
} }
this.addMsg.CarouselImageList.push(obj); this.addMsg.CarouselImageList.push(obj);
} }
if (this.imgType == 2) { if (this.imgType == 2) {
this.addMsg.CustomShareImage = msg.selectId; // this.addMsg.CustomShareImage = msg.selectId;
this.addMsg.CustomShareImagePath = msg.url; this.addMsg.CustomShareImage = this.domainManager().ImageUrl+msg.url;
// this.addMsg.CustomShareImagePath = this.domainManager().ImageUrl+msg.url;
}
if (this.imgType == 3) {
let imgListIndex1=this.imgListIndex1;
let imgListIndex2=this.imgListIndex2;
this.SpecificationList[imgListIndex1].SpecificationValueList[imgListIndex2].Image=this.domainManager().ImageUrl+msg.url;
} }
this.changeState = false; this.changeState = false;
}, },
...@@ -1535,6 +1698,18 @@ ...@@ -1535,6 +1698,18 @@
</script> </script>
<style> <style>
.app-attr-group .close {
position: absolute;
top: -4px;
right: -4px;
font-size: 16px;
cursor: pointer;
}
.goodsListEdit .el-image {
position: relative;
display: inline-block;
overflow: hidden;
}
.goodsListEdit .pendSelect { .goodsListEdit .pendSelect {
width: 100px; width: 100px;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment