Przeglądaj źródła

Merge branch 'dev_v1.3.7_20221020' of http://git.dayaedu.com/yonge/cooleshow into dev_v1.3.7_20221020

liujunchi 2 lat temu
rodzic
commit
35c8b2596c

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

@@ -29,6 +29,9 @@ public class StudentMusicAlbumSearch extends MusicAlbumSearch{
     @ApiModelProperty(value = "购买类型 ", hidden = true)
     private PurchaseRecordTypeEnum purchaseType;
 
+    @ApiModelProperty("课程赠品 0:购买 1:赠品")
+    private Integer courseGift;
+
     @ApiModelProperty(value = "用户类型 TEACHER:老师,STUDENT:学生", hidden = true)
     private ClientEnum clientType;
 
@@ -81,6 +84,14 @@ public class StudentMusicAlbumSearch extends MusicAlbumSearch{
     }
 
 
+    public Integer getCourseGift() {
+        return courseGift;
+    }
+
+    public void setCourseGift(Integer courseGift) {
+        this.courseGift = courseGift;
+    }
+
     public StudentMusicAlbumSearch studentId(Long studentId) {
         this.studentId = studentId;
         return this;
@@ -110,4 +121,9 @@ public class StudentMusicAlbumSearch extends MusicAlbumSearch{
         this.clientType = clientType;
         return this;
     }
+
+    public StudentMusicAlbumSearch courseGift(Integer courseGift) {
+        this.courseGift = courseGift;
+        return this;
+    }
 }

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

@@ -1,6 +1,7 @@
 package com.yonge.cooleshow.biz.dal.dto.search;
 
 import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
+import com.yonge.cooleshow.biz.dal.enums.album.PurchaseRecordTypeEnum;
 import io.swagger.annotations.ApiModelProperty;
 
 /**
@@ -24,7 +25,11 @@ public class StudentMusicSheetSearch  extends MusicSheetSearch{
     @ApiModelProperty(value = "用户类型",hidden = true)
     private ClientEnum userType;
 
+    @ApiModelProperty("购买类型 ")
+    private PurchaseRecordTypeEnum purchaseType;
 
+    @ApiModelProperty("课程赠品 0:购买 1:赠品")
+    private Integer courseGift;
 
     @ApiModelProperty(value = "版本号")
     private String version;
@@ -92,4 +97,20 @@ public class StudentMusicSheetSearch  extends MusicSheetSearch{
     public void setClientType(ClientEnum clientType) {
         this.clientType = clientType;
     }
+
+    public PurchaseRecordTypeEnum getPurchaseType() {
+        return purchaseType;
+    }
+
+    public void setPurchaseType(PurchaseRecordTypeEnum purchaseType) {
+        this.purchaseType = purchaseType;
+    }
+
+    public Integer getCourseGift() {
+        return courseGift;
+    }
+
+    public void setCourseGift(Integer courseGift) {
+        this.courseGift = courseGift;
+    }
 }

+ 3 - 0
cooleshow-user/user-biz/src/main/resources/config/mybatis/MusicAlbumMapper.xml

@@ -131,6 +131,9 @@
                 <if test="query.purchaseType != null">
                     AND t2.purchase_type_ = #{query.purchaseType}
                 </if>
+                <if test="query.courseGift != null">
+                    AND t2.course_music_album_id_ <choose><when test="query.courseGift == 0"> = </when><otherwise> > </otherwise> </choose> 0
+                </if>
                 <if test="query.studentId != null">
                     AND t2.student_id_ = #{query.studentId}
                 </if>

+ 6 - 0
cooleshow-user/user-biz/src/main/resources/config/mybatis/MusicSheetMapper.xml

@@ -379,6 +379,12 @@
             <if test="param.userType != null">
                 and mspr.client_type_ = #{param.userType}
             </if>
+            <if test="param.purchaseType != null">
+                AND mspr.purchase_type_ = #{param.purchaseType}
+            </if>
+            <if test="param.courseGift != null">
+                AND mspr.course_music_album_id_ <choose><when test="param.courseGift == 0"> = </when><otherwise> > </otherwise> </choose> 0
+            </if>
         </where>
         order by  mspr.id_ desc
     </select>

+ 10 - 1
cooleshow-user/user-student/src/main/java/com/yonge/cooleshow/student/controller/MusicAlbumController.java

@@ -27,6 +27,8 @@ import com.yonge.toolset.base.page.QueryInfo;
 import com.yonge.toolset.mybatis.support.PageUtil;
 
 import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 
@@ -173,8 +175,14 @@ public class MusicAlbumController extends BaseController {
      * @return HttpResponseResult<PageInfo<MusicAlbumVo>>
      */
     @ApiOperation(value = "已购买专辑信息")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "gift", value = "课程赠品 0:购买 1:赠品, 默认值: 0"),
