From 91a92278ec8c315860b21634af1f7ceb8c365f77 Mon Sep 17 00:00:00 2001 From: chengwang Date: Fri, 22 Sep 2023 09:28:08 +0800 Subject: [PATCH 01/39] =?UTF-8?q?UpdateWaittStatusService=E7=B1=BB?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../update/status/UpdateWaittStatusService.java | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspection/update/status/UpdateWaittStatusService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspection/update/status/UpdateWaittStatusService.java index 2bce1fc..c9e6f88 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspection/update/status/UpdateWaittStatusService.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspection/update/status/UpdateWaittStatusService.java @@ -6,7 +6,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.tuoheng.admin.constant.SystemConstant; import com.tuoheng.admin.entity.FlightData; -import com.tuoheng.admin.entity.FlightDataHl; import com.tuoheng.admin.entity.Inspection; import com.tuoheng.admin.entity.Report; import com.tuoheng.admin.enums.MarkEnum; @@ -40,9 +39,6 @@ public class UpdateWaittStatusService { @Autowired private FlightDataMapper flightDataMapper; - @Autowired - private FlightDataHlMapper flightDataHlMapper; - @Autowired private ReportMapper reportMapper; @@ -81,11 +77,11 @@ public class UpdateWaittStatusService { log.info("坐标数据,flightDataCount:{}", flightDataCount); if (flightDataCount > 0) { int index = (int) Math.ceil((double) flightDataCount / 2); - FlightDataHl flightData = flightDataHlMapper.selectOne(new LambdaQueryWrapper() - .eq(FlightDataHl::getInspectionId, inspection.getId()) - .eq(FlightDataHl::getTenantId, inspection.getTenantId()) - .eq(FlightDataHl::getMark, MarkEnum.VALID.getCode()) - .orderByDesc(FlightDataHl::getTime) + FlightData flightData = flightDataMapper.selectOne(new LambdaQueryWrapper() + .eq(FlightData::getInspectionId, inspection.getId()) + .eq(FlightData::getTenantId, inspection.getTenantId()) + .eq(FlightData::getMark, MarkEnum.VALID.getCode()) + .orderByDesc(FlightData::getTimestamp) .last("limit " + index + ",1")); if (ObjectUtil.isNotNull(flightData)) { inspectionUpdate.setFlyHeight(flightData.getAlt()); -- 2.27.0 From 5548a18a4507c4b4034bf0cf2aa7a4ccc98bb739 Mon Sep 17 00:00:00 2001 From: wanjing <“wanjing5234@163.com”> Date: Mon, 27 Nov 2023 16:25:12 +0800 Subject: [PATCH 02/39] =?UTF-8?q?1=E3=80=81=E4=BF=AE=E6=94=B9=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E5=88=86=E9=A1=B5=E5=88=97=E8=A1=A8=E9=87=8C=EF=BC=8C?= =?UTF-8?q?=E7=BC=96=E8=BE=91=E3=80=81=E6=89=A7=E8=A1=8C=E7=9A=84=E6=9D=83?= =?UTF-8?q?=E9=99=90=EF=BC=9B2=E3=80=81=E4=BF=AE=E6=94=B9=E6=89=80?= =?UTF-8?q?=E6=9C=89=E6=8A=A5=E5=91=8A=E5=88=86=E9=A1=B5=E6=9F=A5=E8=AF=A2?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../query/QueryInspectionPageListService.java | 12 ++--- .../inspection/query/handle/EditHandle.java | 27 +---------- .../query/handle/ExecuteHandle.java | 18 +------- .../query/QueryReportPageListService.java | 45 +++++++------------ .../main/resources/mapper/ReportMapper.xml | 7 ++- 5 files changed, 28 insertions(+), 81 deletions(-) diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspection/query/QueryInspectionPageListService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspection/query/QueryInspectionPageListService.java index da62cd1..cf01a8b 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspection/query/QueryInspectionPageListService.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspection/query/QueryInspectionPageListService.java @@ -99,9 +99,9 @@ public class QueryInspectionPageListService { public JsonResult getPageList(QueryInspectionPageListRequest request) { // log.info("进入查询巡检任务分页列表业务"); - - String userId = CurrentUserUtil.getUserId(); - String tenantId = CurrentUserUtil.getTenantId(); + User user = CurrentUserUtil.getUserInfo(); + String userId = user.getId(); + String tenantId = user.getTenantId(); request.setTenantId(tenantId); JsonResult result = this.check(tenantId, request); @@ -109,12 +109,6 @@ public class QueryInspectionPageListService { log.info("进入查询巡检任务分页列表业务:校验失败:{}", result.getMsg()); return result; } - - User user = userMapper.selectOne(new LambdaQueryWrapper() - .eq(User::getTenantId, tenantId) - .eq(User::getId, userId) - .eq(User::getMark, 1)); - Dept dept = deptMapper.selectOne(new LambdaQueryWrapper() .eq(Dept::getTenantId, tenantId) .eq(Dept::getId, user.getDeptId()) diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspection/query/handle/EditHandle.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspection/query/handle/EditHandle.java index 0013260..e2f9c86 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspection/query/handle/EditHandle.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspection/query/handle/EditHandle.java @@ -62,32 +62,7 @@ public class EditHandle implements GenerateInspectionFieldHander { } return; } - if (user.getId().equals(inspectionVo.getCreateUser())) { - // 自己创建的任务 - inspectionVo.setEdit(true); - } else { - // 非本人创建,判断该用户是不是该部门管理员 - // 本部门主管编辑本部门任务 - // 查询部门管理员,若是部门管理员可修改,非部门管理员不能修改 - User userTmp = userMapper.selectOne(new LambdaQueryWrapper() - .eq(User::getDeptId, user.getDeptId()) - .eq(User::getDataPermission, DataPermissionEnum.DEPT_AND_SUB_DEPT.getCode()) - .eq(User::getMark, MarkEnum.VALID.getCode())); - if (ObjectUtil.isNull(userTmp)) { - if (null != handler) { - handler.handler(user, dept, inspectionVo); - return; - } - } - if (!user.getId().equals(userTmp.getId())) { - if (null != handler) { - handler.handler(user, dept, inspectionVo); - return; - } - } - inspectionVo.setEdit(true); - } - + inspectionVo.setEdit(true); if (null != handler) { handler.handler(user, dept, inspectionVo); return; diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspection/query/handle/ExecuteHandle.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspection/query/handle/ExecuteHandle.java index b1476d0..5bdcb72 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspection/query/handle/ExecuteHandle.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspection/query/handle/ExecuteHandle.java @@ -44,23 +44,7 @@ public class ExecuteHandle implements GenerateInspectionFieldHander { } return; } - - if (DataPermissionEnum.ALL.getCode() == user.getDataPermission()) { - // 超级管理员不能执行任务操作 - inspectionVo.setExecute(false); - } else if (DataPermissionEnum.DEPT_AND_SUB_DEPT.getCode() == user.getDataPermission()) { - // 管理员可对本部门的任务执行此操作 - if (user.getDeptId().equals(inspectionVo.getDeptId())) { - if (1 == inspectionVo.getExecutionStatus()) { - inspectionVo.setExecute(true); - } - } - } else if (DataPermissionEnum.DEPT.getCode() == user.getDataPermission()) { - // 普通用户可对自己创建的任务执行此操作 - if (user.getId().equals(inspectionVo.getCreateUser())) { - inspectionVo.setExecute(true); - } - } + inspectionVo.setExecute(true); if (null != handler) { handler.handler(user, dept, inspectionVo); } diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/report/query/QueryReportPageListService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/report/query/QueryReportPageListService.java index 978e6ab..1239dcc 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/report/query/QueryReportPageListService.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/report/query/QueryReportPageListService.java @@ -62,7 +62,6 @@ public class QueryReportPageListService { // log.info("进入查询报告分页列表业务"); User user = CurrentUserUtil.getUserInfo(); String tenantId = user.getTenantId(); - request.setTenantId(tenantId); JsonResult result = this.check(tenantId, request); if (0 != result.getCode()) { @@ -70,42 +69,32 @@ public class QueryReportPageListService { return result; } - // 设置分页参数 - IPage page = new Page<>(request.getPage(), request.getLimit()); - // 用户只能查看自己生成的报告 或者是当前租户下自动生成的报告 - //request.setCreateUser(userId); - - // 查询结果 - IPage pageData = reportMapper.selectPageList(page, request); - if (null == pageData || pageData.getTotal() == 0) { - log.info("获取任务分页列表为空"); - return JsonResult.success(pageData); - } - List reportList = pageData.getRecords(); - - List reportsData = new ArrayList<>(); - + List deptIdList = new ArrayList<>(); if (DataPermissionEnum.ALL.getCode() == user.getDataPermission()) { - reportsData = this.getAllList(reportList); + // 查询该租户下所有部门的工单 } else if (DataPermissionEnum.DEPT_AND_SUB_DEPT.getCode() == user.getDataPermission()) { - reportsData = this.getListByDepts(reportList, user); + deptIdList = deptMapper.selectAllChildListById(user.getDeptId()); } else if (DataPermissionEnum.DEPT.getCode() == user.getDataPermission()) { - reportsData = this.getListByDept(reportList, user); - } - if(CollectionUtil.isEmpty(reportsData) || reportsData.size() == 0){ - return JsonResult.success("当前用户对应数据权限下查询报告数据为空"); + deptIdList.add(user.getDeptId()); } - IPage reportIPage = pageData.setRecords(reportsData); + request.setTenantId(tenantId); + request.setDeptIdList(deptIdList); + + // 设置分页参数 + IPage page = new Page<>(request.getPage(), request.getLimit()); + // 查询结果 + IPage pageData = reportMapper.selectPageList(page, request); // 构造返回结果对象 - List reportPageListVoList = this.buildReportPageListVoList(reportsData); + List reportPageListVoList = this.buildReportPageListVoList(pageData.getRecords()); + // 重写返回结果对象 IPage reportVoPageData = new Page<>(); - reportVoPageData.setPages(reportIPage.getPages()); - reportVoPageData.setCurrent(reportIPage.getCurrent()); - reportVoPageData.setSize(reportIPage.getSize()); - reportVoPageData.setTotal(reportIPage.getTotal()); + reportVoPageData.setPages(pageData.getPages()); + reportVoPageData.setCurrent(pageData.getCurrent()); + reportVoPageData.setSize(pageData.getSize()); + reportVoPageData.setTotal(pageData.getTotal()); reportVoPageData.setRecords(reportPageListVoList); return JsonResult.success(reportVoPageData); diff --git a/tuoheng-service/tuoheng-admin/src/main/resources/mapper/ReportMapper.xml b/tuoheng-service/tuoheng-admin/src/main/resources/mapper/ReportMapper.xml index 3c978a5..5dd5140 100644 --- a/tuoheng-service/tuoheng-admin/src/main/resources/mapper/ReportMapper.xml +++ b/tuoheng-service/tuoheng-admin/src/main/resources/mapper/ReportMapper.xml @@ -76,7 +76,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and inspection_code like concat('%', #{request.inspectionCode}, '%') and airport_id = #{request.airportId} and type = #{request.type} - and create_user = #{request.createUser} + + and dept_id in + + #{deptId} + + order by create_time desc -- 2.27.0 From c47c1d4f6fb425656e7edc6317cb83938704db48 Mon Sep 17 00:00:00 2001 From: wanjing <“wanjing5234@163.com”> Date: Fri, 1 Dec 2023 16:54:36 +0800 Subject: [PATCH 03/39] =?UTF-8?q?=E5=85=B3=E9=97=AD=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E7=BB=93=E6=9D=9F=EF=BC=8C=E8=87=AA=E5=8A=A8=E7=94=9F=E6=88=90?= =?UTF-8?q?=E5=B7=A5=E5=8D=95=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../workorder/generate/GenerateWorkorderServiceImpl.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/workorder/generate/GenerateWorkorderServiceImpl.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/workorder/generate/GenerateWorkorderServiceImpl.java index 5bbee5e..9272117 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/workorder/generate/GenerateWorkorderServiceImpl.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/workorder/generate/GenerateWorkorderServiceImpl.java @@ -34,6 +34,8 @@ public class GenerateWorkorderServiceImpl implements GenerateWorkorderService { @Override public JsonResult generateByAuto(Inspection inspection, List inspectionFileList) { - return generateWorkorderByAutoService.generate(inspection, inspectionFileList); +// return generateWorkorderByAutoService.generate(inspection, inspectionFileList); + log.info("关闭自动生成工单功能, inspectionId={}", inspection.getId()); + return JsonResult.success(); } } -- 2.27.0 From 225d50a34b516c559e8ebd141838cc3a16458cc7 Mon Sep 17 00:00:00 2001 From: wanjing <“wanjing5234@163.com”> Date: Fri, 1 Dec 2023 17:11:13 +0800 Subject: [PATCH 04/39] =?UTF-8?q?=E5=BC=80=E5=90=AF=E4=BB=BB=E5=8A=A1?= =?UTF-8?q?=E7=BB=93=E6=9D=9F=EF=BC=8C=E8=87=AA=E5=8A=A8=E7=94=9F=E6=88=90?= =?UTF-8?q?=E5=B7=A5=E5=8D=95=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../workorder/generate/GenerateWorkorderServiceImpl.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/workorder/generate/GenerateWorkorderServiceImpl.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/workorder/generate/GenerateWorkorderServiceImpl.java index 9272117..5bbee5e 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/workorder/generate/GenerateWorkorderServiceImpl.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/workorder/generate/GenerateWorkorderServiceImpl.java @@ -34,8 +34,6 @@ public class GenerateWorkorderServiceImpl implements GenerateWorkorderService { @Override public JsonResult generateByAuto(Inspection inspection, List inspectionFileList) { -// return generateWorkorderByAutoService.generate(inspection, inspectionFileList); - log.info("关闭自动生成工单功能, inspectionId={}", inspection.getId()); - return JsonResult.success(); + return generateWorkorderByAutoService.generate(inspection, inspectionFileList); } } -- 2.27.0 From 0ddc4e1e96d3d1658bf17e88d437ded934184dfb Mon Sep 17 00:00:00 2001 From: wanjing <“wanjing5234@163.com”> Date: Sat, 2 Dec 2023 10:03:34 +0800 Subject: [PATCH 05/39] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E9=80=9A=E8=BF=87?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E6=B7=BB=E5=8A=A0=E9=97=AE=E9=A2=98=E6=95=B0?= =?UTF-8?q?=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/InspectionFileController.java | 15 +- .../AddInspectionFileRequest.java | 45 ++++++ .../IInspectionFileService.java | 11 ++ .../InspectionFileServiceImpl.java | 18 +++ .../add/AddInspectionFileService.java | 135 ++++++++++++++++++ 5 files changed, 220 insertions(+), 4 deletions(-) create mode 100755 tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/request/inspectionfile/AddInspectionFileRequest.java create mode 100644 tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/add/AddInspectionFileService.java diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/controller/InspectionFileController.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/controller/InspectionFileController.java index ea54b2b..76bb602 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/controller/InspectionFileController.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/controller/InspectionFileController.java @@ -1,10 +1,8 @@ package com.tuoheng.admin.controller; import com.tuoheng.admin.query.InspectionFileQuery; -import com.tuoheng.admin.request.inspectionfile.QueryInspectionFileDistributionListRequest; -import com.tuoheng.admin.request.inspectionfile.QueryInspectionFilePageListByInspectionIdRequest; -import com.tuoheng.admin.request.inspectionfile.QueryInspectionFilePageListRequest; -import com.tuoheng.admin.request.inspectionfile.QueryInspectionFileWorkOrderPageListRequest; +import com.tuoheng.admin.request.dept.AddDeptRequest; +import com.tuoheng.admin.request.inspectionfile.*; import com.tuoheng.admin.service.inspectionfile.IInspectionFileService; import com.tuoheng.common.core.utils.JsonResult; import lombok.extern.slf4j.Slf4j; @@ -134,4 +132,13 @@ public class InspectionFileController { log.info("进入修改问题类型接口, id={}, questionCode={}", id, questionCode); return iInspectionFileService.editQuestionType(id, questionCode); } + + /** + * 添加问题 + */ + @PostMapping("/add") + public JsonResult add(@RequestBody AddInspectionFileRequest request) { +// log.info("进入新增部门接口"); + return iInspectionFileService.add(request); + } } diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/request/inspectionfile/AddInspectionFileRequest.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/request/inspectionfile/AddInspectionFileRequest.java new file mode 100755 index 0000000..c2813fd --- /dev/null +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/request/inspectionfile/AddInspectionFileRequest.java @@ -0,0 +1,45 @@ +package com.tuoheng.admin.request.inspectionfile; + +import lombok.Data; + +/** + * 查询巡检任务请求实体 + * + * @author wanjing + * @team tuoheng + * @date 2022-12-05 + */ +@Data +public class AddInspectionFileRequest { + + /** + * 任务Id + */ + private String inspectionId; + + /** + * 问题类型 + */ + private String questionCode; + + /** + * 文件编号 + */ + private String fileCode; + + /** + * 文件名称 + */ + private String fileName; + + /** + * 原文件地址 + */ + private String fileOriginalUrl; + + /** + * 标记文件地址 + */ + private String fileMarkerUrl; + +} diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/IInspectionFileService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/IInspectionFileService.java index e0398b8..1f3db43 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/IInspectionFileService.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/IInspectionFileService.java @@ -4,6 +4,7 @@ import com.tuoheng.admin.query.InspectionFileQuery; import com.tuoheng.admin.request.inspectionfile.*; import com.tuoheng.common.core.utils.JsonResult; import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestBody; import java.util.List; @@ -108,4 +109,14 @@ public interface IInspectionFileService { * @return */ JsonResult editQuestionType(String id, String questionCode); + + /** + * + * 新增问题 + * + * @param request + * + * @return + */ + JsonResult add(AddInspectionFileRequest request); } diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileServiceImpl.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileServiceImpl.java index afcd247..298f69a 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileServiceImpl.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileServiceImpl.java @@ -14,6 +14,7 @@ import com.tuoheng.admin.enums.code.questiontype.QuestionTypeEnum; import com.tuoheng.admin.mapper.*; import com.tuoheng.admin.query.InspectionFileQuery; import com.tuoheng.admin.request.inspectionfile.*; +import com.tuoheng.admin.service.inspectionfile.add.AddInspectionFileService; import com.tuoheng.admin.service.inspectionfile.confirm.InspectionFileConfirmService; import com.tuoheng.admin.service.inspectionfile.handle.QueryInspectionFileHandleByInspectionFileIdService; import com.tuoheng.admin.service.inspectionfile.ignore.InspectionFileIgnoreService; @@ -36,6 +37,7 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.web.bind.annotation.RequestBody; import java.util.ArrayList; @@ -98,6 +100,9 @@ public class InspectionFileServiceImpl implements IInspectionFileService { @Autowired private UpdateInspectionFileQuestionTypeService updateInspectionFileQuestionTypeService; + @Autowired + private AddInspectionFileService addInspectionFileService; + /** * 问题类型和任务名称 * @@ -459,4 +464,17 @@ public class InspectionFileServiceImpl implements IInspectionFileService { public JsonResult editQuestionType(String id, String questionCode) { return updateInspectionFileQuestionTypeService.update(id, questionCode); } + + /** + * + * 新增问题 + * + * @param request + * + * @return + */ + @Override + public JsonResult add(AddInspectionFileRequest request) { + return addInspectionFileService.add(request); + } } diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/add/AddInspectionFileService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/add/AddInspectionFileService.java new file mode 100644 index 0000000..0dcdd9f --- /dev/null +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/add/AddInspectionFileService.java @@ -0,0 +1,135 @@ +package com.tuoheng.admin.service.inspectionfile.add; + +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.tuoheng.admin.entity.*; +import com.tuoheng.admin.enums.FileTypeEnum; +import com.tuoheng.admin.enums.InspectionFileStatusEnum; +import com.tuoheng.admin.enums.MarkEnum; +import com.tuoheng.admin.enums.SourceEnum; +import com.tuoheng.admin.mapper.*; +import com.tuoheng.admin.request.inspectionfile.AddInspectionFileRequest; +import com.tuoheng.admin.utils.CurrentUserUtil; +import com.tuoheng.admin.utils.GaodeUtil; +import com.tuoheng.common.core.config.common.CommonConfig; +import com.tuoheng.common.core.exception.ServiceException; +import com.tuoheng.common.core.utils.DateUtils; +import com.tuoheng.common.core.utils.JacksonUtil; +import com.tuoheng.common.core.utils.JsonResult; +import com.tuoheng.common.core.utils.StringUtils; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; + +/** + * DSP回调 服务实现类 + * + * @author wanjing + * @since 2023-12-02 + */ +@Slf4j +@Service +public class AddInspectionFileService { + + @Autowired + private InspectionMapper inspectionMapper; + + @Autowired + private InspectionFileMapper inspectionFileMapper; + + @Autowired + private FlightDataMapper flightDataMapper; + + @Autowired + private QuestionTypeMapper questionTypeMapper; + + /** + * 保存DSP回调数据 + * + * @param request 回调请求体 + * @return + */ + public JsonResult add(AddInspectionFileRequest request) { + log.info("添加问题数据, request:{}", JacksonUtil.obj2StringPretty(request)); + User user = CurrentUserUtil.getUserInfo(); + + // 查询任务 + Inspection inspection = inspectionMapper.selectOne(new LambdaQueryWrapper() + .eq(Inspection::getId, request.getInspectionId())); + if (ObjectUtil.isNull(inspection)) { + log.info("任务不存在"); + throw new ServiceException(0, "任务不存在"); + } + + InspectionFile inspectionFile = new InspectionFile(); + //问题编号 + inspectionFile.setQuestionCode(request.getQuestionCode()); + QuestionType questionTypeData = null; + if (StringUtils.isNotEmpty(request.getQuestionCode())) { + questionTypeData = questionTypeMapper.selectOne(Wrappers.lambdaQuery() + .eq(QuestionType::getCode, request.getQuestionCode()) + .eq(QuestionType::getMark, MarkEnum.VALID.getCode())); + if (ObjectUtil.isNotEmpty(questionTypeData)) { + inspectionFile.setQuestionId(questionTypeData.getId()); + inspectionFile.setQuestionName(questionTypeData.getContent()); + } else { + log.error("该问题类型在业务平台不存在,code={}", request.getQuestionCode()); + } + } + inspectionFile.setTenantId(user.getTenantId()); + inspectionFile.setInspectionId(request.getInspectionId()); + // 文件类型 + inspectionFile.setFileType(FileTypeEnum.IMAGE.getCode()); + // 文件编码 + inspectionFile.setFileCode(request.getFileCode()); + // 文件名称 + inspectionFile.setFileName(request.getFileName()); + //图片大小,单位MB,保留两位小数,目前没有获取图片大小的字段 + inspectionFile.setFileSize(0.00); + inspectionFile.setStatus(InspectionFileStatusEnum.WAIT_CONFIRMED.getCode()); + inspectionFile.setMark(1); + // 原始图片 + String fileOriginalUrl = request.getFileOriginalUrl(); + if (StringUtils.isNotEmpty(fileOriginalUrl) && fileOriginalUrl.contains(CommonConfig.imageURL)) { + fileOriginalUrl = fileOriginalUrl.replaceAll(CommonConfig.imageURL, ""); + } + inspectionFile.setFileOriginal(fileOriginalUrl); + // 标记图片 + String fileMarkerUrl = request.getFileMarkerUrl(); + if (StringUtils.isNotEmpty(fileMarkerUrl) && fileMarkerUrl.contains(CommonConfig.imageURL)) { + fileMarkerUrl = fileMarkerUrl.replaceAll(CommonConfig.imageURL, ""); + } + inspectionFile.setFileImage(fileMarkerUrl); + + // 问题图片来源 + inspectionFile.setSource(SourceEnum.AI.getCode()); + inspectionFile.setCreateUser(user.getId()); // 设置默认用户 + inspectionFile.setCreateTime(DateUtils.now()); + //拉取最新一条经纬度信息 + FlightData flightData = flightDataMapper.selectOne(Wrappers.lambdaQuery() + .eq(FlightData::getInspectionId, request.getInspectionId()) + .orderByDesc(FlightData::getCreateTime) + .last("limit 1")); + if (ObjectUtil.isNotNull(flightData)) { + inspectionFile.setLatitude(flightData.getLat()); + inspectionFile.setLongitude(flightData.getLng()); + inspectionFile.setGaodeLatitude(flightData.getLat()); + inspectionFile.setGaodeLongitude(flightData.getLng()); + } + String gaodeAddress_live = GaodeUtil.getGaodeAddress(flightData.getLng(), flightData.getLat()); + if (ObjectUtil.isNotNull(gaodeAddress_live)) { + inspectionFile.setLocation(gaodeAddress_live); + inspectionFile.setGaodeAddress(gaodeAddress_live); + } + List inspectionFileList = new ArrayList<>(); + inspectionFileList.add(inspectionFile); + inspectionFileMapper.addBatch(inspectionFileList); + + return JsonResult.success(); + } + +} -- 2.27.0 From a74cacbf4c215529d032e790661efd690081e4d4 Mon Sep 17 00:00:00 2001 From: chenlu Date: Tue, 14 May 2024 17:39:29 +0800 Subject: [PATCH 06/39] =?UTF-8?q?=E5=B7=A5=E5=8D=95=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../InspectionFileHandleController.java | 13 +++ .../admin/entity/InspectionFileHandle.java | 15 ++++ .../com/tuoheng/admin/entity/WorkOrder.java | 3 +- .../admin/enums/WorkOrderStatusEnum.java | 3 + .../InspectionFileProcessingCodeEnum.java | 4 +- ...spectionFileHandleAuditRresultRequest.java | 36 ++++++++ .../IInspectionFileService.java | 3 + .../InspectionFileServiceImpl.java | 85 +++++++++++++++++++ .../InspectionFileProcessingService.java | 33 ++++++- ...ctionFilePageListByWorkOrderIdService.java | 23 ++++- .../vo/inspection/InspectionFileHandleVo.java | 16 ++++ 11 files changed, 229 insertions(+), 5 deletions(-) create mode 100644 tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/request/inspectionfile/InspectionFileHandleAuditRresultRequest.java diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/controller/InspectionFileHandleController.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/controller/InspectionFileHandleController.java index 53f687f..06cb660 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/controller/InspectionFileHandleController.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/controller/InspectionFileHandleController.java @@ -1,5 +1,6 @@ package com.tuoheng.admin.controller; +import com.tuoheng.admin.request.inspectionfile.InspectionFileHandleAuditRresultRequest; import com.tuoheng.admin.request.inspectionfile.InspectionFileProcessingRresultRequest; import com.tuoheng.admin.service.inspectionfile.IInspectionFileService; import com.tuoheng.common.core.utils.JsonResult; @@ -34,4 +35,16 @@ public class InspectionFileHandleController { return iInspectionFileService.processing(request); } + /** + * 审核结果 + * + * @param request + * @return + */ + @PostMapping("/audit") + public JsonResult audit(@RequestBody InspectionFileHandleAuditRresultRequest request){ + return iInspectionFileService.audit(request); + } + + } diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/InspectionFileHandle.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/InspectionFileHandle.java index b8ee678..cdf6a8b 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/InspectionFileHandle.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/InspectionFileHandle.java @@ -55,4 +55,19 @@ public class InspectionFileHandle extends BaseEntity { @JsonFormat(pattern = "yyyy-MM-dd") private Date handlerTime; + /** + * 审核结果 0未审核 1审核通过 2审核未通过 + */ + private Integer audit; + + /** + * 审核意见 + */ + private String auditView; + + /** + * 审核时间 + */ + private Date auditTime; + } diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/WorkOrder.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/WorkOrder.java index 0372fc6..20ac969 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/WorkOrder.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/WorkOrder.java @@ -41,7 +41,8 @@ public class WorkOrder extends BaseEntity { private String code; /** - * 工单状态:5待分配 10处理中(已分配) 15已完成 + * 更新前 (工单状态:5待分配 10处理中(已分配) 15已完成) + * 更新后 工单状态:5待分配 10处理中(问题未全部处理) 11待审核(问题已经处理完) 15已完成 */ private Integer status; diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/enums/WorkOrderStatusEnum.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/enums/WorkOrderStatusEnum.java index bab84d7..993773d 100755 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/enums/WorkOrderStatusEnum.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/enums/WorkOrderStatusEnum.java @@ -13,6 +13,9 @@ public enum WorkOrderStatusEnum { WAIT(5,"待分配"), PROCESSING(10,"处理中(已分配)"), + + PENDING_REVIEW(11,"待审核"), + COMPLETED(15,"已完成"); WorkOrderStatusEnum(int code, String description){ diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/enums/code/inspectionfilehandle/InspectionFileProcessingCodeEnum.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/enums/code/inspectionfilehandle/InspectionFileProcessingCodeEnum.java index cec5a0f..51b6f7b 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/enums/code/inspectionfilehandle/InspectionFileProcessingCodeEnum.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/enums/code/inspectionfilehandle/InspectionFileProcessingCodeEnum.java @@ -16,7 +16,9 @@ public enum InspectionFileProcessingCodeEnum { WORK_ORDER_IS_NOT_EXIST(1250102, "工单不存在"), INSPECTION_FILE_ID_IS_NULL(1250103, "任务问题id为空"), INSPECTION_FILE_IS_NOT_EXIST(1250104, "任务问题不存在"), - INSPECTION_FILE_Handle_IS_EXIST(1250105, "该问题已处理"); + INSPECTION_FILE_Handle_IS_EXIST(1250105, "该问题已处理"), + + INSPECTION_FILE_HANDLE_ISERROR(1250106, "当前问题未处理完毕或数据已失效"); /** * 错误码 diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/request/inspectionfile/InspectionFileHandleAuditRresultRequest.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/request/inspectionfile/InspectionFileHandleAuditRresultRequest.java new file mode 100644 index 0000000..826ac51 --- /dev/null +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/request/inspectionfile/InspectionFileHandleAuditRresultRequest.java @@ -0,0 +1,36 @@ +package com.tuoheng.admin.request.inspectionfile; + +import lombok.Data; + +import java.util.Date; + +/** + * 处理任务问题结果请求实体 + * + * @author wanjing + * @team tuoheng + * @date 2022-12-09 + */ +@Data +public class InspectionFileHandleAuditRresultRequest { + + /** + * 工单ID + */ + private String workOrderId; + + /** + * 巡检问题文件ID + */ + private String inspectionFileId; + + /** + * 审核结果 0未审核 1审核通过 2审核未通过 + */ + private Integer audit; + + /** + * 审核意见 + */ + private String auditView; +} diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/IInspectionFileService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/IInspectionFileService.java index e0398b8..1ce5b34 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/IInspectionFileService.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/IInspectionFileService.java @@ -108,4 +108,7 @@ public interface IInspectionFileService { * @return */ JsonResult editQuestionType(String id, String questionCode); + + + JsonResult audit(InspectionFileHandleAuditRresultRequest request); } diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileServiceImpl.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileServiceImpl.java index afcd247..757b26e 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileServiceImpl.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileServiceImpl.java @@ -6,10 +6,17 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.tuoheng.admin.entity.Inspection; import com.tuoheng.admin.entity.InspectionFile; +import com.tuoheng.admin.entity.InspectionFileHandle; import com.tuoheng.admin.entity.QuestionType; +import com.tuoheng.admin.entity.Report; import com.tuoheng.admin.entity.User; +import com.tuoheng.admin.entity.WorkOrder; +import com.tuoheng.admin.entity.WorkOrderFile; import com.tuoheng.admin.enums.DataPermissionEnum; +import com.tuoheng.admin.enums.MarkEnum; +import com.tuoheng.admin.enums.WorkOrderStatusEnum; import com.tuoheng.admin.enums.code.inspectionfile.ListByDeptUserTypeEnum; +import com.tuoheng.admin.enums.code.inspectionfilehandle.InspectionFileProcessingCodeEnum; import com.tuoheng.admin.enums.code.questiontype.QuestionTypeEnum; import com.tuoheng.admin.mapper.*; import com.tuoheng.admin.query.InspectionFileQuery; @@ -30,6 +37,7 @@ import com.tuoheng.admin.vo.ListByDeptUserTypeVo; import com.tuoheng.common.core.config.common.CommonConfig; import com.tuoheng.common.core.enums.ServiceExceptionEnum; import com.tuoheng.common.core.exception.ServiceException; +import com.tuoheng.common.core.utils.DateUtils; import com.tuoheng.common.core.utils.JsonResult; import com.tuoheng.common.core.utils.StringUtils; import lombok.extern.slf4j.Slf4j; @@ -40,7 +48,9 @@ import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.Collections; +import java.util.Date; import java.util.List; +import java.util.Objects; import java.util.stream.Collectors; /** @@ -98,6 +108,16 @@ public class InspectionFileServiceImpl implements IInspectionFileService { @Autowired private UpdateInspectionFileQuestionTypeService updateInspectionFileQuestionTypeService; + @Autowired + private InspectionFileHandleMapper inspectionFileHandleMapper; + + @Autowired + private WorkOrderMapper workOrderMapper; + + @Autowired + private WorkOrderFileMapper workOrderFileMapper; + + /** * 问题类型和任务名称 * @@ -459,4 +479,69 @@ public class InspectionFileServiceImpl implements IInspectionFileService { public JsonResult editQuestionType(String id, String questionCode) { return updateInspectionFileQuestionTypeService.update(id, questionCode); } + + + @Override + public JsonResult audit(InspectionFileHandleAuditRresultRequest request) { + //获取当前用户信息 + User user = CurrentUserUtil.getUserInfo(); + String userId = user.getId(); + String tenantId = user.getTenantId(); + //查询巡检问题处理结果表 + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq( InspectionFileHandle::getInspectionFileId, request.getInspectionFileId()); + queryWrapper.eq( InspectionFileHandle::getMark, MarkEnum.VALID.getCode() ); + InspectionFileHandle inspectionFileHandle = inspectionFileHandleMapper.selectOne(queryWrapper); + if (Objects.isNull(inspectionFileHandle) || !inspectionFileHandle.getAudit().equals(0)){ + log.info("问题单未处理/或者已审核,inspectionFileId:{}", request.getInspectionFileId()); + return JsonResult.error(InspectionFileProcessingCodeEnum.PROCESSING_IS_FAILED.getCode(), InspectionFileProcessingCodeEnum.INSPECTION_FILE_HANDLE_ISERROR.getMsg()); + } + //审核 新增审核意见 审核理由 + inspectionFileHandle.setAudit(request.getAudit()); + inspectionFileHandle.setAuditView(request.getAuditView()); + inspectionFileHandle.setAuditTime(new Date()); + int i = inspectionFileHandleMapper.updateById(inspectionFileHandle); + if (i < 1 ){ + log.info("修改问题处理单失败,inspectionFileId:{}", request.getInspectionFileId()); + return JsonResult.error(InspectionFileProcessingCodeEnum.PROCESSING_IS_FAILED.getCode(), InspectionFileProcessingCodeEnum.PROCESSING_IS_FAILED.getMsg()); + } + //判断处理工单的状态 + JsonResult jsonResult = workOrderUpdateStatus(userId, request); + return jsonResult; + } + + private JsonResult workOrderUpdateStatus(String userId, InspectionFileHandleAuditRresultRequest request) { + //当工单关联的任务问题都审核完,将工单状态改为已完成 反之待审核 + //巡检问题工单子表 + List workOrderFileList = workOrderFileMapper.selectList(new LambdaQueryWrapper() + .eq(WorkOrderFile::getWorkOrderId, request.getWorkOrderId())); + List inspectionFileIdList = workOrderFileList.stream().map(o -> o.getInspectionFileId()).collect(Collectors.toList()); + //巡检问题处理结果表 + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.in(InspectionFileHandle::getInspectionFileId, inspectionFileIdList); + queryWrapper.eq(InspectionFileHandle::getAudit, 1); + List inspectionFileHandles = inspectionFileHandleMapper.selectList(queryWrapper); + if (CollectionUtil.isEmpty(inspectionFileHandles)){ + return JsonResult.success(); + } + //查询所有的审核单的数据 + List idList = inspectionFileHandles.stream().map(InspectionFileHandle::getInspectionFileId).collect(Collectors.toList()); + + //如果这条审核的数据+原始数据 = 所有问题单 代表所有问题均审核 修改工单状态为已完成 反之不做修改 + if (workOrderFileList.size() != idList.size()){ + return JsonResult.success(); + } + //处理工单表的状态 + WorkOrder workOrder = new WorkOrder(); + workOrder.setId(request.getWorkOrderId()); + workOrder.setStatus(WorkOrderStatusEnum.COMPLETED.getCode()); + workOrder.setUpdateUser(userId); + workOrder.setUpdateTime(DateUtils.now()); + Integer rowCount = workOrderMapper.update(workOrder); + if (rowCount <= 0) { + log.info("更新工单状态失败,workOrderId:{}", request.getWorkOrderId()); + return JsonResult.error(InspectionFileProcessingCodeEnum.PROCESSING_IS_FAILED.getCode(), InspectionFileProcessingCodeEnum.PROCESSING_IS_FAILED.getMsg()); + } + return JsonResult.success(); + } } diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/processing/InspectionFileProcessingService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/processing/InspectionFileProcessingService.java index 7256e51..ecc0bc8 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/processing/InspectionFileProcessingService.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/processing/InspectionFileProcessingService.java @@ -70,7 +70,7 @@ public class InspectionFileProcessingService { return result; } - result = this.updateWorkOrderStatus(userId, request); + result = this.updateNewWorkOrderStatus(userId, request); if (0 != result.getCode()) { log.info("进入任务问题处理业务:更新工单状态失败:{}", result.getMsg()); return result; @@ -182,4 +182,35 @@ public class InspectionFileProcessingService { return JsonResult.success(); } + + /** + * 更新工单状态 —— 更新 + * 当工单关联的任务问题都被处理完时,将工单状态改为待审核 反之处理中 + */ + private JsonResult updateNewWorkOrderStatus(String userId, InspectionFileProcessingRresultRequest request) { + //巡检问题工单子表 + List workOrderFileList = workOrderFileMapper.selectList(new LambdaQueryWrapper() + .eq(WorkOrderFile::getWorkOrderId, request.getWorkOrderId())); + List inspectionFileIdList = workOrderFileList.stream().map(o -> o.getInspectionFileId()).collect(Collectors.toList()); + //巡检问题处理结果表 + Integer count = inspectionFileHandleMapper.selectCount(new LambdaQueryWrapper() + .in(InspectionFileHandle::getInspectionFileId, inspectionFileIdList)); + if (workOrderFileList.size() > count) { + return JsonResult.success(); + } + //处理工单表的状态 + WorkOrder workOrder = new WorkOrder(); + workOrder.setId(request.getWorkOrderId()); + workOrder.setStatus(WorkOrderStatusEnum.COMPLETED.getCode()); + workOrder.setUpdateUser(userId); + workOrder.setUpdateTime(DateUtils.now()); + Integer rowCount = workOrderMapper.update(workOrder); + if (rowCount <= 0) { + log.info("更新工单状态失败,workOrderId:{}", request.getWorkOrderId()); + return JsonResult.error(InspectionFileProcessingCodeEnum.PROCESSING_IS_FAILED.getCode(), InspectionFileProcessingCodeEnum.PROCESSING_IS_FAILED.getMsg()); + } + return JsonResult.success(); + } + + } diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java index 7117dcc..efd3d44 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java @@ -87,9 +87,14 @@ public class QueryInspectionFilePageListByWorkOrderIdService { .in(InspectionFile::getId, inspectionFileIdList) .eq(InspectionFile::getTenantId, tenantId) .eq(InspectionFile::getMark, 1)); + //查询问题单子表审核时间 意见等信息 + List inspectionFileHandles = inspectionFileHandleMapper.selectList(new LambdaQueryWrapper() + .in(InspectionFileHandle::getInspectionFileId, inspectionFileIdList) + .eq(InspectionFileHandle::getTenantId, tenantId) + .eq(InspectionFileHandle::getMark, 1)); // 构造返回结果对象 - List inspectionFileHandleVoList = this.buildInspectionFileHandleVoList(request.getWorkOrderId(), inspectionFileIdList, inspectionFileList); + List inspectionFileHandleVoList = this.buildInspectionFileHandleVoList(request.getWorkOrderId(), inspectionFileIdList, inspectionFileList, inspectionFileHandles); // 重写返回结果对象 IPage inspectionFilePageListVoPageData = new Page<>(); @@ -130,7 +135,7 @@ public class QueryInspectionFilePageListByWorkOrderIdService { * * @return */ - private List buildInspectionFileHandleVoList(String workOrderId, List inspectionFileIdList, List inspectionFileList) { + private List buildInspectionFileHandleVoList(String workOrderId, List inspectionFileIdList, List inspectionFileList, List inspectionFileHandles) { Map questionTypeMap = this.getQuestionTypeMap(); List inspectionFileHandleList = this.getInspectionFileHandleList(inspectionFileIdList); Map inspectionFileHandleMap = this.getInspectionFileHandleMap(inspectionFileHandleList); @@ -141,8 +146,22 @@ public class QueryInspectionFilePageListByWorkOrderIdService { User user; QuestionType questionType; InspectionFileHandle inspectionFileHandle; + //子表信息处理 + Map detailMap = new HashMap<>(); + if (!CollectionUtil.isEmpty(inspectionFileHandles)){ + detailMap = inspectionFileHandles.stream().collect(Collectors.toMap(InspectionFileHandle::getInspectionFileId, a -> a)); + } for (InspectionFile inspectionFile : inspectionFileList) { inspectionFileHandleVo = new InspectionFileHandleVo(); + //处理明细表审核数据 + if (!CollectionUtil.isEmpty(detailMap) && Objects.nonNull(detailMap.get(inspectionFile.getId())) ){ + InspectionFileHandle item = detailMap.get(inspectionFile.getId()); + inspectionFileHandleVo.setAudit(item.getAudit()); + inspectionFileHandleVo.setAuditView(item.getAuditView()); + inspectionFileHandleVo.setAuditTime(item.getAuditTime()); + }else { + inspectionFileHandleVo.setAudit(0); + } inspectionFileHandleVo.setWorkOrderId(workOrderId); inspectionFileHandleVo.setInspectionFileId(inspectionFile.getId()); inspectionFileHandleVo.setStatus(inspectionFile.getStatus()); diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/inspection/InspectionFileHandleVo.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/inspection/InspectionFileHandleVo.java index 760e325..9f2cab4 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/inspection/InspectionFileHandleVo.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/inspection/InspectionFileHandleVo.java @@ -107,4 +107,20 @@ public class InspectionFileHandleVo { */ private String inspectionCode; + /** + * 审核结果 0未审核 1审核通过 2审核未通过 + */ + private Integer audit; + + /** + * 审核意见 + */ + private String auditView; + + /** + * 审核时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8") + private Date auditTime; + } -- 2.27.0 From f055ce3700283c22a1e32db2cee7c13add54ec67 Mon Sep 17 00:00:00 2001 From: chenlu Date: Wed, 15 May 2024 10:56:08 +0800 Subject: [PATCH 07/39] =?UTF-8?q?=E7=8A=B6=E6=80=81=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../processing/InspectionFileProcessingService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/processing/InspectionFileProcessingService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/processing/InspectionFileProcessingService.java index ecc0bc8..8adda6b 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/processing/InspectionFileProcessingService.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/processing/InspectionFileProcessingService.java @@ -201,7 +201,7 @@ public class InspectionFileProcessingService { //处理工单表的状态 WorkOrder workOrder = new WorkOrder(); workOrder.setId(request.getWorkOrderId()); - workOrder.setStatus(WorkOrderStatusEnum.COMPLETED.getCode()); + workOrder.setStatus(WorkOrderStatusEnum.PENDING_REVIEW.getCode()); workOrder.setUpdateUser(userId); workOrder.setUpdateTime(DateUtils.now()); Integer rowCount = workOrderMapper.update(workOrder); -- 2.27.0 From 97fc246a24d29ff167018ed7bc877d67827c7c2c Mon Sep 17 00:00:00 2001 From: chenlu Date: Wed, 15 May 2024 17:16:49 +0800 Subject: [PATCH 08/39] =?UTF-8?q?=E4=BB=A3=E7=A0=81=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/tuoheng/admin/enums/AuditEnum.java | 31 +++++++++++++++++++ .../InspectionFileServiceImpl.java | 8 ++++- 2 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/enums/AuditEnum.java diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/enums/AuditEnum.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/enums/AuditEnum.java new file mode 100644 index 0000000..953dd2d --- /dev/null +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/enums/AuditEnum.java @@ -0,0 +1,31 @@ +package com.tuoheng.admin.enums; + +import lombok.Getter; + +/** + * 工单状态类型 + * + * @author chenlu + * @team tuoheng + * @date 2022-12-07 + * 审核结果 0未审核 1审核通过 2审核未通过 + */ +public enum AuditEnum { + + ZERO(0,"未审核"), + ONE(1,"审核通过"), + + TWO(2,"审核未通过"); + + AuditEnum(int code, String description){ + this.code = code; + this.description = description; + } + + @Getter + private int code; + + @Getter + private String description; + +} diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileServiceImpl.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileServiceImpl.java index 757b26e..663ca08 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileServiceImpl.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileServiceImpl.java @@ -12,6 +12,7 @@ import com.tuoheng.admin.entity.Report; import com.tuoheng.admin.entity.User; import com.tuoheng.admin.entity.WorkOrder; import com.tuoheng.admin.entity.WorkOrderFile; +import com.tuoheng.admin.enums.AuditEnum; import com.tuoheng.admin.enums.DataPermissionEnum; import com.tuoheng.admin.enums.MarkEnum; import com.tuoheng.admin.enums.WorkOrderStatusEnum; @@ -44,6 +45,7 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; @@ -482,6 +484,7 @@ public class InspectionFileServiceImpl implements IInspectionFileService { @Override + @Transactional(rollbackFor = Exception.class) public JsonResult audit(InspectionFileHandleAuditRresultRequest request) { //获取当前用户信息 User user = CurrentUserUtil.getUserInfo(); @@ -519,7 +522,10 @@ public class InspectionFileServiceImpl implements IInspectionFileService { //巡检问题处理结果表 LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.in(InspectionFileHandle::getInspectionFileId, inspectionFileIdList); - queryWrapper.eq(InspectionFileHandle::getAudit, 1); + List list = new ArrayList<>(); + list.add(AuditEnum.ONE.getCode()); + list.add(AuditEnum.TWO.getCode()); + queryWrapper.in(InspectionFileHandle::getAudit, list); List inspectionFileHandles = inspectionFileHandleMapper.selectList(queryWrapper); if (CollectionUtil.isEmpty(inspectionFileHandles)){ return JsonResult.success(); -- 2.27.0 From 918109d6a4383de77952b90726910328affb78ce Mon Sep 17 00:00:00 2001 From: chenlu Date: Thu, 16 May 2024 09:12:13 +0800 Subject: [PATCH 09/39] =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8F=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E8=BF=94=E5=9B=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tuoheng/miniprogram/vo/SeeQuestionVo.java | 19 +++++++++++++++++++ .../resources/mapper/InspectionFileMapper.xml | 5 ++++- 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/SeeQuestionVo.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/SeeQuestionVo.java index 8f65d64..d2fe7c1 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/SeeQuestionVo.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/SeeQuestionVo.java @@ -1,7 +1,10 @@ package com.tuoheng.miniprogram.vo; +import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; +import java.util.Date; + /** * @Author ChengWang * @Date 2022/11/28 @@ -54,6 +57,22 @@ public class SeeQuestionVo { */ private String handlerUser; + /** + * 审核结果 0未审核 1审核通过 2审核未通过 + */ + private Integer audit; + + /** + * 审核意见 + */ + private String auditView; + + /** + * 审核时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8") + private Date auditTime; + } diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/resources/mapper/InspectionFileMapper.xml b/tuoheng-service/tuoheng-miniprogram/src/main/resources/mapper/InspectionFileMapper.xml index 407213b..b54fed4 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/resources/mapper/InspectionFileMapper.xml +++ b/tuoheng-service/tuoheng-miniprogram/src/main/resources/mapper/InspectionFileMapper.xml @@ -15,7 +15,10 @@ tfh.handler_image as handlerImage, tfh.handler_result as handlerResult, tfh.handler_time as handlerTime, - tfh.handler_user as handlerUser + tfh.handler_user as handlerUser, + tfh.audit as audit, + tfh.audit_view as auditView, + tfh.audit_time as auditTime from th_inspection_file as tf left join th_inspection_file_handle AS tfh on tf.id = tfh.inspection_file_id -- 2.27.0 From d60fdaad4b2d1c30d319b4c09dcfba9ea96ec346 Mon Sep 17 00:00:00 2001 From: chenlu Date: Thu, 16 May 2024 09:12:49 +0800 Subject: [PATCH 10/39] =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8F=E5=B7=A5?= =?UTF-8?q?=E5=8D=95=E5=AE=A1=E6=A0=B8=E6=8E=A5=E5=8F=A3=E8=BF=94=E5=9B=9E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tuoheng/miniprogram/vo/SeeQuestionVo.java | 19 +++++++++++++++++++ .../resources/mapper/InspectionFileMapper.xml | 5 ++++- 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/SeeQuestionVo.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/SeeQuestionVo.java index 8f65d64..d2fe7c1 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/SeeQuestionVo.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/SeeQuestionVo.java @@ -1,7 +1,10 @@ package com.tuoheng.miniprogram.vo; +import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; +import java.util.Date; + /** * @Author ChengWang * @Date 2022/11/28 @@ -54,6 +57,22 @@ public class SeeQuestionVo { */ private String handlerUser; + /** + * 审核结果 0未审核 1审核通过 2审核未通过 + */ + private Integer audit; + + /** + * 审核意见 + */ + private String auditView; + + /** + * 审核时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8") + private Date auditTime; + } diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/resources/mapper/InspectionFileMapper.xml b/tuoheng-service/tuoheng-miniprogram/src/main/resources/mapper/InspectionFileMapper.xml index 407213b..b54fed4 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/resources/mapper/InspectionFileMapper.xml +++ b/tuoheng-service/tuoheng-miniprogram/src/main/resources/mapper/InspectionFileMapper.xml @@ -15,7 +15,10 @@ tfh.handler_image as handlerImage, tfh.handler_result as handlerResult, tfh.handler_time as handlerTime, - tfh.handler_user as handlerUser + tfh.handler_user as handlerUser, + tfh.audit as audit, + tfh.audit_view as auditView, + tfh.audit_time as auditTime from th_inspection_file as tf left join th_inspection_file_handle AS tfh on tf.id = tfh.inspection_file_id -- 2.27.0 From 848bb10fb3ad2647ab2ab3fe5e8b06f606c70fed Mon Sep 17 00:00:00 2001 From: chenlu Date: Thu, 16 May 2024 11:23:13 +0800 Subject: [PATCH 11/39] =?UTF-8?q?=E5=B7=A5=E5=8D=95=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E5=80=BC=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/tuoheng/admin/entity/InspectionFileHandle.java | 2 +- .../src/main/java/com/tuoheng/admin/enums/AuditEnum.java | 6 +++--- .../InspectionFileHandleAuditRresultRequest.java | 2 +- .../tuoheng/admin/vo/inspection/InspectionFileHandleVo.java | 2 +- .../com/tuoheng/admin/vo/workorder/WorkOrderPageListVo.java | 2 +- .../main/java/com/tuoheng/miniprogram/vo/SeeQuestionVo.java | 2 +- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/InspectionFileHandle.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/InspectionFileHandle.java index cdf6a8b..77bd339 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/InspectionFileHandle.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/InspectionFileHandle.java @@ -56,7 +56,7 @@ public class InspectionFileHandle extends BaseEntity { private Date handlerTime; /** - * 审核结果 0未审核 1审核通过 2审核未通过 + * 审核结果 0未审核 1合适 2不合适 */ private Integer audit; diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/enums/AuditEnum.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/enums/AuditEnum.java index 953dd2d..ad5090e 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/enums/AuditEnum.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/enums/AuditEnum.java @@ -8,14 +8,14 @@ import lombok.Getter; * @author chenlu * @team tuoheng * @date 2022-12-07 - * 审核结果 0未审核 1审核通过 2审核未通过 + * 审核结果 0未审核 1合适 2不合适 */ public enum AuditEnum { ZERO(0,"未审核"), - ONE(1,"审核通过"), + ONE(1,"合适"), - TWO(2,"审核未通过"); + TWO(2,"不合适"); AuditEnum(int code, String description){ this.code = code; diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/request/inspectionfile/InspectionFileHandleAuditRresultRequest.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/request/inspectionfile/InspectionFileHandleAuditRresultRequest.java index 826ac51..f02ab95 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/request/inspectionfile/InspectionFileHandleAuditRresultRequest.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/request/inspectionfile/InspectionFileHandleAuditRresultRequest.java @@ -25,7 +25,7 @@ public class InspectionFileHandleAuditRresultRequest { private String inspectionFileId; /** - * 审核结果 0未审核 1审核通过 2审核未通过 + * 审核结果 0未审核 1合适 2不合适 */ private Integer audit; diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/inspection/InspectionFileHandleVo.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/inspection/InspectionFileHandleVo.java index 9f2cab4..5a96624 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/inspection/InspectionFileHandleVo.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/inspection/InspectionFileHandleVo.java @@ -108,7 +108,7 @@ public class InspectionFileHandleVo { private String inspectionCode; /** - * 审核结果 0未审核 1审核通过 2审核未通过 + * 审核结果 0未审核 1合适 2不合适 */ private Integer audit; diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/workorder/WorkOrderPageListVo.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/workorder/WorkOrderPageListVo.java index 86bce95..8998aec 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/workorder/WorkOrderPageListVo.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/workorder/WorkOrderPageListVo.java @@ -27,7 +27,7 @@ public class WorkOrderPageListVo { private String code; /** - * 工单状态:5待分配 10处理中(已分配) 15已完成 + * 工单状态:5待分配 10处理中(已分配) 11待审核 15已完成 */ private Integer status; diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/SeeQuestionVo.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/SeeQuestionVo.java index d2fe7c1..7e7f755 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/SeeQuestionVo.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/SeeQuestionVo.java @@ -58,7 +58,7 @@ public class SeeQuestionVo { private String handlerUser; /** - * 审核结果 0未审核 1审核通过 2审核未通过 + * 审核结果 0未审核 1合适 2不合适 */ private Integer audit; -- 2.27.0 From 32c58581a295bcaf86ee721cfa6d532dcbd03478 Mon Sep 17 00:00:00 2001 From: chenlu Date: Thu, 16 May 2024 16:49:36 +0800 Subject: [PATCH 12/39] =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8F=E5=B7=A5?= =?UTF-8?q?=E5=8D=95=20=E6=A8=A1=E5=9D=97=E5=8A=9F=E8=83=BD=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/WorkOrderController.java | 11 + .../enums/WorkOrderStatusEnum.java | 1 + .../service/IWorkOrderService.java | 7 + .../impl/InspectionFileHandleServiceImpl.java | 4 +- .../service/impl/WorkOrderServiceImpl.java | 192 +++++++++++++++++- 5 files changed, 213 insertions(+), 2 deletions(-) diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/controller/WorkOrderController.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/controller/WorkOrderController.java index 42c773b..292d11f 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/controller/WorkOrderController.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/controller/WorkOrderController.java @@ -59,6 +59,17 @@ public class WorkOrderController extends BaseController { return workOrderService.getTodoList(query); } + /** + * 待审核工单 + * @param query + * @return + */ + @GetMapping("/getAuditList") + public JsonResult getAuditList(WorkOrderQuery query){ + return workOrderService.getAuditList(query); + } + + /** * 处理工单 * @param query diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/enums/WorkOrderStatusEnum.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/enums/WorkOrderStatusEnum.java index 1c2b2e4..0649e2c 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/enums/WorkOrderStatusEnum.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/enums/WorkOrderStatusEnum.java @@ -8,6 +8,7 @@ public enum WorkOrderStatusEnum { STATUS_ALLOCATED(5, "工单待分配"), STATUS_ASSIGNED(10, "工单处理中已分配"), + STATUS_PENDING_REVIEW(11,"待审核"), STATUS_COMPLETED(15, "工单已完成"); /** diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/IWorkOrderService.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/IWorkOrderService.java index 6145d3e..1c7a9b8 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/IWorkOrderService.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/IWorkOrderService.java @@ -21,6 +21,13 @@ public interface IWorkOrderService extends IBaseService { JsonResult getTodoList(WorkOrderQuery query); + /** + * 待审核工单 + * @param query + * @return + */ + JsonResult getAuditList(WorkOrderQuery query); + JsonResult handle(HandleQuery query); JsonResult getCompleted(WorkOrderQuery query); diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileHandleServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileHandleServiceImpl.java index 91a8036..8e9bd8d 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileHandleServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileHandleServiceImpl.java @@ -14,6 +14,7 @@ import com.tuoheng.miniprogram.entity.dto.UploadResultDto; import com.tuoheng.miniprogram.enums.InspectionFileHandleEnum; import com.tuoheng.miniprogram.enums.MarkEnum; import com.tuoheng.miniprogram.enums.ServiceExceptionEnum; +import com.tuoheng.miniprogram.enums.WorkOrderStatusEnum; import com.tuoheng.miniprogram.service.IInspectionFileHandleService; import com.tuoheng.miniprogram.utils.CurrentUserUtil; import lombok.extern.slf4j.Slf4j; @@ -116,7 +117,8 @@ public class InspectionFileHandleServiceImpl implements IInspectionFileHandleSer return JsonResult.success(); } WorkOrder workOrder = workOrderMapper.selectById(dto.getWorkOrderId()); - workOrder.setStatus(15); + //此处修改 现阶段问题处理完后 状态改为 11待审核 + workOrder.setStatus(WorkOrderStatusEnum.STATUS_PENDING_REVIEW.getCode()); workOrder.setUpdateUser(user.getId()); workOrder.setUpdateTime(DateUtils.now()); int i = workOrderMapper.updateById(workOrder); diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java index 0b6029a..bb53af2 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java @@ -374,7 +374,8 @@ public class WorkOrderServiceImpl extends BaseServiceImpllambdaQuery() + .eq(User::getMark, MarkEnum.VALID.getCode()) + .eq(User::getUsername, username)); + if (ObjectUtil.isNull(user)) { + return JsonResult.error(WorkOrderEnum.USER_IS_NOT_EXIST.getCode(), WorkOrderEnum.USER_IS_NOT_EXIST.getMsg()); + } + String tenantId = user.getTenantId(); + if (null == tenantId) { + return JsonResult.error(WorkOrderEnum.DEPT_ID_IS_NULL.getCode(), WorkOrderEnum.DEPT_ID_IS_NULL.getMsg()); + } + query.setTenantId(tenantId); + //根据登录用户判断角色 1超级管理员 2部门管理员 3普通用户 + Integer type = user.getDataPermission(); + //获取分页数据 + IPage page = new Page<>(query.getPage(), query.getLimit()); + IPage pageData = new Page<>(query.getPage(), query.getLimit()); + //时间处理 + Date startTime = null; + Date endTime = null; + if (StringUtils.isNotEmpty(query.getTime())) { + startTime = DateUtils.dateTime(DateUtils.YYYY_MM_DD_HH_MM_SS, query.getTime() + " 00:00:00"); + endTime = DateUtils.dateTime(DateUtils.YYYY_MM_DD_HH_MM_SS, query.getTime() + " 23:59:59"); + } + query.setOrderStartTime(startTime); + query.setOrderEndTime(endTime); + //用户角色为2部门管理员 3普通用户 + if (RoleEnum.SUPER_ADMIN.getCode() == type) { + //超级管理员可查看系统内所有已处理工单 + IPage workPageData = workOrderMapper.selectPage(page, new LambdaQueryWrapper() + .eq(WorkOrder::getStatus, 11) + .eq(WorkOrder::getTenantId, tenantId) + .between(null != query.getOrderStartTime() && null != query.getOrderEndTime(), WorkOrder::getCreateTime, query.getOrderStartTime(), query.getOrderEndTime()) + .eq(WorkOrder::getMark, MarkEnum.VALID.getCode()) + .orderByDesc(WorkOrder::getCreateTime)); + //设置每条工单对应的已完成问题数量 问题状态为25问题已处理 + List collect = workPageData.getRecords().stream().map(s -> { + WorkOrderInfoVo vo = new WorkOrderInfoVo(); + BeanUtils.copyProperties(s, vo); + //被分配人员对应的id + String assignUser = s.getAssignUser(); + if (StringUtils.isEmpty(assignUser)) { + throw new ServiceException(ServiceExceptionEnum.PARAMETER_IS_NULL); + } + String[] assignUserId = assignUser.split(","); + List list = new ArrayList<>(); + for (String userId : assignUserId) { + User userInfo = userMapper.selectById(userId); + if (ObjectUtil.isNotNull(userInfo)) { + list.add(userInfo.getRealname()); + } + } + String usernames = list.stream().map(String::valueOf).collect(Collectors.joining("、")); + vo.setAssignUserName(usernames); + //问题总数 + List workOrderFiles = workOrderFileMapper.selectList(Wrappers.lambdaQuery() + .eq(WorkOrderFile::getWorkOrderId, s.getId())); + if (null == workOrderFiles) { + throw new ServiceException(ServiceExceptionEnum.PARAMETER_IS_NULL); + } + vo.setPromTotal(workOrderFiles.size()); + //已解决问题=问题总数 + vo.setPromProcessed(workOrderFiles.size()); + return vo; + }).collect(Collectors.toList()); + pageData.setRecords(collect); + return JsonResult.success(pageData); + } + //数据权限为2本部门及子部门数据列表 + if (RoleEnum.ADMIN.getCode() == user.getDataPermission()) { + //获取部门 + String deptId = user.getDeptId(); + if (StringUtils.isEmpty(deptId)) { + throw new ServiceException(ServiceExceptionEnum.PARAMETER_IS_NULL); + } + //获取当前本部门及子部门数据 + List deptIdList = deptMapper.selectAllChildListById(deptId); + //获取当前分配人对应的工单分页数据 + IPage workPageData1 = workOrderMapper.selectPage(page, Wrappers.lambdaQuery() + .in(WorkOrder::getAssignDeptId, deptIdList) + .eq(WorkOrder::getStatus, 15) + .eq(WorkOrder::getTenantId, tenantId) + .between(null != query.getOrderStartTime() && null != query.getOrderEndTime(), WorkOrder::getCreateTime, query.getOrderStartTime(), query.getOrderEndTime()) + .eq(WorkOrder::getMark, MarkEnum.VALID.getCode()) + .orderByDesc(WorkOrder::getCreateTime)); + //设置每条工单对应的状态问题数量 + List collect1 = workPageData1.getRecords().stream().map(g -> { + WorkOrderInfoVo vo = new WorkOrderInfoVo(); + BeanUtils.copyProperties(g, vo); + //被分配人员对应的id + String assignUser = g.getAssignUser(); + if (StringUtils.isEmpty(assignUser)) { + throw new ServiceException(ServiceExceptionEnum.PARAMETER_IS_NULL); + } + String[] assignUserId = assignUser.split(","); + List list = new ArrayList<>(); + for (String userId : assignUserId) { + User userInfo = userMapper.selectById(userId); + if (ObjectUtil.isNotNull(userInfo)) { + list.add(userInfo.getRealname()); + } + } + String usernames = list.stream().map(String::valueOf).collect(Collectors.joining("、")); + vo.setAssignUserName(usernames); + //问题总数 + List workOrderFiles = workOrderFileMapper.selectList(Wrappers.lambdaQuery() + .eq(WorkOrderFile::getWorkOrderId, g.getId())); + if (null == workOrderFiles) { + throw new ServiceException(ServiceExceptionEnum.PARAMETER_IS_NULL); + } + vo.setPromTotal(workOrderFiles.size()); + //已解决问题=问题总数 + vo.setPromProcessed(workOrderFiles.size()); + return vo; + }).collect(Collectors.toList()); + pageData.setRecords(collect1); + return JsonResult.success(pageData); + } + + //3普通用户 + if(RoleEnum.ORDINARY_USER.getCode() == user.getDataPermission()){ + //获取部门 + String deptId = user.getDeptId(); + if (StringUtils.isEmpty(deptId)) { + throw new ServiceException(ServiceExceptionEnum.PARAMETER_IS_NULL); + } + //获取当前分配人对应的工单分页数据 + IPage workPageData1 = workOrderMapper.selectPage(page, Wrappers.lambdaQuery() + .eq(WorkOrder::getAssignDeptId, deptId) + .eq(WorkOrder::getStatus, 15) + .eq(WorkOrder::getTenantId, tenantId) + .between(null != query.getOrderStartTime() && null != query.getOrderEndTime(), WorkOrder::getCreateTime, query.getOrderStartTime(), query.getOrderEndTime()) + .eq(WorkOrder::getMark, MarkEnum.VALID.getCode()) + .orderByDesc(WorkOrder::getCreateTime)); + //设置每条工单对应的状态问题数量 + List collect2 = workPageData1.getRecords().stream().map(g -> { + WorkOrderInfoVo vo = new WorkOrderInfoVo(); + BeanUtils.copyProperties(g, vo); + //被分配人员对应的id + String assignUser = g.getAssignUser(); + if (StringUtils.isEmpty(assignUser)) { + throw new ServiceException(ServiceExceptionEnum.PARAMETER_IS_NULL); + } + String[] assignUserId = assignUser.split(","); + List list = new ArrayList<>(); + for (String userId : assignUserId) { + User userInfo = userMapper.selectById(userId); + if (ObjectUtil.isNotNull(userInfo)) { + list.add(userInfo.getRealname()); + } + } + String usernames = list.stream().map(String::valueOf).collect(Collectors.joining("、")); + vo.setAssignUserName(usernames); + //问题总数 + List workOrderFiles = workOrderFileMapper.selectList(Wrappers.lambdaQuery() + .eq(WorkOrderFile::getWorkOrderId, g.getId())); + if (null == workOrderFiles) { + throw new ServiceException(ServiceExceptionEnum.PARAMETER_IS_NULL); + } + vo.setPromTotal(workOrderFiles.size()); + //已解决问题=问题总数 + vo.setPromProcessed(workOrderFiles.size()); + return vo; + }).collect(Collectors.toList()); + pageData.setRecords(collect2); + return JsonResult.success(pageData); + } + + return JsonResult.error(WorkOrderEnum.DATA_IS_NULL.getCode(), WorkOrderEnum.DATA_IS_NULL.getMsg()); + } + + /** * 已完成工单 * -- 2.27.0 From f711b9fcecb299b9009a68a5ada5dd94ec4b2537 Mon Sep 17 00:00:00 2001 From: chenlu Date: Thu, 16 May 2024 17:14:50 +0800 Subject: [PATCH 13/39] =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8F=E5=B7=A5?= =?UTF-8?q?=E5=8D=95=20=E6=A8=A1=E5=9D=97=E5=8A=9F=E8=83=BD=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../miniprogram/service/impl/WorkOrderServiceImpl.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java index bb53af2..4330685 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java @@ -572,7 +572,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl workPageData1 = workOrderMapper.selectPage(page, Wrappers.lambdaQuery() .in(WorkOrder::getAssignDeptId, deptIdList) - .eq(WorkOrder::getStatus, 15) + .eq(WorkOrder::getStatus, 11) .eq(WorkOrder::getTenantId, tenantId) .between(null != query.getOrderStartTime() && null != query.getOrderEndTime(), WorkOrder::getCreateTime, query.getOrderStartTime(), query.getOrderEndTime()) .eq(WorkOrder::getMark, MarkEnum.VALID.getCode()) @@ -621,7 +621,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl workPageData1 = workOrderMapper.selectPage(page, Wrappers.lambdaQuery() .eq(WorkOrder::getAssignDeptId, deptId) - .eq(WorkOrder::getStatus, 15) + .eq(WorkOrder::getStatus, 11) .eq(WorkOrder::getTenantId, tenantId) .between(null != query.getOrderStartTime() && null != query.getOrderEndTime(), WorkOrder::getCreateTime, query.getOrderStartTime(), query.getOrderEndTime()) .eq(WorkOrder::getMark, MarkEnum.VALID.getCode()) -- 2.27.0 From 53cee99711881ca466496223629dfbd149012c33 Mon Sep 17 00:00:00 2001 From: chenlu Date: Fri, 17 May 2024 10:39:16 +0800 Subject: [PATCH 14/39] =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8F=20=E5=8E=86?= =?UTF-8?q?=E5=8F=B2=E5=B7=A5=E5=8D=95=E5=8A=9F=E8=83=BD=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E4=B8=8EPC=E7=AB=AF=E4=B8=80=E8=87=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/InspectionFileMapper.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/resources/mapper/InspectionFileMapper.xml b/tuoheng-service/tuoheng-miniprogram/src/main/resources/mapper/InspectionFileMapper.xml index b54fed4..e2163ff 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/resources/mapper/InspectionFileMapper.xml +++ b/tuoheng-service/tuoheng-miniprogram/src/main/resources/mapper/InspectionFileMapper.xml @@ -21,8 +21,8 @@ tfh.audit_time as auditTime from th_inspection_file as tf - left join th_inspection_file_handle AS tfh on tf.id = tfh.inspection_file_id - where tf.mark =1 and tfh.mark=1 + left join th_inspection_file_handle AS tfh on tf.id = tfh.inspection_file_id and tfh.mark=1 + where tf.mark =1 and tf.id=#{id} -- 2.27.0 From ecc38a35f406a103f18472c26601e4126919cd72 Mon Sep 17 00:00:00 2001 From: chenlu Date: Fri, 17 May 2024 10:55:34 +0800 Subject: [PATCH 15/39] =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8F=20=E5=8E=86?= =?UTF-8?q?=E5=8F=B2=E5=B7=A5=E5=8D=95=E5=8A=9F=E8=83=BD=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E4=B8=8EPC=E7=AB=AF=E4=B8=80=E8=87=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../miniprogram/service/impl/InspectionFileServiceImpl.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileServiceImpl.java index 98320da..f9ebc4e 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileServiceImpl.java @@ -310,6 +310,12 @@ public class InspectionFileServiceImpl implements IInspectionFileService { User user = userMapper.selectById(handleUserId); vo.setHandlerUser(user.getRealname()); } + //将空数据转化为"" + if (Objects.isNull(vo.getHandlerResult())){ + vo.setHandlerResult(""); + vo.setHandlerTime(""); + vo.setHandlerUser(""); + } return JsonResult.success(vo); -- 2.27.0 From 1621c632d48fabc3f623d028811ea58ac7281841 Mon Sep 17 00:00:00 2001 From: wanghaoran Date: Sat, 25 May 2024 16:03:09 +0800 Subject: [PATCH 16/39] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=8E=B7=E5=8F=96hlcga?= =?UTF-8?q?dmin=E7=94=A8=E6=88=B7token=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tuoheng/admin/constant/OidcConstant.java | 27 ++++ .../admin/controller/OidcLoginController.java | 28 ++++ .../tuoheng/admin/dto/ProfileResultDto.java | 21 +++ .../com/tuoheng/admin/dto/TokenResultDto.java | 25 ++++ .../admin/service/oidc/OidcLoginService.java | 8 ++ .../oidc/impl/OidcLoginServiceImpl.java | 123 ++++++++++++++++++ 6 files changed, 232 insertions(+) create mode 100644 tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/constant/OidcConstant.java create mode 100644 tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/controller/OidcLoginController.java create mode 100644 tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/dto/ProfileResultDto.java create mode 100644 tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/dto/TokenResultDto.java create mode 100644 tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/oidc/OidcLoginService.java create mode 100644 tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/oidc/impl/OidcLoginServiceImpl.java diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/constant/OidcConstant.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/constant/OidcConstant.java new file mode 100644 index 0000000..d7508f0 --- /dev/null +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/constant/OidcConstant.java @@ -0,0 +1,27 @@ +package com.tuoheng.admin.constant; + +import lombok.Data; + +/** + * oidc相关授权接口 + * @Author xiaoying + * @Date 2023/11/10 13:55 + */ +@Data +public class OidcConstant { + + public static final String OIDC_DOMAIN = "https://oidc.t-aaron.com"; + + public static final String OAUTH2_TOKEN = "/oauth2/token"; + + public static final String GET_USERINFO = "/user/getInfo"; + + public static final String HLCG_USERNAME = "hlcgadmin"; + + public static final String HLCG_PASSWORD = "thjs2023"; + + public static final String CLIENT_ID = "tuoheng-telecomumale-admin"; + + public static final String CLIENT_SECRET = "{noop}TiPUwzVk5H4qgjwXrMynMg=="; + +} diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/controller/OidcLoginController.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/controller/OidcLoginController.java new file mode 100644 index 0000000..bce8de1 --- /dev/null +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/controller/OidcLoginController.java @@ -0,0 +1,28 @@ +package com.tuoheng.admin.controller; + +import com.tuoheng.admin.service.oidc.OidcLoginService; +import com.tuoheng.common.core.utils.JsonResult; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +@RequestMapping("/OidcLogin") +@Slf4j +public class OidcLoginController { + + @Autowired + private OidcLoginService loginService; + + /** + * + *登录 + * @return + */ + @GetMapping("/authorize") + public JsonResult authorize() { + return loginService.authorize(); + } +} diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/dto/ProfileResultDto.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/dto/ProfileResultDto.java new file mode 100644 index 0000000..458e586 --- /dev/null +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/dto/ProfileResultDto.java @@ -0,0 +1,21 @@ +package com.tuoheng.admin.dto; + +import lombok.Data; + +import java.util.List; + +/** + * @Author xiaoying + * @Date 2023/11/11 13:20 + */ +@Data +public class ProfileResultDto { + + private String sub; + private List authority; + private String userId; + private String userName; + private List clientRoleList; + private String azp; + +} diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/dto/TokenResultDto.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/dto/TokenResultDto.java new file mode 100644 index 0000000..d4a87c0 --- /dev/null +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/dto/TokenResultDto.java @@ -0,0 +1,25 @@ +package com.tuoheng.admin.dto; + +import lombok.Data; + +import java.util.List; + +/** + * @Author xiaoying + * @Date 2023/11/10 14:11 + */ +@Data +public class TokenResultDto { + + private String access_token; + private String refresh_token; + private String scope; + private String token_type; + private String expires_in; + private String userId; + private String userName; + private String sub; + private List authorityList; + private List clientRoleDtoList; + private ProfileResultDto profile; +} diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/oidc/OidcLoginService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/oidc/OidcLoginService.java new file mode 100644 index 0000000..b12b48b --- /dev/null +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/oidc/OidcLoginService.java @@ -0,0 +1,8 @@ +package com.tuoheng.admin.service.oidc; + +import com.tuoheng.common.core.utils.JsonResult; + +public interface OidcLoginService { + + JsonResult authorize(); +} diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/oidc/impl/OidcLoginServiceImpl.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/oidc/impl/OidcLoginServiceImpl.java new file mode 100644 index 0000000..3b567f4 --- /dev/null +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/oidc/impl/OidcLoginServiceImpl.java @@ -0,0 +1,123 @@ +package com.tuoheng.admin.service.oidc.impl; + +import com.alibaba.fastjson.JSONObject; +import com.tuoheng.admin.constant.OidcConstant; +import com.tuoheng.admin.dto.ClientRoleDto; +import com.tuoheng.admin.dto.ProfileResultDto; +import com.tuoheng.admin.dto.TokenResultDto; +import com.tuoheng.admin.service.oidc.OidcLoginService; +import com.tuoheng.common.core.utils.JsonResult; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.core.ParameterizedTypeReference; +import org.springframework.http.*; +import org.springframework.stereotype.Service; +import org.springframework.util.LinkedMultiValueMap; +import org.springframework.util.MultiValueMap; +import org.springframework.web.client.RestTemplate; + +import java.util.Base64; +import java.util.List; + +@Service +@Slf4j +public class OidcLoginServiceImpl implements OidcLoginService { + + @Autowired + private RestTemplate restTemplate; + + /** + * 根据第三方授权验证token 进行获取用户信息并跳转相关地址 + * + * @return + */ + @Override + public JsonResult authorize() { + String username = OidcConstant.HLCG_USERNAME; + String password = OidcConstant.HLCG_PASSWORD; + + //通过oidc的密码模式获取授权token 等相关信息数据 + TokenResultDto tokenResult = getToken(username,password); + tokenResult.setUserName(username); + //此时通过token获取当前用户的相关权限信息并进行封装 + tokenResult = getClientResult(tokenResult, username); + //数据封装完毕返回数据 以及相关地址 -> 是否重定向 + return JsonResult.success(tokenResult); + } + + /** + * 通过账号密码获取token + */ + private TokenResultDto getToken(String username, String password) { + + + String url = OidcConstant.OIDC_DOMAIN + OidcConstant.OAUTH2_TOKEN; + MultiValueMap params = new LinkedMultiValueMap<>(); + params.add("password", password); + //定死账号密码 + params.add("username", username); + params.add("grant_type", "password"); + params.add("scope", "openid profile"); + //机场标识 + String clientSecret = OidcConstant.CLIENT_SECRET.split("}")[1]; + String userMsg = OidcConstant.CLIENT_ID + ":" + clientSecret; + String authorization = Base64.getEncoder().encodeToString(userMsg.getBytes()); + + ParameterizedTypeReference parameterizedTypeReference = + new ParameterizedTypeReference() { + }; + + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(MediaType.APPLICATION_FORM_URLENCODED); + headers.add("Authorization", "Basic " + authorization); + HttpEntity> httpEntity = new HttpEntity(params, headers); + + ResponseEntity response = restTemplate.exchange(url, HttpMethod.POST, httpEntity, parameterizedTypeReference); + return response.getBody(); + } + + /** + * 获取对应用户的相关信息 + * + * @param tokenResult + * @return + */ + private TokenResultDto getClientResult(TokenResultDto tokenResult, String username) { + + String url = OidcConstant.OIDC_DOMAIN + OidcConstant.GET_USERINFO; + + ParameterizedTypeReference> parameterizedTypeReference = + new ParameterizedTypeReference>() { + }; + + HttpHeaders header = new HttpHeaders(); + header.add("Authorization", "Bearer " + tokenResult.getAccess_token()); + JSONObject object = new JSONObject(); + object.put("username", tokenResult.getUserName()); + HttpEntity httpEntity = new HttpEntity(object, header); + + ResponseEntity> exchange = restTemplate.exchange(url, HttpMethod.POST, httpEntity, parameterizedTypeReference); + + TokenResultDto result = exchange.getBody().getData(); + //封装数据 + List authorityList = result.getAuthorityList(); + List clientRoleDtoList = result.getClientRoleDtoList(); + tokenResult.setAuthorityList(authorityList); + tokenResult.setClientRoleDtoList(clientRoleDtoList); + tokenResult.setSub(result.getUserName()); + tokenResult.setUserId(result.getUserId()); + tokenResult.setUserName(result.getUserName()); + ProfileResultDto profile = new ProfileResultDto(); + BeanUtils.copyProperties(tokenResult, profile); + profile.setSub(username); + profile.setAzp(OidcConstant.CLIENT_ID); + profile.setAuthority(authorityList); + profile.setClientRoleList(clientRoleDtoList); + tokenResult.setProfile(profile); + + return tokenResult; + + } + +} -- 2.27.0 From c3df65dfefed881f9599442c941a793ebf83c920 Mon Sep 17 00:00:00 2001 From: wanghaoran Date: Sat, 25 May 2024 16:05:57 +0800 Subject: [PATCH 17/39] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E5=9C=B0=E5=9D=80=EF=BC=8C=E9=A9=BC=E5=B3=B0=E5=91=BD=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/tuoheng/admin/controller/OidcLoginController.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/controller/OidcLoginController.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/controller/OidcLoginController.java index bce8de1..f68f3a4 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/controller/OidcLoginController.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/controller/OidcLoginController.java @@ -9,7 +9,7 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController -@RequestMapping("/OidcLogin") +@RequestMapping("/oidcLogin") @Slf4j public class OidcLoginController { -- 2.27.0 From 44ce61ec943c4470d3235b8508bafd11aa55fac2 Mon Sep 17 00:00:00 2001 From: wanghaoran Date: Mon, 27 May 2024 12:15:28 +0800 Subject: [PATCH 18/39] =?UTF-8?q?oidc=E5=9F=9F=E5=90=8D=20=E7=A7=BB?= =?UTF-8?q?=E5=88=B0=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/tuoheng/admin/constant/OidcConstant.java | 2 -- .../admin/service/oidc/impl/OidcLoginServiceImpl.java | 10 ++++++---- .../src/main/resources/application-dev.yml | 4 ++++ .../src/main/resources/application-local.yml | 6 +++++- .../src/main/resources/application-prod.yml | 6 +++++- .../src/main/resources/application-test.yml | 6 +++++- 6 files changed, 25 insertions(+), 9 deletions(-) diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/constant/OidcConstant.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/constant/OidcConstant.java index d7508f0..f733373 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/constant/OidcConstant.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/constant/OidcConstant.java @@ -10,8 +10,6 @@ import lombok.Data; @Data public class OidcConstant { - public static final String OIDC_DOMAIN = "https://oidc.t-aaron.com"; - public static final String OAUTH2_TOKEN = "/oauth2/token"; public static final String GET_USERINFO = "/user/getInfo"; diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/oidc/impl/OidcLoginServiceImpl.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/oidc/impl/OidcLoginServiceImpl.java index 3b567f4..3c7a6f0 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/oidc/impl/OidcLoginServiceImpl.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/oidc/impl/OidcLoginServiceImpl.java @@ -10,6 +10,7 @@ import com.tuoheng.common.core.utils.JsonResult; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.core.ParameterizedTypeReference; import org.springframework.http.*; import org.springframework.stereotype.Service; @@ -24,6 +25,9 @@ import java.util.List; @Slf4j public class OidcLoginServiceImpl implements OidcLoginService { + @Value("${oauth2.token.issuer}") + private String tokenIssuer; + @Autowired private RestTemplate restTemplate; @@ -52,14 +56,12 @@ public class OidcLoginServiceImpl implements OidcLoginService { private TokenResultDto getToken(String username, String password) { - String url = OidcConstant.OIDC_DOMAIN + OidcConstant.OAUTH2_TOKEN; + String url = tokenIssuer + OidcConstant.OAUTH2_TOKEN; MultiValueMap params = new LinkedMultiValueMap<>(); params.add("password", password); - //定死账号密码 params.add("username", username); params.add("grant_type", "password"); params.add("scope", "openid profile"); - //机场标识 String clientSecret = OidcConstant.CLIENT_SECRET.split("}")[1]; String userMsg = OidcConstant.CLIENT_ID + ":" + clientSecret; String authorization = Base64.getEncoder().encodeToString(userMsg.getBytes()); @@ -85,7 +87,7 @@ public class OidcLoginServiceImpl implements OidcLoginService { */ private TokenResultDto getClientResult(TokenResultDto tokenResult, String username) { - String url = OidcConstant.OIDC_DOMAIN + OidcConstant.GET_USERINFO; + String url = tokenIssuer + OidcConstant.GET_USERINFO; ParameterizedTypeReference> parameterizedTypeReference = new ParameterizedTypeReference>() { diff --git a/tuoheng-service/tuoheng-admin/src/main/resources/application-dev.yml b/tuoheng-service/tuoheng-admin/src/main/resources/application-dev.yml index 5f794ae..f47cc1e 100644 --- a/tuoheng-service/tuoheng-admin/src/main/resources/application-dev.yml +++ b/tuoheng-service/tuoheng-admin/src/main/resources/application-dev.yml @@ -208,3 +208,7 @@ aliyun: tzhl: url: http://221.230.150.241:8889/prod-api ticket: b6hd+ymZb5bY//0wNMJZsA== + +oauth2: + token: + issuer: https://oidc.t-aaron.com diff --git a/tuoheng-service/tuoheng-admin/src/main/resources/application-local.yml b/tuoheng-service/tuoheng-admin/src/main/resources/application-local.yml index 00a26e4..56b713c 100644 --- a/tuoheng-service/tuoheng-admin/src/main/resources/application-local.yml +++ b/tuoheng-service/tuoheng-admin/src/main/resources/application-local.yml @@ -203,4 +203,8 @@ aliyun: # 泰州海陵区城管 tzhl: url: http://221.230.150.241:8889/prod-api - ticket: b6hd+ymZb5bY//0wNMJZsA== \ No newline at end of file + ticket: b6hd+ymZb5bY//0wNMJZsA== + +oauth2: + token: + issuer: http://127.0.0.1:8090 \ No newline at end of file diff --git a/tuoheng-service/tuoheng-admin/src/main/resources/application-prod.yml b/tuoheng-service/tuoheng-admin/src/main/resources/application-prod.yml index 62ab7c5..01d0d4f 100644 --- a/tuoheng-service/tuoheng-admin/src/main/resources/application-prod.yml +++ b/tuoheng-service/tuoheng-admin/src/main/resources/application-prod.yml @@ -207,4 +207,8 @@ aliyun: # 泰州海陵区城管 tzhl: url: http://221.230.150.241:8889/prod-api - ticket: b6hd+ymZb5bY//0wNMJZsA== \ No newline at end of file + ticket: b6hd+ymZb5bY//0wNMJZsA== + +oauth2: + token: + issuer: https://oidc.t-aaron.com \ No newline at end of file diff --git a/tuoheng-service/tuoheng-admin/src/main/resources/application-test.yml b/tuoheng-service/tuoheng-admin/src/main/resources/application-test.yml index 2e46d51..55b9abf 100644 --- a/tuoheng-service/tuoheng-admin/src/main/resources/application-test.yml +++ b/tuoheng-service/tuoheng-admin/src/main/resources/application-test.yml @@ -207,4 +207,8 @@ aliyun: # 泰州海陵区城管 tzhl: url: http://221.230.150.241:8889/prod-api - ticket: b6hd+ymZb5bY//0wNMJZsA== \ No newline at end of file + ticket: b6hd+ymZb5bY//0wNMJZsA== + +oauth2: + token: + issuer: https://login-test.t-aaron.com \ No newline at end of file -- 2.27.0 From c6b1340f2f2e4e4b70b03d00d3476729be558289 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=92=90?= Date: Thu, 20 Jun 2024 14:09:21 +0800 Subject: [PATCH 19/39] =?UTF-8?q?=E5=B7=A5=E5=8D=95=E9=97=AE=E9=A2=98=20?= =?UTF-8?q?=E4=BA=8C=E6=9C=9F=E6=96=B0=E9=9C=80=E6=B1=82=200620?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/InspectionFileCheckRecord.java | 93 ++++++++++++++++++ .../com/tuoheng/admin/entity/WorkOrder.java | 2 +- .../admin/enums/WorkOrderStatusEnum.java | 2 + .../InspectionFileCheckRecordMapper.java | 18 ++++ .../IInspectionFileCheckRecordsService.java | 20 ++++ ...InspectionFileCheckRecordsServiceImpl.java | 40 ++++++++ .../InspectionFileServiceImpl.java | 40 ++++++-- ...ctionFilePageListByWorkOrderIdService.java | 44 ++++++--- .../vo/inspection/InspectionFileHandleVo.java | 6 ++ .../vo/workorder/WorkOrderPageListVo.java | 2 +- .../dao/InspectionFileCheckRecordMapper.java | 9 ++ .../entity/InspectionFileCheckRecord.java | 94 +++++++++++++++++++ .../IInspectionFileCheckRecordsService.java | 20 ++++ ...InspectionFileCheckRecordsServiceImpl.java | 42 +++++++++ .../impl/InspectionFileServiceImpl.java | 15 +++ .../tuoheng/miniprogram/vo/SeeQuestionVo.java | 7 +- 16 files changed, 432 insertions(+), 22 deletions(-) create mode 100644 tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/InspectionFileCheckRecord.java create mode 100644 tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/mapper/InspectionFileCheckRecordMapper.java create mode 100644 tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/IInspectionFileCheckRecordsService.java create mode 100644 tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileCheckRecordsServiceImpl.java create mode 100644 tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/dao/InspectionFileCheckRecordMapper.java create mode 100644 tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/entity/InspectionFileCheckRecord.java create mode 100644 tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/IInspectionFileCheckRecordsService.java create mode 100644 tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileCheckRecordsServiceImpl.java diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/InspectionFileCheckRecord.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/InspectionFileCheckRecord.java new file mode 100644 index 0000000..68a7df9 --- /dev/null +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/InspectionFileCheckRecord.java @@ -0,0 +1,93 @@ +package com.tuoheng.admin.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; + +/** + * 巡检问题处理结果对象 + * + * @team tuoheng + * @author chenlu + * @date 2024-06-20 + */ +@Data +@Accessors(chain = true) +@TableName("th_inspection_file_check_record") +public class InspectionFileCheckRecord { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id", type = IdType.AUTO) + private String id; + + /** + * 问题处理结果表id + */ + private String inspectionFileHandleId; + + /** + * 租户ID + */ + private String tenantId; + + /** + * 巡检问题文件ID + */ + private String inspectionFileId; + + /** + * 审核结果 0未审核 1合适 2不合适 + */ + private Integer audit; + + /** + * 审核意见 + */ + private String auditView; + + /** + * 审核时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8") + private Date auditTime; + + /** + * 添加人 + */ + private String createUser; + + /** + * 创建时间 + */ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date createTime; + + /** + * 更新人 + */ + private String updateUser; + + /** + * 更新时间 + */ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date updateTime; + + /** + * 有效标识 + */ + private Integer mark; + +} diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/WorkOrder.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/WorkOrder.java index 20ac969..d4505bb 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/WorkOrder.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/WorkOrder.java @@ -42,7 +42,7 @@ public class WorkOrder extends BaseEntity { /** * 更新前 (工单状态:5待分配 10处理中(已分配) 15已完成) - * 更新后 工单状态:5待分配 10处理中(问题未全部处理) 11待审核(问题已经处理完) 15已完成 + * 更新后 工单状态:5待分配 10处理中(问题未全部处理) 11待审核(问题已经处理完) 12审核驳回 15已完成 */ private Integer status; diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/enums/WorkOrderStatusEnum.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/enums/WorkOrderStatusEnum.java index 993773d..f762f34 100755 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/enums/WorkOrderStatusEnum.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/enums/WorkOrderStatusEnum.java @@ -16,6 +16,8 @@ public enum WorkOrderStatusEnum { PENDING_REVIEW(11,"待审核"), + PENDING_REJECT(12,"审核驳回"), + COMPLETED(15,"已完成"); WorkOrderStatusEnum(int code, String description){ diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/mapper/InspectionFileCheckRecordMapper.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/mapper/InspectionFileCheckRecordMapper.java new file mode 100644 index 0000000..34675bc --- /dev/null +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/mapper/InspectionFileCheckRecordMapper.java @@ -0,0 +1,18 @@ +package com.tuoheng.admin.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.tuoheng.admin.entity.InspectionFileCheckRecord; + +/** + * 巡检问题处理结果Mapper接口 + * + * @team tuoheng + * @author wanjing + * @date 2022-11-23 + */ +public interface InspectionFileCheckRecordMapper extends BaseMapper { + + + + +} diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/IInspectionFileCheckRecordsService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/IInspectionFileCheckRecordsService.java new file mode 100644 index 0000000..db90999 --- /dev/null +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/IInspectionFileCheckRecordsService.java @@ -0,0 +1,20 @@ +package com.tuoheng.admin.service.inspectionfile; + + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.tuoheng.admin.entity.InspectionFileCheckRecord; + +import java.util.List; + +/** + * @Author ChengWang + * @Date 2022/11/29 + */ +public interface IInspectionFileCheckRecordsService { + + Boolean insert(InspectionFileCheckRecord inspectionFileCheckRecord); + + + //查询历史审核记录表 + List list(LambdaQueryWrapper queryWrapper); +} diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileCheckRecordsServiceImpl.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileCheckRecordsServiceImpl.java new file mode 100644 index 0000000..e83d077 --- /dev/null +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileCheckRecordsServiceImpl.java @@ -0,0 +1,40 @@ +package com.tuoheng.admin.service.inspectionfile; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.tuoheng.admin.entity.InspectionFileCheckRecord; +import com.tuoheng.admin.mapper.InspectionFileCheckRecordMapper; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 任务问题管理 前端控制器 + * + * @Author ChengWang + * @Date 2022/11/29 + */ +@Service +@Slf4j +public class InspectionFileCheckRecordsServiceImpl implements IInspectionFileCheckRecordsService { + + @Autowired + private InspectionFileCheckRecordMapper inspectionFileCheckRecordMapper; + + //新增审核记录 + public Boolean insert(InspectionFileCheckRecord inspectionFileCheckRecord){ + int insert = inspectionFileCheckRecordMapper.insert(inspectionFileCheckRecord); + if (insert < 1){ + return false; + } + return true; + } + + //查询历史审核记录表 + public List list(LambdaQueryWrapper queryWrapper){ + return inspectionFileCheckRecordMapper.selectList(queryWrapper); + } + + +} diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileServiceImpl.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileServiceImpl.java index bc29400..6d1fd56 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileServiceImpl.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileServiceImpl.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.tuoheng.admin.entity.Inspection; import com.tuoheng.admin.entity.InspectionFile; +import com.tuoheng.admin.entity.InspectionFileCheckRecord; import com.tuoheng.admin.entity.InspectionFileHandle; import com.tuoheng.admin.entity.QuestionType; import com.tuoheng.admin.entity.Report; @@ -50,6 +51,7 @@ import org.springframework.web.bind.annotation.RequestBody; import org.springframework.transaction.annotation.Transactional; +import javax.annotation.Resource; import java.util.ArrayList; import java.util.Collections; import java.util.Date; @@ -124,6 +126,9 @@ public class InspectionFileServiceImpl implements IInspectionFileService { @Autowired private WorkOrderFileMapper workOrderFileMapper; + @Resource + private IInspectionFileCheckRecordsService inspectionFileCheckRecordsService; + /** * 问题类型和任务名称 @@ -512,8 +517,9 @@ public class InspectionFileServiceImpl implements IInspectionFileService { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.eq( InspectionFileHandle::getInspectionFileId, request.getInspectionFileId()); queryWrapper.eq( InspectionFileHandle::getMark, MarkEnum.VALID.getCode() ); + queryWrapper.in( InspectionFileHandle::getAudit, AuditEnum.ZERO.getCode(), AuditEnum.TWO.getCode()); InspectionFileHandle inspectionFileHandle = inspectionFileHandleMapper.selectOne(queryWrapper); - if (Objects.isNull(inspectionFileHandle) || !inspectionFileHandle.getAudit().equals(0)){ + if (Objects.isNull(inspectionFileHandle)){ log.info("问题单未处理/或者已审核,inspectionFileId:{}", request.getInspectionFileId()); return JsonResult.error(InspectionFileProcessingCodeEnum.PROCESSING_IS_FAILED.getCode(), InspectionFileProcessingCodeEnum.INSPECTION_FILE_HANDLE_ISERROR.getMsg()); } @@ -526,6 +532,16 @@ public class InspectionFileServiceImpl implements IInspectionFileService { log.info("修改问题处理单失败,inspectionFileId:{}", request.getInspectionFileId()); return JsonResult.error(InspectionFileProcessingCodeEnum.PROCESSING_IS_FAILED.getCode(), InspectionFileProcessingCodeEnum.PROCESSING_IS_FAILED.getMsg()); } + //保存一下 审核的历史记录 此处逻辑调整 审核状态一张表 + 审核记录一张表 + InspectionFileCheckRecord inspectionFileCheckRecord = new InspectionFileCheckRecord(); + BeanUtils.copyProperties(inspectionFileHandle, inspectionFileCheckRecord); + inspectionFileCheckRecord.setId(null); + inspectionFileCheckRecord.setInspectionFileHandleId(inspectionFileHandle.getId()); + Boolean aBoolean = inspectionFileCheckRecordsService.insert(inspectionFileCheckRecord); + if (!aBoolean){ + log.info("新增审核记录失败,inspectionFileCheckRecord:{}", inspectionFileCheckRecord); + return JsonResult.error(InspectionFileProcessingCodeEnum.PROCESSING_IS_FAILED.getCode(), InspectionFileProcessingCodeEnum.PROCESSING_IS_FAILED.getMsg()); + } //判断处理工单的状态 JsonResult jsonResult = workOrderUpdateStatus(userId, request); return jsonResult; @@ -551,16 +567,26 @@ public class InspectionFileServiceImpl implements IInspectionFileService { //查询所有的审核单的数据 List idList = inspectionFileHandles.stream().map(InspectionFileHandle::getInspectionFileId).collect(Collectors.toList()); - //如果这条审核的数据+原始数据 = 所有问题单 代表所有问题均审核 修改工单状态为已完成 反之不做修改 + //1.如果没有全部审核完 是待审核不做更改 2.如果全部审核完 2.1有一条审核不通过是审核驳回 2.2全部通过是已完成 if (workOrderFileList.size() != idList.size()){ return JsonResult.success(); } - //处理工单表的状态 + //获取审核通过的数量和审核不通过的数量 + List auditList = inspectionFileHandles.stream().filter(item -> item.getAudit().equals(AuditEnum.TWO.getCode())) + .map(InspectionFileHandle::getInspectionFileId).collect(Collectors.toList()); WorkOrder workOrder = new WorkOrder(); - workOrder.setId(request.getWorkOrderId()); - workOrder.setStatus(WorkOrderStatusEnum.COMPLETED.getCode()); - workOrder.setUpdateUser(userId); - workOrder.setUpdateTime(DateUtils.now()); + if (auditList.size() > 0){ + workOrder.setId(request.getWorkOrderId()); + workOrder.setStatus(WorkOrderStatusEnum.PENDING_REJECT.getCode()); + workOrder.setUpdateUser(userId); + workOrder.setUpdateTime(DateUtils.now()); + }else { + workOrder.setId(request.getWorkOrderId()); + workOrder.setStatus(WorkOrderStatusEnum.COMPLETED.getCode()); + workOrder.setUpdateUser(userId); + workOrder.setUpdateTime(DateUtils.now()); + } + //处理工单表的状态 Integer rowCount = workOrderMapper.update(workOrder); if (rowCount <= 0) { log.info("更新工单状态失败,workOrderId:{}", request.getWorkOrderId()); diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java index efd3d44..e136f10 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java @@ -10,6 +10,7 @@ import com.tuoheng.admin.enums.code.inspection.QueryInspectionPageListCodeEnum; import com.tuoheng.admin.enums.code.inspectionfile.QueryInspectionFilePageListByWorkOrderIdCodeEnum; import com.tuoheng.admin.mapper.*; import com.tuoheng.admin.request.inspectionfile.QueryInspectionFileWorkOrderPageListRequest; +import com.tuoheng.admin.service.inspectionfile.IInspectionFileCheckRecordsService; import com.tuoheng.admin.utils.CurrentUserUtil; import com.tuoheng.admin.vo.inspection.InspectionFileHandleVo; import com.tuoheng.common.core.config.common.CommonConfig; @@ -18,7 +19,9 @@ import com.tuoheng.common.core.utils.StringUtils; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; +import javax.annotation.Resource; import java.util.*; import java.util.function.Function; import java.util.stream.Collectors; @@ -57,6 +60,9 @@ public class QueryInspectionFilePageListByWorkOrderIdService { @Autowired private WorkOrderFileMapper workOrderFileMapper; + @Resource + private IInspectionFileCheckRecordsService inspectionFileCheckRecordsService; + public JsonResult getPageList(QueryInspectionFileWorkOrderPageListRequest request) { log.info("进入根据工单ID查询工单问题列表表业务, workOrderId:{}", request.getWorkOrderId()); JsonResult result = this.check(request.getWorkOrderId()); @@ -87,14 +93,14 @@ public class QueryInspectionFilePageListByWorkOrderIdService { .in(InspectionFile::getId, inspectionFileIdList) .eq(InspectionFile::getTenantId, tenantId) .eq(InspectionFile::getMark, 1)); - //查询问题单子表审核时间 意见等信息 - List inspectionFileHandles = inspectionFileHandleMapper.selectList(new LambdaQueryWrapper() - .in(InspectionFileHandle::getInspectionFileId, inspectionFileIdList) - .eq(InspectionFileHandle::getTenantId, tenantId) - .eq(InspectionFileHandle::getMark, 1)); +// //查询问题单子表审核时间 意见等信息 +// List inspectionFileHandles = inspectionFileHandleMapper.selectList(new LambdaQueryWrapper() +// .in(InspectionFileHandle::getInspectionFileId, inspectionFileIdList) +// .eq(InspectionFileHandle::getTenantId, tenantId) +// .eq(InspectionFileHandle::getMark, 1)); // 构造返回结果对象 - List inspectionFileHandleVoList = this.buildInspectionFileHandleVoList(request.getWorkOrderId(), inspectionFileIdList, inspectionFileList, inspectionFileHandles); + List inspectionFileHandleVoList = this.buildInspectionFileHandleVoList(request.getWorkOrderId(), inspectionFileIdList, inspectionFileList); // 重写返回结果对象 IPage inspectionFilePageListVoPageData = new Page<>(); @@ -135,22 +141,32 @@ public class QueryInspectionFilePageListByWorkOrderIdService { * * @return */ - private List buildInspectionFileHandleVoList(String workOrderId, List inspectionFileIdList, List inspectionFileList, List inspectionFileHandles) { + private List buildInspectionFileHandleVoList(String workOrderId, List inspectionFileIdList, List inspectionFileList) { Map questionTypeMap = this.getQuestionTypeMap(); List inspectionFileHandleList = this.getInspectionFileHandleList(inspectionFileIdList); Map inspectionFileHandleMap = this.getInspectionFileHandleMap(inspectionFileHandleList); Map inspectionFileHandleUserMap = this.getInspectionFileHandleUserMap(inspectionFileHandleList); + //子表信息处理 + Map detailMap = new HashMap<>(); + //历史审核记录 + Map> checkRecordMap = new HashMap<>(); + if (!CollectionUtil.isEmpty(inspectionFileHandleList)){ + detailMap = inspectionFileHandleList.stream().collect(Collectors.toMap(InspectionFileHandle::getInspectionFileId, a -> a)); + //查询历史审核记录表 + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.in(InspectionFileCheckRecord::getInspectionFileId, inspectionFileIdList); + queryWrapper.orderByDesc(InspectionFileCheckRecord::getCreateTime); + List list = inspectionFileCheckRecordsService.list(queryWrapper); + if (!CollectionUtils.isEmpty(list)){ + checkRecordMap = list.stream().collect(Collectors.groupingBy(InspectionFileCheckRecord::getInspectionFileId)); + } + } List inspectionFileHandleVoList = new ArrayList<>(); InspectionFileHandleVo inspectionFileHandleVo; User user; QuestionType questionType; InspectionFileHandle inspectionFileHandle; - //子表信息处理 - Map detailMap = new HashMap<>(); - if (!CollectionUtil.isEmpty(inspectionFileHandles)){ - detailMap = inspectionFileHandles.stream().collect(Collectors.toMap(InspectionFileHandle::getInspectionFileId, a -> a)); - } for (InspectionFile inspectionFile : inspectionFileList) { inspectionFileHandleVo = new InspectionFileHandleVo(); //处理明细表审核数据 @@ -162,6 +178,10 @@ public class QueryInspectionFilePageListByWorkOrderIdService { }else { inspectionFileHandleVo.setAudit(0); } + //处理明细表历史审核数据 + if (!CollectionUtils.isEmpty(checkRecordMap) && !CollectionUtils.isEmpty( checkRecordMap.get(inspectionFile.getId()) )){ + inspectionFileHandleVo.setList( checkRecordMap.get(inspectionFile.getId()) ); + } inspectionFileHandleVo.setWorkOrderId(workOrderId); inspectionFileHandleVo.setInspectionFileId(inspectionFile.getId()); inspectionFileHandleVo.setStatus(inspectionFile.getStatus()); diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/inspection/InspectionFileHandleVo.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/inspection/InspectionFileHandleVo.java index 5a96624..355f09f 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/inspection/InspectionFileHandleVo.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/inspection/InspectionFileHandleVo.java @@ -1,6 +1,7 @@ package com.tuoheng.admin.vo.inspection; import com.fasterxml.jackson.annotation.JsonFormat; +import com.tuoheng.admin.entity.InspectionFileCheckRecord; import lombok.Data; import java.util.Date; @@ -123,4 +124,9 @@ public class InspectionFileHandleVo { @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8") private Date auditTime; + /** + * 历史审核记录 + */ + private List list; + } diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/workorder/WorkOrderPageListVo.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/workorder/WorkOrderPageListVo.java index 8998aec..4319e33 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/workorder/WorkOrderPageListVo.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/workorder/WorkOrderPageListVo.java @@ -27,7 +27,7 @@ public class WorkOrderPageListVo { private String code; /** - * 工单状态:5待分配 10处理中(已分配) 11待审核 15已完成 + * 工单状态:5待分配 10处理中(已分配) 11待审核 12审核驳回 15已完成 */ private Integer status; diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/dao/InspectionFileCheckRecordMapper.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/dao/InspectionFileCheckRecordMapper.java new file mode 100644 index 0000000..788fba9 --- /dev/null +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/dao/InspectionFileCheckRecordMapper.java @@ -0,0 +1,9 @@ +package com.tuoheng.miniprogram.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.tuoheng.miniprogram.entity.InspectionFileCheckRecord; + +public interface InspectionFileCheckRecordMapper extends BaseMapper { + + +} diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/entity/InspectionFileCheckRecord.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/entity/InspectionFileCheckRecord.java new file mode 100644 index 0000000..5e06bb4 --- /dev/null +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/entity/InspectionFileCheckRecord.java @@ -0,0 +1,94 @@ +package com.tuoheng.miniprogram.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; +import lombok.experimental.Accessors; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; + +/** + * 巡检问题处理结果对象 + * + * @team tuoheng + * @author chenlu + * @date 2024-06-20 + */ +@Data +@Accessors(chain = true) +@TableName("th_inspection_file_check_record") +public class InspectionFileCheckRecord { + + private static final long serialVersionUID = 1L; + + /** + * 主键ID + */ + @TableId(value = "id", type = IdType.AUTO) + private String id; + + /** + * 问题处理结果表id + */ + private String inspectionFileHandleId; + + /** + * 租户ID + */ + private String tenantId; + + /** + * 巡检问题文件ID + */ + private String inspectionFileId; + + /** + * 审核结果 0未审核 1合适 2不合适 + */ + private Integer audit; + + /** + * 审核意见 + */ + private String auditView; + + /** + * 审核时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8") + private Date auditTime; + + /** + * 添加人 + */ + private String createUser; + + /** + * 创建时间 + */ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date createTime; + + /** + * 更新人 + */ + private String updateUser; + + /** + * 更新时间 + */ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date updateTime; + + /** + * 有效标识 + */ + private Integer mark; + +} + diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/IInspectionFileCheckRecordsService.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/IInspectionFileCheckRecordsService.java new file mode 100644 index 0000000..a11d3a7 --- /dev/null +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/IInspectionFileCheckRecordsService.java @@ -0,0 +1,20 @@ +package com.tuoheng.miniprogram.service; + + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.tuoheng.common.core.common.IBaseService; +import com.tuoheng.miniprogram.entity.InspectionFileCheckRecord; + +import java.util.List; + +/** + * @Author ChengWang + * @Date 2022/11/29 + */ +public interface IInspectionFileCheckRecordsService { + + Boolean insert(InspectionFileCheckRecord inspectionFileCheckRecord); + + //查询历史审核记录表 + List list(LambdaQueryWrapper queryWrapper); +} diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileCheckRecordsServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileCheckRecordsServiceImpl.java new file mode 100644 index 0000000..c71ac0d --- /dev/null +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileCheckRecordsServiceImpl.java @@ -0,0 +1,42 @@ +package com.tuoheng.miniprogram.service.impl; + + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.tuoheng.common.core.common.BaseServiceImpl; +import com.tuoheng.miniprogram.dao.InspectionFileCheckRecordMapper; +import com.tuoheng.miniprogram.entity.InspectionFileCheckRecord; +import com.tuoheng.miniprogram.service.IInspectionFileCheckRecordsService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 任务问题管理 前端控制器 + * + * @Author ChengWang + * @Date 2022/11/29 + */ +@Service +@Slf4j +public class InspectionFileCheckRecordsServiceImpl implements IInspectionFileCheckRecordsService { + + @Autowired + private InspectionFileCheckRecordMapper inspectionFileCheckRecordMapper; + + //新增审核记录 + public Boolean insert(InspectionFileCheckRecord inspectionFileCheckRecord){ + int insert = inspectionFileCheckRecordMapper.insert(inspectionFileCheckRecord); + if (insert < 1){ + return false; + } + return true; + } + + //查询历史审核记录表 + public List list(LambdaQueryWrapper queryWrapper){ + return inspectionFileCheckRecordMapper.selectList(queryWrapper); + } + +} diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileServiceImpl.java index f9ebc4e..5be68ec 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileServiceImpl.java @@ -8,6 +8,7 @@ import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.tuoheng.common.core.config.common.CommonConfig; @@ -24,6 +25,7 @@ import com.tuoheng.miniprogram.entity.query.InspectionFileQuery; import com.tuoheng.miniprogram.enums.InspectionFileEnum; import com.tuoheng.miniprogram.enums.MarkEnum; import com.tuoheng.miniprogram.enums.RoleEnum; +import com.tuoheng.miniprogram.service.IInspectionFileCheckRecordsService; import com.tuoheng.miniprogram.service.IInspectionFileService; import com.tuoheng.miniprogram.utils.CurrentUserUtil; import com.tuoheng.miniprogram.vo.InspectionFileCountVo; @@ -35,6 +37,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import javax.annotation.Resource; import java.text.ParseException; import java.util.*; import java.util.stream.Collectors; @@ -66,6 +69,9 @@ public class InspectionFileServiceImpl implements IInspectionFileService { @Autowired private LegMapper legMapper; + @Resource + private IInspectionFileCheckRecordsService inspectionFileCheckRecordsService; + /** * 待确认问题 status状态为5 * @@ -289,6 +295,15 @@ public class InspectionFileServiceImpl implements IInspectionFileService { if (ObjectUtil.isNull(vo)) { return JsonResult.error("未查询出对应的问题及处理结果"); } + + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(InspectionFileCheckRecord::getInspectionFileId, id); + queryWrapper.orderByDesc(InspectionFileCheckRecord::getCreateTime); + List list = inspectionFileCheckRecordsService.list(queryWrapper); + if (CollectionUtils.isNotEmpty(list)){ + vo.setList(list); + } + //对属性处理 if (StringUtils.isNotEmpty(vo.getFileImage())) { vo.setFileImage(CommonConfig.imageURL + vo.getFileImage()); diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/SeeQuestionVo.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/SeeQuestionVo.java index 7e7f755..b680114 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/SeeQuestionVo.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/SeeQuestionVo.java @@ -1,9 +1,11 @@ package com.tuoheng.miniprogram.vo; import com.fasterxml.jackson.annotation.JsonFormat; +import com.tuoheng.miniprogram.entity.InspectionFileCheckRecord; import lombok.Data; import java.util.Date; +import java.util.List; /** * @Author ChengWang @@ -73,6 +75,9 @@ public class SeeQuestionVo { @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss" , timezone = "GMT+8") private Date auditTime; - + /** + * 审核记录 + */ + private List list; } -- 2.27.0 From 7a58a83a5b43bd6e2fbc1702f4affbc192a336f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=92=90?= Date: Fri, 21 Jun 2024 09:22:50 +0800 Subject: [PATCH 20/39] =?UTF-8?q?=E5=B7=A5=E5=8D=95=E9=97=AE=E9=A2=98=20?= =?UTF-8?q?=E5=AE=A1=E6=89=B9=E9=A9=B3=E5=9B=9E=E5=90=8E=E7=9A=84=E9=87=8D?= =?UTF-8?q?=E6=96=B0=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...nspectionFileProcessingRresultRequest.java | 10 +++ .../InspectionFileProcessingService.java | 82 ++++++++++++++++--- ...ctionFilePageListByWorkOrderIdService.java | 4 +- .../vo/inspection/InspectionFileHandleVo.java | 5 ++ 4 files changed, 87 insertions(+), 14 deletions(-) diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/request/inspectionfile/InspectionFileProcessingRresultRequest.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/request/inspectionfile/InspectionFileProcessingRresultRequest.java index a685641..0247aaf 100755 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/request/inspectionfile/InspectionFileProcessingRresultRequest.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/request/inspectionfile/InspectionFileProcessingRresultRequest.java @@ -22,6 +22,11 @@ public class InspectionFileProcessingRresultRequest { */ private String inspectionFileId; + /** + * 巡检问题处理结果表ID + */ + private String inspectionFileHandleId; + /** * 处理结果 */ @@ -31,4 +36,9 @@ public class InspectionFileProcessingRresultRequest { * 处理后图片(多个图片逗号“,”分隔) */ private String handlerImage; + + /** + * 巡检问题文件IDList + */ + private String inspectionFileIdList; } diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/processing/InspectionFileProcessingService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/processing/InspectionFileProcessingService.java index 8adda6b..73a9d8b 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/processing/InspectionFileProcessingService.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/processing/InspectionFileProcessingService.java @@ -3,12 +3,14 @@ package com.tuoheng.admin.service.inspectionfile.processing; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.tuoheng.admin.entity.*; +import com.tuoheng.admin.enums.AuditEnum; import com.tuoheng.admin.enums.InspectionFileStatusEnum; import com.tuoheng.admin.enums.MarkEnum; import com.tuoheng.admin.enums.WorkOrderStatusEnum; import com.tuoheng.admin.enums.code.inspectionfilehandle.InspectionFileProcessingCodeEnum; import com.tuoheng.admin.mapper.*; import com.tuoheng.admin.request.inspectionfile.InspectionFileProcessingRresultRequest; +import com.tuoheng.admin.service.inspectionfile.IInspectionFileCheckRecordsService; import com.tuoheng.admin.utils.CurrentUserUtil; import com.tuoheng.common.core.utils.DateUtils; import com.tuoheng.common.core.utils.JsonResult; @@ -17,7 +19,10 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; +import javax.annotation.Resource; +import java.util.Date; import java.util.List; import java.util.stream.Collectors; @@ -44,6 +49,9 @@ public class InspectionFileProcessingService { @Autowired private WorkOrderFileMapper workOrderFileMapper; + @Resource + private IInspectionFileCheckRecordsService inspectionFileCheckRecordsService; + @Transactional public JsonResult processing(InspectionFileProcessingRresultRequest request) { log.info("进入任务问题处理业务:inspectionFileId:{}", request.getInspectionFileId()); @@ -51,26 +59,30 @@ public class InspectionFileProcessingService { User user = CurrentUserUtil.getUserInfo(); String userId = user.getId(); String tenantId = user.getTenantId(); - - JsonResult result = this.check(request); + //问题+工单校验 此处逻辑修改 如果是审核驳回的 是可以进行问题重新处理的 + WorkOrder workOrder = new WorkOrder(); + JsonResult result = this.check(request, workOrder); if (0 != result.getCode()) { log.info("进入任务问题处理业务:校验失败:{}", result.getMsg()); return result; } - - result = this.addInspectionFileHandle(userId, tenantId, request); - if (0 != result.getCode()) { - log.info("进入任务问题处理业务:处理失败:{}", result.getMsg()); - return result; + //审核驳回直接修改问题处理单 问题第一次处理 反之新增 + if (workOrder.getStatus().equals(WorkOrderStatusEnum.PENDING_REJECT.getCode())){ + result = this.updateInspectionFileHandle(userId, tenantId, request); + }else { + result = this.addInspectionFileHandle(userId, tenantId, request); + if (0 != result.getCode()) { + log.info("进入任务问题处理业务:处理失败:{}", result.getMsg()); + return result; + } } - result = this.updateInspectionFileStatus(userId, request); if (0 != result.getCode()) { log.info("进入任务问题处理业务:更新任务问题状态失败:{}", result.getMsg()); return result; } - result = this.updateNewWorkOrderStatus(userId, request); + result = this.updateNewWorkOrderStatus(userId, request, workOrder); if (0 != result.getCode()) { log.info("进入任务问题处理业务:更新工单状态失败:{}", result.getMsg()); return result; @@ -78,13 +90,24 @@ public class InspectionFileProcessingService { return JsonResult.success(); } + //判断是否是审核驳回后的处理 + private Boolean checkAudit(InspectionFileProcessingRresultRequest request) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(InspectionFileCheckRecord::getInspectionFileId, request.getInspectionFileId()); + List list = inspectionFileCheckRecordsService.list(queryWrapper); + if (CollectionUtils.isEmpty(list)){ + return false; + } + return true; + } + /** * 检查参数 * * @param request * @return */ - private JsonResult check(InspectionFileProcessingRresultRequest request) { + private JsonResult check(InspectionFileProcessingRresultRequest request, WorkOrder newWorker) { // 判断工单id是否为空 if (StringUtils.isEmpty(request.getWorkOrderId())) { return JsonResult.error(InspectionFileProcessingCodeEnum.WORK_ORDER_ID_IS_NULL.getCode(), InspectionFileProcessingCodeEnum.WORK_ORDER_ID_IS_NULL.getMsg()); @@ -96,6 +119,7 @@ public class InspectionFileProcessingService { if (ObjectUtil.isEmpty(workOrder)) { return JsonResult.error(InspectionFileProcessingCodeEnum.WORK_ORDER_IS_NOT_EXIST.getCode(), InspectionFileProcessingCodeEnum.WORK_ORDER_IS_NOT_EXIST.getMsg()); } + newWorker.setStatus(workOrder.getStatus()); // 判断任务问题id是否为空 if (StringUtils.isEmpty(request.getInspectionFileId())) { return JsonResult.error(InspectionFileProcessingCodeEnum.INSPECTION_FILE_ID_IS_NULL.getCode(), InspectionFileProcessingCodeEnum.INSPECTION_FILE_ID_IS_NULL.getMsg()); @@ -108,6 +132,10 @@ public class InspectionFileProcessingService { log.info("任务问题不存在,inspectionFileId:{}", request.getInspectionFileId()); return JsonResult.error(InspectionFileProcessingCodeEnum.INSPECTION_FILE_IS_NOT_EXIST.getCode(), InspectionFileProcessingCodeEnum.INSPECTION_FILE_IS_NOT_EXIST.getMsg()); } + //如果是审核驳回 则不需要判断是否已处理 + if (workOrder.getStatus().equals(WorkOrderStatusEnum.PENDING_REJECT.getCode())){ + return JsonResult.success(inspectionFile); + } InspectionFileHandle inspectionFileHandle = inspectionFileHandleMapper.selectOne(new LambdaQueryWrapper() .eq(InspectionFileHandle::getInspectionFileId, request.getInspectionFileId()) .eq(InspectionFileHandle::getMark, MarkEnum.VALID.getCode())); @@ -139,6 +167,33 @@ public class InspectionFileProcessingService { return JsonResult.success(); } + /** + * 更新任务问题处理结果 + */ + private JsonResult updateInspectionFileHandle(String userId, String tenantId, InspectionFileProcessingRresultRequest request) { + InspectionFileHandle inspectionFileHandle = new InspectionFileHandle(); + inspectionFileHandle.setId(request.getInspectionFileHandleId()); + inspectionFileHandle.setTenantId(tenantId); + inspectionFileHandle.setInspectionFileId(request.getInspectionFileId()); + inspectionFileHandle.setHandlerUser(userId); + inspectionFileHandle.setHandlerImage(request.getHandlerImage()); + inspectionFileHandle.setHandlerResult(request.getHandlerResult()); + inspectionFileHandle.setHandlerTime(DateUtils.now()); + inspectionFileHandle.setAudit(AuditEnum.ZERO.getCode()); + inspectionFileHandle.setAuditView(""); + Date date = null; + inspectionFileHandle.setAuditTime(date); + inspectionFileHandle.setCreateUser(userId); + inspectionFileHandle.setCreateTime(DateUtils.now()); + Integer rowCount = inspectionFileHandleMapper.updateById(inspectionFileHandle); + if (rowCount <= 0) { + log.info("任务问题处理失败,inspectionFileId:{}", request.getInspectionFileId()); + return JsonResult.error(InspectionFileProcessingCodeEnum.PROCESSING_IS_FAILED.getCode(), InspectionFileProcessingCodeEnum.PROCESSING_IS_FAILED.getMsg()); + } + return JsonResult.success(); + } + + /** * 更新任务问题状态 */ @@ -187,15 +242,16 @@ public class InspectionFileProcessingService { * 更新工单状态 —— 更新 * 当工单关联的任务问题都被处理完时,将工单状态改为待审核 反之处理中 */ - private JsonResult updateNewWorkOrderStatus(String userId, InspectionFileProcessingRresultRequest request) { + private JsonResult updateNewWorkOrderStatus(String userId, InspectionFileProcessingRresultRequest request, WorkOrder newWorker) { //巡检问题工单子表 List workOrderFileList = workOrderFileMapper.selectList(new LambdaQueryWrapper() .eq(WorkOrderFile::getWorkOrderId, request.getWorkOrderId())); List inspectionFileIdList = workOrderFileList.stream().map(o -> o.getInspectionFileId()).collect(Collectors.toList()); //巡检问题处理结果表 Integer count = inspectionFileHandleMapper.selectCount(new LambdaQueryWrapper() - .in(InspectionFileHandle::getInspectionFileId, inspectionFileIdList)); - if (workOrderFileList.size() > count) { + .in(InspectionFileHandle::getInspectionFileId, inspectionFileIdList) + .in(InspectionFileHandle::getAudit, AuditEnum.ZERO.getCode(), AuditEnum.ONE.getCode())); + if (newWorker.getStatus().equals(WorkOrderStatusEnum.PENDING_REJECT.getCode()) && workOrderFileList.size() > count || workOrderFileList.size() > count) { return JsonResult.success(); } //处理工单表的状态 diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java index e136f10..1b49bda 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java @@ -71,7 +71,8 @@ public class QueryInspectionFilePageListByWorkOrderIdService { return result; } - String tenantId = CurrentUserUtil.getTenantId(); + //String tenantId = CurrentUserUtil.getTenantId(); + String tenantId = "f9c3de911d228b6e51eafb510aeaea7d"; // 设置分页参数 IPage page = new Page<>(request.getPage(), request.getLimit()); @@ -217,6 +218,7 @@ public class QueryInspectionFilePageListByWorkOrderIdService { handlerImages = handlerImages.substring(0, handlerImages.length() - 1); inspectionFileHandleVo.setHandlerImages(handlerImages); } + inspectionFileHandleVo.setInspectionFileHandleId(inspectionFileHandle.getId()); inspectionFileHandleVo.setHandlerUser(inspectionFileHandle.getHandlerUser()); inspectionFileHandleVo.setHandlerTime(inspectionFileHandle.getHandlerTime()); inspectionFileHandleVo.setHandlerResult(inspectionFileHandle.getHandlerResult()); diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/inspection/InspectionFileHandleVo.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/inspection/InspectionFileHandleVo.java index 355f09f..6800566 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/inspection/InspectionFileHandleVo.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/vo/inspection/InspectionFileHandleVo.java @@ -52,6 +52,11 @@ public class InspectionFileHandleVo { */ private String fileOriginal; + /** + * 问题单处理Id + */ + private String inspectionFileHandleId; + /** * 处理人ID */ -- 2.27.0 From 9cb3c699ebf77db10653cb524c3301e1cc5c1c15 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=92=90?= Date: Fri, 21 Jun 2024 09:35:56 +0800 Subject: [PATCH 21/39] =?UTF-8?q?=E5=B7=A5=E5=8D=95=E9=97=AE=E9=A2=98=20?= =?UTF-8?q?=E4=BB=A3=E5=8A=9E=E5=B7=A5=E5=8D=95=E6=9F=A5=E8=AF=A2=20?= =?UTF-8?q?=E5=AE=A1=E6=A0=B8=E9=A9=B3=E5=9B=9E=E7=9A=84=E5=B7=A5=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../miniprogram/service/impl/WorkOrderServiceImpl.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java index 4330685..42b5d9e 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java @@ -179,7 +179,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl workPageData = workOrderMapper.selectPage(page, Wrappers.lambdaQuery() - .eq(WorkOrder::getStatus, 5) + .in(WorkOrder::getStatus, 5, 12) .eq(WorkOrder::getTenantId, tenantId) .between(null != query.getOrderStartTime() && null != query.getOrderEndTime(), WorkOrder::getCreateTime, query.getOrderStartTime(), query.getOrderEndTime()) .eq(WorkOrder::getMark, MarkEnum.VALID.getCode()) @@ -215,7 +215,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl workPageData = workOrderMapper.selectPage(page, Wrappers.lambdaQuery() - .eq(WorkOrder::getStatus, 5) + .in(WorkOrder::getStatus, 5, 12) .in(WorkOrder::getDeptId,deptIdList) .eq(WorkOrder::getTenantId, tenantId) .between(null != query.getOrderStartTime() && null != query.getOrderEndTime(), WorkOrder::getCreateTime, query.getOrderStartTime(), query.getOrderEndTime()) @@ -244,7 +244,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl workPageData = workOrderMapper.selectPage(page, Wrappers.lambdaQuery() - .eq(WorkOrder::getStatus, 5) + .in(WorkOrder::getStatus, 5, 12) .eq(WorkOrder::getDeptId,deptId) .eq(WorkOrder::getTenantId, tenantId) .between(null != query.getOrderStartTime() && null != query.getOrderEndTime(), WorkOrder::getCreateTime, query.getOrderStartTime(), query.getOrderEndTime()) -- 2.27.0 From 86df1ff367318dcbea0b08775307f32b0c0447de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=92=90?= Date: Fri, 21 Jun 2024 13:19:23 +0800 Subject: [PATCH 22/39] =?UTF-8?q?=E5=B7=A5=E5=8D=95=E9=97=AE=E9=A2=98=20?= =?UTF-8?q?=E5=B7=A5=E5=8D=95=E5=B0=8F=E7=A8=8B=E5=BA=8F=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...ctionFilePageListByWorkOrderIdService.java | 3 +- .../entity/InspectionFileHandle.java | 15 +++++++ .../entity/dto/UploadResultDto.java | 5 +++ .../tuoheng/miniprogram/enums/AuditEnum.java | 31 +++++++++++++ .../enums/WorkOrderStatusEnum.java | 1 + .../impl/InspectionFileHandleServiceImpl.java | 39 ++++++++++------ .../service/impl/WorkOrderServiceImpl.java | 44 ++++++++++++++++++- .../miniprogram/vo/WorkOrderHandleVo.java | 14 ++++++ 8 files changed, 135 insertions(+), 17 deletions(-) create mode 100644 tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/enums/AuditEnum.java diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java index 1b49bda..8be44fd 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java @@ -71,8 +71,7 @@ public class QueryInspectionFilePageListByWorkOrderIdService { return result; } - //String tenantId = CurrentUserUtil.getTenantId(); - String tenantId = "f9c3de911d228b6e51eafb510aeaea7d"; + String tenantId = CurrentUserUtil.getTenantId(); // 设置分页参数 IPage page = new Page<>(request.getPage(), request.getLimit()); diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/entity/InspectionFileHandle.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/entity/InspectionFileHandle.java index 6cc7c71..a9868e9 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/entity/InspectionFileHandle.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/entity/InspectionFileHandle.java @@ -55,6 +55,21 @@ public class InspectionFileHandle extends BaseEntity { @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date handlerTime; + /** + * 审核结果 0未审核 1合适 2不合适 + */ + private Integer audit; + + /** + * 审核意见 + */ + private String auditView; + + /** + * 审核时间 + */ + private Date auditTime; + } diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/entity/dto/UploadResultDto.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/entity/dto/UploadResultDto.java index 66dfca5..37251a2 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/entity/dto/UploadResultDto.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/entity/dto/UploadResultDto.java @@ -24,6 +24,11 @@ public class UploadResultDto { */ private String tenantId; + /** + * 巡检问题处理结果表ID + */ + private String inspectionFileHandleId; + /** * 处理结果的图片,多张用,隔开 */ diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/enums/AuditEnum.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/enums/AuditEnum.java new file mode 100644 index 0000000..a9968b5 --- /dev/null +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/enums/AuditEnum.java @@ -0,0 +1,31 @@ +package com.tuoheng.miniprogram.enums; + +import lombok.Getter; + +/** + * 工单状态类型 + * + * @author chenlu + * @team tuoheng + * @date 2022-12-07 + * 审核结果 0未审核 1合适 2不合适 + */ +public enum AuditEnum { + + ZERO(0,"未审核"), + ONE(1,"合适"), + + TWO(2,"不合适"); + + AuditEnum(int code, String description){ + this.code = code; + this.description = description; + } + + @Getter + private int code; + + @Getter + private String description; + +} diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/enums/WorkOrderStatusEnum.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/enums/WorkOrderStatusEnum.java index 0649e2c..8007a4b 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/enums/WorkOrderStatusEnum.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/enums/WorkOrderStatusEnum.java @@ -9,6 +9,7 @@ public enum WorkOrderStatusEnum { STATUS_ALLOCATED(5, "工单待分配"), STATUS_ASSIGNED(10, "工单处理中已分配"), STATUS_PENDING_REVIEW(11,"待审核"), + PENDING_REJECT(12,"审核驳回"), STATUS_COMPLETED(15, "工单已完成"); /** diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileHandleServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileHandleServiceImpl.java index 8e9bd8d..40ef485 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileHandleServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileHandleServiceImpl.java @@ -11,6 +11,7 @@ import com.tuoheng.common.core.utils.StringUtils; import com.tuoheng.miniprogram.dao.*; import com.tuoheng.miniprogram.entity.*; import com.tuoheng.miniprogram.entity.dto.UploadResultDto; +import com.tuoheng.miniprogram.enums.AuditEnum; import com.tuoheng.miniprogram.enums.InspectionFileHandleEnum; import com.tuoheng.miniprogram.enums.MarkEnum; import com.tuoheng.miniprogram.enums.ServiceExceptionEnum; @@ -64,30 +65,40 @@ public class InspectionFileHandleServiceImpl implements IInspectionFileHandleSer if(StringUtils.isEmpty(user.getTenantId())){ return JsonResult.error(InspectionFileHandleEnum.TENANT_ID_IS_NULL.getCode(),InspectionFileHandleEnum.TENANT_ID_IS_NULL.getMsg()); } - + //查询工单信息 + WorkOrder workOrder = workOrderMapper.selectById(dto.getWorkOrderId()); InspectionFileHandle inspectionFileHandleTmp = inspectionFileHandleMapper.selectOne(new LambdaQueryWrapper() .eq(InspectionFileHandle::getInspectionFileId, dto.getId()) .eq(InspectionFileHandle::getMark, MarkEnum.VALID.getCode())); - if (ObjectUtil.isNotEmpty(inspectionFileHandleTmp)) { + if (ObjectUtil.isNotEmpty(inspectionFileHandleTmp) && !workOrder.getStatus().equals(WorkOrderStatusEnum.PENDING_REJECT.getCode())) { log.info("该问题已处理,不能重复提交,inspectionFileHandleId:{}", inspectionFileHandleTmp.getId()); return JsonResult.error(InspectionFileHandleEnum.INSPECTION_FILE_HANDLE_IS_EXIST.getCode(), InspectionFileHandleEnum.INSPECTION_FILE_HANDLE_IS_EXIST.getMsg()); } //更新问题处理表 InspectionFileHandle inspectionFileHandle = new InspectionFileHandle(); - inspectionFileHandle.setInspectionFileId(dto.getId()); - inspectionFileHandle.setTenantId(user.getTenantId()); inspectionFileHandle.setHandlerImage(dto.getHandlerImage()); inspectionFileHandle.setHandlerResult(dto.getHandlerResult()); inspectionFileHandle.setHandlerTime(DateUtils.now()); inspectionFileHandle.setHandlerUser(user.getId()); - inspectionFileHandle.setCreateUser(user.getId()); - inspectionFileHandle.setCreateTime(DateUtils.now()); inspectionFileHandle.setMark(1); - - - int count = inspectionFileHandleMapper.insert(inspectionFileHandle); - if(count<=0){ - return JsonResult.error(); + //逻辑修改 工单是审核驳回时问题处理单是修改 其他是新增 + if ( workOrder.getStatus().equals(WorkOrderStatusEnum.PENDING_REJECT.getCode()) ){ + inspectionFileHandle.setId(dto.getInspectionFileHandleId()); + inspectionFileHandle.setAudit(AuditEnum.ZERO.getCode()); + inspectionFileHandle.setAuditView(""); + int count = inspectionFileHandleMapper.updateById(inspectionFileHandle); + if(count<=0){ + return JsonResult.error(); + } + }else { + inspectionFileHandle.setInspectionFileId(dto.getId()); + inspectionFileHandle.setTenantId(user.getTenantId()); + inspectionFileHandle.setCreateUser(user.getId()); + inspectionFileHandle.setCreateTime(DateUtils.now()); + int count = inspectionFileHandleMapper.insert(inspectionFileHandle); + if(count<=0){ + return JsonResult.error(); + } } //更新问题表问题状态为已处理 InspectionFile inspectionFile = inspectionFileMapper.selectById(dto.getId()); @@ -112,11 +123,11 @@ public class InspectionFileHandleServiceImpl implements IInspectionFileHandleSer } List inspectionFileList = workOrderFiles.stream().map(o -> o.getInspectionFileId()).collect(Collectors.toList()); Integer inspectionFileHandleCount = inspectionFileHandleMapper.selectCount(new LambdaQueryWrapper() - .in(InspectionFileHandle::getInspectionFileId, inspectionFileList)); - if(workOrderFiles.size()>inspectionFileHandleCount){ + .in(InspectionFileHandle::getInspectionFileId, inspectionFileList) + .in(InspectionFileHandle::getAudit, AuditEnum.ZERO.getCode(), AuditEnum.ONE.getCode())); + if(workOrder.getStatus().equals(WorkOrderStatusEnum.PENDING_REJECT.getCode()) && workOrderFiles.size()>inspectionFileHandleCount){ return JsonResult.success(); } - WorkOrder workOrder = workOrderMapper.selectById(dto.getWorkOrderId()); //此处修改 现阶段问题处理完后 状态改为 11待审核 workOrder.setStatus(WorkOrderStatusEnum.STATUS_PENDING_REVIEW.getCode()); workOrder.setUpdateUser(user.getId()); diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java index 42b5d9e..1016f06 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java @@ -8,6 +8,7 @@ import cn.hutool.core.util.ArrayUtil; import cn.hutool.core.util.ObjectUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.tuoheng.common.core.common.BaseServiceImpl; @@ -57,6 +58,12 @@ public class WorkOrderServiceImpl extends BaseServiceImpl workPageData = workOrderMapper.selectPage(page, Wrappers.lambdaQuery() .eq(WorkOrder::getAssignDeptId, deptId) - .in(WorkOrder::getStatus,10) + .in(WorkOrder::getStatus,10,12) .like(StringUtils.isNotEmpty(user.getId()), WorkOrder::getAssignUser, user.getId()) .eq(WorkOrder::getTenantId, user.getTenantId()) .between(null != query.getOrderStartTime() && null != query.getOrderEndTime(), WorkOrder::getCreateTime, query.getOrderStartTime(), query.getOrderEndTime()) @@ -420,11 +427,46 @@ public class WorkOrderServiceImpl extends BaseServiceImpl inspectionFilePageData = inspectionFileMapper.selectPage(page, Wrappers.lambdaQuery() .in(InspectionFile::getId, inspectionFiledIds)); + //获取工单对应的审核结果和历史审核记录 + List inspectionFileHandles = + inspectionFileHandleMapper.selectList(new LambdaQueryWrapper().in(InspectionFileHandle::getInspectionFileId, inspectionFiledIds)); + //子表信息处理 + Map detailMap = new HashMap<>(); + if (CollectionUtils.isNotEmpty(inspectionFileHandles)){ + + } + List inspectionFileCheckRecords = + inspectionFileCheckRecordMapper.selectList(new LambdaQueryWrapper().in(InspectionFileCheckRecord::getInspectionFileId, inspectionFiledIds) + .orderByDesc(InspectionFileCheckRecord::getCreateTime)); + //历史审核记录 + Map> checkRecordMap = new HashMap<>(); + if (CollectionUtils.isNotEmpty(inspectionFileCheckRecords)){ + + } + List list = inspectionFilePageData.getRecords().stream().map(t -> { WorkOrderHandleVo vo = new WorkOrderHandleVo(); BeanUtils.copyProperties(t, vo); //工单id vo.setWorkOrderId(query.getId()); + + //处理审核结果 + if(CollectionUtils.isNotEmpty(inspectionFileHandles)){ + List inspectionFileHandleList = + inspectionFileHandles.stream().filter(item -> item.getInspectionFileId().equals(t.getId())).collect(Collectors.toList()); + if (Objects.nonNull(inspectionFileHandleList.get(0) )){ + vo.setAudit(inspectionFileHandleList.get(0).getAudit()); + } + } + if ( CollectionUtils.isNotEmpty(inspectionFileCheckRecords) ){ + List inspectionFileCheckRecordList = + inspectionFileCheckRecords.stream().filter(item -> item.getInspectionFileId().equals(t.getId())).collect(Collectors.toList()); + if (CollectionUtils.isNotEmpty(inspectionFileCheckRecordList)){ + vo.setList(inspectionFileCheckRecordList); + } + } + t.getId(); + //缩略图处理 if (StringUtils.isNotEmpty(t.getFileThumbnail())) { vo.setFileThumbnail(CommonConfig.imageURL + t.getFileThumbnail()); diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/WorkOrderHandleVo.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/WorkOrderHandleVo.java index 63edd9b..5d68fae 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/WorkOrderHandleVo.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/WorkOrderHandleVo.java @@ -1,10 +1,12 @@ package com.tuoheng.miniprogram.vo; import com.fasterxml.jackson.annotation.JsonFormat; +import com.tuoheng.miniprogram.entity.InspectionFileCheckRecord; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; import java.util.Date; +import java.util.List; /** * @Author ChengWang @@ -79,4 +81,16 @@ public class WorkOrderHandleVo { * 状态:20已生成工单 25问题已处理 */ private Integer status; + + /** + * 审核结果 0未审核 1合适 2不合适 + */ + private Integer audit; + + /** + * 历史审核记录 + */ + private List list; + + } -- 2.27.0 From 1d85422d6e524da4ee7819657ae6e27f5dcffc71 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=92=90?= Date: Fri, 21 Jun 2024 13:59:12 +0800 Subject: [PATCH 23/39] =?UTF-8?q?=E5=B7=A5=E5=8D=95=E9=97=AE=E9=A2=98=20?= =?UTF-8?q?=E5=B7=A5=E5=8D=95=E5=B0=8F=E7=A8=8B=E5=BA=8F=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/WorkOrderServiceImpl.java | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java index 1016f06..c34bf6d 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java @@ -156,7 +156,14 @@ public class WorkOrderServiceImpl extends BaseServiceImpl workPageData = workOrderMapper.selectPage(page, Wrappers.lambdaQuery() - .in(WorkOrder::getStatus, 5, 12) + .in(WorkOrder::getStatus, 5) .eq(WorkOrder::getTenantId, tenantId) .between(null != query.getOrderStartTime() && null != query.getOrderEndTime(), WorkOrder::getCreateTime, query.getOrderStartTime(), query.getOrderEndTime()) .eq(WorkOrder::getMark, MarkEnum.VALID.getCode()) @@ -222,7 +229,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl workPageData = workOrderMapper.selectPage(page, Wrappers.lambdaQuery() - .in(WorkOrder::getStatus, 5, 12) + .in(WorkOrder::getStatus, 5) .in(WorkOrder::getDeptId,deptIdList) .eq(WorkOrder::getTenantId, tenantId) .between(null != query.getOrderStartTime() && null != query.getOrderEndTime(), WorkOrder::getCreateTime, query.getOrderStartTime(), query.getOrderEndTime()) @@ -251,7 +258,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl workPageData = workOrderMapper.selectPage(page, Wrappers.lambdaQuery() - .in(WorkOrder::getStatus, 5, 12) + .in(WorkOrder::getStatus, 5) .eq(WorkOrder::getDeptId,deptId) .eq(WorkOrder::getTenantId, tenantId) .between(null != query.getOrderStartTime() && null != query.getOrderEndTime(), WorkOrder::getCreateTime, query.getOrderStartTime(), query.getOrderEndTime()) @@ -375,7 +382,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl collect = workOrderList.stream().filter(f -> f.getPromTodo() == 0).collect(Collectors.toList()); + List collect = workOrderList.stream().filter(f -> f.getPromTodo() == 0 && !f.getStatus().equals(WorkOrderStatusEnum.PENDING_REJECT.getCode())).collect(Collectors.toList()); if (null != collect) { for (WorkOrderInfoVo workOrderInfoVo : collect) { //每一个工单对应的状态发生改变,一个工单id对应一个工单 @@ -390,7 +397,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl h.getPromTodo() != 0).collect(Collectors.toList()); + WorkOrderInfoList = workOrderList.stream().filter(h -> h.getPromTodo() != 0 || h.getStatus().equals(WorkOrderStatusEnum.PENDING_REJECT.getCode())).collect(Collectors.toList()); System.out.println("----->"+ WorkOrderInfoList); -- 2.27.0 From 94b0cc81c06820ab94822bc20b18ce842ec61f1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=92=90?= Date: Fri, 21 Jun 2024 14:09:16 +0800 Subject: [PATCH 24/39] =?UTF-8?q?=E5=B7=A5=E5=8D=95=E9=97=AE=E9=A2=98=20?= =?UTF-8?q?=E5=B7=A5=E5=8D=95=E5=B0=8F=E7=A8=8B=E5=BA=8F=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../miniprogram/service/impl/WorkOrderServiceImpl.java | 4 ++++ .../java/com/tuoheng/miniprogram/vo/WorkOrderHandleVo.java | 5 +++++ 2 files changed, 9 insertions(+) diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java index c34bf6d..398ab2d 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java @@ -457,12 +457,16 @@ public class WorkOrderServiceImpl extends BaseServiceImpl inspectionFileHandleList = inspectionFileHandles.stream().filter(item -> item.getInspectionFileId().equals(t.getId())).collect(Collectors.toList()); if (Objects.nonNull(inspectionFileHandleList.get(0) )){ vo.setAudit(inspectionFileHandleList.get(0).getAudit()); + vo.setInspectionFileHandleId(inspectionFileHandleList.get(0).getId()); } } if ( CollectionUtils.isNotEmpty(inspectionFileCheckRecords) ){ diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/WorkOrderHandleVo.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/WorkOrderHandleVo.java index 5d68fae..23fb28f 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/WorkOrderHandleVo.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/vo/WorkOrderHandleVo.java @@ -82,6 +82,11 @@ public class WorkOrderHandleVo { */ private Integer status; + /** + * 问题单处理Id + */ + private String inspectionFileHandleId; + /** * 审核结果 0未审核 1合适 2不合适 */ -- 2.27.0 From 8f50c3795361078592d81b700749e7ad44e1c351 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=92=90?= Date: Fri, 21 Jun 2024 15:52:37 +0800 Subject: [PATCH 25/39] =?UTF-8?q?=E5=B7=A5=E5=8D=95=E9=97=AE=E9=A2=98=20?= =?UTF-8?q?=E5=B7=A5=E5=8D=95=E5=B0=8F=E7=A8=8B=E5=BA=8F=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/InspectionFileCheckRecord.java | 21 +++++++++++++++++++ .../entity/InspectionFileCheckRecord.java | 21 +++++++++++++++++++ .../impl/InspectionFileHandleServiceImpl.java | 7 +++++++ .../service/impl/WorkOrderServiceImpl.java | 19 +---------------- 4 files changed, 50 insertions(+), 18 deletions(-) diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/InspectionFileCheckRecord.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/InspectionFileCheckRecord.java index 68a7df9..fcdc30b 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/InspectionFileCheckRecord.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/entity/InspectionFileCheckRecord.java @@ -90,4 +90,25 @@ public class InspectionFileCheckRecord { */ private Integer mark; + /** + * 处理人ID + */ + private String handlerUser; + + /** + * 处理后图片(多个图片逗号“,”分隔) + */ + private String handlerImage; + + /** + * 处理结果 + */ + private String handlerResult; + + /** + * 处理完成时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date handlerTime; + } diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/entity/InspectionFileCheckRecord.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/entity/InspectionFileCheckRecord.java index 5e06bb4..1d8b8a1 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/entity/InspectionFileCheckRecord.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/entity/InspectionFileCheckRecord.java @@ -90,5 +90,26 @@ public class InspectionFileCheckRecord { */ private Integer mark; + /** + * 处理人ID + */ + private String handlerUser; + + /** + * 处理后图片(多个图片逗号“,”分隔) + */ + private String handlerImage; + + /** + * 处理结果 + */ + private String handlerResult; + + /** + * 处理完成时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date handlerTime; + } diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileHandleServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileHandleServiceImpl.java index 40ef485..34674ac 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileHandleServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileHandleServiceImpl.java @@ -16,12 +16,15 @@ import com.tuoheng.miniprogram.enums.InspectionFileHandleEnum; import com.tuoheng.miniprogram.enums.MarkEnum; import com.tuoheng.miniprogram.enums.ServiceExceptionEnum; import com.tuoheng.miniprogram.enums.WorkOrderStatusEnum; +import com.tuoheng.miniprogram.service.IInspectionFileCheckRecordsService; import com.tuoheng.miniprogram.service.IInspectionFileHandleService; import com.tuoheng.miniprogram.utils.CurrentUserUtil; import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import javax.annotation.Resource; import java.util.List; import java.util.stream.Collectors; @@ -47,6 +50,10 @@ public class InspectionFileHandleServiceImpl implements IInspectionFileHandleSer @Autowired private WorkOrderFileMapper workOrderFileMapper; + + @Resource + private IInspectionFileCheckRecordsService inspectionFileCheckRecordsService; + /** * 上传结果 * @param dto diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java index 398ab2d..d953eba 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java @@ -156,14 +156,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl inspectionFileHandles = inspectionFileHandleMapper.selectList(new LambdaQueryWrapper().in(InspectionFileHandle::getInspectionFileId, inspectionFiledIds)); - //子表信息处理 - Map detailMap = new HashMap<>(); - if (CollectionUtils.isNotEmpty(inspectionFileHandles)){ - - } List inspectionFileCheckRecords = inspectionFileCheckRecordMapper.selectList(new LambdaQueryWrapper().in(InspectionFileCheckRecord::getInspectionFileId, inspectionFiledIds) .orderByDesc(InspectionFileCheckRecord::getCreateTime)); - //历史审核记录 - Map> checkRecordMap = new HashMap<>(); - if (CollectionUtils.isNotEmpty(inspectionFileCheckRecords)){ - - } List list = inspectionFilePageData.getRecords().stream().map(t -> { WorkOrderHandleVo vo = new WorkOrderHandleVo(); -- 2.27.0 From 7672e7ecbee6f16b0cbf76b99049639766dcf29b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=92=90?= Date: Fri, 21 Jun 2024 16:30:10 +0800 Subject: [PATCH 26/39] =?UTF-8?q?=E5=B7=A5=E5=8D=95=E9=97=AE=E9=A2=98=20PC?= =?UTF-8?q?=E7=AB=AF+=E5=B7=A5=E5=8D=95=E5=B0=8F=E7=A8=8B=E5=BA=8F?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../QueryInspectionHandleReportService.java | 2 ++ .../report/query/QueryReportPageListService.java | 2 ++ .../query/QueryWorkOrderPageListService.java | 16 +++++++++++++--- .../service/impl/WorkOrderServiceImpl.java | 6 ++++++ 4 files changed, 23 insertions(+), 3 deletions(-) diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/report/query/QueryInspectionHandleReportService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/report/query/QueryInspectionHandleReportService.java index fa21da6..f5bc123 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/report/query/QueryInspectionHandleReportService.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/report/query/QueryInspectionHandleReportService.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.tuoheng.admin.conver.InspectionFileConverMapper; import com.tuoheng.admin.conver.ReportConverMapper; import com.tuoheng.admin.entity.*; +import com.tuoheng.admin.enums.AuditEnum; import com.tuoheng.admin.enums.InspectionTypeEnum; import com.tuoheng.admin.enums.MarkEnum; import com.tuoheng.admin.enums.code.report.QueryInspectionReportCodeEnum; @@ -174,6 +175,7 @@ public class QueryInspectionHandleReportService { List inspectionFileHandleList = null; if (!CollectionUtil.isEmpty(inspectionFileIdList)) { inspectionFileHandleList = inspectionFileHandleMapper.selectList(Wrappers.lambdaQuery() + .in(InspectionFileHandle::getAudit, AuditEnum.ONE.getCode()) .in(InspectionFileHandle::getInspectionFileId, inspectionFileIdList) .eq(InspectionFileHandle::getMark, MarkEnum.VALID.getCode())); diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/report/query/QueryReportPageListService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/report/query/QueryReportPageListService.java index 1239dcc..defa3ea 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/report/query/QueryReportPageListService.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/report/query/QueryReportPageListService.java @@ -9,6 +9,7 @@ import com.tuoheng.admin.entity.InspectionFile; import com.tuoheng.admin.entity.InspectionFileHandle; import com.tuoheng.admin.entity.Report; import com.tuoheng.admin.entity.User; +import com.tuoheng.admin.enums.AuditEnum; import com.tuoheng.admin.enums.DataPermissionEnum; import com.tuoheng.admin.enums.MarkEnum; import com.tuoheng.admin.mapper.*; @@ -164,6 +165,7 @@ public class QueryReportPageListService { } if (!CollectionUtil.isEmpty(inspectionFileIdList)) { List inspectionFileHandleList = inspectionFileHandleMapper.selectList(Wrappers.lambdaQuery() + .in(InspectionFileHandle::getAudit, AuditEnum.ONE.getCode()) .in(InspectionFileHandle::getInspectionFileId, inspectionFileIdList) .eq(InspectionFileHandle::getMark, MarkEnum.VALID.getCode())); if (!CollectionUtil.isEmpty(inspectionFileHandleList)) { diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/workorder/query/QueryWorkOrderPageListService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/workorder/query/QueryWorkOrderPageListService.java index 9e7f4d4..f4a4411 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/workorder/query/QueryWorkOrderPageListService.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/workorder/query/QueryWorkOrderPageListService.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.tuoheng.admin.conver.WorkOrderConverMapper; import com.tuoheng.admin.entity.*; +import com.tuoheng.admin.enums.AuditEnum; import com.tuoheng.admin.enums.InspectionFileStatusEnum; import com.tuoheng.admin.enums.DataPermissionEnum; import com.tuoheng.admin.enums.code.inspection.QueryInspectionPageListCodeEnum; @@ -20,6 +21,7 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import javax.annotation.Resource; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -52,6 +54,10 @@ public class QueryWorkOrderPageListService { @Autowired private InspectionFileMapper inspectionFileMapper; + @Resource + private InspectionFileHandleMapper inspectionFileHandleMapper; + + public JsonResult getPageList(QueryWorkOrderPageListRequest request) { log.info("进入查询工单分页列表业务, request:{}", request.toString()); JsonResult result = this.check(request); @@ -158,10 +164,14 @@ public class QueryWorkOrderPageListService { workOrderFileList = workOrderFileMap.get(workOrderPageListVo.getId()); if (!CollectionUtil.isEmpty(workOrderFileList)) { inspectionFileIdList = workOrderFileList.stream().map(o -> o.getInspectionFileId()).collect(Collectors.toList()); - inspectionFileList = inspectionFileMapper.selectBatchIds(inspectionFileIdList); - List inspectionFileListTmp = inspectionFileList.stream().filter(s -> s.getStatus() == InspectionFileStatusEnum.PROCESSED.getCode()).collect(Collectors.toList()); + //inspectionFileList = inspectionFileMapper.selectBatchIds(inspectionFileIdList); + //List inspectionFileListTmp = inspectionFileList.stream().filter(s -> s.getStatus() == InspectionFileStatusEnum.PROCESSED.getCode()).collect(Collectors.toList()); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.in(InspectionFileHandle::getInspectionFileId, inspectionFileIdList); + queryWrapper.eq(InspectionFileHandle::getAudit, AuditEnum.ONE.getCode()); + List inspectionFileHandles = inspectionFileHandleMapper.selectList(queryWrapper); workOrderPageListVo.setProblemTotalCount(workOrderFileList.size()); - workOrderPageListVo.setProcessedProblemCount(inspectionFileListTmp.size()); + workOrderPageListVo.setProcessedProblemCount(inspectionFileHandles.size()); } if (null != dept) { workOrderPageListVo.setDeptName(dept.getName()); diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java index d953eba..95149c2 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java @@ -353,6 +353,12 @@ public class WorkOrderServiceImpl extends BaseServiceImpl inspectionFileList = new ArrayList<>(); for (String inspectionFiledId : inspectionFiledIds) { InspectionFile inspectionFile = inspectionFileMapper.selectById(inspectionFiledId); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(InspectionFileHandle::getInspectionFileId, inspectionFiledId); + InspectionFileHandle inspectionFileHandle = inspectionFileHandleMapper.selectOne(queryWrapper); + if (Objects.nonNull(inspectionFileHandle ) && inspectionFileHandle.getAudit().equals(AuditEnum.TWO.getCode())){ + inspectionFile.setStatus(20); + } inspectionFileList.add(inspectionFile); } if(CollectionUtil.isEmpty(inspectionFileList) || inspectionFileList.size() == 0){ -- 2.27.0 From fb824a0a6e9127a5cef57b4ebe69f91576ad26e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=92=90?= Date: Fri, 21 Jun 2024 17:23:43 +0800 Subject: [PATCH 27/39] =?UTF-8?q?=E5=B7=A5=E5=8D=95=E9=97=AE=E9=A2=98=20PC?= =?UTF-8?q?=E7=AB=AF+=E5=B7=A5=E5=8D=95=E5=B0=8F=E7=A8=8B=E5=BA=8F?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...yInspectionFilePageListByWorkOrderIdService.java | 10 ++++++++++ .../service/impl/InspectionFileServiceImpl.java | 10 ++++++++++ .../service/impl/WorkOrderServiceImpl.java | 13 ++++++++++++- 3 files changed, 32 insertions(+), 1 deletion(-) diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java index 8be44fd..2c818b5 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java @@ -159,6 +159,16 @@ public class QueryInspectionFilePageListByWorkOrderIdService { queryWrapper.orderByDesc(InspectionFileCheckRecord::getCreateTime); List list = inspectionFileCheckRecordsService.list(queryWrapper); if (!CollectionUtils.isEmpty(list)){ + for (InspectionFileCheckRecord inspectionFileCheckRecord : list) { + if (StringUtils.isNotEmpty(inspectionFileCheckRecord.getHandlerImage())){ + String handlerImages = ""; + handlerImages += CommonConfig.imageURL + inspectionFileCheckRecord.getHandlerImage() + ","; + handlerImages = handlerImages.substring(0, handlerImages.length() - 1); + if (StringUtils.isNotEmpty(handlerImages)) { + inspectionFileCheckRecord.setHandlerImage(handlerImages); + } + } + } checkRecordMap = list.stream().collect(Collectors.groupingBy(InspectionFileCheckRecord::getInspectionFileId)); } } diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileServiceImpl.java index 5be68ec..60bf2b0 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileServiceImpl.java @@ -301,6 +301,16 @@ public class InspectionFileServiceImpl implements IInspectionFileService { queryWrapper.orderByDesc(InspectionFileCheckRecord::getCreateTime); List list = inspectionFileCheckRecordsService.list(queryWrapper); if (CollectionUtils.isNotEmpty(list)){ + for (InspectionFileCheckRecord inspectionFileCheckRecord : list) { + if (StringUtils.isNotEmpty(inspectionFileCheckRecord.getHandlerImage())){ + String handlerImages = ""; + handlerImages += CommonConfig.imageURL + inspectionFileCheckRecord.getHandlerImage() + ","; + handlerImages = handlerImages.substring(0, handlerImages.length() - 1); + if (StringUtils.isNotEmpty(handlerImages)) { + inspectionFileCheckRecord.setHandlerImage(handlerImages); + } + } + } vo.setList(list); } diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java index 95149c2..2cb8610 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java @@ -439,7 +439,18 @@ public class WorkOrderServiceImpl extends BaseServiceImpl inspectionFileCheckRecords = inspectionFileCheckRecordMapper.selectList(new LambdaQueryWrapper().in(InspectionFileCheckRecord::getInspectionFileId, inspectionFiledIds) .orderByDesc(InspectionFileCheckRecord::getCreateTime)); - + if (CollectionUtils.isNotEmpty(inspectionFileCheckRecords)){ + for (InspectionFileCheckRecord inspectionFileCheckRecord : inspectionFileCheckRecords) { + if (StringUtils.isNotEmpty(inspectionFileCheckRecord.getHandlerImage())){ + String handlerImages = ""; + handlerImages += CommonConfig.imageURL + inspectionFileCheckRecord.getHandlerImage() + ","; + handlerImages = handlerImages.substring(0, handlerImages.length() - 1); + if (StringUtils.isNotEmpty(handlerImages)) { + inspectionFileCheckRecord.setHandlerImage(handlerImages); + } + } + } + } List list = inspectionFilePageData.getRecords().stream().map(t -> { WorkOrderHandleVo vo = new WorkOrderHandleVo(); BeanUtils.copyProperties(t, vo); -- 2.27.0 From 24d5122115cfbdd4767a7bbb928f412643ddec79 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=92=90?= Date: Fri, 21 Jun 2024 17:54:00 +0800 Subject: [PATCH 28/39] =?UTF-8?q?=E5=B7=A5=E5=8D=95=E9=97=AE=E9=A2=98=20PC?= =?UTF-8?q?=E7=AB=AF+=E5=B7=A5=E5=8D=95=E5=B0=8F=E7=A8=8B=E5=BA=8F?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/workorder/query/QueryWorkOrderPageListService.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/workorder/query/QueryWorkOrderPageListService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/workorder/query/QueryWorkOrderPageListService.java index f4a4411..cbd7af9 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/workorder/query/QueryWorkOrderPageListService.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/workorder/query/QueryWorkOrderPageListService.java @@ -168,7 +168,7 @@ public class QueryWorkOrderPageListService { //List inspectionFileListTmp = inspectionFileList.stream().filter(s -> s.getStatus() == InspectionFileStatusEnum.PROCESSED.getCode()).collect(Collectors.toList()); LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.in(InspectionFileHandle::getInspectionFileId, inspectionFileIdList); - queryWrapper.eq(InspectionFileHandle::getAudit, AuditEnum.ONE.getCode()); + queryWrapper.in(InspectionFileHandle::getAudit, AuditEnum.ZERO.getCode(),AuditEnum.ONE.getCode()); List inspectionFileHandles = inspectionFileHandleMapper.selectList(queryWrapper); workOrderPageListVo.setProblemTotalCount(workOrderFileList.size()); workOrderPageListVo.setProcessedProblemCount(inspectionFileHandles.size()); -- 2.27.0 From a6dfe204609d5ea53ce138825f509d6932e115bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=92=90?= Date: Sat, 22 Jun 2024 10:54:31 +0800 Subject: [PATCH 29/39] =?UTF-8?q?=E5=B7=A5=E5=8D=95=E9=97=AE=E9=A2=98=20PC?= =?UTF-8?q?=E7=AB=AF+=E5=B7=A5=E5=8D=95=E5=B0=8F=E7=A8=8B=E5=BA=8Fbug?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tuoheng-admin/sql/sql_change_20240622.sql | 27 +++++++++++++++++++ .../InspectionFileServiceImpl.java | 11 +++++--- ...ctionFilePageListByWorkOrderIdService.java | 14 ++++++---- .../impl/InspectionFileServiceImpl.java | 13 +++++---- .../service/impl/WorkOrderServiceImpl.java | 13 +++++---- 5 files changed, 59 insertions(+), 19 deletions(-) create mode 100644 tuoheng-service/tuoheng-admin/sql/sql_change_20240622.sql diff --git a/tuoheng-service/tuoheng-admin/sql/sql_change_20240622.sql b/tuoheng-service/tuoheng-admin/sql/sql_change_20240622.sql new file mode 100644 index 0000000..95a3923 --- /dev/null +++ b/tuoheng-service/tuoheng-admin/sql/sql_change_20240622.sql @@ -0,0 +1,27 @@ +-- 20240622 10:37 +-- v1.3.0 + +use tuoheng_telecomumale; + +-- 问题审核记录表 +-- 巡检问题审核结记录表 +CREATE TABLE `th_inspection_file_check_record` ( + `id` int unsigned NOT NULL AUTO_INCREMENT, + `inspection_file_handle_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '巡检问题处理/审核结果id', + `tenant_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '0' COMMENT '租户ID', + `handler_user` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '0' COMMENT '处理人', + `handler_image` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '' COMMENT '处理后图片(多个图片逗号“,”分隔)', + `handler_result` varchar(150) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL DEFAULT '' COMMENT '处理结果', + `handler_time` datetime DEFAULT NULL COMMENT '处理完成时间', + `inspection_file_id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '巡检问题文件ID', + `create_user` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '0' COMMENT '创建人', + `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + `update_user` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '0' COMMENT '更新人', + `update_time` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', + `mark` tinyint unsigned NOT NULL DEFAULT '1' COMMENT '有效标记', + `audit` tinyint unsigned NOT NULL DEFAULT '0' COMMENT '审核状态:0未审核 1合适 2不合适', + `audit_view` varchar(50) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT '审核意见', + `audit_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '审核时间', + PRIMARY KEY (`id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='巡检问题审核结记录表'; + diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileServiceImpl.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileServiceImpl.java index 6d1fd56..01c9e55 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileServiceImpl.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/InspectionFileServiceImpl.java @@ -537,10 +537,13 @@ public class InspectionFileServiceImpl implements IInspectionFileService { BeanUtils.copyProperties(inspectionFileHandle, inspectionFileCheckRecord); inspectionFileCheckRecord.setId(null); inspectionFileCheckRecord.setInspectionFileHandleId(inspectionFileHandle.getId()); - Boolean aBoolean = inspectionFileCheckRecordsService.insert(inspectionFileCheckRecord); - if (!aBoolean){ - log.info("新增审核记录失败,inspectionFileCheckRecord:{}", inspectionFileCheckRecord); - return JsonResult.error(InspectionFileProcessingCodeEnum.PROCESSING_IS_FAILED.getCode(), InspectionFileProcessingCodeEnum.PROCESSING_IS_FAILED.getMsg()); + //审核通过就不需要新增记录 + if (inspectionFileCheckRecord.getAudit().equals(AuditEnum.TWO.getCode())){ + Boolean aBoolean = inspectionFileCheckRecordsService.insert(inspectionFileCheckRecord); + if (!aBoolean){ + log.info("新增审核记录失败,inspectionFileCheckRecord:{}", inspectionFileCheckRecord); + return JsonResult.error(InspectionFileProcessingCodeEnum.PROCESSING_IS_FAILED.getCode(), InspectionFileProcessingCodeEnum.PROCESSING_IS_FAILED.getMsg()); + } } //判断处理工单的状态 JsonResult jsonResult = workOrderUpdateStatus(userId, request); diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java index 2c818b5..a1a537a 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java @@ -162,11 +162,12 @@ public class QueryInspectionFilePageListByWorkOrderIdService { for (InspectionFileCheckRecord inspectionFileCheckRecord : list) { if (StringUtils.isNotEmpty(inspectionFileCheckRecord.getHandlerImage())){ String handlerImages = ""; - handlerImages += CommonConfig.imageURL + inspectionFileCheckRecord.getHandlerImage() + ","; - handlerImages = handlerImages.substring(0, handlerImages.length() - 1); - if (StringUtils.isNotEmpty(handlerImages)) { - inspectionFileCheckRecord.setHandlerImage(handlerImages); + String[] arr = inspectionFileCheckRecord.getHandlerImage().split(","); + List imageList = Arrays.stream(arr).map(String::toString).collect(Collectors.toList()); + for (String str : imageList) { + handlerImages += CommonConfig.imageURL + str + ","; } + inspectionFileCheckRecord.setHandlerImage(handlerImages); } } checkRecordMap = list.stream().collect(Collectors.groupingBy(InspectionFileCheckRecord::getInspectionFileId)); @@ -190,7 +191,10 @@ public class QueryInspectionFilePageListByWorkOrderIdService { } //处理明细表历史审核数据 if (!CollectionUtils.isEmpty(checkRecordMap) && !CollectionUtils.isEmpty( checkRecordMap.get(inspectionFile.getId()) )){ - inspectionFileHandleVo.setList( checkRecordMap.get(inspectionFile.getId()) ); + List inspectionFileCheckRecords = checkRecordMap.get(inspectionFile.getId()); + List newList + = inspectionFileCheckRecords.stream().sorted(Comparator.comparing(InspectionFileCheckRecord::getAuditTime, Comparator.reverseOrder())).collect(Collectors.toList());; + inspectionFileHandleVo.setList( newList ); } inspectionFileHandleVo.setWorkOrderId(workOrderId); inspectionFileHandleVo.setInspectionFileId(inspectionFile.getId()); diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileServiceImpl.java index 60bf2b0..95fd956 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileServiceImpl.java @@ -304,14 +304,17 @@ public class InspectionFileServiceImpl implements IInspectionFileService { for (InspectionFileCheckRecord inspectionFileCheckRecord : list) { if (StringUtils.isNotEmpty(inspectionFileCheckRecord.getHandlerImage())){ String handlerImages = ""; - handlerImages += CommonConfig.imageURL + inspectionFileCheckRecord.getHandlerImage() + ","; - handlerImages = handlerImages.substring(0, handlerImages.length() - 1); - if (StringUtils.isNotEmpty(handlerImages)) { - inspectionFileCheckRecord.setHandlerImage(handlerImages); + String[] arr = inspectionFileCheckRecord.getHandlerImage().split(","); + List imageList = Arrays.stream(arr).map(String::toString).collect(Collectors.toList()); + for (String str : imageList) { + handlerImages += CommonConfig.imageURL + str + ","; } + inspectionFileCheckRecord.setHandlerImage(handlerImages); } } - vo.setList(list); + List newList + = list.stream().sorted(Comparator.comparing(InspectionFileCheckRecord::getAuditTime, Comparator.reverseOrder())).collect(Collectors.toList());; + vo.setList(newList); } //对属性处理 diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java index 2cb8610..74c0593 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java @@ -443,11 +443,12 @@ public class WorkOrderServiceImpl extends BaseServiceImpl imageList = Arrays.stream(arr).map(String::toString).collect(Collectors.toList()); + for (String str : imageList) { + handlerImages += CommonConfig.imageURL + str + ","; } + inspectionFileCheckRecord.setHandlerImage(handlerImages); } } } @@ -473,7 +474,9 @@ public class WorkOrderServiceImpl extends BaseServiceImpl inspectionFileCheckRecordList = inspectionFileCheckRecords.stream().filter(item -> item.getInspectionFileId().equals(t.getId())).collect(Collectors.toList()); if (CollectionUtils.isNotEmpty(inspectionFileCheckRecordList)){ - vo.setList(inspectionFileCheckRecordList); + List newList + = inspectionFileCheckRecordList.stream().sorted(Comparator.comparing(InspectionFileCheckRecord::getAuditTime, Comparator.reverseOrder())).collect(Collectors.toList());; + vo.setList(newList); } } t.getId(); -- 2.27.0 From 2b8b4e5087fb1dbd62cbb3221bd04378794e43a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=92=90?= Date: Sat, 22 Jun 2024 11:15:24 +0800 Subject: [PATCH 30/39] =?UTF-8?q?=E5=B7=A5=E5=8D=95=E9=97=AE=E9=A2=98=20PC?= =?UTF-8?q?=E7=AB=AF+=E5=B7=A5=E5=8D=95=E5=B0=8F=E7=A8=8B=E5=BA=8Fbug?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../query/QueryInspectionFilePageListByWorkOrderIdService.java | 1 + .../miniprogram/service/impl/InspectionFileServiceImpl.java | 1 + .../tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java | 1 + 3 files changed, 3 insertions(+) diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java index a1a537a..85186c3 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/inspectionfile/query/QueryInspectionFilePageListByWorkOrderIdService.java @@ -167,6 +167,7 @@ public class QueryInspectionFilePageListByWorkOrderIdService { for (String str : imageList) { handlerImages += CommonConfig.imageURL + str + ","; } + handlerImages = handlerImages.substring(0, handlerImages.length() - 1); inspectionFileCheckRecord.setHandlerImage(handlerImages); } } diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileServiceImpl.java index 95fd956..a722e7c 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileServiceImpl.java @@ -309,6 +309,7 @@ public class InspectionFileServiceImpl implements IInspectionFileService { for (String str : imageList) { handlerImages += CommonConfig.imageURL + str + ","; } + handlerImages = handlerImages.substring(0, handlerImages.length() - 1); inspectionFileCheckRecord.setHandlerImage(handlerImages); } } diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java index 74c0593..a4c7453 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java @@ -448,6 +448,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl Date: Sat, 22 Jun 2024 15:33:17 +0800 Subject: [PATCH 31/39] =?UTF-8?q?=E5=B7=A5=E5=8D=95=E9=97=AE=E9=A2=98=20?= =?UTF-8?q?=E5=B7=A5=E5=8D=95=E5=B0=8F=E7=A8=8B=E5=BA=8Fbug=E8=B0=83?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/InspectionFileHandleServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileHandleServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileHandleServiceImpl.java index 34674ac..acc2f47 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileHandleServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/InspectionFileHandleServiceImpl.java @@ -132,7 +132,7 @@ public class InspectionFileHandleServiceImpl implements IInspectionFileHandleSer Integer inspectionFileHandleCount = inspectionFileHandleMapper.selectCount(new LambdaQueryWrapper() .in(InspectionFileHandle::getInspectionFileId, inspectionFileList) .in(InspectionFileHandle::getAudit, AuditEnum.ZERO.getCode(), AuditEnum.ONE.getCode())); - if(workOrder.getStatus().equals(WorkOrderStatusEnum.PENDING_REJECT.getCode()) && workOrderFiles.size()>inspectionFileHandleCount){ + if(workOrder.getStatus().equals(WorkOrderStatusEnum.PENDING_REJECT.getCode()) && workOrderFiles.size()>inspectionFileHandleCount || workOrderFiles.size() > inspectionFileHandleCount){ return JsonResult.success(); } //此处修改 现阶段问题处理完后 状态改为 11待审核 -- 2.27.0 From 1f1559591bbfa01e0e7e1e19d89c160a359aa2c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=92=90?= Date: Sat, 22 Jun 2024 15:33:31 +0800 Subject: [PATCH 32/39] =?UTF-8?q?=E5=B7=A5=E5=8D=95=E9=97=AE=E9=A2=98=20?= =?UTF-8?q?=E5=B7=A5=E5=8D=95=E5=B0=8F=E7=A8=8B=E5=BA=8Fbug=E8=B0=83?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java index a4c7453..5be439c 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java @@ -466,7 +466,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl inspectionFileHandleList = inspectionFileHandles.stream().filter(item -> item.getInspectionFileId().equals(t.getId())).collect(Collectors.toList()); - if (Objects.nonNull(inspectionFileHandleList.get(0) )){ + if (CollectionUtils.isNotEmpty(inspectionFileHandleList) && Objects.nonNull(inspectionFileHandleList.get(0) )){ vo.setAudit(inspectionFileHandleList.get(0).getAudit()); vo.setInspectionFileHandleId(inspectionFileHandleList.get(0).getId()); } -- 2.27.0 From c6fa3f8997c89e906cadcf920e65ad9c1ac3895c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=92=90?= Date: Sat, 22 Jun 2024 16:35:44 +0800 Subject: [PATCH 33/39] =?UTF-8?q?=E5=B7=A5=E5=8D=95=E9=97=AE=E9=A2=98=20PC?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../workorder/query/QueryWorkOrderPageListService.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/workorder/query/QueryWorkOrderPageListService.java b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/workorder/query/QueryWorkOrderPageListService.java index cbd7af9..1ea0c11 100644 --- a/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/workorder/query/QueryWorkOrderPageListService.java +++ b/tuoheng-service/tuoheng-admin/src/main/java/com/tuoheng/admin/service/workorder/query/QueryWorkOrderPageListService.java @@ -10,6 +10,7 @@ import com.tuoheng.admin.entity.*; import com.tuoheng.admin.enums.AuditEnum; import com.tuoheng.admin.enums.InspectionFileStatusEnum; import com.tuoheng.admin.enums.DataPermissionEnum; +import com.tuoheng.admin.enums.WorkOrderStatusEnum; import com.tuoheng.admin.enums.code.inspection.QueryInspectionPageListCodeEnum; import com.tuoheng.admin.mapper.*; import com.tuoheng.admin.request.workorder.QueryWorkOrderPageListRequest; @@ -168,7 +169,10 @@ public class QueryWorkOrderPageListService { //List inspectionFileListTmp = inspectionFileList.stream().filter(s -> s.getStatus() == InspectionFileStatusEnum.PROCESSED.getCode()).collect(Collectors.toList()); LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.in(InspectionFileHandle::getInspectionFileId, inspectionFileIdList); - queryWrapper.in(InspectionFileHandle::getAudit, AuditEnum.ZERO.getCode(),AuditEnum.ONE.getCode()); + //审核驳回的时候 已处理问题才会减一 + if (workOrderPageListVo.getStatus().equals(WorkOrderStatusEnum.PENDING_REJECT.getCode())){ + queryWrapper.in(InspectionFileHandle::getAudit, AuditEnum.ZERO.getCode(),AuditEnum.ONE.getCode()); + } List inspectionFileHandles = inspectionFileHandleMapper.selectList(queryWrapper); workOrderPageListVo.setProblemTotalCount(workOrderFileList.size()); workOrderPageListVo.setProcessedProblemCount(inspectionFileHandles.size()); -- 2.27.0 From 72b2a48e67b555980d179025a7ced560bdb67113 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=92=90?= Date: Wed, 26 Jun 2024 13:36:39 +0800 Subject: [PATCH 34/39] =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8F=20=E5=BE=85?= =?UTF-8?q?=E5=8A=9E=E5=B7=A5=E5=8D=95=20=E6=8E=A5=E5=8F=A3=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../miniprogram/dao/InspectionFileMapper.java | 3 + .../miniprogram/entity/InspectionFile.java | 7 + .../service/impl/WorkOrderServiceImpl.java | 222 ++++++++++-------- .../resources/mapper/InspectionFileMapper.xml | 18 ++ 4 files changed, 158 insertions(+), 92 deletions(-) diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/dao/InspectionFileMapper.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/dao/InspectionFileMapper.java index 6faec8a..6417d39 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/dao/InspectionFileMapper.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/dao/InspectionFileMapper.java @@ -5,6 +5,7 @@ import com.tuoheng.miniprogram.entity.InspectionFile; import com.tuoheng.miniprogram.vo.SeeQuestionVo; import org.apache.ibatis.annotations.Param; +import java.util.List; import java.util.Map; /** @@ -21,4 +22,6 @@ public interface InspectionFileMapper extends BaseMapper { Integer getInspectionFileHandleCount(@Param("today") String s,@Param("tenantId") String id); int updateByIdList(Map map); + + List selectFileDeatilByIds(@Param("idList") List idList); } diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/entity/InspectionFile.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/entity/InspectionFile.java index 750d727..3f9ef9c 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/entity/InspectionFile.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/entity/InspectionFile.java @@ -1,5 +1,6 @@ package com.tuoheng.miniprogram.entity; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; import com.tuoheng.common.core.common.BaseEntity; @@ -141,6 +142,12 @@ public class InspectionFile extends BaseEntity { @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date checkTime; + /** + * 工单ID + */ + @TableField(exist = false) + private String workOrderId; + } diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java index 5be439c..94b9b77 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java @@ -156,7 +156,13 @@ public class WorkOrderServiceImpl extends BaseServiceImpl workOrderVo = this.myWorkOrderList(user,query); List list = new ArrayList<>(); //数据权限为1当前租户下的数据 if (RoleEnum.SUPER_ADMIN.getCode() == type) { //查询当前租户下所有工单数据 + long b = System.currentTimeMillis(); IPage workPageData = workOrderMapper.selectPage(page, Wrappers.lambdaQuery() .in(WorkOrder::getStatus, 5) .eq(WorkOrder::getTenantId, tenantId) .between(null != query.getOrderStartTime() && null != query.getOrderEndTime(), WorkOrder::getCreateTime, query.getOrderStartTime(), query.getOrderEndTime()) .eq(WorkOrder::getMark, MarkEnum.VALID.getCode()) .orderByDesc(WorkOrder::getCreateTime)); - if (null == workPageData.getRecords()) { + List records = workPageData.getRecords(); + if (null == records) { return JsonResult.success("数据为空"); } - - List getWorkOrderVo = this.getWorkOrderList(workPageData,user); - if(CollectionUtil.isNotEmpty(workOrderVo) || workOrderVo.size() != 0){ - list.addAll(workOrderVo); - } - if(CollectionUtil.isNotEmpty(getWorkOrderVo) || getWorkOrderVo.size() != 0){ - list.addAll(getWorkOrderVo); - } - pageData.setRecords(list); - + //查询属于分配自己的数据 + List workOrders = myWorkList(user, query); + records.addAll(workOrders); + + list = this.getWorkOrderList(records,user); + //按照时间+分配人排序 + List newList = + list.stream().sorted(Comparator.comparing(WorkOrderInfoVo::getCreateTime).thenComparing(WorkOrderInfoVo::getAssignUserName).reversed()).collect(Collectors.toList()); + pageData.setRecords(newList); + long c = System.currentTimeMillis() - b; + System.out.printf("花费时间b:" + c); return JsonResult.success(pageData); } @@ -228,17 +235,18 @@ public class WorkOrderServiceImpl extends BaseServiceImpl records = workPageData.getRecords(); + if (null == records) { return JsonResult.success("数据为空"); } - - List getWorkOrderVo = this.getWorkOrderList(workPageData,user); - if(CollectionUtil.isNotEmpty(workOrderVo) || workOrderVo.size() != 0){ - list.addAll(workOrderVo); - } - if(CollectionUtil.isNotEmpty(getWorkOrderVo) || getWorkOrderVo.size() != 0){ - list.addAll(getWorkOrderVo); - } + //查询属于分配自己的数据 + List workOrders = myWorkList(user, query); + records.addAll(workOrders); + list = this.getWorkOrderList(records,user); + //按照时间+分配人排序 + List newList = + list.stream().sorted(Comparator.comparing(WorkOrderInfoVo::getCreateTime).thenComparing(WorkOrderInfoVo::getAssignUserName)).collect(Collectors.toList()); + pageData.setRecords(newList); pageData.setRecords(list); return JsonResult.success(pageData); @@ -257,17 +265,18 @@ public class WorkOrderServiceImpl extends BaseServiceImpl records = workPageData.getRecords(); + if (null == records) { return JsonResult.success("数据为空"); } - - List getWorkOrderVo = this.getWorkOrderList(workPageData,user); - if(CollectionUtil.isNotEmpty(workOrderVo) || workOrderVo.size() != 0){ - list.addAll(workOrderVo); - } - if(CollectionUtil.isNotEmpty(getWorkOrderVo) || getWorkOrderVo.size() != 0){ - list.addAll(getWorkOrderVo); - } + //查询属于分配自己的数据 + List workOrders = myWorkList(user, query); + records.addAll(workOrders); + list = this.getWorkOrderList(records,user); + //按照时间+分配人排序 + List newList = + list.stream().sorted(Comparator.comparing(WorkOrderInfoVo::getCreateTime).thenComparing(WorkOrderInfoVo::getAssignUserName)).collect(Collectors.toList()); + pageData.setRecords(newList); pageData.setRecords(list); return JsonResult.success(pageData); @@ -303,22 +312,66 @@ public class WorkOrderServiceImpl extends BaseServiceImpl" + workOrderInfoList); } return workOrderInfoList; } + /** - * vo数据封装 - * @param workPageData + * 获取我的待处理工单数据 + * @param user + * @param query * @return */ - private List getWorkOrderList(IPage workPageData,User user) { + private List myWorkList(User user,WorkOrderQuery query) { + Integer type = user.getDataPermission(); + IPage page = new Page<>(query.getPage(), query.getLimit()); + List list = new ArrayList<>(); + if (RoleEnum.SUPER_ADMIN.getCode() == type || RoleEnum.ADMIN.getCode() == type || RoleEnum.ORDINARY_USER.getCode() == type) { + String deptId = user.getDeptId(); + if (StringUtils.isEmpty(deptId)) { + throw new ServiceException(ServiceExceptionEnum.PARAMETER_IS_NULL); + } + //获取当前分配人对应的工单分页数据 + IPage workPageData = workOrderMapper.selectPage(page, Wrappers.lambdaQuery() + .eq(WorkOrder::getAssignDeptId, deptId) + .in(WorkOrder::getStatus,10,12) + .like(StringUtils.isNotEmpty(user.getId()), WorkOrder::getAssignUser, user.getId()) + .eq(WorkOrder::getTenantId, user.getTenantId()) + .between(null != query.getOrderStartTime() && null != query.getOrderEndTime(), WorkOrder::getCreateTime, query.getOrderStartTime(), query.getOrderEndTime()) + .eq(WorkOrder::getMark, MarkEnum.VALID.getCode()) + .orderByDesc(WorkOrder::getCreateTime)); + if (null == workPageData.getRecords()) { + return null; + } + list = workPageData.getRecords(); + System.out.println("------->" + list); + } + return list; + } + + + + /** + * vo数据封装 + * @param records + * @return + */ + private List getWorkOrderList(List records,User user) { List WorkOrderInfoList = new ArrayList<>(); //设置每条工单对应的各状态问题数量 - List workOrderList = workPageData.getRecords().stream().map(x -> { + //获取 问题总数 + 待处理 + 已处理问题集合 + List wordkerIdList = records.stream().map(WorkOrder::getId).collect(Collectors.toList()); + List inspectionFileList = inspectionFileMapper.selectFileDeatilByIds(wordkerIdList); + Map> fileMap = new HashMap<>(); + if (CollectionUtils.isNotEmpty(inspectionFileList)){ + fileMap = inspectionFileList.stream().collect(Collectors.groupingBy(InspectionFile::getWorkOrderId)); + } + Map> finalFileMap = fileMap; + List workOrderList = records.stream().map(x -> { WorkOrderInfoVo vo = new WorkOrderInfoVo(); BeanUtils.copyProperties(x, vo); vo.setCreateTime(x.getCreateTime()); @@ -329,70 +382,55 @@ public class WorkOrderServiceImpl extends BaseServiceImpl list = new ArrayList<>(); - for (String userId : assignUserId) { - User userInfo = userMapper.selectById(userId); - if (ObjectUtil.isNotNull(userInfo)) { - list.add(userInfo.getRealname()); - } + //代码优化 + List users = + userMapper.selectList(new LambdaQueryWrapper().in(User::getId, assignUserId)); + if (CollectionUtils.isNotEmpty(users)){ + list = users.stream().map(User::getRealname).collect(Collectors.toList()); + String usernames = list.stream().map(String::valueOf).collect(Collectors.joining("、")); + vo.setAssignUserName(usernames); } String usernames = list.stream().map(String::valueOf).collect(Collectors.joining("、")); vo.setAssignUserName(usernames); - //问题总数 - List workOrderFiles = workOrderFileMapper.selectList(Wrappers.lambdaQuery() - .eq(WorkOrderFile::getWorkOrderId, x.getId())); - if (CollectionUtil.isEmpty(workOrderFiles)) { - throw new ServiceException(ServiceExceptionEnum.PARAMETER_IS_NULL); - } - vo.setPromTotal(workOrderFiles.size()); - //对应的问题id集合 - List inspectionFiledIds = workOrderFiles.stream().map(o -> o.getInspectionFileId()).collect(Collectors.toList()); - if (CollectionUtil.isEmpty(inspectionFiledIds)) { - throw new ServiceException(ServiceExceptionEnum.PARAMETER_IS_NULL); - } - //获取问题集合 - List inspectionFileList = new ArrayList<>(); - for (String inspectionFiledId : inspectionFiledIds) { - InspectionFile inspectionFile = inspectionFileMapper.selectById(inspectionFiledId); - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.eq(InspectionFileHandle::getInspectionFileId, inspectionFiledId); - InspectionFileHandle inspectionFileHandle = inspectionFileHandleMapper.selectOne(queryWrapper); - if (Objects.nonNull(inspectionFileHandle ) && inspectionFileHandle.getAudit().equals(AuditEnum.TWO.getCode())){ - inspectionFile.setStatus(20); + //处理问题结果集 + if (CollectionUtils.isNotEmpty(finalFileMap.get(x.getId()))){ + List inspectionFiles = finalFileMap.get(x.getId()); + vo.setPromTotal(inspectionFiles.size()); + + if(CollectionUtil.isEmpty(inspectionFiles) || inspectionFiles.size() == 0){ + throw new ServiceException("问题数据查询为空"); } - inspectionFileList.add(inspectionFile); - } - if(CollectionUtil.isEmpty(inspectionFileList) || inspectionFileList.size() == 0){ - throw new ServiceException("问题数据查询为空"); - } - log.info("问题列表为:inspectionFileList={}",inspectionFileList.toString()); - //待处理问题总数 - long count = inspectionFileList.stream().filter(t -> t.getStatus() == 20).count(); - log.info("待处理问题总数为:count={}",count); - if(ArrayUtil.isNotEmpty(count)){ - vo.setPromTodo((int) count); - } - //已处理问题总数 - long count1 = inspectionFileList.stream().filter(t -> t.getStatus() == 25).count(); - log.info("已处理问题总数为:count1={}",count1); - if(ArrayUtil.isNotEmpty(count1)){ - vo.setPromProcessed((int) count1); + log.info("问题列表为:inspectionFileList={}",inspectionFiles.toString()); + //待处理问题总数 + long count = inspectionFiles.stream().filter(t -> Objects.nonNull(t.getStatus()) && t.getStatus() == 20).count(); + log.info("待处理问题总数为:count={}",count); + if(ArrayUtil.isNotEmpty(count)){ + vo.setPromTodo((int) count); + } + //已处理问题总数 + long count1 = inspectionFiles.stream().filter(t -> Objects.nonNull(t.getStatus()) && t.getStatus() == 25).count(); + log.info("已处理问题总数为:count1={}",count1); + if(ArrayUtil.isNotEmpty(count1)){ + vo.setPromProcessed((int) count1); + } + }else { + List inspectionFiles = finalFileMap.get(x.getId()); } - return vo; }).collect(Collectors.toList()); //当待处理问题总数为0时,此工单不出现在代办工单列表并且工单状态修改为15已完成 List collect = workOrderList.stream().filter(f -> f.getPromTodo() == 0 && !f.getStatus().equals(WorkOrderStatusEnum.PENDING_REJECT.getCode())).collect(Collectors.toList()); - if (null != collect) { - for (WorkOrderInfoVo workOrderInfoVo : collect) { - //每一个工单对应的状态发生改变,一个工单id对应一个工单 - WorkOrder workOrder = workOrderMapper.selectById(workOrderInfoVo.getId()); - if (ObjectUtil.isNotNull(workOrder)) { - //问题处理完 状态改为待审核 新需求 - workOrder.setStatus(WorkOrderStatusEnum.STATUS_PENDING_REVIEW.getCode()); - workOrder.setUpdateTime(DateUtils.now()); - workOrder.setUpdateUser(user.getId()); - super.update(workOrder); - } + if (CollectionUtils.isNotEmpty(collect)) { + List idList = collect.stream().map(WorkOrderInfoVo::getId).collect(Collectors.toList()); + //问题处理完 状态改为待审核 新需求 + List workOrders = workOrderMapper.selectList(new LambdaQueryWrapper().in(WorkOrder::getId, idList)); + if (CollectionUtils.isNotEmpty(workOrders)){ + workOrders.forEach(item->{ + item.setStatus(WorkOrderStatusEnum.STATUS_PENDING_REVIEW.getCode()); + item.setUpdateTime(DateUtils.now()); + item.setUpdateUser(user.getId()); + }); + this.updateBatchById(workOrders); } } //工单的待处理问题个数不为0时 重新返回 diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/resources/mapper/InspectionFileMapper.xml b/tuoheng-service/tuoheng-miniprogram/src/main/resources/mapper/InspectionFileMapper.xml index e2163ff..4c61ab0 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/resources/mapper/InspectionFileMapper.xml +++ b/tuoheng-service/tuoheng-miniprogram/src/main/resources/mapper/InspectionFileMapper.xml @@ -60,4 +60,22 @@ + + + + \ No newline at end of file -- 2.27.0 From 1ac84e6e625a3fd6485603ae39396587d970d112 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=92=90?= Date: Wed, 26 Jun 2024 13:55:32 +0800 Subject: [PATCH 35/39] =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8F=20=E5=BE=85?= =?UTF-8?q?=E5=8A=9E=E5=B7=A5=E5=8D=95=20=E6=8E=A5=E5=8F=A3=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../miniprogram/service/impl/WorkOrderServiceImpl.java | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java index 94b9b77..267d7e0 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java @@ -156,13 +156,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl Date: Wed, 26 Jun 2024 14:00:26 +0800 Subject: [PATCH 36/39] =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8F=20=E5=BE=85?= =?UTF-8?q?=E5=8A=9E=E5=B7=A5=E5=8D=95=20=E6=8E=A5=E5=8F=A3=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mapper/InspectionFileMapper.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/resources/mapper/InspectionFileMapper.xml b/tuoheng-service/tuoheng-miniprogram/src/main/resources/mapper/InspectionFileMapper.xml index 4c61ab0..25b8739 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/resources/mapper/InspectionFileMapper.xml +++ b/tuoheng-service/tuoheng-miniprogram/src/main/resources/mapper/InspectionFileMapper.xml @@ -71,7 +71,7 @@ from th_work_order_file twof left join th_inspection_file as tf on twof.inspection_file_id = tf.id - left join th_inspection_file_handle AS tfh on tf.id = tfh.inspection_file_id and tfh. + left join th_inspection_file_handle AS tfh on tf.id = tfh.inspection_file_id where twof.work_order_id in #{id} -- 2.27.0 From f29e0c96009615d40dde876b403886083eee5cf3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=92=90?= Date: Wed, 26 Jun 2024 16:11:17 +0800 Subject: [PATCH 37/39] =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8F=20=E5=BE=85?= =?UTF-8?q?=E5=8A=9E=E5=B7=A5=E5=8D=95=20=E6=8E=A5=E5=8F=A3=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/WorkOrderServiceImpl.java | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java index 267d7e0..ffcb04c 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java @@ -196,15 +196,14 @@ public class WorkOrderServiceImpl extends BaseServiceImpl workOrders = myWorkList(user, query); - records.addAll(workOrders); - + if (CollectionUtils.isEmpty(records) && CollectionUtils.isNotEmpty(workOrders)){ + records = workOrders; + } list = this.getWorkOrderList(records,user); //按照时间+分配人排序 List newList = list.stream().sorted(Comparator.comparing(WorkOrderInfoVo::getCreateTime).thenComparing(WorkOrderInfoVo::getAssignUserName).reversed()).collect(Collectors.toList()); pageData.setRecords(newList); - long c = System.currentTimeMillis() - b; - System.out.printf("花费时间b:" + c); return JsonResult.success(pageData); } @@ -235,7 +234,9 @@ public class WorkOrderServiceImpl extends BaseServiceImpl workOrders = myWorkList(user, query); - records.addAll(workOrders); + if (CollectionUtils.isEmpty(records) && CollectionUtils.isNotEmpty(workOrders)){ + records = workOrders; + } list = this.getWorkOrderList(records,user); //按照时间+分配人排序 List newList = @@ -265,7 +266,9 @@ public class WorkOrderServiceImpl extends BaseServiceImpl workOrders = myWorkList(user, query); - records.addAll(workOrders); + if (CollectionUtils.isEmpty(records) && CollectionUtils.isNotEmpty(workOrders)){ + records = workOrders; + } list = this.getWorkOrderList(records,user); //按照时间+分配人排序 List newList = -- 2.27.0 From 0e2a1b582881dca94191275312562b403b8e8d0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=92=90?= Date: Wed, 26 Jun 2024 16:56:02 +0800 Subject: [PATCH 38/39] =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8F=20=E5=BE=85?= =?UTF-8?q?=E5=8A=9E=E5=B7=A5=E5=8D=95=20=E6=8E=A5=E5=8F=A3=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/WorkOrderServiceImpl.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java index ffcb04c..7ae34c3 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java @@ -198,6 +198,8 @@ public class WorkOrderServiceImpl extends BaseServiceImpl workOrders = myWorkList(user, query); if (CollectionUtils.isEmpty(records) && CollectionUtils.isNotEmpty(workOrders)){ records = workOrders; + }else if ( CollectionUtils.isNotEmpty(records) && CollectionUtils.isNotEmpty(workOrders) ){ + records.addAll(workOrders); } list = this.getWorkOrderList(records,user); //按照时间+分配人排序 @@ -236,13 +238,14 @@ public class WorkOrderServiceImpl extends BaseServiceImpl workOrders = myWorkList(user, query); if (CollectionUtils.isEmpty(records) && CollectionUtils.isNotEmpty(workOrders)){ records = workOrders; + }else if ( CollectionUtils.isNotEmpty(records) && CollectionUtils.isNotEmpty(workOrders) ){ + records.addAll(workOrders); } list = this.getWorkOrderList(records,user); //按照时间+分配人排序 List newList = - list.stream().sorted(Comparator.comparing(WorkOrderInfoVo::getCreateTime).thenComparing(WorkOrderInfoVo::getAssignUserName)).collect(Collectors.toList()); + list.stream().sorted(Comparator.comparing(WorkOrderInfoVo::getCreateTime).thenComparing(WorkOrderInfoVo::getAssignUserName).reversed()).collect(Collectors.toList()); pageData.setRecords(newList); - pageData.setRecords(list); return JsonResult.success(pageData); } @@ -268,13 +271,14 @@ public class WorkOrderServiceImpl extends BaseServiceImpl workOrders = myWorkList(user, query); if (CollectionUtils.isEmpty(records) && CollectionUtils.isNotEmpty(workOrders)){ records = workOrders; + }else if ( CollectionUtils.isNotEmpty(records) && CollectionUtils.isNotEmpty(workOrders) ){ + records.addAll(workOrders); } list = this.getWorkOrderList(records,user); //按照时间+分配人排序 List newList = - list.stream().sorted(Comparator.comparing(WorkOrderInfoVo::getCreateTime).thenComparing(WorkOrderInfoVo::getAssignUserName)).collect(Collectors.toList()); + list.stream().sorted(Comparator.comparing(WorkOrderInfoVo::getCreateTime).thenComparing(WorkOrderInfoVo::getAssignUserName).reversed()).collect(Collectors.toList()); pageData.setRecords(newList); - pageData.setRecords(list); return JsonResult.success(pageData); } -- 2.27.0 From 07c32b4c8f5f40ee644ee0ab168965ca4a3c1a40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=92=90?= Date: Wed, 26 Jun 2024 17:05:23 +0800 Subject: [PATCH 39/39] =?UTF-8?q?=E5=B0=8F=E7=A8=8B=E5=BA=8F=20=E5=BE=85?= =?UTF-8?q?=E5=8A=9E=E5=B7=A5=E5=8D=95=20=E6=8E=A5=E5=8F=A3=E4=BC=98?= =?UTF-8?q?=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../miniprogram/service/impl/WorkOrderServiceImpl.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java index 7ae34c3..1313a35 100644 --- a/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java +++ b/tuoheng-service/tuoheng-miniprogram/src/main/java/com/tuoheng/miniprogram/service/impl/WorkOrderServiceImpl.java @@ -201,6 +201,9 @@ public class WorkOrderServiceImpl extends BaseServiceImpl newList = @@ -241,6 +244,9 @@ public class WorkOrderServiceImpl extends BaseServiceImpl newList = @@ -274,6 +280,9 @@ public class WorkOrderServiceImpl extends BaseServiceImpl newList = -- 2.27.0