package com.gkhy.assess.system.service.impl;
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.gkhy.assess.common.enums.DeleteFlagEnum;
|
import com.gkhy.assess.common.enums.UserIdentityEnum;
|
import com.gkhy.assess.common.exception.ApiException;
|
import com.gkhy.assess.system.domain.AssAccessoryFile;
|
import com.gkhy.assess.system.domain.AssProject;
|
import com.gkhy.assess.system.domain.SysUser;
|
import com.gkhy.assess.system.domain.vo.UploadObjectVO;
|
import com.gkhy.assess.system.mapper.AssAccessoryFileMapper;
|
import com.gkhy.assess.system.mapper.AssProjectMapper;
|
import com.gkhy.assess.system.service.AssAccessoryFileService;
|
import com.gkhy.assess.system.service.AssProjectService;
|
import com.gkhy.assess.system.service.SysCommonService;
|
import com.gkhy.assess.system.utils.ShiroUtils;
|
import io.swagger.models.auth.In;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
import org.springframework.web.multipart.MultipartFile;
|
|
import java.util.List;
|
|
/**
|
* <p>
|
* 评估文件上传记录表 服务实现类
|
* </p>
|
*
|
* @author kzy
|
* @since 2023-12-12 10:46:54
|
*/
|
@Service
|
public class AssAccessoryFileServiceImpl extends ServiceImpl<AssAccessoryFileMapper, AssAccessoryFile> implements AssAccessoryFileService {
|
|
@Autowired
|
private SysCommonService commonService;
|
@Autowired
|
private AssProjectService projectService;
|
@Override
|
public AssAccessoryFile uploadFile(Long projectId, Integer moduleType, MultipartFile file) {
|
if(projectId==null||moduleType==null||file==null){
|
throw new ApiException("参数或者上传文件不能为空");
|
}
|
projectService.checkUserAllowed(projectId);
|
UploadObjectVO uploadObjectVO = commonService.doUpload(file);
|
AssAccessoryFile accessoryFile=new AssAccessoryFile()
|
.setFileName(uploadObjectVO.getFilename())
|
.setOriginName(uploadObjectVO.getOriginName())
|
.setPath(uploadObjectVO.getPath())
|
.setProjectId(projectId)
|
.setModuleType(moduleType);
|
accessoryFile.setCreateBy(ShiroUtils.getSysUser().getName());
|
save(accessoryFile);
|
return accessoryFile;
|
}
|
|
@Override
|
public List<AssAccessoryFile> getAccessoryFileByProjectId(Long projectId,Long processId, Integer moduleType) {
|
projectService.checkUserAllowed(projectId);
|
return baseMapper.getAccessoryFileByProjectId(projectId,processId,moduleType);
|
}
|
|
|
@Override
|
public Integer getAccessoryFileCountByProjectId(Long projectId,Long processId, Integer moduleType) {
|
projectService.checkUserAllowed(projectId);
|
return baseMapper.getAccessoryFileCountByProjectId(projectId,processId,moduleType);
|
}
|
|
@Override
|
public Boolean batchUpdateAccessoryFileProcessId(List<Long> accessoryFileIds, Long processId) {
|
return update(Wrappers.<AssAccessoryFile>lambdaUpdate()
|
.in(AssAccessoryFile::getId,accessoryFileIds)
|
.set(AssAccessoryFile::getProcessId,processId));
|
}
|
|
|
@Override
|
public int deleteById(Long accessoryFileId) {
|
AssAccessoryFile accessoryFile=getById(accessoryFileId);
|
projectService.checkUserAllowed(accessoryFile.getProjectId());
|
return update(Wrappers.<AssAccessoryFile>lambdaUpdate()
|
.eq(AssAccessoryFile::getId,accessoryFileId)
|
.set(AssAccessoryFile::getDelFlag, DeleteFlagEnum.DELETED.getCode())
|
.set(AssAccessoryFile::getUpdateBy,ShiroUtils.getSysUser().getName()))?1:0;
|
}
|
|
|
|
@Override
|
public int deleteByProjectId(Long projectId, Integer moduleType) {
|
projectService.checkUserAllowed(projectId);
|
return baseMapper.update(null,Wrappers.<AssAccessoryFile>lambdaUpdate()
|
.set(AssAccessoryFile::getDelFlag,DeleteFlagEnum.DELETED.getCode())
|
.set(AssAccessoryFile::getUpdateBy,ShiroUtils.getSysUser().getName())
|
.eq(AssAccessoryFile::getProjectId,projectId)
|
.eq(AssAccessoryFile::getModuleType,moduleType));
|
}
|
|
}
|