|
@@ -0,0 +1,106 @@
|
|
|
+package com.sd.business.service.artwork.impl;
|
|
|
+
|
|
|
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import com.fjhx.file.entity.ObsFile;
|
|
|
+import com.fjhx.file.utils.ObsFileUtil;
|
|
|
+import com.ruoyi.common.core.domain.BaseIdPo;
|
|
|
+import com.sd.business.entity.artwork.dto.ArtworkLibraryDto;
|
|
|
+import com.sd.business.entity.artwork.dto.ArtworkLibrarySelectDto;
|
|
|
+import com.sd.business.entity.artwork.po.ArtworkLibrary;
|
|
|
+import com.sd.business.entity.artwork.vo.ArtworkLibraryVo;
|
|
|
+import com.sd.business.mapper.artwork.ArtworkLibraryMapper;
|
|
|
+import com.sd.business.service.artwork.ArtworkLibraryService;
|
|
|
+import com.sd.framework.util.Assert;
|
|
|
+import com.sd.framework.util.sql.Sql;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+import java.util.Collections;
|
|
|
+
|
|
|
+
|
|
|
+/**
|
|
|
+ * <p>
|
|
|
+ * 图稿库 服务实现类
|
|
|
+ * </p>
|
|
|
+ *
|
|
|
+ * @author
|
|
|
+ * @since 2023-11-20
|
|
|
+ */
|
|
|
+@Service
|
|
|
+public class ArtworkLibraryServiceImpl extends ServiceImpl<ArtworkLibraryMapper, ArtworkLibrary> implements ArtworkLibraryService {
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Page<ArtworkLibraryVo> getPage(ArtworkLibrarySelectDto dto) {
|
|
|
+
|
|
|
+ Page<ArtworkLibraryVo> page = Sql.create(ArtworkLibraryVo.class)
|
|
|
+ .selectAll(ArtworkLibrary.class)
|
|
|
+ .from(ArtworkLibrary.class)
|
|
|
+ .like(ArtworkLibrary::getArtworkName, dto.getArtworkName())
|
|
|
+ .orderByDesc(ArtworkLibrary::getId)
|
|
|
+ .page(dto.getPage());
|
|
|
+
|
|
|
+ return page;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ArtworkLibraryVo detail(Long id) {
|
|
|
+
|
|
|
+ ArtworkLibraryVo vo = Sql.create(ArtworkLibraryVo.class)
|
|
|
+ .selectAll(ArtworkLibrary.class)
|
|
|
+ .from(ArtworkLibrary.class)
|
|
|
+ .eq(ArtworkLibrary::getId, id)
|
|
|
+ .one();
|
|
|
+
|
|
|
+ Assert.notNull(vo, "未知图稿");
|
|
|
+
|
|
|
+ return vo;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void add(ArtworkLibraryDto dto) {
|
|
|
+ // 判断图稿名称是否存在
|
|
|
+ long count = count(q -> q
|
|
|
+ .eq(ArtworkLibrary::getArtworkName, dto.getArtworkName())
|
|
|
+ .last("limit 1"));
|
|
|
+ Assert.eqZero(count, "图稿名称已存在");
|
|
|
+
|
|
|
+ save(dto);
|
|
|
+
|
|
|
+ ObsFile imgFile = new ObsFile();
|
|
|
+ imgFile.setId(dto.getImgId());
|
|
|
+
|
|
|
+ ObsFile fileFile = new ObsFile();
|
|
|
+ fileFile.setId(dto.getFileId());
|
|
|
+
|
|
|
+ ObsFileUtil.saveFile(Collections.singletonList(imgFile), dto.getId(), 1);
|
|
|
+ ObsFileUtil.saveFile(Collections.singletonList(fileFile), dto.getId(), 2);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void edit(ArtworkLibraryDto dto) {
|
|
|
+ // 判断修改的稿名是否已经存在
|
|
|
+ long count = count(q -> q
|
|
|
+ .eq(ArtworkLibrary::getArtworkName, dto.getArtworkName())
|
|
|
+ .ne(BaseIdPo::getId, dto.getId())
|
|
|
+ .last("limit 1"));
|
|
|
+ Assert.eqZero(count, "图稿名称已存在");
|
|
|
+
|
|
|
+ updateById(dto);
|
|
|
+
|
|
|
+ ObsFile imgFile = new ObsFile();
|
|
|
+ imgFile.setId(dto.getImgId());
|
|
|
+
|
|
|
+ ObsFile fileFile = new ObsFile();
|
|
|
+ fileFile.setId(dto.getFileId());
|
|
|
+
|
|
|
+ ObsFileUtil.editFile(Collections.singletonList(imgFile), dto.getId(), 1);
|
|
|
+ ObsFileUtil.editFile(Collections.singletonList(fileFile), dto.getId(), 2);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public void delete(Long id) {
|
|
|
+ removeById(id);
|
|
|
+ ObsFileUtil.removeFile(id);
|
|
|
+ }
|
|
|
+
|
|
|
+}
|