|
@@ -0,0 +1,221 @@
|
|
|
|
+package com.dayaedu.cbs.domain.wrapper;
|
|
|
|
+
|
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
|
+import com.baomidou.mybatisplus.annotation.TableField;
|
|
|
|
+import com.baomidou.mybatisplus.annotation.TableId;
|
|
|
|
+import com.dayaedu.cbs.common.enums.school.EMusicSheetType;
|
|
|
|
+import com.microsvc.toolkit.common.response.paging.QueryInfo;
|
|
|
|
+import io.swagger.annotations.ApiModel;
|
|
|
|
+import io.swagger.annotations.ApiModelProperty;
|
|
|
|
+
|
|
|
|
+import java.util.Date;
|
|
|
|
+import java.util.Optional;
|
|
|
|
+
|
|
|
|
+import lombok.AllArgsConstructor;
|
|
|
|
+import lombok.Builder;
|
|
|
|
+import lombok.Data;
|
|
|
|
+import lombok.NoArgsConstructor;
|
|
|
|
+import org.apache.commons.lang3.StringUtils;
|
|
|
|
+
|
|
|
|
+import javax.validation.constraints.NotBlank;
|
|
|
|
+import javax.validation.constraints.NotNull;
|
|
|
|
+
|
|
|
|
+/**
|
|
|
|
+ * 曲谱表
|
|
|
|
+ * 2023-12-29 00:05:53
|
|
|
|
+ */
|
|
|
|
+@ApiModel(value = "MusicSheetWrapper对象", description = "曲谱表查询对象")
|
|
|
|
+public class MusicSheetWrapper {
|
|
|
|
+
|
|
|
|
+ @Data
|
|
|
|
+ @Builder
|
|
|
|
+ @NoArgsConstructor
|
|
|
|
+ @AllArgsConstructor
|
|
|
|
+ @ApiModel(" MusicSheetQuery-曲谱表")
|
|
|
|
+ public static class MusicSheetQuery implements QueryInfo {
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("当前页")
|
|
|
|
+ private Integer page;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("分页行数")
|
|
|
|
+ private Integer rows;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("关键字匹配")
|
|
|
|
+ private String keyword;
|
|
|
|
+
|
|
|
|
+ public String getKeyword() {
|
|
|
|
+ return Optional.ofNullable(keyword).filter(StringUtils::isNotBlank).orElse(null);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public String jsonString() {
|
|
|
|
+ return JSON.toJSONString(this);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public static MusicSheetQuery from(String json) {
|
|
|
|
+ return JSON.parseObject(json, MusicSheetQuery.class);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @ApiModel(" MusicSheet-曲谱表")
|
|
|
|
+ public static class MusicSheet {
|
|
|
|
+
|
|
|
|
+ public String jsonString() {
|
|
|
|
+ return JSON.toJSONString(this);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public static MusicSheet from(String json) {
|
|
|
|
+ return JSON.parseObject(json, MusicSheet.class);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Data
|
|
|
|
+ @ApiModel(" AddMusicSheet-曲谱新增/修改表")
|
|
|
|
+ public class AddMusicSheet {
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("主键")
|
|
|
|
+ private Long id;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("曲谱分类ID")
|
|
|
|
+ private Long musicCategoryId;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("曲谱封面图")
|
|
|
|
+ @NotBlank(message = "曲谱封面图不能为空")
|
|
|
|
+ private String musicCover;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("曲谱名称")
|
|
|
|
+ @NotBlank(message = "曲谱名称不能为空")
|
|
|
|
+ private String name;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("描述")
|
|
|
|
+ private String remark;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("曲谱乐器(多个,用逗号分隔)")
|
|
|
|
+ private String musicalInstrumentIds;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("作曲人")
|
|
|
|
+ @NotBlank(message = "音乐人不能为空")
|
|
|
|
+ private String composer;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("曲谱类型(SINGLE:单曲 CONCERT:合奏)")
|
|
|
|
+ @NotNull(message = "曲谱类型不能为空")
|
|
|
|
+ private EMusicSheetType musicSheetType;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("是否使用系统节拍器(0:否;1:是)")
|
|
|
|
+ private Boolean isUseSystemBeat;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("是否可评测(0:否;1:是)")
|
|
|
|
+ private Boolean isEvaluated;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("是否可转谱(0:否; 1:是)")
|
|
|
|
+ private Boolean isConvertibleScore;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("是否展示指法(0:否;1:是)")
|
|
|
|
+ private Boolean isShowFingering;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("是否播入节拍器(0: 否 1:是)")
|
|
|
|
+ private Boolean isPlayBeat;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("多声轨选择")
|
|
|
|
+ private String multiTracksSelection;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("播放速度")
|
|
|
|
+ private Integer playSpeed;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("播放模式(MIDI;MP3)")
|
|
|
|
+ private String playMode;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("XML文件")
|
|
|
|
+ private String xmlFileUrl;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("MIDI文件(保留字段)")
|
|
|
|
+ private String midiFileUrl;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("曲谱JSON")
|
|
|
|
+ private String musicJson;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("曲谱缓存JSON(后续使用)")
|
|
|
|
+ private String musicSvgJson;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("曲谱缓存")
|
|
|
|
+ private String musicSvg;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("简谱缓存")
|
|
|
|
+ private String musicJianSvg;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("首调缓存")
|
|
|
|
+ private String musicFirstSvg;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("谱面图片JSON(后续使用)")
|
|
|
|
+ private String musicImgJson;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("五线谱图片")
|
|
|
|
+ private String musicImg;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("首调图片")
|
|
|
|
+ private String musicFirstImg;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("固定调图片")
|
|
|
|
+ private String musicJianImg;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("谱面参数设置")
|
|
|
|
+ private String extConfigJson;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("谱面样式参数设置")
|
|
|
|
+ private String extStyleConfigJson;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("可用类型(PLATFORM: 平台; ORG: 机构; PERSON: 个人)")
|
|
|
|
+ private String availableType;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("来源类型(PLATFORM: 平台; ORG: 机构; PERSON: 个人)")
|
|
|
|
+ private String sourceType;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("音频类型(HOMEMODE: 自制 COMMON: 普通)")
|
|
|
|
+ private String audioType;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("曲目状态(0:停用,1:启用)")
|
|
|
|
+ private Boolean status;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("停用原因")
|
|
|
|
+ private String reason;
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("更新人")
|
|
|
|
+ private Long updateBy;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("更新时间")
|
|
|
|
+ private Date updateTime;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("创建人")
|
|
|
|
+ private Long createBy;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("创建时间")
|
|
|
|
+ private Date createTime;
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Data
|
|
|
|
+ @Builder
|
|
|
|
+ @NoArgsConstructor
|
|
|
|
+ @AllArgsConstructor
|
|
|
|
+ @ApiModel(" MusicSheet-管乐迷曲谱表")
|
|
|
|
+ public static class MecMusicSheet extends MusicSheet {
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("曲目分类")
|
|
|
|
+ private String categoriesName;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("可见会员等级,用于判断是否收费")
|
|
|
|
+ private String rankIds;
|
|
|
|
+
|
|
|
|
+ @ApiModelProperty("排序值")
|
|
|
|
+ private Integer order;
|
|
|
|
+
|
|
|
|
+ public String jsonString() {
|
|
|
|
+ return JSON.toJSONString(this);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public static MusicSheet from(String json) {
|
|
|
|
+ return JSON.parseObject(json, MusicSheet.class);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+}
|