From 77c1b2e42b966f6ac3781efceb2cffdd590addec Mon Sep 17 00:00:00 2001 From: tj <1378534974@qq.com> Date: 星期四, 05 六月 2025 16:27:52 +0800 Subject: [PATCH] 1.1 --- src/main/java/com/mzl/flower/service/film/impl/FilmWorksServiceImpl.java | 75 ++++++++++++++++++++++++++++++++++--- 1 files changed, 68 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/mzl/flower/service/film/impl/FilmWorksServiceImpl.java b/src/main/java/com/mzl/flower/service/film/impl/FilmWorksServiceImpl.java index 10d204b..45b4846 100644 --- a/src/main/java/com/mzl/flower/service/film/impl/FilmWorksServiceImpl.java +++ b/src/main/java/com/mzl/flower/service/film/impl/FilmWorksServiceImpl.java @@ -1,18 +1,25 @@ package com.mzl.flower.service.film.impl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.mzl.flower.dto.request.filmwork.FilmWorksDTO; -import com.mzl.flower.dto.request.filmwork.FilmWorksQueryDTO; -import com.mzl.flower.dto.response.filmwork.FilmWorksVO; +import com.mzl.flower.config.exception.ValidationException; +import com.mzl.flower.constant.Constants; +import com.mzl.flower.dto.BatchDTO; +import com.mzl.flower.dto.request.film.FilmWorksDTO; +import com.mzl.flower.dto.request.film.FilmWorksQueryDTO; +import com.mzl.flower.dto.response.film.FilmWorksVO; import com.mzl.flower.entity.film.FilmWorks; -import com.mzl.flower.mapper.filmwork.FilmWorksMapper; +import com.mzl.flower.mapper.film.FilmWorksMapper; import com.mzl.flower.service.film.FilmWorksService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.mzl.flower.utils.DateUtils; import lombok.RequiredArgsConstructor; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.time.LocalDate; import java.util.List; /** @@ -36,6 +43,7 @@ FilmWorks filmWorks = new FilmWorks(); BeanUtils.copyProperties(filmWorksDTO, filmWorks); filmWorks.create(); + filmWorks.setStatus(Constants.COMMON_PUBLISH_STATUS.unpublished.name()); filmWorksMapper.insert(filmWorks); } @@ -46,16 +54,69 @@ @Override public void deleteFilmWorks(String id) { - + FilmWorks filmWork = filmWorksMapper.selectById(id); + if(filmWork==null){ + throw new ValidationException("找不到id为"+id+"的影视作品"); + } + filmWorksMapper.deleteById(id); } @Override - public Page<FilmWorksVO> queryPage(FilmWorksQueryDTO filmWorksQueryDTO, Page page) { - return null; + public Page<FilmWorksVO> queryPage(FilmWorksQueryDTO dto, Page page) { + if(StringUtils.isNotBlank(dto.getCreateDateBeginStr())){ + dto.setCreateDateBegin(DateUtils.dateToLocalDateTime(dto.getCreateDateBeginStr(),true)); + } + if(StringUtils.isNotBlank(dto.getCreateDateEndStr())){ + dto.setCreateDateEnd(DateUtils.dateToLocalDateTime(dto.getCreateDateEndStr(),false)); + } + List<FilmWorksVO> list = filmWorksMapper.queryPage(dto,page); + page.setRecords(list); + return page; } @Override public List<FilmWorksVO> getFilmWorksAll() { return filmWorksMapper.getFilmWorksAll(); } + + @Override + public void changeStatus(Long id) { + FilmWorks filmWork = filmWorksMapper.selectById(id); + if (filmWork == null) { + throw new ValidationException("找不到id为" + id + "的公告"); + } + if (Constants.COMMON_PUBLISH_STATUS.published.name().equals(filmWork.getStatus())) { + filmWork.setStatus(Constants.COMMON_PUBLISH_STATUS.unpublished.name()); + } else { + filmWork.setStatus(Constants.COMMON_PUBLISH_STATUS.published.name()); + filmWork.setPublishDate(LocalDate.now()); + } + filmWorksMapper.updateById(filmWork); + } + + @Override + public void batchDelete(BatchDTO dto) { + filmWorksMapper.deleteBatchIds(dto.getIds()); + } + + @Override + public void batchPublish(BatchDTO dto) { + List<FilmWorks> list = filmWorksMapper.selectList(new LambdaQueryWrapper<FilmWorks>().in(FilmWorks::getId, dto.getIds())); + for (FilmWorks filmWork : list) { + filmWork.setStatus(Constants.COMMON_PUBLISH_STATUS.published.name()); + filmWork.setPublishDate(LocalDate.now()); + filmWorksMapper.updateById(filmWork); + } + } + + @Override + public FilmWorksVO detail(Long id) { + FilmWorks filmWork = filmWorksMapper.selectById(id); + if(filmWork==null){ + return null; + } + FilmWorksVO filmWorksVO = new FilmWorksVO(); + BeanUtils.copyProperties(filmWork,filmWorksVO); + return filmWorksVO; + } } -- Gitblit v1.9.3