From 99367ea1c11a68b420936e7f7db5fa7367da4f44 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期三, 22 一月 2025 11:44:54 +0800
Subject: [PATCH] 全部代码、数据库提交

---
 xinquan-auth/src/main/java/com/xinquan/auth/util/HuaWeiSMSUtil.java                                                               |    4 
 xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/PageController.java                                    |    6 +
 xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/SysDeptController.java                                 |    8 +
 xinquan-auth/src/main/java/com/xinquan/auth/service/SysLoginService.java                                                          |    8 
 xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/CommissionRuleController.java                          |    3 
 xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/CommonQuestionController.java                          |    8 +
 xinquan-gateway/src/main/java/com/xinquan/gateway/filter/FdmallCorsConfiguration.java                                             |   66 ++++++------
 xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/VipSettingController.java                              |    5 +
 xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/HomeController.java                                    |    8 +
 xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/UserLevelSettingController.java                        |    3 
 xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/service/impl/AppUserServiceImpl.java                                  |    3 
 xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeRedemptionRecordController.java          |    3 
 xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/BannerController.java                                  |    7 +
 xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/SysUserController.java                                 |    9 +
 xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/controller/client/ClientMeditationCategoryController.java |    4 
 xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserController.java                        |   11 +
 xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeController.java                          |    7 +
 xinquan-common/xinquan-common-security/src/main/java/com/xinquan/common/security/service/TokenService.java                        |    2 
 xinquan-modules/xinquan-order/src/main/java/com/xinquan/order/controller/management/MgtOrderController.java                       |    5 +
 xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/VersionController.java                                 |    8 +
 xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/controller/client/ClientHomeController.java               |   78 ++++++++++++---
 xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserWithdrawController.java                |    2 
 xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/TreeLevelSettingController.java                        |    4 
 xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/HotWordsController.java                                |    8 +
 xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/domain/HomeBackgroundMusicUser.java                       |    5 
 xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/SysRoleController.java                                 |    3 
 xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/ContentSettingController.java                          |    3 
 27 files changed, 216 insertions(+), 65 deletions(-)

diff --git a/xinquan-auth/src/main/java/com/xinquan/auth/service/SysLoginService.java b/xinquan-auth/src/main/java/com/xinquan/auth/service/SysLoginService.java
index b0899c0..c3a9a04 100644
--- a/xinquan-auth/src/main/java/com/xinquan/auth/service/SysLoginService.java
+++ b/xinquan-auth/src/main/java/com/xinquan/auth/service/SysLoginService.java
@@ -254,7 +254,7 @@
             String code = redisService.getCacheObject(key);
             String code1 = redisService.getCacheObject(key1);
             // 万能验证码
