刘俊驰 1 year ago
parent
commit
9f2b39f99f

+ 13 - 4
mec-application/src/main/java/com/ym/mec/student/controller/MusicSheetController.java

@@ -4,10 +4,7 @@ import com.alibaba.fastjson.JSON;
 import com.dayaedu.cbs.common.enums.school.EMusicSheetType;
 import com.dayaedu.cbs.openfeign.wrapper.music.CbsMusicSheetWrapper;
 import com.microsvc.toolkit.common.response.template.R;
-import com.ym.mec.biz.dal.entity.Instrument;
-import com.ym.mec.biz.dal.entity.Student;
-import com.ym.mec.biz.dal.entity.SysMusicScore;
-import com.ym.mec.biz.dal.entity.Teacher;
+import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.enums.ClientEnum;
 import com.ym.mec.biz.dal.enums.ClientTypeEnum;
 import com.ym.mec.biz.dal.page.SysExamSongQueryInfo;
@@ -33,6 +30,7 @@ import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
@@ -108,6 +106,16 @@ public class MusicSheetController {
                 }
             }
         }
+        MusicSheetWrapper.ClientMusicSheetInfoQuery query = new MusicSheetWrapper.ClientMusicSheetInfoQuery();
+        query.setUserType(ClientEnum.STUDENT);
+        query.setUserId(sysUserService.getUserId());
+        query.setMusicSheetId(id);
+        MusicSheetWrapper.ClientMusicSheetInfo clientMusicSheetInfo = musicSheetService.queryMusicScoreDetail(query);
+        if (clientMusicSheetInfo != null) {
+            musicSheetDetail.setUseStatus(clientMusicSheetInfo.getUseStatus());
+        } else {
+            musicSheetDetail.setUseStatus("LOCK");
+        }
         return R.from(musicSheetDetail);
     }
 
@@ -152,6 +160,7 @@ public class MusicSheetController {
             musicSheet.setUsedNum(0L);
             musicSheet.setPaymentType(StringUtils.isNotBlank(o.getRankIds()) && o.getRankIds().contains("1") ? "VIP" : "FREE");
             musicSheet.setAudioPlayTypes(o.getAudioPlayTypes());
+            musicSheet.setUseStatus(o.getUseStatus());
 
             return musicSheet;
         });

+ 11 - 0
mec-application/src/main/java/com/ym/mec/teacher/controller/MusicSheetController.java

@@ -104,6 +104,16 @@ public class MusicSheetController {
                 }
             }
         }
+        MusicSheetWrapper.ClientMusicSheetInfoQuery query = new MusicSheetWrapper.ClientMusicSheetInfoQuery();
+        query.setUserType(ClientEnum.TEACHER);
+        query.setUserId(sysUserService.getUserId());
+        query.setMusicSheetId(id);
+        MusicSheetWrapper.ClientMusicSheetInfo clientMusicSheetInfo = musicSheetService.queryMusicScoreDetail(query);
+        if (clientMusicSheetInfo != null) {
+            musicSheetDetail.setUseStatus(clientMusicSheetInfo.getUseStatus());
+        } else {
+            musicSheetDetail.setUseStatus("LOCK");
+        }
         return R.from(musicSheetDetail);
     }
 
@@ -156,6 +166,7 @@ public class MusicSheetController {
             musicSheet.setUsedNum(0L);
             musicSheet.setPaymentType(StringUtils.isNotBlank(o.getRankIds()) && o.getRankIds().contains("1") ? "VIP" : "FREE");
             musicSheet.setAudioPlayTypes(o.getAudioPlayTypes());
+            musicSheet.setUseStatus(o.getUseStatus());
 
             return musicSheet;
         });

+ 4 - 0
mec-application/src/main/java/com/ym/mec/vo/MusicSheetVo.java

@@ -400,6 +400,10 @@ public class MusicSheetVo {
         @ApiModelProperty("是否是特殊打击乐")
         private Boolean specialPercussionFlag;
 
+
+
+        @ApiModelProperty("使用状态 试用: FREE 锁定: LOCK 解锁:UNLOCK")
+        private String useStatus;
     }
 
     @Data

+ 10 - 0
mec-application/src/main/java/com/ym/mec/web/controller/MusicSheetController.java

@@ -98,6 +98,16 @@ public class MusicSheetController {
                 }
             }
         }
+        MusicSheetWrapper.ClientMusicSheetInfoQuery query = new MusicSheetWrapper.ClientMusicSheetInfoQuery();
+        query.setUserType(ClientEnum.SCHOOL);
+        query.setUserId(sysUserService.getUserId());
+        query.setMusicSheetId(id);
+        MusicSheetWrapper.ClientMusicSheetInfo clientMusicSheetInfo = musicSheetService.queryMusicScoreDetail(query);
+        if (clientMusicSheetInfo != null) {
+            musicSheetDetail.setUseStatus(clientMusicSheetInfo.getUseStatus());
+        } else {
+            musicSheetDetail.setUseStatus("LOCK");
+        }
         return R.from(musicSheetDetail);
     }
 

+ 4 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/wrapper/MusicSheetWrapper.java

@@ -94,6 +94,10 @@ public class MusicSheetWrapper {
         @ApiModelProperty("音频类型,SING:演唱,PLAY:演奏")
         private String audioPlayTypes;
 
+
+        @ApiModelProperty("使用状态 试用: FREE 锁定: LOCK 解锁:UNLOCK")
+        private String useStatus;
+
         public String jsonString() {
             return JSON.toJSONString(this);
         }

+ 1 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/SysMusicScoreService.java

@@ -10,6 +10,7 @@ import com.ym.mec.biz.dal.dao.SysMusicScoreDao;
 import com.ym.mec.biz.dal.dto.MusicScoreDto;
 import com.ym.mec.biz.dal.dto.ReasonDto;
 import com.ym.mec.biz.dal.entity.SysMusicScore;
+import com.ym.mec.biz.dal.enums.ClientEnum;
 import com.ym.mec.biz.dal.page.SysExamSongQueryInfo;
 import com.ym.mec.biz.dal.wrapper.MusicSheetWrapper;
 import com.ym.mec.common.page.PageInfo;

+ 7 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SysMusicScoreServiceImpl.java

@@ -519,6 +519,13 @@ public class SysMusicScoreServiceImpl extends BaseServiceImpl<Integer, SysMusicS
                 } else {
                     clientMusicSheetInfo.setUseStatus("LOCK");
                 }
+        } else if (query.getUserType() !=null && ClientEnum.SCHOOL == query.getUserType()){
+            // 判断曲目是否在分类中
+            if (StringUtils.isBlank(sysMusicScore.getRankIds())) {
+                clientMusicSheetInfo.setUseStatus("FREE");
+            }  else {
+                clientMusicSheetInfo.setUseStatus("LOCK");
+            }
         } else {
             clientMusicSheetInfo.setUseStatus("UNLOCK");
         }