yuminge-app/yun-min-program-plugin-master/packageF/storeManagement/storeMemberInfo/storeMemberInfo.js

491 lines
12 KiB
JavaScript

// packageF/storeManagement/storeMemberInfo/storeMemberInfo.js
import util from '../../../utils/util.js';
var behavior = require('../common.js');
var app = getApp();
Page({
behaviors: [behavior],
/**
* 页面的初始数据
*/
data: {
memberId: '',
memberData: {},
memberChild: {},
titleBgMode: "hide",
rechargePopup: false, // 积分 余额共用一个弹框
typeText:"",
popText: '', // 积分 余额
recharge: {
integral: '',
balance: '',
remarks: '',
},
recommendId:"",//推荐人Id
recommendInfo:{},//推荐人信息
couponPopup: false, // 优惠券
CouponAll:[],//所有优惠劵
ChooseCouponPopup:false,//选择优惠劵开关
info:{}, //赠送优惠劵名称
couponsName:"",//优惠劵名称
chooseCouponValue:'',
coupons: {
id: '',
name: '',
number: '',
emptyName: false,
},
isEmitLevel:false,
level_list:[],
member_list:[],
memberFlag:true,
//会员限期
currentDate: new Date().getTime(),
minDate: new Date('1990-1-1').getTime(),
formatter(type, value) {
if (type === 'year') {
return `${value}`;
}
if (type === 'month') {
return `${value}`;
}
return value;
},
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
if(options.id){
this.setData({memberId:options.id});
this.getData();
this.getAllCoupon();
this.getMemberData()
}
},
//获取会员分组
getMemberData(){
app._postNetWork({
url:app.getNetAddresss("plugin.shop-assistant.frontend.member.get-group"),
success:(res) => {
if(res.data.result == 1){
this.setData({
member_list:res.data.data
})
}
}
})
},
changeMember_groupId(e){
this.setData({
['memberChild.group_id']:e.detail
})
},
SearchRecommend(e){
this.setData({recommendId:e.detail.value})
this.throttleFn("recommend")
},
//获取会员信息
getMemberInfo(){
this.setData({memberFlag:false})
app._postNetWork({
url:app.getNetAddresss("plugin.shop-assistant.frontend.member.search-member"),
data:{parent_id:this.data.recommendId},
success:(res) => {
if(res.data.result == 1 && res.data.data.length!==0){
this.setData({recommendInfo:res.data.data[0],memberFlag:true})
}else{
this.setData({recommendInfo:{},memberFlag:false})
}
}
})
},
onClick(event){
let info =event.currentTarget.dataset.info
this.setData({info,ChooseCouponPopup:false})
},
//选择优惠劵搜索结果
setCouponsName(e){
let name = e.detail.value;
let searchCoupons= this.data.CouponAll.filter(item => {
if(item.name.indexOf(name)!==-1){
return item;
}
})
if(name!==''){
this.setData({CouponAll:searchCoupons})
}else{
this.getAllCoupon()
}
},
//获取所有优惠劵
getAllCoupon(){
app._postNetWork({
url: app.getNetAddresss("plugin.shop-assistant.frontend.coupon.all-coupon"),
success: (res) => {
if(res.data.result == 1){
this.setData({CouponAll:res.data.data.list})
}
}
});
},
//修改会员限期
onInput(event){
this.setData({
currentDate: event.detail,
});
},
setIsEmitLevel(e){
if(e){
let {text:typeText} = e.currentTarget.dataset;
this.setData({typeText})
}
this.setData({isEmitLevel:!this.data.isEmitLevel})
},
// 选择优惠劵
onChangeCoupon(event){
this.setData({chooseCouponValue:event.detail})
},
changeLevel_id({detail}){
this.setData({["memberChild.level_id"]:detail})
},
getlevel_name(level_id){
let {level_list} = this.data;
for(let i=0;i<level_list.length;i++){
let item = level_list[i];
if(level_id === item.id) return this.setData({["memberChild.level"]:item});
}
},
validity(){
let d1 = new Date(this.data.currentDate),d2=new Date()
let cha = d1.getTime()-d2.getTime();
let day = Math.floor(cha/(24*60*60*1000));
if(day == -1){
return 1
}else if(day == 0){
return 2
}else if(day<-1){
return ''
}else{
return day +2
}
},
emitLevel(){
this.setIsEmitLevel();
let urlStr = '',json={};
if(this.data.typeText == '推荐人'){
urlStr = app.getNetAddresss("plugin.shop-assistant.frontend.member.change-parent");
json = {
uid:this.data.memberId,
arent_id:this.data.recommendId
}
}else{
urlStr = app.getNetAddresss("plugin.shop-assistant.frontend.member.update-member");
json = {
id:this.data.memberId,
member:{
level_id: this.data.memberChild.level_id || '',
validity:this.validity(),
group_id:this.data.memberData.yz_member.group_id || ''
}
}
}
app._postNetWork({
url: urlStr,
data: json,
success: ({data:{result,msg}}) => {
if (result != 1) return app.tips(msg);
app.tips("修改成功");
this.data.typeText !== '推荐人' && this.getlevel_name(json.member.level_id);
this.getData();
}
});
},
showRechargePopup(evt){
let type = evt.currentTarget.dataset.type;
let changeData={
rechargePopup:true,
recharge:{
integral: '',
balance: '',
remarks: ''},
};
if(type == "integral"){
changeData['popText']="积分";
}else {
changeData['popText']="余额";
}
this.setData(changeData);
},
closeRechargePop(){
this.setData({
rechargePopup:false
});
},
setRechargeContent(evt){
let name = evt.currentTarget.dataset.name;
this.data.recharge[name] = evt.detail.value;
},
setCouponsContent(evt){
let name = evt.currentTarget.dataset.name;
if(name == 'id'){
this.setData({
'coupons.id':evt.detail.value
});
this.throttleFn();
}else {
this.data.coupons[name] = evt.detail.value;
}
},
getData(){
let urlStr = app.getNetAddresss("plugin.shop-assistant.frontend.member.get-detail");
app._postNetWork({
url: urlStr,
data: {id:this.data.memberId},
success: (resdata) => {
var res = resdata.data;
if (res.result != 1) return app.tips(res.msg);
this.setData({
memberData:res.data,
memberChild:res.data.yz_member ? res.data.yz_member : {},
'memberData.createtime':util.formatTimeTwo(res.data.createtime, 'Y-M-D h:m:s'),
level_list:res.data.level_list || []
});
}
});
},
changeAgent(evt){
this.setData({
'memberChild.is_agent':evt.detail
});
let urlStr = app.getNetAddresss("plugin.shop-assistant.frontend.member.update-agent");
app._postNetWork({
url: urlStr,
data: {id:this.data.memberId,is_agent: this.data.memberChild.is_agent},
success: (resdata) => {
var res = resdata.data;
if (res.result != 1){
this.setData({
'memberChild.is_agent':evt.detail==1 ? 0 : 1
});
return app.tips("修改失败");
}
app.tips("修改成功");
}
});
},
// 确认充值
confirmRecharge () {
if (this.data.popText === "积分") {
this.rechargeIntegral();
} else {
this.rechargeBalance();
}
},
// 充值积分
rechargeIntegral () {
if (!this.data.recharge.integral) {
return app.tips("请输入充值数量");
}
let json = {};
json.uid = this.data.memberId;
json.integral = {
integral: this.data.recharge.integral * 1,
remark: this.data.recharge.remarks
};
let urlStr = app.getNetAddresss("plugin.shop-assistant.frontend.member.recharge-integral");
app._postNetWork({
url: urlStr,
data: json,
success: (resdata) => {
var res = resdata.data;
app.tips(res.msg);
if (res.result != 1) return ;
this.closeRechargePop();
this.getData();
}
});
},
// 充值余额
rechargeBalance () {
if (!this.data.recharge.balance) {
return app.tips("请输入充值数量");
}
let json = {};
json.uid = this.data.memberId;
json.balance = {
balance: this.data.recharge.balance * 1,
remark: this.data.recharge.remarks
};
let urlStr = app.getNetAddresss("plugin.shop-assistant.frontend.member.recharge-balance");
app._postNetWork({
url: urlStr,
data: json,
success: (resdata) => {
var res = resdata.data;
app.tips(res.msg);
if (res.result != 1) return ;
this.closeRechargePop();
this.getData();
}
});
},
//打开选择优惠劵
showChooseCoupon(){
this.setData({ChooseCouponPopup:true})
},
// 优惠券弹框
showCouponPopup () {
this.setData({
couponPopup:true,
coupons : {
id: '',
name: '',
number: '',
emptyName: false,
}
});
},
// 节流
throttleFn(type="conpon") {
if (this.timeoutId) {
clearTimeout(this.timeoutId);
}
this.timeoutId = setTimeout(() => {
type=='conpon'? this.searchConpon():this.getMemberInfo()
}, 800);
},
// 查询优惠券
searchConpon () {
let urlStr = app.getNetAddresss("plugin.shop-assistant.frontend.coupon.coupon-detail");
app._postNetWork({
url: urlStr,
data: {id:this.data.coupons.id},
success: (resdata) => {
var res = resdata.data;
if (res.result != 1){
this.setData({
'coupons.emptyName':true
});
return app.tips(res.msg);
}
this.setData({
'coupons.emptyName':false,
'coupons.name':res.data.name
});
}
});
},
// 确定赠送
confirmGive () {
// if (!this.data.coupons.id) {
// return app.tips('请输入优惠券id');
// }
if(this.data.info && !this.data.info.name){
return app.tips("请选择优惠劵")
}
if (!this.data.coupons.number) {
return app.tips('请输入赠送优惠券数量');
}
// if (this.data.coupons.id && !this.data.coupons.name) {
// return app.tips('未查询到优惠券');
// }
let json = {
uid: this.data.memberId,
id: this.data.info.id,
send_total: this.data.coupons.number * 1
};
let urlStr = app.getNetAddresss("plugin.shop-assistant.frontend.coupon.send-coupon");
app._postNetWork({
url: urlStr,
data: json,
success: (resdata) => {
var res = resdata.data;
app.tips(res.msg);
if (res.result != 1) return;
this.setData({couponPopup:false})
this.getData();
}
});
},
closeCouponPop (e) {
let {type}=e.currentTarget.dataset
this.setData({
[type]:false
});
},
/**
* 生命周期函数--监听页面初次渲染完成
*/
onReady: function () {
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
/**
* 生命周期函数--监听页面卸载
*/
onUnload: function () {
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
onPageScroll(evt){
if (evt.scrollTop >= 50 && this.data.titleBgMode == "hide") {
this.setData({titleBgMode:'show'});
} else if (evt.scrollTop <= 50 && this.data.titleBgMode == "show") {
this.setData({titleBgMode:'hide'});
}
},
setTopping(){
wx.pageScrollTo({
scrollTop: 0,
duration: 300
});
},
/**
* 用户点击右上角分享
*/
onShareAppMessage: function () {
}
});