## 区域收益奖金显示接口调整;

This commit is contained in:
cabbage 2025-07-25 12:04:30 +08:00
parent a83c73edae
commit 514ae22761
12 changed files with 41 additions and 214 deletions

View File

@ -101,8 +101,7 @@ public class CuMemberBonusController extends BaseController {
.queryBonusTotalVoByConditionForServer(bonusParam);
List<BonusTotalVO> bonusTotalVoList = getBonusTotalVoS(cuMemberBonusList);
List<BonusTotalExportVO> bonusTotalExportVOList = BeanUtil.copyToList(bonusTotalVoList, BonusTotalExportVO.class);
Map<String, Integer> sourceBonusList = menuColumnServiceApi
.queryMenuColumn("totalBonus", SecurityUtils.getUserId()).getData();
Map<String, Integer> sourceBonusList = menuColumnServiceApi.queryMenuColumn("totalBonus", SecurityUtils.getUserId()).getData();
ExcelUtil<BonusTotalExportVO> util = new ExcelUtil<>(BonusTotalExportVO.class, sourceBonusList);
util.exportExcel(response, bonusTotalExportVOList, "奖金汇总导出");
}
@ -111,9 +110,6 @@ public class CuMemberBonusController extends BaseController {
List<BonusTotalVO> totalVoList = new ArrayList<>();
cuMemberBonusList.forEach(cuMemberBonus -> {
BonusTotalVO bonusTotalVO = BeanUtil.copyProperties(cuMemberBonus, BonusTotalVO.class);
for (String key : CuMemberBonusVO.INCOME_ARRAY) {
ReflectUtils.invokeSetter(bonusTotalVO, key + BonusFieldConstants.INCOME_SUFFIX, ComputeUtil.computeMultiply(ReflectUtils.invokeGetter(cuMemberBonus, key), cuMemberBonus.getOutExchangeRate()));
}
totalVoList.add(bonusTotalVO);
});
return totalVoList;
@ -193,9 +189,6 @@ public class CuMemberBonusController extends BaseController {
cuMemberBonusVO.setMemberCode(CommonUtil.getMemberCode(cuMemberBonusExt.getMemberCode(), cuMemberBonusExt.getServiceCode()));
cuMemberBonusVO.setMemberName(CommonUtil.getMemberName(cuMemberBonusExt.getPkVertex(), cuMemberBonusExt.getMemberName(), cuMemberBonusExt.getNickName()));
for (String key : CuMemberBonusVO.INCOME_ARRAY) {
ReflectUtils.invokeSetter(cuMemberBonusVO, key + BonusFieldConstants.INCOME_SUFFIX, ReflectUtils.invokeGetter(cuMemberBonusExt, key));
}
cuMemberBonusVoList.add(cuMemberBonusVO);
}
return cuMemberBonusVoList;

View File

@ -243,6 +243,7 @@ public class CuMemberBonusServiceImpl extends ServiceImpl<CuMemberBonusMapper, C
cuMemberBonusExt.setRepurPushIncome(ComputeUtil.computeAdd(cuMemberBonusExt.getRepurPushIncome(), memberBonusExt.getRepurPushIncome()));
cuMemberBonusExt.setRepurRangeIncome(ComputeUtil.computeAdd(cuMemberBonusExt.getRepurRangeIncome(), memberBonusExt.getRepurRangeIncome()));
cuMemberBonusExt.setRepurExpandIncome(ComputeUtil.computeAdd(cuMemberBonusExt.getRepurExpandIncome(), memberBonusExt.getRepurExpandIncome()));
cuMemberBonusExt.setRepurCoachIncome(ComputeUtil.computeAdd(cuMemberBonusExt.getRepurCoachIncome(), memberBonusExt.getRepurCoachIncome()));
cuMemberBonusExt.setRepurRealSubtotal(ComputeUtil.computeAdd(cuMemberBonusExt.getRepurRealSubtotal(), memberBonusExt.getRepurRealSubtotal()));
cuMemberBonusExt.setCloudDirectIncome(ComputeUtil.computeAdd(cuMemberBonusExt.getCloudDirectIncome(), memberBonusExt.getCloudDirectIncome()));
cuMemberBonusExt.setCloudPurIncome(ComputeUtil.computeAdd(cuMemberBonusExt.getCloudPurIncome(), memberBonusExt.getCloudPurIncome()));
@ -289,6 +290,7 @@ public class CuMemberBonusServiceImpl extends ServiceImpl<CuMemberBonusMapper, C
cuMemberBonusExt.setRepurPushIncome(BigDecimal.ZERO);
cuMemberBonusExt.setRepurRangeIncome(BigDecimal.ZERO);
cuMemberBonusExt.setRepurExpandIncome(BigDecimal.ZERO);
cuMemberBonusExt.setRepurCoachIncome(BigDecimal.ZERO);
cuMemberBonusExt.setRepurRealSubtotal(BigDecimal.ZERO);
cuMemberBonusExt.setCloudDirectIncome(BigDecimal.ZERO);
cuMemberBonusExt.setCloudPurIncome(BigDecimal.ZERO);
@ -466,15 +468,16 @@ public class CuMemberBonusServiceImpl extends ServiceImpl<CuMemberBonusMapper, C
} else if (EBonusItems.COACHING_INCOME.getValue() == bonusItemsValue
|| EBonusItems.REPURCHASE_COACHING_INCOME.getValue() == bonusItemsValue
|| EBonusItems.REPURCHASE_POINT_INCOME.getValue() == bonusItemsValue) {
// 辅导收益复购辅导收益见点收益
// 辅导收益复购辅导收益复购见点收益
List<CuMemberBonusCoachExt> cuMemberBonusCoachList = cuMemberBonusCoachMapper.queryMemberBonusCoachByBonusItemsForServer(bonusParam);
dataTable = getDataTable(cuMemberBonusCoachList);
cuMemberBonusCoachList.forEach(cuMemberBonusCoach -> {
MemberBonusDetailSerVO memberBonusDetailVO = BeanUtil.copyProperties(cuMemberBonusCoach, MemberBonusDetailSerVO.class);
memberBonusDetailSerVoS.add(memberBonusDetailVO);
});
} else if (EBonusItems.REPURCHASE_RANGE_INCOME.getValue() == bonusItemsValue) {
// 复购极差
} else if (EBonusItems.REPURCHASE_RANGE_INCOME.getValue() == bonusItemsValue
|| EBonusItems.REPURCHASE_AREA_INCOME.getValue() == bonusItemsValue) {
// 复购极差复购区域收益
List<CuMemberBonusRangeExt> cuMemberBonusRangeList = cuMemberBonusRangeMapper.queryMemberBonusRangeByBonusItemsForServer(bonusParam);
dataTable = getDataTable(cuMemberBonusRangeList);
cuMemberBonusRangeList.forEach(cuMemberBonusRange -> {

View File

@ -30,71 +30,77 @@ public class BonusTotalExportVO implements Serializable {
* 直推收益
*/
@Excel(name = "直推收益", scale = 2)
private BigDecimal directIncomeOri;
private BigDecimal directIncome;
/**
* 拓展收益
*/
@Excel(name = "拓展收益", scale = 2)
private BigDecimal expandIncomeOri;
private BigDecimal expandIncome;
/**
* 辅导收益
*/
@Excel(name = "辅导收益", scale = 2)
private BigDecimal coachIncomeOri;
private BigDecimal coachIncome;
/**
* 服务补贴
*/
@Excel(name = "服务补贴", scale = 2)
private BigDecimal serviceIncomeOri;
private BigDecimal serviceIncome;
/**
* 复购拓展收益
*/
@Excel(name = "复购拓展收益", scale = 2)
private BigDecimal repurExpandIncomeOri;
private BigDecimal repurExpandIncome;
/**
* 复购辅导收益
*/
@Excel(name = "复购辅导收益", scale = 2)
private BigDecimal repurCoachIncomeOri;
private BigDecimal repurCoachIncome;
/**
* 复购见点收益
*/
@Excel(name = "见点收益", scale = 2)
private BigDecimal globalPointsOri;
private BigDecimal globalPoints;
/**
* 复购区域收益
*/
@Excel(name = "区域收益", scale = 2)
private BigDecimal storeIncome;
/**
* 商城重消
*/
@Excel(name = "重复消费", scale = 2)
private BigDecimal backPointsOri;
private BigDecimal backPoints;
/**
* 平台服务费
*/
@Excel(name = "平台服务费", scale = 2)
private BigDecimal serviceSpendOri;
private BigDecimal serviceSpend;
/**
* 首购实发小计
*/
@Excel(name = "首购实发小计", scale = 2)
private BigDecimal purRealSubtotalOri;
private BigDecimal purRealSubtotal;
/**
* 复购实发小计
*/
@Excel(name = "复购实发小计", scale = 2)
private BigDecimal repurRealSubtotalOri;
private BigDecimal repurRealSubtotal;
/**
* 实发收益总计
*/
@Excel(name = "实发收益总计", scale = 2)
private BigDecimal realIncomeTotalOri;
private BigDecimal realIncomeTotal;
}

View File

@ -14,17 +14,6 @@ import java.util.Date;
@Data
public class CuMemberBonusVO implements Serializable {
/**
* 需要转换人民币的
*/
public static final String[] INCOME_ARRAY = new String[]{
"directIncome", "expandIncome", "expandNoCapping", "expandCapping",
"coachIncome", "shareIncome", "serviceIncome", "cloudDirectIncome",
"cloudPurIncome", "cloudRepurIncome", "repurPushIncome", "repurRangeIncome", "repurExpandIncome",
"repurCoachIncome", "repurCoupon", "repurCouponShare", "backPoints", "serviceSpend",
"globalPoints", "carAwardPoints", "storeIncome", "hiFunIncome",
"makerDirectIncome", "makerShareIncome", "makerRealSubtotal", "purRealSubtotal",
"cloudRealSubtotal", "repurRealSubtotal", "repurCouponSubtotal", "realIncomeTotal"};
/**
* 主键
*/
@ -101,22 +90,12 @@ public class CuMemberBonusVO implements Serializable {
* 直推收益
*/
@Excel(name = "直推收益", scale = 2)
private BigDecimal directIncomeOri;
/**
* 直推收益
*/
private BigDecimal directIncome;
/**
* 拓展收益
*/
@Excel(name = "拓展收益", scale = 2)
private BigDecimal expandIncomeOri;
/**
* 拓展收益
*/
private BigDecimal expandIncome;
/**
@ -129,7 +108,6 @@ public class CuMemberBonusVO implements Serializable {
*/
private BigDecimal expandCapping;
/**
* 拓展无封 (拓展收益按等级正常比例结算 拓展收益按等级正常比例结算 无封顶)
*/
@ -144,11 +122,6 @@ public class CuMemberBonusVO implements Serializable {
* 辅导收益
*/
@Excel(name = "辅导收益", scale = 2)
private BigDecimal coachIncomeOri;
/**
* 辅导收益
*/
private BigDecimal coachIncome;
/**
@ -161,15 +134,10 @@ public class CuMemberBonusVO implements Serializable {
*/
private BigDecimal shareIncome;
/**
* 服务补贴
*/
@Excel(name = "服务补贴", scale = 2)
private BigDecimal serviceIncomeOri;
/**
* 报单收益
*/
@Excel(name = "服务补贴", scale = 2)
private BigDecimal serviceIncome;
/**
@ -196,32 +164,25 @@ public class CuMemberBonusVO implements Serializable {
* 复购拓展收益
*/
@Excel(name = "复购拓展收益", scale = 2)
private BigDecimal repurExpandIncomeOri;
/**
* 复购拓展收益
*/
private BigDecimal repurExpandIncome;
/**
* 复购辅导收益
*/
@Excel(name = "复购辅导收益", scale = 2)
private BigDecimal repurCoachIncomeOri;
/**
* 复购辅导收益
*/
private BigDecimal repurCoachIncome;
/**
* 复购见点收益
* 见点收益
*/
@Excel(name = "见点收益", scale = 2)
private BigDecimal globalPoints;
/**
* 见点收益
* 区域收益
*/
private BigDecimal globalPointsOri;
@Excel(name = "区域收益", scale = 2)
private BigDecimal storeIncome;
/**
* 复购卷
@ -247,22 +208,12 @@ public class CuMemberBonusVO implements Serializable {
* 商城重消
*/
@Excel(name = "重复消费", scale = 2)
private BigDecimal backPointsOri;
/**
* 商城重消
*/
private BigDecimal backPoints;
/**
* 平台服务费
*/
@Excel(name = "平台服务费", scale = 2)
private BigDecimal serviceSpendOri;
/**
* 平台服务费
*/
private BigDecimal serviceSpend;
@ -271,42 +222,21 @@ public class CuMemberBonusVO implements Serializable {
*/
private BigDecimal carAwardPointsOri;
/**
* 车奖积分
*/
private BigDecimal carAwardPoints;
/**
* 店铺收益
*/
private BigDecimal storeIncomeOri;
/**
* 店铺收益
*/
private BigDecimal storeIncome;
/**
* 首购实发小计
*/
@Excel(name = "首购实发小计", scale = 2)
private BigDecimal purRealSubtotalOri;
/**
* 首购实发小计
*/
private BigDecimal purRealSubtotal;
/**
* 复购实发小计
*/
@Excel(name = "复购实发小计", scale = 2)
private BigDecimal repurRealSubtotalOri;
/**
* 复购实发小计
*/
private BigDecimal repurRealSubtotal;
/**
@ -323,11 +253,6 @@ public class CuMemberBonusVO implements Serializable {
* 实发收益总计
*/
@Excel(name = "实发收益总计", scale = 2)
private BigDecimal realIncomeTotalOri;
/**
* 实发收益总计
*/
private BigDecimal realIncomeTotal;
}

View File

@ -79,4 +79,9 @@ public class MemberBonusFirstPurchaseVO extends PubMemberBonusVO {
*/
private BigDecimal globalPoints;
/**
* 区域收益
*/
private BigDecimal storeIncome;
}

View File

@ -166,8 +166,6 @@
b.remark,b.income_ratio,b.income_dial_ratio,b.order_dial_ratio,(b.round+1) round,b.second,bct.short_name settle_country
from (
select pk_id,pk_member,order_code,order_type,pk_rate,pk_country,order_amount,order_achieve from sa_order
union
select pk_id,pk_member,order_code,order_type,pk_rate,pk_country,order_amount,order_achieve from sa_t_order
) so
inner join (
select cb.pk_member,cp.pk_order,cb.period,cb.pk_country,cp.pk_bonus_items,cp.income_status,cp.CAL_ACHIEVE,cp.pretax_income,cp.income_tax,cp.real_income,

View File

@ -152,13 +152,12 @@
tar.member_code,tar.member_name,bg.pk_transaction pk_settle_grade,ba.pk_transaction pk_awards,bv.vertex_name,ct.team_name,
b.remark,b.income_ratio,b.income_dial_ratio,b.order_dial_ratio,bct.short_name settle_country from (
select pk_id,pk_member,order_code,order_type,pk_rate,pk_country,order_amount,order_achieve from sa_order
union
select pk_id,pk_member,order_code,order_type,pk_rate,pk_country,order_amount,order_achieve from sa_t_order
) so
inner join (
select cb.pk_member,cr.pk_order,cb.period,cb.pk_country,cr.pk_bonus_items,cr.income_status,cr.CAL_ACHIEVE,cr.pretax_income,cr.income_tax,cr.real_income,
cr.remark,cr.income_ratio,cr.income_dial_ratio,cr.order_dial_ratio from
cu_member_bonus cb
select cb.pk_member,cr.pk_order,cb.period,cb.pk_country,cr.pk_bonus_items,cr.income_status,
cr.CAL_ACHIEVE,cr.pretax_income,cr.income_tax,cr.real_income,
cr.remark,cr.income_ratio,cr.income_dial_ratio,cr.order_dial_ratio
from cu_member_bonus cb
inner join CU_MEMBER_BONUS_RANGE cr
on cb.pk_id = cr.pk_bonus
where 1=1

View File

@ -149,12 +149,6 @@
#{item}
</foreach>
and pay_time >= #{startDate, jdbcType=DATE} and pay_time &lt; #{endDate, jdbcType=DATE}
<!-- <if test="assessType == 0">
union all
select pk_member,order_achieve order_achieve from sa_t_order
where del_flag = 0 and order_status = 1 and order_type =21
and pay_time >= #{startDate, jdbcType=DATE} and pay_time &lt; #{endDate, jdbcType=DATE}
</if>-->
)
group by pk_member
) b

View File

@ -1915,9 +1915,6 @@
and (
(select count(so.PK_ID) from sa_order so where so.PK_MEMBER = cm.pk_id and so.DEL_FLAG = 0 and so.ORDER_STATUS =
1) > 0
or
(select count(sto.PK_ID) from sa_t_order sto where sto.PK_MEMBER = cm.pk_id and sto.DEL_FLAG = 0 and
sto.ORDER_STATUS = 1) > 0
)
<if test="memberInfo != null and memberInfo != ''">
and (cm.member_code=#{memberInfo} or cm.member_name=#{memberInfo})

View File

@ -424,80 +424,6 @@
<if test="param.memberCode != null and param.memberCode != ''">
where cm1.member_code like #{param.memberCode} || '%'
</if>
<!-- 三方供应订单 -->
union all
select
sto.pk_id,
sto.order_code,
sto.creation_time,
sto.pay_time,
sto.order_type,
sto.order_amount,
sto.order_achieve,
sto.order_ass_achieve,
sto.postage,
cm2.member_code creator_code,
cm2.member_name creator_name,
cm2.service_code creator_service_code,
cm2.nick_name creator_nick_name,
cm2.pk_vertex creator_pk_vertex,
cm1.member_code member_code,
cm1.member_name member_name,
cm1.phone member_phone,
cm1.service_code member_service_code,
cm1.nick_name member_nick_name,
cm1.pk_vertex member_pk_vertex,
sto.order_status,
sto.rec_name,
sto.rec_phone,
sto.rec_province,
sto.rec_city,
sto.rec_county,
sto.rec_address,
sto.remark,
sto.pk_country,
sto.pk_member,
sto.pk_creator,
sto.merchant_type,
bc.in_exchange_rate
from (
select distinct sto.*
from sa_t_order sto
<if test="param.orderStatus != null">
left join sa_t_order_items stoi
on stoi.pk_th_order = sto.pk_id
and stoi.del_flag = 0
</if>
where sto.del_flag = 0
<if test="pkCountry != null">
and sto.pk_country = #{pkCountry}
</if>
and (sto.pk_member = #{memberId} or sto.pk_creator = #{memberId})
<if test="param.orderStatus != null">
and stoi.order_status = #{param.orderStatus}
</if>
<if test="param.creationTimeStart != null">
and sto.creation_time >= #{param.creationTimeStart}
</if>
<if test="param.creationTimeEnd != null">
and #{param.creationTimeEnd} >= sto.creation_time
</if>
<if test="param.orderCode != null and param.orderCode != ''">
and sto.order_code like #{param.orderCode} || '%'
</if>
<if test="param.orderType != null">
and sto.order_type = #{param.orderType}
</if>
) sto
inner join cu_member cm1
on cm1.pk_id = sto.pk_member
inner join cu_member cm2
on cm2.pk_id = sto.pk_creator
inner join bd_currency bc
on bc.pk_id = sto.pk_rate
<if test="param.memberCode != null and param.memberCode != ''">
where cm1.member_code like #{param.memberCode} || '%'
</if>
order by creation_time desc
</select>
<!-- 自助撤单列表-->
@ -1202,13 +1128,6 @@
where so.del_flag = 0
and so.pk_country = #{pkCountry}
and (so.pk_member = #{memberId} or so.pk_creator = #{memberId})
union
select distinct sto.order_type
from sa_t_order sto
where sto.del_flag = 0
and sto.pk_country = #{pkCountry}
and (sto.pk_member = #{memberId} or sto.pk_creator = #{memberId})
order by order_type
</select>
<!-- 二次发货列表 -->

View File

@ -48,9 +48,4 @@ public class BonusFieldConstants {
public static final String WITHDRAWAL_DATE = "WITHDRAWAL_DATE";
/**
* 人民币收益后缀
*/
public static final String INCOME_SUFFIX = "Ori";
}

View File

@ -7,13 +7,6 @@ import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.Date;
/**
* @Description:
* @Author: sui q
* @Time: 2023/1/31 18:03
* @Classname: CuMemberBonusRangeExt
* @PackageName: com.hzs.common.domain.member.ext
*/
@EqualsAndHashCode(callSuper = true)
@Data
public class CuMemberBonusRangeExt extends CuMemberBonusRange {