后台-赠送钻石水晶-提取公共方法并实现对应的机器人推送
This commit is contained in:
@@ -1,7 +1,9 @@
|
||||
package com.accompany.business.constant;
|
||||
|
||||
|
||||
import com.accompany.common.constant.Constant;
|
||||
import com.accompany.core.enumeration.CurrencyEnum;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Optional;
|
||||
@@ -9,65 +11,34 @@ import java.util.Optional;
|
||||
/**
|
||||
* 后台管理赠送类型
|
||||
*/
|
||||
@AllArgsConstructor
|
||||
@Getter
|
||||
public enum OfficalSendTypeEnum {
|
||||
|
||||
OFFICAL_GOLD(Constant.OfficialType.interSendGold, "官方赠送钻石", (byte)0),
|
||||
OFFICAL_DIAMOND(Constant.OfficialType.interSendDiamond, "官方赠送金币", (byte)2),
|
||||
OFFICAL_GOLD(Constant.OfficialType.interSendGold, "官方赠送钻石", CurrencyEnum.GOLD),
|
||||
OFFICAL_DIAMOND(Constant.OfficialType.interSendDiamond, "官方赠送金币", CurrencyEnum.DIAMOND),
|
||||
|
||||
ACTIVITY_GOLD(Constant.OfficialType.actReward, "活动奖励钻石", (byte)0),
|
||||
COMPANY_ACCOUNT_DIAMOND(Constant.OfficialType.chargeByCompanyAccount, "公款充值金币", CurrencyEnum.DIAMOND),
|
||||
|
||||
COMPANY_ACCOUNT_DIAMOND(Constant.OfficialType.chargeByCompanyAccount, "公款充值金币", (byte)2),
|
||||
OFFICAL_REDUCE_DIAMONDS(Constant.OfficialType.officalDiamondReduce,"官方金币消除", CurrencyEnum.DIAMOND),
|
||||
CLEAR_USER_GOLD(Constant.OfficialType.clearUserGold, "官方清除钻石", CurrencyEnum.GOLD),
|
||||
|
||||
CLEAR_USER_GOLD(Constant.OfficialType.clearUserGold, "后台清除钻石", (byte)0),
|
||||
OFFICAL_MINUS_GUILD_USD(Constant.OfficialType.miunsGuildUsd, "消除公会薪资", CurrencyEnum.GUILD_USD),
|
||||
OFFICAL_PLUS_GUILD_USD(Constant.OfficialType.plusGuildUsd,"赠送公会薪资", CurrencyEnum.GUILD_USD),
|
||||
|
||||
OFFICAL_REDUCE_DIAMONDS(Constant.OfficialType.officalDiamondReduce,"官方金币消除", (byte)2),
|
||||
|
||||
OFFICAL_MINUS_GUILD_USD(Constant.OfficialType.miunsGuildUsd, "消除薪资", Constant.WalletCurrencyType.guildUsd),
|
||||
OFFICAL_PLUS_GUILD_USD(Constant.OfficialType.plusGuildUsd,"赠送薪资", Constant.WalletCurrencyType.guildUsd),
|
||||
|
||||
OFFICAL_MINUS_GUILD_CRYSTAL(Constant.OfficialType.miunsGuildCrystal, "消除公会紫晶", Constant.WalletCurrencyType.guildCrystal),
|
||||
OFFICAL_PLUS_GUILD_CRYSTAL(Constant.OfficialType.plusGuildCrystal,"赠送公会紫晶", Constant.WalletCurrencyType.guildCrystal),
|
||||
OFFICAL_MINUS_GUILD_CRYSTAL(Constant.OfficialType.miunsGuildCrystal, "消除公会紫晶", CurrencyEnum.GUILD_CRYSTAL),
|
||||
OFFICAL_PLUS_GUILD_CRYSTAL(Constant.OfficialType.plusGuildCrystal,"赠送公会紫晶", CurrencyEnum.GUILD_CRYSTAL),
|
||||
;
|
||||
|
||||
private byte value;
|
||||
|
||||
private String desc;
|
||||
|
||||
private Byte currencyType;
|
||||
|
||||
public byte getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(byte value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
public String getDesc() {
|
||||
return desc;
|
||||
}
|
||||
|
||||
public void setDesc(String desc) {
|
||||
this.desc = desc;
|
||||
}
|
||||
|
||||
public Byte getCurrencyType() {
|
||||
return currencyType;
|
||||
}
|
||||
|
||||
public void setCurrencyType(Byte currencyType) {
|
||||
this.currencyType = currencyType;
|
||||
}
|
||||
|
||||
OfficalSendTypeEnum(byte value, String desc, Byte currencyType) {
|
||||
this.value = value;
|
||||
this.desc = desc;
|
||||
this.currencyType = currencyType;
|
||||
}
|
||||
private CurrencyEnum currencyType;
|
||||
|
||||
public static OfficalSendTypeEnum get(byte value) {
|
||||
Optional<OfficalSendTypeEnum> result = Arrays.stream(OfficalSendTypeEnum.values()).filter(officalSendTypeEnum ->
|
||||
officalSendTypeEnum.value == value).findAny();
|
||||
return result.isPresent() ? result.get() : null;
|
||||
return result.orElse(null);
|
||||
}
|
||||
}
|
||||
|
@@ -33,6 +33,7 @@ import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.math.RoundingMode;
|
||||
import java.time.Duration;
|
||||
import java.time.ZoneId;
|
||||
import java.time.ZonedDateTime;
|
||||
@@ -75,7 +76,7 @@ public class BillRecordService extends ServiceImpl<BillRecordMapper, BillRecord>
|
||||
*/
|
||||
public void insertGiftSendBillRecord(Long uid, Long targetUid, Long roomUid, String objId, BillObjTypeEnum eventEnum,
|
||||
Double amount, Integer giftId, Integer giftNum, Long giftTotalGoldNum, Date createTime, UserPurse after) {
|
||||
Double rmbAmount = DoubleUtil.mul(amount, eventEnum.getCurrency().getExchangeRate());
|
||||
Double rmbAmount = BigDecimal.valueOf(amount).divide(eventEnum.getCurrency().getExchangeRate(), 2 , RoundingMode.HALF_UP).doubleValue();
|
||||
insertBillRecordV2(uid, targetUid, roomUid, objId, eventEnum, amount, rmbAmount, giftId, giftNum, giftTotalGoldNum, createTime, after);
|
||||
}
|
||||
|
||||
@@ -92,7 +93,7 @@ public class BillRecordService extends ServiceImpl<BillRecordMapper, BillRecord>
|
||||
}
|
||||
|
||||
public void insertGeneralBillRecord(Long uid, Long targetUid, Long roomUid, String objId, BillObjTypeEnum eventEnum, Double amount, UserPurse afterPurse) {
|
||||
Double rmbAmount = amount * eventEnum.getCurrency().getExchangeRate();
|
||||
Double rmbAmount = BigDecimal.valueOf(amount).divide(eventEnum.getCurrency().getExchangeRate(), 2 , RoundingMode.HALF_UP).doubleValue();
|
||||
insertBillRecord(uid, targetUid, roomUid, objId, eventEnum, amount, rmbAmount, afterPurse);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user