瀏覽代碼

Merge branch 'master' of http://git.dayaedu.com/yonge/cooleshow

# Conflicts:
#	cooleshow-common/src/main/java/com/yonge/cooleshow/common/enums/HardLevelEnum.java
yonge 3 年之前
父節點
當前提交
441b875bd9
共有 100 個文件被更改,包括 2785 次插入137 次删除
  1. 1 0
      audio-analysis/src/main/java/com/yonge/netty/dto/UserChannelContext.java
  2. 2 2
      cooleshow-auth/auth-api/src/main/java/com/yonge/cooleshow/auth/api/entity/SysMenu.java
  3. 1 1
      cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/core/provider/PhoneAuthenticationProvider.java
  4. 1 1
      cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/service/SysUserDeviceService.java
  5. 1 1
      cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/service/SysUserService.java
  6. 5 3
      cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/web/controller/TokenController.java
  7. 1 1
      cooleshow-bbs/src/main/java/com/yonge/cooleshow/bbs/controller/BbsCollectController.java
  8. 1 1
      cooleshow-bbs/src/main/java/com/yonge/cooleshow/bbs/controller/BbsConfigLabelController.java
  9. 1 1
      cooleshow-bbs/src/main/java/com/yonge/cooleshow/bbs/controller/BbsFollowController.java
  10. 1 1
      cooleshow-bbs/src/main/java/com/yonge/cooleshow/bbs/dao/BbsConfigLabelDao.java
  11. 1 1
      cooleshow-bbs/src/main/java/com/yonge/cooleshow/bbs/service/BbsConfigLabelService.java
  12. 1 1
      cooleshow-cms/src/main/java/com/yonge/cooleshow/cms/controller/MusicTheoryController.java
  13. 1 1
      cooleshow-cms/src/main/java/com/yonge/cooleshow/cms/dal/dao/SysNewsInformationDao.java
  14. 1 1
      cooleshow-cms/src/main/java/com/yonge/cooleshow/cms/service/SysNewsInformationService.java
  15. 34 0
      cooleshow-common/src/main/java/com/yonge/cooleshow/common/enums/ActivityTypeEnum.java
  16. 1 1
      cooleshow-common/src/main/java/com/yonge/cooleshow/common/enums/CacheNameEnum.java
  17. 5 1
      cooleshow-common/src/main/java/com/yonge/cooleshow/common/enums/HardLevelEnum.java
  18. 35 0
      cooleshow-common/src/main/java/com/yonge/cooleshow/common/enums/RegistrationMethodEnum.java
  19. 8 3
      cooleshow-mall/mall-portal/src/main/java/com/yonge/cooleshow/portal/controller/PaymentController.java
  20. 60 0
      cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/ActivityEvaluationController.java
  21. 86 0
      cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/ActivityEvaluationRecordController.java
  22. 83 0
      cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/ActivityPlanController.java
  23. 86 0
      cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/ActivityRegistrationController.java
  24. 86 0
      cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/ActivityRewardController.java
  25. 86 0
      cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/ActivityUserRewardController.java
  26. 17 0
      cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/AdminCourseGroupController.java
  27. 1 1
      cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/CourseScheduleRepliedController.java
  28. 4 3
      cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/MusicAlbumController.java
  29. 25 2
      cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/MusicSheetController.java
  30. 1 1
      cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/MusicTagController.java
  31. 64 0
      cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/PianoRoomChangeRecordController.java
  32. 1 1
      cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/PianoRoomSettingsController.java
  33. 1 1
      cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/StudentAttendanceController.java
  34. 1 1
      cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/StudentCourseHomeworkController.java
  35. 19 0
      cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/VideoLessonController.java
  36. 59 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/ActivityEvaluationDao.java
  37. 38 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/ActivityEvaluationRecordDao.java
  38. 39 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/ActivityPlanDao.java
  39. 8 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/ActivityPlanEvaluationDao.java
  40. 30 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/ActivityRegistrationDao.java
  41. 30 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/ActivityRewardDao.java
  42. 30 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/ActivityUserRewardDao.java
  43. 0 19
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/CourseScheduleStudentDao.java
  44. 30 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/PianoRoomChangeRecordDao.java
  45. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/PianoRoomSettingsDao.java
  46. 3 2
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/StudentDao.java
  47. 2 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/VideoLessonGroupDao.java
  48. 41 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/ActivityEvaluationDto.java
  49. 13 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/ActivityEvaluationRecordDto.java
  50. 29 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/ActivityPlanDto.java
  51. 23 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/ActivityPlanPayDto.java
  52. 13 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/ActivityRegistrationDto.java
  53. 13 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/ActivityRewardDto.java
  54. 13 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/ActivityUserRewardDto.java
  55. 53 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/LiveSaleOutDto.java
  56. 38 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/MusicAlbumSheetDto.java
  57. 13 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/PianoRoomChangeRecordDto.java
  58. 2 2
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/req/OrderReq.java
  59. 14 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/ActivityEvaluationRecordSearch.java
  60. 14 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/ActivityEvaluationSearch.java
  61. 77 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/ActivityPlanSearch.java
  62. 14 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/ActivityRegistrationSearch.java
  63. 14 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/ActivityRewardSearch.java
  64. 14 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/ActivityUserRewardSearch.java
  65. 10 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/MusicSheetSearch.java
  66. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/OrderSearch.java
  67. 83 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/PianoRoomChangeRecordSearch.java
  68. 29 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/QueryMyFollowSearch.java
  69. 0 8
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/StudentMusicSheetSearch.java
  70. 11 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/VideoGroupSearch.java
  71. 15 5
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/VideoLessonGroupSearch.java
  72. 11 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/VideoLessonSearch.java
  73. 80 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/ActivityEvaluation.java
  74. 91 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/ActivityEvaluationRecord.java
  75. 244 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/ActivityPlan.java
  76. 94 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/ActivityPlanEvaluation.java
  77. 91 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/ActivityRegistration.java
  78. 102 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/ActivityReward.java
  79. 115 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/ActivityUserReward.java
  80. 13 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/CourseGroup.java
  81. 0 54
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/CourseScheduleStudent.java
  82. 12 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/MusicSheet.java
  83. 14 2
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/PianoRoomBuyRecord.java
  84. 112 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/PianoRoomChangeRecord.java
  85. 2 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/PianoRoomTime.java
  86. 2 2
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/PlatformCashAccountRecord.java
  87. 11 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/SysMusicCompareRecord.java
  88. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/UserBankCard.java
  89. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/UserOrder.java
  90. 1 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/UserOrderDetail.java
  91. 48 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/VideoLessonGroup.java
  92. 1 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/AccountBizTypeEnum.java
  93. 4 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/AuthStatusEnum.java
  94. 4 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/CourseGroupEnum.java
  95. 3 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/GoodTypeEnum.java
  96. 7 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/MessageTypeEnum.java
  97. 2 1
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/OrderTypeEnum.java
  98. 50 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/ActivityEvaluationRecordService.java
  99. 49 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/ActivityEvaluationService.java
  100. 80 0
      cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/ActivityPlanService.java

+ 1 - 0
audio-analysis/src/main/java/com/yonge/netty/dto/UserChannelContext.java

@@ -15,6 +15,7 @@ import java.util.stream.Collectors;
 
 import javax.sound.sampled.AudioFormat;
 
+import com.yonge.cooleshow.common.enums.HardLevelEnum;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 

+ 2 - 2
cooleshow-auth/auth-api/src/main/java/com/yonge/cooleshow/auth/api/entity/SysMenu.java

@@ -61,8 +61,8 @@ public class SysMenu {
 	/** 更新时间 */
 	private java.util.Date updateTime;
 
-	/** 逻辑删除标记(0--正常 1--删除) */
-	@ApiModelProperty(value = "逻辑删除标记(0--正常 1--删除)",required = false)
+	/** 删除标记(0--正常 1--删除) */
+	@ApiModelProperty(value = "删除标记(0--正常 1--删除)",required = false)
 	private Boolean delFlag= false;
 
 	private Integer hid;

+ 1 - 1
cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/core/provider/PhoneAuthenticationProvider.java

@@ -100,7 +100,7 @@ public class PhoneAuthenticationProvider extends AbstractAuthenticationProvider
                     throw new LockedException("用户不存在");
                 }
 
