|
@@ -0,0 +1,95 @@
|
|
|
+package com.fjhx.xmhjc.service.carousel.impl;
|
|
|
+
|
|
|
+import cn.hutool.core.util.StrUtil;
|
|
|
+import com.fjhx.file.entity.FileInfoVo;
|
|
|
+import com.fjhx.file.utils.ObsFileUtil;
|
|
|
+import com.fjhx.xmhjc.entity.carousel.po.CarouselManager;
|
|
|
+import com.fjhx.xmhjc.mapper.carousel.CarouselManagerMapper;
|
|
|
+import com.fjhx.xmhjc.service.carousel.CarouselManagerService;
|
|
|
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import com.ruoyi.common.utils.wrapper.SqlField;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
+import com.fjhx.xmhjc.entity.carousel.vo.CarouselManagerVo;
|
|
|
+import com.fjhx.xmhjc.entity.carousel.dto.CarouselManagerSelectDto;
|
|
|
+import com.ruoyi.common.utils.wrapper.IWrapper;
|
|
|
+import com.fjhx.xmhjc.entity.carousel.dto.CarouselManagerDto;
|
|
|
+import cn.hutool.core.bean.BeanUtil;
|
|
|
+
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+import java.util.stream.Collectors;
|
|
|
+
|
|
|
+/**
|
|
|
+ * <p>
|
|
|
+ * 轮播图管理 服务实现类
|
|
|
+ * </p>
|
|
|
+ *
|
|
|
+ * @author hj
|
|
|
+ * @since 2023-11-19
|
|
|
+ */
|
|
|
+@Service
|
|
|
+public class CarouselManagerServiceImpl extends ServiceImpl<CarouselManagerMapper, CarouselManager> implements CarouselManagerService {
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<CarouselManagerVo> getList(CarouselManagerSelectDto dto) {
|
|
|
+ IWrapper<CarouselManager> wrapper = getWrapper();
|
|
|
+ wrapper.orderByDesc("cm", CarouselManager::getId);
|
|
|
+ List<CarouselManagerVo> list = this.baseMapper.getList(wrapper);
|
|
|
+ return list;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Page<CarouselManagerVo> getPage(CarouselManagerSelectDto dto) {
|
|
|
+ IWrapper<CarouselManager> wrapper = getWrapper();
|
|
|
+ wrapper.orderByDesc("cm", CarouselManager::getId);
|
|
|
+ wrapper.keyword(dto, new SqlField("cm", CarouselManager::getTitle));
|
|
|
+
|
|
|
+ Page<CarouselManagerVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
|
|
|
+ return page;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public CarouselManagerVo detail(Long id) {
|
|
|
+ CarouselManager CarouselManager = this.getById(id);
|
|
|
+ CarouselManagerVo result = BeanUtil.toBean(CarouselManager, CarouselManagerVo.class);
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void add(CarouselManagerDto carouselManagerDto) {
|
|
|
+ this.save(carouselManagerDto);
|
|
|
+ // 保存图片
|
|
|
+ ObsFileUtil.saveFile(carouselManagerDto.getCarouselUrlList(), carouselManagerDto.getId(), 1);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void edit(CarouselManagerDto carouselManagerDto) {
|
|
|
+ this.updateById(carouselManagerDto);
|
|
|
+ // 保存图片
|
|
|
+ ObsFileUtil.saveFile(carouselManagerDto.getCarouselUrlList(), carouselManagerDto.getId(), 1);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void delete(Long id) {
|
|
|
+ this.removeById(id);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Page<CarouselManagerVo> pageByOpen(CarouselManagerSelectDto dto) {
|
|
|
+ IWrapper<CarouselManager> wrapper = getWrapper();
|
|
|
+ wrapper.orderByAsc("cm", CarouselManager::getSort);
|
|
|
+ wrapper.eq("cm", CarouselManager::getStatus, 1);
|
|
|
+ wrapper.eq(StrUtil.isNotBlank(dto.getModules()), "modules", dto.getModules());
|
|
|
+ Page<CarouselManagerVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
|
|
|
+ List<CarouselManagerVo> list = page.getRecords();
|
|
|
+ List<Long> businessIdList = list.stream().map(CarouselManagerVo::getId).collect(Collectors.toList());
|
|
|
+ Map<Long, List<FileInfoVo>> fileMap = ObsFileUtil.getFileMap(businessIdList, 1);
|
|
|
+ list.forEach(item -> {
|
|
|
+ item.setCarouselUrlList(fileMap.get(item.getId()));
|
|
|
+ });
|
|
|
+ page.setRecords(list);
|
|
|
+ return page;
|
|
|
+ }
|
|
|
+}
|