From 53d014edd19f57125c355abe71ec5b478500e610 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期二, 05 八月 2025 09:57:40 +0800 Subject: [PATCH] 保洁巡检所有代码 --- ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TAppealServiceImpl.java | 112 +++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 95 insertions(+), 17 deletions(-) diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TAppealServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TAppealServiceImpl.java index 9c0e9eb..7ffdf68 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TAppealServiceImpl.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TAppealServiceImpl.java @@ -4,27 +4,25 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.basic.PageInfo; import com.ruoyi.common.core.domain.BaseModel; +import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.system.applet.dto.AppealListDTO; import com.ruoyi.system.applet.query.AppealListQuery; import com.ruoyi.system.applet.vo.TaskListAllVO; -import com.ruoyi.system.mapper.TAppealMapper; -import com.ruoyi.system.mapper.TDeptMapper; -import com.ruoyi.system.mapper.TTaskDetailMapper; -import com.ruoyi.system.mapper.TTaskMapper; -import com.ruoyi.system.model.TAppeal; -import com.ruoyi.system.model.TDept; -import com.ruoyi.system.model.TTask; -import com.ruoyi.system.model.TTaskDetail; +import com.ruoyi.system.mapper.*; +import com.ruoyi.system.model.*; import com.ruoyi.system.query.InsepectorListQuery; import com.ruoyi.system.service.TAppealService; import com.ruoyi.system.vo.system.AppealListVO; import com.ruoyi.system.vo.system.InspectorListVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.util.StringUtils; import java.math.BigDecimal; import java.math.RoundingMode; +import java.util.ArrayList; import java.util.Arrays; +import java.util.Comparator; import java.util.List; /** @@ -40,20 +38,50 @@ @Autowired private TDeptMapper deptMapper; @Autowired + private TProjectDeptMapper projectDeptMapper; + @Autowired private TTaskDetailMapper taskDetailMapper; @Autowired private TTaskMapper taskMapper; + @Autowired + private SysUserMapper sysUserMapper; + @Autowired + private TInspectorDetailMapper inspectorDetailMapper; + @Autowired + private TInspectorMapper inspectorMapper; @Override public PageInfo<AppealListVO> pageList(InsepectorListQuery query) { + if (StringUtils.hasLength(query.getEndTime())){ + String replace = query.getEndTime().replace(" 00:00:00", " 23:59:59"); + query.setEndTime(replace); + } PageInfo<AppealListVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize()); List<AppealListVO> list = this.baseMapper.pageList(query,pageInfo); List<TTask> tTasks = taskMapper.selectList(null); + List<SysUser> sysUsers = sysUserMapper.selectAllList(); for (AppealListVO taskListVO : list) { - TTask tTask = tTasks.stream().filter(e -> e.getId().equals(taskListVO.getTaskId())).findFirst().orElse(null); - if (tTask!=null){ - TDept tDept = deptMapper.selectById(tTask.getPatrolInspectorDept()); - taskListVO.setDeptName(tDept.getDeptName()); - } + SysUser sysUser = sysUsers.stream().filter(e -> e.getUserId().equals(Long.valueOf(taskListVO.getAppealPerson()))).findFirst().orElse(null); + if (sysUser!=null){ + if (sysUser.getDeptType()==2){ + TDept tDept = deptMapper.selectById(sysUser.getDeptId()); + if (tDept!=null){ + taskListVO.setDeptName(tDept.getDeptName()); + } + }else{ + + TProjectDept tProjectDept = projectDeptMapper.selectById(sysUser.getDeptId()); + if (tProjectDept != null) { + if (!tProjectDept.getParentId().equals("0")) { + TProjectDept tProjectDept1 = projectDeptMapper.selectById(tProjectDept.getParentId()); + if (tProjectDept1 != null) { + taskListVO.setDeptName(tProjectDept1.getProjectName() + ">" + tProjectDept.getProjectName()); + } + } else { + taskListVO.setDeptName(tProjectDept.getProjectName()); + } + } + } + } } pageInfo.setRecords(list); return pageInfo; @@ -64,7 +92,11 @@ PageInfo<AppealListVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize()); List<AppealListVO> list = this.baseMapper.pageListUser(query,pageInfo); for (AppealListVO taskListVO : list) { - taskListVO.setDistance(taskListVO.getDistance().divide(new BigDecimal(1000),2, RoundingMode.HALF_UP)); + if (taskListVO.getDistance()!=null){ + taskListVO.setDistance(taskListVO.getDistance().divide(new BigDecimal(1000),2, RoundingMode.HALF_DOWN)); + }else{ + taskListVO.setDistance(new BigDecimal(0)); + } } pageInfo.setRecords(list); return pageInfo; @@ -72,16 +104,62 @@ @Override public List<TaskListAllVO> listAllTask(AppealListDTO query) { + List<TTaskDetail> tTaskDetails = taskDetailMapper.selectList(new LambdaQueryWrapper<TTaskDetail>() + .eq(TTaskDetail::getHandleType,3).groupBy(TTaskDetail::getTaskId).orderByDesc(TTaskDetail::getCreateTime)); + List<TInspectorDetail> inspectorDetails = inspectorDetailMapper.selectList(new LambdaQueryWrapper<TInspectorDetail>() + .eq(TInspectorDetail::getHandleType,3).groupBy(TInspectorDetail::getInspectorId).orderByDesc(TInspectorDetail::getCreateTime)); PageInfo<AppealListVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize()); List<TaskListAllVO> list = this.baseMapper.listAllTask(query,pageInfo); - for (TaskListAllVO taskListAllVO : list) { - taskListAllVO.setDistance(taskListAllVO.getDistance().divide(new BigDecimal(1000),2, RoundingMode.HALF_UP)); - if (taskListAllVO.getStatus()==1 || taskListAllVO.getStatus()==2 || taskListAllVO.getStatus()==3){ + List<TaskListAllVO> list1 = inspectorMapper.listAllInspector(query,pageInfo); + for (TaskListAllVO taskListAllVO : list1) { + taskListAllVO.setDistance(taskListAllVO.getDistance().divide(new BigDecimal(1000),2, RoundingMode.HALF_DOWN)); + if (taskListAllVO.getStatus()==1 || taskListAllVO.getStatus()==2 ){ taskListAllVO.setStatus(1); }else{ + // 查询任务的驳回原因 taskListAllVO.setStatus(2); + TInspectorDetail tTaskDetail = inspectorDetails.stream().filter(e -> e.getInspectorId().equals(taskListAllVO.getId())).findFirst().orElse(null); + if (tTaskDetail!=null){ + taskListAllVO.setRejectRemark(tTaskDetail.getAuditRemark()); + } } } + for (TaskListAllVO taskListAllVO : list) { + taskListAllVO.setDistance(taskListAllVO.getDistance().divide(new BigDecimal(1000),2, RoundingMode.HALF_DOWN)); + if (taskListAllVO.getStatus()==1 || taskListAllVO.getStatus()==2 ){ + taskListAllVO.setStatus(1); + }else{ + // 查询任务的驳回原因 + taskListAllVO.setStatus(2); + TTaskDetail tTaskDetail = tTaskDetails.stream().filter(e -> e.getTaskId().equals(taskListAllVO.getId())).findFirst().orElse(null); + if (tTaskDetail!=null){ + taskListAllVO.setRejectRemark(tTaskDetail.getAuditRemark()); + } + } + } + if (list1.isEmpty()){ + list1=list; + } else{ + list1.addAll(list); + + } + + // 根据distance进行排序从小到大 + list1.sort(Comparator.comparing(TaskListAllVO::getDistance)); + return list1; + } + + public static void main(String[] args) { + List<Object> objects = new ArrayList<>(); + List<Integer> anotherList = Arrays.asList(1,2); + } + @Override + public List<TaskListAllVO> locationList(AppealListDTO appealListDTO) { + PageInfo<AppealListVO> pageInfo = new PageInfo<>(appealListDTO.getPageNum(), appealListDTO.getPageSize()); + List<TaskListAllVO> list = this.baseMapper.locationList(appealListDTO,pageInfo); + for (TaskListAllVO taskListAllVO : list) { + taskListAllVO.setDistance(taskListAllVO.getDistance().divide(new BigDecimal(1000),2, RoundingMode.HALF_DOWN)); + } return list; } } -- Gitblit v1.7.1