From 29cef0ec965dcc2805c6371547e5815e93a676fe Mon Sep 17 00:00:00 2001 From: yanhuiqing Date: Wed, 31 Dec 2025 10:20:21 +0800 Subject: [PATCH] AI工单 审批流程 --- urbanops-module-api/urbanops-module-workorder-api/src/main/java/com/zteits/urbanops/module/workorder/dto/AppGardenWorkOrderAIReqVO.java | 6 ++++++ urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/api/constant/BpmCommonConstant.java | 9 +++++++-- urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/enums/ErrorCodeConstants.java | 8 ++++++-- urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/service/garden/BpmAIServiceImpl.java | 20 ++++++++++++++------ 4 files changed, 33 insertions(+), 10 deletions(-) diff --git a/urbanops-module-api/urbanops-module-workorder-api/src/main/java/com/zteits/urbanops/module/workorder/dto/AppGardenWorkOrderAIReqVO.java b/urbanops-module-api/urbanops-module-workorder-api/src/main/java/com/zteits/urbanops/module/workorder/dto/AppGardenWorkOrderAIReqVO.java index b536e45..d5581b6 100644 --- a/urbanops-module-api/urbanops-module-workorder-api/src/main/java/com/zteits/urbanops/module/workorder/dto/AppGardenWorkOrderAIReqVO.java +++ b/urbanops-module-api/urbanops-module-workorder-api/src/main/java/com/zteits/urbanops/module/workorder/dto/AppGardenWorkOrderAIReqVO.java @@ -81,6 +81,12 @@ public class AppGardenWorkOrderAIReqVO { @Schema(description = "工单业务线", example = "yl") private String busiLine; + @Schema(description = "工单来源编码", example = "axcbng") + private String woSourceId; + + @Schema(description = "工单来源名称", example = "摄像头") + private String woSourceName; + } diff --git a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/api/constant/BpmCommonConstant.java b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/api/constant/BpmCommonConstant.java index 5060089..2f3c2ad 100644 --- a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/api/constant/BpmCommonConstant.java +++ b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/api/constant/BpmCommonConstant.java @@ -171,9 +171,14 @@ public class BpmCommonConstant { * 大区经理 角色编码 */ public static final String REGIONAL_MANAGER = "regional_manager"; - + /** + * 督察员 角色编码 + */ public static final String INSPECTOR_GLOBAL = "Inspector_global"; - + /** + * ai 工单派发人 + */ + public static final String AI_DISPATCHER = "AI_dispatcher"; /*养护级别-字典key*/ public static final String CONSERVE_LEVEL = "conserve_level"; //--------------------------------------------------------------------------------- diff --git a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/enums/ErrorCodeConstants.java b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/enums/ErrorCodeConstants.java index 808e0c8..e771b5b 100644 --- a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/enums/ErrorCodeConstants.java +++ b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/enums/ErrorCodeConstants.java @@ -49,8 +49,12 @@ public interface ErrorCodeConstants { ErrorCode APP_INSPECTOR_USER_ROLE_ERROR = new ErrorCode(1-900-004-001, "该登录人不是 全域督查员,无法发起流程!"); - ErrorCode APP_WORK_INSPECTOR_ROLE_ILLEGLE = new ErrorCode(1-900-004-00, "该登录人即是 大区经理 角色,又是 全域督察员,无法发起流程!"); + ErrorCode APP_WORK_INSPECTOR_ROLE_ILLEGLE = new ErrorCode(1-900-004-003, "该登录人即是 大区经理 角色,又是 全域督察员,无法发起流程!"); - ErrorCode APP_WORK_ROAD_NOT_EXISTS = new ErrorCode(1-900-004-001, "道路信息不存在"); + ErrorCode APP_WORK_ROAD_NOT_EXISTS = new ErrorCode(1-900-004-002, "道路信息不存在"); + + ErrorCode APP_AI_USER_ROLE_ERROR = new ErrorCode(1-900-004-004, "该登录人不是 AI工单派发人员,无法发起流程!"); + + ErrorCode APP_WORK_AI_ROLE_ILLEGLE = new ErrorCode(1-900-004-005, "该登录人即是 大区经理 角色,又是 AI工单派发人员,无法发起流程!"); } diff --git a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/service/garden/BpmAIServiceImpl.java b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/service/garden/BpmAIServiceImpl.java index 76acd5b..7192945 100644 --- a/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/service/garden/BpmAIServiceImpl.java +++ b/urbanops-module-workorder/src/main/java/com/zteits/urbanops/module/workorder/service/garden/BpmAIServiceImpl.java @@ -110,12 +110,12 @@ public class BpmAIServiceImpl implements BpmAIService{ throw exception(APP_USER_ROLE_NOT_EXISTS); } - if(!RoleListUtils.containsCode(roleList,INSPECTOR_GLOBAL)){ - throw exception(APP_INSPECTOR_USER_ROLE_ERROR); + if(!RoleListUtils.containsCode(roleList,AI_DISPATCHER)){ + throw exception(APP_AI_USER_ROLE_ERROR); } //校验人员不能有 双重角色 - if(RoleListUtils.containsBothCodes(roleList, REGIONAL_MANAGER, INSPECTOR_GLOBAL)){ - throw exception(APP_WORK_INSPECTOR_ROLE_ILLEGLE); + if(RoleListUtils.containsBothCodes(roleList, REGIONAL_MANAGER, AI_DISPATCHER)){ + throw exception(APP_WORK_AI_ROLE_ILLEGLE); } List problemsImgsList = createRequestVo.getProblemsImgs(); @@ -148,8 +148,16 @@ public class BpmAIServiceImpl implements BpmAIService{ workOrder.setDeptId(SecurityFrameworkUtils.getDeptId()); workOrder.setSourceId(EventSourceEnum.AI.getCode()); workOrder.setSourceName(EventSourceEnum.AI.getDesc()); - workOrder.setWoSourceId(roleList.get(0).getCode()); - workOrder.setWoSourceName(roleList.get(0).getName()); + String wsourceId = createRequestVo.getWoSourceId(); + String wsourceName = createRequestVo.getWoSourceName(); + if(StringUtil.isEmpty(wsourceId)){ + wsourceId = roleList.get(0).getCode(); + } + if(StringUtil.isEmpty(wsourceName)){ + wsourceName = roleList.get(0).getCode(); + } + workOrder.setWoSourceId(wsourceId); + workOrder.setWoSourceName(wsourceName); String busiLine = createRequestVo.getBusiLine(); if(StringUtil.isEmpty(busiLine)){ busiLine = SecurityFrameworkUtils.getBusiLine(); -- libgit2 0.21.4