## 首页添加距下奖衔数据差多少;
This commit is contained in:
parent
4a833aae55
commit
c1f479fb36
|
@ -352,8 +352,19 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl<CuMemberAchieveMappe
|
|||
}
|
||||
}
|
||||
|
||||
BigDecimal big10000 = new BigDecimal("10000");
|
||||
|
||||
// 当日新増PV
|
||||
CuMemberAwardsUnderVO todayPv = iCuMemberTreeService.queryMemberTodayPv(pkMember);
|
||||
// 返回显示VO
|
||||
CuMemberAwardsUnderVO resultVO = CuMemberAwardsUnderVO.builder()
|
||||
.aNewPv(BigDecimal.ZERO)
|
||||
.bNewPv(BigDecimal.ZERO)
|
||||
.aMonthPv(todayPv.getANewPv())
|
||||
.bMonthPv(todayPv.getBNewPv())
|
||||
.aSumPv(BigDecimal.ZERO)
|
||||
.bSumPv(BigDecimal.ZERO)
|
||||
.build();
|
||||
|
||||
if (hasSettle) {
|
||||
// 昨日业绩 -- 昨日结算表
|
||||
|
@ -371,27 +382,47 @@ public class CuMemberAchieveServiceImpl extends ServiceImpl<CuMemberAchieveMappe
|
|||
// 查询会员首页业绩显示
|
||||
CuMemberAwardsUnderVO awardsUnderVO = iCuMemberTreeService.queryMemberPv(settleTable, pkMember, monthTable);
|
||||
if (null != awardsUnderVO) {
|
||||
BigDecimal big10000 = new BigDecimal("10000");
|
||||
|
||||
return CuMemberAwardsUnderVO.builder()
|
||||
.aNewPv(null != awardsUnderVO.getANewPv() ? awardsUnderVO.getANewPv().divide(big10000, 2, BigDecimal.ROUND_FLOOR) : BigDecimal.ZERO)
|
||||
.bNewPv(null != awardsUnderVO.getBNewPv() ? awardsUnderVO.getBNewPv().divide(big10000, 2, BigDecimal.ROUND_FLOOR) : BigDecimal.ZERO)
|
||||
.aMonthPv(null != awardsUnderVO.getAMonthPv() ? todayPv.getANewPv().add(awardsUnderVO.getAMonthPv()).divide(big10000, 2, BigDecimal.ROUND_FLOOR) : todayPv.getANewPv())
|
||||
.bMonthPv(null != awardsUnderVO.getBMonthPv() ? todayPv.getBNewPv().add(awardsUnderVO.getBMonthPv()).divide(big10000, 2, BigDecimal.ROUND_FLOOR) : todayPv.getBNewPv())
|
||||
.aSumPv(null != awardsUnderVO.getASumPv() ? awardsUnderVO.getASumPv().divide(big10000, 2, BigDecimal.ROUND_FLOOR) : BigDecimal.ZERO)
|
||||
.bSumPv(null != awardsUnderVO.getBSumPv() ? awardsUnderVO.getBSumPv().divide(big10000, 2, BigDecimal.ROUND_FLOOR) : BigDecimal.ZERO)
|
||||
.build();
|
||||
resultVO.setANewPv(null != awardsUnderVO.getANewPv() ? awardsUnderVO.getANewPv().divide(big10000, 2, BigDecimal.ROUND_FLOOR) : BigDecimal.ZERO);
|
||||
resultVO.setBNewPv(null != awardsUnderVO.getBNewPv() ? awardsUnderVO.getBNewPv().divide(big10000, 2, BigDecimal.ROUND_FLOOR) : BigDecimal.ZERO);
|
||||
resultVO.setAMonthPv(null != awardsUnderVO.getAMonthPv() ? todayPv.getANewPv().add(awardsUnderVO.getAMonthPv()).divide(big10000, 2, BigDecimal.ROUND_FLOOR) : todayPv.getANewPv());
|
||||
resultVO.setBMonthPv(null != awardsUnderVO.getBMonthPv() ? todayPv.getBNewPv().add(awardsUnderVO.getBMonthPv()).divide(big10000, 2, BigDecimal.ROUND_FLOOR) : todayPv.getBNewPv());
|
||||
resultVO.setASumPv(null != awardsUnderVO.getASumPv() ? awardsUnderVO.getASumPv() : BigDecimal.ZERO);
|
||||
resultVO.setBSumPv(null != awardsUnderVO.getBSumPv() ? awardsUnderVO.getBSumPv() : BigDecimal.ZERO);
|
||||
resultVO.setASumRealPv(null != awardsUnderVO.getASumRealPv() ? awardsUnderVO.getASumRealPv() : BigDecimal.ZERO);
|
||||
resultVO.setBSumRealPv(null != awardsUnderVO.getBSumRealPv() ? awardsUnderVO.getBSumRealPv() : BigDecimal.ZERO);
|
||||
}
|
||||
}
|
||||
|
||||
return CuMemberAwardsUnderVO.builder()
|
||||
.aNewPv(BigDecimal.ZERO)
|
||||
.bNewPv(BigDecimal.ZERO)
|
||||
.aMonthPv(todayPv.getANewPv())
|
||||
.bMonthPv(todayPv.getBNewPv())
|
||||
.aSumPv(BigDecimal.ZERO)
|
||||
.bSumPv(BigDecimal.ZERO)
|
||||
.build();
|
||||
// 当前会员
|
||||
CuMember cuMember = iCuMemberService.getMember(pkMember);
|
||||
//根据国家获取奖衔配置信息
|
||||
List<BdAwards> awardsList = iAwardsServiceApi.queryAwards(pkCountry).getData();
|
||||
// 当前会员奖衔
|
||||
BdAwards bdAwards = awardsList.stream()
|
||||
.filter(tmp -> tmp.getPkId().equals(cuMember.getPkAwards()))
|
||||
.findFirst().get();
|
||||
if (bdAwards.getAwardsValue() < EAwards.CHAIRMAN.getValue()) {
|
||||
// 不是最后三级,需要显示业绩
|
||||
// 大于当前奖衔的列表
|
||||
BdAwards nextBdAwards = awardsList.stream()
|
||||
.filter(tmp -> tmp.getAwardsValue() > bdAwards.getAwardsValue())
|
||||
.min(Comparator.comparingInt(BdAwards::getAwardsValue)).get();
|
||||
resultVO.setTarAwardsName(nextBdAwards.getAwardsName());
|
||||
|
||||
if (resultVO.getASumRealPv().compareTo(resultVO.getBSumRealPv()) <= 0) {
|
||||
// 左区 小于等于 右区,左区为小区
|
||||
resultVO.setTargetPv(nextBdAwards.getCommunityCheck().subtract(resultVO.getASumRealPv()).divide(big10000, 2, BigDecimal.ROUND_FLOOR));
|
||||
} else {
|
||||
// 右区为小区
|
||||
resultVO.setTargetPv(nextBdAwards.getCommunityCheck().subtract(resultVO.getBSumRealPv()).divide(big10000, 2, BigDecimal.ROUND_FLOOR));
|
||||
}
|
||||
}
|
||||
|
||||
resultVO.setASumPv(resultVO.getASumPv().divide(big10000, 2, BigDecimal.ROUND_FLOOR));
|
||||
resultVO.setBSumPv(resultVO.getBSumPv().divide(big10000, 2, BigDecimal.ROUND_FLOOR));
|
||||
resultVO.setASumRealPv(resultVO.getASumRealPv().divide(big10000, 2, BigDecimal.ROUND_FLOOR));
|
||||
resultVO.setBSumRealPv(resultVO.getBSumRealPv().divide(big10000, 2, BigDecimal.ROUND_FLOOR));
|
||||
return resultVO;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -0,0 +1,57 @@
|
|||
package com.hzs.member.achieve.vo;
|
||||
|
||||
import com.hzs.common.core.annotation.BigDecimalFormat;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Data
|
||||
public class MemberAwardsNewVO implements Serializable {
|
||||
|
||||
/**
|
||||
* A区新增业绩 -- 昨日业绩
|
||||
*/
|
||||
@BigDecimalFormat
|
||||
private BigDecimal aNewPv;
|
||||
/**
|
||||
* B区新增业绩 -- 昨日业绩
|
||||
*/
|
||||
@BigDecimalFormat
|
||||
private BigDecimal bNewPv;
|
||||
|
||||
/**
|
||||
* A区当月业绩
|
||||
*/
|
||||
@BigDecimalFormat
|
||||
private BigDecimal aMonthPv;
|
||||
/**
|
||||
* B区当月业绩
|
||||
*/
|
||||
@BigDecimalFormat
|
||||
private BigDecimal bMonthPv;
|
||||
|
||||
/**
|
||||
* A区累计业绩 -- 历史业绩
|
||||
*/
|
||||
@BigDecimalFormat
|
||||
private BigDecimal aSumPv;
|
||||
/**
|
||||
* B区累计业绩 -- 历史业绩
|
||||
*/
|
||||
@BigDecimalFormat
|
||||
private BigDecimal bSumPv;
|
||||
|
||||
/**
|
||||
* 目标业绩
|
||||
*/
|
||||
@BigDecimalFormat()
|
||||
private BigDecimal targetPv;
|
||||
|
||||
/**
|
||||
* 目标奖衔名称
|
||||
*/
|
||||
private String tarAwardsName;
|
||||
|
||||
|
||||
}
|
|
@ -1,5 +1,6 @@
|
|||
package com.hzs.member.base.controller.api;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.hzs.common.core.config.BdConfig;
|
||||
import com.hzs.common.core.enums.EAwards;
|
||||
import com.hzs.common.core.enums.EEnv;
|
||||
|
@ -11,6 +12,7 @@ import com.hzs.common.security.utils.SecurityUtils;
|
|||
import com.hzs.member.achieve.service.ICuMemberAchieveService;
|
||||
import com.hzs.member.achieve.vo.CuMemberAwardsUnderVO;
|
||||
import com.hzs.member.achieve.vo.CuMemberNewAddAchieveVO;
|
||||
import com.hzs.member.achieve.vo.MemberAwardsNewVO;
|
||||
import com.hzs.member.base.dto.MemberYearAwardsDTO;
|
||||
import com.hzs.member.base.service.ICuMemberService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
@ -67,7 +69,8 @@ public class ApiHomePageController {
|
|||
*/
|
||||
@GetMapping("/index-member-awards")
|
||||
public AjaxResult selectMemberAwards() {
|
||||
return AjaxResult.success(cuMemberAchieveService.indexMemberAwards(SecurityUtils.getUserId(), SecurityUtils.getPkCountry()));
|
||||
CuMemberAwardsUnderVO resultVO = cuMemberAchieveService.indexMemberAwards(SecurityUtils.getUserId(), SecurityUtils.getPkCountry());
|
||||
return AjaxResult.success(BeanUtil.copyProperties(resultVO, MemberAwardsNewVO.class));
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -623,6 +623,8 @@
|
|||
cms.pk_member,
|
||||
cms.a_sum_pv,
|
||||
cms.b_sum_pv,
|
||||
cms.a_sum_real_pv,
|
||||
cms.b_sum_real_pv,
|
||||
cms.a_new_pv + cms.rep_a_new_pv a_new_pv,
|
||||
cms.b_new_pv + cms.rep_b_new_pv b_new_pv
|
||||
from ${settleTable} cms
|
||||
|
|
Loading…
Reference in New Issue