公会-土耳其-公会水晶-账单

This commit is contained in:
2025-08-20 17:06:34 +08:00
parent d26cd0996c
commit f37f652aa5
4 changed files with 11 additions and 23 deletions

View File

@@ -274,10 +274,9 @@ public enum BillObjTypeEnum {
LUCKY_GIFT_INCOME_ALLOT( 182, "幸运礼物价值分成", BillTypeEnum.IN, CurrencyEnum.GUILD_CRYSTAL, BillDomainTypeEnum.GUILD_POLICY2),
NORMAL_GIFT_INCOME_ALLOT( 183, "普通礼物价值分成", BillTypeEnum.IN, CurrencyEnum.GUILD_CRYSTAL, BillDomainTypeEnum.GUILD_POLICY2),
GUILD_POLICY2_CRYSTAL_SETTLEMENT( 184, "公会紫晶结算", BillTypeEnum.OUT, CurrencyEnum.GUILD_CRYSTAL, BillDomainTypeEnum.GUILD_POLICY2),
EXCHANGE_GUILD_CRYSTAL_TO_DIAMOND_PAY( 185, "公会紫晶兑换金币支出", BillTypeEnum.OUT, CurrencyEnum.GUILD_CRYSTAL, BillDomainTypeEnum.EXCHANGE),
EXCHANGE_GUILD_CRYSTAL_TO_DIAMOND_INCOME( 186, "公会紫晶兑换金币收入", BillTypeEnum.IN, CurrencyEnum.DIAMOND, BillDomainTypeEnum.EXCHANGE),
EXCHANGE_GUILD_CRYSTAL_TO_DIAMOND_PAY( 184, "公会紫晶兑换金币支出", BillTypeEnum.OUT, CurrencyEnum.GUILD_CRYSTAL, BillDomainTypeEnum.EXCHANGE),
EXCHANGE_GUILD_CRYSTAL_TO_DIAMOND_INCOME( 185, "公会紫晶兑换金币收入", BillTypeEnum.IN, CurrencyEnum.DIAMOND, BillDomainTypeEnum.EXCHANGE),
;
BillObjTypeEnum(int value, String desc, BillTypeEnum type, CurrencyEnum currency, BillDomainTypeEnum domain) {

View File

@@ -90,7 +90,8 @@ public class GuildCrystalExchangeService {
Double diamondD = BigDecimal.valueOf(guildCrystalNum).multiply(RATE).doubleValue();
userPurseService.excGuildCrystalToDiamond(uid, guildCrystalNumD, diamondD, BusiStatus.PURSE_MONEY_NOT_ENOUGH);
insertGuildCrystalExchangeRecord(uid, guildMember, guildCrystalNumD, diamondD, RATE);
// todo
//insertGuildCrystalExchangeRecord(uid, guildMember, guildCrystalNumD, diamondD, RATE);
log.info("[guild crystal 兑换] {} guild crystal {} 要兑换的金币数 {} 比率 {} 成功", uid, guildCrystalNum, diamondD, RATE);
}

View File

@@ -8,7 +8,6 @@ import com.accompany.business.service.guild.GuildMemberService;
import com.accompany.business.service.purse.GuildCrystalSettlementPurseService;
import com.accompany.business.service.record.BillRecordService;
import com.accompany.common.utils.DateTimeUtil;
import com.accompany.core.enumeration.BillObjTypeEnum;
import com.alibaba.fastjson.JSON;
import com.google.common.collect.Lists;
import lombok.SneakyThrows;
@@ -34,8 +33,6 @@ public class GuildCrystalSettlementService {
@Autowired
private GuildCrystalSettlementPurseService guildCrystalSettlementPurseService;
@Autowired
private BillRecordService billRecordService;
@Autowired
private GuildMemberCrystalSettlementRecordService guildMemberCrystalSettlementRecordService;
@SneakyThrows
@@ -44,7 +41,7 @@ public class GuildCrystalSettlementService {
Date now = null == cycleTime? DateTimeUtil.addSeconds(DateTimeUtil.getBeginTimeOfDay(new Date()),-1): DateTimeUtil.getEndTimeOfDay(cycleTime);
String cycleDate = DateTimeUtil.convertDate(now, DateTimeUtil.DEFAULT_DATE_PATTERN);
List<GuildMember> guildMemberList = guildMemberService.listValidGuildMemberByPartitionId(partitionId);
List<GuildMember> guildMemberList = guildMemberService.listByPartitionId(partitionId);
if (CollectionUtils.isEmpty(guildMemberList)){
return;
}
@@ -115,8 +112,6 @@ public class GuildCrystalSettlementService {
}).toList();
guildMemberCrystalSettlementRecordService.saveBatch(recordList);
saveBillRecord(recordList);
}
//清空结算状态
@@ -125,15 +120,4 @@ public class GuildCrystalSettlementService {
}
private void saveBillRecord(List<GuildMemberCrystalSettlementRecord> recordList) {
recordList.parallelStream().filter(record->record.getCrystalNum() > 0d)
.forEach(record -> {
UserPurse up = new UserPurse();
up.setUid(record.getUid());
up.setGuildCrystal(0D);
billRecordService.insertGeneralBillRecord(record.getUid(), record.getId().toString(),
BillObjTypeEnum.GUILD_POLICY2_CRYSTAL_SETTLEMENT, record.getCrystalNum(), up);
});
}
}

View File

@@ -52,10 +52,14 @@ public class BillRecordController extends BaseController {
@H5Authorization
@Authorization
public BusiResult<List<BillRecordDateVo>> pageBillRecord(Byte currencyType, Byte billType, String date, Integer pageNo, Integer pageSize) {
if (null == currencyType ||
(CurrencyEnum.DIAMOND.getValue() != currencyType && CurrencyEnum.GOLD.getValue() != currencyType)) {
if (null == currencyType) {
throw new ServiceException(BusiStatus.PARAMERROR);
}
CurrencyEnum currencyEnum = CurrencyEnum.get(currencyType);
if (null == currencyEnum || (!CurrencyEnum.DIAMOND.equals(currencyEnum) && !CurrencyEnum.GOLD.equals(currencyEnum) && !CurrencyEnum.GUILD_CRYSTAL.equals(currencyEnum))){
throw new ServiceException(BusiStatus.PARAMERROR);
}
Long uid = getUid();
if (pageSize == null || pageSize < 1 || pageSize > 100) {
pageSize = 100;