package cn.efunbox.audio.impl.res; import cn.efunbox.audio.entity.BaseOrderEnum; import cn.efunbox.audio.entity.res.ResAlbum; import cn.efunbox.audio.helper.SortHelper; import cn.efunbox.audio.page.ResOnePage; import cn.efunbox.audio.repository.res.ResAlbumRepository; import cn.efunbox.audio.service.res.ResAlbumService; import cn.efunbox.audio.utils.ResApiCode; import cn.efunbox.audio.utils.ResApiResult; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.LinkedHashMap; import java.util.List; @Service public class ResAlbumServiceImpl implements ResAlbumService { @Autowired ResAlbumRepository resAlbumRepository; /** * 获取分类下的专辑列表-分页 * @param typeId 分类 Id * @param pageNum 页码 * @param pageSize 页面大小 * @return */ @Override public ResApiResult> getResAlbumList(String typeId, Integer pageNum, Integer pageSize) { //查询条件 ResAlbum resAlbum = new ResAlbum(); if(StringUtils.isNotBlank(typeId)){ resAlbum.setTypeId(typeId); } resAlbum.setTypeId(typeId); Long count = resAlbumRepository.count(resAlbum); if(count == 0){ return ResApiResult.error(ResApiCode.NOT_FOUND); } ResOnePage onePage = new ResOnePage(count); if(pageNum != null){ onePage.setPageNum(pageNum); } if(pageSize != null){ onePage.setPageSize(pageSize); } //数据查询 List resAlbumList = resAlbumRepository.find( resAlbum, onePage.getStart(), onePage.getPageSize(), SortHelper.sortMap2Sort( new LinkedHashMap() {{ put("sort", BaseOrderEnum.ASC); }} ) ); if(resAlbumList == null || resAlbumList.size() == 0){ return ResApiResult.error(ResApiCode.NOT_FOUND); } onePage.setContentList(resAlbumList); //响应 return ResApiResult.ok(onePage); } /** * 获取专辑详情信息 * @param contentId 专辑 id * @return * @throws Exception */ @Override public ResApiResult getResAlbumById(String contentId) throws Exception { if(StringUtils.isBlank(contentId)){ return ResApiResult.error(ResApiCode.PARAMETER_NULL,ResApiCode.PARAMETER_NULL.getMessage()+"contentId");//错误提示语格式=》请求参数为空:contentId } //查询 ResAlbum resAlbum = resAlbumRepository.find(contentId); if(resAlbum == null){ return ResApiResult.error(ResApiCode.NOT_FOUND); } return ResApiResult.ok(resAlbum); } }