Commit bf46523b authored by 罗超's avatar 罗超
parents 299775af 3b95b398
......@@ -200,7 +200,7 @@
</el-card>
</div>
</el-tab-pane>
<el-tab-pane label="商品分类转移" name="second">
<!-- <el-tab-pane label="分类转移" name="second">
<div class="app-transfer">
<div flex="dir:left">
<el-card shadow="never" class="transfer">
......@@ -263,6 +263,71 @@
</div>
<el-button :loading="saveBtnLoad" @click="transClass" style="margin-top:10px" size="mini" type="primary">开始转移</el-button>
</div>
</el-tab-pane> -->
<el-tab-pane label="商品批量转移" name="second">
<div class="app-transfer">
<div flex="dir:left">
<el-card shadow="never" class="transfer">
<div slot="header" class="clearfix">
<span @click="getnoChangeData(1)" :class="transChild1!='' ? 'blue' :''" class="point">分类</span>
<span v-if="transChild1!=''">/{{transChild1}}</span>
</div>
<div class="cat-body">
<div class="searchInput" style="width:240px">
<el-input style="display:inline-block;width:219px;height:30px"
placeholder="请输入搜索内容"
v-model="msg1.Name"
size="small"
clearable>
</el-input>
<span @click="getList1(1)" class="el-icon-search" style="color:#979dad;font-size:14px;position:relative;top:1px"></span>
</div>
<div v-for="(item,index) in transData1" :key="index" flex="dir:left box:first" style="width:100%;margin-top:16px">
<div class="app-ellipsis">
<div class="vue-line-clamp" style="word-break: break-all; -webkit-line-clamp: 1;">
<el-radio @change="radioChange_t" v-model="SetGoodsMsg.CategoryId" :label="item.Id">{{item.Name}}</el-radio>
</div>
</div>
<button @click="nextData(1,item)" v-if="item.ChildList.length>0" type="button" class="el-button cat-next el-button--text">
<i class="el-icon-arrow-right"></i>
</button>
</div>
</div>
</el-card>
<div flex="dir:left cross:center">
<el-button size="mini" class="middle" :type="transActive_t" icon="el-icon-arrow-right" circle></el-button>
</div>
<el-card shadow="never" class="transfer">
<div slot="header" class="clearfix">
<span @click="getnoChangeData(2)" :class="transChild2!='' ? 'blue' :''" class="point">分类</span>
<span v-if="transChild2!=''">/{{transChild2}}</span>
</div>
<div class="cat-body">
<div class="searchInput" style="width:240px">
<el-input style="display:inline-block;width:219px;height:30px"
placeholder="请输入搜索内容"
v-model="msg1.Name"
size="small"
clearable>
</el-input>
<span @click="getList1(2)" class="el-icon-search" style="color:#979dad;font-size:14px;position:relative;top:1px"></span>
</div>
<div v-for="(item,index) in transData2" :key="index" flex="dir:left box:first" style="width:100%;margin-top:16px">
<div class="app-ellipsis">
<div class="vue-line-clamp" style="word-break: break-all; -webkit-line-clamp: 1;">
<el-radio @change="radioChange_t" v-model="SetGoodsMsg.NewCategoryId" :label="item.Id">{{item.Name}}</el-radio>
</div>
</div>
<button @click="nextData(2,item)" v-if="item.ChildList.length>0" type="button" class="el-button cat-next el-button--text">
<i class="el-icon-arrow-right"></i>
</button>
</div>
</div>
</el-card>
</div>
<el-button :loading="saveBtnLoad" @click="transClass_t" style="margin-top:10px" size="mini" type="primary">开始转移</el-button>
</div>
</el-tab-pane>
<el-tab-pane label="分类样式" name="third">
......@@ -379,6 +444,7 @@ export default {
transChild1:'',
transChild2:'',
transActive:'',
transActive_t:'',
loading:false,
searchDig:false,
val:'',
......@@ -416,6 +482,10 @@ export default {
CategoryId:-1,
ParentId:-1,
},
SetGoodsMsg:{
CategoryId:-1,
NewCategoryId:-1,
},
transData1:[],
transData2:[],
noChangeData:[],
......@@ -576,6 +646,12 @@ export default {
this.transActive="primary"
}
},
radioChange_t(){
if(this.transMsg.CategoryId > 0 && this.transMsg.ParentId > 0){
this.transActive_t="primary"
}
},
// 转移分类
transClass(){
......@@ -600,6 +676,29 @@ export default {
}
})
},
// 商品批量转移转移分类
transClass_t(){
if(this.SetGoodsMsg.CategoryId<0){
this.Error("必须选择转移前的分类!");
return;
}
if(this.SetGoodsMsg.NewCategoryId<0){
this.Error("必须选择转移后的分类!");
return;
}
this.saveBtnLoad=true;
this.apipost("/api/product/SetGoodsCategoryTransfer",this.SetGoodsMsg, res => {
this.saveBtnLoad=false;
if(res.data.resultCode==1){
this.Success(res.data.message)
this.getList1();
this.SetGoodsMsg={
CategoryId:-1,
NewCategoryId:-1,
}
}
})
},
nextData(num,item){
if(num==1){
......
......@@ -518,6 +518,9 @@ export default {
},
Export(){
let msg = this.msg;
if( msg.Id==''){
msg.Id=0
}
msg = JSON.parse(JSON.stringify(msg));
msg.pageSize=999;
this.GetLocalFile(
......
......@@ -558,6 +558,49 @@
<el-input v-model="addMsg.Advertising" style="width:100%;margin-left:15px" type="textarea" :rows="3"
size="small" placeholder="请输入内容" class="input-with-select"></el-input>
</el-form-item>
<el-form-item label="标签类型">
<el-radio v-model="addMsg.MarketingLogo.iswords" :label="1">文字模式</el-radio>
<el-radio v-model="addMsg.MarketingLogo.iswords" :label="2">图片模式</el-radio>
<el-radio v-model="addMsg.MarketingLogo.iswords" :label="0">无模式</el-radio>
</el-form-item>
<el-form-item label="标签文字" v-if="addMsg.MarketingLogo.iswords==1" >
<el-input v-model="addMsg.MarketingLogo.words" style="width:100%;margin-left:15px"
size="small" placeholder="请输入内容" class="input-with-select" maxlength='10' show-word-limit></el-input>
</el-form-item>
<el-form-item label="标签字体颜色" v-if="addMsg.MarketingLogo.iswords==1">
<el-color-picker
style="width:100%;margin-left:15px"
v-model="addMsg.MarketingLogo.wordsColor"
show-alpha
:predefine="predefineColors">
</el-color-picker>
</el-form-item>
<el-form-item label="标签背景颜色" v-if="addMsg.MarketingLogo.iswords==1">
<el-color-picker
style="width:100%;margin-left:15px"
v-model="addMsg.MarketingLogo.wordsBack"
show-alpha
:predefine="predefineColors">
</el-color-picker>
</el-form-item>
<el-form-item class="commonLabel discount" label="标签图片" v-if="addMsg.MarketingLogo.iswords==2">
<el-tooltip class="item" effect="dark" content="建议尺寸" placement="top">
<el-button @click="openChangeDig(4)" size="small">选择图片</el-button>
</el-tooltip>
<div class="app-gallery-item" style="position: relative;width: 100px;margin-top: 10px;border:none">
<img v-if="
!addMsg.MarketingLogo.ico ||
addMsg.MarketingLogo.ico == ''
" src="../../assets/img/default.png" style="width:80px;height:80px" alt="" />
<el-button @click="addMsg.MarketingLogo.ico = ''" style="position: absolute;right: 6px;top: -10px;" v-if="
addMsg.MarketingLogo.ico &&
addMsg.MarketingLogo.ico != ''
" size="mini" type="danger" icon="el-icon-close" circle></el-button>
<img style="width:80px;height:80px" :src="addMsg.MarketingLogo.ico" alt="" />
</div>
</el-form-item>
</el-col>
</el-row>
</el-card>
......@@ -919,7 +962,7 @@
</el-checkbox-group>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="addMsg.ServiceList = keepServiceList" size="small">取消</el-button>
<el-button @click="(addMsg.ServiceList = keepServiceList),(serviceDig = false)" size="small">取消</el-button>
<el-button @click="(addMsg.ServiceList = checkService), (serviceDig = false)" size="small" type="primary">确定
</el-button>
</span>
......@@ -1087,7 +1130,14 @@
PresentFXMonth:0,
Advertising:'',
SubName:'',
MarketingLogo:{iswords:0,words:"",wordsColor:"",wordsBack:"",ico:""}
},
predefineColors: [
'#000000',
'#FFFFFF',
'#888888',
'#FF4544',
],
SupplierId: '',
fenleiData: [],
checkList: [],
......@@ -1762,6 +1812,17 @@
if(this.addMsg.PresentFXGrade==''){//没选择的时候默认为0
this.addMsg.PresentFXGrade=0
}
//标签的判断和处理
if(this.addMsg.MarketingLogo.iswords==0){
this.addMsg.MarketingLogo = {iswords:0,words:"",wordsColor:"",wordsBack:"",ico:""}
}else if(this.addMsg.MarketingLogo.iswords==1){
this.addMsg.MarketingLogo.ico= ''
}else if(this.addMsg.MarketingLogo.iswords==2){
this.addMsg.MarketingLogo.words= '';
this.addMsg.MarketingLogo.wordsColor= '';
this.addMsg.MarketingLogo.wordsBack= '';
}
this.addMsg.MarketingLogo = JSON.stringify( this.addMsg.MarketingLogo)
this.apipost("/api/product/SetProductGoodsInfo", this.addMsg, res => {
if (res.data.resultCode == 1) {
this.Success(res.data.message);
......@@ -1892,6 +1953,9 @@
imgListIndex2
].Image = that.getIconLink(msg[0].url);
}
if(this.imgType == 4){
that.addMsg.MarketingLogo.ico = that.getIconLink(msg[0].url)
}
}
this.changeState = false;
},
......@@ -2027,6 +2091,11 @@
if(this.addMsg.PresentFXGrade==0){
this.addMsg.PresentFXGrade=''
}
if( this.addMsg.MarketingLogo==null){
this.addMsg.MarketingLogo ={iswords:0,words:"",wordsColor:"",wordsBack:"",ico:""}
}else{
this.addMsg.MarketingLogo = JSON.parse(this.addMsg.MarketingLogo)
}
this.getSuggestPrice();
this.getFXDGradeList2();
......
......@@ -51,7 +51,7 @@
<el-select size="small" v-model="addMsg.Introducer" @change="getSpecification" :filter-method="ChangeListName" filterable clearable
style="display:inline-block;width:690px;"
placeholder="请选择">
<el-option v-for="item in IntroducerList" :key="item.UserId" :label="item.Name" :value="item.UserId">
<el-option v-for="item in IntroducerList" :key="item.UserId" :label="item.MemberUserName" :value="item.UserId">
</el-option>
</el-select>
</el-form-item>
......
......@@ -51,7 +51,7 @@
</el-table-column>
<el-table-column
prop="CardNum"
width="250"
width="200"
label="卡号 ">
</el-table-column>
<el-table-column
......@@ -61,10 +61,14 @@
</el-table-column>
<el-table-column
prop="AccountClassifyStr"
width="160"
width="100"
label="账户分类">
</el-table-column>
<el-table-column
prop="IntroducerName"
width="160"
label="推荐人">
</el-table-column>
<el-table-column
......@@ -72,10 +76,10 @@
label="操作">
<template slot-scope="scope">
<el-tooltip class="item" effect="dark" content="编辑" placement="top">
<img @click="CommonJump('supplierEdit',{supplierId:scope.row.ID})" style="width:32px;height:32px;margin:0 10px" src="../../assets/img/userman/edit.png" alt="">
<img @click="CommonJump('supplierEdit',{supplierId:scope.row.ID})" style="width:32px;height:32px;margin:0 5px" src="../../assets/img/userman/edit.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="删除" placement="top">
<img @click="Delete(scope.row)" style="width:32px;height:32px;margin:0 10px" src="../../assets/img/userman/del.png" alt="">
<img @click="Delete(scope.row)" style="width:32px;height:32px;margin:0 5px" src="../../assets/img/userman/del.png" alt="">
</el-tooltip>
</template>
</el-table-column>
......
......@@ -736,13 +736,16 @@
TestMiniApp() {
var cmdStr = "";
//cmdStr = "/api/test/get";
cmdStr="/api/Mall/GetHome";
//cmdStr = "/api/Mall/GetMessageTemplate";
// cmdStr = "/api/Mall/GetWeChatOpenId";
var postData = {};
this.apipost(cmdStr, postData, res => {
console.log("Test", res.data);
})
//cmdStr="/api/Mall/GetHome";
var postData = {
// "AddressId":154
};
if (cmdStr != "") {
this.apipost(cmdStr, postData, res => {
console.log("TestMiniApp", res.data);
})
}
},
},
mounted() {
......
......@@ -154,20 +154,21 @@
</div>
<div class="goods-item" style="width: 10%;">
<div v-for="(list,index2) in item.DetailList" :key="index2" class="goods" flex="main:center cross:center" v-if="list.OrderIntroduction.Commission!=null && list.OrderIntroduction.Commission!='' && list.OrderIntroduction.Commission!=0 ">
<div v-for="(list,index2) in item.DetailList" :key="index2" class="goods" flex="main:center cross:center" >
<div v-if="list.OrderIntroduction.CommissionState==1">待结算</div>
<div v-if="list.OrderIntroduction.CommissionState==2">已结算</div>
<div v-if="list.OrderIntroduction.CommissionState==1&&list.OrderIntroduction.Commission!=null && list.OrderIntroduction.Commission!='' && list.OrderIntroduction.Commission!=0">待结算</div>
<div v-if="list.OrderIntroduction.CommissionState==2&&list.OrderIntroduction.Commission!=null && list.OrderIntroduction.Commission!='' && list.OrderIntroduction.Commission!=0">已结算</div>
</div>
</div>
<div class="goods-item" style="width: 20%;">
<div v-for="(list,index2) in item.DetailList" :key="index2" class="goods" v-if="list.OrderIntroduction.Commission!=null && list.OrderIntroduction.Commission!='' && list.OrderIntroduction.Commission!=0 ">
<div v-for="(list,index2) in item.DetailList" :key="index2" class="goods">
<div class="share-title" style="margin-bottom: 10px; font-size: 15px;">
<div class="share-title" style="margin-bottom: 10px; font-size: 15px;" v-if="list.OrderIntroduction.UserName!=null && list.OrderIntroduction.UserName!=''">
<span style='color: #999999;margin-right: 10px;'>昵称:</span>
<span>{{list.OrderIntroduction.UserName}}</span>
</div>
<div flex="dir:left cross:center" style="margin-bottom: 10px;" v-if="list.OrderIntroduction.Name!=null && list.OrderIntroduction.Name!='' " >
......@@ -178,6 +179,8 @@
<div flex="dir:left cross:center" class=" share-price" style="margin-bottom: 10px;" v-if="list.OrderIntroduction.Commission!=null && list.OrderIntroduction.Commission!='' && list.OrderIntroduction.Commission!=0 " >
<span style='color: #999999;margin-right: 10px;'>佣金:</span>
<div>{{list.OrderIntroduction.Commission}}</div>
<img v-if='list.OrderIntroduction.CommissionState==1' @click="EditCommission(list)" style="margin-left:8px"
src="../../assets/img/userman/edit1.png" alt="">
</div>
</div>
......@@ -230,6 +233,22 @@
</div>
</el-dialog>
<el-dialog title="佣金修改" :visible.sync="priceDig" width="600px">
<el-form :model="editCommissionMsg" ref="costMsg" label-width="80px">
<el-form-item label="昵称">
<span>{{editUserName}}</span>
</el-form-item>
<el-form-item label="佣金修改">
<el-input size="small" v-model="editCommissionMsg.Commission" step="1" min="0" type="number">
<template slot="append"></template>
</el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="priceDig = false">取 消</el-button>
<el-button size="small" type="primary" @click="costForm()">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
......@@ -289,7 +308,13 @@ export default {
moresendtips:'',
hszDig:false,
hszMsg:{},
commonNum:0
commonNum:0,
editCommissionMsg:{
OrderDetailId:0,
Commission:0
},
editUserName:'',
priceDig: false
}
},
created(){
......@@ -476,6 +501,28 @@ export default {
this.platList=res.data.data;
})
},
EditCommission(item){
console.log(item)
this.editCommissionMsg.OrderDetailId = item.Id;
this.editCommissionMsg.Commission = item.OrderIntroduction.Commission;
this.editUserName= item.OrderIntroduction.UserName;
this.priceDig = true
},
costForm(){
if(this.editCommissionMsg.Commission==''){
this.Error('佣金不能为空');
return
}
this.apipost("/api/order/SetRecommendOrdersCommission", this.editCommissionMsg, res => {
this.priceDig = false
if (res.data.resultCode == 1) {
this.getList();
this.Success(res.data.message);
} else {
this.Error(res.data.message);
}
})
}
},
};
......
......@@ -44,7 +44,7 @@
<el-radio v-model="addMsg.IsEnableFXGrade" :label="1">开启</el-radio>
<el-radio v-model="addMsg.IsEnableFXGrade" :label="2">不开启</el-radio>
</el-form-item>
<el-form-item label="无上级是否开启返佣">
<el-form-item label="无上级是否开启返佣" v-if="addMsg.IsEnableFXGrade==1">
<el-radio v-model="addMsg.IsEnableNoSuperiorFY" :label="1">开启</el-radio>
<el-radio v-model="addMsg.IsEnableNoSuperiorFY" :label="2">不开启</el-radio>
</el-form-item>
......@@ -344,6 +344,9 @@
Save(formName) {
this.$refs[formName].validate((valid) => {
if (valid) {
if(this.addMsg.IsEnableFXGrade==2){
this.addMsg.IsEnableNoSuperiorFY=2
}
let cmd = "/api/user/SetDistributorBasicsInfo";
this.apipost(cmd, this.addMsg,
res => {
......
......@@ -124,7 +124,7 @@
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="reasonDig = false">取 消</el-button>
<el-button size="small" type="primary" @click="czsubmitForm('addMsg')">确 定</el-button>
<el-button size="small" type="primary" @click="czsubmitForm('addMsg')" :loading="tjloading">确 定</el-button>
</span>
</el-dialog>
</div>
......@@ -141,6 +141,7 @@
czType:1,
changeState:false,
loading:false,
tjloading:false,
checkAll: false,
checkedCities: [],
cities: [],
......@@ -176,6 +177,7 @@
RemitId:0,
Type:1,
Remark:'',
ErpEmpId:0
},
imgurl:'',
AuditStatusList:[],
......@@ -205,6 +207,8 @@
if(this.$route.query.UserId){
this.msg.UserId=this.$route.query.UserId;
}
let currentUser = this.getLocalStorage()
this.addMsg.ErpEmpId = currentUser.ERPEmpId
this.getList();
this.getplat();
this.getDown();
......@@ -230,17 +234,17 @@
this.$refs[formName].validate((valid) => {
if (valid) {
let cmd="/api/user/SetDistributorRemitAudit";
this.loading = true
this.tjloading = true
this.apipost(cmd,this.addMsg,
res => {
if (res.data.resultCode === 1) {
this.getList();
this.Success(res.data.message)
this.reasonDig=false;
this.loading = false
this.tjloading = false
} else {
this.Error(res.data.message);
this.loading = false
this.tjloading = false
}
},
null
......
......@@ -35,7 +35,7 @@
style="color:#979dad;font-size:14px;position:relative;top:1px"></span>
</div>
<div class="searchInput" style="width:150px">
<el-input style="display:inline-block;width:125px;height:30px" placeholder="请输入手机号" v-model="msg.Moblie"
<el-input style="display:inline-block;width:125px;height:30px" placeholder="请输入手机号" v-model="msg.Mobile"
size="small" @keyup.enter.native="msg.pageIndex=1,getList()" @clear="msg.pageIndex=1,getList()" clearable>
</el-input>
<span @click="msg.pageIndex=1,getList()" class="el-icon-search"
......@@ -405,7 +405,7 @@
Name: '',
Source: 0,
NickName: '',
Moblie: ''
Mobile: ''
},
total: 0,
platList: [],
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
......@@ -40,6 +40,9 @@
<span @click="msg.pageIndex=1,getList()" class="el-icon-search"
style="color:#979dad;font-size:14px;position:relative;top:1px"></span>
</div>
<el-date-picker v-model="dateList" @change="msg.pageIndex=1,getList()" size="small" type="datetimerange" range-separator="至"
value-format="yyyy-MM-dd HH:mm:ss" start-placeholder="开始日期" end-placeholder="结束日期">
</el-date-picker>
</div>
<el-table :data="tableData" v-loading="loading" border style="width: 100%;margin:20px 0">
<el-table-column prop="Id" label="ID" width="100">
......@@ -199,7 +202,9 @@
Source: 0,
MemberGrade: 0,
Id: '',
Moblie: ''
Moblie: '',
StartTime:'',
EndTime:'',
},
total: 0,
platList: [],
......@@ -225,6 +230,7 @@
Description: '',
},
imgurl: '',
dateList:[],
};
},
......@@ -318,6 +324,16 @@
if(!msg.Id ||msg.Id==''){
msg.Id=0;
}
if(this.dateList && this.dateList.length>0){
console.log(this.dateList)
msg.StartTime=this.dateList[0];
msg.EndTime=this.dateList[1];
}else{
msg.StartTime='';
msg.EndTime='';
}
this.apipost("/api/user/GetMemberUserPageList", msg, res => {
this.loading = false;
if (res.data.resultCode == 1) {
......
......@@ -6,8 +6,18 @@
</el-input>
<el-table ref="multipleTable" :data="dataList" tooltip-effect="dark" height="450" style="width: 100%"
@selection-change="handleSelectionChange">
<el-table-column type="selection" width="50px">
</el-table-column>
<template v-if="isSingle">
<el-table-column width="50px" label="">
<template slot-scope="scope">
<el-radio v-model="scope.row.IsChecked" @change.native="getTemplateRow(scope.$index,scope.row)">&nbsp;
</el-radio>
</template>
</el-table-column>
</template>
<template v-else>
<el-table-column type="selection" width="50px">
</el-table-column>
</template>
<el-table-column label="ID" width="80px">
<template slot-scope="scope">{{ scope.row.Id }}</template>
</el-table-column>
......@@ -34,7 +44,7 @@
</template>
<script>
export default {
props:['ckGoods'],
props: ['ckGoods', "isSingle", "IsGetSpec"],
data() {
return {
dataList: [],
......@@ -42,32 +52,50 @@
pageIndex: 1,
pageSize: 15,
Name: '',
GoodsStatus:1 //上架中
GoodsStatus: 1, //上架中
IsGetSpec: 0
},
total: 0,
selectRow: [],
};
},
created() {},
created() {
if (this.IsGetSpec) {
this.msg.IsGetSpec = this.IsGetSpec;
}
},
methods: {
//获取所有菜单
getList() {
this.apipost("/api/product/GetProductGoodsDialogList", this.msg, res => {
if (res.data.resultCode == 1) {
this.total = res.data.data.count;
this.dataList = res.data.data.pageData;
var tempArray = res.data.data.pageData;
if (tempArray && tempArray.length > 0) {
tempArray.forEach(item => {
item.IsChecked = false;
});
}
this.dataList = JSON.parse(JSON.stringify(tempArray));
} else {
this.Info(res.data.message);
}
})
},
handleSelectionChange(val) {
// if(val.length>this.ckGoods){
// this.Info('超过了');
// val=val.slice(0,this.ckGoods);
// }
this.selectRow = JSON.parse(JSON.stringify(val));
},
getTemplateRow(index, row) {
this.selectRow = [];
if (this.dataList && this.dataList.length > 0) {
this.dataList.forEach(item => {
if (item.Id != row.Id) {
item.IsChecked = false;
}
})
}
this.selectRow.push(JSON.parse(JSON.stringify(row)));
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
......
......@@ -21,7 +21,7 @@
<el-input placeholder="输入关键字进行过滤" style="width:99%;margin-bottom:10px;" v-model="filterText">
</el-input>
<el-tree :data="item.SubMenuList" node-key="PageId" ref="tree" :props="defaultProps" filter
:filter-node-method="filterNode" @check="handleCheck" :check-strictly="true" show-checkbox>
:filter-node-method="filterNode" @check="handleCheck" :check-strictly="true" show-checkbox :check-on-click-node="true">
<span class="custom-tree-node" slot-scope="{ node, data }">
<span :class="{'other_Style':data.SubMenuList&&data.SubMenuList.length>0}">{{ data.PageName }}</span>
</span>
......
......@@ -46,7 +46,7 @@
</el-table-column>
<el-table-column prop="FreightCostMoney" label="快递成本" width="80">
</el-table-column>
<el-table-column prop="FreightFinanceId" label="运费成本" width="80">
<el-table-column prop="FreightFinanceId" label="运费成本单据" width="120">
</el-table-column>
<el-table-column prop="CostFinanceId" label="成本单据" width="100">
</el-table-column>
......@@ -100,9 +100,13 @@
IsPublic: '0', //0-私账1-公账
IsSelectAll:0,
},
ERPEmpId:0,
}
},
created() {},
created() {
let currentUser = this.getLocalStorage()
this.ERPEmpId = currentUser.ERPEmpId
},
mounted() {
this.getAllSupplier();
this.getList();
......@@ -159,6 +163,7 @@
this.finMsg.SupplierId = this.msg.SupplierId;
this.finMsg.IsFinance = this.msg.IsFinance;
this.finMsg.IsSelectAll = this.msg.IsSelectAll;
this.finMsg.FinanceCreateBy = this.ERPEmpId;
this.apipost("/api/Supplier/PayCostFinance", this.finMsg, res => {
if (res.data.resultCode == 1) {
this.Success('设置成功');
......
......@@ -300,6 +300,7 @@
},
//保存选择
saveOrderChoice() {
this.addOrderMsg.IntroductionIds = [];
this.IntroductionIds.forEach(x => {
this.addOrderMsg.IntroductionIds.push(x.OrderIntroduction.IntroductionId);
......@@ -314,7 +315,14 @@
this.Error('请选择返佣订单');
return;
}
const loading = this.$loading({
lock: true,
text: '正在生成账单中...',
spinner: 'el-icon-loading',
});
this.apipost("/api/user/SetRecommendOrdersBillInfo", this.addOrderMsg, res => {
loading.close();
if (res.data.resultCode == 1) {
this.Success(res.data.message);
this.choiceOrder = false;
......@@ -433,7 +441,7 @@
}
.RecommendBill .Re_rightDiv{
float:left;
width:79%;
width:76%;
margin:0 10px;
}
.RecommendBill .ReDivList{
......
<template>
<div class="ActiveData">
<div class="head-title">
活动数据
</div>
<div class="content">
<div>
<el-tabs v-model="msg.status" @tab-click="handleClick">
<el-tab-pane label="全部" name="-1"></el-tab-pane>
<el-tab-pane label="进行中" name="1"></el-tab-pane>
<el-tab-pane label="拼团成功" name="2"></el-tab-pane>
<el-tab-pane label="拼团失败" name="3"></el-tab-pane>
</el-tabs>
</div>
<div>
<el-form size="small" :inline="true">
<el-form-item label="开团时间">
<el-date-picker v-model="dateList" @change="msg.pageIndex=1,getList()" size="small" type="datetimerange"
range-separator="至" value-format="yyyy-MM-dd HH:mm:ss" start-placeholder="开始日期" end-placeholder="结束日期">
</el-date-picker>
</el-form-item>
<el-form-item>
<div class="input-item">
<el-input @keyup.enter.native="getList" size="small" class="input-with-select" placeholder="请输入内容"
v-model="msg.keyword" clearable @clear='getList'>
<el-select v-model="msg.keyword_name" slot="prepend" placeholder="请选择">
<el-option :label="item.label" v-for="(item,index) in search_list" :key="index" :value="item.value"></el-option>
</el-select>
<el-button slot="append" icon="el-icon-search" @click="getList"></el-button>
</el-input>
</div>
</el-form-item>
</el-form>
</div>
<el-table :data="tableData" v-loading="loading" border
style="width: 100%;margin:20px 0">
<el-table-column label="商品信息">
</el-table-column>
<el-table-column label="开团时间" width="250">
</el-table-column>
<el-table-column label="拼团信息" width="350">
</el-table-column>
<el-table-column label="团长信息" width="250">
</el-table-column>
<el-table-column label="活动状态" width="180">
</el-table-column>
<el-table-column label="操作" width="100">
<el-tooltip class="item" effect="dark" content="编辑" placement="top">
<img style="width:32px;height:32px;margin:0 10px" src="../../assets/img/userman/edit.png" alt="">
</el-tooltip>
</el-table-column>
</el-table>
<el-pagination style="text-align:right" background @current-change="handleCurrentChange" :page-size="msg.pageSize"
layout="prev, pager, next" :current-page.sync="msg.pageIndex" :total="total">
</el-pagination>
</div>
</div>
</template>
<script>
export default {
name: "ActiveData",
data() {
return {
//日期数组
dateList: [],
msg: {
pageIndex: 1,
pageSize: 15,
status:'-1', //状态
date_start:'', //开始日期
date_end:'', //结束日期
keyword_name:'', //商品名称
keyword:'' //关键字
},
search_list:[], //商品名称下拉
tableData:[],//列表数据
total: 0,
loading: false,
}
},
created() {
this.getList();
},
methods: {
//获取数据
getList() {
if (this.dateList && this.dateList.length > 0) {
this.msg.date_start = this.dateList[0];
this.msg.date_end = this.dateList[1];
} else {
this.msg.date_start = '';
this.msg.date_end = '';
}
// this.loading = true;
// this.apipost("/api/GroupBuy/GetGroupbuyActivityPageList", this.msg, res => {
// this.loading = false;
// if (res.data.resultCode == 1) {
// this.total = res.data.data.count;
// let pageData = res.data.data.pageData;
// this.tableData = pageData;
// }
// })
},
//切换活动状态
handleClick(val) {
this.msg.pageIndex = 1
this.getList();
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
},
};
</script>
<style>
.ActiveData .content {
background: #fff;
margin-top: 10px;
padding: 20px;
box-sizing: border-box;
}
</style>
This diff is collapsed.
<template>
<div class="pintuanActive">
<div class="head-title">
拼团活动
<el-button style="float:right;margin-top: -5px;" size="small" @click="CommonJump('pintuanActive')" type="primary">
新建活动</el-button>
</div>
<div class="content">
<div>
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane :dataId="0" label="全部" name="first"></el-tab-pane>
<el-tab-pane :dataId="1" label="未开始" name="second"></el-tab-pane>
<el-tab-pane :dataId="2" label="进行中" name="third"></el-tab-pane>
<el-tab-pane :dataId="3" label="已结束" name="fourth"></el-tab-pane>
<el-tab-pane :dataId="4" label="下架中" name="fifth"></el-tab-pane>
</el-tabs>
</div>
<div>
<span>活动时间:</span>
<el-date-picker v-model="dateList" @change="msg.pageIndex=1,getList()" size="small" type="datetimerange"
range-separator="至" value-format="yyyy-MM-dd HH:mm:ss" start-placeholder="开始日期" end-placeholder="结束日期">
</el-date-picker>
<div class="searchInput" style="width:250px;margin-right: 0px;">
<el-input @keyup.enter.native="msg.pageIndex=1,getList()" style="display:inline-block;width:225px;height:30px"
placeholder="请输入商品名称搜索" v-model="msg.QGoodName" @clear="msg.pageIndex=1,getList()" size="small" clearable>
</el-input>
<span @click="msg.pageIndex=1,getList()" class="el-icon-search"
style="color:#979dad;font-size:14px;position:relative;top:1px"></span>
</div>
<span @click="Clearconditions" v-if="msg.QGoodName!='' || (dateList && dateList.length>0)"
class='blue point'>清空筛选条件</span>
</div>
<div style="margin-top:15px">
<el-button @click="tableSet(4)" style="margin-left:10px;" size="mini">上架</el-button>
<el-button @click="tableSet(5)" style="margin-left:10px;" size="mini">下架</el-button>
<el-button @click="tableSet(6)" style="margin-left:10px;" size="mini">删除</el-button>
</div>
<el-table :data="tableData" v-loading="loading" border @selection-change="tableSelect"
style="width: 100%;margin:20px 0">
<el-table-column type="selection" width="55">
</el-table-column>
<el-table-column prop="GoodId" width="120" label="商品ID">
</el-table-column>
<el-table-column label="商品名称" width="320">
<template slot-scope="scope">
<div class="cell">
<div flex="box:first">
<div style="padding-right:10px;">
<div class="app-image" :style="{backgroundImage:'url(' + scope.row.Cover_Img + ')'}"></div>
</div>
<div class="app-ellipsis">
<div class="vue-line-clamp" style="word-break:break-all;-webkit-line-clamp: 2;" >
{{scope.row.QGoodName}}</div>
</div>
</div>
</div>
</template>
</el-table-column>
<el-table-column prop="Goods_Stock" label="库存">
</el-table-column>
<el-table-column label="活动时间" min-width="180">
<template slot-scope="scope">
<div style="width:160px;">
<div>{{scope.row.StartTimeStr}}</div>
<div>{{scope.row.EndTimeStr}}</div>
</div>
</template>
</el-table-column>
<el-table-column prop="groups" width="200" label="拼团组/拼团价">
<template slot-scope="scope">
<div class="cell">
<div flex="dir:top">
<div v-for="(SubItem,SubIndex) in scope.row.groups" :key="SubIndex">
<el-tag style="margin-bottom:10px;">{{SubItem.people_num}}人|¥{{SubItem.price}}</el-tag>
</div>
</div>
</div>
</template>
</el-table-column>
<el-table-column prop="GoodsStatusStr" width="100" label="活动状态">
<template slot-scope="scope">
<el-tag>{{scope.row.GoodsStatusStr}}</el-tag>
</template>
</el-table-column>
<el-table-column prop="address" label="操作" min-width="130">
<template slot-scope="scope">
<el-tooltip class="item" effect="dark" content="编辑" placement="top">
<img style="width:32px;height:32px;margin:0 10px" @click="CommonJump('pintuanActive',{Id:scope.row.ActivityId})" src="../../assets/img/userman/edit.png" alt="">
</el-tooltip>
<el-tooltip class="item" effect="dark" content="活动数据" placement="top">
<img style="width:32px;height:32px;margin:0 10px" src="../../assets/img/userman/order.png" alt="">
</el-tooltip>
</template>
</el-table-column>
</el-table>
<el-pagination style="text-align:right" background @current-change="handleCurrentChange" :page-size="msg.pageSize"
layout="prev, pager, next" :current-page.sync="msg.pageIndex" :total="total">
</el-pagination>
</div>
</div>
</template>
<script>
export default {
name: "pintuanActive",
data() {
return {
//日期数组
dateList: [],
activeName: 'first',
msg: {
pageIndex: 1,
pageSize: 15,
QGoodName: '', //商品名称
QStartDate: '', //开始日期
QEndDate: '', //结束日期
},
tableData:[],//列表数据
total: 0,
loading: false,
}
},
created() {
this.getList();
},
methods: {
//获取数据
getList() {
if (this.dateList && this.dateList.length > 0) {
this.msg.QStartDate = this.dateList[0];
this.msg.QEndDate = this.dateList[1];
} else {
this.msg.QStartDate = '';
this.msg.QEndDate = '';
}
this.loading = true;
this.apipost("/api/GroupBuy/GetGroupbuyActivityPageList", this.msg, res => {
this.loading = false;
if (res.data.resultCode == 1) {
this.total = res.data.data.count;
let pageData = res.data.data.pageData;
this.tableData = pageData;
}
})
},
// 上架 下架 删除
tableSet(num) {
},
//切换活动状态
handleClick(val) {
this.msg.pageIndex = 1
this.getList();
},
handleCurrentChange(val) {
this.msg.pageIndex = val;
this.getList();
},
//清空筛选条件
Clearconditions() {
this.msg.QGoodName = '';
this.dateList = [];
this.getList();
},
//单选 全选返回数据
tableSelect() {
}
},
};
</script>
<style>
.pintuanActive .content {
background: #fff;
margin-top: 10px;
padding: 20px;
box-sizing: border-box;
}
.pintuanActive .app-image {
background-size: cover;
background-position: center center;
width: 50px;
height: 50px;
}
</style>
......@@ -140,7 +140,7 @@
},
//获取拼团配置
getGroupBuyConfig() {
this.apipost("/api/GroupBuy/GetGroupBuyConfigModule", {}, res => {
this.apipost("/api/GroupBuy/GetGroupBuyConfig", {}, res => {
if (res.data.resultCode == 1) {
var dataObj = res.data.data;
if (dataObj) {
......
<style>
.pintuan-share .box {
border-top: 1px solid #E8EAEE;
border-left: 1px solid #E8EAEE;
border-right: 1px solid #E8EAEE;
padding: 16px;
}
</style>
<template>
<div>
<el-form-item label="是否开启分销佣金" size="small">
<el-switch :active-value="1" :inactive-value="0" v-model="msg.SeparateDistribution">
</el-switch>
</el-form-item>
<template v-if="msg.SeparateDistribution == 1">
<el-form-item label="分销类型">
<el-radio v-model="msg.SeparateDistributionType" :label="0">普通设置</el-radio>
<el-radio v-model="msg.SeparateDistributionType" :label="1">详细设置</el-radio>
</el-form-item>
<el-form-item label="分销佣金类型" size="small">
<el-radio v-model="msg.SeparateDistributionMoneyType" :label="0">固定金额</el-radio>
<el-radio v-model="msg.SeparateDistributionMoneyType" :label="1">百分比</el-radio>
</el-form-item>
<!-- <template v-if="sign !== 'pintuan'">
<app-goods-share v-model="ruleForm" :is_mch="is_mch" :attr-groups="attrGroups"
:attr_setting_type="cForm.attr_setting_type" :share_type="ruleForm.share_type" :use_attr="ruleForm.use_attr"
:sign="sign" pintuan_sign="单独购买"></app-goods-share>
</template>
<template v-if="sign === 'pintuan' && cForm.is_alone_buy == 1">
<app-goods-share v-model="ruleForm" :is_mch="is_mch" :attr-groups="attrGroups"
:attr_setting_type="ruleForm.attr_setting_type" :share_type="ruleForm.share_type"
:use_attr="ruleForm.use_attr" :sign="sign" pintuan_sign="单独购买"></app-goods-share>
</template> -->
<el-form-item>
<div class="pintuan-share">
<el-card v-for="(item,index) in shareGroup_list" :key="index" style="margin-bottom:20px;">
<div slot="header" class="clearfix">
<div class="box">
<div style="display:inline-block;">
<el-tag type="danger">{{item.People_Num}}人团</el-tag>
</div>
<label style="margin-bottom:0;padding:18px 10px;">批量设置</label>
<el-select placeholder="请选择层级" v-model="fxVal" style="width:130px;" size="small">
<el-option v-for="(item, index) in butorInt" :label="`${index + 1}级分销`" :value="index + 1"
:key="index+'12'">
</el-option>
</el-select>
<el-input type="text" size="small" style="width:150px;margin-top:5px;">
<el-button slot="append">
<span v-if="msg.SeparateDistributionMoneyType == 2"></span>
<span v-if="msg.SeparateDistributionMoneyType == 1">%</span>
</el-button>
</el-input>
<el-button size="small" type="primary">设置</el-button>
</div>
<el-table ref="multipleTable" :data="tableData" tooltip-effect="dark"
style="width: 100%;border:1px solid #E8EAEE" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55">
</el-table-column>
<el-table-column label="等级名称" prop="leval" width="100">
</el-table-column>
<el-table-column label="一级分销" width="576">
<template slot-scope="scope">
<el-input type="text" size="small" v-model="scope.row.yiji">
<el-button slot="append"></el-button>
</el-input>
</template>
</el-table-column>
<el-table-column label="二级分销" width="575">
<template slot-scope="scope">
<el-input type="text" size="small" v-model="scope.row.erji">
<el-button slot="append"></el-button>
</el-input>
</template>
</el-table-column>
</el-table>
</div>
</el-card>
</div>
</el-form-item>
</template>
</div>
</template>
<script>
export default {
props: ["shareGroup_list"],
data() {
return {
fxVal: '',
butorInt: 0,
msg: {
SeparateDistribution: 0, //是否开启分销佣金
SeparateDistributionType: 1, //分销类型
SeparateDistributionMoneyType: 1, //分销佣金类型
},
tableData: [{
leval: '默认等级',
yiji: 0,
erji: 3
}]
};
},
created() {
console.log(this.shareGroup_list, 'shareGroup_list');
},
methods: {
handleSelectionChange() {
},
getDistributor() {
this.apipost("/api/user/GetDistributorBasicsInfo", {}, res => {
if (res.data.resultCode == 1) {
console.log(res,'resss');
this.butorInt = res.data.data.DistributorTier;
}
});
},
},
mounted() {
this.getDistributor();
},
computed: {
},
};
</script>
This diff is collapsed.
<style>
.app-attr .box {
line-height: 64px;
border-top: 1px solid #E8EAEE;
border-left: 1px solid #E8EAEE;
border-right: 1px solid #E8EAEE;
padding: 0 16px;
}
.app-attr .box .batch {
margin-left: -10px;
margin-right: 20px;
}
.app-attr .el-select .el-input {
width: 130px;
}
.app-attr .input-with-select .el-input-group__prepend {
background-color: #fff;
}
.app-attr .header-require:before {
content: '*';
color: #F56C6C;
margin-right: 2px;
}
.app-attr .priceComTable {
width: 100%;
border-collapse: collapse;
}
.app-attr .priceComTable tr th {
height: 48px;
font-size: 14px;
color: #909399;
border: 1px solid #EBEEF5;
font-weight: bold;
}
.app-attr .priceComTable tr {
background: #fff;
text-align: center;
height: 50px;
}
.app-attr .priceComTable tr td {
font-size: 14px;
border: 1px solid #EBEEF5;
}
.app-attr .fx_inner:hover td {
background-color: #F5F7FA;
}
.app-attr .priceComTable td {
transition: background-color .25s ease;
}
</style>
<!--阶梯团价格库存设置-->
<template>
<div class="app-attr">
<div class="box">
<el-form label-width="180px">
<el-checkbox v-model="attrBatch" @change="selectClick" style="position:absolute">全选
</el-checkbox>
<el-form-item label="批量设置" size="small" style="margin-bottom:0;padding:18px 0;display:inline-block;">
<el-input @keyup.enter.native="batchAttr()" size="small" type="number" v-model="batchNum">
<el-select v-model="selectData" slot="prepend">
<el-option label="不限" :value="0"></el-option>
<el-option v-for="(item, index) in cList" :value="index" :key="item.Id" :label="item.namwe">
{{item.name}}
</el-option>
</el-select>
<template slot="append">
<el-button @click="batchAttr()">
确定
</el-button>
</template>
</el-input>
</el-form-item>
</el-form>
</div>
<table class="priceComTable">
<thead>
<tr>
<td style="width:55px;">
<el-checkbox></el-checkbox>
</td>
<td v-for="(headerItem,headerIndex) in attrGroups" :key="headerIndex">{{headerItem.Name}}</td>
<td>
<div class="header-require">拼团价</div>
</td>
<td>
<div class="header-require">拼团库存</div>
</td>
</tr>
</thead>
<tbody>
<tr v-for="(rootItem,rootIndex) in groupPriceList" :key="rootIndex">
<td>
<el-checkbox></el-checkbox>
</td>
<template v-for="(attrItem, attrIndex) in attrGroups">
<td v-if="attrIndex == index2" v-for="(item2, index2) in rootItem.AttrList" :key="index2">
{{ rootItem.AttrList[index2].SVName }}
</td>
</template>
<td>
<el-input type="number" v-model="rootItem.PinTuanPrice" size="small" style="padding:0 10px" />
</td>
<td>
<el-input type="number" v-model="rootItem.PinTuanStock" size="small" style="padding:0 10px" />
</td>
</tr>
</tbody>
</table>
</div>
</template>
<script>
export default {
props: ["groupPriceList", "attrGroups"],
data() {
return {
attrBatch: false, //是否全选
cList: [{
Id: 0,
name: '拼团价'
}, {
Id: 1,
name: '拼团库存'
}],
selectData: '',
//批量设置价格
batchNum: ''
};
},
created() {
},
methods: {
//点击全选
selectClick() {
},
//点击批量设置确定
batchAttr() {
}
},
mounted() {
},
computed: {
},
};
</script>
<style>
.header-require:before {
content: '*';
color: #F56C6C;
margin-right: 2px;
}
</style>
<!--阶梯团基础信息设置-->
<template>
<div>
<el-form>
<el-form-item label-width="0">
<div>阶梯团设置</div>
<el-table style="margin-bottom: 15px;width: 100%" v-if="group_list.length > 0" :data="group_list" border>
<el-table-column width="200">
<template slot="header">
<div class="header-require">拼团人数</div>
</template>
<template slot-scope="scope">
<el-input v-model="scope.row.People_Num" size="small" type="text" maxlength="5"
oninput="this.value = this.value.replace(/[^0-9]/, '')" placeholder="请输入拼团人数"></el-input>
</template>
</el-table-column>
<el-table-column label="团长优惠" width="200">
<template slot-scope="scope">
<el-input type="text" v-model="scope.row.Preferential_Price" size="small" placeholder="请输入团长优惠">
</el-input>
</template>
</el-table-column>
<el-table-column width="400">
<template slot="header">
<div class="header-require">拼团时间</div>
</template>
<template slot-scope="scope">
<el-input v-model="scope.row.Pintuan_Time" maxlength="4" type="text" size="small"
oninput="this.value = this.value.replace(/[^0-9]/, '')" placeholder="请输入拼团时间">
<template slot="append">小时</template>
</el-input>
</template>
</el-table-column>
<el-table-column label="最多开团数量" :render-header="delegation" width="200">
<template slot-scope="scope">
<el-input v-model="scope.row.Group_Num" type="text" size="small" maxlength="5"
oninput="this.value = this.value.replace(/[^0-9]/, '')" placeholder="请输入团长数量">
<template slot="append"></template>
</el-input>
</template>
</el-table-column>
<el-table-column label="操作">
<template slot-scope="scope">
<el-button size="small" @click="destroyPintuan(scope.$index)" circle type="text">
<el-tooltip class="item" effect="dark" content="删除" placement="top">
<img src="../../../assets/img/userman/del.png" alt="">
</el-tooltip>
</el-button>
</template>
</el-table-column>
</el-table>
<el-button type="text" @click="addPintuan">
<i class="el-icon-plus" style="font-weight: bolder;margin-left: 5px;"></i>
<span style="color: #353535;font-size: 14px">新增阶梯团</span>
</el-button>
</el-form-item>
<el-card v-for="(item, index) in group_list" style="margin-top: 24px;" :key="index" shadow="never">
<div slot="header">
<el-tag type="danger">{{item.People_Num}}人团</el-tag>
</div>
<el-form-item>
<div>价格与库存</div>
<groupPrice :attrGroups="new_attr_groups" :groupPriceList="item.StepPriceList">
</groupPrice>
</el-form-item>
</el-card>
</el-form>
</div>
</template>
<script>
import groupPrice from "@/components/pintuan/pintuanPlugin/groupPrice.vue"
export default {
props: ['SpecList', "GroupPriceList", "SpecPriceList"],
components: {
groupPrice //拼团与库存组件
},
data() {
return {
group_list: [],
new_attr_groups: [],
new_SpecPriceList: [],
};
},
watch: {
'GroupPriceList': {
handler: function (val, oldval) {
this.group_list = JSON.parse(JSON.stringify(val));
},
},
'SpecList': {
handler: function (val, oldval) {
this.new_attr_groups = JSON.parse(JSON.stringify(val));
},
},
'SpecPriceList': {
handler: function (val, oldval) {
this.new_SpecPriceList = JSON.parse(JSON.stringify(val));
},
},
},
created() {},
methods: {
//表头提示样式
delegation(h, {
column
}) {
return h(
"el-popover", {
props: {
placement: "top",
trigger: "hover",
popperClass: "popperClassResOut"
}
},
[
h(
"div",
[
`可发起拼团的次数(包括正在拼团中、拼团完成),`,
h('br'),
`0代表不限制次数`,
]
),
h(
"span", {
slot: "reference"
},
[
column.label,
h("i", {
class: "el-icon-info",
style: {
marginLeft: "4px",
cursor: "pointer",
}
})
]
),
]
)
},
//新增阶梯团
addPintuan() {
if (!this.group_list) {
this.group_list = [];
}
var attr = [];
if (this.new_SpecPriceList && this.new_SpecPriceList.length > 0) {
this.new_SpecPriceList.forEach(item => {
var obj = {
AttrList: item.AttrList,
PinTuanPrice: 0,
PinTuanStock: 0
}
attr.push(obj);
})
}
this.group_list.push({
People_Num: 2,
Preferential_Price: 1,
Pintuan_Time: 1,
goods_id: 0,
Group_Num:0,
StepPriceList: attr
});
this.$emit('getGroup', this.group_list); //params是传递的参数
},
//删除拼团
destroyPintuan(index) {
this.group_list.splice(index, 1);
this.$emit('getGroup', this.group_list); //params是传递的参数
}
},
mounted() {
}
};
</script>
<template>
<div>
<el-form label-width="180px">
<el-form-item label="是否享受会员功能" size="small">
<el-switch :active-value="1" :inactive-value="0" v-model="msg.EnjoyMember">
</el-switch>
</el-form-item>
<el-form-item label="是否单独设置会员价" size="small">
<el-switch :active-value="1" :inactive-value="0" v-model="msg.SeparateSetMember">
</el-switch>
</el-form-item>
<el-form-item v-if="msg.SeparateSetMember == 1 && huiyList.length == 0" label="会员价设置">
<el-button @click="CommonJump('setMember')" size="small" type="danger">如需设置请先添加会员</el-button>
</el-form-item>
<el-form-item v-if="
msg.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="TbaleSelectionChange">
<el-table-column type="selection" width="55">
</el-table-column>
<template v-for="(item, index) in SpecificationList">
<el-table-column :key="index+'16'" :label="item.Name" width="100">
<template slot-scope="scope">
<span v-if="index == index2" v-for="(item2, index2) in scope.row.AttrList" :key="index2+'17'">
{{ scope.row.AttrList[index2].SVName }}
</span>
</template>
</el-table-column>
</template>
<template v-for="(item, index) in huiyList">
<el-table-column :key="index+'18'" :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-form>
</div>
</template>
<script>
export default {
props: ['SpecificationPriceList', 'SpecificationList'],
data() {
return {
huiyList: [], //会员数组
memberinput: "", //会员价设置输入
memberVal: '', //会员类型下拉
memberList2: [], //列表数据
msg: {
EnjoyMember: 1, //是否享受会员功能
SeparateSetMember: 0, //是否开启会员价
}
};
},
created() {
},
methods: {
gethuiyList() {
let msg = {
Grade: 0,
Name: "",
Enabled: 1
};
this.apipost("/api/user/GetMemberGradeList", msg, res => {
this.loading = false;
if (res.data.resultCode == 1) {
let pageData = res.data.data;
this.huiyList = pageData;
// this.huiyList.forEach(item => {
// let obj = {
// Name: item.Name,
// MemberGrade: item.Grade,
// MemberPrice: 0
// };
// this.memberList1[0].GradePriceList.push(obj);
// });
}
});
},
// 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;
// }
// });
// }
// });
// });
// },
TbaleSelectionChange(){
}
},
mounted() {
this.gethuiyList();
},
computed: {
},
};
</script>
......@@ -326,8 +326,8 @@
</el-switch>
</el-form-item>
<el-form-item label="样式选择" size="mini">
<div class="block-box" v-for="(item,index) in styleList" :key="index" :class="isActive==item.Id?'active':''"
@click="getStyleType(item.Id,item.Style)">
<div class="block-box" v-for="(item,index) in styleList" :key="index"
:class="item.Style==msg.Style?'active':''" @click="getStyleType(item)">
<img src="../../assets/img/storeDesign/select.png" class="Cubeselect" alt="" />
<div class="opacity"></div>
<el-button class="imgCube_chooseBtn" type="primary">启用该样式</el-button>
......@@ -434,7 +434,6 @@
initialFrameWidth: null,
initialFrameHeight: 350,
},
isActive: -1,
msg: {
GroupByConfigId: 0, //配置编号
Is_Share: 0, //是否开启分销
......@@ -454,44 +453,44 @@
},
//样式选择枚举
styleList: [{
Id: 0,
Id: 1,
size: ['750*360'],
Style: 1,
ImgUrl: this.domainManager().ImageUrl + '/Static/cube1-1.png'
}, {
Id: 1,
Id: 2,
size: ['300*360', '450*360'],
Style: 2,
ImgUrl: this.domainManager().ImageUrl + '/Static/cube1-2.png'
}, {
Id: 2,
Id: 3,
size: ['300*360', '450*180', '450*180'],
Style: 3,
ImgUrl: this.domainManager().ImageUrl + '/Static/cube1-3.png'
}, {
Id: 3,
Id: 4,
size: ['300*360', '450*180', '225*180', '225*180'],
Style: 4,
ImgUrl: this.domainManager().ImageUrl + '/Static/cube1-4.png'
}, {
Id: 4,
Id: 5,
size: ['375*240', '375*240'],
Style: 2,
Style: 5,
ImgUrl: this.domainManager().ImageUrl + '/Static/cube2-1.png'
}, {
Id: 5,
Id: 6,
size: ['250*240', '250*240', '250*240'],
Style: 3,
Style: 6,
ImgUrl: this.domainManager().ImageUrl + '/Static/cube2-2.png'
}, {
Id: 6,
Id: 7,
size: ['188*188', '188*188', '188*188', '188*188'],
Style: 4,
Style: 7,
ImgUrl: this.domainManager().ImageUrl + '/Static/cube2-3.png'
}, {
Id: 7,
Id: 8,
size: ['375*186', '375*186', '375*186', '375*186'],
Style: 4,
Style: 8,
ImgUrl: this.domainManager().ImageUrl + '/Static/cube3-1.png'
}],
defaultMsg: [{
......@@ -539,15 +538,14 @@
this.checkIndex = tab.name;
},
//点击选择广告
getStyleType(Id, Style) {
this.isActive = Id;
this.msg.Style = Id;
getStyleType(item) {
this.msg.Style = item.Style;
this.msg.MagicDataList = [];
for (var i = 0; i < Style; i++) {
for (var i = 0; i < item.size.length; i++) {
this.msg.MagicDataList.push(this.defaultMsg[i]);
}
this.msg.MagicDataList.forEach((x, index) => {
x.size = this.styleList[Id].size[index]
x.size = this.styleList[(item.Id-1)].size[index]
})
},
//保存拼团配置
......@@ -567,7 +565,7 @@
},
//获取拼团配置
getGroupBuyConfig() {
this.apipost("/api/GroupBuy/GetGroupBuyConfigModule", {}, res => {
this.apipost("/api/GroupBuy/GetGroupBuyConfig", {}, res => {
if (res.data.resultCode == 1) {
var dataObj = res.data.data;
if (dataObj) {
......@@ -663,7 +661,10 @@
},
//删除
RemmoveRole(index) {
this.msg.BannerList.splice(index, 1);
let that = this;
that.Confirm("确认要退出系统吗?", function () {
that.msg.BannerList.splice(index, 1);
});
},
//新窗口打开链接
openNewUrl(path) {
......
......@@ -172,10 +172,10 @@
<li class="menu_item" :class="{'Fchecked':isChecked=='/pintuanMsg'}" @click="isChecked='/pintuanMsg',CommonJump('pintuanMsg')">
<i class="el-icon-menu"></i><span>消息通知</span>
</li>
<li class="menu_item" :class="{'Fchecked':isChecked=='/AppletPublishing'}" @click="isChecked='/AppletPublishing',CommonJump('AppletPublishing')">
<li class="menu_item" :class="{'Fchecked':isChecked=='/pintuanList'}" @click="isChecked='/pintuanList',CommonJump('pintuanList')">
<i class="el-icon-menu"></i><span>拼团活动</span>
</li>
<li class="menu_item" :class="{'Fchecked':isChecked==4}" @click="isChecked=4">
<li class="menu_item" :class="{'Fchecked':isChecked=='/ActiveData'}" @click="isChecked='/ActiveData',CommonJump('ActiveData')">
<i class="el-icon-menu"></i><span>活动数据</span>
</li>
</ul>
......
......@@ -296,7 +296,7 @@
Sort:100,
Describe:'',
OnlyMember:0,
PickupCenter:0,
PickupCenter:1,
MemberLevelList:[],
ProductList:[],//指定商品类型的数组
StartDate:'',
......
......@@ -128,9 +128,8 @@
<el-button type="primary" icon="el-icon-arrow-up" v-if="index>0" @click="resetSord(0)" style="right: -25px; top: 0;"></el-button>
<el-button type="primary" icon="el-icon-arrow-down" v-if="index!=dataLeng-1" @click="resetSord(1)" style="right: -25px; top: 30px;"></el-button>
</div>
<div class="diy-component-preview">
<div class="banner-container bannerTopRadis" :style="{height:banData.data.height+'px',borderRadius:banData.data.radius+'px',
marginBottom:banData.data.topAndBottom+'px',marginTop:banData.data.topAndBottom+'px',marginLeft:banData.data.leftAndRight+'px',marginRight:banData.data.leftAndRight+'px'}">
<div class="diy-component-preview" :style="{backgroundColor:banData.data.background,paddingBottom:banData.data.topAndBottom+'px',paddingTop:banData.data.topAndBottom+'px',paddingLeft:banData.data.leftAndRight+'px',paddingRight:banData.data.leftAndRight+'px'}">
<div class="banner-container bannerTopRadis" :style="{height:banData.data.height+'px',borderRadius:banData.data.radius+'px'}">
<el-carousel :interval="3000" arrow="always" v-if="banData.data.style==1" :height="banData.data.height+'px'">
<el-carousel-item v-for="(item,index) in banData.data.banners" :key="index">
<div class="banner-img" :class="banData.data.fill==1?'banner-img-cover':'banner-img-contain'" :style="{backgroundImage:'url('+getIconLink(item.picUrl)+')'}"></div>
......@@ -217,6 +216,9 @@
<template slot="append">px</template>
</el-input>
</el-form-item>
<el-form-item label="背景色">
<el-color-picker v-model="banData.data.background"></el-color-picker>
</el-form-item>
</el-form>
</div>
<el-dialog title="选择链接" :visible.sync="isShowLink" width="800px">
......
......@@ -542,9 +542,9 @@
</el-dialog>
<!-- 选择商品 -->
<el-dialog title="选择商品" :visible.sync="isShowGoods" custom-class="goodsDialog">
<choiceGood ref="choiceGood" :ckGoods="ckGoods"></choiceGood>
<choiceGood ref="choiceGood" ></choiceGood>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="quxiaoGoods()">取 消</el-button>
<el-button size="small" @click="isShowGoods=false">取 消</el-button>
<el-button size="small" type="danger" @click="getGoodsChoice()">确 定</el-button>
</span>
</el-dialog>
......
This diff is collapsed.
......@@ -9,7 +9,8 @@
style="right: -25px; top: 30px;"></el-button>
</div>
<div class="diy-component-preview">
<div class="diy-search" :style="{background:searchData.data.background}">
<div class="diy-search" :style="{background:searchData.data.background,marginLeft:searchData.data.left+'px',
marginRight:searchData.data.right+'px',marginTop:searchData.data.top+'px',marginBottom:searchData.data.bottom+'px'}">
<div
:style="{background:searchData.data.color,borderRadius:searchData.data.radius+'px',color:searchData.data.textColor,textAlign:searchData.data.textPosition}">
{{searchData.data.placeholder}}
......@@ -44,6 +45,26 @@
<el-radio v-model="searchData.data.textPosition" label="left">居左</el-radio>
<el-radio v-model="searchData.data.textPosition" label="right">居右</el-radio>
</el-form-item>
<el-form-item label="上边距">
<el-input type="text" size="small" @keyup.native="checkInteger(searchData.data,'top','-')" v-model="searchData.data.top" @change="getminNum()">
<template slot="append">px</template>
</el-input>
</el-form-item>
<el-form-item label="下边距">
<el-input type="text" size="small" @keyup.native="checkInteger(searchData.data,'bottom','-')" v-model="searchData.data.bottom" @change="getminNum()">
<template slot="append">px</template>
</el-input>
</el-form-item>
<el-form-item label="左边距">
<el-input type="text" size="small" @keyup.native="checkInteger(searchData.data,'left','-')" v-model="searchData.data.left" @change="getminNum()">
<template slot="append">px</template>
</el-input>
</el-form-item>
<el-form-item label="右边距">
<el-input type="text" size="small" @keyup.native="checkInteger(searchData.data,'right','-')" v-model="searchData.data.right" @change="getminNum()">
<template slot="append">px</template>
</el-input>
</el-form-item>
</el-form>
</div>
</div>
......@@ -66,7 +87,20 @@
delPlugin() {
this.$emit('comDelPlugin', this.index);
},
getminNum(){
if(this.searchData.data.top==''){
this.searchData.data.top=0;
}
if(this.searchData.data.right==''){
this.searchData.data.right=0;
}
if(this.searchData.data.bottom==''){
this.searchData.data.bottom=0;
}
if(this.searchData.data.left==''){
this.searchData.data.left=0;
}
}
},
mounted() {}
};
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
<template>
<div class="grantStatistics" v-loading="loading">
<div class="el-card__header">
<span>积分收支</span>
<span>优惠券统计</span>
<div style="display: flex;flex-direction: row;align-items: center">
<el-button type="primary" class="el-button--small" @click="Export">导出全部</el-button>
</div>
......
This diff is collapsed.
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