diff --git a/src/main/java/com/spring/modules/change/entity/OaDeleteUserRequestInfoLogEntity.java b/src/main/java/com/spring/modules/change/entity/OaDeleteUserRequestInfoLogEntity.java new file mode 100644 index 00000000..2500a4be --- /dev/null +++ b/src/main/java/com/spring/modules/change/entity/OaDeleteUserRequestInfoLogEntity.java @@ -0,0 +1,33 @@ +package com.spring.modules.change.entity; + +import lombok.Data; + +import java.io.Serializable; + +/** + * OA删除待办接口调用日志 + */ +@Data +public class OaDeleteUserRequestInfoLogEntity implements Serializable { + private static final long serialVersionUID = 1L; + + private Long id; + private String site; + private String documentNo; + private String documentType; + private String workflowId; + private String requestId; + private String flowId; + private String oaUserId; + private String syscode; + private String interfaceUrl; + private String callMethod; + private String callScene; + private String requestJson; + private String responseJson; + private String responseCode; + private String responseMsg; + private String successFlag; + private String errorMsg; + private String createBy; +} diff --git a/src/main/java/com/spring/modules/change/mapper/ChangeManagementMapper.java b/src/main/java/com/spring/modules/change/mapper/ChangeManagementMapper.java index 954c82bc..7be2c0e5 100644 --- a/src/main/java/com/spring/modules/change/mapper/ChangeManagementMapper.java +++ b/src/main/java/com/spring/modules/change/mapper/ChangeManagementMapper.java @@ -241,4 +241,6 @@ public interface ChangeManagementMapper extends BaseMapper{ Integer countApproverMatch(@Param("site") String site, @Param("docNo") String docNo, @Param("userName") String userName); + + void saveDeleteUserRequestInfoLog(OaDeleteUserRequestInfoLogEntity data); } diff --git a/src/main/java/com/spring/modules/change/service/impl/ChangeManagementServiceImpl.java b/src/main/java/com/spring/modules/change/service/impl/ChangeManagementServiceImpl.java index c4ea9430..16dd88c9 100644 --- a/src/main/java/com/spring/modules/change/service/impl/ChangeManagementServiceImpl.java +++ b/src/main/java/com/spring/modules/change/service/impl/ChangeManagementServiceImpl.java @@ -1208,14 +1208,19 @@ public class ChangeManagementServiceImpl extends ServiceImpl oaUserList = changeManagementMapper.getOaUserIdByIsRemark(paramData.getSite(), paramData.getDocNo(), "0"); for (OaUserData oaUser : oaUserList) { - deleteUserRequestInfoParam.setUserId(oaUser.getId()); - String deleteUserRequestInfoURL = apiUrlOa + "/oa/interface/deleteUserRequestInfo"; - ResponseData deleteUserRequestInfoResponses = HttpClientUtil.doPostByRawWithOA(deleteUserRequestInfoURL, deleteUserRequestInfoParam); + deleteUserRequestInfoWithLog( + paramData.getSite(), + paramData.getDocNo(), + type, + paramData.getWorkflowId(), + paramData.getRequestId(), + oaUser.getId(), + "issueFunction", + "archive", + paramData.getUserName() + ); } // 直接归档,不再继续后续流程 return; @@ -1503,8 +1508,6 @@ public class ChangeManagementServiceImpl extends ServiceImpl pfs = changeManagementMapper.getProcessFormByIsRemark(paramData.getSite(), paramData.getBu(), paramData.getDocNo(), "0"); // 2025-05-12 使用 process_form 根据 site documentNo isRemark = 0 来获取人员 可能有多个 循环调用 - DeleteUserRequestInfoParam deleteUserRequestInfoParam = new DeleteUserRequestInfoParam(); - deleteUserRequestInfoParam.setRequestId(paramData.getWorkflowId() + paramData.getRequestId()); - deleteUserRequestInfoParam.setSyscode("PLM"); List oaUserList = changeManagementMapper.getOaUserIdByIsRemark(paramData.getSite(), paramData.getDocNo(), "0"); // 将记录表中 isRemark 为0的修改为1 @@ -1613,8 +1613,17 @@ public class ChangeManagementServiceImpl extends ServiceImpl codelist = changeManagementMapper.requestDetailSearch(changeRequestEntity); - DeleteUserRequestInfoParam deleteUserRequestInfoParam2 = new DeleteUserRequestInfoParam(); - deleteUserRequestInfoParam2.setSyscode("PLM"); for (ChangeRequestDetailEntity detail : codelist) { List params = new ArrayList<>(); List> resultList; @@ -1676,9 +1683,17 @@ public class ChangeManagementServiceImpl extends ServiceImpl codelist = changeManagementMapper.requestDetailSearch(changeRequestEntity); - DeleteUserRequestInfoParam deleteUserRequestInfoParam2 = new DeleteUserRequestInfoParam(); - deleteUserRequestInfoParam2.setSyscode("PLM"); for (ChangeRequestDetailEntity detail : codelist) { List params = new ArrayList<>(); List> resultList; @@ -1869,9 +1900,17 @@ public class ChangeManagementServiceImpl extends ServiceImpl oaUserList = changeManagementMapper.getOaUserIdByIsRemark(paramData.getSite(), paramData.getDocNo(), "0"); // 将记录表中 isRemark 为0的修改为1 @@ -1978,12 +2014,17 @@ public class ChangeManagementServiceImpl extends ServiceImpl oaUserList = changeManagementMapper.getOaUserIdByIsRemark(data.getSite(), data.getCodeNo(), "0"); for (OaUserData oaUser : oaUserList) { - deleteUserRequestInfoParam.setUserId(oaUser.getId()); - String deleteUserRequestInfoURL = apiUrlOa + "/oa/interface/deleteUserRequestInfo"; - ResponseData deleteUserRequestInfoResponses = HttpClientUtil.doPostByRawWithOA(deleteUserRequestInfoURL, deleteUserRequestInfoParam); -// if (!"0".equals(deleteUserRequestInfoResponses.getCode())) { -// throw new RuntimeException("删除异构系统指定人员待办流程异常信息:" + deleteUserRequestInfoResponses.getMsg()); -// } + changeManagementService.deleteUserRequestInfoWithLog( + data.getSite(), + data.getCodeNo(), + Constant.BM, + processForm.getWorkflowId(), + processForm.getRequestId(), + oaUser.getId(), + "bmStatusToDead", + "dead", + data.getUsername() + ); } } @@ -2206,17 +2208,19 @@ public class TechnicalSpecificationServiceImpl implements TechnicalSpecification if (!processFormList.isEmpty()) { ProcessFormEntity processForm = processFormList.get(0); // 调用删除统一代办消息的接口,删除已经发送的消息 - DeleteUserRequestInfoParam deleteUserRequestInfoParam = new DeleteUserRequestInfoParam(); - deleteUserRequestInfoParam.setRequestId(processForm.getWorkflowId() + processForm.getRequestId()); - deleteUserRequestInfoParam.setSyscode("PLM"); List oaUserList = changeManagementMapper.getOaUserIdByIsRemark(data.getSite(), data.getCodeNo(), "0"); for (OaUserData oaUser : oaUserList) { - deleteUserRequestInfoParam.setUserId(oaUser.getId()); - String deleteUserRequestInfoURL = apiUrlOa + "/oa/interface/deleteUserRequestInfo"; - ResponseData deleteUserRequestInfoResponses = HttpClientUtil.doPostByRawWithOA(deleteUserRequestInfoURL, deleteUserRequestInfoParam); - if (!"0".equals(deleteUserRequestInfoResponses.getCode())) { - throw new RuntimeException("删除异构系统指定人员待办流程异常信息:" + deleteUserRequestInfoResponses.getMsg()); - } + changeManagementService.deleteUserRequestInfoWithLog( + data.getSite(), + data.getCodeNo(), + Constant.BM, + processForm.getWorkflowId(), + processForm.getRequestId(), + oaUser.getId(), + "bmStatusToFinish", + "finish", + data.getUsername() + ); } } } diff --git a/src/main/resources/mapper/change/ChangeManagementMapper.xml b/src/main/resources/mapper/change/ChangeManagementMapper.xml index ac1b36ba..22a90f25 100644 --- a/src/main/resources/mapper/change/ChangeManagementMapper.xml +++ b/src/main/resources/mapper/change/ChangeManagementMapper.xml @@ -1750,4 +1750,51 @@ AND a.is_remark = '0' AND ISNULL(a.update_by, b.username) = #{userName} + + + INSERT INTO plm_oa_delete_user_request_info_log + ( + site, + document_no, + document_type, + workflow_id, + request_id, + flow_id, + oa_user_id, + syscode, + interface_url, + call_method, + call_scene, + request_json, + response_json, + response_code, + response_msg, + success_flag, + error_msg, + create_by, + create_date + ) + VALUES + ( + #{site}, + #{documentNo}, + #{documentType}, + #{workflowId}, + #{requestId}, + #{flowId}, + #{oaUserId}, + #{syscode}, + #{interfaceUrl}, + #{callMethod}, + #{callScene}, + #{requestJson}, + #{responseJson}, + #{responseCode}, + #{responseMsg}, + #{successFlag}, + #{errorMsg}, + #{createBy}, + GETDATE() + ) +