tianyunperfect пре 3 година
родитељ
комит
d3fddc4eba

+ 37 - 31
book-server/src/main/java/com/book/server/service/impl/BookServiceImpl.java

@@ -777,36 +777,42 @@ public class BookServiceImpl implements BookService {
         return bookRes.subList(0, 4);
     }
 
-    ///**
-    // * 签到或充值
-    // * @param userId
-    // * @param type 充值类型:1=看点充值,2=VIP充值,3=系统操作看点,4=系统操作vip,5=签到
-    // * @param kandian
-    // * @param freeKandian
-    // * @return
-    // */
-    //public int insertFreeKandian(Long userId, String type, int kandian, int freeKandian) {
-    //    // 签到看点
-    //    rechargeMapper.insertSelective(
-    //            Recharge.builder()
-    //                    .userId(userId)
-    //                    .type(type)
-    //                    .kandian(kandian)
-    //                    .freeKandian(freeKandian)
-    //                    .remainFreeKandian(freeKandian)
-    //                    .freeEndtime(DateUtils.get3DayAfter())
-    //                    .
-    //                    .build()
-    //    );
-    //    int i = rechargeMapper.updateByExampleSelective(
-    //            Recharge.builder().remainFreeKandian(recharge.getRemainFreeKandian() - reduceNum).build(),
-    //            RechargeExample.newAndCreateCriteria()
-    //                    .andIdEqualTo(userId)
-    //                    .andRemainFreeKandianEqualTo(recharge.getRemainFreeKandian()).example(),
-    //            Recharge.Column.remainFreeKandian
-    //    );
-    //    // 更新到用户信息
-    //    return 1;
-    //}
+    /**
+     * 签到或充值
+     *
+     * @param userId
+     * @param type        充值类型:1=看点充值,2=VIP充值,3=系统操作看点,4=系统操作vip,5=签到
+     * @param kandian
+     * @param freeKandian
+     * @return
+     */
+    public int insertKandian(Long userId, String type, int kandian, int freeKandian) {
+        // 签到看点
+        rechargeMapper.insertSelective(
+                Recharge.builder()
+                        .userId(userId)
+                        .type(type)
+                        .kandian(kandian)
+                        .freeKandian(freeKandian)
+                        .remainFreeKandian(freeKandian)
+                        .freeEndtime(DateUtils.get3DayAfter())
+                        .createtime(DateUtils.getNow())
+                        .updatetime(DateUtils.getNow())
+                        .build()
+        );
+        int freeCount = getFreeCountFromCharges(getFreeCharges(userId));
+
+        // 更新到用户
+        User user = cacheService.getUserByIdCache(userId);
+        User user1 = new User();
+        user1.setKandian(user.getKandian() + kandian);
+        user1.setFreeKandian(freeCount);
+        int i = userMapper.updateByPrimaryKeySelective(user1);
+        if (i > 0) {
+            //更新缓存
+            cacheService.updateUserByIdCache(userId);
+        }
+        return i;
+    }
 
 }