From 96ea2254d5d36e7c8759f36d5302be3ab9f81143 Mon Sep 17 00:00:00 2001 From: "1378012178@qq.com" <1378012178@qq.com> Date: Tue, 21 Oct 2025 11:25:05 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E4=BF=AE=E5=A4=8Dbug=EF=BC=9A?= =?UTF-8?q?=E5=91=98=E5=B7=A5=E5=85=A5=E9=A9=BB=E6=9C=BA=E6=9E=84/?= =?UTF-8?q?=E8=A2=AB=E6=9C=BA=E6=9E=84=E9=82=80=E8=AF=B7=E9=80=9A=E8=BF=87?= =?UTF-8?q?=E5=90=8E=EF=BC=8C=E6=B7=BB=E5=8A=A0=E5=AF=B9=E5=BA=94=E6=9C=BA?= =?UTF-8?q?=E6=9E=84=E8=B4=A6=E5=8F=B7=E6=97=A0=E6=B3=95=E7=99=BB=E5=BD=95?= =?UTF-8?q?=E9=97=AE=E9=A2=98=202=E3=80=81=E4=BF=AE=E5=A4=8Dbug=EF=BC=9A?= =?UTF-8?q?=E5=91=98=E5=B7=A5=E6=96=B0=E5=85=A5=E9=A9=BB=E6=9C=BA=E6=9E=84?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E8=B4=A6=E5=8F=B7=E6=97=B6=EF=BC=8C=E5=A6=82?= =?UTF-8?q?=E6=9E=9C=E5=B7=B2=E5=9C=A8=E5=85=B6=E4=BB=96=E6=9C=BA=E6=9E=84?= =?UTF-8?q?=E5=85=A5=E9=A9=BB=EF=BC=8C=E5=88=99=E5=A4=8D=E7=94=A8=E5=AF=B9?= =?UTF-8?q?=E5=BA=94=E5=B9=B3=E5=8F=B0=E8=B4=A6=E5=8F=B7=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E6=9C=AA=E7=94=9F=E6=95=88=203=E3=80=81=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=EF=BC=9A=E5=91=98=E5=B7=A5=E5=8F=98=E6=9B=B4=E8=B4=A6=E5=8F=B7?= =?UTF-8?q?=E5=AF=86=E7=A0=81=E6=97=B6=EF=BC=8C=E5=85=B6=E5=AE=83=E4=B8=9A?= =?UTF-8?q?=E5=8A=A1=E5=B9=B3=E5=8F=B0=E7=BB=9F=E4=B8=80=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E6=AD=A4=E5=91=98=E5=B7=A5=E5=AF=86=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../listener/EmployeesMQListener.java | 78 ++++++++----------- .../employess/api/EmployessApplyApi.java | 9 +++ 2 files changed, 42 insertions(+), 45 deletions(-) diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/mq/employees/listener/EmployeesMQListener.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/mq/employees/listener/EmployeesMQListener.java index b663e8a..30e0464 100644 --- a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/mq/employees/listener/EmployeesMQListener.java +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/mq/employees/listener/EmployeesMQListener.java @@ -78,25 +78,22 @@ public class EmployeesMQListener { //审批通过,判断是否需要通知业务系统初始化登录账户。需要初始化则直接通知;不需要初始化则需要从已存在的业务系统中获取账号信息,并将账号信息通知给此审批的业务系统 if ("2".equals(dto.getAuditStatus())) { + //需要初始化,直接通知审批业务系统进行初始化 + SysUserMQDto sysUserMQDto = new SysUserMQDto(); + sysUserMQDto.setEmployeeId(dto.getEmployeeId()); + sysUserMQDto.setIzInit("1"); + sysUserMQDto.setIzInitPassword("1"); + NuEmployeesAdvisoryInfo employeesAd = employeesAdvisoryInfoService.getById(dto.getEmployeeId()); if (employeesAd.getIzInit().equals("1")) { - //需要初始化,直接通知审批业务系统进行初始化 - SysUserMQDto sysUserMQDto = new SysUserMQDto(); - sysUserMQDto.setEmployeeId(dto.getEmployeeId()); - sysUserMQDto.setIzInit("1"); - sysUserMQDto.setIzInitPassword("0");//不需要更新其他业务平台密码 - rabbitMQUtil.sendToExchange("hldy.employees", dto.getOrgCode() + ".employees.initsysuser", sysUserMQDto); + //不需要更新其他业务平台密码 + sysUserMQDto.setIzInitPassword("0"); } else { long diffInMillis = Math.abs((new Date()).getTime() - employeesAd.getLastLoginTime().getTime()); // 30天的毫秒数(近似值) long oneMonthInMillis = 30L * 24 * 60 * 60 * 1000; if (diffInMillis > oneMonthInMillis) { - //最近登录时间大于30天,也需要初始化 - SysUserMQDto sysUserMQDto = new SysUserMQDto(); - sysUserMQDto.setEmployeeId(dto.getEmployeeId()); - sysUserMQDto.setIzInit("1"); - sysUserMQDto.setIzInitPassword("1");//需要更新其他业务平台密码 - rabbitMQUtil.sendToExchange("hldy.employees", dto.getOrgCode() + ".employees.initsysuser", sysUserMQDto); + } else { UpdateWrapper uwOrg = new UpdateWrapper<>(); uwOrg.eq("employees_id", dto.getEmployeeId()); @@ -106,21 +103,19 @@ public class EmployeesMQListener { uwOrg.eq("org_code", employeesAd.getLastLoginOrg());//机构 EmployeesOrg empOrg = employeesOrgService.getOne(uwOrg); if (empOrg != null) { - //不需要初始化,发送MQ从原业务系统获取账号信息,MQ收到账号信息后再通知给审批业务系统 - SysUserMQDto sysUserMQDto = new SysUserMQDto(); - sysUserMQDto.setEmployeeId(dto.getEmployeeId()); - sysUserMQDto.setTargetOrgCode(dto.getOrgCode()); - rabbitMQUtil.sendToExchange("hldy.employees", employeesAd.getLastLoginOrg() + ".employees.sysuser.info", sysUserMQDto); + //发送MQ从原业务系统获取账号信息,MQ收到账号信息后再通知给审批业务系统 + SysUserMQDto sysUserMQDto_ = new SysUserMQDto(); + sysUserMQDto_.setEmployeeId(dto.getEmployeeId()); + sysUserMQDto_.setTargetOrgCode(dto.getOrgCode()); + rabbitMQUtil.sendToExchange("hldy.employees", employeesAd.getLastLoginOrg() + ".employees.sysuser.info", sysUserMQDto_); + } else { - //原账号冻结,也需要初始化 - SysUserMQDto sysUserMQDto = new SysUserMQDto(); - sysUserMQDto.setEmployeeId(dto.getEmployeeId()); - sysUserMQDto.setIzInit("1"); - sysUserMQDto.setIzInitPassword("1");//需要更新其他业务平台密码 - rabbitMQUtil.sendToExchange("hldy.employees", dto.getOrgCode() + ".employees.initsysuser", sysUserMQDto); + } } } + //审批通过 初始化账号密码 + rabbitMQUtil.sendToExchange("hldy.employees", dto.getOrgCode() + ".employees.initsysuser", sysUserMQDto); } } @@ -188,25 +183,22 @@ public class EmployeesMQListener { exchange = @Exchange(name = "hldy.employees", type = ExchangeTypes.DIRECT), key = "hldy.employeesorg.howtoinitsysuser"), errorHandler = "employeesMQErrorHandler") public void handleHowToInitSysuser(SysUserMQDto dto) { + //原账号冻结,也需要初始化 + SysUserMQDto sysUserMQDto = new SysUserMQDto(); + sysUserMQDto.setEmployeeId(dto.getEmployeeId()); + sysUserMQDto.setIzInit("1"); + sysUserMQDto.setIzInitPassword("1");//需要更新其他业务平台密码 + NuEmployeesAdvisoryInfo employeesAd = employeesAdvisoryInfoService.getById(dto.getEmployeeId()); if (employeesAd.getIzInit().equals("1")) { - //需要初始化,直接通知审批业务系统进行初始化 - SysUserMQDto sysUserMQDto = new SysUserMQDto(); - sysUserMQDto.setEmployeeId(dto.getEmployeeId()); - sysUserMQDto.setIzInit("1"); - sysUserMQDto.setIzInitPassword("0");//不需要更新其他业务平台密码 - rabbitMQUtil.sendToExchange("hldy.employees", dto.getOrgCode() + ".employees.initsysuser", sysUserMQDto); + //不需要更新其他业务平台密码 + sysUserMQDto.setIzInitPassword("0"); } else { long diffInMillis = Math.abs((new Date()).getTime() - employeesAd.getLastLoginTime().getTime()); // 30天的毫秒数(近似值) long oneMonthInMillis = 30L * 24 * 60 * 60 * 1000; if (diffInMillis > oneMonthInMillis) { - //最近登录时间大于30天,也需要初始化 - SysUserMQDto sysUserMQDto = new SysUserMQDto(); - sysUserMQDto.setEmployeeId(dto.getEmployeeId()); - sysUserMQDto.setIzInit("1"); - sysUserMQDto.setIzInitPassword("1");//需要更新其他业务平台密码 - rabbitMQUtil.sendToExchange("hldy.employees", dto.getOrgCode() + ".employees.initsysuser", sysUserMQDto); + //最近登录时间大于30天 } else { UpdateWrapper uwOrg = new UpdateWrapper<>(); uwOrg.eq("employees_id", dto.getEmployeeId()); @@ -217,21 +209,17 @@ public class EmployeesMQListener { EmployeesOrg empOrg = employeesOrgService.getOne(uwOrg); if (empOrg != null) { //不需要初始化,发送MQ从原业务系统获取账号信息,MQ收到账号信息后再通知给审批业务系统 - SysUserMQDto sysUserMQDto = new SysUserMQDto(); - sysUserMQDto.setEmployeeId(dto.getEmployeeId()); - sysUserMQDto.setTargetOrgCode(dto.getOrgCode()); - rabbitMQUtil.sendToExchange("hldy.employees", employeesAd.getLastLoginOrg() + ".employees.sysuser.info", sysUserMQDto); + SysUserMQDto sysUserMQDto_ = new SysUserMQDto(); + sysUserMQDto_.setEmployeeId(dto.getEmployeeId()); + sysUserMQDto_.setTargetOrgCode(dto.getOrgCode()); + rabbitMQUtil.sendToExchange("hldy.employees", employeesAd.getLastLoginOrg() + ".employees.sysuser.info", sysUserMQDto_); } else { - //原账号冻结,也需要初始化 - SysUserMQDto sysUserMQDto = new SysUserMQDto(); - sysUserMQDto.setEmployeeId(dto.getEmployeeId()); - sysUserMQDto.setIzInit("1"); - sysUserMQDto.setIzInitPassword("1");//需要更新其他业务平台密码 - rabbitMQUtil.sendToExchange("hldy.employees", dto.getOrgCode() + ".employees.initsysuser", sysUserMQDto); + } } } + rabbitMQUtil.sendToExchange("hldy.employees", dto.getOrgCode() + ".employees.initsysuser", sysUserMQDto); } diff --git a/nursing-unit-api/src/main/java/com/nu/modules/wechat/employess/api/EmployessApplyApi.java b/nursing-unit-api/src/main/java/com/nu/modules/wechat/employess/api/EmployessApplyApi.java index 5a242c4..26c89ad 100644 --- a/nursing-unit-api/src/main/java/com/nu/modules/wechat/employess/api/EmployessApplyApi.java +++ b/nursing-unit-api/src/main/java/com/nu/modules/wechat/employess/api/EmployessApplyApi.java @@ -3,6 +3,7 @@ package com.nu.modules.wechat.employess.api; import com.baomidou.mybatisplus.core.metadata.IPage; import com.google.common.collect.Maps; import com.nu.dto.EmployeesApplyMQDto; +import com.nu.dto.SysUserMQDto; import com.nu.entity.EmployeesApplyEntity; import com.nu.modules.EmployessInfo.api.EmployeesOrgLocalApi; import com.nu.entity.EmployeesOrgApiEntity; @@ -144,6 +145,14 @@ public class EmployessApplyApi { mqdto.setOpeTime(dto.getOpeTime()); rabbitMQUtil.sendToExchange("hldy.employees", dto.getOrgCode() + ".employees.invitedConfirm", mqdto); + //需要初始化,直接通知审批业务系统进行初始化 +// if ("2".equals(dto.getStatus())) { +// SysUserMQDto sysUserMQDto = new SysUserMQDto(); +// sysUserMQDto.setEmployeeId(dto.getEmployeeId()); +// sysUserMQDto.setIzInit("1"); +// sysUserMQDto.setIzInitPassword("1"); +// rabbitMQUtil.sendToExchange("hldy.employees", dto.getOrgCode() + ".employees.initsysuser", sysUserMQDto); +// } return Result.ok(); }