Compare commits
	
		
			No commits in common. "e38e3662374527df6e90a8752a974a3b7657344c" and "5b473faf9805bd6538e09174bdd36e8ba7dfe5b8" have entirely different histories.
		
	
	
		
			e38e366237
			...
			5b473faf98
		
	
		| 
						 | 
				
			
			@ -65,17 +65,6 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
 | 
			
		|||
    @DubboReference
 | 
			
		||||
    ICuMemberServiceLogServiceApi iCuMemberServiceLogServiceApi;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 特殊体系PK_ID: 150
 | 
			
		||||
     * V4:总 500,小 100
 | 
			
		||||
     * V5:总 2000,小 400
 | 
			
		||||
     */
 | 
			
		||||
    public static final Long VERTEX_PK_ID = 150L;
 | 
			
		||||
    public static final BigDecimal VERTEX_V4_TOTAL_BOX = new BigDecimal("500");
 | 
			
		||||
    public static final BigDecimal VERTEX_V4_SMALL_BOX = new BigDecimal("100");
 | 
			
		||||
    public static final BigDecimal VERTEX_V5_TOTAL_BOX = new BigDecimal("2000");
 | 
			
		||||
    public static final BigDecimal VERTEX_V5_SMALL_BOX = new BigDecimal("400");
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 秒结:
 | 
			
		||||
     * 实时计算秒结数据(业绩、盒数、等级、奖衔、日奖)
 | 
			
		||||