+            @ApiImplicitParam(name = "page", value = "分页查询, 默认值: 1"),
+            @ApiImplicitParam(name = "row", value = "当前页行数, 默认值: 10"),
+    })
     @GetMapping("/purchased")
-    public HttpResponseResult<PageInfo<MusicAlbumVo>> purchasedAlbumInfo(QueryInfo query) {
+    public HttpResponseResult<PageInfo<MusicAlbumVo>> purchasedAlbumInfo(@RequestParam(value = "gift", required = false, defaultValue = "0") Integer gift,
+                                                                         QueryInfo query) {
 
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null  || sysUser.getId() == null) {
@@ -184,6 +192,7 @@ public class MusicAlbumController extends BaseController {
         search.studentId(sysUser.getId())
                 .albumPurchased(true)
                 .purchaseType(PurchaseRecordTypeEnum.ALBUM)
+                .courseGift(gift)
                 .orderStatus(OrderStatusEnum.PAID)
                 .clientType(ClientEnum.STUDENT);
 

+ 15 - 2
cooleshow-user/user-student/src/main/java/com/yonge/cooleshow/student/controller/MusicSheetController.java

@@ -2,7 +2,10 @@ package com.yonge.cooleshow.student.controller;
 
 import com.yonge.cooleshow.biz.dal.dto.AppMusicSheetVo;
 import com.yonge.cooleshow.biz.dal.enums.MusicSortType;
+import com.yonge.cooleshow.biz.dal.enums.album.PurchaseRecordTypeEnum;
 import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 
@@ -48,6 +51,7 @@ import com.yonge.toolset.mybatis.support.PageUtil;
 import com.yonge.toolset.utils.idcard.IdcardInfoExtractor;
 
 import java.util.ArrayList;
+import java.util.Optional;
 
 /**
  * 曲谱表 web 控制层
@@ -194,9 +198,15 @@ public class MusicSheetController extends BaseController {
     /**
      * 我的单曲,收藏单曲
      */
-    @GetMapping("/my")
     @ApiOperation(value = "我的单曲")
-    public HttpResponseResult<PageInfo<MusicSheetVo>> myMusic(QueryInfo query) {
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "gift", value = "课程赠品 0:购买 1:赠品, 默认值: 0"),
+            @ApiImplicitParam(name = "page", value = "分页查询, 默认值: 1"),
+            @ApiImplicitParam(name = "row", value = "当前页行数, 默认值: 10"),
+    })
+    @GetMapping("/my")
+    public HttpResponseResult<PageInfo<MusicSheetVo>> myMusic(@RequestParam(value = "gift", required = false, defaultValue = "0") Integer gift,
+                                                              QueryInfo query) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null  || sysUser.getId() == null) {
             return failed("用户信息获取失败");
@@ -206,6 +216,9 @@ public class MusicSheetController extends BaseController {
         // search.setState(YesOrNoEnum.YES);
         search.setAuditStatus(AuthStatusEnum.PASS);
         search.setUserType(ClientEnum.STUDENT);
+        search.setPurchaseType(Optional.ofNullable(search.getPurchaseType()).orElse(PurchaseRecordTypeEnum.MUSIC));
+        search.setCourseGift(gift);
+
         IPage<MusicSheetVo> sheetVoIPage = musicSheetService.myMusic(PageUtil.getPage(query),search);
         return succeed(PageUtil.pageInfo(sheetVoIPage));
     }

+ 10 - 1
cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/MusicAlbumController.java

@@ -4,6 +4,8 @@ import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.enums.OrderStatusEnum;
 import com.yonge.cooleshow.biz.dal.enums.album.PurchaseRecordTypeEnum;
 import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 
@@ -180,8 +182,14 @@ public class MusicAlbumController extends BaseController {
      * @return HttpResponseResult<PageInfo<MusicAlbumVo>>
      */
     @ApiOperation(value = "已购买专辑信息")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "gift", value = "课程赠品 0:购买 1:赠品, 默认值: 0"),
+            @ApiImplicitParam(name = "page", value = "分页查询, 默认值: 1"),
+            @ApiImplicitParam(name = "row", value = "当前页行数, 默认值: 10"),
+    })
     @GetMapping("/purchased")
