Browse Source

fix:接口开放

liujunchi 3 years ago
parent
commit
f2e7c4bbcb

+ 2 - 2
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/search/MusicAlbumSearch.java

@@ -37,10 +37,10 @@ public class MusicAlbumSearch extends QueryInfo{
     @ApiModelProperty(value = "排序规则,1:按收藏人数倒叙",hidden = true)
     private Integer sortBy;
 
-    @ApiModelProperty(value = "版本号",required = true)
+    @ApiModelProperty(value = "版本号")
     private String version;
 
-    @ApiModelProperty(value = "平台",required = true)
+    @ApiModelProperty(value = "平台")
     private String platform;
 
     public String getVersion() {

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

@@ -25,10 +25,10 @@ public class StudentMusicSheetSearch  extends MusicSheetSearch{
     @ApiModelProperty(value = "是否审核时可见 (0:否  1:是)",hidden = true)
     private YesOrNoEnum auditVersion;
 
-    @ApiModelProperty(value = "版本号",required = true)
+    @ApiModelProperty(value = "版本号")
     private String version;
 
-    @ApiModelProperty(value = "平台",required = true)
+    @ApiModelProperty(value = "平台")
     private String platform;
 
     public YesOrNoEnum getAuditVersion() {

+ 3 - 1
cooleshow-user/user-biz/src/main/resources/config/mybatis/MusicSheetMapper.xml

@@ -253,6 +253,8 @@
         </if>
         from music_sheet t
         left join sys_user su on t.create_by_ = su.id_
+        left join (select count(1) as num,mf.music_sheet_id_
+            from music_favorite mf group by mf.music_sheet_id_) t2 on t2.music_sheet_id_ = t.id_
         <if test="param.studentId != null">
             left join music_sheet_purchase_record mspr
                 on mspr.music_sheet_id_ = t.id_
@@ -266,7 +268,7 @@
                 and #{param.auditVersion} = t.audit_version_
             </if>
         </where>
-        order by  t.id_ desc
+        order by t2.num desc,  t.id_ desc
     </select>
 
     <select id="selectMyMusicPage" resultType="com.yonge.cooleshow.biz.dal.vo.MusicSheetVo">

+ 0 - 47
cooleshow-user/user-website/src/main/java/com/yonge/cooleshow/website/controller/MusicAlbumController.java

@@ -40,53 +40,6 @@ public class MusicAlbumController extends BaseController {
 	@Autowired
 	private MusicAlbumService musicAlbumService;
 
-
-    @ApiOperation(value = "热门专辑", httpMethod="POST", consumes="application/json", produces="application/json")
-    @PostMapping(value="/list", consumes="application/json", produces="application/json")
-    public HttpResponseResult<PageInfo<MusicAlbumVo>> list(@RequestBody MusicAlbumSearch query) {
-
-        // 检查app版本
-        query.setAuditVersion(YesOrNoEnum.NO);
-        query.setAlbumStatus(YesOrNoEnum.YES);
-        query.setSortBy(1);
-        IPage<MusicAlbumVo> iPage = musicAlbumService.selectStudentPage(PageUtil.getPage(query),query);
-        return succeed(PageUtil.pageInfo(iPage));
-    }
-
-
-    /**
-     * 专辑详情
-     */
-    @PostMapping(value = "/detail",  consumes="application/json", produces="application/json")
-    @ApiOperation(value = "专辑详情",httpMethod="POST", consumes="application/json", produces="application/json")
-    public HttpResponseResult<AlbumDetailVo> detail(@Valid @RequestBody MusicAlbumDetailSearch query) {
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-        YesOrNoEnum favorite = YesOrNoEnum.NO;
-        if (sysUser != null && sysUser.getId() != null) {
-            favorite = musicAlbumService.checkFavorite(sysUser.getId(),query.getId() );
-        }
-        query.setType(2);
-        query.setState(YesOrNoEnum.YES);
-        AlbumDetailVo albumDetailVo = musicAlbumService.detail(PageUtil.getPage(query), query);
-        albumDetailVo.setFavorite(favorite);
-
-        // 热门专辑
-        MusicAlbumSearch musicAlbumSearch = new MusicAlbumSearch();
-        musicAlbumSearch.setAuditVersion(YesOrNoEnum.NO);
-        musicAlbumSearch.setAlbumStatus(YesOrNoEnum.YES);
-        musicAlbumSearch.setSortBy(1);
-        musicAlbumSearch.setPage(1);
-        musicAlbumSearch.setRows(4);
-        IPage<MusicAlbumVo> hotMusicAlbum = musicAlbumService.selectStudentPage(PageUtil.getPage(musicAlbumSearch),musicAlbumSearch);
-        albumDetailVo.setHotMusicAlbum(hotMusicAlbum.getRecords());
-
-        // 相关专辑
-        musicAlbumSearch.setAlbumTagIds(albumDetailVo.getAlbumTag());
-        IPage<MusicAlbumVo> relatedMusicAlbum = musicAlbumService.selectStudentPage(PageUtil.getPage(musicAlbumSearch),musicAlbumSearch);
-        albumDetailVo.setRelatedMusicAlbum(relatedMusicAlbum.getRecords());
-        return succeed(albumDetailVo);
-    }
-
     /**
      * 专辑收藏
      */

+ 1 - 67
cooleshow-user/user-website/src/main/java/com/yonge/cooleshow/website/controller/MusicSheetController.java

@@ -47,72 +47,6 @@ public class MusicSheetController extends BaseController {
 	@Autowired
 	private MusicSheetService musicSheetService;
 
-    @Autowired
-    private MusicAlbumService musicAlbumService;
-
-    /**
-     * 查询单条
-     */
-    @GetMapping("/detail/{id}")
-    @ApiOperation(value = "详情", notes = "传入musicTag")
-    public HttpResponseResult<MusicSheetWebsiteDetailVo> detail(@ApiParam(value = "曲谱编号", required = true) @PathVariable("id") Long id) {
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-        MusicSheetWebsiteDetailVo detail = musicSheetService.websiteDetail(id,sysUser);
-
-        return succeed(detail);
-    }
-
-    @ApiOperation(value = "首页曲目分页查询", httpMethod="POST", consumes="application/json", produces="application/json")
-    @PostMapping(value="/list", consumes="application/json", produces="application/json")
-    public HttpResponseResult<PageInfo<MusicSheetVo>> list(@RequestBody StudentMusicSheetSearch query) {
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-
-        // 检查app版本
-        query.setAuditVersion(YesOrNoEnum.NO);
-
-
-        // 学生 只能看通过审核 并且 启用的 曲目
-        query.setState(YesOrNoEnum.YES);
-        query.setAuditStatus(AuthStatusEnum.PASS);
-        if (sysUser != null) {
-            query.setStudentId(sysUser.getId());
-        }
-        IPage<MusicSheetVo> musicSheetVoIPage = musicSheetService.selectStudentPage(PageUtil.getPage(query), query);
-        return succeed(PageUtil.pageInfo(musicSheetVoIPage));
-    }
-
-
-    @ApiOperation(value = "乐谱(专辑和曲目同时查询)分页查询", httpMethod="POST", consumes="application/json", produces="application/json")
-    @PostMapping(value="/albumAndSheetList", consumes="application/json", produces="application/json")
-    public HttpResponseResult<AlbumAndSheetVo> albumAndSheetList(@RequestBody StudentMusicSheetSearch query) {
-        SysUser sysUser = sysUserFeignService.queryUserInfo();
-
-        // 学生 只能看通过审核 并且 启用的 曲目
-        query.setState(YesOrNoEnum.YES);
-        query.setAuditVersion(YesOrNoEnum.NO);
-        query.setAuditStatus(AuthStatusEnum.PASS);
-        if (sysUser != null) {
-            query.setStudentId(sysUser.getId());
-        }
-        query.setRows(query.getSheetRow());
-        IPage<MusicSheetVo> musicSheetVoIPage = musicSheetService.selectStudentPage(PageUtil.getPage(query), query);
-
-        MusicAlbumSearch musicAlbumSearch = new MusicAlbumSearch();
-        musicAlbumSearch.setAlbumStatus(YesOrNoEnum.YES);
-        musicAlbumSearch.setSortBy(1);
-        musicAlbumSearch.setIdAndName(query.getIdAndName());
-        musicAlbumSearch.setAuditVersion(YesOrNoEnum.NO);
-        musicAlbumSearch.setAlbumTagIds(query.getMusicTagIds());
-        musicAlbumSearch.setPage(query.getPage());
-        musicAlbumSearch.setRows(query.getAlbumRow());
-        IPage<MusicAlbumVo> musicAlbumVoIPage = musicAlbumService.selectPage(PageUtil.getPage(musicAlbumSearch), musicAlbumSearch);
-
-        AlbumAndSheetVo albumAndSheetVo = new AlbumAndSheetVo();
-        albumAndSheetVo.setMusicSheetList(PageUtil.pageInfo(musicSheetVoIPage));
-        albumAndSheetVo.setMusicAlbumList(PageUtil.pageInfo(musicAlbumVoIPage));
-        return succeed(albumAndSheetVo);
-    }
-
     /**
      * 曲目收藏
      */
@@ -165,7 +99,7 @@ public class MusicSheetController extends BaseController {
         return succeed(PageUtil.pageInfo(sheetVoIPage));
     }
 
-    @ApiOperation(value = "老师曲目分页查询", httpMethod="POST", consumes="application/json", produces="application/json")
+    @ApiOperation(value = "老师-个人中心-曲目分页查询", httpMethod="POST", consumes="application/json", produces="application/json")
     @PostMapping(value="/teacher/list", consumes="application/json", produces="application/json")
     public HttpResponseResult<PageInfo<MusicSheetVo>> list(@RequestBody MusicSheetSearch query) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();

+ 89 - 0
cooleshow-user/user-website/src/main/java/com/yonge/cooleshow/website/controller/open/OpenMusicAlbumController.java

@@ -0,0 +1,89 @@
+package com.yonge.cooleshow.website.controller.open;
+
+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.search.MusicAlbumDetailSearch;
+import com.yonge.cooleshow.biz.dal.dto.search.MusicAlbumSearch;
+import com.yonge.cooleshow.biz.dal.dto.search.StudentMusicAlbumSearch;
+import com.yonge.cooleshow.biz.dal.enums.YesOrNoEnum;
+import com.yonge.cooleshow.biz.dal.service.MusicAlbumService;
+import com.yonge.cooleshow.biz.dal.support.PageUtil;
+import com.yonge.cooleshow.biz.dal.vo.AlbumDetailVo;
+import com.yonge.cooleshow.biz.dal.vo.MusicAlbumVo;
+import com.yonge.cooleshow.common.controller.BaseController;
+import com.yonge.cooleshow.common.entity.HttpResponseResult;
+import com.yonge.toolset.base.page.PageInfo;
+import com.yonge.toolset.base.page.QueryInfo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+
+/**
+ * 专辑表 web 控制层
+ * @author yzp
+ * @date 2022-03-26 00:21:46
+ * @version v1.0
+ **/
+@RestController
+@RequestMapping("/open/music/album")
+@Api(tags = "开放专辑接口")
+public class OpenMusicAlbumController extends BaseController {
+    @Autowired
+    private SysUserFeignService sysUserFeignService;
+
+	@Autowired
+	private MusicAlbumService musicAlbumService;
+
+
+    @ApiOperation(value = "热门专辑", httpMethod="POST", consumes="application/json", produces="application/json")
+    @PostMapping(value="/list", consumes="application/json", produces="application/json")
+    public HttpResponseResult<PageInfo<MusicAlbumVo>> list(@RequestBody MusicAlbumSearch query) {
+
+        // 检查app版本
+        query.setAuditVersion(YesOrNoEnum.NO);
+        query.setAlbumStatus(YesOrNoEnum.YES);
+        query.setSortBy(1);
+        IPage<MusicAlbumVo> iPage = musicAlbumService.selectStudentPage(PageUtil.getPage(query),query);
+        return succeed(PageUtil.pageInfo(iPage));
+    }
+
+
+    /**
+     * 专辑详情
+     */
+    @PostMapping(value = "/detail",  consumes="application/json", produces="application/json")
+    @ApiOperation(value = "专辑详情",httpMethod="POST", consumes="application/json", produces="application/json")
+    public HttpResponseResult<AlbumDetailVo> detail(@Valid @RequestBody MusicAlbumDetailSearch query) {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        YesOrNoEnum favorite = YesOrNoEnum.NO;
+        if (sysUser != null && sysUser.getId() != null) {
+            favorite = musicAlbumService.checkFavorite(sysUser.getId(),query.getId() );
+        }
+        query.setType(2);
+        query.setState(YesOrNoEnum.YES);
+        AlbumDetailVo albumDetailVo = musicAlbumService.detail(PageUtil.getPage(query), query);
+        albumDetailVo.setFavorite(favorite);
+
+        // 热门专辑
+        MusicAlbumSearch musicAlbumSearch = new MusicAlbumSearch();
+        musicAlbumSearch.setAuditVersion(YesOrNoEnum.NO);
+        musicAlbumSearch.setAlbumStatus(YesOrNoEnum.YES);
+        musicAlbumSearch.setSortBy(1);
+        musicAlbumSearch.setPage(1);
+        musicAlbumSearch.setRows(4);
+        IPage<MusicAlbumVo> hotMusicAlbum = musicAlbumService.selectStudentPage(PageUtil.getPage(musicAlbumSearch),musicAlbumSearch);
+        albumDetailVo.setHotMusicAlbum(hotMusicAlbum.getRecords());
+
+        // 相关专辑
+        musicAlbumSearch.setAlbumTagIds(albumDetailVo.getAlbumTag());
+        IPage<MusicAlbumVo> relatedMusicAlbum = musicAlbumService.selectStudentPage(PageUtil.getPage(musicAlbumSearch),musicAlbumSearch);
+        albumDetailVo.setRelatedMusicAlbum(relatedMusicAlbum.getRecords());
+        return succeed(albumDetailVo);
+    }
+
+}

+ 115 - 0
cooleshow-user/user-website/src/main/java/com/yonge/cooleshow/website/controller/open/OpenMusicSheetController.java

@@ -0,0 +1,115 @@
+package com.yonge.cooleshow.website.controller.open;
+
+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.MusicSheetDto;
+import com.yonge.cooleshow.biz.dal.dto.search.MusicAlbumSearch;
+import com.yonge.cooleshow.biz.dal.dto.search.MusicSheetSearch;
+import com.yonge.cooleshow.biz.dal.dto.search.StudentMusicSheetSearch;
+import com.yonge.cooleshow.biz.dal.enums.AuthStatusEnum;
+import com.yonge.cooleshow.biz.dal.enums.ChargeTypeEnum;
+import com.yonge.cooleshow.biz.dal.enums.SourceTypeEnum;
+import com.yonge.cooleshow.biz.dal.enums.YesOrNoEnum;
+import com.yonge.cooleshow.biz.dal.service.MusicAlbumService;
+import com.yonge.cooleshow.biz.dal.service.MusicSheetService;
+import com.yonge.cooleshow.biz.dal.support.PageUtil;
+import com.yonge.cooleshow.biz.dal.vo.AlbumAndSheetVo;
+import com.yonge.cooleshow.biz.dal.vo.MusicAlbumVo;
+import com.yonge.cooleshow.biz.dal.vo.MusicSheetVo;
+import com.yonge.cooleshow.biz.dal.vo.MusicSheetWebsiteDetailVo;
+import com.yonge.cooleshow.common.controller.BaseController;
+import com.yonge.cooleshow.common.entity.HttpResponseResult;
+import com.yonge.toolset.base.page.PageInfo;
+import com.yonge.toolset.base.page.QueryInfo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import javax.validation.Valid;
+import java.util.Date;
+
+/**
+ * 曲谱表 web 控制层
+ * @author yzp
+ * @date 2022-03-26 00:21:46
+ * @version v1.0
+ **/
+@RestController
+@RequestMapping("/open/music/sheet")
+@Api(tags = "开放曲谱接口")
+public class OpenMusicSheetController extends BaseController {
+    @Autowired
+    private SysUserFeignService sysUserFeignService;
+
+	@Autowired
+	private MusicSheetService musicSheetService;
+
+    @Autowired
+    private MusicAlbumService musicAlbumService;
+
+    /**
+     * 查询单条
+     */
+    @GetMapping("/detail/{id}")
+    @ApiOperation(value = "曲目详情", notes = "传入musicTag")
+    public HttpResponseResult<MusicSheetWebsiteDetailVo> detail(@ApiParam(value = "曲谱编号", required = true) @PathVariable("id") Long id) {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        MusicSheetWebsiteDetailVo detail = musicSheetService.websiteDetail(id,sysUser);
+
+        return succeed(detail);
+    }
+
+    @ApiOperation(value = "首页曲目分页查询", httpMethod="POST", consumes="application/json", produces="application/json")
+    @PostMapping(value="/list", consumes="application/json", produces="application/json")
+    public HttpResponseResult<PageInfo<MusicSheetVo>> list(@RequestBody StudentMusicSheetSearch query) {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+
+        // 检查app版本
+        query.setAuditVersion(YesOrNoEnum.NO);
+
+
+        // 学生 只能看通过审核 并且 启用的 曲目
+        query.setState(YesOrNoEnum.YES);
+        query.setAuditStatus(AuthStatusEnum.PASS);
+        if (sysUser != null) {
+            query.setStudentId(sysUser.getId());
+        }
+        IPage<MusicSheetVo> musicSheetVoIPage = musicSheetService.selectStudentPage(PageUtil.getPage(query), query);
+        return succeed(PageUtil.pageInfo(musicSheetVoIPage));
+    }
+
+
+    @ApiOperation(value = "乐谱(专辑和曲目同时查询)分页查询", httpMethod="POST", consumes="application/json", produces="application/json")
+    @PostMapping(value="/albumAndSheetList", consumes="application/json", produces="application/json")
+    public HttpResponseResult<AlbumAndSheetVo> albumAndSheetList(@RequestBody StudentMusicSheetSearch query) {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+
+        // 学生 只能看通过审核 并且 启用的 曲目
+        query.setState(YesOrNoEnum.YES);
+        query.setAuditVersion(YesOrNoEnum.NO);
+        query.setAuditStatus(AuthStatusEnum.PASS);
+        if (sysUser != null) {
+            query.setStudentId(sysUser.getId());
+        }
+        query.setRows(query.getSheetRow());
+        IPage<MusicSheetVo> musicSheetVoIPage = musicSheetService.selectStudentPage(PageUtil.getPage(query), query);
+
+        MusicAlbumSearch musicAlbumSearch = new MusicAlbumSearch();
+        musicAlbumSearch.setAlbumStatus(YesOrNoEnum.YES);
+        musicAlbumSearch.setSortBy(1);
+        musicAlbumSearch.setIdAndName(query.getIdAndName());
+        musicAlbumSearch.setAuditVersion(YesOrNoEnum.NO);
+        musicAlbumSearch.setAlbumTagIds(query.getMusicTagIds());
+        musicAlbumSearch.setPage(query.getPage());
+        musicAlbumSearch.setRows(query.getAlbumRow());
+        IPage<MusicAlbumVo> musicAlbumVoIPage = musicAlbumService.selectPage(PageUtil.getPage(musicAlbumSearch), musicAlbumSearch);
+
+        AlbumAndSheetVo albumAndSheetVo = new AlbumAndSheetVo();
+        albumAndSheetVo.setMusicSheetList(PageUtil.pageInfo(musicSheetVoIPage));
+        albumAndSheetVo.setMusicAlbumList(PageUtil.pageInfo(musicAlbumVoIPage));
+        return succeed(albumAndSheetVo);
+    }
+}

+ 12 - 0
cooleshow-user/user-website/src/main/resources/bootstrap-dev.yml

@@ -0,0 +1,12 @@
+spring:
+  cloud:
+    nacos:
+      config:
+        server-addr: 47.114.1.200:8848
+        namespace: 6f8374a9-598f-4889-bb17-476070ffb8de
+        group: DEFAULT_GROUP
+        prefix: website
+        file-extension: yaml
+        refresh:
+          enabled: true
+        enabled: true

+ 61 - 0
cooleshow-user/user-website/src/main/resources/logback-spring.xml

@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<configuration scan="true" scanPeriod="10 seconds">
+
+	<property name="LOG_HOME" value="/mdata/logs/website-%d{yyyy-MM-dd_HH}-%i.log" />
+	<property name="CONSOLE_LOG_PATTERN"
+		value="[%X{username} %X{ip} %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36}] : %msg%n" />
+
+	<appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
+		<encoder charset="UTF-8">
+			<pattern>${CONSOLE_LOG_PATTERN}</pattern>
+		</encoder>
+	</appender>
+
+	<appender name="file"
+		class="ch.qos.logback.core.rolling.RollingFileAppender">
+		<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+			<FileNamePattern>${LOG_HOME}</FileNamePattern>
+			<MaxHistory>90</MaxHistory>
+			<TimeBasedFileNamingAndTriggeringPolicy
+				class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
+				<MaxFileSize>20MB</MaxFileSize>
+			</TimeBasedFileNamingAndTriggeringPolicy>
+		</rollingPolicy>
+
+		<encoder>
+			<pattern>${CONSOLE_LOG_PATTERN}</pattern>
+		</encoder>
+	</appender>
+
+	<logger name="com.yonge.cooleshow" level="INFO" />
+	<!--本地环境:打印控制台 -->
+	<springProfile name="local">
+		<root level="INFO">
+			<appender-ref ref="stdout" />
+			<appender-ref ref="file" />
+		</root>
+	</springProfile>
+	<!--开发环境:打印控制台 -->
+	<springProfile name="dev">
+		<root level="INFO">
+			<appender-ref ref="stdout" />
+			<appender-ref ref="file" />
+		</root>
+	</springProfile>
+	
+	<springProfile name="test">
+		<root level="INFO">
+			<appender-ref ref="stdout" />
+			<appender-ref ref="file" />
+		</root>
+	</springProfile>
+
+	<!--生产环境:输出到文件 -->
+	<springProfile name="prod">
+		<root level="WARN">
+			<appender-ref ref="stdout" />
+			<appender-ref ref="file" />
+		</root>
+	</springProfile>
+
+</configuration>