Bladeren bron

Merge branch 'feature/1123_music' into develop-new

liujc 1 jaar geleden
bovenliggende
commit
f169e8d490

+ 4 - 0
cooleshow-app/src/main/java/com/yonge/cooleshow/admin/controller/MusicSheetController.java

@@ -125,6 +125,10 @@ public class MusicSheetController extends BaseController {
             return failed("每个一级标签只能选一个二级标签");
         }
 
+        if (musicSheetDto.getProviderType() == null) {
+            musicSheetDto.setProviderType(SourceTypeEnum.PLATFORM);
+        }
+
         // 合奏图片不做限制
         if (MusicSheetTypeEnum.SINGLE.equals(musicSheetDto.getMusicSheetType()) &&
                 StringUtil.isEmpty(musicSheetDto.getMusicImg())) {

+ 2 - 0
cooleshow-app/src/main/java/com/yonge/cooleshow/student/controller/MusicSheetController.java

@@ -128,6 +128,7 @@ public class MusicSheetController extends BaseController {
             query.setAuditStatus(AuthStatusEnum.PASS);
             query.setStudentId(sysUser.getId());
             query.setMyself(false);
+            query.setProviderType(SourceTypeEnum.PLATFORM);
         }
 
         IPage<MusicSheetVo> musicSheetVoIPage = musicSheetService.selectStudentPage(PageUtil.getPage(query), query, ClientEnum.STUDENT);
@@ -381,6 +382,7 @@ public class MusicSheetController extends BaseController {
         query.setStudentId(sysUser.getId());
         query.setMyself(false);
         query.setRows(20);
+        query.setProviderType(SourceTypeEnum.PLATFORM);
 
         AppMusicSheetVo appMusicSheetVo = new AppMusicSheetVo();
         // 推荐曲目

+ 5 - 0
cooleshow-app/src/main/java/com/yonge/cooleshow/teacher/controller/MusicSheetController.java

@@ -138,6 +138,9 @@ public class MusicSheetController extends BaseController {
             musicSheetDto.setNotation(YesOrNoEnum.NO);
         }
 
+        if (musicSheetDto.getProviderType() == null) {
+            musicSheetDto.setProviderType(SourceTypeEnum.PLATFORM);
+        }
         musicSheetDto.setUserId(sysUser.getId());
         musicSheetDto.setAuditStatus(AuthStatusEnum.DOING);
         musicSheetDto.setSubmitAuditTime(new Date());
@@ -216,6 +219,7 @@ public class MusicSheetController extends BaseController {
             query.setAuditStatus(AuthStatusEnum.PASS);
             query.setStudentId(sysUser.getId());
             query.setMyself(false);
+            query.setProviderType(SourceTypeEnum.PLATFORM);
         }
 
         IPage<MusicSheetVo> musicSheetVoIPage = musicSheetService.selectStudentPage(PageUtil.getPage(query), query, ClientEnum.TEACHER);
@@ -355,6 +359,7 @@ public class MusicSheetController extends BaseController {
         query.setStudentId(sysUser.getId());
         query.setMyself(false);
         query.setRows(20);
+        query.setProviderType(SourceTypeEnum.PLATFORM);
 
         AppMusicSheetVo appMusicSheetVo = new AppMusicSheetVo();
         // 推荐曲目

+ 21 - 0
cooleshow-app/src/main/java/com/yonge/cooleshow/teacher/controller/SysUserContractRecordController.java

@@ -3,6 +3,7 @@ package com.yonge.cooleshow.teacher.controller;
 import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
 import com.yonge.cooleshow.auth.api.entity.SysUser;
 import com.yonge.cooleshow.biz.dal.entity.ContractTemplate;
+import com.yonge.cooleshow.biz.dal.entity.SysUserContractRecord;
 import com.yonge.cooleshow.biz.dal.service.ContractService;
 import com.yonge.cooleshow.biz.dal.service.ContractTemplateService;
 import com.yonge.cooleshow.biz.dal.service.SysUserContractRecordService;
@@ -80,6 +81,26 @@ public class SysUserContractRecordController extends BaseController {
         return contractService.queryProductContract(user.getId(),SysUserType.TEACHER,contractType);
     }
 
+
+    @ApiOperation("查看协议-获取协议内容")
+    @GetMapping(value = "/querySignContract", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+    public HttpResponseResult<String> querySignContract(
+        @ApiParam(value = "协议类型", required = true) @RequestParam("contractType") ContractTemplateTypeEnum contractType) {
+        SysUser user = sysUserFeignService.queryUserInfo();
+        if (user == null || null == user.getId()) {
+            return failed(HttpStatus.FORBIDDEN, "请登录");
+        }
+        SysUserContractRecord sysUserContractRecord = sysUserContractRecordService.queryLatestContract(user.getId(), SysUserType.TEACHER, contractType);
+        if (sysUserContractRecord == null) {
+            return failed(HttpStatus.FORBIDDEN, "请先签署协议");
+        }
+        if ("DOING".equals(sysUserContractRecord.getStatus())) {
+            return failed(HttpStatus.FORBIDDEN, "协议签署中");
+        }
+        return HttpResponseResult.succeed(sysUserContractRecord.getUrl());
+    }
+
+
     @ApiOperation("签署协议")
     @GetMapping(value = "/sign", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
     public HttpResponseResult<Boolean> sign(

+ 3 - 0
cooleshow-app/src/main/java/com/yonge/cooleshow/website/controller/open/OpenMusicSheetController.java

@@ -10,6 +10,7 @@ import com.yonge.cooleshow.biz.dal.dto.search.StudentMusicSheetSearch;
 import com.yonge.cooleshow.biz.dal.enums.AuthStatusEnum;
 import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
 import com.yonge.cooleshow.biz.dal.enums.HotSearchEnum;
+import com.yonge.cooleshow.biz.dal.enums.SourceTypeEnum;
 import com.yonge.cooleshow.biz.dal.service.HotSearchService;
 import com.yonge.cooleshow.biz.dal.service.MusicAlbumService;
 import com.yonge.cooleshow.biz.dal.service.MusicSheetService;
@@ -97,6 +98,7 @@ public class OpenMusicSheetController extends BaseController {
         if (sysUser != null) {
             query.setStudentId(sysUser.getId());
         }
+        query.setProviderType(SourceTypeEnum.PLATFORM);
 
         if (ClientEnum.invalid(clientType)) {
             return failed("无效的客户端类型");
@@ -119,6 +121,7 @@ public class OpenMusicSheetController extends BaseController {
         if (sysUser != null) {
             query.setStudentId(sysUser.getId());
         }
+        query.setProviderType(SourceTypeEnum.PLATFORM);
         query.setRows(query.getSheetRow());
         IPage<MusicSheetVo> musicSheetVoIPage = musicSheetService.selectStudentPage(PageUtil.getPage(query), query, ClientEnum.STUDENT);
 

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

@@ -1,5 +1,6 @@
 package com.yonge.cooleshow.biz.dal.dto.search;
 
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.yonge.cooleshow.biz.dal.enums.*;
 import com.yonge.cooleshow.common.enums.YesOrNoEnum;
 import com.yonge.toolset.base.page.QueryInfo;
@@ -43,6 +44,11 @@ public class MusicSheetSearch  extends QueryInfo{
     @ApiModelProperty(value = "曲目来源类型 TEACHER 老师 PLATFORM 平台 TENANT 机构")
     private SourceTypeEnum sourceType;
 
+
+    @ApiModelProperty(value = "提供方 TENANT 机构 PLATFORM 平台")
+    private SourceTypeEnum providerType;
+
+
     @ApiModelProperty("曲目状态(0:停用,1:启用))")
     private YesOrNoEnum state;
 
@@ -97,6 +103,14 @@ public class MusicSheetSearch  extends QueryInfo{
     @ApiModelProperty(value = "曲谱类型(SINGLE:单曲,CONCERT:合奏)")
     private MusicSheetTypeEnum musicSheetType;
 
+    public SourceTypeEnum getProviderType() {
+        return providerType;
+    }
+
+    public void setProviderType(SourceTypeEnum providerType) {
+        this.providerType = providerType;
+    }
+
     public MusicSheetTypeEnum getMusicSheetType() {
         return musicSheetType;
     }

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

@@ -58,6 +58,11 @@ public class MusicSheet implements Serializable {
 	@ApiModelProperty(value = "曲目来源类型 TEACHER 老师 PLATFORM 平台")
 	private SourceTypeEnum sourceType;
 
+
+    @TableField("provider_type_")
+    @ApiModelProperty(value = "提供方 TENANT 机构 PLATFORM 平台")
+    private SourceTypeEnum providerType;
+
     @NotBlank(message = "艺术家不能为空!")
     @Size(max = 32, message = "艺术家长度不能超过32位!")
     @TableField("composer_")
@@ -251,7 +256,15 @@ public class MusicSheet implements Serializable {
 	@ApiModelProperty(value = "曲谱类型(SINGLE:单曲,CONCERT:合奏)")
 	private MusicSheetTypeEnum musicSheetType;
 
-	public Integer getVirtualNumber() {
+    public SourceTypeEnum getProviderType() {
+        return providerType;
+    }
+
+    public void setProviderType(SourceTypeEnum providerType) {
+        this.providerType = providerType;
+    }
+
+    public Integer getVirtualNumber() {
 		return virtualNumber;
 	}
 

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

@@ -43,7 +43,7 @@ public class SysUserContractRecord implements Serializable {
     private String contractNo;
 
     @TableField("status_")
-    @ApiModelProperty(value = "签署状态 NOT_SIGN 未签署  DONG 签署中 SUCCESS 签署完成 FAILED 签署失败")
+    @ApiModelProperty(value = "签署状态 NOT_SIGN 未签署  DOING 签署中 SUCCESS 签署完成 FAILED 签署失败")
     private String status;
 
     @TableField("err_msg_")

+ 2 - 2
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/SysMusicCompareRecordServiceImpl.java

@@ -278,8 +278,8 @@ public class SysMusicCompareRecordServiceImpl extends BaseServiceImpl<Long, SysM
 		jsonObject.put("intonation", userLastEvaluationData.getIntonation());
 		jsonObject.put("integrity", userLastEvaluationData.getIntegrity());
 		jsonObject.put("heardLevel", userLastEvaluationData.getHeardLevel());
-		jsonObject.put("videoFilePath", userLastEvaluationData.getVideoFilePath());
-		jsonObject.put("partIndex", userLastEvaluationData.getPartIndex());
+        jsonObject.put("videoFilePath", StringUtils.isNotBlank(userLastEvaluationData.getVideoFilePath())?userLastEvaluationData.getVideoFilePath():userLastEvaluationData.getRecordFilePath());
+        jsonObject.put("partIndex", userLastEvaluationData.getPartIndex());
 		jsonObject.put("customConfiguration", userLastEvaluationData.getCustomConfiguration());
 		if(userLastEvaluationData.getCreateTime() == null) {
 			jsonObject.put("expire", 1);

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

@@ -38,6 +38,7 @@
         <result column="first_tone_" jdbcType="VARCHAR" property="firstTone"/>
         <result column="fixed_tone_" jdbcType="VARCHAR" property="fixedTone"/>
         <result column="music_sheet_type_" jdbcType="VARCHAR" property="musicSheetType"/>
+        <result column="provider_type_" jdbcType="VARCHAR" property="providerType"/>
     </resultMap>
 
     <sql id="Base_Column_List">
@@ -56,6 +57,7 @@
         t.show_fingering_ as showFingering,
         t.charge_type_ as chargeType,
         t.payment_type_ as paymentType,
+        t.provider_type_ as providerType,
         t.state_ as state,
         t.audit_status_ as auditStatus,
         t.sort_number_ as sortNumber,
@@ -134,6 +136,9 @@
             t.composer_ like concat ('%',#{param.idAndName},'%') or
             su.username_ like concat ('%',#{param.idAndName},'%') )
         </if>
+        <if test="param.providerType != null">
+            and t.provider_type_ = #{param.providerType}
+        </if>
         <if test="param.musicTagIds != null and param.musicTagIds != ''">
             and
             <foreach collection="param.musicTagIdList" open="(" close=")" separator="or" item="item">
@@ -204,6 +209,9 @@
             <if test="param.composer != null">
                 AND t.composer_ LIKE '%${param.composer}%'
             </if>
+            <if test="param.providerType != null">
+                and t.provider_type_ = #{param.providerType}
+            </if>
             <if test="param.idAndName != null and param.idAndName != ''">
                 and (t.id_ like concat('%',#{param.idAndName},'%') or
                 t.music_sheet_name_ like concat('%',#{param.idAndName},'%'))
@@ -297,6 +305,7 @@
         <result column="titleImg" jdbcType="VARCHAR" property="titleImg"/>
         <result column="musicSubject" jdbcType="VARCHAR" property="musicSubject"/>
         <result column="audioType" jdbcType="VARCHAR" property="audioType"/>
+        <result column="providerType" jdbcType="VARCHAR" property="providerType"/>
         <result column="musicTag" jdbcType="VARCHAR" property="musicTag"/>
         <result column="playSpeed" jdbcType="INTEGER" property="playSpeed"/>
         <result column="canEvaluate" jdbcType="TINYINT" property="canEvaluate"/>

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

@@ -103,7 +103,7 @@
             group by source_,type_
         ) a
         left join contract_template b on a.source_ = b.source_ and a.type_ = b.type_ and a.version_ = b.version_
-        left join sys_user_contract_record t on b.id_ = t.contract_id_ and t.status_ in ('SUCCESS','DONG ')
+        left join sys_user_contract_record t on b.id_ = t.contract_id_ and t.status_ in ('SUCCESS','DOING ')
         where t.user_id_ = #{userId} and t.user_type_ = #{userType}
     </select>