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(); }