-            if (captcha.equals("123456") || (StringUtils.isNotBlank(code) && code.equals(
+            if (captcha.equals("220125") || (StringUtils.isNotBlank(code) && code.equals(
                     captcha))||(StringUtils.isNotBlank(code1) && code1.equals(
                     captcha))) {
                 redisService.deleteObject(key);
@@ -308,8 +308,8 @@
                     TimeUnit.MINUTES);
             log.info("发送验证码成功,手机号:{} 验证码:{}", cellPhone, code);
             // TODO 修改sender参数及templateId
-             HuaWeiSMSUtil.sendSms("[\"" + code + "\"]", cellPhone, "8824110423893",
-                     "767ad27dce184a32a4b4863517fbd301");
+             HuaWeiSMSUtil.sendSms("[\"" + code + "\"]", cellPhone, "8825010822864",
+                     "c1df549e89724e3db05b018524728d41");
 
 //            hwSendSms.sendSms(code, cellPhone);
         } catch (Exception e) {
@@ -514,7 +514,7 @@
     }
 
     public AppLoginUser verifyCellPhone(AppVerifyCellPhoneBody body) {
-        if (!body.getCaptcha().equals("123456")){
+        if (!body.getCaptcha().equals("220125")){
             Boolean res = redisService.hasKey(
                     CacheConstants.APP_VERIFY_CAPTCHA_CODE_PREFIX + body.getCellPhone());
             if (!res) {
diff --git a/xinquan-auth/src/main/java/com/xinquan/auth/util/HuaWeiSMSUtil.java b/xinquan-auth/src/main/java/com/xinquan/auth/util/HuaWeiSMSUtil.java
index d18b21f..1452b59 100644
--- a/xinquan-auth/src/main/java/com/xinquan/auth/util/HuaWeiSMSUtil.java
+++ b/xinquan-auth/src/main/java/com/xinquan/auth/util/HuaWeiSMSUtil.java
@@ -33,8 +33,8 @@
 
     public static void main(String[] args) throws Exception {
 
-        sendSms("[\"" + 123456 + "\"]", "19983174515", "8824110423893",
-                "767ad27dce184a32a4b4863517fbd301");
+        sendSms("[\"" + 123456 + "\"]", "19983174515", "8825010822864",
+                "c1df549e89724e3db05b018524728d41");
 
 //        sendSms("[\"17623778642\",\"蓉A-7823\"]","17623778642","8819122535459","6c848255000c4619833ab690e393f906");
 //        sendSms("[\"17623778642\",\"蓉A-7823\",\"2019/12/27\",\"14:00\"]","17623778642","8819122535459","bb13d00d11e043659001a89c72d54cab");
diff --git a/xinquan-common/xinquan-common-security/src/main/java/com/xinquan/common/security/service/TokenService.java b/xinquan-common/xinquan-common-security/src/main/java/com/xinquan/common/security/service/TokenService.java
index 1670d08..818ba24 100644
--- a/xinquan-common/xinquan-common-security/src/main/java/com/xinquan/common/security/service/TokenService.java
+++ b/xinquan-common/xinquan-common-security/src/main/java/com/xinquan/common/security/service/TokenService.java
@@ -208,7 +208,7 @@
         loginUser.setUsername(userName);
         loginUser.setIpaddr(IpUtils.getIpAddr());
         refreshToken(loginUser);
-        // refreshToken4AppLoginUser(appLoginUser);
+        refreshToken4AppLoginUser(appLoginUser);
         claimsMap.put(SecurityConstants.USER_KEY, token);
         claimsMap.put(SecurityConstants.DETAILS_USER_ID, userId);
         claimsMap.put(SecurityConstants.DETAILS_USERNAME, userName);
diff --git a/xinquan-gateway/src/main/java/com/xinquan/gateway/filter/FdmallCorsConfiguration.java b/xinquan-gateway/src/main/java/com/xinquan/gateway/filter/FdmallCorsConfiguration.java
index 1fac6c0..271fdd6 100644
--- a/xinquan-gateway/src/main/java/com/xinquan/gateway/filter/FdmallCorsConfiguration.java
+++ b/xinquan-gateway/src/main/java/com/xinquan/gateway/filter/FdmallCorsConfiguration.java
@@ -1,33 +1,33 @@
-//package com.xinquan.gateway.filter;
-//
-//import org.springframework.context.annotation.Bean;
-//import org.springframework.context.annotation.Configuration;
-//import org.springframework.web.cors.CorsConfiguration;
-//import org.springframework.web.cors.reactive.CorsWebFilter;
-//import org.springframework.web.cors.reactive.UrlBasedCorsConfigurationSource;
-//
-//@Configuration
-//public class FdmallCorsConfiguration {
-//    /**
-//     * 添加跨域过滤器
-//     * @return
-//     */
-//    @Bean // 添加过滤器
-//    public CorsWebFilter corsWebFilter(){
-//        //基于url跨域,选择reactive包下的
-//        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
-//        // 跨域配置信息
-//        CorsConfiguration configuration = new CorsConfiguration();
-//        // 允许跨域的头
-//        configuration.addAllowedHeader("*");
-//        // 允许跨域的请求方式
-//        configuration.addAllowedMethod("*");
-//        // 允许跨域的请求来源
-//        configuration.addAllowedOrigin("*");
-//        // 是否允许携带cookie跨域
-//        configuration.setAllowCredentials(true);
-//        // 任意url都要进行跨域配置
-//        source.registerCorsConfiguration("/**", configuration);
-//        return new CorsWebFilter(source);
-//    }
-//}
+package com.xinquan.gateway.filter;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.cors.CorsConfiguration;
+import org.springframework.web.cors.reactive.CorsWebFilter;
+import org.springframework.web.cors.reactive.UrlBasedCorsConfigurationSource;
+
+@Configuration
+public class FdmallCorsConfiguration  {
+    /**
+     * 添加跨域过滤器
+     * @return
+     */
+    @Bean // 添加过滤器
+    public CorsWebFilter corsWebFilter(){
+        //基于url跨域,选择reactive包下的
+        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
+        // 跨域配置信息
+        CorsConfiguration configuration = new CorsConfiguration();
+        // 允许跨域的头
+        configuration.addAllowedHeader("*");
+        // 允许跨域的请求方式
+        configuration.addAllowedMethod("*");
+        // 允许跨域的请求来源
+        configuration.addAllowedOrigin("*");
+        // 是否允许携带cookie跨域
+        configuration.setAllowCredentials(true);
+        // 任意url都要进行跨域配置
+        source.registerCorsConfiguration("/**", configuration);
+        return new CorsWebFilter(source);
+    }
+}
diff --git a/xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/controller/client/ClientHomeController.java b/xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/controller/client/ClientHomeController.java
index 4cb32f6..e99612d 100644
--- a/xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/controller/client/ClientHomeController.java
+++ b/xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/controller/client/ClientHomeController.java
@@ -4,9 +4,13 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.xinquan.common.core.constant.SecurityConstants;
 import com.xinquan.common.core.domain.R;
+import com.xinquan.common.core.utils.page.BeanUtils;
 import com.xinquan.common.core.utils.page.PageDTO;
+import com.xinquan.common.log.annotation.Log;
+import com.xinquan.common.log.enums.BusinessType;
 import com.xinquan.common.security.service.TokenService;
 import com.xinquan.meditation.domain.HomeBackgroundMusic;
+import com.xinquan.meditation.domain.HomeBackgroundMusicUser;
 import com.xinquan.meditation.domain.vo.ClientHomeBackgroundMusicVO;
 import com.xinquan.meditation.domain.vo.ClientMeditationAndCateVO;
 import com.xinquan.meditation.domain.vo.ClientMeditationCategoryVO;
@@ -14,11 +18,7 @@
 import com.xinquan.meditation.domain.vo.ClientMeditationEverydayVO;
 import com.xinquan.meditation.domain.vo.ClientMeditationQuestionVO;
 import com.xinquan.meditation.domain.vo.ClientMeditationVO;
-import com.xinquan.meditation.service.HomeBackgroundMusicService;
-import com.xinquan.meditation.service.MeditationCategoryService;
-import com.xinquan.meditation.service.MeditationEverydayService;
-import com.xinquan.meditation.service.MeditationQuestionService;
-import com.xinquan.meditation.service.MeditationService;
+import com.xinquan.meditation.service.*;
 import com.xinquan.system.api.RemoteHotWordsService;
 import com.xinquan.meditation.api.domain.MeditationQuestion;
 import com.xinquan.system.api.model.LoginUser;
@@ -35,6 +35,8 @@
 import lombok.RequiredArgsConstructor;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
 
 /**
  * <p>
@@ -54,8 +56,13 @@
     private final MeditationService meditationService;
     private final MeditationCategoryService meditationCategoryService;
     private final MeditationEverydayService meditationEverydayService;
-    private final RemoteHotWordsService remoteHotWordsService;
+    @Resource
+    private  RemoteHotWordsService remoteHotWordsService;
     private final MeditationQuestionService meditationQuestionService;
+    @Autowired
+    private HomeBackgroundMusicUserService homeBackgroundMusicUserService;
+    @Autowired
+    private TokenService tokenService;
 
     @GetMapping("/listHomeBackgroundMusic")
     @ApiOperation(value = "背景音乐列表查询-分页", tags = "管理后台-首页背景音乐管理")
@@ -79,7 +86,9 @@
     }
 
     @PostMapping("/addHomeBackgroundMusic")
+    @Log(title = "【首页背景音乐管理】新增", businessType = BusinessType.INSERT)
     @ApiOperation(value = "新增背景", tags = "管理后台-首页背景音乐管理")
+
     public R addHomeBackgroundMusic(@RequestBody HomeBackgroundMusic homeBackgroundMusic) {
         return R.ok(homeBackgroundMusicService.save(homeBackgroundMusic));
     }
@@ -90,11 +99,14 @@
     }
     @PostMapping("/updateHomeBackgroundMusic")
     @ApiOperation(value = "修改背景", tags = "管理后台-首页背景音乐管理")
+    @Log(title = "【首页背景音乐管理】修改", businessType = BusinessType.UPDATE)
     public R updateHomeBackgroundMusic(@RequestBody HomeBackgroundMusic homeBackgroundMusic) {
         return R.ok(homeBackgroundMusicService.updateById(homeBackgroundMusic));
     }
     @PostMapping("/deleteHomeBackgroundMusic")
     @ApiOperation(value = "批量删除", tags = "管理后台-首页背景音乐管理")
+    @Log(title = "【首页背景音乐管理】批量删除", businessType = BusinessType.DELETE)
+
     public R deleteHomeBackgroundMusic(String ids) {
         return R.ok(homeBackgroundMusicService.removeBatchByIds(Arrays.asList(ids.split(",")).stream().map(Long::valueOf).collect(Collectors.toList())));
     }
@@ -108,19 +120,50 @@
     public R<List<ClientHomeBackgroundMusicVO>> getHomeBackgroundMusicList() {
         return R.ok(homeBackgroundMusicService.getHomeBackgroundMusicList());
     }
+    @PostMapping("/saveUserHomeBackgroundMusic")
+    @ApiOperation(value = "保存用户首页背景音频设置", notes = "保存用户首页背景音频设置")
+    @Log(title = "【用户首页背景音频设置】修改", businessType = BusinessType.UPDATE)
 
-    /**
-     * 保存用户首页背景音乐设置
-     *
-     * @param id 首页背景音乐id
-     */
-    @PostMapping("/savePersonalitySetting")
-    @ApiOperation(value = "保存用户首页背景音乐设置")
-    @ApiImplicitParam(name = "id", value = "首页背景音乐id", required = true)
-    public R<?> savePersonalitySetting(@RequestParam("id") Long id) {
-        homeBackgroundMusicService.savePersonalitySetting(id);
+    @ApiImplicitParam(name = "id", value = "首页背景音频id", dataType = "Long", required = true)
+    public R saveUserHomeBackgroundMusic(@RequestParam("id") Long id) {
+        if (tokenService.getLoginUser()==null) {
+            return R.tokenError("登录失效");
+        }
+        HomeBackgroundMusicUser one = homeBackgroundMusicUserService.lambdaQuery()
+                .eq(HomeBackgroundMusicUser::getAppUserId, tokenService.getLoginUser().getAppUserId()).one();
+        if (one!=null){
+            one.setHomeBackgroundMusicId(id);
+            homeBackgroundMusicUserService.updateById(one);
+        }else{
+            HomeBackgroundMusicUser homeBackgroundMusicUser = new HomeBackgroundMusicUser();
+            homeBackgroundMusicUser.setAppUserId(tokenService.getLoginUser().getAppUserId());
+            homeBackgroundMusicUser.setHomeBackgroundMusicId(id);
+            homeBackgroundMusicUserService.save(homeBackgroundMusicUser);
+        }
         return R.ok();
     }
+    @GetMapping("/getHomeBackgroundMusicByUserId")
+    @ApiOperation(value = "获取用户设置的首页背景音乐", notes = "获取用户设置的首页背景音乐")
+    public R<ClientHomeBackgroundMusicVO> getHomeBackgroundMusicByUserId() {
+        if (tokenService.getLoginUser()==null){
+            // 游客登录模式 不要返回登录失效 返回空即可
+            return R.ok(new ClientHomeBackgroundMusicVO());
+        }
+        HomeBackgroundMusicUser homeBackgroundMusicUser = homeBackgroundMusicUserService.lambdaQuery()
+                .eq(HomeBackgroundMusicUser::getAppUserId, tokenService.getLoginUser().getAppUserId())
+                .one();
+        if (homeBackgroundMusicUser==null){
+            return R.ok(new ClientHomeBackgroundMusicVO());
+        }
+        HomeBackgroundMusic homeBackgroundMusic = homeBackgroundMusicService.lambdaQuery()
+                .eq(HomeBackgroundMusic::getId, homeBackgroundMusicUser.getHomeBackgroundMusicId())
+                .one();
+        if (homeBackgroundMusic==null)return R.ok(new ClientHomeBackgroundMusicVO());
+        ClientHomeBackgroundMusicVO clientHomeBackgroundMusicVO = new ClientHomeBackgroundMusicVO();
+        BeanUtils.copyProperties(homeBackgroundMusic, clientHomeBackgroundMusicVO);
+        return R.ok(clientHomeBackgroundMusicVO);
+    }
+
 
     /**
      * 根据类型获取冥想分类列表
@@ -326,8 +369,7 @@
             @RequestParam("pageSize") Integer pageSize) {
         return R.ok(meditationService.getMeditationQuestionPageShare(id, pageCurr, pageSize));
     }
-    @Autowired
-    private TokenService tokenService;
+
     @PostMapping("/addQuestion")
     @ApiOperation(value = "发布提问")
     @ApiImplicitParams({
diff --git a/xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/controller/client/ClientMeditationCategoryController.java b/xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/controller/client/ClientMeditationCategoryController.java
index 95da9fd..23a6727 100644
--- a/xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/controller/client/ClientMeditationCategoryController.java
+++ b/xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/controller/client/ClientMeditationCategoryController.java
@@ -6,6 +6,8 @@
 import com.xinquan.common.core.domain.R;
 import com.xinquan.common.core.utils.page.CollUtils;
 import com.xinquan.common.core.utils.page.PageDTO;
+import com.xinquan.common.log.annotation.Log;
+import com.xinquan.common.log.enums.BusinessType;
 import com.xinquan.common.security.utils.SecurityUtils;
 import com.xinquan.meditation.domain.MeditationCategory;
 import com.xinquan.meditation.service.MeditationCategoryService;
@@ -53,6 +55,7 @@
     }
     @PostMapping("/addMeditationCategory")
     @ApiOperation(value = "新增冥想分类管理", tags = "管理后台-冥想分类管理")
+
     public R addMeditationCategory(@RequestBody MeditationCategory homeBackgroundMusic) {
         homeBackgroundMusic.setCreateBy(SecurityUtils.getUsername());
         homeBackgroundMusic.setCreateTime(LocalDateTime.now());
@@ -65,6 +68,7 @@
     }
     @PostMapping("/updateMeditationCategory")
     @ApiOperation(value = "修改冥想分类管理", tags = "管理后台-冥想分类管理")
+    @Log(title = "【冥想分类管理】修改", businessType = BusinessType.UPDATE)
     public R updateMeditationCategory(@RequestBody MeditationCategory homeBackgroundMusic) {
         homeBackgroundMusic.setUpdateBy(SecurityUtils.getUsername());
         homeBackgroundMusic.setUpdateTime(LocalDateTime.now());
diff --git a/xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/domain/HomeBackgroundMusicUser.java b/xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/domain/HomeBackgroundMusicUser.java
index e0faa75..0048dca 100644
--- a/xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/domain/HomeBackgroundMusicUser.java
+++ b/xinquan-modules/xinquan-meditation/src/main/java/com/xinquan/meditation/domain/HomeBackgroundMusicUser.java
@@ -10,6 +10,8 @@
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
+import java.io.Serializable;
+
 /**
  * <p>
  * 首页背景音乐用户关系表
@@ -19,10 +21,9 @@
  * @since 2024-08-23
  */
 @Data
-@EqualsAndHashCode(callSuper = true)
 @TableName("t_home_background_music_user")
 @ApiModel(value = "HomeBackgroundMusicUser对象", description = "首页背景音乐用户关系表")
-public class HomeBackgroundMusicUser extends BaseModel {
+public class HomeBackgroundMusicUser implements Serializable {
 
     private static final long serialVersionUID = 1L;
 
diff --git a/xinquan-modules/xinquan-order/src/main/java/com/xinquan/order/controller/management/MgtOrderController.java b/xinquan-modules/xinquan-order/src/main/java/com/xinquan/order/controller/management/MgtOrderController.java
index fba2703..9acff0c 100644
--- a/xinquan-modules/xinquan-order/src/main/java/com/xinquan/order/controller/management/MgtOrderController.java
+++ b/xinquan-modules/xinquan-order/src/main/java/com/xinquan/order/controller/management/MgtOrderController.java
@@ -10,6 +10,8 @@
 import com.xinquan.common.core.utils.page.CollUtils;
 import com.xinquan.common.core.utils.page.PageDTO;
 import com.xinquan.common.core.web.page.PageInfo;
+import com.xinquan.common.log.annotation.Log;
+import com.xinquan.common.log.enums.BusinessType;
 import com.xinquan.common.security.service.TokenService;
 import com.xinquan.course.api.domain.Course;
 import com.xinquan.course.api.feign.RemoteCourseService;
@@ -1284,6 +1286,8 @@
     }
     @GetMapping("/cancel")
     @ApiOperation(value = "取消订单", tags = "管理后台-订单列表管理")
+    @Log(title = "【订单列表管理】取消订单", businessType = BusinessType.UPDATE)
+
     public R updateState(String uid) {
         Order byId = orderService.getById(uid);
         byId.setPaymentStatus(3);
@@ -1307,6 +1311,7 @@
     private TokenService tokenService;
     @GetMapping("/ChangeMoney")
     @ApiOperation(value = "改价", tags = "管理后台-订单列表管理")
+    @Log(title = "【订单列表管理】改价", businessType = BusinessType.UPDATE)
     public R ChangeMoney(String uid,String amount) {
         Order byId = orderService.getById(uid);
         byId.setChangePrice(new BigDecimal(amount));
diff --git a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/BannerController.java b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/BannerController.java
index dfaded2..d5eb4c5 100644
--- a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/BannerController.java
+++ b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/BannerController.java
@@ -3,6 +3,8 @@
 
 import com.xinquan.common.core.domain.R;
 import com.xinquan.common.core.utils.page.PageDTO;
+import com.xinquan.common.log.annotation.Log;
+import com.xinquan.common.log.enums.BusinessType;
 import com.xinquan.course.api.domain.Course;
 import com.xinquan.course.api.domain.CourseCategory;
 import com.xinquan.course.api.domain.CourseDTO;
@@ -88,6 +90,8 @@
     @ApiImplicitParams({
             @ApiImplicitParam(value = "ids", name = "ids", required = true, dataType = "String"),
     })
+    @Log(title = "【banner】批量删除", businessType = BusinessType.DELETE)
+
     public R deleteBatch(
             @RequestParam(value = "ids") String ids)
     {
@@ -97,6 +101,7 @@
     }
     @PostMapping("/addBanner")
     @ApiOperation(value = "添加banner",tags = "管理后台banner")
+    @Log(title = "【banner】添加", businessType = BusinessType.INSERT)
 
     public R addBanner(@RequestBody Banner banner)
     {
@@ -105,7 +110,7 @@
     }
     @PostMapping("/updateBanner")
     @ApiOperation(value = "修改banner",tags = "管理后台banner")
-
+    @Log(title = "【banner】修改", businessType = BusinessType.UPDATE)
     public R updateBanner(@RequestBody Banner banner)
     {
         bannerService.updateById(banner);
diff --git a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/CommissionRuleController.java b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/CommissionRuleController.java
index 0581b68..273e5b8 100644
--- a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/CommissionRuleController.java
+++ b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/CommissionRuleController.java
@@ -2,6 +2,8 @@
 
 
 import com.xinquan.common.core.domain.R;
+import com.xinquan.common.log.annotation.Log;
+import com.xinquan.common.log.enums.BusinessType;
 import com.xinquan.system.api.domain.CommissionRule;
 import com.xinquan.system.service.CommissionRuleService;
 import io.swagger.annotations.ApiOperation;
@@ -27,6 +29,7 @@
     private CommissionRuleService commissionRuleService;
     @PostMapping("/updateCommission")
     @ApiOperation(value = "保存",tags = "管理后台-分享设置")
+    @Log(title = "【分享设置】保存", businessType = BusinessType.UPDATE)
     public R updateTreeGroup(@RequestBody CommissionRule commissionRule) {
         CommissionRule one1 = commissionRuleService.lambdaQuery().one();
         if (one1==null){
diff --git a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/CommonQuestionController.java b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/CommonQuestionController.java
index 1874d42..ad1c0a8 100644
--- a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/CommonQuestionController.java
+++ b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/CommonQuestionController.java
@@ -5,6 +5,8 @@
 import com.xinquan.common.core.domain.R;
 import com.xinquan.common.core.utils.page.PageDTO;
 import com.xinquan.common.core.web.domain.AjaxResult;
+import com.xinquan.common.log.annotation.Log;
+import com.xinquan.common.log.enums.BusinessType;
 import com.xinquan.common.security.service.TokenService;
 import com.xinquan.common.security.utils.SecurityUtils;
 import com.xinquan.system.api.RemoteUserService;
@@ -132,6 +134,7 @@
     }
     @GetMapping("/updateKfCode")
     @ApiOperation(value = "修改/新增客服微信", tags = "管理后台-常见问题")
+    @Log(title = "【常见问题】修改客服微信", businessType = BusinessType.UPDATE)
     public R<CommonQuestion> updateKfCode(String customerServiceQrCode) {
         CommonQuestion one = commonQuestionService.lambdaQuery()
                 .eq(CommonQuestion::getType, 2).one();
@@ -150,6 +153,8 @@
     }
     @PostMapping("/addCommonQuestion")
     @ApiOperation(value = "新增常见问题", tags = "管理后台-常见问题")
+    @Log(title = "【常见问题】新增常见问题", businessType = BusinessType.INSERT)
+
     public R addCommonQuestion(@RequestBody CommonQuestion homeBackgroundMusic) {
         return R.ok(commonQuestionService.save(homeBackgroundMusic));
     }
@@ -161,11 +166,14 @@
     }
     @PostMapping("/updateCommonQuestion")
     @ApiOperation(value = "修改常见问题", tags = "管理后台-常见问题")
+    @Log(title = "【常见问题】修改常见问题", businessType = BusinessType.UPDATE)
+
     public R updateCommonQuestion(@RequestBody CommonQuestion homeBackgroundMusic) {
         return R.ok(commonQuestionService.updateById(homeBackgroundMusic));
     }
     @PostMapping("/deleteCommonQuestion")
     @ApiOperation(value = "批量删除", tags = "管理后台-常见问题")
+    @Log(title = "【常见问题】批量删除常见问题", businessType = BusinessType.DELETE)
     public R deleteCommonQuestion(String ids) {
         return R.ok(commonQuestionService.removeBatchByIds(Arrays.asList(ids.split(",")).stream().map(Long::valueOf).collect(Collectors.toList())));
     }
diff --git a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/ContentSettingController.java b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/ContentSettingController.java
index 629e084..d8bc5db 100644
--- a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/ContentSettingController.java
+++ b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/ContentSettingController.java
@@ -3,6 +3,8 @@
 
 import com.xinquan.common.core.domain.R;
 import com.xinquan.common.core.utils.page.PageDTO;
+import com.xinquan.common.log.annotation.Log;
+import com.xinquan.common.log.enums.BusinessType;
 import com.xinquan.system.domain.ContentSetting;
 import com.xinquan.system.domain.VipSetting;
 import com.xinquan.system.domain.dto.AggrementOtherDto;
@@ -51,6 +53,7 @@
     }
     @PostMapping("/saveOrupdateContent")
     @ApiOperation(value = "保存修改富文本内容",tags = "管理后台-富文本规则说明")
+    @Log(title = "【富文本规则说明】修改富文本内容", businessType = BusinessType.UPDATE)
 
     public R saveOrupdateContent(@RequestBody AggrementOtherDto dto) {
         ContentSetting one = contentSettingService.lambdaQuery().eq(ContentSetting::getContentType, dto.getType()).one();
diff --git a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/HomeController.java b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/HomeController.java
index 77cffa8..00b076f 100644
--- a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/HomeController.java
+++ b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/HomeController.java
@@ -11,6 +11,8 @@
 import com.xinquan.common.core.utils.page.BeanUtils;
 import com.xinquan.common.core.utils.page.PageDTO;
 import com.xinquan.common.core.web.domain.BaseModel;
+import com.xinquan.common.log.annotation.Log;
+import com.xinquan.common.log.enums.BusinessType;
 import com.xinquan.common.redis.service.RedisService;
 import com.xinquan.common.security.utils.SecurityUtils;
 import com.xinquan.course.api.domain.Course;
@@ -95,6 +97,8 @@
 
     @GetMapping("/updatePassword")
     @ApiOperation(value = "管理后台-修改密码", tags = "管理后台-修改密码")
+    @Log(title = "【修改密码】修改密码", businessType = BusinessType.UPDATE)
+
     public R updatePassword(String userName,String password) {
         SysUser one = sysUserService.lambdaQuery()
                 .eq(SysUser::getUserType, "00")
@@ -553,6 +557,8 @@
     @ApiImplicitParams({
             @ApiImplicitParam(value = "ids", name = "ids", required = true, dataType = "String"),
     })
+    @Log(title = "【banner】批量删除banner", businessType = BusinessType.DELETE)
+
     public R deleteBatch(
             @RequestParam(value = "ids") String ids)
     {
@@ -562,6 +568,7 @@
     }
     @PostMapping("/addBanner")
     @ApiOperation(value = "添加banner",tags = "管理后台banner")
+    @Log(title = "【banner】添加", businessType = BusinessType.INSERT)
 
     public R addBanner(@RequestBody Banner banner)
     {
@@ -570,6 +577,7 @@
     }
     @PostMapping("/updateBanner")
     @ApiOperation(value = "修改banner",tags = "管理后台banner")
+    @Log(title = "【banner】修改", businessType = BusinessType.UPDATE)
 
     public R updateBanner(@RequestBody Banner banner)
     {
diff --git a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/HotWordsController.java b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/HotWordsController.java
index 4051e0c..87168dd 100644
--- a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/HotWordsController.java
+++ b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/HotWordsController.java
@@ -5,6 +5,8 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.xinquan.common.core.domain.R;
 import com.xinquan.common.core.utils.page.PageDTO;
+import com.xinquan.common.log.annotation.Log;
+import com.xinquan.common.log.enums.BusinessType;
 import com.xinquan.common.security.service.TokenService;
 import com.xinquan.common.security.utils.SecurityUtils;
 import com.xinquan.system.api.model.LoginUser;
@@ -61,6 +63,8 @@
     }
     @PostMapping("/add")
     @ApiOperation(value = "热词管理-添加热词", tags = {"管理后台-运营中心"})
+    @Log(title = "【热词】添加", businessType = BusinessType.INSERT)
+
     public R add(@RequestBody HotWords hotWords) {
         int size = hotWordsService.lambdaQuery().list().size();
         if (size>=20){
@@ -71,6 +75,8 @@
     }
     @PostMapping("/update")
     @ApiOperation(value = "热词管理-编辑热词", tags = {"管理后台-运营中心"})
+    @Log(title = "【热词】修改", businessType = BusinessType.UPDATE)
+
     public R update(@RequestBody HotWords hotWords) {
         LambdaUpdateWrapper<HotWords> hotWordsLambdaUpdateWrapper = new LambdaUpdateWrapper<>();
         if (hotWords.getSortNum()==null){
@@ -85,6 +91,8 @@
     }
     @DeleteMapping("/delete")
     @ApiOperation(value = "热词管理-删除热词", tags = {"管理后台-运营中心"})
+    @Log(title = "【热词】删除", businessType = BusinessType.DELETE)
+
     public R add(String id) {
         hotWordsService.removeById(Long.valueOf(id));
         return R.ok();
diff --git a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/PageController.java b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/PageController.java
index d25bace..7ba91a3 100644
--- a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/PageController.java
+++ b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/PageController.java
@@ -2,6 +2,8 @@
 
 
 import com.xinquan.common.core.domain.R;
+import com.xinquan.common.log.annotation.Log;
+import com.xinquan.common.log.enums.BusinessType;
 import com.xinquan.system.domain.Page;
 import com.xinquan.system.domain.Turn;
 import com.xinquan.system.service.PageService;
@@ -37,6 +39,8 @@
     }
     @GetMapping("/saveOrUpdate")
     @ApiOperation(value = "保存/修改启动页",tags = "管理后台-启动页")
+    @Log(title = "【启动页】修改", businessType = BusinessType.UPDATE)
+
     public R saveOrUpdate(String img) {
         Page one = pageService.lambdaQuery().eq(Page::getType,1).one();
         if(one == null){
@@ -74,6 +78,8 @@
     }
     @GetMapping("/saveOrUpdatePlan")
     @ApiOperation(value = "保存/修改计划引导设置",tags = "计划引导设置")
+    @Log(title = "【计划引导设置】修改", businessType = BusinessType.UPDATE)
+
     public R saveOrUpdatePlan(String img) {
         Page one = pageService.lambdaQuery().eq(Page::getType,2).one();
         if(one == null){
diff --git a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/SysDeptController.java b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/SysDeptController.java
index 375d909..c0234fd 100644
--- a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/SysDeptController.java
+++ b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/SysDeptController.java
@@ -70,6 +70,8 @@
      */
     @PostMapping("/add")
     @ApiOperation("部门添加")
+    @Log(title = "【部门管理】添加", businessType = BusinessType.INSERT)
+
     public AjaxResult add(@Validated @RequestBody SysDept dto)
     {
         dto.setCreateTime(LocalDateTime.now());
@@ -89,6 +91,8 @@
      */
     @PostMapping("/edit")
     @ApiOperation("部门修改")
+    @Log(title = "【部门管理】修改", businessType = BusinessType.UPDATE)
+
     public R edit(@Validated @RequestBody SysDept dept)
     {
         if (!deptService.checkDeptNameUnique1(dept)){
@@ -104,6 +108,8 @@
     private ISysUserService userService;
     @ApiOperation(value = "禁用启用")
     @PutMapping("/changeStatus")
+    @Log(title = "【部门管理】修改状态", businessType = BusinessType.UPDATE)
+
     public AjaxResult changeStatus(@RequestBody SysDeptUpdateStatusDTO dto)
     {
         SysDept user = new SysDept();
@@ -122,6 +128,8 @@
      */
     @DeleteMapping("/{deptId}")
     @ApiOperation("删除部门")
+    @Log(title = "【部门管理】删除", businessType = BusinessType.DELETE)
+
     public AjaxResult remove(@PathVariable Long deptId)
     {
         return toAjax(deptService.deleteDeptById(deptId));
diff --git a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/SysRoleController.java b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/SysRoleController.java
index 67114ce..bcd9781 100644
--- a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/SysRoleController.java
+++ b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/SysRoleController.java
@@ -85,6 +85,7 @@
     @ApiOperation(value = "批量删除角色")
     @Log(title = "角色信息-角色删除角色", businessType = BusinessType.DELETE)
     @DeleteMapping("/deleteById/{ids}")
+
     public AjaxResult remove(@PathVariable String ids)
     {
         String[] split = ids.split(",");
@@ -224,6 +225,8 @@
     // @PreAuthorize("@ss.hasPermi('system:role:edit')")
     @ApiOperation(value = "编辑角色")
     @PutMapping
+    @Log(title = "角色信息-编辑角色", businessType = BusinessType.UPDATE)
+
     public AjaxResult edit(@Validated @RequestBody SysRoleDTO dto)
     {
         Boolean flag= roleService.isExit(dto.getRoleId(),dto.getRoleName());
diff --git a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/SysUserController.java b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/SysUserController.java
index 2af07af..9d3d198 100644
--- a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/SysUserController.java
+++ b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/SysUserController.java
@@ -142,6 +142,8 @@
     }
     @ApiOperation(value = "新增用户管理")
     @PostMapping("/add")
+    @Log(title = "【系统用户】新增用户", businessType = BusinessType.INSERT)
+
     public AjaxResult add(@Validated @RequestBody SysUser user) {
         if (!userService.checkUserNameUnique(user))
         {
@@ -159,6 +161,8 @@
     }
     @ApiOperation(value = "修改用户管理")
     @PostMapping("/edit")
+    @Log(title = "【系统用户】修改用户", businessType = BusinessType.UPDATE)
+
     public AjaxResult edit(@Validated @RequestBody SysUser user) {
 //        userService.checkUserAllowed(user);
 //        userService.checkUserDataScope(user.getUserId());
@@ -182,6 +186,8 @@
 
     @ApiOperation(value = "禁用启用")
     @PutMapping("/changeStatus")
+    @Log(title = "【系统用户】修改状态", businessType = BusinessType.UPDATE)
+
     public AjaxResult changeStatus(@RequestBody SysUserUpdateStatusDTO dto)
     {
         SysUser user = new SysUser();
@@ -537,9 +543,10 @@
     /**
      * 删除用户
      */
-    @Log(title = "用户管理", businessType = BusinessType.DELETE)
+    @Log(title = "【用户管理】删除", businessType = BusinessType.DELETE)
     @DeleteMapping("/{userIds}")
     @ApiOperation("删除管理员")
+
     public AjaxResult remove(@PathVariable Long[] userIds) {
         if (ArrayUtils.contains(userIds, SecurityUtils.getUserId())) {
             return error("当前用户不能删除");
diff --git a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/TreeLevelSettingController.java b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/TreeLevelSettingController.java
index 1546cf2..c06a180 100644
--- a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/TreeLevelSettingController.java
+++ b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/TreeLevelSettingController.java
@@ -2,6 +2,8 @@
 
 
 import com.xinquan.common.core.domain.R;
+import com.xinquan.common.log.annotation.Log;
+import com.xinquan.common.log.enums.BusinessType;
 import com.xinquan.system.api.domain.vo.UpdateTreeGroupVO;
 import com.xinquan.system.api.domain.TreeLevelSetting;
 import com.xinquan.system.service.TreeLevelSettingService;
@@ -30,6 +32,8 @@
     private TreeLevelSettingService treeLevelSettingService;
     @PostMapping("/updateTreeGroup")
     @ApiOperation(value = "修改树苗等级音频",tags = "管理后台-树苗音频设置")
+    @Log(title = "【树苗音频设置】修改", businessType = BusinessType.UPDATE)
+
     public R updateTreeGroup(@RequestBody UpdateTreeGroupVO vo) {
         TreeLevelSetting one = treeLevelSettingService.lambdaQuery()
                 .eq(TreeLevelSetting::getTreeLevelType, vo.getTreeLevelType()).one();
diff --git a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/UserLevelSettingController.java b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/UserLevelSettingController.java
index 96fee4a..b8dc1c4 100644
--- a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/UserLevelSettingController.java
+++ b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/UserLevelSettingController.java
@@ -3,6 +3,8 @@
 
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.xinquan.common.core.domain.R;
+import com.xinquan.common.log.annotation.Log;
+import com.xinquan.common.log.enums.BusinessType;
 import com.xinquan.system.api.domain.vo.AppUserVO;
 import com.xinquan.system.api.domain.UserLevelSetting;
 import com.xinquan.system.api.domain.vo.UpdateUserGroupVO;
@@ -42,6 +44,7 @@
 
     @PostMapping("/updateUserGroup")
     @ApiOperation(value = "修改等级经验值",tags = "管理后台-树苗音频设置")
+    @Log(title = "【树苗音频设置】修改", businessType = BusinessType.UPDATE)
     public R updateTreeGroup(@RequestBody UpdateUserGroupVO vo) {
         UserLevelSetting one = userLevelSettingService.lambdaQuery()
                 .eq(UserLevelSetting::getTreeLevelType, vo.getTreeLevelType()).one();
diff --git a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/VersionController.java b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/VersionController.java
index 3baeeac..64b224e 100644
--- a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/VersionController.java
+++ b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/VersionController.java
@@ -7,6 +7,8 @@
 import com.xinquan.common.core.domain.R;
 import com.xinquan.common.core.utils.page.PageDTO;
 import com.xinquan.common.core.web.domain.BaseModel;
+import com.xinquan.common.log.annotation.Log;
+import com.xinquan.common.log.enums.BusinessType;
 import com.xinquan.common.security.service.TokenService;
 import com.xinquan.common.security.utils.SecurityUtils;
 import com.xinquan.system.api.domain.AppUser;
@@ -75,6 +77,8 @@
     }
     @PostMapping("/addVersion")
     @ApiOperation(value = "新增版本管理", tags = "管理后台-版本管理")
+    @Log(title = "【版本管理】新增", businessType = BusinessType.INSERT)
+
     public R addVersion(@RequestBody Version homeBackgroundMusic) {
         homeBackgroundMusic.setCreateBy(SecurityUtils.getUsername());
         homeBackgroundMusic.setCreateTime(LocalDateTime.now());
@@ -98,6 +102,8 @@
     }
     @PostMapping("/updateVersion")
     @ApiOperation(value = "修改版本管理", tags = "管理后台-版本管理")
+    @Log(title = "【版本管理】修改", businessType = BusinessType.UPDATE)
+
     public R updateVersion(@RequestBody Version homeBackgroundMusic) {
         homeBackgroundMusic.setUpdateBy(SecurityUtils.getUsername());
         homeBackgroundMusic.setUpdateTime(LocalDateTime.now());
@@ -105,6 +111,8 @@
     }
     @PostMapping("/deleteVersion")
     @ApiOperation(value = "批量删除", tags = "管理后台-版本管理")
+    @Log(title = "【版本管理】批量删除", businessType = BusinessType.DELETE)
+
     public R deleteVersion(String ids) {
         return R.ok(versionService.removeBatchByIds(Arrays.asList(ids.split(",")).stream().map(Long::valueOf).collect(Collectors.toList())));
     }
diff --git a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/VipSettingController.java b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/VipSettingController.java
index 671f6a7..c05f619 100644
--- a/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/VipSettingController.java
+++ b/xinquan-modules/xinquan-system/src/main/java/com/xinquan/system/controller/VipSettingController.java
@@ -3,6 +3,8 @@
 
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.xinquan.common.core.domain.R;
+import com.xinquan.common.log.annotation.Log;
+import com.xinquan.common.log.enums.BusinessType;
 import com.xinquan.system.domain.ContentSetting;
 import com.xinquan.system.domain.HotWords;
 import com.xinquan.system.domain.VipSetting;
@@ -55,6 +57,7 @@
     }
     @PostMapping("/saveVip")
     @ApiOperation(value = "保存会员价格设置", tags = {"管理后台-会员设置"})
+    @Log(title = "【会员设置】修改会员设置", businessType = BusinessType.UPDATE)
     public R<VipSetting> saveVip(@RequestBody VipSettingDTO dto) {
         VipSetting one = vipSettingService.lambdaQuery()
                 .eq(VipSetting::getSettingType, 1)
@@ -95,6 +98,8 @@
     }
     @PostMapping("/updateVipContent")
     @ApiOperation(value = "修改会员权益介绍/获取会员用户协议/获取续费管理说明",tags = "管理后台-会员设置")
+    @Log(title = "【会员设置】修改会员富文本内容设置", businessType = BusinessType.UPDATE)
+
     public R updateVipContent(@RequestBody AggrementDto dto) {
         VipSetting one = vipSettingService.lambdaQuery()
                 .eq(VipSetting::getSettingType, dto.getType()+1).one();
diff --git a/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserController.java b/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserController.java
index 64a35c5..05b87a3 100644
--- a/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserController.java
+++ b/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserController.java
@@ -16,6 +16,8 @@
 import com.xinquan.common.core.utils.page.CollUtils;
 import com.xinquan.common.core.utils.page.PageDTO;
 import com.xinquan.common.core.web.domain.BaseModel;
+import com.xinquan.common.log.annotation.Log;
+import com.xinquan.common.log.enums.BusinessType;
 import com.xinquan.common.redis.service.RedisService;
 import com.xinquan.common.security.service.TokenService;
 import com.xinquan.common.security.utils.SecurityUtils;
@@ -528,7 +530,7 @@
     private TokenService tokenService;
     @PostMapping("/freezing")
     @ApiOperation(value = "冻结用户", tags = "管理后台-用户管理")
-
+    @Log(title = "【用户管理】冻结用户", businessType = BusinessType.UPDATE)
     public R freezingDetail(@RequestBody UserFreezingDTO dto) {
         AppUser byId = appUserService.getById(dto.getUid());
         byId.setFreezingTime(LocalDateTime.now());
@@ -581,6 +583,7 @@
     }
     @GetMapping("/unFreezing")
     @ApiOperation(value = "解冻用户", tags = "管理后台-用户管理")
+    @Log(title = "【用户管理】解冻用户", businessType = BusinessType.UPDATE)
     public R unFreezing(String uid) {
         AppUser byId = appUserService.getById(uid);
         byId.setUserStatus(1);
@@ -609,6 +612,8 @@
             @ApiImplicitParam(name = "energyValue", value = "能量值", dataType = "int", required = true),
             @ApiImplicitParam(name = "reason", value = "备注", dataType = "String", required = true)
     })
+    @Log(title = "【用户管理】能量值修改", businessType = BusinessType.UPDATE)
+
     public R setTotalEnergyValue(String uid,Integer energyValue,String reason) {
         AppUser byId = appUserService.getById(uid);
         if (energyValue<0){
@@ -643,6 +648,8 @@
             @ApiImplicitParam(name = "vipType", value = "会员类型 1非 2月 3季 4年", dataType = "Integer", required = true),
             @ApiImplicitParam(name = "vipExpireTime", value = "会员到期时间 yyyy-MM-dd HH:mm", dataType = "String", required = true),
     })
+    @Log(title = "【用户管理】设置会员", businessType = BusinessType.UPDATE)
+
     public R setVip(String uid, Integer vipType,String vipExpireTime) {
         // 将其转化为LocalDateTime格式
         LocalDateTime parse = LocalDateTime.parse(vipExpireTime, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
@@ -1155,7 +1162,7 @@
             String key = keyPrefix + cellPhone;
             String code = redisService.getCacheObject(key);
             // 万能验证码
-            if (captcha.equals("123456") || (com.xinquan.common.core.utils.StringUtils.isNotBlank(code) && code.equals(
+            if (captcha.equals("220125") || (com.xinquan.common.core.utils.StringUtils.isNotBlank(code) && code.equals(
                     captcha))) {
                 redisService.deleteObject(key);
                 return true;
diff --git a/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserWithdrawController.java b/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserWithdrawController.java
index 4897ea1..1b432ea 100644
--- a/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserWithdrawController.java
+++ b/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientAppUserWithdrawController.java
@@ -533,7 +533,7 @@
             String key = CacheConstants.ADD_CARD_PHONE_CODE_PREFIX + appUserWithdraw.getCellPhone();
             String code = redisService.getCacheObject(key);
             // 万能验证码
-            if (appUserWithdraw.getCode().equals("123456") || (com.xinquan.common.core.utils.StringUtils.isNotBlank(code) && code.equals(
+            if (appUserWithdraw.getCode().equals("220125") || (com.xinquan.common.core.utils.StringUtils.isNotBlank(code) && code.equals(
                     appUserWithdraw.getCode()))) {
                 redisService.deleteObject(key);
             }else{
diff --git a/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeController.java b/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeController.java
index 1a810a4..f8dc77a 100644
--- a/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeController.java
+++ b/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeController.java
@@ -6,6 +6,8 @@
 import com.xinquan.common.core.domain.R;
 import com.xinquan.common.core.utils.page.CollUtils;
 import com.xinquan.common.core.utils.page.PageDTO;
+import com.xinquan.common.log.annotation.Log;
+import com.xinquan.common.log.enums.BusinessType;
 import com.xinquan.common.security.utils.SecurityUtils;
 import com.xinquan.course.api.domain.Course;
 import com.xinquan.course.api.domain.CourseCategory;
@@ -66,6 +68,8 @@
 
     @PostMapping("/addPrize")
     @ApiOperation(value = "新增奖品管理", tags = "管理后台-奖品管理")
+    @Log(title = "【奖品管理】新增奖品", businessType = BusinessType.INSERT)
+
     public R addPrize(@RequestBody Prize homeBackgroundMusic) {
         homeBackgroundMusic.setCreateBy(SecurityUtils.getUsername());
         homeBackgroundMusic.setCreateTime(LocalDateTime.now());
@@ -77,6 +81,7 @@
         return R.ok(prizeService.getById(uid));
     }
     @GetMapping("/updateState")
+    @Log(title = "【奖品管理】修改奖品上下架状态", businessType = BusinessType.UPDATE)
     @ApiOperation(value = "修改奖品管理上下架状态", tags = "管理后台-奖品管理")
     public R updateState(String uid) {
         Prize byId = prizeService.getById(uid);
@@ -90,6 +95,7 @@
     }
     @PostMapping("/updatePrize")
     @ApiOperation(value = "修改奖品管理", tags = "管理后台-奖品管理")
+    @Log(title = "【奖品管理】修改奖品", businessType = BusinessType.UPDATE)
     public R updatePrize(@RequestBody Prize homeBackgroundMusic) {
         homeBackgroundMusic.setUpdateBy(SecurityUtils.getUsername());
         homeBackgroundMusic.setUpdateTime(LocalDateTime.now());
@@ -97,6 +103,7 @@
     }
     @PostMapping("/deletePrize")
     @ApiOperation(value = "批量删除", tags = "管理后台-奖品管理")
+    @Log(title = "【奖品管理】批量删除", businessType = BusinessType.DELETE)
     public R deletePrize(String ids) {
         List<Long> collect = Arrays.stream(ids.split(",")).map(Long::valueOf).collect(Collectors.toList());
         for (Long l : collect) {
diff --git a/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeRedemptionRecordController.java b/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeRedemptionRecordController.java
index f5ce7b4..8038d95 100644
--- a/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeRedemptionRecordController.java
+++ b/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/controller/client/ClientPrizeRedemptionRecordController.java
@@ -9,6 +9,8 @@
 import com.xinquan.common.core.utils.WebUtils;
 import com.xinquan.common.core.utils.page.CollUtils;
 import com.xinquan.common.core.utils.page.PageDTO;
+import com.xinquan.common.log.annotation.Log;
+import com.xinquan.common.log.enums.BusinessType;
 import com.xinquan.common.security.service.TokenService;
 import com.xinquan.common.security.utils.SecurityUtils;
 
@@ -253,6 +255,7 @@
     private TokenService tokenService;
     @GetMapping("/confirm")
     @ApiOperation(value = "确认兑换", tags = "管理后台-兑换记录管理")
+    @Log(title = "【奖品管理】确认兑换", businessType = BusinessType.UPDATE)
     public R updateState(String uid,String code) {
         LoginUser loginUser = tokenService.getLoginUser();
         if (loginUser==null){
diff --git a/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/service/impl/AppUserServiceImpl.java b/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/service/impl/AppUserServiceImpl.java
index 50a8623..13e3a58 100644
--- a/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/service/impl/AppUserServiceImpl.java
+++ b/xinquan-modules/xinquan-user/src/main/java/com/xinquan/user/service/impl/AppUserServiceImpl.java
@@ -518,6 +518,9 @@
      * @param appUserId 用户id
      */
     private void initUserTree(Long appUserId) {
+        if (appUserTreeService.lambdaQuery().eq(AppUserTree::getSowAgain,2).eq(AppUserTree::getAppUserId,appUserId).one()!=null){
+            return;
+        }
         AppUserTree appUserTree = new AppUserTree();
         appUserTree.setAppUserId(appUserId);
         appUserTree.setTreeLevelType(TreeLevelEnum.SEED.getCode());

--
Gitblit v1.7.1