Quellcode durchsuchen

公司余额缓存记录到redis修改

xgb vor 2 Tagen
Ursprung
Commit
e851f19073

+ 6 - 2
fs-service/src/main/java/com/fs/course/service/impl/BalanceRollbackErrorServiceImpl.java

@@ -93,8 +93,12 @@ public class BalanceRollbackErrorServiceImpl extends ServiceImpl<BalanceRollback
         List<Company> companyList = companyMapper.selectCompanyAllList();
         for (Company company : companyList) {
             String companyMoneyKey = FsConstants.COMPANY_MONEY_KEY + company.getCompanyId();
-            redisCache.setCacheObject(companyMoneyKey, company.getMoney().toString());
-
+            // 判断缓存为空初始化
+            String moneyStr = redisCache.getCacheObject(companyMoneyKey);
+            if (StringUtils.isEmpty(moneyStr)) {
+                // 初始化余额
+                redisCache.setCacheObject(companyMoneyKey, company.getMoney().toString());
+            }
         }
     }
 

+ 2 - 2
fs-service/src/main/java/com/fs/course/service/impl/FsUserCourseVideoServiceImpl.java

@@ -1517,7 +1517,7 @@ public class FsUserCourseVideoServiceImpl implements IFsUserCourseVideoService
 
                         // 预扣减金额
                         BigDecimal newMoney = originalMoney.subtract(amount);
-                        redisCache.setCacheObject(companyMoneyKey, newMoney.toString(), 2, TimeUnit.HOURS);
+                        redisCache.setCacheObject(companyMoneyKey, newMoney.toString());
 
                     } finally {
                         lock1.unlock();
@@ -1641,7 +1641,7 @@ public class FsUserCourseVideoServiceImpl implements IFsUserCourseVideoService
 
                     // 回滚金额(加回之前扣减的金额)
                     BigDecimal rollbackMoney = new BigDecimal(currentMoneyStr).add(balanceRollbackError.getMoney());
-                    redisCache.setCacheObject(companyMoneyKey, rollbackMoney.toString(), 2, TimeUnit.HOURS);
+                    redisCache.setCacheObject(companyMoneyKey, rollbackMoney.toString());
 
                     logger.info("余额回滚成功: companyId={}, amount={}", balanceRollbackError.getCompanyId(), balanceRollbackError.getMoney());
                 } finally {