From 11e9536bf17e452f947faf14bdce99b5f9d31094 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Mon, 15 Mar 2021 21:38:07 +0800
Subject: [PATCH] 分销员后台0315
---
zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java | 256 ++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 244 insertions(+), 12 deletions(-)
diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java
index 9707da8..393ad09 100644
--- a/zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java
+++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java
@@ -9,22 +9,44 @@
import com.matrix.biz.dao.BizUserDao;
import com.matrix.biz.service.BizUserService;
import com.matrix.core.exception.GlobleException;
+import com.matrix.core.pojo.AjaxResult;
import com.matrix.core.tools.StringUtils;
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.fenxiao.constant.FenxiaoSettingConstant;
import com.matrix.system.fenxiao.dao.ShopSalesmanApplyDao;
import com.matrix.system.fenxiao.dao.ShopSalesmanGradeDao;
+import com.matrix.system.fenxiao.dto.ChangeSaleManGradeDto;
+import com.matrix.system.fenxiao.dto.DelFyfaApplyDto;
+import com.matrix.system.fenxiao.dto.DelSaleManGradeApplyDto;
+import com.matrix.system.fenxiao.dto.FyfaManageDto;
import com.matrix.system.fenxiao.dto.ShopSalesmanAppliingDto;
import com.matrix.system.fenxiao.dto.ShopSalesmanApplyDto;
+import com.matrix.system.fenxiao.dto.ShopSalesmanDetailDto;
+import com.matrix.system.fenxiao.dto.UnbundlingSaleManDto;
+import com.matrix.system.fenxiao.dto.UpdateFyfaDto;
+import com.matrix.system.fenxiao.dto.UpdateTgjhDto;
+import com.matrix.system.fenxiao.dto.UpdateTgtpDto;
import com.matrix.system.fenxiao.entity.ShopSalesmanApply;
import com.matrix.system.fenxiao.entity.ShopSalesmanGrade;
+import com.matrix.system.fenxiao.vo.FyfaManageVo;
+import com.matrix.system.fenxiao.vo.SalesmanBasicDetailVo;
+import com.matrix.system.fenxiao.vo.ShopCustomDetailVo;
+import com.matrix.system.fenxiao.vo.ShopOrderDetailVo;
import com.matrix.system.fenxiao.vo.ShopSalesmanAppliingVo;
import com.matrix.system.fenxiao.vo.ShopSalesmanApplyVo;
import com.matrix.system.fenxiao.vo.ShopSalesmanGradeVo;
+import com.matrix.system.hive.action.util.QueryUtil;
+
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
+
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import java.util.Arrays;
import java.util.Date;
import java.util.List;
@@ -41,7 +63,7 @@
BusParameterSettingsDao busParameterSettingsDao;
@Autowired
- ShopSalesmanApplyDao salesmanApplyDao;
+ ShopSalesmanApplyDao shopSalesmanApplyDao;
@Autowired
ShopSalesmanGradeDao shopSalesmanGradeDao;
@@ -58,13 +80,14 @@
* @param invitationId
* @return
*/
- public ShopSalesmanApply applyToBeAnSalesman(String openId,String gradeId,String invitationId) {
+ public ShopSalesmanApply applyToBeAnSalesman(String openId,String gradeId,String invitationId,int applyWay) {
BizUser loginUser=bizUserDao.findByOpenId(openId);
//校验审核状态,和是否重复发起
QueryWrapper<ShopSalesmanApply> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("user_id",loginUser.getOpenId());
- ShopSalesmanApply checkApply = salesmanApplyDao.selectOne(queryWrapper);
+ queryWrapper.in("apply_status",Arrays.asList("1,2".split(",")));
+ ShopSalesmanApply checkApply = shopSalesmanApplyDao.selectOne(queryWrapper);
if(checkApply==null||
checkApply.getApplyStatus()==ShopSalesmanApply.APPLY_STATUS_WTG){
@@ -96,7 +119,8 @@
ShopSalesmanGrade shopSalesmanGrade = shopSalesmanGradeDao.selectOne(queryWrapperOrepool);
shopSalesmanApply.setGradeId(shopSalesmanGrade.getId());
}
-
+ shopSalesmanApply.setApplyWay(applyWay);
+
BusParameterSettings busParameterSettings = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_AUDIT_METHOD, loginUser.getCompanyId());
if(busParameterSettings!=null
&&busParameterSettings.getParamValue().equals("1")){
@@ -107,7 +131,7 @@
}else{
shopSalesmanApply.setApplyStatus(ShopSalesmanApply.APPLY_STATUS_DSH);
}
- salesmanApplyDao.insert(shopSalesmanApply);
+ shopSalesmanApplyDao.insert(shopSalesmanApply);
return shopSalesmanApply;
}else{
throw new GlobleException("不能重复申请");
@@ -116,29 +140,237 @@
}
public IPage<ShopSalesmanApplyVo> findShopSalesmanApplyList(Page<ShopSalesmanApplyVo> page, ShopSalesmanApplyDto shopSalesmanApplyDto) {
- return salesmanApplyDao.findShopSalesmanApplyList(page,shopSalesmanApplyDto);
+ return shopSalesmanApplyDao.findShopSalesmanApplyList(page,shopSalesmanApplyDto);
}
public IPage<ShopSalesmanAppliingVo> findShopSalesmanAppliingList(Page<ShopSalesmanAppliingVo> page,
ShopSalesmanAppliingDto shopSalesmanAppliingDto) {
- return salesmanApplyDao.findShopSalesmanAppliingList(page,shopSalesmanAppliingDto);
+ return shopSalesmanApplyDao.findShopSalesmanAppliingList(page,shopSalesmanAppliingDto);
}
public IPage<ShopSalesmanAppliingVo> selectBizUserApplyList(Page<ShopSalesmanAppliingVo> page, ShopSalesmanAppliingDto shopSalesmanAppliingDto) {
- return salesmanApplyDao.selectBizUserApplyList(page,shopSalesmanAppliingDto);
+ return shopSalesmanApplyDao.selectBizUserApplyList(page,shopSalesmanAppliingDto);
}
public List<ShopSalesmanGradeVo> getShopSalesmanGradeVo(Long companyId) {
return shopSalesmanGradeDao.getShopSalesmanGradeVo(companyId);
}
-
+
+ @Transactional(rollbackFor = Exception.class)
public void addSaleManApply(String userId,String gradeId) {
- BizUser user = bizUserDao.selectById(userId);
+ BizUser user = bizUserDao.findByOpenId(userId);
+ applyToBeAnSalesman(user.getOpenId(),gradeId, "",ShopSalesmanApply.APPLY_WAY_HAND_ADD);
+ }
+
+ @Transactional(rollbackFor = Exception.class)
+ public void examineSaleManApply(ShopSalesmanApply shopSalesmanApply, Integer applyState) {
+ String userId = shopSalesmanApply.getUserId();
+ String parentUserId = shopSalesmanApply.getParentUserId();
+ BizUser bizUser = bizUserDao.findByOpenId(userId);
+ //修改审核记录
+ if(ShopSalesmanApply.APPLY_STATUS_TG == applyState) {
+ shopSalesmanApply.setApplyStatus(ShopSalesmanApply.APPLY_STATUS_TG);
+ bizUser.setIsSales(BizUser.IS_SALES);
+ }else {
+ shopSalesmanApply.setApplyStatus(ShopSalesmanApply.APPLY_STATUS_WTG);
+ bizUser.setIsSales(BizUser.NOT_SALES);
+ }
+ shopSalesmanApplyDao.updateById(shopSalesmanApply);
+ //修改USER的状态
+ bizUser.setParentOpenId(parentUserId);
+ bizUser.setBindingParentTime(new Date());
+ bizUserDao.updateByModel(bizUser);
+ }
+
+ public IPage<ShopSalesmanApplyVo> findShopSalesmanDetail(Page<ShopSalesmanApplyVo> page,
+ ShopSalesmanDetailDto shopSalesmanDetailDto) {
+ // TODO Auto-generated method stub
+ return null;
+ }
+
+ public SalesmanBasicDetailVo selectShopSalesmanDetailByOpenId(String userId, long applyId) {
+ //获取个人信息
+ BizUser bizUser = bizUserDao.findByOpenId(userId);
+ Long companyId = bizUser.getCompanyId();
+ return shopSalesmanApplyDao.selectShopSalesmanDetailByOpenId(userId,companyId,applyId);
+ }
+
+ public IPage<ShopCustomDetailVo> findCustomDetail(Page<ShopCustomDetailVo> page,
+ ShopSalesmanDetailDto shopSalesmanDetailDto) {
+ return shopSalesmanApplyDao.findCustomDetail(page,shopSalesmanDetailDto);
+ }
+
+ public IPage<ShopCustomDetailVo> findCustomLow(Page<ShopCustomDetailVo> pageLow,
+ ShopSalesmanDetailDto shopSalesmanDetailDto) {
+ return shopSalesmanApplyDao.findCustomLow(pageLow,shopSalesmanDetailDto);
+ }
+
+ public IPage<ShopOrderDetailVo> findShopOrderDetail(Page<ShopOrderDetailVo> pageOrder,
+ ShopSalesmanDetailDto shopSalesmanDetailDto) {
+ return shopSalesmanApplyDao.findShopOrderDetail(pageOrder,shopSalesmanDetailDto);
+ }
+
+ @Transactional(rollbackFor = Exception.class)
+ public AjaxResult changeSaleManGrade(ChangeSaleManGradeDto changeSaleManGradeDto) {
+ //设置用户公司ID
+ QueryUtil.setQueryLimitCom(changeSaleManGradeDto);
+ String userId = changeSaleManGradeDto.getUserId();
+ Long companyId = changeSaleManGradeDto.getCompanyId();
+ //获取对应的公司的等级
+ QueryWrapper<ShopSalesmanGrade> queryWrapperOrepool = new QueryWrapper<>();
+ queryWrapperOrepool.eq("is_default", 1);
+ queryWrapperOrepool.eq("company_id", companyId);
+ ShopSalesmanGrade shopSalesmanGrade = shopSalesmanGradeDao.selectOne(queryWrapperOrepool);
+ //修改Biz_User的salesman_grade
+ BizUser findByOpenId = bizUserDao.findByOpenId(userId);
+ if(ObjectUtil.isEmpty(findByOpenId)) {
+ return AjaxResult.buildFailInstance("当前用户已不存在");
+ }
+ //不是分销员不允许修改
+ Integer isSales = findByOpenId.getIsSales();
+ if(BizUser.IS_SALES != isSales) {
+ return AjaxResult.buildFailInstance("当前用户未通过审核,不允许修改");
+ }
+
+ //修改申请记录的等级
+ QueryWrapper<ShopSalesmanApply> queryShopSalesmanApply = new QueryWrapper<>();
+ queryShopSalesmanApply.eq("apply_status", 2);
+ queryShopSalesmanApply.eq("user_id", userId);
+ queryShopSalesmanApply.eq("company_id", companyId);
+ ShopSalesmanApply shopSalesmanApply = shopSalesmanApplyDao.selectOne(queryShopSalesmanApply);
+ Long gradeId = changeSaleManGradeDto.getGradeId();
+ if(ObjectUtil.isEmpty(gradeId)) {
+ findByOpenId.setSalesmanGrade(shopSalesmanGrade.getId());
+ shopSalesmanApply.setGradeId(shopSalesmanGrade.getId());
+ }else {
+ findByOpenId.setSalesmanGrade(gradeId);
+ shopSalesmanApply.setGradeId(gradeId);
+ }
+ bizUserDao.updateByModel(findByOpenId);
+ shopSalesmanApplyDao.updateById(shopSalesmanApply);
+
+ return AjaxResult.buildFailInstance("修改等级成功");
+ }
+
+ @Transactional(rollbackFor = Exception.class)
+ public AjaxResult unbundlingSaleMan(UnbundlingSaleManDto unbundlingSaleManDto) {
+ //设置用户公司ID
+ QueryUtil.setQueryLimitCom(unbundlingSaleManDto);
+ String userId = unbundlingSaleManDto.getUserId();
+ //将Biz_User的parent_open_id置空
+ BizUser findByOpenId = bizUserDao.findByOpenId(userId);
+ if(ObjectUtil.isEmpty(findByOpenId)) {
+ return AjaxResult.buildFailInstance("当前用户已不存在");
+ }
+ findByOpenId.setParentOpenId("");
+ bizUserDao.updateByModel(findByOpenId);
+ return AjaxResult.buildFailInstance("解绑成功");
+ }
+
+ @Transactional(rollbackFor = Exception.class)
+ public AjaxResult delSaleManGradeApply(DelSaleManGradeApplyDto delSaleManGradeApplyDto) {
+ //设置用户公司ID
+ QueryUtil.setQueryLimitCom(delSaleManGradeApplyDto);
+ String userId = delSaleManGradeApplyDto.getUserId();
+ Long applyid = delSaleManGradeApplyDto.getApplyId();
+
+ //将biz_user的is_sale设置成否
+ BizUser findByOpenId = bizUserDao.findByOpenId(userId);
+ if(ObjectUtil.isEmpty(findByOpenId)) {
+ return AjaxResult.buildFailInstance("当前用户已不存在");
+ }
+ findByOpenId.setIsSales(BizUser.NOT_SALES);
+ bizUserDao.updateByModel(findByOpenId);
+ //将记录设置成系统取消
+ ShopSalesmanApply selectById = shopSalesmanApplyDao.selectById(applyid);
+ selectById.setApplyStatus(ShopSalesmanApply.APPLY_STATUS_XTQX);
+ shopSalesmanApplyDao.updateById(selectById);
+ return AjaxResult.buildFailInstance("操作成功");
+ }
+
+ public IPage<FyfaManageVo> findFyfaManageList(Page<FyfaManageVo> page, FyfaManageDto fyfaManageDto) {
+ return shopSalesmanGradeDao.findFyfaManageList(page,fyfaManageDto);
+ }
+
+ @Transactional(rollbackFor = Exception.class)
+ public void addFyfa(SysUsers user) {
+ ShopSalesmanGrade shopSalesmanGrade = new ShopSalesmanGrade();
+ shopSalesmanGrade.setIsDefault(2);
+ shopSalesmanGrade.setCreateBy(user.getSuName());
+ shopSalesmanGrade.setUpdateBy(user.getSuName());
+ shopSalesmanGrade.setCreateTime(new Date());
+ shopSalesmanGrade.setUpdateTime(new Date());
+ shopSalesmanGrade.setCompanyId(user.getCompanyId());
+ shopSalesmanGradeDao.insert(shopSalesmanGrade);
+ }
+
+ @Transactional(rollbackFor = Exception.class)
+ public AjaxResult delFyfaApply(DelFyfaApplyDto delFyfaApplyDto) {
+ //设置用户公司ID
+ QueryUtil.setQueryLimitCom(delFyfaApplyDto);
+ Long gradeId = delFyfaApplyDto.getGradeId();
+ ShopSalesmanGrade selectById = shopSalesmanGradeDao.selectById(gradeId);
+ if(ObjectUtil.isEmpty(selectById)) {
+ return AjaxResult.buildFailInstance("当前行数据不存在,请刷新页面");
+ }
+ shopSalesmanGradeDao.deleteById(gradeId);
+ return AjaxResult.buildFailInstance("操作成功");
+ }
+
+ @Transactional(rollbackFor = Exception.class)
+ public AjaxResult updateFyfa(UpdateFyfaDto updateFyfaDto) {
- applyToBeAnSalesman(user.getOpenId(),gradeId, "");
+ ShopSalesmanGrade selectById = shopSalesmanGradeDao.selectById(updateFyfaDto.getId());
+ if(ObjectUtil.isEmpty(selectById)) {
+ return AjaxResult.buildFailInstance("当前行数据不存在,请刷新页面");
+ }
+ String name = updateFyfaDto.getName();
+ if(StrUtil.isEmpty(name)) {
+ return AjaxResult.buildFailInstance("请输入方案名称");
+ }
+ Double sealesCommission = updateFyfaDto.getSealesCommission();
+ if(ObjectUtil.isEmpty(sealesCommission)) {
+ return AjaxResult.buildFailInstance("请输入正确的推广提成");
+ }
+ Double invitationCommission = updateFyfaDto.getInvitationCommission();
+ if(ObjectUtil.isEmpty(invitationCommission)) {
+ return AjaxResult.buildFailInstance("请输入正确的邀请提成");
+ }
+ //设置用户公司ID
+ QueryUtil.setQueryLimitCom(updateFyfaDto);
+ selectById.setCompanyId(updateFyfaDto.getCompanyId());
+ selectById.setName(updateFyfaDto.getName());
+ selectById.setSealesCommission(sealesCommission);
+ selectById.setInvitationCommission(invitationCommission);
+ selectById.setGradeCondition(updateFyfaDto.getGradeCondition());
+ shopSalesmanGradeDao.updateById(selectById);
+ return AjaxResult.buildFailInstance("操作成功");
}
-
+ @Transactional(rollbackFor = Exception.class)
+ public AjaxResult updateTgjh(UpdateTgjhDto updateTgjhDto) {
+ //设置用户公司ID
+ QueryUtil.setQueryLimitCom(updateTgjhDto);
+ //获取推广计划的Param
+ Long companyId = updateTgjhDto.getCompanyId();
+ BusParameterSettings busParameterSettings = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_TG_PLAN, companyId);
+ busParameterSettings.setParamValue3(updateTgjhDto.getTgfa());
+ busParameterSettingsDao.updateByModel(busParameterSettings);
+ return AjaxResult.buildFailInstance("保存成功");
+ }
+
+ @Transactional(rollbackFor = Exception.class)
+ public AjaxResult updateTgtp(UpdateTgtpDto updateTgtpDto) {
+ //设置用户公司ID
+ QueryUtil.setQueryLimitCom(updateTgtpDto);
+ //获取推广计划的Param
+ Long companyId = updateTgtpDto.getCompanyId();
+ BusParameterSettings busParameterSettings = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_TG_POSTER, companyId);
+ busParameterSettings.setParamValue(updateTgtpDto.getImageUrl());
+ busParameterSettingsDao.updateByModel(busParameterSettings);
+ return AjaxResult.buildFailInstance("保存成功");
+ }
+
--
Gitblit v1.9.1