## 注水业绩搜单个会员报错(32);

This commit is contained in:
cabbage 2025-04-18 17:23:56 +08:00
parent e4547c6644
commit 43d841739f
2 changed files with 56 additions and 51 deletions

View File

@ -7,6 +7,7 @@ import com.hzs.system.config.service.IBdServiceChargeService;
import org.apache.dubbo.config.annotation.DubboService; import org.apache.dubbo.config.annotation.DubboService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import java.math.BigDecimal;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@ -21,7 +22,7 @@ import java.util.List;
public class ServiceChargeServiceProvider implements IServiceChargeServiceApi { public class ServiceChargeServiceProvider implements IServiceChargeServiceApi {
@Autowired @Autowired
private IBdServiceChargeService serviceChargeService; private IBdServiceChargeService iBdServiceChargeService;
/** /**
* @description: 根据业务类型查询扣款 * @description: 根据业务类型查询扣款
@ -32,14 +33,22 @@ public class ServiceChargeServiceProvider implements IServiceChargeServiceApi {
**/ **/
@Override @Override
public R<ServiceChargeDTO> getServiceChargeByType(ServiceChargeDTO serviceChargeDTO) { public R<ServiceChargeDTO> getServiceChargeByType(ServiceChargeDTO serviceChargeDTO) {
return R.ok(serviceChargeService.getServiceChargeByType(serviceChargeDTO)); ServiceChargeDTO dto = iBdServiceChargeService.getServiceChargeByType(serviceChargeDTO);
if (null == dto) {
// 如果没有配置业务办理手续费给一个从现金币扣款为0的
dto = ServiceChargeDTO.builder()
.cost(BigDecimal.ZERO)
.pkAccount(1)
.build();
}
return R.ok(dto);
} }
@Override @Override
public R<List<ServiceChargeDTO>> getServiceChargeByType(List<ServiceChargeDTO> serviceChargeDTOList) { public R<List<ServiceChargeDTO>> getServiceChargeByType(List<ServiceChargeDTO> serviceChargeDTOList) {
List<ServiceChargeDTO> resultList = new ArrayList<>(); List<ServiceChargeDTO> resultList = new ArrayList<>();
for (ServiceChargeDTO serviceChargeDTO : serviceChargeDTOList) { for (ServiceChargeDTO serviceChargeDTO : serviceChargeDTOList) {
ServiceChargeDTO dto = serviceChargeService.getServiceChargeByType(serviceChargeDTO); ServiceChargeDTO dto = iBdServiceChargeService.getServiceChargeByType(serviceChargeDTO);
if (null != dto) { if (null != dto) {
resultList.add(dto); resultList.add(dto);
} }

View File

@ -1,6 +1,6 @@
package com.hzs.system.config.service.impl; package com.hzs.system.config.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.hzs.common.core.constant.*; import com.hzs.common.core.constant.*;
import com.hzs.common.core.enums.EAccount; import com.hzs.common.core.enums.EAccount;
@ -30,12 +30,8 @@ import java.util.concurrent.TimeUnit;
@Service @Service
public class BdAccountServiceImpl extends ServiceImpl<BdAccountMapper, BdAccount> implements IBdAccountService { public class BdAccountServiceImpl extends ServiceImpl<BdAccountMapper, BdAccount> implements IBdAccountService {
private RedisService redisService;
@Autowired @Autowired
public void setRedisService(RedisService redisService) { private RedisService redisService;
this.redisService = redisService;
}
/** /**
* 根据条件查找对应的币种配置 * 根据条件查找对应的币种配置
@ -72,30 +68,30 @@ public class BdAccountServiceImpl extends ServiceImpl<BdAccountMapper, BdAccount
**/ **/
@Override @Override
public List<BdAccount> queryAccountByType(Integer accountProperty, Integer pkCountry) { public List<BdAccount> queryAccountByType(Integer accountProperty, Integer pkCountry) {
QueryWrapper<BdAccount> queryWrapper = new QueryWrapper<>(); LambdaQueryWrapper<BdAccount> queryWrapper = new LambdaQueryWrapper<>();
if (StringUtils.isNotNull(accountProperty) && accountProperty == EAccountProperty.IS_RECHARGE.getValue()) { if (StringUtils.isNotNull(accountProperty) && accountProperty == EAccountProperty.IS_RECHARGE.getValue()) {
queryWrapper.eq("IS_RECHARGE", EYesNo.YES.getIntValue()); queryWrapper.eq(BdAccount::getIsRecharge, EYesNo.YES.getIntValue());
} }
if (StringUtils.isNotNull(accountProperty) && accountProperty == EAccountProperty.IS_TRANSFER.getValue()) { if (StringUtils.isNotNull(accountProperty) && accountProperty == EAccountProperty.IS_TRANSFER.getValue()) {
queryWrapper.eq("IS_TRANSFER", EYesNo.YES.getIntValue()); queryWrapper.eq(BdAccount::getIsTransfer, EYesNo.YES.getIntValue());
} }
if (StringUtils.isNotNull(accountProperty) && accountProperty == EAccountProperty.IS_WITHDRAWAL.getValue()) { if (StringUtils.isNotNull(accountProperty) && accountProperty == EAccountProperty.IS_WITHDRAWAL.getValue()) {
queryWrapper.eq("IS_WITHDRAWAL", EYesNo.YES.getIntValue()); queryWrapper.eq(BdAccount::getIsWithdrawal, EYesNo.YES.getIntValue());
} }
if (StringUtils.isNotNull(accountProperty) && accountProperty == EAccountProperty.IS_ON_LINE_RECHARGE.getValue()) { if (StringUtils.isNotNull(accountProperty) && accountProperty == EAccountProperty.IS_ON_LINE_RECHARGE.getValue()) {
queryWrapper.eq("ON_LINE_RECHARGE", EYesNo.YES.getIntValue()); queryWrapper.eq(BdAccount::getOnLineRecharge, EYesNo.YES.getIntValue());
} }
queryWrapper.eq("PK_COUNTRY", pkCountry); queryWrapper.eq(BdAccount::getPkCountry, pkCountry);
queryWrapper.le("EFFECTIVE_DATE", new Date()); queryWrapper.le(BdAccount::getEffectiveDate, new Date());
queryWrapper.orderByDesc("EFFECTIVE_DATE"); queryWrapper.orderByDesc(BdAccount::getEffectiveDate);
return baseMapper.selectList(queryWrapper); return baseMapper.selectList(queryWrapper);
} }
@Override @Override
public List<BdAccount> queryAccountByType(Integer accountType, Collection<Integer> pkCountryList) { public List<BdAccount> queryAccountByType(Integer accountType, Collection<Integer> pkCountryList) {
QueryWrapper<BdAccount> queryWrapper = new QueryWrapper<>(); LambdaQueryWrapper<BdAccount> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq("field_value", accountType); queryWrapper.eq(BdAccount::getFieldValue, accountType);
queryWrapper.in(SystemFieldConstants.PK_COUNTRY, pkCountryList); queryWrapper.in(BdAccount::getPkCountry, pkCountryList);
return baseMapper.selectList(queryWrapper); return baseMapper.selectList(queryWrapper);
} }
@ -108,11 +104,11 @@ public class BdAccountServiceImpl extends ServiceImpl<BdAccountMapper, BdAccount
**/ **/
@Override @Override
public List<BdAccount> memberAccountByType(Integer pkCountry) { public List<BdAccount> memberAccountByType(Integer pkCountry) {
QueryWrapper<BdAccount> queryWrapper = new QueryWrapper<>(); LambdaQueryWrapper<BdAccount> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq("SHOW_STATUS", EShowStatus.SHOW.getValue()); queryWrapper.eq(BdAccount::getShowStatus, EShowStatus.SHOW.getValue());
queryWrapper.eq("PK_COUNTRY", pkCountry); queryWrapper.eq(BdAccount::getPkCountry, pkCountry);
queryWrapper.le("EFFECTIVE_DATE", new Date()); queryWrapper.le(BdAccount::getEffectiveDate, new Date());
queryWrapper.orderByDesc("EFFECTIVE_DATE"); queryWrapper.orderByDesc(BdAccount::getEffectiveDate);
return baseMapper.selectList(queryWrapper); return baseMapper.selectList(queryWrapper);
} }
@ -127,9 +123,9 @@ public class BdAccountServiceImpl extends ServiceImpl<BdAccountMapper, BdAccount
public BdAccount getBdAccount(Integer pkId) { public BdAccount getBdAccount(Integer pkId) {
BdAccount account = redisService.getCacheObject(CacheConstants.BD_ACCOUNT + pkId); BdAccount account = redisService.getCacheObject(CacheConstants.BD_ACCOUNT + pkId);
if (account == null) { if (account == null) {
QueryWrapper<BdAccount> queryWrapper = new QueryWrapper<>(); LambdaQueryWrapper<BdAccount> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq("PK_ID", pkId); queryWrapper.eq(BdAccount::getPkId, pkId);
queryWrapper.le("EFFECTIVE_DATE", DateUtils.currentDateTime()); queryWrapper.le(BdAccount::getEffectiveDate, DateUtils.currentDateTime());
account = baseMapper.selectOne(queryWrapper); account = baseMapper.selectOne(queryWrapper);
if (account != null) { if (account != null) {
redisService.setCacheObject(CacheConstants.BD_ACCOUNT + pkId, account); redisService.setCacheObject(CacheConstants.BD_ACCOUNT + pkId, account);
@ -147,10 +143,10 @@ public class BdAccountServiceImpl extends ServiceImpl<BdAccountMapper, BdAccount
**/ **/
@Override @Override
public BdAccount getBdAccountByFieldValue(Integer pkCountry, Integer fieldValue) { public BdAccount getBdAccountByFieldValue(Integer pkCountry, Integer fieldValue) {
QueryWrapper<BdAccount> queryWrapper = new QueryWrapper<>(); LambdaQueryWrapper<BdAccount> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq("FIELD_VALUE", fieldValue); queryWrapper.eq(BdAccount::getFieldValue, fieldValue);
queryWrapper.eq(SystemFieldConstants.PK_COUNTRY, pkCountry); queryWrapper.eq(BdAccount::getPkCountry, pkCountry);
queryWrapper.le("EFFECTIVE_DATE", DateUtils.currentDateTime()); queryWrapper.le(BdAccount::getEffectiveDate, DateUtils.currentDateTime());
return baseMapper.selectOne(queryWrapper); return baseMapper.selectOne(queryWrapper);
} }
@ -189,9 +185,9 @@ public class BdAccountServiceImpl extends ServiceImpl<BdAccountMapper, BdAccount
@Override @Override
public BdAccount queryAccountByCondition(Integer pkCountry) { public BdAccount queryAccountByCondition(Integer pkCountry) {
QueryWrapper<BdAccount> queryWrapper = new QueryWrapper<>(); LambdaQueryWrapper<BdAccount> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(SystemFieldConstants.PK_COUNTRY, pkCountry); queryWrapper.eq(BdAccount::getPkCountry, pkCountry);
queryWrapper.eq("ON_LINE_RECHARGE", EYesNo.YES.getIntValue()); queryWrapper.eq(BdAccount::getOnLineRecharge, EYesNo.YES.getIntValue());
List<BdAccount> bdAccountList = baseMapper.selectList(queryWrapper); List<BdAccount> bdAccountList = baseMapper.selectList(queryWrapper);
if (bdAccountList != null && bdAccountList.size() > 0) { if (bdAccountList != null && bdAccountList.size() > 0) {
return bdAccountList.get(0); return bdAccountList.get(0);
@ -210,8 +206,8 @@ public class BdAccountServiceImpl extends ServiceImpl<BdAccountMapper, BdAccount
public Integer getPkAccount(Integer pkId) { public Integer getPkAccount(Integer pkId) {
Integer pkAccount = redisService.getCacheObject(CacheConstants.BD_ACCOUNT_CHANGE + pkId); Integer pkAccount = redisService.getCacheObject(CacheConstants.BD_ACCOUNT_CHANGE + pkId);
if (StringUtils.isNull(pkAccount)) { if (StringUtils.isNull(pkAccount)) {
QueryWrapper<BdAccount> queryWrapper = new QueryWrapper<>(); LambdaQueryWrapper<BdAccount> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq("PK_ID", pkId); queryWrapper.eq(BdAccount::getPkId, pkId);
BdAccount account = baseMapper.selectOne(queryWrapper); BdAccount account = baseMapper.selectOne(queryWrapper);
if (StringUtils.isNotNull(account) && StringUtils.isNotNull(account.getPkBdAccount())) { if (StringUtils.isNotNull(account) && StringUtils.isNotNull(account.getPkBdAccount())) {
pkAccount = account.getPkBdAccount(); pkAccount = account.getPkBdAccount();
@ -225,9 +221,9 @@ public class BdAccountServiceImpl extends ServiceImpl<BdAccountMapper, BdAccount
@Override @Override
public BdAccount queryPostageAccount(Integer pkCountry) { public BdAccount queryPostageAccount(Integer pkCountry) {
QueryWrapper<BdAccount> queryWrapper = new QueryWrapper<>(); LambdaQueryWrapper<BdAccount> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(SystemFieldConstants.PK_COUNTRY, pkCountry); queryWrapper.eq(BdAccount::getPkCountry, pkCountry);
queryWrapper.eq("IS_POSTAGE", EYesNo.YES.getIntValue()); queryWrapper.eq(BdAccount::getIsPostage, EYesNo.YES.getIntValue());
List<BdAccount> bdAccountList = baseMapper.selectList(queryWrapper); List<BdAccount> bdAccountList = baseMapper.selectList(queryWrapper);
if (bdAccountList != null && bdAccountList.size() > 0) { if (bdAccountList != null && bdAccountList.size() > 0) {
return bdAccountList.get(0); return bdAccountList.get(0);
@ -237,23 +233,23 @@ public class BdAccountServiceImpl extends ServiceImpl<BdAccountMapper, BdAccount
@Override @Override
public List<BdAccount> queryBdAccount(Integer pkCountry) { public List<BdAccount> queryBdAccount(Integer pkCountry) {
QueryWrapper<BdAccount> queryWrapper = new QueryWrapper<>(); LambdaQueryWrapper<BdAccount> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(SystemFieldConstants.ENABLE_STATE, EYesNo.YES.getIntValue()); queryWrapper.eq(BdAccount::getEnableState, EYesNo.YES.getIntValue());
queryWrapper.eq(SystemFieldConstants.PK_COUNTRY, pkCountry); queryWrapper.eq(BdAccount::getPkCountry, pkCountry);
queryWrapper.le(SystemFieldConstants.EFFECTIVE_DATE, DateUtils.currentDateTime()); queryWrapper.le(BdAccount::getEffectiveDate, DateUtils.currentDateTime());
return baseMapper.selectList(queryWrapper); return baseMapper.selectList(queryWrapper);
} }
@Override @Override
public List<BdAccount> queryCommissionAccount(Integer pkCountry) { public List<BdAccount> queryCommissionAccount(Integer pkCountry) {
if (null != pkCountry && CountryConstants.CHINA_COUNTRY == pkCountry) { if (CountryConstants.CHINA_COUNTRY.equals(pkCountry)) {
// 2023.11.08 运营需求中国手续费为可选消费账户现金账户奖金账户 // 2023.11.08 运营需求中国手续费为可选消费账户现金账户奖金账户
QueryWrapper<BdAccount> queryWrapper = new QueryWrapper<>(); LambdaQueryWrapper<BdAccount> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(SystemFieldConstants.PK_COUNTRY, pkCountry); queryWrapper.eq(BdAccount::getPkCountry, pkCountry);
queryWrapper.eq(SystemFieldConstants.ENABLE_STATE, EYesNo.YES.getIntValue()); queryWrapper.eq(BdAccount::getEnableState, EYesNo.YES.getIntValue());
queryWrapper.le(SystemFieldConstants.EFFECTIVE_DATE, DateUtils.currentDateTime()); queryWrapper.le(BdAccount::getEffectiveDate, DateUtils.currentDateTime());
queryWrapper.in("FIELD_VALUE", Arrays.asList(EAccount.CONSUME.getValue(), EAccount.CASH.getValue(), EAccount.BONUS.getValue())); queryWrapper.in(BdAccount::getFieldValue, Arrays.asList(EAccount.CONSUME.getValue(), EAccount.CASH.getValue(), EAccount.BONUS.getValue()));
queryWrapper.orderByAsc("field_value"); queryWrapper.orderByAsc(BdAccount::getFieldValue);
return baseMapper.selectList(queryWrapper); return baseMapper.selectList(queryWrapper);
} }
return new ArrayList<>(); return new ArrayList<>();