|
@@ -3,12 +3,14 @@ package com.yonge.cooleshow.admin.controller;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
import com.dayaedu.cbs.openfeign.wrapper.music.CbsMusicSheetApplicationExtendClientWrapper;
|
|
|
import com.microsvc.toolkit.common.response.template.R;
|
|
|
+import com.yonge.cooleshow.biz.dal.dto.ReasonDto;
|
|
|
import com.yonge.cooleshow.biz.dal.dto.search.MusicSheetSearch;
|
|
|
import com.yonge.cooleshow.biz.dal.dto.search.StudentMusicSheetOrderSearch;
|
|
|
import com.yonge.cooleshow.biz.dal.dto.search.TeacherMusicSheetSearch;
|
|
|
import com.yonge.cooleshow.biz.dal.entity.MusicSheet;
|
|
|
import com.yonge.cooleshow.biz.dal.enums.ClientEnum;
|
|
|
import com.yonge.cooleshow.biz.dal.enums.OrderTypeEnum;
|
|
|
+import com.yonge.cooleshow.biz.dal.enums.SourceTypeEnum;
|
|
|
import com.yonge.cooleshow.biz.dal.service.MusicSheetService;
|
|
|
import com.yonge.cooleshow.biz.dal.service.SysUserService;
|
|
|
import com.yonge.cooleshow.biz.dal.service.cbs.CbsMusicScoreService;
|
|
@@ -61,14 +63,43 @@ public class MusicSheetController extends BaseController {
|
|
|
return R.defaultR();
|
|
|
}
|
|
|
|
|
|
- @ApiOperation(value = "启/停用")
|
|
|
- @PreAuthorize("@pcs.hasPermissions('music/sheet/state', {'BACKEND'})")
|
|
|
- @PostMapping("music/sheet/state/{id}")
|
|
|
- public HttpResponseResult<Object> state(@ApiParam(value = "曲谱编号", required = true) @PathVariable("id") Long id) {
|
|
|
- if (id == null) {
|
|
|
+ @PostMapping("/state/{id}")
|
|
|
+ @ApiOperation(value = "启用/停用", notes = "传入id")
|
|
|
+ @PreAuthorize("@pcs.hasPermissions('music/sheet/state')")
|
|
|
+ public HttpResponseResult<Boolean> state(@ApiParam(value = "曲目编号", required = true) @PathVariable Long id, @RequestBody ReasonDto reasonDto) {
|
|
|
+ if (StringUtil.isEmpty(id)) {
|
|
|
return failed("参数不能为空");
|
|
|
}
|
|
|
- return status(musicSheetService.state(id, "", ClientEnum.SYSTEM));
|
|
|
+ MusicSheet musicSheet = musicSheetService.getById(id);
|
|
|
+ if (musicSheet == null) {
|
|
|
+ return failed("未找到曲目");
|
|
|
+ }
|
|
|
+ if (YesOrNoEnum.YES.equals(musicSheet.getState()) &&
|
|
|
+ musicSheet.getSourceType().equals(SourceTypeEnum.TEACHER) && StringUtil.isEmpty(reasonDto.getReason())) {
|
|
|
+ return failed("请填写下架原因");
|
|
|
+ }
|
|
|
+ return status(musicSheetService.state(id,reasonDto.getReason(),ClientEnum.SYSTEM));
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 批量启用/停用
|
|
|
+ */
|
|
|
+ @PostMapping("/stateList")
|
|
|
+ @ApiOperation(value = "批量启用/停用")
|
|
|
+ @PreAuthorize("@pcs.hasPermissions('music/sheet/stateList')")
|
|
|
+ public HttpResponseResult<Boolean> stateList(@RequestBody ReasonDto reasonDto) {
|
|
|
+ if (StringUtil.isEmpty(reasonDto.getMusicSheetIds())) {
|
|
|
+ return failed("参数不能为空");
|
|
|
+ }
|
|
|
+ if (reasonDto.getState() == null) {
|
|
|
+ return failed("启用/禁用状态不能为空");
|
|
|
+ }
|
|
|
+ if (reasonDto.getState().equals(YesOrNoEnum.NO) && StringUtil.isEmpty(reasonDto.getReason())) {
|
|
|
+ return failed("停用原因不能为空");
|
|
|
+ }
|
|
|
+
|
|
|
+ return status(musicSheetService.stateList(reasonDto));
|
|
|
}
|
|
|
|
|
|
@PostMapping(value = "music/sheet/student")
|