From 53d014edd19f57125c355abe71ec5b478500e610 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期二, 05 八月 2025 09:57:40 +0800 Subject: [PATCH] 保洁巡检所有代码 --- ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TLocationController.java | 65 ++++++++++++++++++++++++++++---- 1 files changed, 56 insertions(+), 9 deletions(-) diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TLocationController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TLocationController.java index 289c532..480e887 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TLocationController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TLocationController.java @@ -5,6 +5,8 @@ import cn.afterturn.easypoi.excel.ExcelImportUtil; import cn.afterturn.easypoi.excel.entity.ExportParams; import cn.afterturn.easypoi.excel.entity.ImportParams; +import cn.hutool.json.JSON; +import cn.hutool.json.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.ruoyi.common.annotation.Log; @@ -43,6 +45,8 @@ import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.InputStream; +import java.math.BigDecimal; +import java.math.RoundingMode; import java.net.URLEncoder; import java.util.*; import java.util.stream.Collectors; @@ -139,6 +143,9 @@ List<String> collect = list.stream().map(TTask::getId).collect(Collectors.toList()); List<LocationListTaskVO> res = new ArrayList<>(); + if (collect.isEmpty()){ + return R.ok(pageInfo); + } List<TTaskDetail> taskDetails = tTaskDetailService.list(Wrappers.lambdaQuery(TTaskDetail.class) .in(TTaskDetail::getTaskId,collect) .eq(TTaskDetail::getClearStatus, 2) @@ -267,7 +274,22 @@ @ApiOperation(value = "根据部门/项目部id查询巡检员列表 不分页") @GetMapping(value = "/listUsers") public R<List<SysUser>> listUsers(@RequestParam String id) { - List<SysUser> res = sysUserService.selectUserByDeptId(id); + List<String> strings = new ArrayList<>(); + strings.add(id); + TProjectDept projectDept = projectDeptService.getById(id); + if (projectDept!=null){ + if (projectDept.getParentId().equals("0")){ + List<String> collect = projectDeptService.lambdaQuery().eq(TProjectDept::getParentId, projectDept.getId()) + .list().stream().map(TProjectDept::getId).collect(Collectors.toList()); + strings.addAll(collect); + } + }else{ + List<String> collect = deptService.lambdaQuery().eq(TDept::getId, id) + .list().stream().map(TDept::getId).collect(Collectors.toList()); + strings.addAll(collect); + } + + List<SysUser> res = sysUserService.selectUserByDeptId(strings); return R.ok(res); } @Log(title = "新增点位", businessType = BusinessType.INSERT) @@ -333,7 +355,7 @@ @PostMapping("/importLocation") public R<String> importLocation(@RequestPart("file") MultipartFile file) { ImportParams params = new ImportParams(); - params.setTitleRows(2); // 标题行数 +// params.setTitleRows(1); // 标题行数 params.setHeadRows(1); //表头行数 InputStream inputStream = null; // List<CustomerImportFailedData> failedData = new ArrayList<>(); @@ -363,12 +385,17 @@ // 查询所有用户 List<SysUser> users = sysUserService.selectAllList(); // 查询所有部门 - List<TDept> deptList = deptService.list(); + List<TProjectDept> deptList = projectDeptService.list(); // 查询所有保洁员 List<TCleaner> cleaners = cleanerService.list(); + JSONObject result = new JSONObject(); + for (TLocationImportExcel locationExcel : locationExcelList) { System.err.println(locationExcel); + if (locationExcel.getLocationName()==null){ + continue; + } TLocation location = new TLocation(); location.setLocationCode(locationExcel.getLocationCode()); location.setLocationName(locationExcel.getLocationName()); @@ -384,23 +411,43 @@ String[] addressEndLonLat = locationExcel.getLocationAddressEndLonLat().split("/"); location.setLocationLonEnd(addressEndLonLat[0]); location.setLocationLatEnd(addressEndLonLat[1]); - TDept tDept = deptList.stream().filter(dept -> dept.getCode().equals(locationExcel.getDeptCode())).findFirst().orElse(null); - if(Objects.nonNull(tDept)){ - location.setProjectId(tDept.getId()); + TProjectDept projectDept = deptList.stream().filter(dept -> dept.getCode().equals(locationExcel.getDeptCode())).findFirst().orElse(null); + if(Objects.nonNull(projectDept)){ + location.setProjectId(projectDept.getId()); + }else { + result.append("路段名:[", locationExcel.getLocationName()+"]未查询到部门"); + continue; } SysUser sysUser = users.stream().filter(user -> user.getNickName().equals(locationExcel.getNickName())).findFirst().orElse(null); if(Objects.nonNull(sysUser)){ location.setLocationLeader(String.valueOf(sysUser.getUserId())); + }else { + result.append("路段名:[", locationExcel.getLocationName()+"]未查询到点位负责人"); + continue; } - cleaners.stream().filter(cleaner -> cleaner.getCleanerCode().equals(locationExcel.getCleanerCodeClear()) + TCleaner tCleaner = cleaners.stream().filter(cleaner -> cleaner.getCleanerCode().equals(locationExcel.getCleanerCodeClear()) && cleaner.getDeptCode().equals(locationExcel.getDeptCodeClear()) - && cleaner.getProjectCode().equals(locationExcel.getProjectCodeClear())).findFirst().orElse(null); - location.setLocationCleaner(locationExcel.getProjectCodeClear()); + && cleaner.getProjectCode().equals(locationExcel.getProjectCodeClear()) + && cleaner.getCleanerName().equals(locationExcel.getCleanerName())).findFirst().orElse(null); + if(Objects.nonNull(tCleaner)){ + location.setLocationCleaner(tCleaner.getId()); + }else { + result.append("路段名:[", locationExcel.getLocationName()+"]未查询到保洁员"); + continue; + } locationService.save(location); } + if(!result.isEmpty()){ + return R.ok(result.toString()); + } return R.ok(); } + public static void main(String[] args) { + BigDecimal divide = new BigDecimal("-23").divide(new BigDecimal("40"),2, RoundingMode.HALF_UP); + System.err.println(divide); + } + } -- Gitblit v1.7.1