jyy
2021-03-17 6a4a32d2f0489d5b1577a7400d1756ca4e3416f9
新增查询申请条件接口
1 files added
5 files modified
107 ■■■■■ changed files
zq-erp/.gitignore 3 ●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java 14 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java 50 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopOrderV2Dao.java 4 ●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/shopXcx/vo/SalesmanApplyCondition.java 35 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopOrderV2Dao.xml 1 ●●●● patch | view | raw | blame | history
zq-erp/.gitignore
@@ -76,4 +76,5 @@
.project
.classpath
.settings
.metadata
.metadata
.gitignore
zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java
@@ -71,7 +71,7 @@
        BizUser loginUser=bizUserDao.findByOpenId(openId);
        //验证申请条件
        VerificationResult verificationResult = isAbleToBeAnSalesman(openId);
        VerificationResult verificationResult = isAbleToBeAnSalesman(openId,loginUser.getCompanyId());
        if(verificationResult.isJudgeResult()){
            //校验审核状态,和是否重复发起
            QueryWrapper<ShopSalesmanApply> queryWrapper = new QueryWrapper<>();
@@ -135,14 +135,15 @@
    /**
     * 判断是否满足申请成为分销员的条件
     */
    public VerificationResult isAbleToBeAnSalesman(String openId) {
        BizUser bizUser = bizUserDao.findByOpenId(openId);
    public VerificationResult isAbleToBeAnSalesman(String openId,Long companyId) {
        VerificationResult verificationResult=null;
        //申请条件
        BusParameterSettings applyCondition = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_APPLY_CONDITION, bizUser.getCompanyId());
        BusParameterSettings applyCondition = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_APPLY_CONDITION, companyId);
        switch (applyCondition.getParamValue()){
            case FenxiaoSettingConstant.FX_APPLY_CONDITION_WTJ:
                VerificationResult.buildVerificationResult(true);
                break;
            case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFZDCP:
                VerificationResult.buildVerificationResult(true);
                int buyZdcpCount= shopOrderV2Dao.countBuyZdcp(openId,applyCondition.getParamValue1());
@@ -151,7 +152,7 @@
                }else{
                    verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费指定产品后再申请!");
                }
                break;
            case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFRYCP:
                //判断用户是否有确认收货的产品
                int receivedOrderCount= shopOrderV2Dao.selectReceivedOrderCount(openId);
@@ -160,6 +161,7 @@
                }else{
                    verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费任意产品后再申请!");
                }
                break;
            case FenxiaoSettingConstant.FX_APPLY_CONDITION_XCZDJE:
                Double zdje=Double.parseDouble(applyCondition.getParamValue2());
                Double yxfje=shopOrderV2Dao.countOrderAmount(openId);
@@ -169,8 +171,10 @@
                    verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费满"+zdje+"元后再申请!");
                }
                VerificationResult.buildVerificationResult(true);
                break;
            default:
                VerificationResult.buildVerificationResult(true);
        }
        return verificationResult;
    }
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java
@@ -10,6 +10,7 @@
import com.matrix.component.tools.WxacodeUtil;
import com.matrix.core.pojo.AjaxResult;
import com.matrix.core.pojo.BasePageQueryDto;
import com.matrix.core.pojo.VerificationResult;
import com.matrix.core.tools.LogUtil;
import com.matrix.core.tools.MD5Util;
import com.matrix.core.tools.PropertiesUtil;
@@ -23,6 +24,8 @@
import com.matrix.system.fenxiao.entity.ShopSalesmanApply;
import com.matrix.system.fenxiao.service.ShopSalesmanApplyService;
import com.matrix.system.shopXcx.api.WeChatApiTools;
import com.matrix.system.shopXcx.dao.ShopProductDao;
import com.matrix.system.shopXcx.vo.SalesmanApplyCondition;
import com.matrix.system.shopXcx.vo.SalesmanCenterInfo;
import com.matrix.system.shopXcx.vo.SalesmanVo;
import io.swagger.annotations.Api;
@@ -38,7 +41,9 @@
import java.awt.image.BufferedImage;
import java.io.File;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
 * @author wzy
