Przeglądaj źródła

update曲目修改

liujunchi 3 lat temu
rodzic
commit
2f68c19678

+ 6 - 20
cooleshow-user/user-admin/src/main/java/com/yonge/cooleshow/admin/controller/MusicSheetController.java

@@ -96,23 +96,10 @@ public class MusicSheetController extends BaseController {
         musicSheetDto.setAuditStatus(AuthStatusEnum.PASS);
         musicSheetDto.setDelFlag(false);
         musicSheetDto.setSourceType(SourceTypeEnum.PLATFORM);
-        List<MusicSheetAccompaniment> list;
-        if (!AudioTypeEnum.MIDI.getCode().equals(musicSheetDto.getAudioType().getCode())){
-            list = musicSheetDto.getBackground();
-            if (CollectionUtils.isEmpty(list)){
-                return failed("mp3音频文件对应的主音或者伴奏文件没有提供");
-            }
-            musicSheetService.saveMp3AndAccompaniment(musicSheetDto,sysUser);
-        } else {
-            MusicSheet musicSheet = new MusicSheet();
-            BeanUtils.copyProperties(musicSheetDto, musicSheet);
-            musicSheet.setCreateBy(sysUser.getId());
-            musicSheet.setCreateTime(new Date());
-            musicSheet.setUpdateTime(new Date());
-            musicSheet.setUpdateBy(sysUser.getId());
-            musicSheet.setState(YesOrNoEnum.NO);
-            musicSheetService.save(musicSheet);
-        }
+
+        musicSheetDto.setCreateBy(sysUser.getId());
+        musicSheetDto.setCreateTime(new Date());
+        musicSheetService.saveMusicSheet(musicSheetDto,sysUser.getId());
 
         return succeed("新增曲谱成功");
 
@@ -136,7 +123,7 @@ public class MusicSheetController extends BaseController {
 
     @ApiOperation(value = "修改", httpMethod="POST", consumes="application/json", produces="application/json")
     @PostMapping(value="/update", consumes="application/json", produces="application/json")
-    public HttpResponseResult<Object> update(@Valid @RequestBody MusicSheet musicSheet) {
+    public HttpResponseResult<Object> update(@Valid @RequestBody MusicSheetDto musicSheet) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null  || sysUser.getId() == null) {
             return failed("用户信息获取失败");
@@ -151,8 +138,7 @@ public class MusicSheetController extends BaseController {
 
         musicSheet.setUpdateBy(sysUser.getId());
         musicSheet.setUpdateTime(new Date());
-        boolean result = musicSheetService.updateById(musicSheet);
-        if (result){
+        if ( musicSheetService.saveMusicSheet(musicSheet,sysUser.getId())){
             return succeed("修改成功");
         } else {
             return failed("修改失败");

+ 6 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/dao/MusicSheetAccompanimentDao.java

@@ -13,4 +13,10 @@ import java.util.List;
  **/
 public interface MusicSheetAccompanimentDao extends BaseMapper<MusicSheetAccompaniment> {
 
+    /**
+     * 删除原音
+     *
+     * @param musicSheetId 曲目id
+     */
+    void delByMusicSheetId(Long musicSheetId);
 }

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

@@ -54,9 +54,13 @@ public class MusicSheet implements Serializable {
 
     @NotNull(message = "曲谱音频文件类型不能为空!")
     @TableField("audio_type_")
-    @ApiModelProperty(value = "曲目音频类型 MP3:mp3, MIDI:midi, MP3_METRONOME:mp3_metronome")
+    @ApiModelProperty(value = "曲目音频类型 MP3:mp3, MIDI:midi,")
     private AudioTypeEnum audioType;
 
+	@TableField("mp3_type_")
+	@ApiModelProperty(value = "mp3类型 MP3:mp3, MP3_METRONOME:MP3_METRONOME,")
+	private AudioTypeEnum mp3Type;
+
     @NotBlank(message = "曲谱标签不能为空!")
     @TableField("music_tag_")
     @ApiModelProperty(value = "曲谱标签(多个标签用逗号分隔)")
@@ -409,4 +413,12 @@ public class MusicSheet implements Serializable {
 	public void setSourceType(SourceTypeEnum sourceType) {
 		this.sourceType = sourceType;
 	}
+
+	public AudioTypeEnum getMp3Type() {
+		return mp3Type;
+	}
+
+	public void setMp3Type(AudioTypeEnum mp3Type) {
+		this.mp3Type = mp3Type;
+	}
 }

+ 6 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/MusicSheetAccompanimentService.java

@@ -11,4 +11,10 @@ import com.baomidou.mybatisplus.extension.service.IService;
  **/
 public interface MusicSheetAccompanimentService extends IService<MusicSheetAccompaniment> {
 
+    /**
+     * 删除原音
+     *
+     * @param musicSheetId
+     */
+    void delByMusicSheetId(Long musicSheetId);
 }

+ 8 - 6
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/MusicSheetService.java

@@ -17,12 +17,6 @@ import com.yonge.cooleshow.biz.dal.vo.*;
  * @version v1.0
  **/
 public interface MusicSheetService extends IService<MusicSheet> {
-    /**
-     * 保存mp3以及相应的主音或者伴奏文件
-     * @param musicSheetDto
-     * @return
-     */
-    boolean saveMp3AndAccompaniment(MusicSheetDto musicSheetDto, SysUser sysUser);
 
 
     /**
@@ -172,4 +166,12 @@ public interface MusicSheetService extends IService<MusicSheet> {
      * @return: java.lang.Integer
      */
     Integer getUserToDoNum();
+
+    /**
+     * 保存曲目信息
+     *
+     * @param musicSheetDto
+     * @return
+     */
+    boolean saveMusicSheet(MusicSheetDto musicSheetDto,Long userId);
 }

+ 5 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/MusicSheetAccompanimentServiceImpl.java

@@ -26,4 +26,9 @@ public class MusicSheetAccompanimentServiceImpl extends ServiceImpl<MusicSheetAc
     public MusicSheetAccompanimentDao getDao() {
         return musicSheetAccompanimentDao;
     }
+
+    @Override
+    public void delByMusicSheetId(Long musicSheetId) {
+        musicSheetAccompanimentDao.delByMusicSheetId(musicSheetId);
+    }
 }

+ 29 - 10
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/MusicSheetServiceImpl.java

@@ -63,26 +63,21 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao,MusicSheet>
         return musicSheetDao;
     }
 
-    @Override
     @Transactional(rollbackFor = Exception.class)
-    public boolean saveMp3AndAccompaniment(MusicSheetDto musicSheetDto, SysUser sysUser) {
+    public boolean saveMp3AndAccompaniment(MusicSheetDto musicSheetDto,Long userId) {
         MusicSheet musicSheet = new MusicSheet();
         BeanUtils.copyProperties(musicSheetDto, musicSheet);
         //保存主表
-        musicSheet.setCreateBy(sysUser.getId());
-        musicSheet.setUpdateBy(sysUser.getId());
+        musicSheet.setUpdateBy(userId);
         musicSheet.setUpdateTime(new Date());
         musicSheet.setState(YesOrNoEnum.NO);
-        musicSheet.setCreateTime(new Date());
-        int count = musicSheetDao.insert(musicSheet);
+        this.saveOrUpdate(musicSheet);
 
         Long sheetId = musicSheet.getId();
         List<MusicSheetAccompaniment> list = musicSheetDto.getBackground();
-        list.forEach(musicSheetAccompaniment -> musicSheetAccompaniment.setMusicSheetId(sheetId).setCreateBy(sysUser.getId()).setCreateTime(new Date()));
-        musicSheetAccompanimentService.saveBatch(list);
-        count += list.size();
+        list.forEach(musicSheetAccompaniment -> musicSheetAccompaniment.setMusicSheetId(sheetId).setCreateBy(userId).setCreateTime(new Date()));
+        return musicSheetAccompanimentService.saveBatch(list);
 
-        return count > 1;
     }
 
     @Override
@@ -276,4 +271,28 @@ public class MusicSheetServiceImpl extends ServiceImpl<MusicSheetDao,MusicSheet>
     public Integer getUserToDoNum() {
         return baseMapper.getUserToDoNum();
     }
+
+    @Override
+    public boolean saveMusicSheet(MusicSheetDto musicSheetDto,Long userId) {
+
+        if (musicSheetDto.getId() != null) {
+            musicSheetAccompanimentService.delByMusicSheetId(musicSheetDto.getId());
+        }
+
+        List<MusicSheetAccompaniment> list;
+        if (!AudioTypeEnum.MIDI.getCode().equals(musicSheetDto.getAudioType().getCode())){
+            list = musicSheetDto.getBackground();
+            if (CollectionUtils.isEmpty(list)){
+                throw new BizException("mp3音频文件对应的主音或者伴奏文件没有提供");
+            }
+            return saveMp3AndAccompaniment(musicSheetDto,userId);
+        } else {
+            MusicSheet musicSheet = new MusicSheet();
+            BeanUtils.copyProperties(musicSheetDto, musicSheet);
+            musicSheet.setUpdateTime(new Date());
+            musicSheet.setUpdateBy(userId);
+            musicSheet.setState(YesOrNoEnum.NO);
+            return this.saveOrUpdate(musicSheet);
+        }
+    }
 }

+ 11 - 0
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/vo/LiveCourseGroupStudentCourseVo.java

@@ -47,6 +47,9 @@ public class LiveCourseGroupStudentCourseVo {
     @ApiModelProperty("学生考勤id")
     private Long studentAttendanceId;
 
+    @ApiModelProperty("订单编号")
+    private String orderNo;
+
     public Long getCourseId() {
         return courseId;
     }
@@ -103,4 +106,12 @@ public class LiveCourseGroupStudentCourseVo {
     public void setStudentAttendanceId(Long studentAttendanceId) {
         this.studentAttendanceId = studentAttendanceId;
     }
+
+    public String getOrderNo() {
+        return orderNo;
+    }
+
+    public void setOrderNo(String orderNo) {
+        this.orderNo = orderNo;
+    }
 }

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

@@ -247,6 +247,7 @@
         cs.start_time_ as startTime,
         cs.end_time_ as endTime,
         cs.status_ as courseStatue,
+        cssp.order_no_ as orderNo,
         sa.id_ as studentAttendanceId
         from course_schedule cs
         left join course_schedule_student_payment cssp on cs.id_ = cssp.course_id_

+ 3 - 2
cooleshow-user/user-biz/src/main/resources/config/mybatis/MusicSheetAccompanimentMapper.xml

@@ -17,6 +17,7 @@
 		id_, music_sheet_id_, music_subject_, audio_file_url_, sort_number_, create_time_, create_by_
 	</sql>
 
-
-
+	<delete id="delByMusicSheetId">
+		delete  from music_sheet_accompaniment where music_sheet_id_ = #{musicSheetId}
+    </delete>
 </mapper>

+ 8 - 18
cooleshow-user/user-teacher/src/main/java/com/yonge/cooleshow/teacher/controller/MusicSheetController.java

@@ -76,28 +76,17 @@ public class MusicSheetController extends BaseController {
         musicSheetDto.setAuditStatus(AuthStatusEnum.DOING);
         musicSheetDto.setSubmitAuditTime(new Date());
         musicSheetDto.setSourceType(SourceTypeEnum.TEACHER);
-        List<MusicSheetAccompaniment> list;
-        if (!AudioTypeEnum.MIDI.getCode().equals(musicSheetDto.getAudioType().getCode())){
-            list = musicSheetDto.getBackground();
-            if (CollectionUtils.isEmpty(list)){
-                return failed("mp3音频文件对应的主音或者伴奏文件没有提供");
-            }
-            musicSheetService.saveMp3AndAccompaniment(musicSheetDto,sysUser);
-        } else {
-            MusicSheet musicSheet = new MusicSheet();
-            BeanUtils.copyProperties(musicSheetDto, musicSheet);
-            musicSheet.setCreateBy(sysUser.getId());
-            musicSheet.setCreateTime(new Date());
-            musicSheet.setState(YesOrNoEnum.NO);
-            musicSheetService.save(musicSheet);
-        }
+
+        musicSheetDto.setCreateBy(sysUser.getId());
+        musicSheetDto.setCreateTime(new Date());
+        musicSheetService.saveMusicSheet(musicSheetDto,sysUser.getId());
         return succeed("新增曲谱成功");
     }
 
 
     @ApiOperation(value = "修改", httpMethod="POST", consumes="application/json", produces="application/json")
     @PostMapping(value="/update", consumes="application/json", produces="application/json")
-    public HttpResponseResult<Object> update(@Valid @RequestBody MusicSheet musicSheet) {
+    public HttpResponseResult<Object> update(@Valid @RequestBody MusicSheetDto musicSheet) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null  || sysUser.getId() == null) {
             return failed("用户信息获取失败");
@@ -110,8 +99,9 @@ public class MusicSheetController extends BaseController {
         musicSheet.setUpdateTime(new Date());
         musicSheet.setSubmitAuditTime(new Date());
         musicSheet.setAuditStatus(AuthStatusEnum.DOING);
-        boolean result = musicSheetService.updateById(musicSheet);
-        if (result){
+        musicSheet.setUpdateBy(sysUser.getId());
+        musicSheet.setUpdateTime(new Date());
+        if ( musicSheetService.saveMusicSheet(musicSheet,sysUser.getId())){
             return succeed("修改成功");
         } else {
             return failed("修改失败");