-    public HttpResponseResult<PageInfo<MusicAlbumVo>> purchasedAlbumInfo(QueryInfo query) {
+    public HttpResponseResult<PageInfo<MusicAlbumVo>> purchasedAlbumInfo(@RequestParam(value = "gift", required = false, defaultValue = "0") Integer gift,
+                                                                         QueryInfo query) {
 
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null  || sysUser.getId() == null) {
@@ -191,6 +199,7 @@ public class MusicAlbumController extends BaseController {
         search.studentId(sysUser.getId())
                 .albumPurchased(true)
                 .purchaseType(PurchaseRecordTypeEnum.ALBUM)
+                .courseGift(gift)
                 .orderStatus(OrderStatusEnum.PAID)
                 .clientType(ClientEnum.TEACHER);
 

+ 6 - 0
cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/MusicSheetController.java

@@ -3,6 +3,8 @@ package com.yonge.cooleshow.teacher.controller;
 import com.yonge.cooleshow.biz.dal.dto.AppMusicSheetVo;
 import com.yonge.cooleshow.biz.dal.entity.Student;
 import com.yonge.cooleshow.biz.dal.enums.MusicSortType;
+import com.yonge.cooleshow.biz.dal.enums.album.PurchaseRecordTypeEnum;
+import com.yonge.cooleshow.common.enums.EStatus;
 import com.yonge.toolset.base.page.QueryInfo;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -10,6 +12,7 @@ import io.swagger.annotations.ApiParam;
 
 import java.util.ArrayList;
 import java.util.Date;
+import java.util.Optional;
 
 import javax.validation.Valid;
 
@@ -246,6 +249,9 @@ public class MusicSheetController extends BaseController {
         // search.setState(YesOrNoEnum.YES);
         search.setAuditStatus(AuthStatusEnum.PASS);
         search.setUserType(ClientEnum.TEACHER);
+        search.setPurchaseType(PurchaseRecordTypeEnum.MUSIC);
+        search.setCourseGift(Optional.ofNullable(search.getCourseGift()).orElse(EStatus.DISABLE.getValue()));
+
         IPage<MusicSheetVo> sheetVoIPage = musicSheetService.myMusic(PageUtil.getPage(search),search);
         return succeed(PageUtil.pageInfo(sheetVoIPage));
     }

+ 11 - 1
cooleshow-user/user-website/src/main/java/com/yonge/cooleshow/website/controller/MusicAlbumController.java

@@ -16,6 +16,8 @@ import com.yonge.toolset.base.page.PageInfo;
 import com.yonge.toolset.base.page.QueryInfo;
 import com.yonge.toolset.mybatis.support.PageUtil;
 import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -88,8 +90,15 @@ public class MusicAlbumController extends BaseController {
      * @return HttpResponseResult<PageInfo<MusicAlbumVo>>
      */
     @ApiOperation(value = "已购买专辑信息")
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "clientType", value = "客户端类型: TEACHER, STUDENT; 默认值: STUDENT"),
+            @ApiImplicitParam(name = "gift", value = "课程赠品 0:购买 1:赠品, 默认值: 0"),
+            @ApiImplicitParam(name = "page", value = "分页查询, 默认值: 1"),
+            @ApiImplicitParam(name = "row", value = "当前页行数, 默认值: 10"),
+    })
     @GetMapping("/purchased")
-    public HttpResponseResult<PageInfo<MusicAlbumVo>> purchasedAlbumInfo(@ApiParam(value = "客户端类型") @RequestParam(value = "clientType", required = false, defaultValue = "STUDENT") String clientType,
+    public HttpResponseResult<PageInfo<MusicAlbumVo>> purchasedAlbumInfo(@RequestParam(value = "clientType", required = false, defaultValue = "STUDENT") String clientType,
+                                                                         @RequestParam(value = "gift", required = false, defaultValue = "0") Integer gift,
                                                                          QueryInfo query) {
 
         SysUser sysUser = sysUserFeignService.queryUserInfo();
@@ -100,6 +109,7 @@ public class MusicAlbumController extends BaseController {
         search.studentId(sysUser.getId())
                 .albumPurchased(true)
                 .purchaseType(PurchaseRecordTypeEnum.ALBUM)
+                .courseGift(gift)
                 .orderStatus(OrderStatusEnum.PAID)
                 .clientType(ClientEnum.valueOf(clientType));
 

+ 18 - 3
cooleshow-user/user-website/src/main/java/com/yonge/cooleshow/website/controller/MusicSheetController.java

@@ -1,11 +1,16 @@
 package com.yonge.cooleshow.website.controller;
 
+import com.yonge.cooleshow.biz.dal.enums.album.PurchaseRecordTypeEnum;
+import com.yonge.cooleshow.common.enums.EStatus;
 import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
 
 import java.io.File;
 import java.util.Date;
+import java.util.Optional;
 
 import javax.validation.Valid;
 
@@ -82,13 +87,19 @@ public class MusicSheetController extends BaseController {
     }
 
 
-
     /**
      * 我的单曲,收藏单曲
      */
-    @GetMapping("/my")
     @ApiOperation(value = "学生-我的单曲")
-    public HttpResponseResult<PageInfo<MusicSheetVo>> myMusic(@ApiParam(value = "客户端类型") @RequestParam(value = "clientType", required = false, defaultValue = "STUDENT") String clientType,
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "clientType", value = "客户端类型 TEACHER, STUDENT, 默认值: STUDENT"),
+            @ApiImplicitParam(name = "gift", value = "课程赠品 0:购买 1:赠品, 默认值: 0"),
+            @ApiImplicitParam(name = "page", value = "分页查询, 默认值: 1"),
+            @ApiImplicitParam(name = "row", value = "当前页行数, 默认值: 10"),
+    })
+    @GetMapping("/my")
+    public HttpResponseResult<PageInfo<MusicSheetVo>> myMusic(@RequestParam(value = "clientType", required = false, defaultValue = "STUDENT") String clientType,
+                                                              @RequestParam(value = "gift", required = false, defaultValue = "0") Integer gift,
                                                               QueryInfo query) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null  || sysUser.getId() == null) {
@@ -103,11 +114,15 @@ public class MusicSheetController extends BaseController {
         search.setStudentId(sysUser.getId());
         search.setAuditStatus(AuthStatusEnum.PASS);
         search.setUserType(ClientEnum.valueOf(clientType));
+        search.setPurchaseType(Optional.ofNullable(search.getPurchaseType()).orElse(PurchaseRecordTypeEnum.MUSIC));
+        search.setCourseGift(Optional.ofNullable(search.getCourseGift()).orElse(EStatus.DISABLE.getValue()));
+
         IPage<MusicSheetVo> sheetVoIPage = musicSheetService.myMusic(PageUtil.getPage(query),search);
         return succeed(PageUtil.pageInfo(sheetVoIPage));
     }
 
 
+
     /**
      * 我的单曲,收藏单曲
      */