@@ -66,6 +71,10 @@
    private BizUserDao bizUserDao;
    @Autowired
    WeChatApiTools weChatApiTools;
    @Autowired
    ShopProductDao shopProductDao;
    @ApiOperation(value = "查询推广计划", notes = "")
    @GetMapping(value = "/getTgPlan")
@@ -249,6 +258,47 @@
        return AjaxResult.buildSuccessInstance(salesmanCenterInfo);
    }
    @ApiOperation(value = "查询分销员申请条件", notes = "")
    @PostMapping(value = "/getSalesmanApplyCondition")
    @ApiResponses({
            @ApiResponse(code = 200, message = "ok", response = SalesmanApplyCondition.class)
    })
    AjaxResult getSalesmanApplyCondition() {
        BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class);
        VerificationResult ableToBeAnSalesman = shopSalesmanApplyService.isAbleToBeAnSalesman(loginUser.getOpenId(),loginUser.getCompanyId());
        SalesmanApplyCondition applyConditionInfo=new SalesmanApplyCondition();
        applyConditionInfo.setIsAbleApply(ableToBeAnSalesman.isJudgeResult());
        applyConditionInfo.setMsg(ableToBeAnSalesman.getMsg());
        //申请条件
        BusParameterSettings applyCondition = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_APPLY_CONDITION, loginUser.getCompanyId());
        switch (applyCondition.getParamValue()){
            case FenxiaoSettingConstant.FX_APPLY_CONDITION_WTJ:
                applyConditionInfo.setCondition("无条件");
                break;
            case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFZDCP:
                applyConditionInfo.setCondition("消费指定产品确认收货");
                List<String> strings = StringUtils.strToColl(applyCondition.getParamValue1(), ",");
                applyConditionInfo.setProductList(
                        shopProductDao.selectByIds(
                                strings.stream().map(i -> Integer.parseInt(i + "")).collect(Collectors.toList())));
                break;
            case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFRYCP:
                //判断用户是否有确认收货的产品
                applyConditionInfo.setCondition("消费任意产品确认收货");
                break;
            case FenxiaoSettingConstant.FX_APPLY_CONDITION_XCZDJE:
                Double zdje=Double.parseDouble(applyCondition.getParamValue2());
                applyConditionInfo.setCondition("消费满"+zdje+"元确认收货");
                applyConditionInfo.setMinAmount(zdje);
        }
        return AjaxResult.buildSuccessInstance(applyConditionInfo);
    }
}
zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopOrderV2Dao.java
@@ -2,7 +2,10 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.matrix.system.shopXcx.bean.ShopOrder;
import com.matrix.system.shopXcx.bean.ShopProduct;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * @description 订单表
@@ -16,4 +19,5 @@
    /** 统计是否消费过了指定产品 */
    int countBuyZdcp(@Param("openId") String openId, @Param("productIds")String productIds);
}
zq-erp/src/main/java/com/matrix/system/shopXcx/vo/SalesmanApplyCondition.java
New file
@@ -0,0 +1,35 @@
package com.matrix.system.shopXcx.vo;
import com.matrix.system.shopXcx.bean.ShopProduct;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Data
@ApiModel(value = "SalesmanApplyCondition", description = " 销售员申请条件")
public class SalesmanApplyCondition {
    @ApiModelProperty(value = "是否满足申请条件")
    private Boolean isAbleApply;
    @ApiModelProperty(value = "申请条件")
    private String condition;
    @ApiModelProperty(value = "条件验证结果")
    private String msg;
    @ApiModelProperty(value = "产品信息")
    private List<ShopProduct> productList;
    @ApiModelProperty(value = "最底消费金额")
    private Double minAmount ;
}
zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopOrderV2Dao.xml
@@ -21,4 +21,5 @@
    </select>
</mapper>