From b96de9a426859e1e9694155540e02210a99b23cc Mon Sep 17 00:00:00 2001 From: wangqian <1406304305@qq.com> Date: Tue, 23 Dec 2025 22:59:38 +0800 Subject: [PATCH] 工单修改 --- urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/maininfo/MainInfoController.java | 20 +++++++++++++++++--- urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/maininfo/vo/AdminMainInfoRespVO.java | 176 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/convert/maininfo/MainInfoConvert.java | 11 ++++++----- 3 files changed, 199 insertions(+), 8 deletions(-) create mode 100644 urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/maininfo/vo/AdminMainInfoRespVO.java diff --git a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/maininfo/MainInfoController.java b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/maininfo/MainInfoController.java index fc21110..33c2b9d 100644 --- a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/maininfo/MainInfoController.java +++ b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/maininfo/MainInfoController.java @@ -10,6 +10,7 @@ import com.zteits.urbanops.module.system.api.user.AdminUserApi; import com.zteits.urbanops.module.system.api.user.dto.AdminUserRespDTO; import com.zteits.urbanops.module.system.dal.dataobject.dept.DeptDO; import com.zteits.urbanops.module.system.service.dept.DeptService; +import com.zteits.urbanops.module.workorder.controller.admin.maininfo.vo.AdminMainInfoRespVO; import com.zteits.urbanops.module.workorder.controller.admin.maininfo.vo.MainInfoPageReqVO; import com.zteits.urbanops.module.workorder.controller.admin.maininfo.vo.MainInfoSaveReqVO; import com.zteits.urbanops.module.workorder.convert.maininfo.MainInfoConvert; @@ -53,6 +54,8 @@ public class MainInfoController { private DeptService deptService; @Resource private AdminUserApi adminUserApi; + //@Resource + //private BpmTaskApi bpmTaskApi; @PostMapping("/create") @Operation(summary = "创建工单信息") @@ -91,7 +94,7 @@ public class MainInfoController { @Operation(summary = "获得工单信息") @Parameter(name = "id", description = "编号", required = true, example = "1024") @PreAuthorize("@ss.hasPermission('workorder:main-info:query')") - public CommonResult getMainInfo(@RequestParam("id") Long id) { + public CommonResult getMainInfo(@RequestParam("id") Long id) { MainInfoDO mainInfo = mainInfoService.getMainInfo(id); // 若订单号列表非空,查询附件;否则跳过 @@ -124,7 +127,7 @@ public class MainInfoController { @GetMapping("/page") @Operation(summary = "获得工单信息分页") @PreAuthorize("@ss.hasPermission('workorder:main-info:query')") - public CommonResult> getMainInfoPage(@Valid MainInfoPageReqVO pageReqVO) { + public CommonResult> getMainInfoPage(@Valid MainInfoPageReqVO pageReqVO) { //登录人所属业务线 pageReqVO.setBusiLine(getBusiLine()); PageResult pageResult = mainInfoService.getMainInfoPage(pageReqVO); @@ -158,7 +161,18 @@ public class MainInfoController { } } } - // 4. 转换并返回结果 + //4. 查询处理人 +// List processInstanceIdList = pageResult.getList().stream() +// .map(MainInfoDO::getProcessInstanceId) +// .filter(orderNo -> orderNo != null && !orderNo.isBlank()) +// .collect(Collectors.toList()); +// for (String s : processInstanceIdList) { +// List bpmTaskRespVOS = bpmTaskApi.getTaskListByProcessInstanceId(s); +// if (bpmTaskRespVOS != null) { +// +// } +// } + // 5. 转换并返回结果 return success(MainInfoConvert.INSTANCE.buildMainInfoPage(pageResult, attachmentMap)); } diff --git a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/maininfo/vo/AdminMainInfoRespVO.java b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/maininfo/vo/AdminMainInfoRespVO.java new file mode 100644 index 0000000..64874b5 --- /dev/null +++ b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/controller/admin/maininfo/vo/AdminMainInfoRespVO.java @@ -0,0 +1,176 @@ +package com.zteits.urbanops.module.workorder.controller.admin.maininfo.vo; + +import cn.idev.excel.annotation.ExcelIgnoreUnannotated; +import cn.idev.excel.annotation.ExcelProperty; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.math.BigDecimal; +import java.time.LocalDateTime; +import java.util.List; +import java.util.Set; + +@Schema(description = "管理后台 - 工单信息 Response VO") +@Data +@ExcelIgnoreUnannotated +public class AdminMainInfoRespVO { + + @Schema(description = "ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "7114") + @ExcelProperty("ID") + private Long id; + + @Schema(description = "业务线:yl 园林,wy 物业,sz 市政 ", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("业务线:yl 园林,wy 物业,sz 市政 ") + private String busiLine; + + @Schema(description = "工单号", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("工单号") + private String orderNo; + + @Schema(description = "工单名称", example = "张三") + @ExcelProperty("工单名称") + private String orderName; + + /** + * 工单类型 Q:快速工单,C:普通工单,O:其他工单 + */ + private String orderType; + + @Schema(description = "来源ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1828") + @ExcelProperty("来源ID 问题来源 1、巡查,2、游客居民,3、12345,4、网格 5、大区经理") + private Integer sourceId; + + @Schema(description = "来源名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋艿") + @ExcelProperty("来源名称") + private String sourceName; + + @Schema(description = "道路ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "21128") + @ExcelProperty("道路ID") + private Long roadId; + + @Schema(description = "道路名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五") + @ExcelProperty("道路名称") + private String roadName; + + @Schema(description = "街道ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "27852") + @ExcelProperty("街道ID") + private String streetId; + + @Schema(description = "街道名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋艿") + @ExcelProperty("街道名称") + private String streetName; + + @Schema(description = "养护级别ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "28278") + @ExcelProperty("养护级别ID") + private Integer curingLevelId; + + @Schema(description = "养护级别", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五") + @ExcelProperty("养护级别") + private String curingLevelName; + + @Schema(description = "提交日期", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("提交日期") + private LocalDateTime commitDate; + + @Schema(description = "希望完成时间", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("希望完成时间") + private LocalDateTime expectedFinishDate; + + @Schema(description = "完成时间", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("完成时间") + private LocalDateTime finishDate; + + @Schema(description = "紧急程度:1:特急;2:紧急;3:一般", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") + @ExcelProperty("紧急程度:1:特急;2:紧急;3:一般") + private Integer pressingType; + + @Schema(description = "提交用户ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "12757") + private Long userId; + + @Schema(description = "提交用户名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五") + @ExcelProperty("提交用户名称") + private String userName; + + @Schema(description = "部门id", requiredMode = Schema.RequiredMode.REQUIRED, example = "26936") + private Long companyId; + + @Schema(description = "单位名称") + @ExcelProperty("单位名称") + private String companyName; + + @Schema(description = "经纬度类型: 1:国标; 2:百度;3:高德;4:腾讯", example = "2") + @ExcelProperty("经纬度类型: 1:国标; 2:百度;3:高德;4:腾讯") + private Integer latLonType; + + @Schema(description = "经度", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("经度") + private BigDecimal lat; + + @Schema(description = "维度", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("维度") + private BigDecimal lon; + + @Schema(description = "经纬度地址", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("经纬度地址") + private String lonLatAddress; + + @Schema(description = "三方工单ID") + @ExcelProperty("三方工单ID") + private String thirdWorkNo; + + @Schema(description = "三方工单结果上报状态:1:待推送;2:推送成功;3:推送失败") + @ExcelProperty("三方工单结果上报状态:1:待推送;2:推送成功;3:推送失败") + private Integer thirdPushState; + + @Schema(description = "业务状态", example = "1") + @ExcelProperty("业务状态") + private String buzStatus; + + @Schema(description = "审批状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "2") + @ExcelProperty("审批状态") + private Integer status; + + @Schema(description = "流程实例的编号", example = "9184") + @ExcelProperty("流程实例的编号") + private String processInstanceId; + + @Schema(description = "工单描述", requiredMode = Schema.RequiredMode.REQUIRED, example = "你说的对") + @ExcelProperty("工单描述") + private String remark; + + @Schema(description = "工单完成结果描述", example = "已完成") + @ExcelProperty("工单完成结果描述") + private String handleResult; + + @Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED) + @ExcelProperty("创建时间") + private LocalDateTime createTime; + + @Schema(description = "文件名称") + private List fileNames; + + @Schema(description = "共同处理人") + private Set coHandlers; + @Schema(description = "共同处理人名称,多个为数组") + private List coHandlersName; + + @Schema(description = "提交人电话") + private String userMobile; + /** + * 实施人员名称 + */ + @Schema(description = "养护员") + private String workerName; + + /** + * 实施人员部门id + */ + private Long workerCompanyId; + + /** + * 处理人 + */ + private String handlerName; + + +} diff --git a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/convert/maininfo/MainInfoConvert.java b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/convert/maininfo/MainInfoConvert.java index a86ee65..c0494b4 100644 --- a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/convert/maininfo/MainInfoConvert.java +++ b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/convert/maininfo/MainInfoConvert.java @@ -4,6 +4,7 @@ import com.zteits.urbanops.framework.common.pojo.PageResult; import com.zteits.urbanops.framework.common.util.collection.CollectionUtils; import com.zteits.urbanops.framework.common.util.object.BeanUtils; import com.zteits.urbanops.module.system.api.user.dto.AdminUserRespDTO; +import com.zteits.urbanops.module.workorder.controller.admin.maininfo.vo.AdminMainInfoRespVO; import com.zteits.urbanops.module.workorder.dal.dataobject.attachment.AttachmentDO; import com.zteits.urbanops.module.workorder.dal.dataobject.maininfo.MainInfoDO; import com.zteits.urbanops.module.workorder.dto.MainInfoRespVO; @@ -24,9 +25,9 @@ public interface MainInfoConvert { MainInfoConvert INSTANCE = Mappers.getMapper(MainInfoConvert.class); - default PageResult buildMainInfoPage(PageResult pageResult, Map attachmentMap) { - List mainInfoVOList = CollectionUtils.convertList(pageResult.getList(), mainInfoDO -> { - MainInfoRespVO mainInfoVo = BeanUtils.toBean(mainInfoDO, MainInfoRespVO.class); + default PageResult buildMainInfoPage(PageResult pageResult, Map attachmentMap) { + List mainInfoVOList = CollectionUtils.convertList(pageResult.getList(), mainInfoDO -> { + AdminMainInfoRespVO mainInfoVo = BeanUtils.toBean(mainInfoDO, AdminMainInfoRespVO.class); if (attachmentMap != null && !attachmentMap.isEmpty()) { AttachmentDO attachmentDO = attachmentMap.get(mainInfoDO.getOrderNo()); if (attachmentDO != null) { @@ -44,8 +45,8 @@ public interface MainInfoConvert { return new PageResult<>(mainInfoVOList, pageResult.getTotal()); } - default MainInfoRespVO buildMainInfo(MainInfoDO mainInfoDO, Map attachmentMap, String deptName,Map userMap) { - MainInfoRespVO mainInfoVo = BeanUtils.toBean(mainInfoDO, MainInfoRespVO.class); + default AdminMainInfoRespVO buildMainInfo(MainInfoDO mainInfoDO, Map attachmentMap, String deptName,Map userMap) { + AdminMainInfoRespVO mainInfoVo = BeanUtils.toBean(mainInfoDO, AdminMainInfoRespVO.class); if (mainInfoDO != null) { if (attachmentMap != null && !attachmentMap.isEmpty()) { AttachmentDO attachmentDO = attachmentMap.get(mainInfoDO.getOrderNo()); -- libgit2 0.21.4