| 
						 | 
				
			
			@ -734,27 +723,10 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
 | 
			
		|||
        // 遍历团队等级map(V4,V5)
 | 
			
		||||
        for (Integer gradeValue : retailTeamGradeMap.keySet()) {
 | 
			
		||||
            BdGrade bdGrade = retailTeamGradeMap.get(gradeValue);
 | 
			
		||||
            // 等级总盒数
 | 
			
		||||
            BigDecimal boxTotal = bdGrade.getBoxTotal();
 | 
			
		||||
            // 等级小市场盒数
 | 
			
		||||
            BigDecimal boxSmallTotal = bdGrade.getBoxSmallTotal();
 | 
			
		||||
 | 
			
		||||
            if (VERTEX_PK_ID.equals(targetMemberRangeExt.getPkVertex())) {
 | 
			
		||||
                // TODO 需要根据配置写死的体系,进行单独处理
 | 
			
		||||
                // V4: 总 500,小 100
 | 
			
		||||
                // V5: 总 2000,小 400
 | 
			
		||||
                if (EGrade.VIP.getValue() == bdGrade.getGradeValue()) {
 | 
			
		||||
                    boxTotal = VERTEX_V4_TOTAL_BOX;
 | 
			
		||||
                    boxSmallTotal = VERTEX_V4_SMALL_BOX;
 | 
			
		||||
                } else if (EGrade.S_VIP.getValue() == bdGrade.getGradeValue()) {
 | 
			
		||||
                    boxTotal = VERTEX_V5_TOTAL_BOX;
 | 
			
		||||
                    boxSmallTotal = VERTEX_V5_SMALL_BOX;
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            // 如果等级值 大于 当前会员等级值 并且 等级要求累计盒数 小于等于 团队累计盒数 + 累计消费盒数 + 大区注水 + 小区注水,则可以进行升级
 | 
			
		||||
            if (bdGrade.getGradeValue() > targetMemberRangeExt.getGradeValue()
 | 
			
		||||
                    && boxTotal.compareTo(
 | 
			
		||||
                    && bdGrade.getBoxTotal().compareTo(
 | 
			
		||||
                    targetMemberRangeExt.getTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum())
 | 
			
		||||
            ) <= 0
 | 
			
		||||
            ) {
 | 
			
		||||
| 
						 | 
				
			
			@ -794,7 +766,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
 | 
			
		|||
 | 
			
		||||
                // 小区盒数(团队累计盒数 + 自消费累计盒数 + 两个注水虚拟盒数 - 大市场盒数)
 | 
			
		||||
                BigDecimal smallBoxNum = targetMemberRangeExt.getAllTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum()).subtract(bigBoxNum);
 | 
			
		||||
                if (smallBoxNum.compareTo(boxSmallTotal) >= 0) {
 | 
			
		||||
                if (smallBoxNum.compareTo(bdGrade.getBoxSmallTotal()) >= 0) {
 | 
			
		||||
                    // 小区盒数 大于等于 升级小区盒数
 | 
			
		||||
                    CuMemberGrade cuMemberGrade = getCuMemberGrade(period, targetMemberRangeExt, bdGrade);
 | 
			
		||||
                    cuMemberGradeList.add(cuMemberGrade);
 | 
			
		||||
| 
						 | 
				
			
			@ -983,25 +955,8 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
 | 
			
		|||
        // 遍历团队等级map(V4,V5)
 | 
			
		||||
        for (Integer gradeValue : retailTeamGradeMap.keySet()) {
 | 
			
		||||
            BdGrade bdGrade = retailTeamGradeMap.get(gradeValue);
 | 
			
		||||
            // 等级总盒数
 | 
			
		||||
            BigDecimal boxTotal = bdGrade.getBoxTotal();
 | 
			
		||||
            // 等级小市场盒数
 | 
			
		||||
            BigDecimal boxSmallTotal = bdGrade.getBoxSmallTotal();
 | 
			
		||||
 | 
			
		||||
            if (VERTEX_PK_ID.equals(targetMemberRangeExt.getPkVertex())) {
 | 
			
		||||
                // TODO 需要根据配置写死的体系,进行单独处理
 | 
			
		||||
                // V4: 总 500,小 100
 | 
			
		||||
                // V5: 总 2000,小 400
 | 
			
		||||
                if (EGrade.VIP.getValue() == bdGrade.getGradeValue()) {
 | 
			
		||||
                    boxTotal = VERTEX_V4_TOTAL_BOX;
 | 
			
		||||
                    boxSmallTotal = VERTEX_V4_SMALL_BOX;
 | 
			
		||||
                } else if (EGrade.S_VIP.getValue() == bdGrade.getGradeValue()) {
 | 
			
		||||
                    boxTotal = VERTEX_V5_TOTAL_BOX;
 | 
			
		||||
                    boxSmallTotal = VERTEX_V5_SMALL_BOX;
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            if (boxTotal.compareTo(targetMemberRangeExt.getTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum())) <= 0) {
 | 
			
		||||
            if (bdGrade.getBoxTotal().compareTo(targetMemberRangeExt.getTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum())) <= 0) {
 | 
			
		||||
                // 验证小区,计算小区累计盒数 查询伞下会员
 | 
			
		||||
                List<CuMemberRetailRangeExt> cuMemberRangeExtList;
 | 
			
		||||
                if (secondRangeTableName != null) {
 | 
			
		||||
| 
						 | 
				
			
			@ -1038,7 +993,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
 | 
			
		|||
 | 
			
		||||
                // 小区盒数(团队累计盒数 + 自消费累计盒数 + 两个注水虚拟盒数 - 大市场盒数)
 | 
			
		||||
                BigDecimal smallBoxNum = targetMemberRangeExt.getAllTeamBoxNum().add(targetMemberRangeExt.getConsumeBoxNum()).add(targetMemberRangeExt.getBigBoxNum()).add(targetMemberRangeExt.getSmallBoxNum()).subtract(bigBoxNum);
 | 
			
		||||
                if (smallBoxNum.compareTo(boxSmallTotal) >= 0) {
 | 
			
		||||
                if (smallBoxNum.compareTo(bdGrade.getBoxSmallTotal()) >= 0) {
 | 
			
		||||
                    // 小区盒数 大于等于 升级小区盒数
 | 
			
		||||
                    CuMemberGrade cuMemberGrade = getCuMemberGrade(period, targetMemberRangeExt, bdGrade);
 | 
			
		||||
                    cuMemberGradeMap.put(cuMemberGrade.getPkMember() + "_" + cuMemberGrade.getNewLevel(), cuMemberGrade);
 | 
			
		||||
| 
						 | 
				
			
			@ -1169,7 +1124,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
 | 
			
		|||
//        // 直推级差收益
 | 
			
		||||
//        BigDecimal calBonusIncome = BigDecimal.ZERO;
 | 
			
		||||
 | 
			
		||||
        // 商品最终价格(总价,带数量的价格)
 | 
			
		||||
        // 商品最终价格
 | 
			
		||||
        BigDecimal waresPrice = saOrderItems.getWaresPrice();
 | 
			
		||||
        // 商品数量
 | 
			
		||||
        BigDecimal waresQuantityBig = saOrderItems.getWaresQuantity();
 | 
			
		||||
| 
						 | 
				
			
			@ -1213,20 +1168,20 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
 | 
			
		|||
            if (beforeGradeValue == 0) {
 | 
			
		||||
                // 前一个会员等级为0,肯定为第一次处理,直接处理直推级差收益
 | 
			
		||||
                if (EGrade.HAI_FAN.getValue() == calGradeValue) {
 | 
			
		||||
                    // VIP,拿 1 份 10%
 | 
			
		||||
                    rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice);
 | 
			
		||||
                    // VIP,拿1份40
 | 
			
		||||
                    rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig);
 | 
			
		||||
                } else if (EGrade.YOU_KE.getValue() == calGradeValue) {
 | 
			
		||||
                    // SVIP,拿 2 份 10%
 | 
			
		||||
                    rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("2"));
 | 
			
		||||
                    // SVIP,拿2份40
 | 
			
		||||
                    rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig).multiply(new BigDecimal("2"));
 | 
			
		||||
                } else if (EGrade.MAKER.getValue() == calGradeValue) {
 | 
			
		||||
                    // 卓越,拿 3 份 10%
 | 
			
		||||
                    rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("3"));
 | 
			
		||||
                    // 卓越,拿3份40
 | 
			
		||||
                    rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig).multiply(new BigDecimal("3"));
 | 
			
		||||
                } else if (EGrade.VIP.getValue() == calGradeValue) {
 | 
			
		||||
                    // 首席,拿 4 份 10%
 | 
			
		||||
                    rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("4"));
 | 
			
		||||
                    // 首席,拿4份40
 | 
			
		||||
                    rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig).multiply(new BigDecimal("4"));
 | 
			
		||||
                } else if (EGrade.S_VIP.getValue() == calGradeValue) {
 | 
			
		||||
                    // 合伙人,拿 5 份 10%
 | 
			
		||||
                    rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal("5"));
 | 
			
		||||
                    // 合伙人,拿5份40
 | 
			
		||||
                    rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig).multiply(new BigDecimal("5"));
 | 
			
		||||
                }
 | 
			
		||||
                // 赋值前一个会员等级
 | 
			
		||||
                beforeGradeValue = calGradeValue;
 | 
			
		||||
| 
						 | 
				
			
			@ -1255,7 +1210,7 @@ public class BonusSettleRangeHandle extends BonusSettleHandle {
 | 
			
		|||
                int tmpGradeVal = (calGradeValue - beforeGradeValue) / 10;
 | 
			
		||||
 | 
			
		||||
                // 新等级的直推级差收益
 | 
			
		||||
                rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresPrice).multiply(new BigDecimal(tmpGradeVal));
 | 
			
		||||
                rangeBonusIncome = RetailConstants.RANGE_BONUS.multiply(waresQuantityBig).multiply(new BigDecimal(tmpGradeVal));
 | 
			
		||||
                // 直推级差收益 = 新等级的直推级差收益 - 上一等级的平级收益
 | 
			
		||||
                rangeBonusIncome = rangeBonusIncome.subtract(beforeSameBonus);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -38,7 +38,7 @@ public class MemberBonusFirstPurchaseVO extends PubMemberBonusVO {
 | 
			
		|||
    /**
 | 
			
		||||
     * 商城重消
 | 
			
		||||
     */
 | 
			
		||||
    @BigDecimalFormat("#0.00")
 | 
			
		||||
    @BigDecimalFormat("#0.0000")
 | 
			
		||||
    private BigDecimal backPoints;
 | 
			
		||||
//
 | 
			
		||||
//    /**
 | 
			
		||||
| 
						 | 
				
			
			@ -59,7 +59,7 @@ public class MemberBonusFirstPurchaseVO extends PubMemberBonusVO {
 | 
			
		|||
    /**
 | 
			
		||||
     * 复购级差收益
 | 
			
		||||
     */
 | 
			
		||||
    @BigDecimalFormat("#0.00")
 | 
			
		||||
    @BigDecimalFormat("#0.0000")
 | 
			
		||||
    private BigDecimal repurRangeIncome;
 | 
			
		||||
 | 
			
		||||
//    /**
 | 
			
		||||
| 
						 | 
				
			
			@ -76,55 +76,55 @@ public class MemberBonusFirstPurchaseVO extends PubMemberBonusVO {
 | 
			
		|||
    /**
 | 
			
		||||
     * 新零售直推收益
 | 
			
		||||
     */
 | 
			
		||||
    @BigDecimalFormat("#0.00")
 | 
			
		||||
    @BigDecimalFormat("#0.0000")
 | 
			
		||||
    private BigDecimal retailRangeIncome;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 新零售平级收益
 | 
			
		||||
     */
 | 
			
		||||
    @BigDecimalFormat("#0.00")
 | 
			
		||||
    @BigDecimalFormat("#0.0000")
 | 
			
		||||
    private BigDecimal retailSameLevelIncome;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 新零售区域分红
 | 
			
		||||
     */
 | 
			
		||||
    @BigDecimalFormat("#0.00")
 | 
			
		||||
    @BigDecimalFormat("#0.0000")
 | 
			
		||||
    private BigDecimal retailAreaIncome;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 福利级差收益
 | 
			
		||||
     */
 | 
			
		||||
    @BigDecimalFormat("#0.00")
 | 
			
		||||
    @BigDecimalFormat("#0.0000")
 | 
			
		||||
    private BigDecimal retailBenefitRangeIncome;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 复购级差收益
 | 
			
		||||
     */
 | 
			
		||||
    @BigDecimalFormat("#0.00")
 | 
			
		||||
    @BigDecimalFormat("#0.0000")
 | 
			
		||||
    private BigDecimal retailMonthRepurchaseIncome;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 培育津贴
 | 
			
		||||
     */
 | 
			
		||||
    @BigDecimalFormat("#0.00")
 | 
			
		||||
    @BigDecimalFormat("#0.0000")
 | 
			
		||||
    private BigDecimal coachIncome;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 福利分红收益总计
 | 
			
		||||
     */
 | 
			
		||||
    @BigDecimalFormat("#0.00")
 | 
			
		||||
    @BigDecimalFormat("#0.0000")
 | 
			
		||||
    private BigDecimal retailBenefitIncomeTotal;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 新零售收益小计
 | 
			
		||||
     */
 | 
			
		||||
    @BigDecimalFormat("#0.00")
 | 
			
		||||
    @BigDecimalFormat("#0.0000")
 | 
			
		||||
    private BigDecimal retailRealSubtotal;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 实发收益总计
 | 
			
		||||
     */
 | 
			
		||||
    @BigDecimalFormat("#0.00")
 | 
			
		||||
    @BigDecimalFormat("#0.0000")
 | 
			
		||||
    private BigDecimal realIncomeTotal;
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -626,6 +626,4 @@ public interface CuMemberMapper extends BaseMapper<CuMember> {
 | 
			
		|||
     */
 | 
			
		||||
    BdTradeWhiteConfig selectMemberByUnderBlood(@Param("pkMember") Long pkMember, @Param("memberType") Integer memberType);
 | 
			
		||||
 | 
			
		||||
    String getSharePosterImage(@Param("userId") Long userId);
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -895,9 +895,4 @@ public interface ICuMemberService extends IService<CuMember> {
 | 
			
		|||
     */
 | 
			
		||||
    BdTradeWhiteConfig selectMemberByUnderBlood(Long pkMember, Integer memberType);
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 获取用户体系分享图片
 | 
			
		||||
     * @return
 | 
			
		||||
     */
 | 
			
		||||
    String getSharePosterImage();
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3232,9 +3232,4 @@ public class CuMemberServiceImpl extends ServiceImpl<CuMemberMapper, CuMember> i
 | 
			
		|||
        return baseMapper.selectMemberByUnderBlood(pkMember, memberType);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public String getSharePosterImage() {
 | 
			
		||||
        return baseMapper.getSharePosterImage(SecurityUtils.getUserId());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -6,7 +6,6 @@ import cn.hutool.core.lang.tree.Tree;
 | 
			
		|||
import cn.hutool.core.lang.tree.TreeNodeConfig;
 | 
			
		||||
import cn.hutool.core.lang.tree.TreeUtil;
 | 
			
		||||
import cn.hutool.core.util.ObjectUtil;
 | 
			
		||||
import cn.hutool.json.JSONObject;
 | 
			
		||||
import cn.hutool.json.JSONUtil;
 | 
			
		||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 | 
			
		||||
import com.hzs.common.core.annotation.RepeatSubmitSimple;
 | 
			
		||||
| 
						 | 
				
			
			@ -16,7 +15,6 @@ import com.hzs.common.core.enums.EGrade;
 | 
			
		|||
import com.hzs.common.core.enums.ENoticeWebsiteType;
 | 
			
		||||
import com.hzs.common.core.enums.EYesNo;
 | 
			
		||||
import com.hzs.common.core.utils.PageUtils;
 | 
			
		||||
import com.hzs.common.core.utils.sign.Base64Util;
 | 
			
		||||
import com.hzs.common.core.web.controller.BaseController;
 | 
			
		||||
import com.hzs.common.core.web.domain.AjaxResult;
 | 
			
		||||
import com.hzs.common.core.web.page.TableDataInfo;
 | 
			
		||||
| 
						 | 
				
			
			@ -77,14 +75,6 @@ public class RetailMemberController extends BaseController {
 | 
			
		|||
        }
 | 
			
		||||
        return AjaxResult.success(retailMemberInfoVO);
 | 
			
		||||
    }
 | 
			
		||||
    @GetMapping("/get-shared-image")
 | 
			
		||||
    public AjaxResult getSharedImage() {
 | 
			
		||||
        JSONObject result = new JSONObject();
 | 
			
		||||
        String url = iCuMemberService.getSharePosterImage();
 | 
			
		||||
        result.set("url", url);
 | 
			
		||||
        result.set("base64", Base64Util.toUrlBase64(url));
 | 
			
		||||
        return AjaxResult.success(result);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 获取会员收益区域
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -15,5 +15,4 @@ public interface IMemberRetailService {
 | 
			
		|||
     */
 | 
			
		||||
    RetailMemberInfoVO getMemberInfo(Long pkMember);
 | 
			
		||||
 | 
			
		||||
    String getSharePosterImage();
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -91,15 +91,9 @@ public class MemberRetailServiceImpl implements IMemberRetailService {
 | 
			
		|||
                    .pkCountry(cuMember.getPkCountry())
 | 
			
		||||
                    .pkSettleCountry(cuMember.getPkSettleCountry())
 | 
			
		||||
                    .isActivate(cuMember.getIsActivate())
 | 
			
		||||
                    .sharePosterImage(cuMember.getSharePosterImage())
 | 
			
		||||
                    .build();
 | 
			
		||||
        }
 | 
			
		||||
        return null;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public String getSharePosterImage() {
 | 
			
		||||
        return iCuMemberService.getSharePosterImage();
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -141,10 +141,4 @@ public class RetailMemberInfoVO implements Serializable {
 | 
			
		|||
     */
 | 
			
		||||
    private Integer isActivate;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 分享海报图片
 | 
			
		||||
     */
 | 
			
		||||
    private String sharePosterImage;
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1887,7 +1887,6 @@
 | 
			
		|||
    <!-- 查询菜单用户 -->
 | 
			
		||||
    <select id="getMenuMember" resultType="com.hzs.common.domain.member.ext.CuMemberExt">
 | 
			
		||||
        select cm.*,
 | 
			
		||||
                bv.SHARE_POSTER_IMAGE as sharePosterImage,
 | 
			
		||||
               case
 | 
			
		||||
                   when tmp1.pk_member is null then
 | 
			
		||||
                       1
 | 
			
		||||
| 
						 | 
				
			
			@ -1933,7 +1932,6 @@
 | 
			
		|||
                              and cms.APPROVE_STATUS = 5
 | 
			
		||||
                              and cms.APPLY_STATUS = 5) tmp10
 | 
			
		||||
                           on tmp10.pk_member = cm.pk_id
 | 
			
		||||
                left join BD_VERTEX bv on bv.PK_ID = cm.PK_VERTEX
 | 
			
		||||
        where cm.pk_id = #{pkMember}
 | 
			
		||||
          and cm.del_flag = 0
 | 
			
		||||
    </select>
 | 
			
		||||
| 
						 | 
				
			
			@ -2477,13 +2475,5 @@
 | 
			
		|||
                and t0.category = 0)
 | 
			
		||||
        where rownum = 1
 | 
			
		||||
    </select>
 | 
			
		||||
    <select id="getSharePosterImage" resultType="java.lang.String" parameterType="java.lang.Long">
 | 
			
		||||
        select
 | 
			
		||||
            bv.SHARE_POSTER_IMAGE AS sharePosterImage
 | 
			
		||||
        FROM
 | 
			
		||||
            cu_member cm
 | 
			
		||||
        LEFT JOIN BD_VERTEX bv ON bv.PK_ID = cm.PK_VERTEX
 | 
			
		||||
        where cm.PK_ID = ${userId}
 | 
			
		||||
    </select>
 | 
			
		||||
 | 
			
		||||
</mapper>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -100,7 +100,6 @@ public class BdVertexController extends BaseController {
 | 
			
		|||
        bdVertex.setPkMember(mb.getPkId());
 | 
			
		||||
        bdVertex.setSystemType(systemType);
 | 
			
		||||
        bdVertex.setRegionVertexPkId(vertexParam.getRegionVertexPkId());
 | 
			
		||||
        bdVertex.setSharePosterImage(vertexParam.getSharePosterImage());
 | 
			
		||||
        iBdVertexService.save(bdVertex);
 | 
			
		||||
        return AjaxResult.success();
 | 
			
		||||
    }
 | 
			
		||||
| 
						 | 
				
			
			@ -140,7 +139,6 @@ public class BdVertexController extends BaseController {
 | 
			
		|||
        bdVertex.setModifiedTime(new Date());
 | 
			
		||||
        bdVertex.setPkModified(SecurityUtils.getUserId());
 | 
			
		||||
        bdVertex.setRegionVertexPkId(vertexParam.getRegionVertexPkId());
 | 
			
		||||
        bdVertex.setSharePosterImage(vertexParam.getSharePosterImage());
 | 
			
		||||
        if (null == bdVertex.getPkParent()) {
 | 
			
		||||
            bdVertex.setPkParent(0);
 | 
			
		||||
        }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -59,9 +59,4 @@ public class VertexParam {
 | 
			
		|||
    private Integer sort;
 | 
			
		||||
 | 
			
		||||
    private Long regionVertexPkId;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 分享海报图片
 | 
			
		||||
     */
 | 
			
		||||
    private String sharePosterImage;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -52,9 +52,4 @@ public class VertexVo extends BaseEntity {
 | 
			
		|||
 | 
			
		||||
    @TableField("REGION_VERTEX_PK_ID")
 | 
			
		||||
    private Long regionVertexPkId;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 分享海报图片
 | 
			
		||||
     */
 | 
			
		||||
    private String sharePosterImage;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -10,9 +10,9 @@ import java.util.List;
 | 
			
		|||
public class RetailConstants {
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 直推级差等级收益(每个等级差为百分之十)
 | 
			
		||||
     * 直推级差等级收益(每个等级为40元)
 | 
			
		||||
     */
 | 
			
		||||
    public static final BigDecimal RANGE_BONUS = new BigDecimal("0.1");
 | 
			
		||||
    public static final BigDecimal RANGE_BONUS = new BigDecimal("40");
 | 
			
		||||
    /**
 | 
			
		||||
     * 直推平级收益比例(每代拿商品价格的千分之五)
 | 
			
		||||
     */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -142,17 +142,6 @@ public enum EOrderType {
 | 
			
		|||
        resultList.add(EOrderType.REPURCHASE_ORDER);
 | 
			
		||||
        return resultList;
 | 
			
		||||
    }
 | 
			
		||||
    public static String getLabelByValue(Integer value) {
 | 
			
		||||
        if (null == value) {
 | 
			
		||||
            return "";
 | 
			
		||||
        }
 | 
			
		||||
        for (EOrderType enums : EOrderType.values()) {
 | 
			
		||||
            if (enums.getValue() == value) {
 | 
			
		||||
                return enums.getLabel();
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        return "";
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -211,10 +211,4 @@ public class CuMemberExt extends CuMember {
 | 
			
		|||
     */
 | 
			
		||||
    private String lastMemberCode;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 分享海报图片
 | 
			
		||||
     */
 | 
			
		||||
    private String sharePosterImage;
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -120,18 +120,6 @@ public class TOnlinePayment extends BaseEntity {
 | 
			
		|||
    @TableField("PAY_SOURCE")
 | 
			
		||||
    private Integer paySource;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 主账户金额
 | 
			
		||||
     */
 | 
			
		||||
    @TableField("MAIN_ACCOUNT_MONEY")
 | 
			
		||||
    private BigDecimal mainAccountMoney;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 子账户金额
 | 
			
		||||
     */
 | 
			
		||||
    @TableField("SUB_ACCOUNT_MONEY")
 | 
			
		||||
    private BigDecimal subAccountMoney;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 支付-前端回调页面的扩展参数
 | 
			
		||||
     */
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +1,5 @@
 | 
			
		|||
package com.hzs.common.domain.third.pay.ext;
 | 
			
		||||
 | 
			
		||||
import com.hzs.common.core.annotation.Transaction;
 | 
			
		||||
import com.hzs.common.core.constant.EnumsPrefixConstants;
 | 
			
		||||
import com.hzs.common.domain.third.pay.TOnlinePayment;
 | 
			
		||||
import lombok.Data;
 | 
			
		||||
import lombok.EqualsAndHashCode;
 | 
			
		||||
| 
						 | 
				
			
			@ -34,8 +32,4 @@ public class TOnlinePaymentExt extends TOnlinePayment {
 | 
			
		|||
     */
 | 
			
		||||
    private String phone;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    private Integer orderType;
 | 
			
		||||
    private String orderTypeVal;
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -57,7 +57,4 @@ public class BdVertex extends BaseEntity {
 | 
			
		|||
 | 
			
		||||
    @TableField("REGION_VERTEX_PK_ID")
 | 
			
		||||
    private Long regionVertexPkId;
 | 
			
		||||
 | 
			
		||||
    @TableField("SHARE_POSTER_IMAGE")
 | 
			
		||||
    private String sharePosterImage;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -131,14 +131,13 @@ public class JdPayNotifyController extends JdBaseController {
 | 
			
		|||
                    String thirdOrderCode = successNotify.getOutTradeNo();
 | 
			
		||||
                    // 订单编号
 | 
			
		||||
                    String orderCode = thirdOrderCode;
 | 
			
		||||
                    String acqOrderId = successNotify.getAcqOrderId();
 | 
			
		||||
 | 
			
		||||
                    // 订单金额
 | 
			
		||||
                    int tradeAmount = Integer.parseInt(successNotify.getTradeAmount());
 | 
			
		||||
                    BigDecimal payMoney = new BigDecimal(tradeAmount).divide(new BigDecimal("100"), 2, BigDecimal.ROUND_HALF_UP);
 | 
			
		||||
                    Integer payType = convertPayType(successNotify.getPayTool());
 | 
			
		||||
                    // 支付后续业务处理
 | 
			
		||||
                    if (iPayService.notifyHandle(type, orderCode, thirdOrderCode, payNumber, payTime, payMoney, EPayChannel.JD, channelNumber, payType, acqOrderId)) {
 | 
			
		||||
                    if (iPayService.notifyHandle(type, orderCode, thirdOrderCode, payNumber, payTime, payMoney, EPayChannel.JD, channelNumber, payType)) {
 | 
			
		||||
                        return SUCCESS;
 | 
			
		||||
                    }
 | 
			
		||||
                } else {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -95,5 +95,4 @@ public class JdPayTradeSuccessNotify implements Serializable {
 | 
			
		|||
     */
 | 
			
		||||
    private String installmentNum;
 | 
			
		||||
 | 
			
		||||
    private String acqOrderId;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -75,10 +75,4 @@ public class OnlinePaymentParam {
 | 
			
		|||
    private Integer systemType;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 订单类型 EOrderType
 | 
			
		||||
     * -1为充值
 | 
			
		||||
     */
 | 
			
		||||
    private Integer orderType;
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -29,7 +29,7 @@ public interface IPayService {
 | 
			
		|||
                         EPayChannel ePayChannel, String channelNumber);
 | 
			
		||||
    boolean notifyHandle(String businessType, String businessCode, String originalOrder,
 | 
			
		||||
                         String payNumber, Date payTime, BigDecimal payMoney,
 | 
			
		||||
                         EPayChannel ePayChannel, String channelNumber, Integer payType, String acqOrderId);
 | 
			
		||||
                         EPayChannel ePayChannel, String channelNumber, Integer payType);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -131,13 +131,9 @@ public class JdPayServiceImpl implements IJdPayService {
 | 
			
		|||
                        BigDecimal subTradeAmount;
 | 
			
		||||
                        if(i == separateAccounts.size() - 1){
 | 
			
		||||
                            subTradeAmount = remaining;
 | 
			
		||||
                            log.info("分账 最后一个账户( 总 - 已分账 ) : {}, {}", subTradeAmount, remaining);
 | 
			
		||||
                            onlinePayment.setSubAccountMoney(subTradeAmount);
 | 
			
		||||
                        }else{
 | 
			
		||||
                            subTradeAmount = tradeAmount.multiply(separateAccount.getProportion().setScale(2, BigDecimal.ROUND_DOWN)).setScale(2, BigDecimal.ROUND_DOWN);
 | 
			
		||||
                            subTradeAmount = tradeAmount.subtract(tradeAmount.multiply(separateAccount.getProportion().setScale(2, BigDecimal.ROUND_DOWN)).setScale(2, BigDecimal.ROUND_DOWN));
 | 
			
		||||
                            remaining = remaining.subtract(subTradeAmount).setScale(2, BigDecimal.ROUND_DOWN);
 | 
			
		||||
                            onlinePayment.setMainAccountMoney(subTradeAmount);
 | 
			
		||||
                            log.info("分账 过程 : {}, {}, {}", subTradeAmount, remaining, separateAccount.getProportion().setScale(2, BigDecimal.ROUND_DOWN));
 | 
			
		||||
                        }
 | 
			
		||||
                        JdPayDivisionAccountTradeInfo divisionAccountTradeInfo = new JdPayDivisionAccountTradeInfo();
 | 
			
		||||
                        divisionAccountTradeInfo.setMerchantNo(separateAccount.getAccount());
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -107,9 +107,7 @@ public class PayServiceImpl implements IPayService {
 | 
			
		|||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public boolean notifyHandle(String businessType, String businessCode, String originalOrder, String payNumber,
 | 
			
		||||
                                Date payTime, BigDecimal payMoney, EPayChannel ePayChannel, String channelNumber,
 | 
			
		||||
                                Integer payType, String acqOrderId) {
 | 
			
		||||
    public boolean notifyHandle(String businessType, String businessCode, String originalOrder, String payNumber, Date payTime, BigDecimal payMoney, EPayChannel ePayChannel, String channelNumber, Integer payType) {
 | 
			
		||||
        // 校验支付信息状态、业务与支付金额是否一致等
 | 
			
		||||
        TOnlinePayment onlinePayment = itOnlinePaymentService.queryByBusiness(
 | 
			
		||||
                ObjectUtil.isNotEmpty(businessType) ? Integer.valueOf(businessType) : null
 | 
			
		||||
| 
						 | 
				
			
			@ -134,7 +132,6 @@ public class PayServiceImpl implements IPayService {
 | 
			
		|||
            onlinePayment.setPkModified(MagicNumberConstants.PK_ADMIN);
 | 
			
		||||
            onlinePayment.setModifiedTime(new Date());
 | 
			
		||||
            onlinePayment.setPayType(payType);
 | 
			
		||||
            onlinePayment.setChannelNumber(acqOrderId);
 | 
			
		||||
            if (null != ePayChannel) {
 | 
			
		||||
                onlinePayment.setPayChannel(ePayChannel.getValue());
 | 
			
		||||
            }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -3,7 +3,6 @@ package com.hzs.third.pay.service.impl;
 | 
			
		|||
import cn.hutool.core.util.ObjectUtil;
 | 
			
		||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 | 
			
		||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 | 
			
		||||
import com.hzs.common.core.enums.EOrderType;
 | 
			
		||||
import com.hzs.common.domain.third.pay.TOnlinePayment;
 | 
			
		||||
import com.hzs.common.domain.third.pay.ext.TOnlinePaymentExt;
 | 
			
		||||
import com.hzs.third.pay.mapper.TOnlinePaymentMapper;
 | 
			
		||||
| 
						 | 
				
			
			@ -55,15 +54,7 @@ public class TOnlinePaymentServiceImpl extends ServiceImpl<TOnlinePaymentMapper,
 | 
			
		|||
 | 
			
		||||
    @Override
 | 
			
		||||
    public List<TOnlinePaymentExt> queryList(OnlinePaymentParam param, Integer pkCountry) {
 | 
			
		||||
        List<TOnlinePaymentExt> result = baseMapper.queryList(param, pkCountry);
 | 
			
		||||
        for (TOnlinePaymentExt tOnlinePaymentExt : result) {
 | 
			
		||||
            if(ObjectUtil.isNotEmpty(tOnlinePaymentExt.getOrderType())){
 | 
			
		||||
                tOnlinePaymentExt.setOrderTypeVal(EOrderType.getLabelByValue(tOnlinePaymentExt.getOrderType()));
 | 
			
		||||
            }else{
 | 
			
		||||
                tOnlinePaymentExt.setOrderTypeVal("充值订单");
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        return result;
 | 
			
		||||
        return baseMapper.queryList(param, pkCountry);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,9 +1,7 @@
 | 
			
		|||
package com.hzs.third.pay.vo;
 | 
			
		||||
 | 
			
		||||
import com.baomidou.mybatisplus.annotation.TableField;
 | 
			
		||||
import com.fasterxml.jackson.annotation.JsonFormat;
 | 
			
		||||
import com.fasterxml.jackson.annotation.JsonIgnore;
 | 
			
		||||
import com.hzs.common.core.annotation.BigDecimalFormat;
 | 
			
		||||
import com.hzs.common.core.annotation.Excel;
 | 
			
		||||
import com.hzs.common.core.annotation.Transaction;
 | 
			
		||||
import com.hzs.common.core.constant.EnumsPrefixConstants;
 | 
			
		||||
| 
						 | 
				
			
			@ -146,25 +144,4 @@ public class OnlinePaymentVO {
 | 
			
		|||
     */
 | 
			
		||||
    private String callbackInfo;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 主账户金额
 | 
			
		||||
     */
 | 
			
		||||
    @TableField("MAIN_ACCOUNT_MONEY")
 | 
			
		||||
    @Excel(name = "主账户金额")
 | 
			
		||||
    @BigDecimalFormat
 | 
			
		||||
    private BigDecimal mainAccountMoney;
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 子账户金额
 | 
			
		||||
     */
 | 
			
		||||
    @TableField("SUB_ACCOUNT_MONEY")
 | 
			
		||||
    @Excel(name = "子账户金额")
 | 
			
		||||
    @BigDecimalFormat
 | 
			
		||||
    private BigDecimal subAccountMoney;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
    private Integer orderType;
 | 
			
		||||
 | 
			
		||||
    @Excel(name = "订单类型")
 | 
			
		||||
    private String orderTypeVal;
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -30,12 +30,10 @@
 | 
			
		|||
 | 
			
		||||
    <!-- 查询列表 -->
 | 
			
		||||
    <select id="queryList" resultType="com.hzs.common.domain.third.pay.ext.TOnlinePaymentExt">
 | 
			
		||||
        select top.*, cm.member_code, cm.member_name,
 | 
			
		||||
        so.order_type orderType
 | 
			
		||||
        select top.*, cm.member_code, cm.member_name
 | 
			
		||||
        from T_ONLINE_PAYMENT top
 | 
			
		||||
        left join cu_member cm
 | 
			
		||||
        on cm.pk_id = top.pk_creator
 | 
			
		||||
        left join sa_order so on so.ORDER_CODE = top.business_code
 | 
			
		||||
        where top.del_flag = 0
 | 
			
		||||
        and top.pk_country = #{pkCountry}
 | 
			
		||||
        <if test="param.memberCode != null and param.memberCode != ''">
 | 
			
		||||
| 
						 | 
				
			
			@ -73,12 +71,6 @@
 | 
			
		|||
        <if test="param.payNumber != null">
 | 
			
		||||
            and top.pay_number like #{param.payNumber} || '%'
 | 
			
		||||
        </if>
 | 
			
		||||
        <if test="param.orderType != null and param.orderType > 0">
 | 
			
		||||
            and so.order_type = #{param.orderType}
 | 
			
		||||
        </if>
 | 
			
		||||
        <if test="param.orderType != null and param.orderType == -1">
 | 
			
		||||
            and so.order_type is null
 | 
			
		||||
        </if>
 | 
			
		||||
        order by top.creation_time desc
 | 
			
		||||
    </select>
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,5 +1,7 @@
 | 
			
		|||
CREATE TABLE "RETAIL"."BD_REGION_VERTEX" (
 | 
			
		||||
                                     "PK_ID" NUMBER(6,0),
 | 
			
		||||
                                     "CREATION_TIME" DATE NOT NULL,
 | 
			
		||||
                                     "MODIFIED_TIME" DATE,
 | 
			
		||||
                                     "NAME" VARCHAR2(200) NOT NULL,
 | 
			
		||||
                                     "DEL_FLAG" NUMBER(1,0) DEFAULT 0 NOT NULL ENABLE,
 | 
			
		||||
                                     "PK_COUNTRY" NUMBER(4,0) DEFAULT 1 NOT NULL ENABLE,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,7 +0,0 @@
 | 
			
		|||
ALTER TABLE "T_ONLINE_PAYMENT"
 | 
			
		||||
    ADD ("MAIN_ACCOUNT_MONEY" NUMBER(16,2))
 | 
			
		||||
ADD ("SUB_ACCOUNT_MONEY" NUMBER(16,2));
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN "CLOUD_2"."T_ONLINE_PAYMENT"."MAIN_ACCOUNT_MONEY" IS '分账-主账户金额';
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN "CLOUD_2"."T_ONLINE_PAYMENT"."SUB_ACCOUNT_MONEY" IS '分账-子账户金额'
 | 
			
		||||
| 
						 | 
				
			
			@ -1,4 +0,0 @@
 | 
			
		|||
ALTER TABLE "BD_VERTEX"
 | 
			
		||||
    ADD ("SHARE_POSTER_IMAGE" VARCHAR(200));
 | 
			
		||||
 | 
			
		||||
COMMENT ON COLUMN "BD_VERTEX"."SHARE_POSTER_IMAGE" IS '分享海报图'
 | 
			
		||||
		Loading…
	
		Reference in New Issue