|
@@ -4,6 +4,8 @@ import cn.hutool.core.bean.BeanUtil;
|
|
|
import cn.hutool.core.date.DateUtil;
|
|
import cn.hutool.core.date.DateUtil;
|
|
|
import cn.hutool.json.JSONUtil;
|
|
import cn.hutool.json.JSONUtil;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
import lombok.RequiredArgsConstructor;
|
|
|
|
|
+import org.apache.dubbo.config.annotation.DubboReference;
|
|
|
|
|
+import org.apache.dubbo.config.annotation.DubboService;
|
|
|
import org.dromara.backstage.basics.domain.vo.PtMealTypeVo;
|
|
import org.dromara.backstage.basics.domain.vo.PtMealTypeVo;
|
|
|
import org.dromara.backstage.basics.service.IPtMealtypeService;
|
|
import org.dromara.backstage.basics.service.IPtMealtypeService;
|
|
|
import org.dromara.backstage.cardCenter.service.IPtCardService;
|
|
import org.dromara.backstage.cardCenter.service.IPtCardService;
|
|
@@ -32,6 +34,7 @@ import org.dromara.common.core.exception.consume.BagException;
|
|
|
import org.dromara.common.core.exception.consume.ConsumeException;
|
|
import org.dromara.common.core.exception.consume.ConsumeException;
|
|
|
import org.dromara.common.core.utils.RecordIdUtils;
|
|
import org.dromara.common.core.utils.RecordIdUtils;
|
|
|
import org.dromara.common.redis.utils.RedisUtils;
|
|
import org.dromara.common.redis.utils.RedisUtils;
|
|
|
|
|
+import org.dromara.consume.api.RemoteConsumeService;
|
|
|
import org.jetbrains.annotations.NotNull;
|
|
import org.jetbrains.annotations.NotNull;
|
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.Logger;
|
|
|
import org.slf4j.LoggerFactory;
|
|
import org.slf4j.LoggerFactory;
|
|
@@ -67,6 +70,9 @@ public class ErrFillBusiness {
|
|
|
private final IXfUserTotalService userTotalService;
|
|
private final IXfUserTotalService userTotalService;
|
|
|
private final IXfTermTotalService termTotalService;
|
|
private final IXfTermTotalService termTotalService;
|
|
|
|
|
|
|
|
|
|
+ @DubboReference
|
|
|
|
|
+ private final RemoteConsumeService remoteConsumeService;
|
|
|
|
|
+
|
|
|
@Transactional(rollbackFor = ConsumeException.class)
|
|
@Transactional(rollbackFor = ConsumeException.class)
|
|
|
public PtBagVo createErrFillRecord(ConsumptionBo bo) {
|
|
public PtBagVo createErrFillRecord(ConsumptionBo bo) {
|
|
|
java.lang.String message;
|
|
java.lang.String message;
|
|
@@ -205,7 +211,7 @@ public class ErrFillBusiness {
|
|
|
* @param consumeId 消费明细Id
|
|
* @param consumeId 消费明细Id
|
|
|
* @param balance 卡余
|
|
* @param balance 卡余
|
|
|
*/
|
|
*/
|
|
|
- private void updateConsumeRecordBalance(java.lang.String consumeId, BigDecimal balance){
|
|
|
|
|
|
|
+ private void updateConsumeRecordBalance(String consumeId, BigDecimal balance){
|
|
|
XfConsumeDetailBo consumeDetailBo = new XfConsumeDetailBo();
|
|
XfConsumeDetailBo consumeDetailBo = new XfConsumeDetailBo();
|
|
|
consumeDetailBo.setConsumeId(consumeId);
|
|
consumeDetailBo.setConsumeId(consumeId);
|
|
|
consumeDetailBo.setCardValue(balance);
|
|
consumeDetailBo.setCardValue(balance);
|
|
@@ -299,18 +305,21 @@ public class ErrFillBusiness {
|
|
|
* @return 生成的记录Id
|
|
* @return 生成的记录Id
|
|
|
*/
|
|
*/
|
|
|
@NotNull
|
|
@NotNull
|
|
|
- private java.lang.String getRecordKeyId(ConsumptionBo bo, PtUserAccountVo accountVo, PtBagVo bagVo) {
|
|
|
|
|
|
|
+ private String getRecordKeyId(ConsumptionBo bo, PtUserAccountVo accountVo, PtBagVo bagVo) {
|
|
|
return RecordIdUtils.getRecordId(new Date(), Short.parseShort(bo.getTermNo().toString()), 0, accountVo.getUserNo().intValue(), Integer.parseInt(bagVo.getBagCode()));
|
|
return RecordIdUtils.getRecordId(new Date(), Short.parseShort(bo.getTermNo().toString()), 0, accountVo.getUserNo().intValue(), Integer.parseInt(bagVo.getBagCode()));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
private void updateCacheBalanceByUserId(Long id, BigDecimal dealMoney) {
|
|
private void updateCacheBalanceByUserId(Long id, BigDecimal dealMoney) {
|
|
|
- String userId = String.valueOf(id);
|
|
|
|
|
- BigDecimal balance = BigDecimal.ZERO;
|
|
|
|
|
- if (RedisUtils.getCacheMapValue(CacheNames.USER_TOTAL_BALANCE, userId) != null) {
|
|
|
|
|
- balance = RedisUtils.getCacheMapValue(CacheNames.USER_TOTAL_BALANCE, userId);
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ BigDecimal balance = remoteConsumeService.getUserTotalBalance(id);
|
|
|
balance = balance.add(dealMoney);
|
|
balance = balance.add(dealMoney);
|
|
|
- RedisUtils.delCacheMapValue(CacheNames.USER_TOTAL_BALANCE, userId);
|
|
|
|
|
- RedisUtils.setCacheMapValue(CacheNames.USER_TOTAL_BALANCE, userId, balance);
|
|
|
|
|
|
|
+ remoteConsumeService.cacheUserTotalBalance(id, balance);
|
|
|
|
|
+ // String userId = String.valueOf(id);
|
|
|
|
|
+ // BigDecimal balance = BigDecimal.ZERO;
|
|
|
|
|
+ // if (RedisUtils.getCacheMapValue(CacheNames.USER_TOTAL_BALANCE, userId) != null) {
|
|
|
|
|
+ // balance = RedisUtils.getCacheMapValue(CacheNames.USER_TOTAL_BALANCE, userId);
|
|
|
|
|
+ // }
|
|
|
|
|
+ // balance = balance.add(dealMoney);
|
|
|
|
|
+ // RedisUtils.delCacheMapValue(CacheNames.USER_TOTAL_BALANCE, userId);
|
|
|
|
|
+ // RedisUtils.setCacheMapValue(CacheNames.USER_TOTAL_BALANCE, userId, balance);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|