Commit b0822d9b authored by liqin's avatar liqin 💬

bug fixed

parent 1e61a8d2
...@@ -14,6 +14,7 @@ import javax.validation.constraints.NotNull; ...@@ -14,6 +14,7 @@ import javax.validation.constraints.NotNull;
import java.io.Serializable; import java.io.Serializable;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* <p> * <p>
...@@ -71,7 +72,7 @@ public class ExhibitionBoard implements Serializable { ...@@ -71,7 +72,7 @@ public class ExhibitionBoard implements Serializable {
@ApiModelProperty("展板内容简介") @ApiModelProperty("展板内容简介")
@TableField("remarks") @TableField("remarks")
@NotBlank(message = "展板简介不能为空", groups = {Add.class, Update.class}) @NotBlank(message = "展板简介不能为空", groups = {Add.class, Update.class})
@Length(min = 0, max = 2000, message = "展板简介的字数超过最大限制2000") @Length(max = 2000, message = "展板简介的字数超过最大限制2000")
private String remarks; private String remarks;
@ApiModelProperty("视频内容版权方ID") @ApiModelProperty("视频内容版权方ID")
...@@ -166,4 +167,12 @@ public class ExhibitionBoard implements Serializable { ...@@ -166,4 +167,12 @@ public class ExhibitionBoard implements Serializable {
@TableField(exist = false) @TableField(exist = false)
private List<Audit> auditHistoryList; private List<Audit> auditHistoryList;
@ApiModelProperty("视频语言列表")
@TableField(exist = false)
private List<Map<String, String>> videoLanguageList;
@ApiModelProperty("音频语言列表")
@TableField(exist = false)
private List<Map<String, String>> audioLanguageList;
} }
...@@ -96,8 +96,7 @@ public class AuditServiceImpl extends ServiceImpl<AuditMapper, Audit> implements ...@@ -96,8 +96,7 @@ public class AuditServiceImpl extends ServiceImpl<AuditMapper, Audit> implements
/** /**
* 分别查询 * 分别查询
*/ */
private Page<Audit> pageByType(QueryWrapper<Audit> ew, String name, private Page<Audit> pageByType(QueryWrapper<Audit> ew, String name, AuditTypeEnum type, Page<Audit> auditPage) {
AuditTypeEnum type, Page<Audit> auditPage) {
Page<Audit> selectPage = null; Page<Audit> selectPage = null;
if (StringUtils.isNotBlank(name)) { if (StringUtils.isNotBlank(name)) {
ew.and(i -> i.like("b.name", name).or().like("c.user_name", name)); ew.and(i -> i.like("b.name", name).or().like("c.user_name", name));
...@@ -306,8 +305,10 @@ public class AuditServiceImpl extends ServiceImpl<AuditMapper, Audit> implements ...@@ -306,8 +305,10 @@ public class AuditServiceImpl extends ServiceImpl<AuditMapper, Audit> implements
} }
collect.remove(videoFileId); collect.remove(videoFileId);
} }
if (!collect.isEmpty()) {
this.assetMapper.deleteBatchIds(collect.keySet()); this.assetMapper.deleteBatchIds(collect.keySet());
} }
}
one.setAuditStatus(audit.getStatus()); one.setAuditStatus(audit.getStatus());
one.setPublished(true); one.setPublished(true);
update = this.videoContentService.updateById(one); update = this.videoContentService.updateById(one);
...@@ -385,8 +386,10 @@ public class AuditServiceImpl extends ServiceImpl<AuditMapper, Audit> implements ...@@ -385,8 +386,10 @@ public class AuditServiceImpl extends ServiceImpl<AuditMapper, Audit> implements
this.assetMapper.updateById(asset); this.assetMapper.updateById(asset);
collect.remove(audioId); collect.remove(audioId);
} }
if (!collect.isEmpty()) {
this.assetMapper.deleteBatchIds(collect.keySet()); this.assetMapper.deleteBatchIds(collect.keySet());
} }
}
final List<String> datumIdList = one.getDatumIdList(); final List<String> datumIdList = one.getDatumIdList();
if (datumIdList != null && !datumIdList.isEmpty()) { if (datumIdList != null && !datumIdList.isEmpty()) {
final LambdaQueryWrapper<Asset> assetQueryWrapper = Wrappers.<Asset>lambdaQuery().eq(Asset::getRefItemId, exhibitionBoardId); final LambdaQueryWrapper<Asset> assetQueryWrapper = Wrappers.<Asset>lambdaQuery().eq(Asset::getRefItemId, exhibitionBoardId);
......
...@@ -350,12 +350,12 @@ public class ChinaMobileRestApiController extends BaseController { ...@@ -350,12 +350,12 @@ public class ChinaMobileRestApiController extends BaseController {
List<Map<String, String>> videoList = new ArrayList<>(); List<Map<String, String>> videoList = new ArrayList<>();
final ExhibitionBoard exhibitionBoard = this.exhibitionBoardService.getById(boardId); final ExhibitionBoard exhibitionBoard = this.exhibitionBoardService.getById(boardId);
final String videoContentId = exhibitionBoard.getVideoContentId(); final String videoContentId = exhibitionBoard.getVideoContentId();
LambdaQueryWrapper<Asset> assetLambdaQueryWrapper = Wrappers.<Asset>lambdaQuery().eq(Asset::getRefItemId, videoContentId).eq(Asset::getPublished, true);; LambdaQueryWrapper<Asset> assetLambdaQueryWrapper = Wrappers.<Asset>lambdaQuery().eq(Asset::getRefItemId, videoContentId).eq(Asset::getPublished, true);
List<Asset> assetList = this.assetService.list(assetLambdaQueryWrapper); List<Asset> assetList = this.assetService.list(assetLambdaQueryWrapper);
List<String> languageList = assetList.stream().map(Asset::getLanguage).collect(Collectors.toList()); List<String> languageList = assetList.stream().map(Asset::getLanguage).collect(Collectors.toList());
for (LanguageEnum languageEnum : LanguageEnum.values()) { for (LanguageEnum languageEnum : LanguageEnum.values()) {
if (languageList.contains(languageEnum.name())) { if (languageList.contains(languageEnum.name())) {
Map<String, String> map = new LinkedHashMap<>(1); Map<String, String> map = new LinkedHashMap<>(2);
map.put("code", languageEnum.name()); map.put("code", languageEnum.name());
map.put("name", languageEnum.getName()); map.put("name", languageEnum.getName());
videoList.add(map); videoList.add(map);
...@@ -372,7 +372,7 @@ public class ChinaMobileRestApiController extends BaseController { ...@@ -372,7 +372,7 @@ public class ChinaMobileRestApiController extends BaseController {
languageList = assetList.stream().map(Asset::getLanguage).collect(Collectors.toList()); languageList = assetList.stream().map(Asset::getLanguage).collect(Collectors.toList());
for (LanguageEnum languageEnum : LanguageEnum.values()) { for (LanguageEnum languageEnum : LanguageEnum.values()) {
if (languageList.contains(languageEnum.name())) { if (languageList.contains(languageEnum.name())) {
Map<String, String> map = new LinkedHashMap<>(1); Map<String, String> map = new LinkedHashMap<>(2);
map.put("code", languageEnum.name()); map.put("code", languageEnum.name());
map.put("name", languageEnum.getName()); map.put("name", languageEnum.getName());
audioList.add(map); audioList.add(map);
...@@ -472,7 +472,18 @@ public class ChinaMobileRestApiController extends BaseController { ...@@ -472,7 +472,18 @@ public class ChinaMobileRestApiController extends BaseController {
assetQueryWrapper.eq(Asset::getLanguage, audioLanguage.name()); assetQueryWrapper.eq(Asset::getLanguage, audioLanguage.name());
} }
final List<Asset> audioList = this.assetService.list(assetQueryWrapper); final List<Asset> audioList = this.assetService.list(assetQueryWrapper);
List<String> languageList = audioList.stream().map(Asset::getLanguage).collect(Collectors.toList());
List<Map<String, String>> audioLanguageList = new ArrayList<>();
for (LanguageEnum languageEnum : LanguageEnum.values()) {
if (languageList.contains(languageEnum.name())) {
Map<String, String> map = new LinkedHashMap<>(2);
map.put("code", languageEnum.name());
map.put("name", languageEnum.getName());
audioLanguageList.add(map);
}
}
exhibitionBoard.setAudioList(audioList); exhibitionBoard.setAudioList(audioList);
exhibitionBoard.setAudioLanguageList(audioLanguageList);
assetQueryWrapper.clear(); assetQueryWrapper.clear();
assetQueryWrapper = Wrappers.<Asset>lambdaQuery().eq(Asset::getRefItemId, id); assetQueryWrapper = Wrappers.<Asset>lambdaQuery().eq(Asset::getRefItemId, id);
...@@ -494,7 +505,19 @@ public class ChinaMobileRestApiController extends BaseController { ...@@ -494,7 +505,19 @@ public class ChinaMobileRestApiController extends BaseController {
assetQueryWrapper.eq(Asset::getLanguage, videoLanguage.name()); assetQueryWrapper.eq(Asset::getLanguage, videoLanguage.name());
} }
final List<Asset> videoList = this.assetService.list(assetQueryWrapper); final List<Asset> videoList = this.assetService.list(assetQueryWrapper);
languageList.clear();
languageList = videoList.stream().map(Asset::getLanguage).collect(Collectors.toList());
List<Map<String, String>> videoLanguageList = new ArrayList<>();
for (LanguageEnum languageEnum : LanguageEnum.values()) {
if (languageList.contains(languageEnum.name())) {
Map<String, String> map = new LinkedHashMap<>(2);
map.put("code", languageEnum.name());
map.put("name", languageEnum.getName());
videoLanguageList.add(map);
}
}
exhibitionBoard.setVideoList(videoList); exhibitionBoard.setVideoList(videoList);
exhibitionBoard.setVideoLanguageList(videoLanguageList);
} }
return getResult(exhibitionBoard); return getResult(exhibitionBoard);
} }
......
...@@ -127,6 +127,31 @@ public class ExhibitionBoardController extends BaseController { ...@@ -127,6 +127,31 @@ public class ExhibitionBoardController extends BaseController {
if (count > 0) { if (count > 0) {
return getFailResult("400", "名称已存在,请修改名称"); return getFailResult("400", "名称已存在,请修改名称");
} }
final List<String> audioIdList = exhibitionBoard.getAudioIdList();
if (audioIdList == null || audioIdList.isEmpty()) {
return getFailResult("400", "导览音频文件必须上传");
}
final List<String> datumIdList = exhibitionBoard.getDatumIdList();
if (datumIdList == null || datumIdList.isEmpty()) {
return getFailResult("400", "参考资料文件必须上传");
}
for (String audioId : audioIdList) {
final Asset asset = this.assetService.getById(audioId);
if (asset.getPublished()) {
asset.setFileType(FileTypeEnum.AUDIO.name());
asset.setFileCat(FileCatEnum.EXHIBITION_BOARD_AUDIO.name());
asset.setRefItemId(exhibitionBoard.getId());
this.assetService.updateById(asset);
}
}
for (String datumId : datumIdList) {
final Asset asset = this.assetService.getById(datumId);
if (asset.getPublished()) {
asset.setFileCat(FileCatEnum.EXHIBITION_BOARD_DATUM.name());
asset.setRefItemId(exhibitionBoard.getId());
this.assetService.updateById(asset);
}
}
final ExhibitionBoard one = this.exhibitionBoardService.getById(exhibitionBoard.getId()); final ExhibitionBoard one = this.exhibitionBoardService.getById(exhibitionBoard.getId());
one.setAuditStatus(AuditStatusEnum.TBC.name()); one.setAuditStatus(AuditStatusEnum.TBC.name());
...@@ -134,6 +159,7 @@ public class ExhibitionBoardController extends BaseController { ...@@ -134,6 +159,7 @@ public class ExhibitionBoardController extends BaseController {
final Audit audit = Audit.builder() final Audit audit = Audit.builder()
.content(exhibitionBoard.getName()) .content(exhibitionBoard.getName())
.name(exhibitionBoard.getName())
.refItemId(exhibitionBoard.getId()) .refItemId(exhibitionBoard.getId())
.userId(getcurUser().getId()) .userId(getcurUser().getId())
.type(AuditTypeEnum.EXHIBITION_BOARD.name()) .type(AuditTypeEnum.EXHIBITION_BOARD.name())
......
...@@ -120,6 +120,20 @@ public class VideoContentController extends BaseController { ...@@ -120,6 +120,20 @@ public class VideoContentController extends BaseController {
if (count > 0) { if (count > 0) {
return getFailResult("400", "名称已存在,请修改名称"); return getFailResult("400", "名称已存在,请修改名称");
} }
final List<String> videoFileIdList = videoContent.getVideoFileIdList();
if (videoFileIdList == null || videoFileIdList.isEmpty()) {
return getFailResult("400", "视频文件必须上传");
}
for (String videoFileId : videoFileIdList) {
final Asset asset = this.assetService.getById(videoFileId);
if (!asset.getPublished()) {
asset.setThumbnail(videoContent.getThumbnail());
asset.setFileType(FileTypeEnum.VIDEO.name());
asset.setFileCat(FileCatEnum.VIDEO_CONTENT.name());
asset.setRefItemId(videoContent.getId());
this.assetService.updateById(asset);
}
}
final Audit audit = Audit.builder() final Audit audit = Audit.builder()
.content(videoContent.getName()) .content(videoContent.getName())
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment