package com.matrix.system.fenxiao.service;
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.matrix.biz.bean.BizUser;
|
import com.matrix.biz.dao.BizUserDao;
|
import com.matrix.biz.service.BizUserService;
|
import com.matrix.core.constance.MatrixConstance;
|
import com.matrix.core.exception.GlobleException;
|
import com.matrix.core.tools.StringUtils;
|
import com.matrix.core.tools.WebUtil;
|
import com.matrix.system.common.bean.BusParameterSettings;
|
import com.matrix.system.common.bean.SysUsers;
|
import com.matrix.system.common.dao.BusParameterSettingsDao;
|
import com.matrix.system.common.interceptor.HostInterceptor;
|
import com.matrix.system.fenxiao.constant.FenxiaoSettingConstant;
|
import com.matrix.system.fenxiao.dao.ShopSalesmanApplyDao;
|
import com.matrix.system.fenxiao.entity.ShopSalesmanApply;
|
import com.matrix.system.fenxiao.vo.ShopSalesmanApplyVo;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import java.util.Date;
|
import java.util.List;
|
|
/**
|
* @description 推广员申请记录
|
* @author jyy
|
* @date 2021-03-10 15:22
|
*/
|
@Service
|
public class ShopSalesmanApplyService extends ServiceImpl<ShopSalesmanApplyDao, ShopSalesmanApply>{
|
|
|
@Autowired
|
BusParameterSettingsDao busParameterSettingsDao;
|
|
@Autowired
|
ShopSalesmanApplyDao salesmanApplyDao;
|
|
@Autowired
|
private BizUserDao bizUserDao;
|
|
@Autowired
|
BizUserService bizUserService;
|
|
/**
|
* 申请成为推广员
|
* @param openId
|
* @param invitationId
|
* @return
|
*/
|
public ShopSalesmanApply applyToBeAnSalesman(String openId, String invitationId) {
|
|
BizUser loginUser=bizUserDao.findByOpenId(openId);
|
//校验审核状态,和是否重复发起
|
QueryWrapper<ShopSalesmanApply> queryWrapper = new QueryWrapper<>();
|
queryWrapper.eq("user_id",loginUser.getOpenId());
|
ShopSalesmanApply checkApply = salesmanApplyDao.selectOne(queryWrapper);
|
if(checkApply==null||
|
checkApply.getApplyStatus()==ShopSalesmanApply.APPLY_STATUS_WTG){
|
|
ShopSalesmanApply shopSalesmanApply=new ShopSalesmanApply();
|
shopSalesmanApply.setUserId(loginUser.getUserId());
|
shopSalesmanApply.setCreateBy(loginUser.getNickName());
|
shopSalesmanApply.setApplyWay(ShopSalesmanApply.APPLY_WAY_SELF);
|
|
shopSalesmanApply.setCompanyId(loginUser.getCompanyId());
|
shopSalesmanApply.setUpdateBy(loginUser.getNickName());
|
Date date = new Date();
|
shopSalesmanApply.setCreateTime(date);
|
shopSalesmanApply.setUpdateTime(date);
|
|
if(StringUtils.isNotBlank(invitationId)){
|
shopSalesmanApply.setParentUserId(invitationId);
|
}else if(StringUtils.isNotBlank(loginUser.getParentOpenId())){
|
//如果曾经是被邀请进来的则自动绑定为之前邀请人的下级
|
shopSalesmanApply.setParentUserId(loginUser.getParentOpenId());
|
}
|
|
BusParameterSettings busParameterSettings = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_AUDIT_METHOD, HostInterceptor.getCompanyId());
|
if(busParameterSettings!=null
|
&&busParameterSettings.getParamValue().equals("1")){
|
//自动审核
|
shopSalesmanApply.setApplyStatus(ShopSalesmanApply.APPLY_STATUS_TG);
|
bizUserService.setToBeAnSalesman(loginUser.getOpenId(),invitationId);
|
|
}else{
|
shopSalesmanApply.setApplyStatus(ShopSalesmanApply.APPLY_STATUS_DSH);
|
}
|
salesmanApplyDao.insert(shopSalesmanApply);
|
return shopSalesmanApply;
|
}else{
|
throw new GlobleException("不能重复申请");
|
}
|
|
}
|
|
public List<ShopSalesmanApplyVo> selectFenXiaoUserApplyByCompanyId(Long companyId) {
|
//获取当前登录人员信息
|
SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
|
List<ShopSalesmanApplyVo> shopSalesmanApplyVos = salesmanApplyDao.selectFenXiaoUserApplyByCompanyId(companyId);
|
return shopSalesmanApplyVos;
|
}
|
}
|