Przeglądaj źródła

Merge branch 'dev_v1.3.8_20221223' into ponline

Eric 2 lat temu
rodzic
commit
4a6b5435f4

+ 52 - 18
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/MusicSheetController.java

@@ -1,11 +1,33 @@
 package com.yonge.cooleshow.admin.controller;
 
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+
+import java.util.Date;
+import java.util.List;
+
+import javax.validation.Valid;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
 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.AdjustModel;
 import com.yonge.cooleshow.biz.dal.dto.MusicSheetDto;
 import com.yonge.cooleshow.biz.dal.dto.MusicSheetExport;
+import com.yonge.cooleshow.biz.dal.dto.MusicSheetRenderDto;
 import com.yonge.cooleshow.biz.dal.dto.ReasonDto;
 import com.yonge.cooleshow.biz.dal.dto.req.TeacherMusicSheetAuditReq;
 import com.yonge.cooleshow.biz.dal.dto.search.MusicSheetSearch;
@@ -37,24 +59,6 @@ import com.yonge.toolset.utils.easyexcel.ErrMsg;
 import com.yonge.toolset.utils.easyexcel.ExcelDataReader;
 import com.yonge.toolset.utils.easyexcel.ExcelException;
 import com.yonge.toolset.utils.easyexcel.ExcelUtils;
