package com.cloudroam.service.impl;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.injector.methods.SelectCount;
|
import com.cloudroam.common.enumeration.DeletedEnum;
|
import com.cloudroam.dto.projectDaily.CreateWithTaskDTO;
|
import com.cloudroam.model.ProjectTaskDeveloperDO;
|
import com.cloudroam.mapper.ProjectTaskDeveloperMapper;
|
import com.cloudroam.service.ProjectTaskDeveloperService;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
import org.springframework.util.CollectionUtils;
|
import org.springframework.util.StringUtils;
|
|
import java.util.List;
|
|
/**
|
* <p>
|
* 服务实现类
|
* </p>
|
*
|
* @author generator@TaoJie
|
* @since 2025-01-03
|
*/
|
@Service
|
public class ProjectTaskDeveloperServiceImpl extends ServiceImpl<ProjectTaskDeveloperMapper, ProjectTaskDeveloperDO> implements ProjectTaskDeveloperService {
|
|
/**
|
* 查看是否已经存在当前开发
|
* @param createBatchTaskDTO
|
* @return
|
*/
|
@Override
|
public boolean existsProjectTaskDeveloperByTaskId(CreateWithTaskDTO createBatchTaskDTO) {
|
LambdaQueryWrapper<ProjectTaskDeveloperDO> queryWrapper = new LambdaQueryWrapper<>();
|
queryWrapper
|
.eq(ProjectTaskDeveloperDO::getIsDeleted, DeletedEnum.DELETED_NO.getCode())
|
.eq(!StringUtils.isEmpty(createBatchTaskDTO.getTaskId()),ProjectTaskDeveloperDO::getTaskId,createBatchTaskDTO.getTaskId())
|
.eq(!StringUtils.isEmpty(createBatchTaskDTO.getUserId()),ProjectTaskDeveloperDO::getDeveloperId,createBatchTaskDTO.getUserId())
|
;
|
|
return baseMapper.selectCount(queryWrapper)>0;
|
}
|
|
@Override
|
public List<ProjectTaskDeveloperDO> getProjectTaskDeveloperByTaskId(String taskId) {
|
LambdaQueryWrapper<ProjectTaskDeveloperDO> queryWrapper = new LambdaQueryWrapper<>();
|
queryWrapper
|
.eq(ProjectTaskDeveloperDO::getIsDeleted, DeletedEnum.DELETED_NO.getCode())
|
.eq(!StringUtils.isEmpty(taskId),ProjectTaskDeveloperDO::getTaskId,taskId)
|
;
|
return baseMapper.selectList(queryWrapper);
|
}
|
|
@Override
|
public ProjectTaskDeveloperDO getProjectTaskDeveloperByTaskIdDeveloperId(String taskId, String userId) {
|
|
LambdaQueryWrapper<ProjectTaskDeveloperDO> queryWrapper = new LambdaQueryWrapper<>();
|
queryWrapper.eq(ProjectTaskDeveloperDO::getIsDeleted, DeletedEnum.DELETED_NO.getCode())
|
.eq(ProjectTaskDeveloperDO::getTaskId,taskId)
|
.eq(ProjectTaskDeveloperDO::getDeveloperId,userId);
|
|
List<ProjectTaskDeveloperDO> projectTaskDeveloperDOList = baseMapper.selectList(queryWrapper);
|
if(!CollectionUtils.isEmpty(projectTaskDeveloperDOList)){
|
return projectTaskDeveloperDOList.get(0);
|
}
|
|
return null;
|
}
|
|
@Transactional
|
@Override
|
public boolean deleteProjectTaskDeveloperByTaskIdDeveloperId(String taskId, String createUserId) {
|
LambdaQueryWrapper<ProjectTaskDeveloperDO> queryWrapper = new LambdaQueryWrapper<>();
|
queryWrapper.eq(ProjectTaskDeveloperDO::getIsDeleted, DeletedEnum.DELETED_NO.getCode())
|
.eq(ProjectTaskDeveloperDO::getTaskId,taskId)
|
.eq(ProjectTaskDeveloperDO::getDeveloperId,createUserId);
|
List<ProjectTaskDeveloperDO> projectTaskDeveloperDOList = baseMapper.selectList(queryWrapper);
|
if(!CollectionUtils.isEmpty(projectTaskDeveloperDOList)){
|
projectTaskDeveloperDOList.forEach(projectTaskDeveloperDO -> {
|
removeById(projectTaskDeveloperDO.getId());
|
});
|
}
|
return true;
|
}
|
}
|