@ -7,6 +7,7 @@ import com.baiye.exception.BadRequestException;
import com.baiye.feign.SourceClueClient ;
import com.baiye.http.CommonResponse ;
import com.baiye.http.ResponseCode ;
import com.baiye.model.dto.ClueQueryCriteria ;
import com.baiye.model.dto.TaskQueryCriteria ;
import com.baiye.model.dto.UserDto ;
import com.baiye.modules.system.domain.Label ;
@ -150,13 +151,27 @@ public class TaskServiceImpl implements TaskService {
//查询所有标签
Set < Long > labelOrganizeIds = taskDtoMap . stream ( ) . map ( TaskDto : : getLabelOrganizeId ) . collect ( Collectors . toSet ( ) ) ;
Map < Long , List < Label > > collect = labelOrganizeService . organizeIdGroup ( labelOrganizeIds ) ;
Map < Long , Integer > taskIdCount = new HashMap < > ( ) ;
//未分配数
if ( taskDtoMap . getTotalPages ( ) > 0 ) {
ClueQueryCriteria clueQueryCriteria = new ClueQueryCriteria ( ) ;
clueQueryCriteria . setTaskIds ( taskDtoMap . stream ( ) . map ( TaskDto : : getId ) . collect ( Collectors . toSet ( ) ) ) ;
clueQueryCriteria . setMemberStatus ( DefaultNumberConstants . ZERO_NUMBER ) ;
taskIdCount = sourceClueClient . countClueByMemberStatus ( clueQueryCriteria ) . getData ( ) ;
}
for ( TaskDto taskDto : taskDtoMap ) {
//任务下的小组信息查询
selectOrganizeUser ( taskDto ) ;
//插入标签信息
List < String > labels = labelService . findAccordLabel ( taskDto . getLabelOrganizeId ( ) , collect ) ;
taskDto . setTotalNumber ( taskDto . getTotalNumber ( ) = = null ? DefaultNumberConstants . ZERO_NUMBER : taskDto . getTotalNumber ( ) ) ;
taskDto . getBaseLabel ( ) . addAll ( labels ) ;
if ( taskIdCount ! = null ) {
taskDto . setUnassigned ( taskIdCount . getOrDefault ( taskDto . getId ( ) , DefaultNumberConstants . ZERO_NUMBER ) ) ;
} else {
taskDto . setUnassigned ( taskDto . getTotalNumber ( ) ) ;
}
}
return PageUtil . toPage ( taskDtoMap ) ;
}
@ -194,6 +209,9 @@ public class TaskServiceImpl implements TaskService {
if ( task . getIsDistribution ( ) ! = null ) {
updateTask . setIsDistribution ( task . getIsDistribution ( ) ) ;
}
if ( task . getLabelOrganizeId ( ) ! = null ) {
updateTask . setLabelOrganizeId ( task . getLabelOrganizeId ( ) ) ;
}
taskRepository . save ( updateTask ) ;
} else {
throw new BadRequestException ( "任务id不能为空" ) ;