From b760cba2df7423d40df67d66f195a21eee71a04c Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Wed, 17 Mar 2021 09:43:59 +0800
Subject: [PATCH] modify
---
zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java | 297 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 288 insertions(+), 9 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 6d64b59..e13c1cc 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
@@ -1,5 +1,6 @@
package com.matrix.system.fenxiao.service;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -8,21 +9,46 @@
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.common.interceptor.HostInterceptor;
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;
/**
* @description 推广员申请记录
@@ -37,7 +63,10 @@
BusParameterSettingsDao busParameterSettingsDao;
@Autowired
- ShopSalesmanApplyDao salesmanApplyDao;
+ ShopSalesmanApplyDao shopSalesmanApplyDao;
+
+ @Autowired
+ ShopSalesmanGradeDao shopSalesmanGradeDao;
@Autowired
private BizUserDao bizUserDao;
@@ -51,18 +80,20 @@
* @param invitationId
* @return
*/
- public ShopSalesmanApply applyToBeAnSalesman(String openId, 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){
ShopSalesmanApply shopSalesmanApply=new ShopSalesmanApply();
shopSalesmanApply.setUserId(openId);
+
shopSalesmanApply.setCreateBy(loginUser.getNickName());
shopSalesmanApply.setApplyWay(ShopSalesmanApply.APPLY_WAY_SELF);
@@ -78,8 +109,19 @@
//如果曾经是被邀请进来的则自动绑定为之前邀请人的下级
shopSalesmanApply.setParentUserId(loginUser.getParentOpenId());
}
-
- BusParameterSettings busParameterSettings = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_AUDIT_METHOD, HostInterceptor.getCompanyId());
+ if(StringUtils.isNotBlank(gradeId)){
+ shopSalesmanApply.setGradeId(Long.parseLong(gradeId));
+ }else{
+ //获取初始等级ID(公司id,是否为初始等级)
+ Wrapper<ShopSalesmanGrade> queryWrapperOrepool = new QueryWrapper<>();
+ ((QueryWrapper<ShopSalesmanGrade>) queryWrapperOrepool).eq("company_id", loginUser.getCompanyId());
+ ((QueryWrapper<ShopSalesmanGrade>) queryWrapperOrepool).eq("is_default", 1);
+ 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")){
//自动审核
@@ -89,7 +131,7 @@
}else{
shopSalesmanApply.setApplyStatus(ShopSalesmanApply.APPLY_STATUS_DSH);
}
- salesmanApplyDao.insert(shopSalesmanApply);
+ shopSalesmanApplyDao.insert(shopSalesmanApply);
return shopSalesmanApply;
}else{
throw new GlobleException("不能重复申请");
@@ -98,12 +140,249 @@
}
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 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.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) {
+
+ 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(StrUtil.isEmpty(sealesCommission.toString())) {
+ return AjaxResult.buildFailInstance("请输入正确的推广提成");
+ }
+ Double invitationCommission = updateFyfaDto.getInvitationCommission();
+ if(StrUtil.isEmpty(invitationCommission.toString())) {
+ return AjaxResult.buildFailInstance("请输入正确的邀请提成");
+ }
+ //设置用户公司ID
+ QueryUtil.setQueryLimitCom(updateFyfaDto);
+ selectById.setCompanyId(updateFyfaDto.getCompanyId());
+ selectById.setName(updateFyfaDto.getName());
+ selectById.setSealesCommission(updateFyfaDto.getSealesCommission());
+ selectById.setInvitationCommission(updateFyfaDto.getInvitationCommission());
+ 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("保存成功");
+ }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
}
\ No newline at end of file
--
Gitblit v1.9.1