| | |
| | | import com.ruoyi.app.tasktext.domain.ArdAppTaskText; |
| | | import com.ruoyi.app.tasktext.mapper.ArdAppTaskTextMapper; |
| | | import com.ruoyi.common.annotation.DataScope; |
| | | import com.ruoyi.common.core.domain.entity.SysUser; |
| | | import com.ruoyi.common.utils.DateUtils; |
| | | import com.ruoyi.common.utils.uuid.IdUtils; |
| | | import com.ruoyi.system.mapper.SysUserMapper; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.Optional; |
| | | import java.util.stream.Collectors; |
| | | |
| | | import com.ruoyi.common.utils.StringUtils; |
| | | import com.ruoyi.common.utils.SecurityUtils; |
| | |
| | | private ArdAppTaskMapper ardAppTaskMapper; |
| | | @Resource |
| | | private ArdAppTaskTextMapper ardAppTaskTextMapper; |
| | | @Resource |
| | | private SysUserMapper sysUserMapper; |
| | | |
| | | /** |
| | | * 查询app任务管理 |
| | |
| | | */ |
| | | @Override |
| | | public ArdAppTask selectArdAppTaskById(String id) { |
| | | return ardAppTaskMapper.selectArdAppTaskById(id); |
| | | ArdAppTask ardAppTask = ardAppTaskMapper.selectArdAppTaskById(id); |
| | | |
| | | List<ArdAppTaskDetail> ardAppTaskDetailList = ardAppTask.getArdAppTaskDetailList(); |
| | | if(ardAppTaskDetailList.size()>0) |
| | | { |
| | | ardAppTaskDetailList = ardAppTaskDetailList.stream() |
| | | .collect(Collectors.collectingAndThen(Collectors.toCollection(() -> new java.util.TreeSet<>(java.util.Comparator.comparing(ArdAppTaskDetail::getName))), ArrayList::new)); |
| | | ardAppTask.setArdAppTaskDetailList(ardAppTaskDetailList); |
| | | } |
| | | |
| | | List<String> userIds = ardAppTaskMapper.selectArdAppTaskDetailUserIdsByTaskId(id); |
| | | if (userIds.size() > 0) { |
| | | ardAppTask.setUserIds(userIds); |
| | | List<SysUser> sysUserList=new ArrayList<>(); |
| | | for (String userId : userIds) { |
| | | SysUser sysUser = sysUserMapper.selectUserById(userId); |
| | | sysUserList.add(sysUser); |
| | | } |
| | | ardAppTask.setSysUserList(sysUserList); |
| | | |
| | | } |
| | | return ardAppTask; |
| | | } |
| | | |
| | | @Override |
| | |
| | | ArdAppTaskDetailPic ardAppTaskDetailPic = new ArdAppTaskDetailPic(); |
| | | ardAppTaskDetailPic.setTaskDetailId(id); |
| | | List<ArdAppTaskDetailPic> ardAppTaskDetailPicList = ardAppTaskDetailPicMapper.selectArdAppTaskDetailPicList(ardAppTaskDetailPic); |
| | | if(ardAppTaskDetailPicList.size()>0) |
| | | { |
| | | if (ardAppTaskDetailPicList.size() > 0) { |
| | | appTaskDetail.setArdAppTaskDetailPic(ardAppTaskDetailPicList); |
| | | } |
| | | return appTaskDetail; |
| | |
| | | * @return app任务管理 |
| | | */ |
| | | @Override |
| | | @DataScope(deptAlias = "d", userAlias = "u") |
| | | public List<ArdAppTask> selectArdAppTaskList(ArdAppTask ardAppTask) { |
| | | return ardAppTaskMapper.selectArdAppTaskList(ardAppTask); |
| | | List<ArdAppTask> parentList = ardAppTaskMapper.selectArdAppTaskList(ardAppTask); |
| | | |
| | | if(StringUtils.isNotNull(ardAppTask.getAppUserId())) { |
| | | //如果app用户id不为空,查询出所有任务的子任务列表 |
| | | for(ArdAppTask appTask:parentList) |
| | | { |
| | | List<ArdAppTaskDetail> ardAppTaskDetails = ardAppTaskMapper.selectArdAppTaskDetailListByTaskId(appTask.getId()); |
| | | appTask.setArdAppTaskDetailList(ardAppTaskDetails); |
| | | } |
| | | //通过app用户id过滤子任务列表来过滤出父任务列表 |
| | | parentList = parentList.stream() |
| | | .filter(parent -> parent.getArdAppTaskDetailList().stream().anyMatch(child -> child.getUserId().equals(ardAppTask.getAppUserId()))) |
| | | .collect(Collectors.toList()); |
| | | } |
| | | return parentList; |
| | | } |
| | | |
| | | /** |
| | |
| | | */ |
| | | @Override |
| | | public List<ArdAppTask> selectArdAppTaskListWithDetail(ArdAppTask ardAppTask) { |
| | | ardAppTask.setUserId(SecurityUtils.getUserId()); |
| | | List<ArdAppTask> list1 = ardAppTaskMapper.selectArdAppTaskListWithDetail(ardAppTask); |
| | | List<ArdAppTask> list = new ArrayList<>(); |
| | | list.addAll(list1); |
| | | List<ArdAppTask> list = ardAppTaskMapper.selectArdAppTaskListWithDetail(ardAppTask); |
| | | return list; |
| | | |
| | | } |
| | | |
| | | @Override |
| | | public List<ArdAppTask> selectArdAppTaskListWithDetailById(ArdAppTask ardAppTask) { |
| | | ardAppTask.setUserId(SecurityUtils.getUserId()); |
| | | List<ArdAppTask> list1 = ardAppTaskMapper.selectArdAppTaskListWithDetailById(ardAppTask); |
| | | List<ArdAppTask> list = new ArrayList<>(); |
| | | list.addAll(list1); |
| | | List<ArdAppTask> list = ardAppTaskMapper.selectArdAppTaskListWithDetail(ardAppTask); |
| | | for(ArdAppTaskDetail detail : list.get(0).getArdAppTaskDetailList()) { |
| | | ArdAppTaskDetailPic ardAppTaskDetailPic =new ArdAppTaskDetailPic(); |
| | | ardAppTaskDetailPic.setTaskDetailId(detail.getId()); |
| | | List<ArdAppTaskDetailPic> ardAppTaskDetailPicList = ardAppTaskDetailPicMapper.selectArdAppTaskDetailPicList(ardAppTaskDetailPic); |
| | | detail.setArdAppTaskDetailPic(ardAppTaskDetailPicList); |
| | | } |
| | | return list; |
| | | } |
| | | |
| | |
| | | public int insertArdAppTask(ArdAppTask ardAppTask) { |
| | | ardAppTask.setId(IdUtils.simpleUUID()); |
| | | ardAppTask.setUserId(SecurityUtils.getUserId()); |
| | | ardAppTask.setCreateBy(SecurityUtils.getUsername()); |
| | | ardAppTask.setCreateBy(SecurityUtils.getLoginUser().getUser().getNickName()); |
| | | ardAppTask.setCreateTime(DateUtils.getNowDate()); |
| | | int rows = ardAppTaskMapper.insertArdAppTask(ardAppTask); |
| | | insertArdAppTaskPic(ardAppTask); |
| | |
| | | public int updateArdAppTask(ArdAppTask ardAppTask) { |
| | | ardAppTask.setUpdateBy(SecurityUtils.getUsername()); |
| | | ardAppTask.setUpdateTime(DateUtils.getNowDate()); |
| | | ardAppTaskMapper.deleteArdAppTaskPicByTaskId(ardAppTask.getId()); |
| | | ardAppTaskMapper.deleteArdAppTaskDetailByTaskId(ardAppTask.getId()); |
| | | |
| | | insertArdAppTaskPic(ardAppTask); |
| | | insertArdAppTaskDetail(ardAppTask); |
| | | return ardAppTaskMapper.updateArdAppTask(ardAppTask); |
| | |
| | | */ |
| | | public void insertArdAppTaskPic(ArdAppTask ardAppTask) { |
| | | List<ArdAppTaskPic> ardAppTaskPicList = ardAppTask.getArdAppTaskPicList(); |
| | | String id = ardAppTask.getId(); |
| | | if (StringUtils.isNotNull(ardAppTaskPicList)) { |
| | | ardAppTaskMapper.deleteArdAppTaskPicByTaskId(ardAppTask.getId()); |
| | | String id = ardAppTask.getId(); |
| | | |
| | | List<ArdAppTaskPic> list = new ArrayList<ArdAppTaskPic>(); |
| | | for (ArdAppTaskPic ardAppTaskPic : ardAppTaskPicList) { |
| | | ardAppTaskPic.setId(IdUtils.simpleUUID()); |
| | |
| | | * @param ardAppTask app任务管理对象 |
| | | */ |
| | | public void insertArdAppTaskDetail(ArdAppTask ardAppTask) { |
| | | List<String> userIds = ardAppTask.getUserIds(); |
| | | for (String userId : userIds) { |
| | | List<ArdAppTaskDetail> ardAppTaskDetailList = ardAppTask.getArdAppTaskDetailList(); |
| | | String id = ardAppTask.getId(); |
| | | if (StringUtils.isNotNull(ardAppTaskDetailList)) { |
| | | List<ArdAppTaskDetail> list = new ArrayList<ArdAppTaskDetail>(); |
| | | for (ArdAppTaskDetail ardAppTaskDetail : ardAppTaskDetailList) { |
| | | ardAppTaskDetail.setId(IdUtils.simpleUUID()); |
| | | ardAppTaskDetail.setStatus("0"); |
| | | ardAppTaskDetail.setTaskId(id); |
| | | ardAppTaskDetail.setUserId(userId); |
| | | list.add(ardAppTaskDetail); |
| | | } |
| | | if (list.size() > 0) { |
| | | ardAppTaskMapper.batchArdAppTaskDetail(list); |
| | | List<ArdAppTaskDetail> ardAppTaskDetailList = ardAppTask.getArdAppTaskDetailList(); |
| | | if (StringUtils.isNotNull(ardAppTaskDetailList)) { |
| | | if (ardAppTaskDetailList.size() > 0) { |
| | | List<String> userIds = ardAppTask.getUserIds(); |
| | | if (userIds.size() > 0) { |
| | | ardAppTaskMapper.deleteArdAppTaskDetailByTaskId(ardAppTask.getId()); |
| | | for (String userId : userIds) { |
| | | String id = ardAppTask.getId(); |
| | | if (StringUtils.isNotNull(ardAppTaskDetailList)) { |
| | | List<ArdAppTaskDetail> list = new ArrayList<ArdAppTaskDetail>(); |
| | | for (ArdAppTaskDetail ardAppTaskDetail : ardAppTaskDetailList) { |
| | | ardAppTaskDetail.setId(IdUtils.simpleUUID()); |
| | | ardAppTaskDetail.setStatus("0"); |
| | | ardAppTaskDetail.setTaskId(id); |
| | | ardAppTaskDetail.setUserId(userId); |
| | | list.add(ardAppTaskDetail); |
| | | } |
| | | if (list.size() > 0) { |
| | | |
| | | ardAppTaskMapper.batchArdAppTaskDetail(list); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | */ |
| | | @Override |
| | | public int updateArdAppTaskDetail(ArdAppTaskDetail ardAppTaskDetail) { |
| | | ardAppTaskDetail.setClockInTime(DateUtils.getNowDate()); |
| | | insertArdAppTaskPic(ardAppTaskDetail); |
| | | return ardAppTaskMapper.updateArdAppTaskDetail(ardAppTaskDetail); |
| | | } |
| | | |
| | | @Override |
| | | public int updateArdAppTaskDetailView(ArdAppTaskDetail ardAppTaskDetail) { |
| | | ardAppTaskDetail.setViewTime(DateUtils.getNowDate()); |
| | | return ardAppTaskMapper.updateArdAppTaskDetailView(ardAppTaskDetail); |
| | | } |
| | | |
| | | /** |
| | |
| | | List<ArdAppTaskDetailPic> ardAppTaskDetailPicList = ardAppTaskDetail.getArdAppTaskDetailPic(); |
| | | String detailId = ardAppTaskDetail.getId(); |
| | | if (StringUtils.isNotNull(ardAppTaskDetailPicList)) { |
| | | ardAppTaskMapper.deleteArdAppTaskDetailPicByTaskDetailId(detailId); |
| | | List<ArdAppTaskDetailPic> list = new ArrayList<ArdAppTaskDetailPic>(); |
| | | for (ArdAppTaskDetailPic ardAppTaskDetailPic : ardAppTaskDetailPicList) { |
| | | ardAppTaskDetailPic.setId(IdUtils.simpleUUID()); |
| | |
| | | list.add(ardAppTaskDetailPic); |
| | | } |
| | | if (list.size() > 0) { |
| | | ardAppTaskMapper.deleteArdAppTaskDetailPicByTaskDetailId(detailId); |
| | | ardAppTaskMapper.batchArdAppTaskDetailPic(list); |
| | | } |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public ArdAppTask selectNewArdAppTaskByUserId(String userId) { |
| | | ArdAppTask ardAppTask = ardAppTaskMapper.selectNewArdAppTaskByUserId(userId); |
| | | if (StringUtils.isNotNull(ardAppTask)) { |
| | | ArdAppTaskDetail detail = new ArdAppTaskDetail(); |
| | | detail.setViewFlag("1"); |
| | | detail.setTaskId(ardAppTask.getId()); |
| | | int i = ardAppTaskMapper.updateArdAppTaskDetailByTaskId(detail); |
| | | } |
| | | return ardAppTask; |
| | | } |
| | | |
| | | /** |
| | | * 查询已弹窗但未读的任务数量 |
| | | * |
| | | * @param userId app用户Id |
| | | * @return 结果 |
| | | */ |
| | | @Override |
| | | public int selectUnreadArdAppTaskCount(String userId) { |
| | | return ardAppTaskMapper.selectUnreadArdAppTaskCount(userId); |
| | | } |
| | | } |