-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.http.HttpStatus;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-import org.springframework.web.bind.annotation.RestController;
-import org.springframework.web.multipart.MultipartFile;
-
-import javax.validation.Valid;
-import java.util.Date;
-import java.util.List;
 
 /**
  * 曲谱表 web 控制层
@@ -187,6 +191,36 @@ public class MusicSheetController extends BaseController {
         }
     }
 
+    @ApiOperation(value = "修改", httpMethod="POST", consumes="application/json", produces="application/json")
+    @PostMapping(value="/updateRenderFile", consumes="application/json", produces="application/json")
+    @PreAuthorize("@pcs.hasPermissions('music/sheet/updateRenderFile')")
+    public HttpResponseResult<Object> updateRenderFile(@Valid @RequestBody MusicSheetRenderDto musicSheetRenderDto) {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if (sysUser == null  || sysUser.getId() == null) {
+            return failed("用户信息获取失败");
+        }
+        if (musicSheetRenderDto.getMusicSheetId()==null){
+            return failed("缺少ID");
+        }
+        MusicSheet musicSheet = musicSheetService.getById(musicSheetRenderDto.getMusicSheetId());
+        
+        if(musicSheet == null){
+        	return failed("参数异常");
+        }
+        musicSheet.setMusicFirstSvg(musicSheetRenderDto.getMusicFirstSvg());
+        musicSheet.setMusicJianSvg(musicSheetRenderDto.getMusicJianSvg());
+        musicSheet.setMusicJSON(musicSheetRenderDto.getMusicJSON());
+        musicSheet.setMusicSvg(musicSheetRenderDto.getMusicSvg());
+
+        musicSheet.setUpdateBy(sysUser.getId());
+        musicSheet.setUpdateTime(new Date());
+        if ( musicSheetService.updateById(musicSheet)){
+            return succeed("修改成功");
+        } else {
+            return failed("修改失败");
+        }
+    }
+
     @ApiOperation(value = "分页查询", httpMethod="POST", consumes="application/json", produces="application/json")
     @PostMapping(value="/list", consumes="application/json", produces="application/json")
     @PreAuthorize("@pcs.hasPermissions('music/sheet/list')")

+ 54 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dto/MusicSheetRenderDto.java

@@ -0,0 +1,54 @@
+package com.yonge.cooleshow.biz.dal.dto;
+
+public class MusicSheetRenderDto {
+
+	private Long musicSheetId;
+	
+	private String musicJSON;
+	
+	private String musicSvg;
+	
+	private String musicJianSvg;
+	
+	private String musicFirstSvg;
+
+	public Long getMusicSheetId() {
+		return musicSheetId;
+	}
+
+	public void setMusicSheetId(Long musicSheetId) {
+		this.musicSheetId = musicSheetId;
+	}
+
+	public String getMusicJSON() {
+		return musicJSON;
+	}
+
+	public void setMusicJSON(String musicJSON) {
+		this.musicJSON = musicJSON;
+	}
+
+	public String getMusicSvg() {
+		return musicSvg;
+	}
+
+	public void setMusicSvg(String musicSvg) {
+		this.musicSvg = musicSvg;
+	}
+
+	public String getMusicJianSvg() {
+		return musicJianSvg;
+	}
+
+	public void setMusicJianSvg(String musicJianSvg) {
+		this.musicJianSvg = musicJianSvg;
+	}
+
+	public String getMusicFirstSvg() {
+		return musicFirstSvg;
+	}
+
+	public void setMusicFirstSvg(String musicFirstSvg) {
+		this.musicFirstSvg = musicFirstSvg;
+	}
+}

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

@@ -15,6 +15,7 @@ import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
 
 import java.util.List;
+import java.util.Optional;
 import java.util.stream.Collectors;
 
 /**
@@ -84,6 +85,9 @@ public class MusicSheetSearch  extends QueryInfo{
     @ApiModelProperty("TOP:推荐曲目 NEW:最新曲目 HOT:最热曲目")
     private MusicSortType musicSortType;
 
+    @ApiModelProperty("数据恢复")
+    private String dataRecovery;
+
     public MusicSortType getMusicSortType() {
         return musicSortType;
     }
@@ -247,4 +251,12 @@ public class MusicSheetSearch  extends QueryInfo{
     public void setActivityId(Long activityId) {
         this.activityId = activityId;
     }
+
+    public String getDataRecovery() {
+        return Optional.ofNullable(dataRecovery).filter(StringUtils::isNotBlank).orElse(null);
+    }
+
+    public void setDataRecovery(String dataRecovery) {
+        this.dataRecovery = dataRecovery;
+    }
 }

+ 44 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/entity/MusicSheet.java

@@ -221,6 +221,18 @@ public class MusicSheet implements Serializable {
 	@TableField("ext_config_json_")
 	@ApiModelProperty("曲目配置信息")
 	private String extConfigJson;
+	
+	@TableField("music_json_")
+	private String musicJSON;
+	
+	@TableField("music_svg_")
+	private String musicSvg;
+	
+	@TableField("music_jian_svg_")
+	private String musicJianSvg;
+	
+	@TableField("music_first_svg_")
+	private String musicFirstSvg;
 
 	@TableField("first_tone_")
 	@ApiModelProperty("首调")
@@ -641,6 +653,38 @@ public class MusicSheet implements Serializable {
 		return this;
 	}
 
+	public String getMusicJSON() {
+		return musicJSON;
+	}
+
+	public void setMusicJSON(String musicJSON) {
+		this.musicJSON = musicJSON;
+	}
+
+	public String getMusicSvg() {
+		return musicSvg;
+	}
+
+	public void setMusicSvg(String musicSvg) {
+		this.musicSvg = musicSvg;
+	}
+
+	public String getMusicJianSvg() {
+		return musicJianSvg;
+	}
+
+	public void setMusicJianSvg(String musicJianSvg) {
+		this.musicJianSvg = musicJianSvg;
+	}
+
+	public String getMusicFirstSvg() {
+		return musicFirstSvg;
+	}
+
+	public void setMusicFirstSvg(String musicFirstSvg) {
+		this.musicFirstSvg = musicFirstSvg;
+	}
+
 	public MusicSheet firstTone(String firstTone) {
 		this.firstTone = firstTone;
 		return this;

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

@@ -105,6 +105,9 @@
             <if test="param.auditVersion != null ">
                 and #{param.auditVersion} = t.audit_version_
             </if>
+            <if test="param.dataRecovery != null">
+                AND (t.music_img_ = '' OR t.music_img_ IS NULL OR t.first_tone_ = '' OR t.first_tone_ IS NULL OR t.fixed_tone_ = '' OR t.fixed_tone_ IS NULL)
+            </if>
         </where>
         order by
         <if test="param.myself == null or param.myself == false ">
@@ -311,6 +314,10 @@
         <result column="auditName" jdbcType="VARCHAR" property="auditName"/>
         <result column="auditReason" jdbcType="VARCHAR" property="auditReason"/>
         <result column="aiDefaultFrequency" jdbcType="VARCHAR" property="aiDefaultFrequency"/>
+        <result column="musicJSON" jdbcType="VARCHAR" property="musicJSON"/>
+        <result column="musicSvg" jdbcType="VARCHAR" property="musicSvg"/>
+        <result column="musicJianSvg" jdbcType="VARCHAR" property="musicJianSvg"/>
+        <result column="musicFirstSvg" jdbcType="VARCHAR" property="musicFirstSvg"/>
         <collection property="background" ofType="com.yonge.cooleshow.biz.dal.entity.MusicSheetAccompaniment">
             <id column="accompanimentId" jdbcType="BIGINT" property="id"/>
             <result column="accompanimentMusicSheetId" jdbcType="BIGINT" property="musicSheetId"/>

+ 3 - 3
service.md

@@ -1,7 +1,7 @@
 - [ ] gateway-server
 - [ ] auth-server
-- [ ] admin-server
-- [x] teacher-server
+- [x] admin-server
+- [ ] teacher-server
 - [ ] student-server
 - [ ] website-server
 - [ ] task-server
@@ -11,5 +11,5 @@
 - [ ] classroom-server
 - [ ] cms-server
 - [ ] mall-admin
-- [x] mall-server
+- [ ] mall-server
 - [ ] EOF