## 奖金7日后发放即可提现;
This commit is contained in:
parent
03e27ab120
commit
ebc0cdf7d8
|
@ -1,7 +1,5 @@
|
||||||
package com.hzs.bonus.bonus.service.impl;
|
package com.hzs.bonus.bonus.service.impl;
|
||||||
|
|
||||||
import cn.hutool.core.collection.CollectionUtil;
|
|
||||||
import com.hzs.activity.base.IActivityServiceApi;
|
|
||||||
import com.hzs.bonus.account.service.ICuMemberAccountService;
|
import com.hzs.bonus.account.service.ICuMemberAccountService;
|
||||||
import com.hzs.bonus.account.service.ICuMemberTradeDetailService;
|
import com.hzs.bonus.account.service.ICuMemberTradeDetailService;
|
||||||
import com.hzs.bonus.account.service.ICuMemberTradeService;
|
import com.hzs.bonus.account.service.ICuMemberTradeService;
|
||||||
|
@ -9,13 +7,10 @@ import com.hzs.bonus.achieve.service.ICuMemberSettlePeriodService;
|
||||||
import com.hzs.bonus.bonus.service.IBonusGrantService;
|
import com.hzs.bonus.bonus.service.IBonusGrantService;
|
||||||
import com.hzs.bonus.bonus.service.ICuMemberBonusService;
|
import com.hzs.bonus.bonus.service.ICuMemberBonusService;
|
||||||
import com.hzs.bonus.pub.tool.MemberToolsHandler;
|
import com.hzs.bonus.pub.tool.MemberToolsHandler;
|
||||||
import com.hzs.common.core.constant.CountryConstants;
|
|
||||||
import com.hzs.common.core.constant.MagicNumberConstants;
|
import com.hzs.common.core.constant.MagicNumberConstants;
|
||||||
import com.hzs.common.core.enums.*;
|
import com.hzs.common.core.enums.*;
|
||||||
import com.hzs.common.core.utils.ComputeUtil;
|
import com.hzs.common.core.utils.ComputeUtil;
|
||||||
import com.hzs.common.core.utils.DateUtils;
|
import com.hzs.common.core.utils.DateUtils;
|
||||||
import com.hzs.common.domain.activity.tree.SaTreeOrder;
|
|
||||||
import com.hzs.common.domain.member.account.CuMemberAccount;
|
|
||||||
import com.hzs.common.domain.member.account.CuMemberTrade;
|
import com.hzs.common.domain.member.account.CuMemberTrade;
|
||||||
import com.hzs.common.domain.member.account.CuMemberTradeDetail;
|
import com.hzs.common.domain.member.account.CuMemberTradeDetail;
|
||||||
import com.hzs.common.domain.member.achieve.ext.CuMemberSettlePeriodExt;
|
import com.hzs.common.domain.member.achieve.ext.CuMemberSettlePeriodExt;
|
||||||
|
@ -47,8 +42,6 @@ public class BonusGrantServiceImpl implements IBonusGrantService {
|
||||||
@DubboReference
|
@DubboReference
|
||||||
IAccountServiceApi iAccountServiceApi;
|
IAccountServiceApi iAccountServiceApi;
|
||||||
@DubboReference
|
@DubboReference
|
||||||
IActivityServiceApi iActivityServiceApi;
|
|
||||||
@DubboReference
|
|
||||||
ICountryServiceApi iCountryServiceApi;
|
ICountryServiceApi iCountryServiceApi;
|
||||||
@DubboReference
|
@DubboReference
|
||||||
ICurrencyServiceApi iCurrencyServiceApi;
|
ICurrencyServiceApi iCurrencyServiceApi;
|
||||||
|
@ -91,23 +84,23 @@ public class BonusGrantServiceImpl implements IBonusGrantService {
|
||||||
Map<Integer, BdCountry> integerBdCountryMap = iCountryServiceApi.getAllCountryMap().getData();
|
Map<Integer, BdCountry> integerBdCountryMap = iCountryServiceApi.getAllCountryMap().getData();
|
||||||
if (integerBdCountryMap.size() > 0) {
|
if (integerBdCountryMap.size() > 0) {
|
||||||
for (Integer pkCountry : integerBdCountryMap.keySet()) {
|
for (Integer pkCountry : integerBdCountryMap.keySet()) {
|
||||||
|
|
||||||
// 先发放奖金,验证是否是周结,周结发放上周的,直接变为可提现
|
// 先发放奖金,验证是否是周结,周结发放上周的,直接变为可提现
|
||||||
Date grantDay = DateUtils.beforeDate(7, ChronoUnit.DAYS, DateUtils.currentDate());
|
Date grantDay = DateUtils.beforeDate(7, ChronoUnit.DAYS, DateUtils.currentDate());
|
||||||
String settleDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, grantDay);
|
String settleDate = DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, grantDay);
|
||||||
grantBonusByPeriod(pkCountry, settleDate);
|
grantBonusByPeriod(pkCountry, settleDate);
|
||||||
|
|
||||||
// 周奖发放上周的奖金
|
|
||||||
CuMemberSettlePeriodExt cuMemberSettlePeriod = getCuMemberSettlePeriod(pkCountry, settleDate);
|
|
||||||
Date withdrawDay = DateUtils.beforeDate(7, ChronoUnit.DAYS, grantDay);
|
|
||||||
if (EExpandCapMethod.WEEK_SETTLE.getValue() == cuMemberSettlePeriod.getSettleCycle()
|
|
||||||
|| !CountryConstants.CHINA_COUNTRY.equals(pkCountry)) {
|
|
||||||
withdrawDay = grantDay;
|
|
||||||
}
|
|
||||||
|
|
||||||
// 设置奖金可以提现
|
// 设置奖金可以提现
|
||||||
withdrawalBonusByPeriod(pkCountry, DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, withdrawDay));
|
withdrawalBonusByPeriod(pkCountry, settleDate);
|
||||||
|
|
||||||
|
// // 周奖发放上周的奖金
|
||||||
|
// CuMemberSettlePeriodExt cuMemberSettlePeriod = getCuMemberSettlePeriod(pkCountry, settleDate);
|
||||||
|
// Date withdrawDay = DateUtils.beforeDate(7, ChronoUnit.DAYS, grantDay);
|
||||||
|
// if (EExpandCapMethod.WEEK_SETTLE.getValue() == cuMemberSettlePeriod.getSettleCycle()
|
||||||
|
// || !CountryConstants.CHINA_COUNTRY.equals(pkCountry)) {
|
||||||
|
// withdrawDay = grantDay;
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// // 设置奖金可以提现
|
||||||
|
// withdrawalBonusByPeriod(pkCountry, DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, withdrawDay));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -177,58 +170,6 @@ public class BonusGrantServiceImpl implements IBonusGrantService {
|
||||||
}
|
}
|
||||||
Map<Integer, BdAccount> bdAccountValueMap = iAccountServiceApi.getAccountMapByCountry(pkCountry).getData();
|
Map<Integer, BdAccount> bdAccountValueMap = iAccountServiceApi.getAccountMapByCountry(pkCountry).getData();
|
||||||
Date currentDateTime = DateUtils.currentDateTime();
|
Date currentDateTime = DateUtils.currentDateTime();
|
||||||
// 中国需要发放沙棘种树的复购券
|
|
||||||
if (CountryConstants.CHINA_COUNTRY.equals(pkCountry)) {
|
|
||||||
// 查询沙棘种树订单
|
|
||||||
Date startDate = DateUtils.parseStringToDate(settleDate);
|
|
||||||
Date endDate = DateUtils.afterDate(1, ChronoUnit.DAYS, startDate);
|
|
||||||
List<SaTreeOrder> treeOrderList = iActivityServiceApi.querySaTreeOrderByDate(startDate, endDate).getData();
|
|
||||||
if (CollectionUtil.isNotEmpty(treeOrderList)) {
|
|
||||||
CurrencyDTO currencyDTO = iCurrencyServiceApi.getCurrency(pkCountry).getData();
|
|
||||||
Map<Long, CuMemberAccount> cuMemberAccountMap = new HashMap<>();
|
|
||||||
List<CuMemberTrade> memberTradeList = new ArrayList<>();
|
|
||||||
for (SaTreeOrder saTreeOrder : treeOrderList) {
|
|
||||||
// 复购券
|
|
||||||
CuMemberTrade cuMemberTrade = CuMemberTrade.builder().tradeCode(memberToolsHandler.createTradeCode(EOrderPrefix.TRADE_CODE.getValue()))
|
|
||||||
.tradeClassify(ETradeClassify.INCOME.getValue())
|
|
||||||
.pkMember(saTreeOrder.getPkMember())
|
|
||||||
.pkAccount(bdAccountValueMap.get(EAccount.REPURCHASE.getValue()).getPkId())
|
|
||||||
.pkRate(currencyDTO.getPkId())
|
|
||||||
.tradeAmount(saTreeOrder.getOrderAmount())
|
|
||||||
.sourceCode("")
|
|
||||||
.tradeStatue(ETradeStatus.TAKE_EFFECT.getValue())
|
|
||||||
.build();
|
|
||||||
cuMemberTrade.setRemarks(ETradeType.SEABUCKTHORN_GRANT.getLabel());
|
|
||||||
cuMemberTrade.setTradeType(ETradeType.SEABUCKTHORN_GRANT.getValue());
|
|
||||||
cuMemberTrade.setPkCountry(pkCountry);
|
|
||||||
cuMemberTrade.setPkCreator(MagicNumberConstants.PK_ADMIN);
|
|
||||||
cuMemberTrade.setCreationTime(currentDateTime);
|
|
||||||
memberTradeList.add(cuMemberTrade);
|
|
||||||
if (cuMemberAccountMap.containsKey(saTreeOrder.getPkMember())) {
|
|
||||||
CuMemberAccount cuMemberAccount = cuMemberAccountMap.get(saTreeOrder.getPkMember());
|
|
||||||
cuMemberAccount.setAccount8(ComputeUtil.computeAdd(cuMemberAccount.getAccount8(), saTreeOrder.getOrderAmount()));
|
|
||||||
} else {
|
|
||||||
CuMemberAccount cuMemberAccount = CuMemberAccount.builder()
|
|
||||||
.pkMember(saTreeOrder.getPkMember())
|
|
||||||
.account8(saTreeOrder.getOrderAmount())
|
|
||||||
.build();
|
|
||||||
cuMemberAccount.setPkCountry(pkCountry);
|
|
||||||
cuMemberAccountMap.put(saTreeOrder.getPkMember(), cuMemberAccount);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
List<Long> seqList = iCuMemberTradeService.batchQueryCuMemberTradeSeq(memberTradeList.size());
|
|
||||||
for (int i = 0; i < memberTradeList.size(); i++) {
|
|
||||||
CuMemberTrade cuMemberTrade = memberTradeList.get(i);
|
|
||||||
cuMemberTrade.setPkId(seqList.get(i));
|
|
||||||
}
|
|
||||||
iCuMemberTradeService.batchInsertCuMemberTrade(memberTradeList);
|
|
||||||
if (cuMemberAccountMap.size() > 0) {
|
|
||||||
cuMemberAccountMap.forEach((pkMember, cumemberAccount) -> {
|
|
||||||
iCuMemberAccountService.updateMemberAccount(cumemberAccount, MagicNumberConstants.PK_ADMIN);
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// 查询奖金表,查询未发放的奖金明细
|
// 查询奖金表,查询未发放的奖金明细
|
||||||
List<CuMemberBonus> cuMemberBonusList = iCuMemberBonusService.queryCuMemberBonusByCondition(pkCountry, EGrantStatus.PUBLISHED.getValue(), cuMemberSettlePeriod.getStartPeriod(), cuMemberSettlePeriod.getEndPeriod());
|
List<CuMemberBonus> cuMemberBonusList = iCuMemberBonusService.queryCuMemberBonusByCondition(pkCountry, EGrantStatus.PUBLISHED.getValue(), cuMemberSettlePeriod.getStartPeriod(), cuMemberSettlePeriod.getEndPeriod());
|
||||||
if (cuMemberBonusList.size() > 0) {
|
if (cuMemberBonusList.size() > 0) {
|
||||||
|
|
Loading…
Reference in New Issue