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; /** *

* 服务实现类 *

* * @author generator@TaoJie * @since 2025-01-03 */ @Service public class ProjectTaskDeveloperServiceImpl extends ServiceImpl implements ProjectTaskDeveloperService { /** * 查看是否已经存在当前开发 * @param createBatchTaskDTO * @return */ @Override public boolean existsProjectTaskDeveloperByTaskId(CreateWithTaskDTO createBatchTaskDTO) { LambdaQueryWrapper 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 getProjectTaskDeveloperByTaskId(String taskId) { LambdaQueryWrapper 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 queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(ProjectTaskDeveloperDO::getIsDeleted, DeletedEnum.DELETED_NO.getCode()) .eq(ProjectTaskDeveloperDO::getTaskId,taskId) .eq(ProjectTaskDeveloperDO::getDeveloperId,userId); List projectTaskDeveloperDOList = baseMapper.selectList(queryWrapper); if(!CollectionUtils.isEmpty(projectTaskDeveloperDOList)){ return projectTaskDeveloperDOList.get(0); } return null; } @Transactional @Override public boolean deleteProjectTaskDeveloperByTaskIdDeveloperId(String taskId, String createUserId) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq(ProjectTaskDeveloperDO::getIsDeleted, DeletedEnum.DELETED_NO.getCode()) .eq(ProjectTaskDeveloperDO::getTaskId,taskId) .eq(ProjectTaskDeveloperDO::getDeveloperId,createUserId); List projectTaskDeveloperDOList = baseMapper.selectList(queryWrapper); if(!CollectionUtils.isEmpty(projectTaskDeveloperDOList)){ projectTaskDeveloperDOList.forEach(projectTaskDeveloperDO -> { removeById(projectTaskDeveloperDO.getId()); }); } return true; } }