Przeglądaj źródła

Merge remote-tracking branch 'origin/saas' into saas

zouxuan 3 miesięcy temu
rodzic
commit
3258d32756

+ 16 - 3
mec-application/src/main/java/com/ym/mec/student/controller/MusicSheetController.java

@@ -3,6 +3,7 @@ package com.ym.mec.student.controller;
 import com.alibaba.fastjson.JSON;
 import com.dayaedu.cbs.common.enums.school.EMusicSheetType;
 import com.dayaedu.cbs.openfeign.wrapper.music.CbsMusicSheetWrapper;
+import com.google.common.collect.Lists;
 import com.microsvc.toolkit.common.response.template.R;
 import com.ym.mec.biz.dal.entity.*;
 import com.ym.mec.biz.dal.enums.ClientEnum;
@@ -14,7 +15,6 @@ import com.ym.mec.biz.service.InstrumentService;
 import com.ym.mec.biz.service.StudentService;
 import com.ym.mec.biz.service.SysMusicScoreService;
 import com.ym.mec.biz.service.SysUserService;
-import com.ym.mec.common.exception.BizException;
 import com.ym.mec.common.page.PageInfo;
 import com.ym.mec.vo.MusicSheetVo;
 import io.swagger.annotations.Api;
@@ -25,12 +25,10 @@ import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.security.access.prepost.PreAuthorize;
 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;
@@ -169,4 +167,19 @@ public class MusicSheetController {
 
         return R.from(convert);
     }
+
+    @ApiOperation(value = "总控平台乐器编码", notes = "总控平台乐器编码")
+    @ApiImplicitParams({
+        @ApiImplicitParam(name = "id", value = "id", dataType = "long")
+    })
+    @GetMapping("/instrumentCode")
+    public R<List<MusicSheetWrapper.InstrumentCode>> instrumentCode() {
+
+        List<MusicSheetWrapper.InstrumentCode> codes = musicSheetService.getAllInstrumentCode();
+        if (CollectionUtils.isEmpty(codes)) {
+            codes = Lists.newArrayList();
+        }
+
+        return R.from(codes);
+    }
 }

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

@@ -3,6 +3,7 @@ package com.ym.mec.teacher.controller;
 import com.alibaba.fastjson.JSON;
 import com.dayaedu.cbs.common.enums.school.EMusicSheetType;
 import com.dayaedu.cbs.openfeign.wrapper.music.CbsMusicSheetWrapper;
+import com.google.common.collect.Lists;
 import com.microsvc.toolkit.common.response.template.R;
 import com.ym.mec.biz.dal.dao.TeacherDao;
 import com.ym.mec.biz.dal.entity.Instrument;
@@ -175,4 +176,19 @@ public class MusicSheetController {
 
         return R.from(convert);
     }
+
+    @ApiOperation(value = "总控平台乐器编码", notes = "总控平台乐器编码")
+    @ApiImplicitParams({
+        @ApiImplicitParam(name = "id", value = "id", dataType = "long")
+    })
+    @GetMapping("/instrumentCode")
+    public R<List<MusicSheetWrapper.InstrumentCode>> instrumentCode() {
+
+        List<MusicSheetWrapper.InstrumentCode> codes = musicSheetService.getAllInstrumentCode();
+        if (CollectionUtils.isEmpty(codes)) {
+            codes = Lists.newArrayList();
+        }
+
+        return R.from(codes);
+    }
 }

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

@@ -3,6 +3,7 @@ package com.ym.mec.web.controller;
 import com.alibaba.fastjson.JSON;
 import com.dayaedu.cbs.common.enums.school.EMusicSheetType;
 import com.dayaedu.cbs.openfeign.wrapper.music.CbsMusicSheetWrapper;
+import com.google.common.collect.Lists;
 import com.microsvc.toolkit.common.response.template.R;
 import com.ym.mec.biz.dal.entity.Instrument;
 import com.ym.mec.biz.dal.entity.SysMusicScore;
@@ -24,6 +25,7 @@ import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
 
@@ -163,4 +165,20 @@ public class MusicSheetController {
 
         return R.from(convert);
     }
