## 考核月表添加考核会员实时奖衔记录;
This commit is contained in:
parent
377b64f1e8
commit
e2a907f775
|
@ -254,6 +254,14 @@ public interface CuMemberAssessMapper extends BaseMapper<CuMemberAssess> {
|
|||
@Param("currentSettleTableName") String currentSettleTableName,
|
||||
@Param("beforeMonthSettleTableName") String beforeMonthSettleTableName);
|
||||
|
||||
/**
|
||||
* 更新区域考核考核状态
|
||||
*
|
||||
* @param accessTableName
|
||||
* @return
|
||||
*/
|
||||
int updateAreaAssessStatus(@Param("accessTableName") String accessTableName);
|
||||
|
||||
/**
|
||||
* 更新会员区域失效
|
||||
*
|
||||
|
|
|
@ -439,10 +439,9 @@ public class CuMemberAssessServiceImpl extends ServiceImpl<CuMemberAssessMapper,
|
|||
// 考核时间,当月最后一天(2025-07-25 23:59:59),往前推2个月 -- 这2个月新选的不需要处理
|
||||
Date assessDate = DateUtils.getEndTime(DateUtils.addMonths(currentSettleDate, -2));
|
||||
// 本月考核(本月最后一天)
|
||||
String accessTableName = TableNameConstants.CU_MEMBER_ASSESS + DateUtils.getMonth(settleDate);
|
||||
String assessTableName = TableNameConstants.CU_MEMBER_ASSESS + DateUtils.getMonth(settleDate);
|
||||
// 初始化本次考核会员数据
|
||||
// TODO 需要处理兼容重算的处理
|
||||
baseMapper.initAreaAssess(accessTableName, assessDate, currentSettleDate,
|
||||
baseMapper.initAreaAssess(assessTableName, assessDate, currentSettleDate,
|
||||
regionConfigMap.get(EAreaType.PROVINCE.getValue()),
|
||||
regionConfigMap.get(EAreaType.CITY.getValue()),
|
||||
regionConfigMap.get(EAreaType.COUNTY.getValue()));
|
||||
|
@ -453,10 +452,13 @@ public class CuMemberAssessServiceImpl extends ServiceImpl<CuMemberAssessMapper,
|
|||
String beforeMonthSettleTableName = TableNameConstants.CU_MEMBER_SETTLE + beforeMonthPeriod;
|
||||
// 当月最后一天日结(currentSettleTableName) - 上月最后一天日结(beforeMonthSettleTableName)
|
||||
// 累计算大小区,当天 - 上月最后一天 = 新増业绩
|
||||
baseMapper.updateAreaSmallPV(accessTableName, currentSettleTableName, beforeMonthSettleTableName);
|
||||
baseMapper.updateAreaSmallPV(assessTableName, currentSettleTableName, beforeMonthSettleTableName);
|
||||
|
||||
// 更新考核状态
|
||||
baseMapper.updateAreaAssessStatus(assessTableName);
|
||||
|
||||
// 根据考核结果,更新区域有效状态
|
||||
baseMapper.updateRetailRegionEffective(accessTableName, currentSettleDate);
|
||||
baseMapper.updateRetailRegionEffective(assessTableName, currentSettleDate);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -34,6 +34,7 @@
|
|||
assess_type NUMBER(2) not null,
|
||||
pk_awards NUMBER(6) default 1 not null,
|
||||
assess_target NUMBER(17,6) default 0 not null,
|
||||
assess_pk_awards NUMBER(6) default 1 not null,,
|
||||
is_examine NUMBER(1) default 1 not null,
|
||||
assess_status NUMBER(2) not null,
|
||||
month_balance NUMBER(17,6) default 0 not null,
|
||||
|
@ -532,7 +533,7 @@
|
|||
when cmrr.city = 0 and cmrr.county = 0 then #{province.pkAwards}
|
||||
when cmrr.city != 0 and cmrr.county = 0 then #{city.pkAwards}
|
||||
when cmrr.city != 0 and cmrr.county != 0 then #{county.pkAwards}
|
||||
end pk_awards,
|
||||
end assess_pk_awards,
|
||||
case
|
||||
when cmrr.city = 0 and cmrr.county = 0 then #{province.smallAssess}
|
||||
when cmrr.city != 0 and cmrr.county = 0 then #{city.smallAssess}
|
||||
|
@ -552,7 +553,7 @@
|
|||
insert (
|
||||
pk_member,
|
||||
assess_type,
|
||||
pk_awards,
|
||||
assess_pk_awards,
|
||||
assess_target,
|
||||
assess_status,
|
||||
pk_creator,
|
||||
|
@ -560,7 +561,7 @@
|
|||
values (
|
||||
tmp.pk_member,
|
||||
tmp.assess_type,
|
||||
tmp.pk_awards,
|
||||
tmp.assess_pk_awards,
|
||||
tmp.assess_target,
|
||||
tmp.assess_status,
|
||||
tmp.pk_creator,
|
||||
|
@ -571,6 +572,7 @@
|
|||
<update id="updateAreaSmallPV">
|
||||
merge into ${accessTableName} cma
|
||||
using (select t.pk_member,
|
||||
t.pk_awards,
|
||||
case
|
||||
when t.a_sum_pv > t.b_sum_pv then
|
||||
t.b_sum_pv
|
||||
|
@ -578,11 +580,13 @@
|
|||
t.a_sum_pv
|
||||
end small_pv
|
||||
from (select a.pk_member,
|
||||
a.pk_awards,
|
||||
nvl(a.a_sum_pv, 0) + nvl(a.rep_a_sum_pv, 0) -
|
||||
nvl(b.a_sum_pv, 0) - nvl(b.rep_a_sum_pv, 0) a_sum_pv,
|
||||
nvl(a.b_sum_pv, 0) + nvl(a.rep_b_sum_pv, 0) -
|
||||
nvl(b.b_sum_pv, 0) - nvl(b.rep_b_sum_pv, 0) b_sum_pv
|
||||
from (select cms.pk_member,
|
||||
cms.pk_awards,
|
||||
cms.a_sum_pv,
|
||||
cms.b_sum_pv,
|
||||
cms.rep_a_sum_pv,
|
||||
|
@ -604,17 +608,32 @@
|
|||
from ${accessTableName} cma
|
||||
where cma.del_flag = 0
|
||||
and cma.assess_type in (6, 7, 8))) b
|
||||
on a.pk_member = b.pk_member) t) tmp
|
||||
on (cma.pk_member = tmp.pk_member and cma.assess_type in (6, 7, 8) and cma.del_flag = 0)
|
||||
on a.pk_member = b.pk_member) t
|
||||
) tmp
|
||||
on (cma.pk_member = tmp.pk_member and cma.assess_type in (6, 7, 8) and cma.assess_status != 1 and cma.del_flag = 0)
|
||||
when matched then
|
||||
update set cma.month_add = tmp.small_pv,
|
||||
cma.ASSESS_STATUS =
|
||||
(case
|
||||
when tmp.small_pv >= cma.assess_target then
|
||||
1
|
||||
else
|
||||
2
|
||||
end)
|
||||
update set cma.pk_awards = tmp.pk_awards,
|
||||
cma.month_add = tmp.small_pv,
|
||||
cma.assess_status = 2
|
||||
</update>
|
||||
|
||||
<!-- 更新区域考核考核状态 -->
|
||||
<update id="updateAreaAssessStatus">
|
||||
merge into ${accessTableName} cma
|
||||
using (select cma.pk_member, cma.assess_type
|
||||
from ${accessTableName} cma
|
||||
left join bd_awards baa
|
||||
on baa.pk_id = cma.assess_pk_awards
|
||||
left join bd_awards ba
|
||||
on ba.pk_id = cma.pk_awards
|
||||
where cma.del_flag = 0
|
||||
and cma.assess_type in (6, 7, 8)
|
||||
and ba.awards_value >= baa.awards_value
|
||||
and cma.month_add >= cma.assess_target
|
||||
) tmp
|
||||
on (cma.pk_member = tmp.pk_member and cma.assess_type = tmp.assess_type)
|
||||
when matched then
|
||||
update set cma.assess_status = 0
|
||||
</update>
|
||||
|
||||
<!-- 更新会员区域失效 -->
|
||||
|
|
|
@ -49,7 +49,7 @@ public class CuMemberAssess extends BaseEntity {
|
|||
private Integer assessType;
|
||||
|
||||
/**
|
||||
* 考核奖衔
|
||||
* 奖衔
|
||||
*/
|
||||
@TableField("PK_AWARDS")
|
||||
private Integer pkAwards;
|
||||
|
@ -60,6 +60,13 @@ public class CuMemberAssess extends BaseEntity {
|
|||
@TableField("ASSESS_TARGET")
|
||||
private BigDecimal assessTarget;
|
||||
|
||||
/**
|
||||
* 考核奖衔
|
||||
*/
|
||||
@TableField("ASSESS_PK_AWARDS")
|
||||
private Integer assessPkAwards;
|
||||
|
||||
|
||||
/**
|
||||
* 是否免考(0=是,1=否)
|
||||
*/
|
||||
|
|
Loading…
Reference in New Issue