-                if(isRegister == true){
+                if(isRegister == true && !(userInfo.getSysUser().getUserType().contains(loginUserType))){
                     user.setUpdateTime(new Date());
                     if (StringUtils.equalsIgnoreCase(loginUserType, "TEACHER")) {
                         user.setUserType(user.getUserType() + "," + loginUserType);

+ 1 - 1
cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/service/SysUserDeviceService.java

@@ -21,7 +21,7 @@ public interface SysUserDeviceService extends BaseService<Long, SysUserDevice> {
 	boolean bindDevice(String clientId, Long userId, String deviceNum);
 
 	/**
-	 * 逻辑删除
+	 * 删除
 	 * @param id
 	 * @return
 	 */

+ 1 - 1
cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/service/SysUserService.java

@@ -135,7 +135,7 @@ public interface SysUserService extends BaseService<Long, SysUser> {
     /**
      * 保存teacher数据
      *
-     * @param userId
+     * @param sysUser
      */
     void saveTeacher(SysUser sysUser);
 

+ 5 - 3
cooleshow-auth/auth-server/src/main/java/com/yonge/cooleshow/auth/web/controller/TokenController.java

@@ -179,7 +179,6 @@ public class TokenController extends BaseController {
         if (accessToken.isExpired()) {
             return failed(HttpStatus.FORBIDDEN, "token 已过期");
         }
-
         return succeed();
     }
 
@@ -188,8 +187,11 @@ public class TokenController extends BaseController {
     @ApiOperation(value = "获取二维码登录code(不需要鉴权)")
     public HttpResponseResult<QRLoginDto> getQRLoginCode(
             @ApiParam(value = "clientId", required = true) @RequestParam("clientId") String clientId,
-            @ApiParam(value = "clientSecret", required = true) @RequestParam("clientSecret") String clientSecret) {
-        //todo 验证客户端id
+            @ApiParam(value = "clientSecret", required = true) @RequestParam("clientSecret") String clientSecret,
+            @ApiParam(value = "code") String code) {
+        if(StringUtils.isNotEmpty(code)){
+            redissonClient.getBucket(CacheNameEnum.QR_LOGIN_CODE.getRedisKey(code)).delete();
+        }
 
         QRLoginDto qrLogin = new QRLoginDto();
 

+ 1 - 1
cooleshow-bbs/src/main/java/com/yonge/cooleshow/bbs/controller/BbsCollectController.java

@@ -93,7 +93,7 @@ public class BbsCollectController extends BaseController {
 	 * 删除
 	 */
 	@PostMapping("/remove")
-	@ApiOperation(value = "逻辑删除", notes = "传入ids")
+	@ApiOperation(value = "删除", notes = "传入ids")
 	public HttpResponseResult remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
         if (StringUtil.isEmpty(ids)) {
 			return failed("参数不能为空");

+ 1 - 1
cooleshow-bbs/src/main/java/com/yonge/cooleshow/bbs/controller/BbsConfigLabelController.java

@@ -70,7 +70,7 @@ public class BbsConfigLabelController extends BaseController {
         return succeed();
     }
 
-    @ApiOperation(value = "逻辑删除")
+    @ApiOperation(value = "删除")
     @PostMapping("/remove")
     public HttpResponseResult remove(@Validated @RequestBody BbsConfigLabelSearch query) {
         SysUser user = sysUserFeignService.queryUserInfo();

+ 1 - 1
cooleshow-bbs/src/main/java/com/yonge/cooleshow/bbs/controller/BbsFollowController.java

@@ -93,7 +93,7 @@ public class BbsFollowController extends BaseController {
 	 * 删除
 	 */
 	@PostMapping("/remove")
-	@ApiOperation(value = "逻辑删除", notes = "传入ids")
+	@ApiOperation(value = "删除", notes = "传入ids")
 	public HttpResponseResult remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
         if (StringUtil.isEmpty(ids)) {
 			return failed("参数不能为空");

+ 1 - 1
cooleshow-bbs/src/main/java/com/yonge/cooleshow/bbs/dao/BbsConfigLabelDao.java

@@ -37,7 +37,7 @@ public interface BbsConfigLabelDao extends BaseMapper<BbsConfigLabel> {
     List<BbsConfigLabel> selectAll(Integer delFlag);
 
     /**
-     * 逻辑删除
+     * 删除
      *
      * @param query
      * @param userId

+ 1 - 1
cooleshow-bbs/src/main/java/com/yonge/cooleshow/bbs/service/BbsConfigLabelService.java

@@ -40,7 +40,7 @@ public interface BbsConfigLabelService extends IService<BbsConfigLabel> {
     List<BbsConfigLabel> selectAll(Integer delFlag);
 
     /**
-     * 逻辑删除
+     * 删除
      *
      * @param query
      * @param userId

+ 1 - 1
cooleshow-cms/src/main/java/com/yonge/cooleshow/cms/controller/MusicTheoryController.java

@@ -98,7 +98,7 @@ public class MusicTheoryController {
      * 删除
      */
     @PostMapping("/remove/{id}")
-    @ApiOperation(value = "乐理章节详情逻辑删除", notes = "传入id")
+    @ApiOperation(value = "乐理章节详情删除", notes = "传入id")
     public HttpResponseResult<Boolean> remove(@ApiParam(value = "编号", required = true) @PathVariable Long id) {
         if (StringUtil.isEmpty(id)) {
             return failed("参数不能为空");

+ 1 - 1
cooleshow-cms/src/main/java/com/yonge/cooleshow/cms/dal/dao/SysNewsInformationDao.java

@@ -19,7 +19,7 @@ public interface SysNewsInformationDao extends BaseDAO<Long, SysNewsInformation>
 	List<SysNewsInformation> queryByType(Integer type);
 
 	/**
-	 * 逻辑删除
+	 * 删除
 	 *
 	 * @param id
 	 * @return

+ 1 - 1
cooleshow-cms/src/main/java/com/yonge/cooleshow/cms/service/SysNewsInformationService.java

@@ -21,7 +21,7 @@ public interface SysNewsInformationService extends BaseService<Long, SysNewsInfo
 	List<SysNewsInformation> queryByType(Integer type);
 
 	/**
-	 * 逻辑删除
+	 * 删除
 	 * @param id
 	 * @return
 	 */

+ 34 - 0
cooleshow-common/src/main/java/com/yonge/cooleshow/common/enums/ActivityTypeEnum.java

@@ -0,0 +1,34 @@
+package com.yonge.cooleshow.common.enums;
+
+import com.baomidou.mybatisplus.annotation.EnumValue;
+import com.yonge.toolset.base.enums.BaseEnum;
+
+/**
+ * 活动类型 EVALUATION 评测活动
+ *
+ * @Author: liweifan
+ * @Data: 2022/4/7 15:48
+ */
+public enum ActivityTypeEnum implements BaseEnum<String, ActivityTypeEnum> {
+
+    EVALUATION("评测活动")
+    ;
+
+    @EnumValue
+    private String code;
+    private String msg;
+
+    ActivityTypeEnum(String msg) {
+        this.code = this.name();
+        this.msg = msg;
+    }
+
+    @Override
+    public String getCode() {
+        return this.code;
+    }
+
+    public String getMsg() {
+        return msg;
+    }
+}

+ 1 - 1
cooleshow-common/src/main/java/com/yonge/cooleshow/common/enums/CacheNameEnum.java

@@ -23,9 +23,9 @@ public enum CacheNameEnum implements BaseEnum<String, CacheNameEnum> {
     LOCK_EXECUTE_ORDER("用户下单/付款/取消订单锁"),
     LOCK_RECORD_ACCOUNT("账户记录锁"),
     LOCK_CHANGE_ACCOUNT("账户变更锁"),
+    LOCK_CHANGE_PIANO_ROOM_ACCOUNT("琴房账户变更锁"),
     LOCK_WITHDRAWAL("锁用户结算"),
 
-
     ;
     /***
      * 缓存描述

+ 5 - 1
audio-analysis/src/main/java/com/yonge/netty/dto/HardLevelEnum.java → cooleshow-common/src/main/java/com/yonge/cooleshow/common/enums/HardLevelEnum.java

@@ -1,5 +1,6 @@
-package com.yonge.netty.dto;
+package com.yonge.cooleshow.common.enums;
 
+import com.baomidou.mybatisplus.annotation.EnumValue;
 import com.yonge.toolset.base.enums.BaseEnum;
 
 public enum HardLevelEnum implements BaseEnum<String, HardLevelEnum> {
@@ -23,6 +24,8 @@ public enum HardLevelEnum implements BaseEnum<String, HardLevelEnum> {
 	 * 完成度范围, 未演奏的范围
 	 */
 	PERFORMER("大师级", 3, 5, 10, 13, 15, 95, 10);
+	@EnumValue
+	private String code;
 
 	private String msg;
 
@@ -55,6 +58,7 @@ public enum HardLevelEnum implements BaseEnum<String, HardLevelEnum> {
 	HardLevelEnum(String msg, int amplitudeThreshold, int tempoEffectiveRangeOf1, int tempoEffectiveRangeOf2,
 			int tempoEffectiveRangeOf4, int tempoEffectiveRangeOf8, int integrityRange,
 			int notPlayRange) {
+		this.code = this.name();
 		this.msg = msg;
 		this.amplitudeThreshold = amplitudeThreshold;
 		this.tempoEffectiveRangeOf1 = tempoEffectiveRangeOf1;

+ 35 - 0
cooleshow-common/src/main/java/com/yonge/cooleshow/common/enums/RegistrationMethodEnum.java

@@ -0,0 +1,35 @@
+package com.yonge.cooleshow.common.enums;
+
+import com.baomidou.mybatisplus.annotation.EnumValue;
+import com.yonge.toolset.base.enums.BaseEnum;
+
+/**
+ * 报名方式 FREE 免费 CHARGE 收费
+ *
+ * @Author: liweifan
+ * @Data: 2022/4/7 15:48
+ */
+public enum RegistrationMethodEnum implements BaseEnum<String, RegistrationMethodEnum> {
+
+    FREE("免费"),
+    CHARGE("收费")
+    ;
+
+    @EnumValue
+    private String code;
+    private String msg;
+
+    RegistrationMethodEnum(String msg) {
+        this.code = this.name();
+        this.msg = msg;
+    }
+
+    @Override
+    public String getCode() {
+        return this.code;
+    }
+
+    public String getMsg() {
+        return msg;
+    }
+}

+ 8 - 3
cooleshow-mall/mall-portal/src/main/java/com/yonge/cooleshow/portal/controller/PaymentController.java

@@ -176,10 +176,15 @@ public class PaymentController extends BaseController {
                     }
                 }
             }
-            if (MethodNameEnum.refundPayment.equals(data.getMethodName())) {
-                //退款
-                portalOrderReturnApplyService.refundPaymentCallBack(data);
+            try {
+                if (MethodNameEnum.refundPayment.equals(data.getMethodName())) {
+                    //退款
+                    portalOrderReturnApplyService.refundPaymentCallBack(data);
+                }
+            } catch (Exception e) {
+                e.printStackTrace();
             }
+
         }
         return res.getData().getResMsg();
     }

+ 60 - 0
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/ActivityEvaluationController.java

@@ -0,0 +1,60 @@
+package com.yonge.cooleshow.admin.controller;
+
+import com.yonge.cooleshow.biz.dal.dto.ActivityEvaluationDto;
+import com.yonge.cooleshow.common.controller.BaseController;
+import com.yonge.cooleshow.common.entity.HttpResponseResult;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.yonge.toolset.base.page.PageInfo;
+import com.yonge.toolset.mybatis.support.PageUtil;
+
+import com.yonge.toolset.base.util.StringUtil;
+import io.swagger.annotations.*;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+
+import com.yonge.cooleshow.biz.dal.vo.ActivityEvaluationVo;
+import com.yonge.cooleshow.biz.dal.dto.search.ActivityEvaluationSearch;
+import com.yonge.cooleshow.biz.dal.entity.ActivityEvaluation;
+import com.yonge.cooleshow.biz.dal.service.ActivityEvaluationService;
+
+@RestController
+@RequestMapping("/activityEvaluation")
+@Api(value = "评测活动表", tags = "评测活动表")
+public class ActivityEvaluationController extends BaseController {
+
+    @Autowired
+    private ActivityEvaluationService activityEvaluationService;
+    
+    /**
+     * 查询分页
+     */
+    @PostMapping("/page")
+    @ApiOperation(value = "查询分页", notes = "传入activityEvaluationSearch")
+    public HttpResponseResult<PageInfo<ActivityEvaluationVo>> page(@RequestBody ActivityEvaluationSearch query) {
+		IPage<ActivityEvaluationVo> pages = activityEvaluationService.selectPage(PageUtil.getPage(query), query);
+        return succeed(PageUtil.pageInfo(pages));
+	}
+    
+    /**
+	 * 批量增加曲目
+	 */
+	@PostMapping("/addBatch")
+	@ApiOperation(value = "批量增加曲目")
+	public HttpResponseResult addBatch(@Valid @RequestBody ActivityEvaluationDto param) {
+    	return status(activityEvaluationService.addBatch(param));
+	}
+
+ 	/**
+	 * 删除
+	 */
+	@PostMapping("/remove")
+	@ApiOperation(value = "删除", notes = "传入ids")
+	public HttpResponseResult remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+        if (StringUtil.isEmpty(ids)) {
+			return failed("参数不能为空");
+		}
+		return status(activityEvaluationService.removeByIds(StringUtil.toLongList(ids)));
+	}
+}

+ 86 - 0
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/ActivityEvaluationRecordController.java

@@ -0,0 +1,86 @@
+package com.yonge.cooleshow.admin.controller;
+
+import com.yonge.cooleshow.common.controller.BaseController;
+import com.yonge.cooleshow.common.entity.HttpResponseResult;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.yonge.toolset.base.page.PageInfo;
+import com.yonge.toolset.mybatis.support.PageUtil;
+
+import com.yonge.toolset.base.util.StringUtil;
+import io.swagger.annotations.*;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+
+import com.yonge.cooleshow.biz.dal.vo.ActivityEvaluationRecordVo;
+import com.yonge.cooleshow.biz.dal.dto.search.ActivityEvaluationRecordSearch;
+import com.yonge.cooleshow.biz.dal.entity.ActivityEvaluationRecord;
+import com.yonge.cooleshow.biz.dal.service.ActivityEvaluationRecordService;
+
+@RestController
+@RequestMapping("/activityEvaluationRecord")
+@Api(value = "评测活动参与记录表", tags = "评测活动参与记录表")
+public class ActivityEvaluationRecordController extends BaseController {
+
+    @Autowired
+    private ActivityEvaluationRecordService activityEvaluationRecordService;
+
+	/**
+     * 查询单条
+     */
+    @GetMapping("/detail/{id}")
+    @ApiOperation(value = "详情", notes = "传入id")
+    public HttpResponseResult<ActivityEvaluationRecordVo> detail(@PathVariable("id") Long id) {
+    	return succeed(activityEvaluationRecordService.detail(id));
+	}
+    
+    /**
+     * 查询分页
+     */
+    @PostMapping("/page")
+    @ApiOperation(value = "查询分页", notes = "传入activityEvaluationRecordSearch")
+    public HttpResponseResult<PageInfo<ActivityEvaluationRecordVo>> page(@RequestBody ActivityEvaluationRecordSearch query) {
+		IPage<ActivityEvaluationRecordVo> pages = activityEvaluationRecordService.selectPage(PageUtil.getPage(query), query);
+        return succeed(PageUtil.pageInfo(pages));
+	}
+    
+    /**
+	 * 新增
+	 */
+	@PostMapping("/save")
+	@ApiOperation(value = "新增", notes = "传入activityEvaluationRecord")
+	public HttpResponseResult save(@Valid @RequestBody ActivityEvaluationRecord activityEvaluationRecord) {
+    	return status(activityEvaluationRecordService.save(activityEvaluationRecord));
+	}
+    
+    /**
+	 * 修改
+	 */
+	@PostMapping("/update")
+	@ApiOperation(value = "修改", notes = "传入activityEvaluationRecord")
+	public HttpResponseResult update(@Valid @RequestBody ActivityEvaluationRecord activityEvaluationRecord) {
+        return status(activityEvaluationRecordService.updateById(activityEvaluationRecord));
+	}
+    
+    /**
+	 * 新增或修改
+	 */
+    @PostMapping("/submit")
+    @ApiOperation(value = "新增或修改", notes = "传入activityEvaluationRecord")
+	public HttpResponseResult submit(@Valid @RequestBody ActivityEvaluationRecord activityEvaluationRecord) {
+        return status(activityEvaluationRecordService.saveOrUpdate(activityEvaluationRecord));
+    }
+
+ 	/**
+	 * 删除
+	 */
+	@PostMapping("/remove")
+	@ApiOperation(value = "删除", notes = "传入ids")
+	public HttpResponseResult remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+        if (StringUtil.isEmpty(ids)) {
+			return failed("参数不能为空");
+		}
+		return status(activityEvaluationRecordService.removeByIds(StringUtil.toLongList(ids)));
+	}
+}

+ 83 - 0
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/ActivityPlanController.java

@@ -0,0 +1,83 @@
+package com.yonge.cooleshow.admin.controller;
+
+import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
+import com.yonge.cooleshow.auth.api.entity.SysUser;
+import com.yonge.cooleshow.biz.dal.dto.ActivityPlanDto;
+import com.yonge.cooleshow.common.controller.BaseController;
+import com.yonge.cooleshow.common.entity.HttpResponseResult;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.yonge.toolset.base.page.PageInfo;
+import com.yonge.toolset.mybatis.support.PageUtil;
+
+import com.yonge.toolset.base.util.StringUtil;
+import io.swagger.annotations.*;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
+import org.springframework.web.bind.annotation.*;
+
+import javax.annotation.Resource;
+import javax.validation.Valid;
+
+import com.yonge.cooleshow.biz.dal.vo.ActivityPlanVo;
+import com.yonge.cooleshow.biz.dal.dto.search.ActivityPlanSearch;
+import com.yonge.cooleshow.biz.dal.entity.ActivityPlan;
+import com.yonge.cooleshow.biz.dal.service.ActivityPlanService;
+
+@RestController
+@RequestMapping("/activityPlan")
+@Api(value = "活动计划表", tags = "活动计划表")
+public class ActivityPlanController extends BaseController {
+
+    @Autowired
+    private ActivityPlanService activityPlanService;
+
+    @Resource
+    private SysUserFeignService sysUserFeignService;
+
+    /**
+     * 查询单条
+     */
+    @GetMapping("/detail/{id}")
+    @ApiOperation(value = "详情", notes = "传入id")
+    public HttpResponseResult<ActivityPlanVo> detail(@PathVariable("id") Long id) {
+        return succeed(activityPlanService.detail(id));
+    }
+
+    /**
+     * 查询分页
+     */
+    @PostMapping("/page")
+    @ApiOperation(value = "查询分页", notes = "传入activityPlanSearch")
+    public HttpResponseResult<PageInfo<ActivityPlanVo>> page(@RequestBody ActivityPlanSearch query) {
+        IPage<ActivityPlanVo> pages = activityPlanService.selectPage(PageUtil.getPage(query), query);
+        return succeed(PageUtil.pageInfo(pages));
+    }
+
+    /**
+     * 新增或修改
+     */
+    @PostMapping("/submit")
+    @ApiOperation(value = "新增或修改", notes = "传入activityPlan")
+    public HttpResponseResult submit(@Valid @RequestBody ActivityPlanDto activityPlan) {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        return status(activityPlanService.submit(activityPlan, user));
+    }
+
+    /**
+     * 启用/停用
+     */
+    @GetMapping("/updateActivityState")
+    @ApiOperation(value = "启用/停用")
+    public HttpResponseResult updateActivityState(
+            @ApiParam(value = "活动id", required = true) @RequestParam("activityId") Long activityId,
+            @ApiParam(value = "活动状态 0 停用 1 启用", required = true) @RequestParam("activityState") Integer activityState) {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        return status(activityPlanService.updateActivityState(activityId, activityState, user.getId()));
+    }
+}

+ 86 - 0
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/ActivityRegistrationController.java

@@ -0,0 +1,86 @@
+package com.yonge.cooleshow.admin.controller;
+
+import com.yonge.cooleshow.common.controller.BaseController;
+import com.yonge.cooleshow.common.entity.HttpResponseResult;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.yonge.toolset.base.page.PageInfo;
+import com.yonge.toolset.mybatis.support.PageUtil;
+
+import com.yonge.toolset.base.util.StringUtil;
+import io.swagger.annotations.*;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+
+import com.yonge.cooleshow.biz.dal.vo.ActivityRegistrationVo;
+import com.yonge.cooleshow.biz.dal.dto.search.ActivityRegistrationSearch;
+import com.yonge.cooleshow.biz.dal.entity.ActivityRegistration;
+import com.yonge.cooleshow.biz.dal.service.ActivityRegistrationService;
+
+@RestController
+@RequestMapping("/activityRegistration")
+@Api(value = "活动报名表", tags = "活动报名表")
+public class ActivityRegistrationController extends BaseController {
+
+    @Autowired
+    private ActivityRegistrationService activityRegistrationService;
+
+	/**
+     * 查询单条
+     */
+    @GetMapping("/detail/{id}")
+    @ApiOperation(value = "详情", notes = "传入id")
+    public HttpResponseResult<ActivityRegistrationVo> detail(@PathVariable("id") Long id) {
+    	return succeed(activityRegistrationService.detail(id));
+	}
+    
+    /**
+     * 查询分页
+     */
+    @PostMapping("/page")
+    @ApiOperation(value = "查询分页", notes = "传入activityRegistrationSearch")
+    public HttpResponseResult<PageInfo<ActivityRegistrationVo>> page(@RequestBody ActivityRegistrationSearch query) {
+		IPage<ActivityRegistrationVo> pages = activityRegistrationService.selectPage(PageUtil.getPage(query), query);
+        return succeed(PageUtil.pageInfo(pages));
+	}
+    
+    /**
+	 * 新增
+	 */
+	@PostMapping("/save")
+	@ApiOperation(value = "新增", notes = "传入activityRegistration")
+	public HttpResponseResult save(@Valid @RequestBody ActivityRegistration activityRegistration) {
+    	return status(activityRegistrationService.save(activityRegistration));
+	}
+    
+    /**
+	 * 修改
+	 */
+	@PostMapping("/update")
+	@ApiOperation(value = "修改", notes = "传入activityRegistration")
+	public HttpResponseResult update(@Valid @RequestBody ActivityRegistration activityRegistration) {
+        return status(activityRegistrationService.updateById(activityRegistration));
+	}
+    
+    /**
+	 * 新增或修改
+	 */
+    @PostMapping("/submit")
+    @ApiOperation(value = "新增或修改", notes = "传入activityRegistration")
+	public HttpResponseResult submit(@Valid @RequestBody ActivityRegistration activityRegistration) {
+        return status(activityRegistrationService.saveOrUpdate(activityRegistration));
+    }
+
+ 	/**
+	 * 删除
+	 */
+	@PostMapping("/remove")
+	@ApiOperation(value = "删除", notes = "传入ids")
+	public HttpResponseResult remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+        if (StringUtil.isEmpty(ids)) {
+			return failed("参数不能为空");
+		}
+		return status(activityRegistrationService.removeByIds(StringUtil.toLongList(ids)));
+	}
+}

+ 86 - 0
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/ActivityRewardController.java

@@ -0,0 +1,86 @@
+package com.yonge.cooleshow.admin.controller;
+
+import com.yonge.cooleshow.common.controller.BaseController;
+import com.yonge.cooleshow.common.entity.HttpResponseResult;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.yonge.toolset.base.page.PageInfo;
+import com.yonge.toolset.mybatis.support.PageUtil;
+
+import com.yonge.toolset.base.util.StringUtil;
+import io.swagger.annotations.*;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+
+import com.yonge.cooleshow.biz.dal.vo.ActivityRewardVo;
+import com.yonge.cooleshow.biz.dal.dto.search.ActivityRewardSearch;
+import com.yonge.cooleshow.biz.dal.entity.ActivityReward;
+import com.yonge.cooleshow.biz.dal.service.ActivityRewardService;
+
+@RestController
+@RequestMapping("/activityReward")
+@Api(value = "活动奖品表", tags = "活动奖品表")
+public class ActivityRewardController extends BaseController {
+
+    @Autowired
+    private ActivityRewardService activityRewardService;
+
+	/**
+     * 查询单条
+     */
+    @GetMapping("/detail/{id}")
+    @ApiOperation(value = "详情", notes = "传入id")
+    public HttpResponseResult<ActivityRewardVo> detail(@PathVariable("id") Long id) {
+    	return succeed(activityRewardService.detail(id));
+	}
+    
+    /**
+     * 查询分页
+     */
+    @PostMapping("/page")
+    @ApiOperation(value = "查询分页", notes = "传入activityRewardSearch")
+    public HttpResponseResult<PageInfo<ActivityRewardVo>> page(@RequestBody ActivityRewardSearch query) {
+		IPage<ActivityRewardVo> pages = activityRewardService.selectPage(PageUtil.getPage(query), query);
+        return succeed(PageUtil.pageInfo(pages));
+	}
+    
+    /**
+	 * 新增
+	 */
+	@PostMapping("/save")
+	@ApiOperation(value = "新增", notes = "传入activityReward")
+	public HttpResponseResult save(@Valid @RequestBody ActivityReward activityReward) {
+    	return status(activityRewardService.save(activityReward));
+	}
+    
+    /**
+	 * 修改
+	 */
+	@PostMapping("/update")
+	@ApiOperation(value = "修改", notes = "传入activityReward")
+	public HttpResponseResult update(@Valid @RequestBody ActivityReward activityReward) {
+        return status(activityRewardService.updateById(activityReward));
+	}
+    
+    /**
+	 * 新增或修改
+	 */
+    @PostMapping("/submit")
+    @ApiOperation(value = "新增或修改", notes = "传入activityReward")
+	public HttpResponseResult submit(@Valid @RequestBody ActivityReward activityReward) {
+        return status(activityRewardService.saveOrUpdate(activityReward));
+    }
+
+ 	/**
+	 * 删除
+	 */
+	@PostMapping("/remove")
+	@ApiOperation(value = "删除", notes = "传入ids")
+	public HttpResponseResult remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+        if (StringUtil.isEmpty(ids)) {
+			return failed("参数不能为空");
+		}
+		return status(activityRewardService.removeByIds(StringUtil.toLongList(ids)));
+	}
+}

+ 86 - 0
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/ActivityUserRewardController.java

@@ -0,0 +1,86 @@
+package com.yonge.cooleshow.admin.controller;
+
+import com.yonge.cooleshow.common.controller.BaseController;
+import com.yonge.cooleshow.common.entity.HttpResponseResult;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.yonge.toolset.base.page.PageInfo;
+import com.yonge.toolset.mybatis.support.PageUtil;
+
+import com.yonge.toolset.base.util.StringUtil;
+import io.swagger.annotations.*;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+
+import com.yonge.cooleshow.biz.dal.vo.ActivityUserRewardVo;
+import com.yonge.cooleshow.biz.dal.dto.search.ActivityUserRewardSearch;
+import com.yonge.cooleshow.biz.dal.entity.ActivityUserReward;
+import com.yonge.cooleshow.biz.dal.service.ActivityUserRewardService;
+
+@RestController
+@RequestMapping("/activityUserReward")
+@Api(value = "活动用户获奖表", tags = "活动用户获奖表")
+public class ActivityUserRewardController extends BaseController {
+
+    @Autowired
+    private ActivityUserRewardService activityUserRewardService;
+
+	/**
+     * 查询单条
+     */
+    @GetMapping("/detail/{id}")
+    @ApiOperation(value = "详情", notes = "传入id")
+    public HttpResponseResult<ActivityUserRewardVo> detail(@PathVariable("id") Long id) {
+    	return succeed(activityUserRewardService.detail(id));
+	}
+    
+    /**
+     * 查询分页
+     */
+    @PostMapping("/page")
+    @ApiOperation(value = "查询分页", notes = "传入activityUserRewardSearch")
+    public HttpResponseResult<PageInfo<ActivityUserRewardVo>> page(@RequestBody ActivityUserRewardSearch query) {
+		IPage<ActivityUserRewardVo> pages = activityUserRewardService.selectPage(PageUtil.getPage(query), query);
+        return succeed(PageUtil.pageInfo(pages));
+	}
+    
+    /**
+	 * 新增
+	 */
+	@PostMapping("/save")
+	@ApiOperation(value = "新增", notes = "传入activityUserReward")
+	public HttpResponseResult save(@Valid @RequestBody ActivityUserReward activityUserReward) {
+    	return status(activityUserRewardService.save(activityUserReward));
+	}
+    
+    /**
+	 * 修改
+	 */
+	@PostMapping("/update")
+	@ApiOperation(value = "修改", notes = "传入activityUserReward")
+	public HttpResponseResult update(@Valid @RequestBody ActivityUserReward activityUserReward) {
+        return status(activityUserRewardService.updateById(activityUserReward));
+	}
+    
+    /**
+	 * 新增或修改
+	 */
+    @PostMapping("/submit")
+    @ApiOperation(value = "新增或修改", notes = "传入activityUserReward")
+	public HttpResponseResult submit(@Valid @RequestBody ActivityUserReward activityUserReward) {
+        return status(activityUserRewardService.saveOrUpdate(activityUserReward));
+    }
+
+ 	/**
+	 * 删除
+	 */
+	@PostMapping("/remove")
+	@ApiOperation(value = "删除", notes = "传入ids")
+	public HttpResponseResult remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+        if (StringUtil.isEmpty(ids)) {
+			return failed("参数不能为空");
+		}
+		return status(activityUserRewardService.removeByIds(StringUtil.toLongList(ids)));
+	}
+}

+ 17 - 0
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/AdminCourseGroupController.java

@@ -3,6 +3,7 @@ package com.yonge.cooleshow.admin.controller;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
 import com.yonge.cooleshow.auth.api.entity.SysUser;
+import com.yonge.cooleshow.biz.dal.dto.LiveSaleOutDto;
 import com.yonge.cooleshow.biz.dal.dto.search.LiveCourseGroupSearch;
 import com.yonge.cooleshow.biz.dal.dto.search.LiveCourseGroupStudentCourseSearch;
 import com.yonge.cooleshow.biz.dal.dto.search.LiveCourseGroupStudentSearch;
@@ -92,6 +93,22 @@ public class AdminCourseGroupController extends BaseController {
     }
 
 
+    @ApiOperation(value = "直播课下架")
+    @PostMapping(value="/live/saleOut")
+    public HttpResponseResult<Boolean> liveSaleOut(@RequestBody @Valid LiveSaleOutDto dto) {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if (sysUser == null || sysUser.getId() == null) {
+            return failed("用户信息获取失败");
+        }
+        if (dto.getCourseGroupId() == null) {
+            return failed("课程组id不能为空");
+        }
+
+        return succeed(courseGroupService.liveSaleOut(dto));
+    }
+
+
+
     @ApiOperation(value = "老师详情-直播课购买学员信息", httpMethod="POST", consumes="application/json", produces="application/json")
     @PostMapping(value="/live/student", consumes="application/json", produces="application/json")
     public HttpResponseResult<PageInfo<LiveCourseGroupStudentVo>> student(@Valid @RequestBody LiveCourseGroupStudentSearch query) {

+ 1 - 1
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/CourseScheduleRepliedController.java

@@ -76,7 +76,7 @@ public class CourseScheduleRepliedController extends BaseController {
 	 * 删除
 	 */
 	@PostMapping("/remove")
-	@ApiOperation(value = "逻辑删除", notes = "传入ids")
+	@ApiOperation(value = "删除", notes = "传入ids")
 	public HttpResponseResult remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
         if (StringUtil.isEmpty(ids)) {
 			return failed("参数不能为空");

+ 4 - 3
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/MusicAlbumController.java

@@ -17,6 +17,7 @@ import com.yonge.cooleshow.common.entity.HttpResponseResult;
 import com.yonge.toolset.base.page.PageInfo;
 import com.yonge.toolset.base.util.StringUtil;
 import io.swagger.annotations.*;
+import org.apache.commons.collections.CollectionUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.*;
@@ -176,10 +177,10 @@ public class MusicAlbumController extends BaseController {
         if (StringUtil.isEmpty(query.getAlbumId())) {
             return failed("专辑编号ID不能为空");
         }
-        if (StringUtil.isEmpty(query.getMusicSheetIds())) {
-            return failed("曲目编号不能为空");
+        if (CollectionUtils.isEmpty(query.getAlbumMusicList())) {
+            return failed("曲目不能为空");
         }
-        return status(musicAlbumService.addMusicSheet(query.getAlbumId(),query.getMusicSheetIds(),sysUser.getId()));
+        return status(musicAlbumService.addMusicSheet(query.getAlbumId(),query.getAlbumMusicList(),sysUser.getId()));
     }
 
 }

+ 25 - 2
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/MusicSheetController.java

@@ -180,11 +180,19 @@ public class MusicSheetController extends BaseController {
     @PostMapping("/state/{id}")
     @ApiOperation(value = "启用/停用", notes = "传入id")
     @PreAuthorize("@pcs.hasPermissions('music/sheet/state')")
-    public HttpResponseResult<Boolean> state(@ApiParam(value = "曲目编号", required = true)  @PathVariable Long id) {
+    public HttpResponseResult<Boolean> state(@ApiParam(value = "曲目编号", required = true)  @PathVariable Long id, String reason) {
         if (StringUtil.isEmpty(id)) {
             return failed("参数不能为空");
         }
-        return status(musicSheetService.state(id));
+        MusicSheet musicSheet = musicSheetService.getById(id);
+        if (musicSheet == null) {
+            return failed("未找到曲目");
+        }
+        if (YesOrNoEnum.YES.equals(musicSheet.getState()) &&
+                musicSheet.getSourceType().equals(SourceTypeEnum.TEACHER) && StringUtil.isEmpty(reason)) {
+            return failed("请填写下架原因");
+        }
+        return status(musicSheetService.state(id,reason));
     }
 
     /**
@@ -267,4 +275,19 @@ public class MusicSheetController extends BaseController {
         }
     }
 
+
+    /**
+     * 置顶
+     */
+    @PostMapping("/top/{id}")
+    @ApiOperation(value = "置顶曲目", notes = "传入id")
+    @PreAuthorize("@pcs.hasPermissions('music/sheet/top')")
+    public HttpResponseResult<Boolean> top(@ApiParam(value = "曲目编号", required = true)  @PathVariable Long id) {
+        if (StringUtil.isEmpty(id)) {
+            return failed("参数不能为空");
+        }
+        return status(musicSheetService.top(id));
+    }
+
+
 }

+ 1 - 1
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/MusicTagController.java

@@ -98,7 +98,7 @@ public class MusicTagController extends BaseController {
 	 * 删除
 	 */
 	@PostMapping("/remove/{id}")
-	@ApiOperation(value = "逻辑删除", notes = "传入id")
+	@ApiOperation(value = "删除", notes = "传入id")
 	@PreAuthorize("@pcs.hasPermissions('MusicTag/remove')")
 	public HttpResponseResult<Boolean> remove(@ApiParam(value = "标签编号", required = true) @PathVariable Long id) {
         if (StringUtil.isEmpty(id)) {

+ 64 - 0
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/PianoRoomChangeRecordController.java

@@ -0,0 +1,64 @@
+package com.yonge.cooleshow.admin.controller;
+
+import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
+import com.yonge.cooleshow.auth.api.entity.SysUser;
+import com.yonge.cooleshow.common.controller.BaseController;
+import com.yonge.cooleshow.common.entity.HttpResponseResult;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.yonge.toolset.base.page.PageInfo;
+import com.yonge.toolset.mybatis.support.PageUtil;
+
+import io.swagger.annotations.*;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+
+import com.yonge.cooleshow.biz.dal.vo.PianoRoomChangeRecordVo;
+import com.yonge.cooleshow.biz.dal.dto.search.PianoRoomChangeRecordSearch;
+import com.yonge.cooleshow.biz.dal.entity.PianoRoomChangeRecord;
+import com.yonge.cooleshow.biz.dal.service.PianoRoomChangeRecordService;
+
+@RestController
+@RequestMapping("/pianoRoomChangeRecord")
+@Api(value = "琴房时长变更记录表", tags = "琴房时长变更记录表")
+public class PianoRoomChangeRecordController extends BaseController {
+	@Autowired
+	private SysUserFeignService sysUserFeignService;
+    @Autowired
+    private PianoRoomChangeRecordService pianoRoomChangeRecordService;
+
+	/**
+     * 查询单条
+     */
+    @GetMapping("/detail/{id}")
+    @ApiOperation(value = "详情", notes = "传入id")
+    public HttpResponseResult<PianoRoomChangeRecordVo> detail(@PathVariable("id") Long id) {
+    	return succeed(pianoRoomChangeRecordService.detail(id));
+	}
+    
+    /**
+     * 查询分页
+     */
+    @PostMapping("/page")
+    @ApiOperation(value = "查询分页", notes = "传入pianoRoomChangeRecordSearch")
+    public HttpResponseResult<PageInfo<PianoRoomChangeRecordVo>> page(@RequestBody PianoRoomChangeRecordSearch query) {
+		IPage<PianoRoomChangeRecordVo> pages = pianoRoomChangeRecordService.selectPage(PageUtil.getPage(query), query);
+        return succeed(PageUtil.pageInfo(pages));
+	}
+    
+    /**
+	 * 新增
+	 */
+	@PostMapping("/add")
+	@ApiOperation(value = "新增", notes = "传入pianoRoomChangeRecord")
+	public HttpResponseResult add(@Valid @RequestBody PianoRoomChangeRecord pianoRoomChangeRecord) {
+		SysUser user = sysUserFeignService.queryUserInfo();
+		if (user == null || null == user.getId()) {
+			return failed(HttpStatus.FORBIDDEN, "请登录");
+		}
+		pianoRoomChangeRecord.setCreateBy(user.getId());
+    	return status(pianoRoomChangeRecordService.add(pianoRoomChangeRecord));
+	}
+}

+ 1 - 1
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/PianoRoomSettingsController.java

@@ -103,7 +103,7 @@ public class PianoRoomSettingsController extends BaseController {
      * 删除
      */
     @PostMapping("/remove")
-    @ApiOperation(value = "逻辑删除", notes = "传入ids")
+    @ApiOperation(value = "删除", notes = "传入ids")
     public HttpResponseResult remove(@ApiParam(value = "主键集合(多个id,分割)", required = true) @RequestParam String ids) {
         if (StringUtil.isEmpty(ids)) {
             return failed("参数不能为空");

+ 1 - 1
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/StudentAttendanceController.java

@@ -76,7 +76,7 @@ public class StudentAttendanceController extends BaseController {
 	 * 删除
 	 */
 	@PostMapping("/remove")
-	@ApiOperation(value = "逻辑删除", notes = "传入ids")
+	@ApiOperation(value = "删除", notes = "传入ids")
 	public HttpResponseResult remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
         if (StringUtil.isEmpty(ids)) {
 			return failed("参数不能为空");

+ 1 - 1
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/StudentCourseHomeworkController.java

@@ -76,7 +76,7 @@ public class StudentCourseHomeworkController extends BaseController {
 	 * 删除
 	 */
 	@PostMapping("/remove")
-	@ApiOperation(value = "逻辑删除", notes = "传入ids")
+	@ApiOperation(value = "删除", notes = "传入ids")
 	public HttpResponseResult remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
         if (StringUtil.isEmpty(ids)) {
 			return failed("参数不能为空");

+ 19 - 0
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/VideoLessonController.java

@@ -24,6 +24,7 @@ import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
 import javax.validation.constraints.NotNull;
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -134,6 +135,24 @@ public class VideoLessonController extends BaseController {
         return succeed();
     }
 
+    /**
+     * @Description: 更新上架状态
+     * @Author: cy
+     * @Date: 2022/4/25
+     */
+    @ApiOperation(value = "更新上架状态", httpMethod = "POST", consumes = "application/json", produces = "application/json")
+    @PostMapping(value = "/updateShelves", consumes = "application/json", produces = "application/json")
+    public HttpResponseResult<Object> updateShelves(@Validated @RequestBody VideoLessonShelvesVo shelvesVo) {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        shelvesVo.setShelvesId(user.getId());
+        shelvesVo.setShelvesTime(new Date());
+        lessonGroupService.updateShelves(shelvesVo);
+        return succeed();
+    }
+
     @ApiOperation(value = "首页-视频课统计")
     @GetMapping("/countVideoGroup")
     public HttpResponseResult<CountVideoGroupVo> countVideoGroup() {

+ 59 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/ActivityEvaluationDao.java

@@ -0,0 +1,59 @@
+package com.yonge.cooleshow.biz.dal.dao;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.yonge.cooleshow.biz.dal.vo.ActivityMusicVo;
+import org.apache.ibatis.annotations.Param;
+import com.yonge.cooleshow.biz.dal.entity.ActivityEvaluation;
+import com.yonge.cooleshow.biz.dal.vo.ActivityEvaluationVo;
+import com.yonge.cooleshow.biz.dal.dto.search.ActivityEvaluationSearch;
+
+
+public interface ActivityEvaluationDao extends BaseMapper<ActivityEvaluation> {
+    /**
+     * 查询详情
+     *
+     * @author liweifan
+     * @date 2022-08-04 10:19:49
+     * @return: com.yonge.cooleshow.biz.dal.vo.ActivityEvaluationVo
+     */
+    ActivityEvaluationVo detail(@Param("id") Long id);
+    /**
+     * 分页查询
+     *
+     * @author liweifan
+     * @date 2022-08-04 10:19:49
+     * @return: com.yonge.cooleshow.biz.dal.vo.ActivityEvaluationVo
+     */
+    List<ActivityEvaluationVo> selectPage(@Param("page") IPage page, @Param("param") ActivityEvaluationSearch activityEvaluation);
+
+    List<Long> selectUnjoinMusicIds(@Param("activityId") Long activityId, @Param("musicSheetIds") List<Long> musicSheetIds);
+
+    /**
+     * 批量给活动添加曲目
+     *
+     * @param activityId
+     * @param musicSheetIds
+     * @return
+     */
+    Integer addBatch(@Param("activityId") Long activityId, @Param("musicSheetIds") List<Long> musicSheetIds);
+
+	/**
+	 * 获取活动曲目信息
+	 *
+	 * @param activityPlanId 活动id
+	 * @param userId         用户id
+	 * @return
+	 */
+    List<ActivityMusicVo> selectActivityMusic(@Param("activityPlanId") Long activityPlanId, @Param("userId") Long userId);
+
+	/**
+	 * 获取活动排名用户信息
+	 *
+	 * @param activityPlanId 活动id
+	 * @return
+	 */
+	List<ActivityMusicVo> selectActivityUser(@Param("activityPlanId") Long activityPlanId);
+}

+ 38 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/ActivityEvaluationRecordDao.java

@@ -0,0 +1,38 @@
+package com.yonge.cooleshow.biz.dal.dao;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import com.yonge.cooleshow.biz.dal.entity.ActivityEvaluationRecord;
+import com.yonge.cooleshow.biz.dal.vo.ActivityEvaluationRecordVo;
+import com.yonge.cooleshow.biz.dal.dto.search.ActivityEvaluationRecordSearch;
+
+
+public interface ActivityEvaluationRecordDao extends BaseMapper<ActivityEvaluationRecord>{
+	/**
+	 * 查询详情
+     * @author liweifan
+     * @date 2022-08-04 10:19:49
+     * @return: com.yonge.cooleshow.biz.dal.vo.ActivityEvaluationRecordVo
+	 */
+	ActivityEvaluationRecordVo detail(@Param("id") Long id);
+
+	/**
+	 * 分页查询
+     * @author liweifan
+     * @date 2022-08-04 10:19:49
+     * @return: com.yonge.cooleshow.biz.dal.vo.ActivityEvaluationRecordVo
+	 */
+	List<ActivityEvaluationRecordVo> selectPage(@Param("page") IPage page, @Param("param") ActivityEvaluationRecordSearch activityEvaluationRecord);
+
+	/**
+	 * 获取参与 的活动项目id集合
+	 *
+	 * @param userId     用户id
+	 * @param activityId 活动id
+	 * @return
+	 */
+    List<Long> getJoinEvaluationIdList(@Param("activityId") Long activityId, @Param("userId") Long userId);
+}

+ 39 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/ActivityPlanDao.java

@@ -0,0 +1,39 @@
+package com.yonge.cooleshow.biz.dal.dao;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import com.yonge.cooleshow.biz.dal.entity.ActivityPlan;
+import com.yonge.cooleshow.biz.dal.vo.ActivityPlanVo;
+import com.yonge.cooleshow.biz.dal.dto.search.ActivityPlanSearch;
+
+
+public interface ActivityPlanDao extends BaseMapper<ActivityPlan> {
+	/**
+	 * 查询详情
+	 *
+	 * @author liweifan
+	 * @date 2022-08-04 10:19:49
+	 * @return: com.yonge.cooleshow.biz.dal.vo.ActivityPlanVo
+	 */
+	ActivityPlanVo detail(@Param("id") Long id);
+
+	/**
+	 * 分页查询
+	 *
+	 * @author liweifan
+	 * @date 2022-08-04 10:19:49
+	 * @return: com.yonge.cooleshow.biz.dal.vo.ActivityPlanVo
+	 */
+	List<ActivityPlanVo> selectPage(@Param("page") IPage page, @Param("param") ActivityPlanSearch activityPlan);
+
+	/**
+	 * 评测活动 活动难度
+	 *
+	 * @param activityPlanId 活动id
+	 * @return
+	 */
+	String selectActivityPlanEvaluation(@Param("activityPlanId") Long activityPlanId);
+}

+ 8 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/ActivityPlanEvaluationDao.java

@@ -0,0 +1,8 @@
+package com.yonge.cooleshow.biz.dal.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.yonge.cooleshow.biz.dal.entity.ActivityPlanEvaluation;
+
+
+public interface ActivityPlanEvaluationDao extends BaseMapper<ActivityPlanEvaluation>{
+}

+ 30 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/ActivityRegistrationDao.java

@@ -0,0 +1,30 @@
+package com.yonge.cooleshow.biz.dal.dao;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import com.yonge.cooleshow.biz.dal.entity.ActivityRegistration;
+import com.yonge.cooleshow.biz.dal.vo.ActivityRegistrationVo;
+import com.yonge.cooleshow.biz.dal.dto.search.ActivityRegistrationSearch;
+
+
+public interface ActivityRegistrationDao extends BaseMapper<ActivityRegistration>{
+	/**
+	 * 查询详情
+     * @author liweifan
+     * @date 2022-08-04 10:19:49
+     * @return: com.yonge.cooleshow.biz.dal.vo.ActivityRegistrationVo
+	 */
+	ActivityRegistrationVo detail(@Param("id") Long id);
+
+	/**
+	 * 分页查询
+     * @author liweifan
+     * @date 2022-08-04 10:19:49
+     * @return: com.yonge.cooleshow.biz.dal.vo.ActivityRegistrationVo
+	 */
+	List<ActivityRegistrationVo> selectPage(@Param("page") IPage page, @Param("param") ActivityRegistrationSearch activityRegistration);
+	
+}

+ 30 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/ActivityRewardDao.java

@@ -0,0 +1,30 @@
+package com.yonge.cooleshow.biz.dal.dao;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import com.yonge.cooleshow.biz.dal.entity.ActivityReward;
+import com.yonge.cooleshow.biz.dal.vo.ActivityRewardVo;
+import com.yonge.cooleshow.biz.dal.dto.search.ActivityRewardSearch;
+
+
+public interface ActivityRewardDao extends BaseMapper<ActivityReward>{
+	/**
+	 * 查询详情
+     * @author liweifan
+     * @date 2022-08-04 10:19:49
+     * @return: com.yonge.cooleshow.biz.dal.vo.ActivityRewardVo
+	 */
+	ActivityRewardVo detail(@Param("id") Long id);
+
+	/**
+	 * 分页查询
+     * @author liweifan
+     * @date 2022-08-04 10:19:49
+     * @return: com.yonge.cooleshow.biz.dal.vo.ActivityRewardVo
+	 */
+	List<ActivityRewardVo> selectPage(@Param("page") IPage page, @Param("param") ActivityRewardSearch activityReward);
+	
+}

+ 30 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/ActivityUserRewardDao.java

@@ -0,0 +1,30 @@
+package com.yonge.cooleshow.biz.dal.dao;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import com.yonge.cooleshow.biz.dal.entity.ActivityUserReward;
+import com.yonge.cooleshow.biz.dal.vo.ActivityUserRewardVo;
+import com.yonge.cooleshow.biz.dal.dto.search.ActivityUserRewardSearch;
+
+
+public interface ActivityUserRewardDao extends BaseMapper<ActivityUserReward>{
+	/**
+	 * 查询详情
+     * @author liweifan
+     * @date 2022-08-04 10:19:49
+     * @return: com.yonge.cooleshow.biz.dal.vo.ActivityUserRewardVo
+	 */
+	ActivityUserRewardVo detail(@Param("id") Long id);
+
+	/**
+	 * 分页查询
+     * @author liweifan
+     * @date 2022-08-04 10:19:49
+     * @return: com.yonge.cooleshow.biz.dal.vo.ActivityUserRewardVo
+	 */
+	List<ActivityUserRewardVo> selectPage(@Param("page") IPage page, @Param("param") ActivityUserRewardSearch activityUserReward);
+	
+}

+ 0 - 19
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/CourseScheduleStudentDao.java

@@ -1,19 +0,0 @@
-//package com.yonge.cooleshow.biz.dal.dao;
-//
-//import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-//import com.yonge.cooleshow.biz.dal.entity.CourseScheduleStudent;
-//import com.yonge.cooleshow.biz.dal.vo.CourseScheduleStudentVo;
-//
-//import java.util.List;
-//
-///**
-// * @Author: cy
-// * @Date: 2022/5/27
-// */
-//public interface CourseScheduleStudentDao extends BaseMapper<CourseScheduleStudent> {
-//    //批量添加学员
-//    void insertBatch(List<CourseScheduleStudent> list);
-//
-//    //查询课程对应的老师学员
-//    List<CourseScheduleStudentVo> selectUser();
-//}

+ 30 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/PianoRoomChangeRecordDao.java

@@ -0,0 +1,30 @@
+package com.yonge.cooleshow.biz.dal.dao;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import com.yonge.cooleshow.biz.dal.entity.PianoRoomChangeRecord;
+import com.yonge.cooleshow.biz.dal.vo.PianoRoomChangeRecordVo;
+import com.yonge.cooleshow.biz.dal.dto.search.PianoRoomChangeRecordSearch;
+
+
+public interface PianoRoomChangeRecordDao extends BaseMapper<PianoRoomChangeRecord>{
+	/**
+	 * 查询详情
+     * @author liweifan
+     * @date 2022-08-03 16:44:34
+     * @return: com.yonge.cooleshow.biz.dal.vo.PianoRoomChangeRecordVo
+	 */
+	PianoRoomChangeRecordVo detail(@Param("id") Long id);
+
+	/**
+	 * 分页查询
+     * @author liweifan
+     * @date 2022-08-03 16:44:34
+     * @return: com.yonge.cooleshow.biz.dal.vo.PianoRoomChangeRecordVo
+	 */
+	List<PianoRoomChangeRecordVo> selectPage(@Param("page") IPage page, @Param("param") PianoRoomChangeRecordSearch pianoRoomChangeRecord);
+	
+}

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/PianoRoomSettingsDao.java

@@ -50,7 +50,7 @@ public interface PianoRoomSettingsDao extends BaseMapper<PianoRoomSettings> {
     Integer changeStatus(@Param("id") Long id, @Param("status") Integer status);
 
     /**
-     * 批量逻辑删除
+     * 批量删除
      * @param idList
      * @return
      */

+ 3 - 2
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/StudentDao.java

@@ -5,6 +5,7 @@ import java.util.Map;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.yonge.cooleshow.biz.dal.dto.search.QueryMyFollowSearch;
 import com.yonge.cooleshow.biz.dal.dto.search.StudentSearch;
 import com.yonge.cooleshow.biz.dal.entity.Student;
 import com.yonge.cooleshow.biz.dal.entity.Subject;
@@ -58,9 +59,9 @@ public interface StudentDao extends BaseMapper<Student> {
      * 我的关注
      *
      * @param page
-     * @param studentId
+     * @param query
      * @return
      */
-    List<MyFollow> queryMyFollow(@Param("page") IPage<MyFollow> page, @Param("studentId") Long studentId);
+    List<MyFollow> queryMyFollow(@Param("page") IPage page, @Param("param") QueryMyFollowSearch query);
 
 }

+ 2 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/VideoLessonGroupDao.java

@@ -27,6 +27,8 @@ public interface VideoLessonGroupDao extends BaseMapper<VideoLessonGroup> {
 
     void updateExamine(VideoLessonExamineVo examineVo);
 
+    void updateShelves(VideoLessonShelvesVo shelvesVo);
+
     //学员详情-查询视频课列表
     List<VideoLessonStudentDetailVo> selectStudentPage(IPage page, @Param("param") VideoLessonSearch videoLessonSearch);
 

+ 41 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/ActivityEvaluationDto.java

@@ -0,0 +1,41 @@
+package com.yonge.cooleshow.biz.dal.dto;
+
+import com.yonge.cooleshow.common.entity.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+/**
+ * @Author: liweifan
+ * @Data: 2022-08-04 10:19:49
+ */
+@ApiModel(value = "ActivityEvaluationDto对象", description = "评测活动表数据传输对象")
+public class ActivityEvaluationDto extends BaseEntity {
+	private static final long serialVersionUID = 1L;
+
+	@ApiModelProperty("活动id ")
+	@NotNull(message = "活动id不能为空")
+	private Long activityId;
+	@ApiModelProperty("曲目id 多个用,分割 ")
+	@NotBlank(message = "曲子id不能为空")
+	private String musicSheetIds;
+
+	public Long getActivityId() {
+		return activityId;
+	}
+
+	public void setActivityId(Long activityId) {
+		this.activityId = activityId;
+	}
+
+	public String getMusicSheetIds() {
+
+		return musicSheetIds;
+	}
+
+	public void setMusicSheetIds(String musicSheetIds) {
+		this.musicSheetIds = musicSheetIds;
+	}
+}

+ 13 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/ActivityEvaluationRecordDto.java

@@ -0,0 +1,13 @@
+package com.yonge.cooleshow.biz.dal.dto;
+
+import com.yonge.cooleshow.biz.dal.entity.ActivityEvaluationRecord;
+import io.swagger.annotations.ApiModel;
+
+/**
+ * @Author: liweifan
+ * @Data: 2022-08-04 10:19:49
+ */
+@ApiModel(value = "ActivityEvaluationRecordDto对象", description = "评测活动参与记录表数据传输对象")
+public class ActivityEvaluationRecordDto extends ActivityEvaluationRecord{
+	private static final long serialVersionUID = 1L;
+}

+ 29 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/ActivityPlanDto.java

@@ -0,0 +1,29 @@
+package com.yonge.cooleshow.biz.dal.dto;
+
+import com.yonge.cooleshow.biz.dal.entity.ActivityPlan;
+import com.yonge.cooleshow.biz.dal.entity.ActivityPlanEvaluation;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import javax.validation.Valid;
+
+/**
+ * @Author: liweifan
+ * @Data: 2022-08-04 10:19:49
+ */
+@ApiModel(value = "ActivityPlanDto对象", description = "活动计划表数据传输对象")
+public class ActivityPlanDto extends ActivityPlan{
+	private static final long serialVersionUID = 1L;
+
+	@ApiModelProperty(value = "活动计划-评测活动拓展")
+	private ActivityPlanEvaluation planEvaluation;
+
+
+	public ActivityPlanEvaluation getPlanEvaluation() {
+		return planEvaluation;
+	}
+
+	public void setPlanEvaluation(ActivityPlanEvaluation planEvaluation) {
+		this.planEvaluation = planEvaluation;
+	}
+}

+ 23 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/ActivityPlanPayDto.java

@@ -0,0 +1,23 @@
+package com.yonge.cooleshow.biz.dal.dto;
+
+import io.swagger.annotations.ApiModel;
+
+/**
+ * Description
+ *
+ * @author liujunchi
+ * @date 2022-08-05
+ */
+@ApiModel("活动购买信息")
+public class ActivityPlanPayDto {
+
+    private Long activityId;
+
+    public Long getActivityId() {
+        return activityId;
+    }
+
+    public void setActivityId(Long activityId) {
+        this.activityId = activityId;
+    }
+}

+ 13 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/ActivityRegistrationDto.java

@@ -0,0 +1,13 @@
+package com.yonge.cooleshow.biz.dal.dto;
+
+import com.yonge.cooleshow.biz.dal.entity.ActivityRegistration;
+import io.swagger.annotations.ApiModel;
+
+/**
+ * @Author: liweifan
+ * @Data: 2022-08-04 10:19:49
+ */
+@ApiModel(value = "ActivityRegistrationDto对象", description = "活动报名表数据传输对象")
+public class ActivityRegistrationDto extends ActivityRegistration{
+	private static final long serialVersionUID = 1L;
+}

+ 13 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/ActivityRewardDto.java

@@ -0,0 +1,13 @@
+package com.yonge.cooleshow.biz.dal.dto;
+
+import com.yonge.cooleshow.biz.dal.entity.ActivityReward;
+import io.swagger.annotations.ApiModel;
+
+/**
+ * @Author: liweifan
+ * @Data: 2022-08-04 10:19:49
+ */
+@ApiModel(value = "ActivityRewardDto对象", description = "活动奖品表数据传输对象")
+public class ActivityRewardDto extends ActivityReward{
+	private static final long serialVersionUID = 1L;
+}

+ 13 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/ActivityUserRewardDto.java

@@ -0,0 +1,13 @@
+package com.yonge.cooleshow.biz.dal.dto;
+
+import com.yonge.cooleshow.biz.dal.entity.ActivityUserReward;
+import io.swagger.annotations.ApiModel;
+
+/**
+ * @Author: liweifan
+ * @Data: 2022-08-04 10:19:49
+ */
+@ApiModel(value = "ActivityUserRewardDto对象", description = "活动用户获奖表数据传输对象")
+public class ActivityUserRewardDto extends ActivityUserReward{
+	private static final long serialVersionUID = 1L;
+}

+ 53 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/LiveSaleOutDto.java

@@ -0,0 +1,53 @@
+package com.yonge.cooleshow.biz.dal.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import javax.validation.constraints.NotNull;
+
+/**
+ * Description 直播课下架
+ *
+ * @author liujunchi
+ * @date 2022-08-03
+ */
+@ApiModel("直播课下架参数")
+public class LiveSaleOutDto {
+
+    @NotNull(message = "课程组id不能为空")
+    @ApiModelProperty(value = "直播课课程组id",required = true)
+    private Long courseGroupId;
+
+    @NotNull(message = "上下架状态不能为空")
+    @ApiModelProperty(value = "上下架  0:下架 1:上架",required = true)
+    private Long status;
+
+
+    @ApiModelProperty("下架原因")
+    private String reason;
+
+
+    public Long getCourseGroupId() {
+        return courseGroupId;
+    }
+
+    public void setCourseGroupId(Long courseGroupId) {
+        this.courseGroupId = courseGroupId;
+    }
+
+    public Long getStatus() {
+        return status;
+    }
+
+    public void setStatus(Long status) {
+        this.status = status;
+    }
+
+    public String getReason() {
+        return reason;
+    }
+
+    public void setReason(String reason) {
+        this.reason = reason;
+    }
+}

+ 38 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/MusicAlbumSheetDto.java

@@ -3,6 +3,8 @@ package com.yonge.cooleshow.biz.dal.dto;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 
+import java.util.List;
+
 /**
  * Description 专辑新增或删除曲目
  *
@@ -15,9 +17,12 @@ public class MusicAlbumSheetDto {
     @ApiModelProperty("专辑id")
     private Long albumId;
 
-    @ApiModelProperty("曲目id,多个逗号隔开")
+    @ApiModelProperty("曲目id,多个逗号隔开 (删除专辑内的曲目使用)")
     private String musicSheetIds;
 
+    @ApiModelProperty("曲目id,多个逗号隔开 (添加专辑内的曲目使用)")
+    private List<AlbumMusic> albumMusicList;
+
 
     public Long getAlbumId() {
         return albumId;
@@ -34,4 +39,36 @@ public class MusicAlbumSheetDto {
     public void setMusicSheetIds(String musicSheetIds) {
         this.musicSheetIds = musicSheetIds;
     }
+
+    public List<AlbumMusic> getAlbumMusicList() {
+        return albumMusicList;
+    }
+
+    public void setAlbumMusicList(List<AlbumMusic> albumMusicList) {
+        this.albumMusicList = albumMusicList;
+    }
+
+    public static class AlbumMusic{
+        @ApiModelProperty("曲目id")
+        private Long musicSheetId;
+
+        @ApiModelProperty("排序")
+        private Integer sortNumber;
+
+        public Long getMusicSheetId() {
+            return musicSheetId;
+        }
+
+        public void setMusicSheetId(Long musicSheetId) {
+            this.musicSheetId = musicSheetId;
+        }
+
+        public Integer getSortNumber() {
+            return sortNumber;
+        }
+
+        public void setSortNumber(Integer sortNumber) {
+            this.sortNumber = sortNumber;
+        }
+    }
 }

+ 13 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/PianoRoomChangeRecordDto.java

@@ -0,0 +1,13 @@
+package com.yonge.cooleshow.biz.dal.dto;
+
+import com.yonge.cooleshow.biz.dal.entity.PianoRoomChangeRecord;
+import io.swagger.annotations.ApiModel;
+
+/**
+ * @Author: liweifan
+ * @Data: 2022-08-03 16:44:34
+ */
+@ApiModel(value = "PianoRoomChangeRecordDto对象", description = "琴房时长变更记录表数据传输对象")
+public class PianoRoomChangeRecordDto extends PianoRoomChangeRecord{
+	private static final long serialVersionUID = 1L;
+}

+ 2 - 2
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/req/OrderReq.java

@@ -32,7 +32,7 @@ public class OrderReq {
     @ApiModelProperty(value = "订单名称 ", required = true)
     private String orderName;
     @NotNull(message = "订单类型不能为空")
-    @ApiModelProperty(value = "订单类型: 学生端( VIP、开通会员  PRACTICE、陪练课购买  LIVE、直播课购买 VIDEO、视频课购买 MUSIC、单曲点播 ) 老师端(VIP、开通会员 PINAO_ROOM、琴房时长)", required = true)
+    @ApiModelProperty(value = "订单类型: 学生端( VIP、开通会员  PRACTICE、陪练课购买  LIVE、直播课购买 VIDEO、视频课购买 MUSIC、单曲点播 ACTI_REGIST、活动报名 ) 老师端(VIP、开通会员 PINAO_ROOM、琴房时长 ACTI_REGIST 活动报名)", required = true)
     private OrderTypeEnum orderType;
     @ApiModelProperty(value = "订单描述信息 ")
     private String orderDesc;
@@ -61,7 +61,7 @@ public class OrderReq {
         @ApiModelProperty(value = "订单详情号", hidden = true)
         private String subOrderNo;
         @NotNull(message = "商品类型不能为空")
-        @ApiModelProperty(value = "商品类型: 学生端( VIP、开通会员  PRACTICE、陪练课购买  LIVE、直播课购买 VIDEO、视频课购买 MUSIC、单曲点播) 老师端( PINAO_ROOM、琴房时长)", required = true)
+        @ApiModelProperty(value = "商品类型: 学生端( VIP、开通会员  PRACTICE、陪练课购买  LIVE、直播课购买 VIDEO、视频课购买 MUSIC、单曲点播 ACTI_REGIST、活动报名) 老师端( PINAO_ROOM、琴房时长 ACTI_REGIST 活动报名)", required = true)
         private GoodTypeEnum goodType;
         @ApiModelProperty("商品名称 ")
         private String goodName;

+ 14 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/ActivityEvaluationRecordSearch.java

@@ -0,0 +1,14 @@
+package com.yonge.cooleshow.biz.dal.dto.search;
+
+import com.yonge.toolset.base.page.QueryInfo;
+import io.swagger.annotations.ApiModel;
+
+/**
+ * @Author: liweifan
+ * @Data: 2022-08-04 10:19:49
+ */
+@ApiModel(value = "ActivityEvaluationRecordSearch对象", description = "评测活动参与记录表查询对象")
+public class ActivityEvaluationRecordSearch extends QueryInfo{
+	private static final long serialVersionUID = 1L;
+
+}

+ 14 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/ActivityEvaluationSearch.java

@@ -0,0 +1,14 @@
+package com.yonge.cooleshow.biz.dal.dto.search;
+
+import com.yonge.toolset.base.page.QueryInfo;
+import io.swagger.annotations.ApiModel;
+
+/**
+ * @Author: liweifan
+ * @Data: 2022-08-04 10:19:49
+ */
+@ApiModel(value = "ActivityEvaluationSearch对象", description = "评测活动表查询对象")
+public class ActivityEvaluationSearch extends QueryInfo{
+	private static final long serialVersionUID = 1L;
+
+}

+ 77 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/ActivityPlanSearch.java

@@ -0,0 +1,77 @@
+package com.yonge.cooleshow.biz.dal.dto.search;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.yonge.toolset.base.page.QueryInfo;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.time.LocalDateTime;
+import java.time.LocalTime;
+
+/**
+ * @Author: liweifan
+ * @Data: 2022-08-04 10:19:49
+ */
+@ApiModel(value = "ActivityPlanSearch对象", description = "活动计划表查询对象")
+public class ActivityPlanSearch extends QueryInfo{
+	private static final long serialVersionUID = 1L;
+	@ApiModelProperty("活动名称 ")
+	private String activityName;
+	@ApiModelProperty("创建状态 0 正式 1 草稿 ")
+	private Integer draftFlag;
+	@ApiModelProperty("活动状态 0 停用 1 启用 ")
+	private Integer activityState;
+	@ApiModelProperty(value = "活动开始时间")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+	private LocalDateTime startTime;
+	@ApiModelProperty(value = "活动结束时间")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+	private LocalDateTime endTime;
+
+	public String getActivityName() {
+		return activityName;
+	}
+
+	public void setActivityName(String activityName) {
+		this.activityName = activityName;
+	}
+
+	public Integer getDraftFlag() {
+		return draftFlag;
+	}
+
+	public void setDraftFlag(Integer draftFlag) {
+		this.draftFlag = draftFlag;
+	}
+
+	public Integer getActivityState() {
+		return activityState;
+	}
+
+	public void setActivityState(Integer activityState) {
+		this.activityState = activityState;
+	}
+
+	public LocalDateTime getStartTime() {
+		return startTime;
+	}
+
+	public void setStartTime(LocalDateTime startTime) {
+		if(null != startTime){
+			this.startTime = LocalDateTime.of(startTime.toLocalDate(), LocalTime.MIN);
+		}
+	}
+
+	public LocalDateTime getEndTime() {
+		return endTime;
+	}
+
+	public void setEndTime(LocalDateTime endTime) {
+		if(null != endTime){
+			this.endTime = LocalDateTime.of(endTime.toLocalDate(), LocalTime.MAX);
+		}
+	}
+}

+ 14 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/ActivityRegistrationSearch.java

@@ -0,0 +1,14 @@
+package com.yonge.cooleshow.biz.dal.dto.search;
+
+import com.yonge.toolset.base.page.QueryInfo;
+import io.swagger.annotations.ApiModel;
+
+/**
+ * @Author: liweifan
+ * @Data: 2022-08-04 10:19:49
+ */
+@ApiModel(value = "ActivityRegistrationSearch对象", description = "活动报名表查询对象")
+public class ActivityRegistrationSearch extends QueryInfo{
+	private static final long serialVersionUID = 1L;
+
+}

+ 14 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/ActivityRewardSearch.java

@@ -0,0 +1,14 @@
+package com.yonge.cooleshow.biz.dal.dto.search;
+
+import com.yonge.toolset.base.page.QueryInfo;
+import io.swagger.annotations.ApiModel;
+
+/**
+ * @Author: liweifan
+ * @Data: 2022-08-04 10:19:49
+ */
+@ApiModel(value = "ActivityRewardSearch对象", description = "活动奖品表查询对象")
+public class ActivityRewardSearch extends QueryInfo{
+	private static final long serialVersionUID = 1L;
+
+}

+ 14 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/ActivityUserRewardSearch.java

@@ -0,0 +1,14 @@
+package com.yonge.cooleshow.biz.dal.dto.search;
+
+import com.yonge.toolset.base.page.QueryInfo;
+import io.swagger.annotations.ApiModel;
+
+/**
+ * @Author: liweifan
+ * @Data: 2022-08-04 10:19:49
+ */
+@ApiModel(value = "ActivityUserRewardSearch对象", description = "活动用户获奖表查询对象")
+public class ActivityUserRewardSearch extends QueryInfo{
+	private static final long serialVersionUID = 1L;
+
+}

+ 10 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/MusicSheetSearch.java

@@ -54,6 +54,16 @@ public class MusicSheetSearch  extends QueryInfo{
     @ApiModelProperty(value = "收费类型(FREE:免费;VIP:会员;CHARGE:单曲收费)")
     private ChargeTypeEnum chargeType;  //收费类型(0:免费;1:会员;2:单曲收费)
 
+    @ApiModelProperty(value = "查看我自己的曲目",required = true)
+    private Boolean myself;
+
+    public Boolean getMyself() {
+        return myself;
+    }
+
+    public void setMyself(Boolean myself) {
+        this.myself = myself;
+    }
 
     public ChargeTypeEnum getChargeType() {
         return chargeType;

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/OrderSearch.java

@@ -17,7 +17,7 @@ public class OrderSearch extends QueryInfo{
 	private String searchNo;
 	@ApiModelProperty("下单应用:STUDENT 学生端 TEACHER 老师端")
 	private String orderClient;
-	@ApiModelProperty("交易类型:  VIP、开通会员  PRACTICE、陪练课购买  LIVE、直播课购买 VIDEO、视频课购买 MUSIC、单曲点播 (多选用,分割)")
+	@ApiModelProperty("交易类型:  VIP、开通会员  PRACTICE、陪练课购买  LIVE、直播课购买 VIDEO、视频课购买 MUSIC、单曲点播 ACTI_REGIST、活动报名(多选用,分割)")
 	private String orderType;
 	@ApiModelProperty("订单状态 WAIT_PAY 待支付 PAYING 支付中  PAID 已付款 CLOSE 已关闭 FAIL 支付失败 (多选用,分割)")
 	private String status;

+ 83 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/PianoRoomChangeRecordSearch.java

@@ -0,0 +1,83 @@
+package com.yonge.cooleshow.biz.dal.dto.search;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.yonge.cooleshow.biz.dal.enums.InOrOutEnum;
+import com.yonge.toolset.base.page.QueryInfo;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.time.LocalDateTime;
+import java.time.LocalTime;
+
+/**
+ * @Author: liweifan
+ * @Data: 2022-08-03 16:44:34
+ */
+@ApiModel(value = "PianoRoomChangeRecordSearch对象", description = "琴房时长变更记录表查询对象")
+public class PianoRoomChangeRecordSearch extends QueryInfo{
+	private static final long serialVersionUID = 1L;
+
+	@ApiModelProperty("用户id ")
+	private Long userId;
+
+	@ApiModelProperty("操作类型:IN、增加 OUT、减少 ")
+	private InOrOutEnum inOrOut;
+
+	@ApiModelProperty("操作人")
+	private String operaUser;
+
+	@ApiModelProperty(value = "交易开始时间")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+	private LocalDateTime startTime;
+
+	@ApiModelProperty(value = "交易结束时间")
+	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+	private LocalDateTime endTime;
+
+	public Long getUserId() {
+		return userId;
+	}
+
+	public void setUserId(Long userId) {
+		this.userId = userId;
+	}
+
+	public InOrOutEnum getInOrOut() {
+		return inOrOut;
+	}
+
+	public void setInOrOut(InOrOutEnum inOrOut) {
+		this.inOrOut = inOrOut;
+	}
+
+	public String getOperaUser() {
+		return operaUser;
+	}
+
+	public void setOperaUser(String operaUser) {
+		this.operaUser = operaUser;
+	}
+
+	public LocalDateTime getStartTime() {
+		return startTime;
+	}
+
+	public void setStartTime(LocalDateTime startTime) {
+		if(null != startTime){
+			this.startTime = LocalDateTime.of(startTime.toLocalDate(), LocalTime.MIN);
+		}
+	}
+
+	public LocalDateTime getEndTime() {
+		return endTime;
+	}
+
+	public void setEndTime(LocalDateTime endTime) {
+		if(null != endTime){
+			this.endTime = LocalDateTime.of(endTime.toLocalDate(), LocalTime.MAX);
+		}
+	}
+}

+ 29 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/QueryMyFollowSearch.java

@@ -0,0 +1,29 @@
+package com.yonge.cooleshow.biz.dal.dto.search;
+
+import com.yonge.toolset.base.page.QueryInfo;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+@ApiModel(value = "QueryMyFollowSearch")
+public class QueryMyFollowSearch extends QueryInfo {
+    @ApiModelProperty(value = "查询用户id",hidden = true)
+    private Long userId;
+    @ApiModelProperty(value = "老师名称")
+    private String username;
+
+    public Long getUserId() {
+        return userId;
+    }
+
+    public void setUserId(Long userId) {
+        this.userId = userId;
+    }
+
+    public String getUsername() {
+        return username;
+    }
+
+    public void setUsername(String username) {
+        this.username = username;
+    }
+}

+ 0 - 8
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/StudentMusicSheetSearch.java

@@ -36,8 +36,6 @@ public class StudentMusicSheetSearch  extends MusicSheetSearch{
     private String platform;
 
 
-    @ApiModelProperty(value = "查看我自己的曲目",required = true)
-    private Boolean myself = true;
 
     public ClientEnum getUserType() {
         return userType;
@@ -47,13 +45,7 @@ public class StudentMusicSheetSearch  extends MusicSheetSearch{
         this.userType = userType;
     }
 
-    public Boolean getMyself() {
-        return myself;
-    }
 
-    public void setMyself(Boolean myself) {
-        this.myself = myself;
-    }
 
     public YesOrNoEnum getAuditVersion() {
         return auditVersion;

+ 11 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/VideoGroupSearch.java

@@ -23,6 +23,9 @@ public class VideoGroupSearch extends QueryInfo {
     @ApiModelProperty("声部id")
     private Integer subjectId;
 
+    @ApiModelProperty(value = "是否上架 (0:否  1:是)")
+    private Integer shelvesFlag;
+
     @ApiModelProperty(value = "审核状态(DOING:待审核 PASS:通过 UNPASS:未通过)")
     private String auditStatus;
 
@@ -60,6 +63,14 @@ public class VideoGroupSearch extends QueryInfo {
         this.subjectId = subjectId;
     }
 
+    public Integer getShelvesFlag() {
+        return shelvesFlag;
+    }
+
+    public void setShelvesFlag(Integer shelvesFlag) {
+        this.shelvesFlag = shelvesFlag;
+    }
+
     public String getAuditStatus() {
         return auditStatus;
     }

+ 15 - 5
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/VideoLessonGroupSearch.java

@@ -1,6 +1,5 @@
 package com.yonge.cooleshow.biz.dal.dto.search;
 
-import com.yonge.cooleshow.biz.dal.enums.AuthStatusEnum;
 import com.yonge.cooleshow.common.enums.YesOrNoEnum;
 import com.yonge.toolset.base.page.QueryInfo;
 import io.swagger.annotations.ApiModel;
@@ -12,8 +11,11 @@ import io.swagger.annotations.ApiModelProperty;
  */
 @ApiModel(value = "VideoLessonGroupSearch", description = "视频课组列表查询")
 public class VideoLessonGroupSearch extends QueryInfo {
-    @ApiModelProperty(value = "审核状态(DOING:待审核 PASS:通过 UNPASS:未通过)")
-    private AuthStatusEnum auditStatus;
+    @ApiModelProperty(value = "是否上架 (0:否  1:是)",hidden = true)
+    private Integer shelvesFlag;
+
+    @ApiModelProperty(value = "审核状态(DOING:审核中 PASS:已上架 UNPASS:审核失败 UNSHELVES: 下架)")
+    private String auditStatus;
 
     @ApiModelProperty(value = "视频课组id")
     private Long groupId;
@@ -54,6 +56,14 @@ public class VideoLessonGroupSearch extends QueryInfo {
     @ApiModelProperty("当前课程组id(查看其他课程时,筛选掉)")
     private Long videoLessonGroupId;
 
+    public Integer getShelvesFlag() {
+        return shelvesFlag;
+    }
+
+    public void setShelvesFlag(Integer shelvesFlag) {
+        this.shelvesFlag = shelvesFlag;
+    }
+
     public Long getVideoLessonGroupId() {
         return videoLessonGroupId;
     }
@@ -110,11 +120,11 @@ public class VideoLessonGroupSearch extends QueryInfo {
         this.studentId = studentId;
     }
 
-    public AuthStatusEnum getAuditStatus() {
+    public String getAuditStatus() {
         return auditStatus;
     }
 
-    public void setAuditStatus(AuthStatusEnum auditStatus) {
+    public void setAuditStatus(String auditStatus) {
         this.auditStatus = auditStatus;
     }
 

+ 11 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/VideoLessonSearch.java

@@ -48,6 +48,9 @@ public class VideoLessonSearch extends QueryInfo {
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
     private Date endTime;
 
+    @ApiModelProperty(value = "是否上架 (0:否  1:是)")
+    private Integer shelvesFlag;
+
     public Long getVideoLessonGroupId() {
         return videoLessonGroupId;
     }
@@ -113,4 +116,12 @@ public class VideoLessonSearch extends QueryInfo {
     public void setEndTime(Date endTime) {
         this.endTime = endTime;
     }
+
+    public Integer getShelvesFlag() {
+        return shelvesFlag;
+    }
+
+    public void setShelvesFlag(Integer shelvesFlag) {
+        this.shelvesFlag = shelvesFlag;
+    }
 }

+ 80 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/ActivityEvaluation.java

@@ -0,0 +1,80 @@
+package com.yonge.cooleshow.biz.dal.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+
+/**
+ * 评测活动表
+ */
+@TableName("activity_evaluation")
+@ApiModel(value = "ActivityEvaluation对象", description = "评测活动表")
+public class ActivityEvaluation implements Serializable {
+    private static final long serialVersionUID = 1L;
+    @ApiModelProperty("主键 ")
+    @TableId(value = "id_", type = IdType.AUTO)
+    private Long id;
+    @ApiModelProperty("活动id ")
+    @TableField(value = "activity_id_")
+    private Long activityId;
+    @ApiModelProperty("曲目id ")
+    @TableField(value = "music_sheet_id_")
+    private Long musicSheetId;
+    @ApiModelProperty("创建时间 ")
+    @TableField(value = "create_time_")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+    private Date createTime;
+    @ApiModelProperty("创建人 ")
+    @TableField(value = "create_by_")
+    private Long createBy;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Long getActivityId() {
+        return activityId;
+    }
+
+    public void setActivityId(Long activityId) {
+        this.activityId = activityId;
+    }
+
+    public Long getMusicSheetId() {
+        return musicSheetId;
+    }
+
+    public void setMusicSheetId(Long musicSheetId) {
+        this.musicSheetId = musicSheetId;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public Long getCreateBy() {
+        return createBy;
+    }
+
+    public void setCreateBy(Long createBy) {
+        this.createBy = createBy;
+    }
+
+}

+ 91 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/ActivityEvaluationRecord.java

@@ -0,0 +1,91 @@
+package com.yonge.cooleshow.biz.dal.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+
+/**
+ * 评测活动参与记录表
+ */
+@TableName("activity_evaluation_record")
+@ApiModel(value = "ActivityEvaluationRecord对象", description = "评测活动参与记录表")
+public class ActivityEvaluationRecord implements Serializable {
+    private static final long serialVersionUID = 1L;
+    @ApiModelProperty("主键 ")
+    @TableId(value = "id_", type = IdType.AUTO)
+    private Long id;
+    @ApiModelProperty("活动id ")
+    @TableField(value = "activity_id_")
+    private Long activityId;
+    @ApiModelProperty("用户id ")
+    @TableField(value = "user_id_")
+    private Long userId;
+    @ApiModelProperty("评测活动id ")
+    @TableField(value = "evaluation_id_")
+    private Long evaluationId;
+    @ApiModelProperty("分数 ")
+    @TableField(value = "score_")
+    private Double score;
+    @ApiModelProperty("创建时间 ")
+    @TableField(value = "create_time_")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+    private Date createTime;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Long getActivityId() {
+        return activityId;
+    }
+
+    public void setActivityId(Long activityId) {
+        this.activityId = activityId;
+    }
+
+    public Long getUserId() {
+        return userId;
+    }
+
+    public void setUserId(Long userId) {
+        this.userId = userId;
+    }
+
+    public Long getEvaluationId() {
+        return evaluationId;
+    }
+
+    public void setEvaluationId(Long evaluationId) {
+        this.evaluationId = evaluationId;
+    }
+
+    public Double getScore() {
+        return score;
+    }
+
+    public void setScore(Double score) {
+        this.score = score;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+}

+ 244 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/ActivityPlan.java

@@ -0,0 +1,244 @@
+package com.yonge.cooleshow.biz.dal.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.yonge.cooleshow.common.enums.ActivityTypeEnum;
+import com.yonge.cooleshow.common.enums.RegistrationMethodEnum;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import javax.validation.Valid;
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import java.math.BigDecimal;
+
+/**
+ * 活动计划表
+ */
+@TableName("activity_plan")
+@ApiModel(value = "ActivityPlan对象", description = "活动计划表")
+public class ActivityPlan implements Serializable {
+	private static final long serialVersionUID = 1L;
+    @ApiModelProperty("主键 ")
+    @TableId(value = "id_", type = IdType.AUTO)
+    private Long id;
+    @ApiModelProperty(value = "活动类型 EVALUATION 评测活动 ",required = true)
+	@TableField(value = "activity_type_")
+    @NotNull(message = "活动类型不能为空")
+    private ActivityTypeEnum activityType;
+    @ApiModelProperty("活动名称 ")
+	@TableField(value = "activity_name_")
+    @NotBlank(message = "活动名称不能为空")
+    private String activityName;
+    @ApiModelProperty("活动描述 ")
+	@TableField(value = "describe_")
+    @NotBlank(message = "活动描述不能为空")
+    private String describe;
+    @ApiModelProperty("规则描述 ")
+	@TableField(value = "rule_describe_")
+    @NotBlank(message = "活动规则不能为空")
+    private String ruleDescribe;
+    @ApiModelProperty("主题图片 ")
+	@TableField(value = "subject_url_")
+    @NotBlank(message = "主题图片不能为空")
+    private String subjectUrl;
+    @ApiModelProperty("平铺背景 ")
+	@TableField(value = "background_url_")
+    @NotBlank(message = "平铺背景不能为空")
+    private String backgroundUrl;
+    @ApiModelProperty("活动链接 ")
+    @TableField(value = "activity_url_")
+    private String activityUrl;
+    @ApiModelProperty("活动时间-开始 ")
+	@TableField(value = "activity_start_")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+    @NotNull(message = "活动开始时间不能为空")
+    private Date activityStart;
+    @ApiModelProperty("活动时间-结束 ")
+	@TableField(value = "activity_end_")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+    @NotNull(message = "活动结束时间不能为空")
+    private Date activityEnd;
+    @ApiModelProperty("报名方式 FREE 免费 CHARGE 收费 ")
+	@TableField(value = "registration_method_")
+    @NotNull(message = "报名缴费方式不能为空")
+    private RegistrationMethodEnum registrationMethod;
+    @ApiModelProperty("报名价格 ")
+	@TableField(value = "registration_price_")
+    private BigDecimal registrationPrice;
+    @ApiModelProperty("创建状态 0 正式 1 草稿 ")
+	@TableField(value = "draft_flag_")
+    private Integer draftFlag;
+    @ApiModelProperty("活动状态 0 停用 1 启用 ")
+	@TableField(value = "activity_state_")
+    private Integer activityState;
+    @ApiModelProperty("创建时间 ")
+	@TableField(value = "create_time_")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+    private Date createTime;
+    @ApiModelProperty("创建人 ")
+	@TableField(value = "create_by_")
+    private Long createBy;
+    @ApiModelProperty("更新时间 ")
+	@TableField(value = "update_time_")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+    private Date updateTime;
+    @ApiModelProperty("更新人 ")
+	@TableField(value = "update_by_")
+    private Long updateBy;
+
+	public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    
+	public ActivityTypeEnum getActivityType() {
+        return activityType;
+    }
+
+    public void setActivityType(ActivityTypeEnum activityType) {
+        this.activityType = activityType;
+    }
+    
+	public String getActivityName() {
+        return activityName;
+    }
+
+    public void setActivityName(String activityName) {
+        this.activityName = activityName;
+    }
+    
+	public String getDescribe() {
+        return describe;
+    }
+
+    public void setDescribe(String describe) {
+        this.describe = describe;
+    }
+    
+	public String getRuleDescribe() {
+        return ruleDescribe;
+    }
+
+    public void setRuleDescribe(String ruleDescribe) {
+        this.ruleDescribe = ruleDescribe;
+    }
+    
+	public String getSubjectUrl() {
+        return subjectUrl;
+    }
+
+    public void setSubjectUrl(String subjectUrl) {
+        this.subjectUrl = subjectUrl;
+    }
+    
+	public String getBackgroundUrl() {
+        return backgroundUrl;
+    }
+
+    public void setBackgroundUrl(String backgroundUrl) {
+        this.backgroundUrl = backgroundUrl;
+    }
+    
+	public Date getActivityStart() {
+        return activityStart;
+    }
+
+    public void setActivityStart(Date activityStart) {
+        this.activityStart = activityStart;
+    }
+    
+	public Date getActivityEnd() {
+        return activityEnd;
+    }
+
+    public void setActivityEnd(Date activityEnd) {
+        this.activityEnd = activityEnd;
+    }
+    
+	public RegistrationMethodEnum getRegistrationMethod() {
+        return registrationMethod;
+    }
+
+    public void setRegistrationMethod(RegistrationMethodEnum registrationMethod) {
+        this.registrationMethod = registrationMethod;
+    }
+    
+	public BigDecimal getRegistrationPrice() {
+        return registrationPrice;
+    }
+
+    public void setRegistrationPrice(BigDecimal registrationPrice) {
+        this.registrationPrice = registrationPrice;
+    }
+    
+	public Integer getDraftFlag() {
+        return draftFlag;
+    }
+
+    public void setDraftFlag(Integer draftFlag) {
+        this.draftFlag = draftFlag;
+    }
+    
+	public Integer getActivityState() {
+        return activityState;
+    }
+
+    public void setActivityState(Integer activityState) {
+        this.activityState = activityState;
+    }
+    
+	public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+    
+	public Long getCreateBy() {
+        return createBy;
+    }
+
+    public void setCreateBy(Long createBy) {
+        this.createBy = createBy;
+    }
+    
+	public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+    
+	public Long getUpdateBy() {
+        return updateBy;
+    }
+
+    public void setUpdateBy(Long updateBy) {
+        this.updateBy = updateBy;
+    }
+
+    public String getActivityUrl() {
+        return activityUrl;
+    }
+
+    public void setActivityUrl(String activityUrl) {
+        this.activityUrl = activityUrl;
+    }
+}

+ 94 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/ActivityPlanEvaluation.java

@@ -0,0 +1,94 @@
+package com.yonge.cooleshow.biz.dal.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.yonge.cooleshow.common.enums.HardLevelEnum;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+
+/**
+ * 活动计划-评测活动拓展字段表
+ */
+@TableName("activity_plan_evaluation")
+@ApiModel(value = "ActivityPlanEvaluation对象", description = "活动计划-评测活动拓展字段表")
+public class ActivityPlanEvaluation implements Serializable {
+	private static final long serialVersionUID = 1L;
+    @ApiModelProperty("主键(活动id) ")
+    @TableId(value = "id_")
+    private Long id;
+    @ApiModelProperty("评测难度 BEGINNER 入门级 ADVANCED 进阶级 PERFORMER 大师级 ")
+	@TableField(value = "evaluation_difficulty_")
+    private HardLevelEnum evaluationDifficulty;
+    @ApiModelProperty("创建时间 ")
+	@TableField(value = "create_time_")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+    private Date createTime;
+    @ApiModelProperty("创建人 ")
+	@TableField(value = "create_by_")
+    private Long createBy;
+    @ApiModelProperty("更新时间 ")
+	@TableField(value = "update_time_")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+    private Date updateTime;
+    @ApiModelProperty("更新人 ")
+	@TableField(value = "update_by_")
+    private Long updateBy;
+
+	public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    
+	public HardLevelEnum getEvaluationDifficulty() {
+        return evaluationDifficulty;
+    }
+
+    public void setEvaluationDifficulty(HardLevelEnum evaluationDifficulty) {
+        this.evaluationDifficulty = evaluationDifficulty;
+    }
+    
+	public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+    
+	public Long getCreateBy() {
+        return createBy;
+    }
+
+    public void setCreateBy(Long createBy) {
+        this.createBy = createBy;
+    }
+    
+	public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+    
+	public Long getUpdateBy() {
+        return updateBy;
+    }
+
+    public void setUpdateBy(Long updateBy) {
+        this.updateBy = updateBy;
+    }
+    
+}

+ 91 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/ActivityRegistration.java

@@ -0,0 +1,91 @@
+package com.yonge.cooleshow.biz.dal.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+
+/**
+ * 活动报名表
+ */
+@TableName("activity_registration")
+@ApiModel(value = "ActivityRegistration对象", description = "活动报名表")
+public class ActivityRegistration implements Serializable {
+	private static final long serialVersionUID = 1L;
+    @ApiModelProperty("主键 ")
+    @TableId(value = "id_", type = IdType.AUTO)
+    private Long id;
+    @ApiModelProperty("活动id ")
+	@TableField(value = "activity_id_")
+    private Long activityId;
+    @ApiModelProperty("用户id ")
+	@TableField(value = "user_id_")
+    private Long userId;
+    @ApiModelProperty("订单号 ")
+	@TableField(value = "order_no_")
+    private String orderNo;
+    @ApiModelProperty("订单详情号 ")
+	@TableField(value = "sub_order_no_")
+    private String subOrderNo;
+    @ApiModelProperty("创建时间 ")
+	@TableField(value = "create_time_")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+    private Date createTime;
+
+	public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    
+	public Long getActivityId() {
+        return activityId;
+    }
+
+    public void setActivityId(Long activityId) {
+        this.activityId = activityId;
+    }
+    
+	public Long getUserId() {
+        return userId;
+    }
+
+    public void setUserId(Long userId) {
+        this.userId = userId;
+    }
+    
+	public String getOrderNo() {
+        return orderNo;
+    }
+
+    public void setOrderNo(String orderNo) {
+        this.orderNo = orderNo;
+    }
+    
+	public String getSubOrderNo() {
+        return subOrderNo;
+    }
+
+    public void setSubOrderNo(String subOrderNo) {
+        this.subOrderNo = subOrderNo;
+    }
+    
+	public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+    
+}

+ 102 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/ActivityReward.java

@@ -0,0 +1,102 @@
+package com.yonge.cooleshow.biz.dal.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+
+/**
+ * 活动奖品表
+ */
+@TableName("activity_reward")
+@ApiModel(value = "ActivityReward对象", description = "活动奖品表")
+public class ActivityReward implements Serializable {
+	private static final long serialVersionUID = 1L;
+    @ApiModelProperty("主键 ")
+    @TableId(value = "id_", type = IdType.AUTO)
+    private Long id;
+    @ApiModelProperty("活动id ")
+	@TableField(value = "activity_id_")
+    private Long activityId;
+    @ApiModelProperty("奖品名称 ")
+	@TableField(value = "reward_name_")
+    private String rewardName;
+    @ApiModelProperty("奖品描述 ")
+	@TableField(value = "reward_describe_")
+    private String rewardDescribe;
+    @ApiModelProperty("奖品图片 ")
+	@TableField(value = "img_url_")
+    private String imgUrl;
+    @ApiModelProperty("创建时间 ")
+	@TableField(value = "create_time_")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+    private Date createTime;
+    @ApiModelProperty("创建人 ")
+	@TableField(value = "create_by_")
+    private Long createBy;
+
+	public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    
+	public Long getActivityId() {
+        return activityId;
+    }
+
+    public void setActivityId(Long activityId) {
+        this.activityId = activityId;
+    }
+    
+	public String getRewardName() {
+        return rewardName;
+    }
+
+    public void setRewardName(String rewardName) {
+        this.rewardName = rewardName;
+    }
+    
+	public String getRewardDescribe() {
+        return rewardDescribe;
+    }
+
+    public void setRewardDescribe(String rewardDescribe) {
+        this.rewardDescribe = rewardDescribe;
+    }
+    
+	public String getImgUrl() {
+        return imgUrl;
+    }
+
+    public void setImgUrl(String imgUrl) {
+        this.imgUrl = imgUrl;
+    }
+    
+	public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+    
+	public Long getCreateBy() {
+        return createBy;
+    }
+
+    public void setCreateBy(Long createBy) {
+        this.createBy = createBy;
+    }
+    
+}

+ 115 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/ActivityUserReward.java

@@ -0,0 +1,115 @@
+package com.yonge.cooleshow.biz.dal.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+
+/**
+ * 活动用户获奖表
+ */
+@TableName("activity_user_reward")
+@ApiModel(value = "ActivityUserReward对象", description = "活动用户获奖表")
+public class ActivityUserReward implements Serializable {
+    private static final long serialVersionUID = 1L;
+    @ApiModelProperty("主键 ")
+    @TableId(value = "id_", type = IdType.AUTO)
+    private Long id;
+    @ApiModelProperty("活动id ")
+    @TableField(value = "activity_id_")
+    private Long activityId;
+    @ApiModelProperty("活动具体项目id ")
+    @TableField(value = "biz_id_")
+    private Long bizId;
+    @ApiModelProperty("用户id ")
+    @TableField(value = "user_id_")
+    private Long userId;
+    @ApiModelProperty("奖品id ")
+    @TableField(value = "reward_id_")
+    private Long rewardId;
+    @ApiModelProperty("是否领取奖品 0 否 1 是 ")
+    @TableField(value = "receive_flag_")
+    private Integer receiveFlag;
+    @ApiModelProperty("创建时间 ")
+    @TableField(value = "create_time_")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+    private Date createTime;
+    @ApiModelProperty("更新时间 ")
+    @TableField(value = "update_time_")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+    private Date updateTime;
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+
+    public Long getActivityId() {
+        return activityId;
+    }
+
+    public void setActivityId(Long activityId) {
+        this.activityId = activityId;
+    }
+
+    public Long getBizId() {
+        return bizId;
+    }
+
+    public void setBizId(Long bizId) {
+        this.bizId = bizId;
+    }
+
+    public Long getUserId() {
+        return userId;
+    }
+
+    public void setUserId(Long userId) {
+        this.userId = userId;
+    }
+
+    public Long getRewardId() {
+        return rewardId;
+    }
+
+    public void setRewardId(Long rewardId) {
+        this.rewardId = rewardId;
+    }
+
+    public Integer getReceiveFlag() {
+        return receiveFlag;
+    }
+
+    public void setReceiveFlag(Integer receiveFlag) {
+        this.receiveFlag = receiveFlag;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public Date getUpdateTime() {
+        return updateTime;
+    }
+
+    public void setUpdateTime(Date updateTime) {
+        this.updateTime = updateTime;
+    }
+
+}

+ 13 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/CourseGroup.java

@@ -61,9 +61,13 @@ public class CourseGroup implements Serializable {
     private BigDecimal coursePrice;
 
     @TableField("status_")
-    @ApiModelProperty(value = "课程组状态 ING进行中 COMPLETE已完成 DISSOLVE-未成课(解散课程) CANCEL已取消-未开始报名前可取消 APPLY报名中 NOT_SALE未开售")
+    @ApiModelProperty(value = "课程组状态 ING进行中 COMPLETE已完成 DISSOLVE-未成课(解散课程) CANCEL已取消-未开始报名前可取消 APPLY报名中 NOT_SALE未开售 OUT_SALE:下架")
     private String status;
 
+    @TableField("reason_")
+    @ApiModelProperty(value = "曲目停用原因")
+    private String reason;
+
     @TableField("sales_start_date_")
     @ApiModelProperty(value = "课程组售卖开始日期")
     private Date salesStartDate;
@@ -112,6 +116,14 @@ public class CourseGroup implements Serializable {
     @ApiModelProperty(value = "更新时间")
     private Date updatedTime;
 
+    public String getReason() {
+        return reason;
+    }
+
+    public void setReason(String reason) {
+        this.reason = reason;
+    }
+
     public Long getId() {
         return id;
     }

+ 0 - 54
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/CourseScheduleStudent.java

@@ -1,54 +0,0 @@
-//package com.yonge.cooleshow.biz.dal.entity;
-//
-//import com.baomidou.mybatisplus.annotation.IdType;
-//import com.baomidou.mybatisplus.annotation.TableField;
-//import com.baomidou.mybatisplus.annotation.TableId;
-//import io.swagger.annotations.ApiModel;
-//import io.swagger.annotations.ApiModelProperty;
-//
-//import java.io.Serializable;
-//import java.util.Date;
-//
-///**
-// * @Author: cy
-// * @Date: 2022/5/26
-// */
-//@ApiModel
-//public class CourseScheduleStudent implements Serializable {
-//    @TableId(value = "id_", type = IdType.AUTO)
-//    @ApiModelProperty(value = "主键")
-//    private Long id;
-//
-//    @TableField("course_id_")
-//    @ApiModelProperty(value = "课程id")
-//    private Long courseId;
-//
-//    @TableField("student_id_")
-//    @ApiModelProperty(value = "学生id")
-//    private Long studentId;
-//
-//    public Long getId() {
-//        return id;
-//    }
-//
-//    public void setId(Long id) {
-//        this.id = id;
-//    }
-//
-//    public Long getCourseId() {
-//        return courseId;
-//    }
-//
-//    public void setCourseId(Long courseId) {
-//        this.courseId = courseId;
-//    }
-//
-//    public Long getStudentId() {
-//        return studentId;
-//    }
-//
-//    public void setStudentId(Long studentId) {
-//        this.studentId = studentId;
-//    }
-//}
-//

+ 12 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/MusicSheet.java

@@ -93,6 +93,10 @@ public class MusicSheet implements Serializable {
 	@ApiModelProperty(value = "曲目状态(0:停用,1:启用)")
 	private YesOrNoEnum state;
 
+	@TableField("reason_")
+	@ApiModelProperty(value = "曲目停用原因")
+	private String reason;
+
     @TableField("audit_status_")
     @ApiModelProperty(value = "审核状态(DOING:待审核;PASS:通过;UNPASS:未通过)")
     private AuthStatusEnum auditStatus;
@@ -179,6 +183,14 @@ public class MusicSheet implements Serializable {
 	@ApiModelProperty(value = "假删除标识 0:未删除 1:已删除")
 	private Boolean delFlag;
 
+	public String getReason() {
+		return reason;
+	}
+
+	public void setReason(String reason) {
+		this.reason = reason;
+	}
+
 	public String getExtConfigJson() {
 		return extConfigJson;
 	}

+ 14 - 2
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/PianoRoomBuyRecord.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
+import com.yonge.cooleshow.biz.dal.enums.InOrOutEnum;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 
@@ -48,7 +49,18 @@ public class PianoRoomBuyRecord implements Serializable {
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
     private Date updateTime;
 
-	public Long getId() {
+    public PianoRoomBuyRecord() {
+    }
+
+    public PianoRoomBuyRecord(Long userId, Long settingsId, String orderNo, String subOrderNo, Integer times) {
+        this.userId = userId;
+        this.settingsId = settingsId;
+        this.orderNo = orderNo;
+        this.subOrderNo = subOrderNo;
+        this.times = times;
+    }
+
+    public Long getId() {
         return id;
     }
 
@@ -111,5 +123,5 @@ public class PianoRoomBuyRecord implements Serializable {
     public void setUpdateTime(Date updateTime) {
         this.updateTime = updateTime;
     }
-    
+
 }

+ 112 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/PianoRoomChangeRecord.java

@@ -0,0 +1,112 @@
+package com.yonge.cooleshow.biz.dal.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.yonge.cooleshow.biz.dal.enums.InOrOutEnum;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.io.Serializable;
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+import javax.validation.constraints.Positive;
+
+/**
+ * 琴房时长变更记录表
+ */
+@TableName("piano_room_change_record")
+@ApiModel(value = "PianoRoomChangeRecord对象", description = "琴房时长变更记录表")
+public class PianoRoomChangeRecord implements Serializable {
+	private static final long serialVersionUID = 1L;
+    @ApiModelProperty("购买记录id ")
+    @TableId(value = "id_", type = IdType.AUTO)
+    private Long id;
+    @ApiModelProperty("用户id ")
+	@TableField(value = "user_id_")
+    @NotNull(message = "用户ID不能为空")
+    private Long userId;
+    @ApiModelProperty("时长(分) ")
+	@TableField(value = "times_")
+    @NotNull(message = "时长不能为空")
+    @Positive(message = "时长必须大于0")
+    private Integer times;
+    @ApiModelProperty("操作类型:IN、增加 OUT、减少 ")
+	@TableField(value = "in_or_out_")
+    @NotNull(message = "操作类型不能为空")
+    private InOrOutEnum inOrOut;
+    @ApiModelProperty("原因 ")
+	@TableField(value = "reason_")
+    @NotBlank(message = "原因不能为空")
+    private String reason;
+    @ApiModelProperty("创建时间 ")
+	@TableField(value = "create_time_")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
+    private Date createTime;
+    @ApiModelProperty("创建人 ")
+    @TableField(value = "create_by_")
+    private Long createBy;
+
+
+    public Long getId() {
+        return id;
+    }
+
+    public void setId(Long id) {
+        this.id = id;
+    }
+    
+	public Long getUserId() {
+        return userId;
+    }
+
+    public void setUserId(Long userId) {
+        this.userId = userId;
+    }
+    
+	public Integer getTimes() {
+        return times;
+    }
+
+    public void setTimes(Integer times) {
+        this.times = times;
+    }
+    
+	public InOrOutEnum getInOrOut() {
+        return inOrOut;
+    }
+
+    public void setInOrOut(InOrOutEnum inOrOut) {
+        this.inOrOut = inOrOut;
+    }
+    
+	public String getReason() {
+        return reason;
+    }
+
+    public void setReason(String reason) {
+        this.reason = reason;
+    }
+    
+	public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public Long getCreateBy() {
+        return createBy;
+    }
+
+    public void setCreateBy(Long createBy) {
+        this.createBy = createBy;
+    }
+}

+ 2 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/PianoRoomTime.java

@@ -3,6 +3,7 @@ package com.yonge.cooleshow.biz.dal.entity;
 import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 
@@ -14,6 +15,7 @@ import java.util.Date;
  * @Date: 2022/5/26
  */
 @ApiModel
+@TableName("piano_room_time")
 public class PianoRoomTime implements Serializable {
     @TableId(value = "id_", type = IdType.AUTO)
     @ApiModelProperty(value = "主键")

+ 2 - 2
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/PlatformCashAccountRecord.java

@@ -44,11 +44,11 @@ public class PlatformCashAccountRecord implements Serializable {
     private PostStatusEnum postStatus;
 
     @TableField("biz_type_")
-    @ApiModelProperty(value = "业务类型:PRACTICE、陪练课 LIVE、直播课 VIDEO、视频课 MUSIC、乐谱")
+    @ApiModelProperty(value = "业务类型:PRACTICE、陪练课 LIVE、直播课 VIDEO、视频课 MUSIC、乐谱 VIP、会员充值 MALL、商品购买 PIAON_ROOM、琴房充值 ACTI_REGIST、活动报名 LIVE_SHARE、直播课分润 VIDEO_SHARE、视频课分润  MUSIC_SHARE、乐谱分润  VIP_SHARE、会员分润  MALL_SHARE、商品分润")
     private AccountBizTypeEnum bizType;
 
     @TableField("biz_id_")
-    @ApiModelProperty(value = "业务id(陪练课,直播课course_schedule_id_ | 视频课,乐谱为课程组曲子id | 提现为提现记录id)")
+    @ApiModelProperty(value = "业务id(PRACTICE,LIVE,LIVE_SHARE为课程组id | VIDEO,VIDEO_SHARE为视频组id |MUSIC,MUSIC_SHARE为曲谱id | VIP,VIP_SHARE,PIAON_ROOM为会员琴房价格表id | MALL,MALL_SHARE为商品id | ACTI_REGIST为活动id )")
     private Long bizId;
 
     @TableField("memo_")

+ 11 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/SysMusicCompareRecord.java

@@ -83,6 +83,17 @@ public class SysMusicCompareRecord extends BaseEntity {
 	@ApiModelProperty("音乐过期 0:否 1:是")
 	private Integer expire;
 
+	@ApiModelProperty("活动项目id")
+	private Long evaluationId;
+
+	public Long getEvaluationId() {
+		return evaluationId;
+	}
+
+	public void setEvaluationId(Long evaluationId) {
+		this.evaluationId = evaluationId;
+	}
+
 	public String getCustomConfiguration() {
 		return customConfiguration;
 	}

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/UserBankCard.java

@@ -55,7 +55,7 @@ public class UserBankCard implements Serializable {
     @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
     private Date updateTime;
-    @ApiModelProperty("逻辑删除 ")
+    @ApiModelProperty("删除 ")
     @TableField(value = "del_flag_")
     private Boolean delFlag;
 

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/UserOrder.java

@@ -42,7 +42,7 @@ public class UserOrder implements Serializable {
     @ApiModelProperty("下单应用:STUDENT 学生端 TEACHER 老师端")
     @TableField(value = "order_client_")
     private ClientEnum orderClient;
-    @ApiModelProperty("订单类型: 学生端( VIP、开通会员  PRACTICE、陪练课购买  LIVE、直播课购买 VIDEO、视频课购买 MUSIC、单曲点播 ) 老师端(VIP、开通会员 PINAO_ROOM、琴房时长)")
+    @ApiModelProperty("订单类型: 学生端( VIP、开通会员  PRACTICE、陪练课购买  LIVE、直播课购买 VIDEO、视频课购买 MUSIC、单曲点播 ACTI_REGIST、活动报名) 老师端(VIP、开通会员 PINAO_ROOM、琴房时长)")
     @TableField(value = "order_type_")
     private OrderTypeEnum orderType;
     @ApiModelProperty("订单描述信息 ")

+ 1 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/UserOrderDetail.java

@@ -32,7 +32,7 @@ public class UserOrderDetail implements Serializable {
     @ApiModelProperty("卖家id ")
     @TableField(value = "merch_id_")
     private Long merchId;
-    @ApiModelProperty("订单类型: 学生端( VIP、开通会员  PRACTICE、陪练课购买  LIVE、直播课购买 VIDEO、视频课购买 MUSIC、单曲点播 ) 老师端(VIP、开通会员 PINAO_ROOM、琴房时长)")
+    @ApiModelProperty("订单类型: 学生端( VIP、开通会员  PRACTICE、陪练课购买  LIVE、直播课购买 VIDEO、视频课购买 MUSIC、单曲点播 ACTI_REGIST、活动报名) 老师端(VIP、开通会员 PINAO_ROOM、琴房时长)")
     @TableField(value = "good_type_")
     private GoodTypeEnum goodType;
     @ApiModelProperty("业务id ")

+ 48 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/VideoLessonGroup.java

@@ -83,6 +83,22 @@ public class VideoLessonGroup extends BaseEntity {
     @ApiModelProperty(value = "是否热门课程")
     private Integer hotFlag;  //是否热门课程
 
+    @TableField("shelves_flag_")
+    @ApiModelProperty(value = "是否上架 (0:否  1:是)")
+    private Integer shelvesFlag;  //是否上架 (0:否  1:是)
+
+    @TableField("shelves_time_")
+    @ApiModelProperty(value = "上下架时间")
+    private Date shelvesTime;
+
+    @TableField("shelves_reason_")
+    @ApiModelProperty(value = "上下架原因")
+    private String shelvesReason;
+
+    @TableField("shelves_id_")
+    @ApiModelProperty(value = "上下架人")
+    private Long shelvesId;
+
     @TableField("audit_status_")
     @ApiModelProperty(value = "审核状态(DOING:待审核 PASS:通过 UNPASS:未通过)")
     private AuthStatusEnum auditStatus;  //审核状态
@@ -259,4 +275,36 @@ public class VideoLessonGroup extends BaseEntity {
     public void setAuditVersion(YesOrNoEnum auditVersion) {
         this.auditVersion = auditVersion;
     }
+
+    public Integer getShelvesFlag() {
+        return shelvesFlag;
+    }
+
+    public void setShelvesFlag(Integer shelvesFlag) {
+        this.shelvesFlag = shelvesFlag;
+    }
+
+    public Date getShelvesTime() {
+        return shelvesTime;
+    }
+
+    public void setShelvesTime(Date shelvesTime) {
+        this.shelvesTime = shelvesTime;
+    }
+
+    public String getShelvesReason() {
+        return shelvesReason;
+    }
+
+    public void setShelvesReason(String shelvesReason) {
+        this.shelvesReason = shelvesReason;
+    }
+
+    public Long getShelvesId() {
+        return shelvesId;
+    }
+
+    public void setShelvesId(Long shelvesId) {
+        this.shelvesId = shelvesId;
+    }
 }

+ 1 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/AccountBizTypeEnum.java

@@ -18,6 +18,7 @@ public enum AccountBizTypeEnum implements BaseEnum<String, AccountBizTypeEnum> {
     VIP("会员充值"),
     MALL("商品购买"),
     PIAON_ROOM("琴房充值"),
+    ACTI_REGIST("活动报名"),
     WITHDRAWAL("结算"),
 
     LIVE_SHARE("直播课分润"),

+ 4 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/AuthStatusEnum.java

@@ -13,7 +13,10 @@ public enum AuthStatusEnum implements BaseEnum<String, AuthStatusEnum> {
     UNPAALY("未申请"),
     DOING("审核中"),
     PASS("通过"),
-    UNPASS("不通过");
+    UNPASS("不通过"),
+    OUT_SALE("下架"), // 曲目前台传参,转换
+
+    ;
     @EnumValue
     private String code;
     private String name;

+ 4 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/CourseGroupEnum.java

@@ -9,8 +9,11 @@ public enum CourseGroupEnum implements BaseEnum<String,CourseGroupEnum> {
     DISSOLVE( "未成课"),//解散课程
     CANCEL("已取消"),//课程已取消
     APPLY("报名中"),//开售中可以报名
-    NOT_SALE( "未开售");//还未到开售日期
+    NOT_SALE( "未开售"),//还未到开售日期
+    OUT_SALE( "下架"),//下架
 
+
+    ;
     @EnumValue
     private String code;
 

+ 3 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/GoodTypeEnum.java

@@ -16,7 +16,9 @@ public enum GoodTypeEnum implements BaseEnum<String, GoodTypeEnum> {
     VIDEO("视频课购买"),
     MUSIC("单曲点播"),
     PINAO_ROOM("琴房时长"),
-    MALL("商城");
+    ACTI_REGIST("活动报名")
+    ;
+
     @EnumValue
     private String code;
     private String msg;

+ 7 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/MessageTypeEnum.java

@@ -90,7 +90,13 @@ public enum MessageTypeEnum implements BaseEnum<String, MessageTypeEnum> {
     SMS_BUY_LIVE("直播课购买成功"),
     SMS_LIVE_COMPLETION_SUCCESS("直播课成课"),
     SMS_LIVE_COMPLETION_FAIL("直播课成课失败"),
-    SMS_TOMORROW_COURSE_REMINDER("明日课程提醒(每晚9点)(短信)");
+    SMS_TOMORROW_COURSE_REMINDER("明日课程提醒(每晚9点)(短信)"),
+
+    MUSIC_SHEET_OUT_SALE_REASON("老师曲目下架通知"),
+    LIVE_COURSE_OUT_SALE_REASON("老师直播课下架通知"),
+    VIDEO_COURSE_OUT_SALE_REASON("老师视频课下架通知"),
+
+    ;
 
     MessageTypeEnum(String msg) {
         this.code = this.name();

+ 2 - 1
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/enums/OrderTypeEnum.java

@@ -15,7 +15,8 @@ public enum OrderTypeEnum implements BaseEnum<String, OrderTypeEnum> {
     LIVE("直播课购买"),
     VIDEO("视频课购买"),
     MUSIC("单曲点播"),
-    PINAO_ROOM("琴房时长")
+    PINAO_ROOM("琴房时长"),
+    ACTI_REGIST("活动报名")
     ;
     @EnumValue
     private String code;

+ 50 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/ActivityEvaluationRecordService.java

@@ -0,0 +1,50 @@
+package com.yonge.cooleshow.biz.dal.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.yonge.cooleshow.biz.dal.vo.ActivityEvaluationRecordVo;
+import com.yonge.cooleshow.biz.dal.dto.search.ActivityEvaluationRecordSearch;
+import com.yonge.cooleshow.biz.dal.entity.ActivityEvaluationRecord;
+
+import java.math.BigDecimal;
+import java.util.List;
+
+/**
+ * 评测活动参与记录表 服务类
+ * @author liweifan
+ * @date 2022-08-04
+ */
+public interface ActivityEvaluationRecordService extends IService<ActivityEvaluationRecord>  {
+
+	/**
+     * 查询详情
+     * @author liweifan
+ 	 * @date 2022-08-04
+     */
+	ActivityEvaluationRecordVo detail(Long id);
+
+    /**
+     * 分页查询
+     * @author liweifan
+ 	 * @date 2022-08-04
+     */
+    IPage<ActivityEvaluationRecordVo> selectPage(IPage<ActivityEvaluationRecordVo> page, ActivityEvaluationRecordSearch query);
+
+	/**
+	 * 获取参与 的活动项目id集合
+	 *
+	 * @param userId 用户id
+	 * @param activityId 活动id
+	 * @return
+	 */
+    List<Long> getJoinEvaluationIdList(Long activityId, Long userId);
+
+	/**
+	 * 保存活动评测分数
+	 *
+	 * @param evaluationId 活动项目id
+	 * @param userId 用户id
+	 * @param score 分数
+	 */
+    void saveRecord(Long evaluationId, Long userId, BigDecimal score);
+}

+ 49 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/ActivityEvaluationService.java

@@ -0,0 +1,49 @@
+package com.yonge.cooleshow.biz.dal.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.yonge.cooleshow.biz.dal.dto.ActivityEvaluationDto;
+import com.yonge.cooleshow.biz.dal.vo.ActivityEvaluationVo;
+import com.yonge.cooleshow.biz.dal.dto.search.ActivityEvaluationSearch;
+import com.yonge.cooleshow.biz.dal.entity.ActivityEvaluation;
+import com.yonge.cooleshow.biz.dal.vo.ActivityMusicVo;
+
+import java.util.List;
+
+/**
+ * 评测活动表 服务类
+ * @author liweifan
+ * @date 2022-08-04
+ */
+public interface ActivityEvaluationService extends IService<ActivityEvaluation>  {
+
+	/**
+     * 查询详情
+     * @author liweifan
+ 	 * @date 2022-08-04
+     */
+	ActivityEvaluationVo detail(Long id);
+
+    /**
+     * 分页查询
+     * @author liweifan
+ 	 * @date 2022-08-04
+     */
+    IPage<ActivityEvaluationVo> selectPage(IPage<ActivityEvaluationVo> page, ActivityEvaluationSearch query);
+
+	/**
+	 * 为活动
+	 * @param param
+	 * @return
+	 */
+    Boolean addBatch(ActivityEvaluationDto param);
+
+	/**
+	 * 获取活动曲目细腻
+	 *
+	 * @param activityPlanId 活动id
+	 * @param userId
+	 * @return
+	 */
+    List<ActivityMusicVo> getActivityMusic(Long activityPlanId, Long userId);
+}

+ 80 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/ActivityPlanService.java

@@ -0,0 +1,80 @@
+package com.yonge.cooleshow.biz.dal.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.yonge.cooleshow.auth.api.entity.SysUser;
+
+import com.yonge.cooleshow.biz.dal.dto.ActivityPlanDto;
+
+import com.yonge.cooleshow.auth.api.entity.SysUser;
+import com.yonge.cooleshow.biz.dal.dto.req.OrderReq;
+
+import com.yonge.cooleshow.biz.dal.vo.ActivityPlanVo;
+import com.yonge.cooleshow.biz.dal.dto.search.ActivityPlanSearch;
+import com.yonge.cooleshow.biz.dal.entity.ActivityPlan;
+import com.yonge.cooleshow.biz.dal.vo.MusicActivityVo;
+import com.yonge.cooleshow.biz.dal.vo.UserOrderDetailVo;
+import com.yonge.cooleshow.biz.dal.vo.res.OrderCreateRes;
+import com.yonge.cooleshow.common.entity.HttpResponseResult;
+
+/**
+ * 活动计划表 服务类
+ * @author liweifan
+ * @date 2022-08-04
+ */
+public interface ActivityPlanService extends IService<ActivityPlan>  {
+
+	/**
+     * 查询详情
+     * @author liweifan
+ 	 * @date 2022-08-04
+     */
+	ActivityPlanVo detail(Long id);
+    /**
+     * 分页查询
+     * @author liweifan
+ 	 * @date 2022-08-04
+     */
+    IPage<ActivityPlanVo> selectPage(IPage<ActivityPlanVo> page, ActivityPlanSearch query);
+	/**
+	 * 新增活动
+	 * @param activityPlan
+	 * @param user
+	 * @return
+	 */
+	Boolean submit(ActivityPlanDto activityPlan, SysUser user);
+
+	Boolean updateActivityState(Long activityId, Integer activityState, Long id);
+	/**
+	 * 活动信息
+	 *
+	 * @param activityPlanId 活动id
+	 * @param user 用户
+	 * @return
+	 */
+    MusicActivityVo getActivityInfo(Long activityPlanId, SysUser user);
+
+	/**
+	 * 活动报名下单验证
+	 *
+	 * @param orderReqInfo
+	 * @return
+	 */
+    HttpResponseResult<OrderCreateRes> orderCreate(OrderReq.OrderReqInfo orderReqInfo);
+
+	/**
+	 * 活动购买
+	 *
+	 * @param userOrderDetailVo
+	 */
+    void orderSuccess(UserOrderDetailVo userOrderDetailVo);
+
+	/**
+	 * 参与活动项目
+	 *
+	 * @param evaluationId 活动项目id
+	 * @param user 用户
+	 * @return
+	 */
+	Boolean joinEvaluation(Long evaluationId, SysUser user);
+}

部分文件因文件數量過多而無法顯示