+
+    @ApiOperation(value = "总控平台乐器编码", notes = "总控平台乐器编码")
+    @ApiImplicitParams({
+        @ApiImplicitParam(name = "id", value = "id", dataType = "long")
+    })
+    @PreAuthorize("@pcs.hasPermissions('musicSheet/instrumentCode')")
+    @GetMapping("/instrumentCode")
+    public R<List<MusicSheetWrapper.InstrumentCode>> instrumentCode() {
+
+        List<MusicSheetWrapper.InstrumentCode> codes = musicSheetService.getAllInstrumentCode();
+        if (CollectionUtils.isEmpty(codes)) {
+            codes = Lists.newArrayList();
+        }
+
+        return R.from(codes);
+    }
 }

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

@@ -16,6 +16,7 @@ import org.apache.commons.lang3.StringUtils;
 
 import javax.validation.constraints.NotBlank;
 import javax.validation.constraints.NotNull;
+import java.io.Serializable;
 import java.util.Date;
 import java.util.List;
 import java.util.Optional;
@@ -551,4 +552,33 @@ public class MusicSheetWrapper {
         @ApiModelProperty("音频文件")
         private String audioFileUrl;
     }
+
+    @Data
+    @Builder
+    @NoArgsConstructor
+    @AllArgsConstructor
+    @ApiModel("总控平台乐器编码")
+    public static class InstrumentCode implements Serializable {
+
+        @ApiModelProperty("主键")
+        private Integer id;
+
+        @ApiModelProperty("名称")
+        private String name;
+
+        @ApiModelProperty("编码")
+        private String code;
+
+        @ApiModelProperty("声部编号")
+        private Integer subjectId;
+
+        @ApiModelProperty("声部")
+        private String subjectName;
+
+        @ApiModelProperty("横竖屏:1:竖 0:横")
+        private Boolean orientation;
+
+        @ApiModelProperty("是否可转普")
+        private Boolean transferFlag;
+    }
 }

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

@@ -71,4 +71,10 @@ public interface SysMusicScoreService extends BaseService<Integer, SysMusicScore
 
 
     MusicSheetWrapper.ClientMusicSheetInfo queryMusicScoreDetail(MusicSheetWrapper.ClientMusicSheetInfoQuery id);
+
+    /**
+     * 获取所有乐器编码
+     * @return List<MusicSheetWrapper.InstrumentCode>
+     */
+    List<MusicSheetWrapper.InstrumentCode> getAllInstrumentCode();
 }

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

@@ -808,4 +808,38 @@ public class SysMusicScoreServiceImpl extends BaseServiceImpl<Integer, SysMusicS
             throw new BizException("内容平台服务异常");
         }
     }
+
+    /**
+     * 获取所有乐器编码
+     *
+     * @return List<MusicSheetWrapper.InstrumentCode>
+     */
+    @Override
+    public List<MusicSheetWrapper.InstrumentCode> getAllInstrumentCode() {
+
+        // 构建乐器编码查询参数
+        CbsMusicalInstrumentWrapper.MusicalInstrumentQuery musicalInstrumentQuery = new CbsMusicalInstrumentWrapper.MusicalInstrumentQuery();
+        musicalInstrumentQuery.setPage(1);
+        musicalInstrumentQuery.setRows(999);
+
+        // 调用音乐服务查询乐器编码
+        List<CbsMusicalInstrumentWrapper.MusicalInstrumentQueryDto> rows = musicFeignClientService.musicalInstrumentPage(musicalInstrumentQuery).feignData().getRows();
+        if (CollectionUtils.isEmpty(rows)) {
+            return Collections.emptyList();
+        }
+
+        return rows.stream().map(x -> {
+            // 构建乐器编码
+            return MusicSheetWrapper.InstrumentCode.builder()
+                .id(x.getId())
+                .name(x.getName())
+                .code(x.getCode())
+                .subjectId(x.getSubjectId())
+                .subjectName(x.getSubjectName())
+                .orientation(x.getOrientation())
+                .transferFlag(x.getTransferFlag())
+                .build();
+        }).collect(Collectors.toList());
+
+    }
 }