From 033ab19c694cf9265c7ca15eed4c330d794f7eca Mon Sep 17 00:00:00 2001
From: jyy <935090232@qq.com>
Date: Tue, 16 Mar 2021 22:30:25 +0800
Subject: [PATCH] 修改商品查询bug2
---
zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java | 177 +++++++++++++++++++++++++++++++++++-----------------------
1 files changed, 107 insertions(+), 70 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 393ad09..9cf5e16 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,6 +1,7 @@
package com.matrix.system.fenxiao.service;
-import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -8,8 +9,10 @@
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.pojo.AjaxResult;
+import com.matrix.core.pojo.VerificationResult;
import com.matrix.core.tools.StringUtils;
import com.matrix.system.common.bean.BusParameterSettings;
import com.matrix.system.common.bean.SysUsers;
@@ -17,31 +20,12 @@
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.dto.*;
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.fenxiao.vo.*;
import com.matrix.system.hive.action.util.QueryUtil;
-
-import cn.hutool.core.util.ObjectUtil;
-import cn.hutool.core.util.StrUtil;
-
+import com.matrix.system.shopXcx.dao.ShopOrderV2Dao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -74,6 +58,9 @@
@Autowired
BizUserService bizUserService;
+ @Autowired
+ ShopOrderV2Dao shopOrderV2Dao;
+
/**
* 申请成为推广员
* @param openId
@@ -83,62 +70,112 @@
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());
- queryWrapper.in("apply_status",Arrays.asList("1,2".split(",")));
- ShopSalesmanApply checkApply = shopSalesmanApplyDao.selectOne(queryWrapper);
- if(checkApply==null||
- checkApply.getApplyStatus()==ShopSalesmanApply.APPLY_STATUS_WTG){
+ //验证申请条件
+ VerificationResult verificationResult = isAbleToBeAnSalesman(openId);
+ if(verificationResult.isJudgeResult()){
+ //校验审核状态,和是否重复发起
+ QueryWrapper<ShopSalesmanApply> queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("user_id",loginUser.getOpenId());
+ 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);
+ ShopSalesmanApply shopSalesmanApply=new ShopSalesmanApply();
+ shopSalesmanApply.setUserId(openId);
- shopSalesmanApply.setCompanyId(loginUser.getCompanyId());
- shopSalesmanApply.setUpdateBy(loginUser.getNickName());
- Date date = new Date();
- shopSalesmanApply.setCreateTime(date);
- shopSalesmanApply.setUpdateTime(date);
+ shopSalesmanApply.setCreateBy(MatrixConstance.SYSTEM_USER);
+ shopSalesmanApply.setApplyWay(ShopSalesmanApply.APPLY_WAY_SELF);
- if(StringUtils.isNotBlank(invitationId)){
- shopSalesmanApply.setParentUserId(invitationId);
- }else if(StringUtils.isNotBlank(loginUser.getParentOpenId())){
- //如果曾经是被邀请进来的则自动绑定为之前邀请人的下级
- shopSalesmanApply.setParentUserId(loginUser.getParentOpenId());
- }
- if(StringUtils.isNotBlank(gradeId)){
- shopSalesmanApply.setGradeId(Long.parseLong(gradeId));
+ shopSalesmanApply.setCompanyId(loginUser.getCompanyId());
+ shopSalesmanApply.setUpdateBy(MatrixConstance.SYSTEM_USER);
+ 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());
+ }
+ if(StringUtils.isNotBlank(gradeId)){
+ shopSalesmanApply.setGradeId(Long.parseLong(gradeId));
+ }else{
+ //获取初始等级ID(公司id,是否为初始等级)
+ QueryWrapper<ShopSalesmanGrade> queryWrapperOrepool = new QueryWrapper<>();
+ queryWrapperOrepool.eq("company_id", loginUser.getCompanyId());
+ 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")){
+ //自动审核
+ shopSalesmanApply.setApplyStatus(ShopSalesmanApply.APPLY_STATUS_TG);
+ bizUserService.setToBeAnSalesman(loginUser.getOpenId(),invitationId);
+
+ }else{
+ shopSalesmanApply.setApplyStatus(ShopSalesmanApply.APPLY_STATUS_DSH);
+ }
+ shopSalesmanApplyDao.insert(shopSalesmanApply);
+ return shopSalesmanApply;
}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());
+ throw new GlobleException("不能重复申请");
}
- shopSalesmanApply.setApplyWay(applyWay);
-
- BusParameterSettings busParameterSettings = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_AUDIT_METHOD, loginUser.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);
- }
- shopSalesmanApplyDao.insert(shopSalesmanApply);
- return shopSalesmanApply;
}else{
- throw new GlobleException("不能重复申请");
+ throw new GlobleException(verificationResult.getMsg());
}
-
}
+
+ /**
+ * 判断是否满足申请成为分销员的条件
+ */
+ public VerificationResult isAbleToBeAnSalesman(String openId) {
+ BizUser bizUser = bizUserDao.findByOpenId(openId);
+ VerificationResult verificationResult=null;
+ //申请条件
+ BusParameterSettings applyCondition = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_APPLY_CONDITION, bizUser.getCompanyId());
+ switch (applyCondition.getParamValue()){
+ case FenxiaoSettingConstant.FX_APPLY_CONDITION_WTJ:
+ VerificationResult.buildVerificationResult(true);
+ case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFZDCP:
+ VerificationResult.buildVerificationResult(true);
+ int buyZdcpCount= shopOrderV2Dao.countBuyZdcp(openId,applyCondition.getParamValue1());
+ if(buyZdcpCount>0){
+ verificationResult= VerificationResult.buildVerificationResult(true);
+ }else{
+ verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费指定产品后再申请!");
+ }
+
+ case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFRYCP:
+ //判断用户是否有确认收货的产品
+ int receivedOrderCount= shopOrderV2Dao.selectReceivedOrderCount(openId);
+ if(receivedOrderCount>0){
+ verificationResult= VerificationResult.buildVerificationResult(true);
+ }else{
+ verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费任意产品后再申请!");
+ }
+ case FenxiaoSettingConstant.FX_APPLY_CONDITION_XCZDJE:
+ Double zdje=Double.parseDouble(applyCondition.getParamValue2());
+ Double yxfje=shopOrderV2Dao.countOrderAmount(openId);
+ if(zdje<yxfje){
+ verificationResult=VerificationResult.buildVerificationResult(true);
+ }else{
+ verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费满"+zdje+"元后再申请!");
+ }
+ VerificationResult.buildVerificationResult(true);
+ default:
+ VerificationResult.buildVerificationResult(true);
+ }
+ return verificationResult;
+ }
+
+
public IPage<ShopSalesmanApplyVo> findShopSalesmanApplyList(Page<ShopSalesmanApplyVo> page, ShopSalesmanApplyDto shopSalesmanApplyDto) {
return shopSalesmanApplyDao.findShopSalesmanApplyList(page,shopSalesmanApplyDto);
}
--
Gitblit v1.9.1