From 452c00f7e88dc447996f87c0f736e9d3fa8e3710 Mon Sep 17 00:00:00 2001 From: "1378012178@qq.com" <1378012178@qq.com> Date: Thu, 11 Sep 2025 11:15:34 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9C=BA=E6=9E=84=E9=82=80=E8=AF=B7=E5=91=98?= =?UTF-8?q?=E5=B7=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/EmployeesOrgLocalApi.java | 2 + .../orgapplyinfo/api/IOrgApplyInfoApi.java | 2 +- .../entity/OrgAllInfoApiEntity.java | 2 + .../service/impl/EmployeesOrgServiceImpl.java | 54 ++++++++++---- .../orgapplyinfo/entity/OrgAllInfo.java | 3 + .../mapper/OrgApplyInfoMapper.java | 2 +- .../mapper/xml/OrgApplyInfoMapper.xml | 9 ++- .../service/impl/OrgApplyInfoServiceImpl.java | 6 +- .../employess/api/EmployessApplyApi.java | 38 ++++++++-- .../java/com/nu/dto/EmployeesApplyMQDto.java | 70 ++++++++++--------- .../com/nu/entity/EmployeesApplyEntity.java | 2 + 11 files changed, 134 insertions(+), 56 deletions(-) diff --git a/nursing-unit-admin/nu-admin-api/nu-admin-local-api/src/main/java/com/nu/modules/EmployessInfo/api/EmployeesOrgLocalApi.java b/nursing-unit-admin/nu-admin-api/nu-admin-local-api/src/main/java/com/nu/modules/EmployessInfo/api/EmployeesOrgLocalApi.java index 312c1dd..dc4ae25 100644 --- a/nursing-unit-admin/nu-admin-api/nu-admin-local-api/src/main/java/com/nu/modules/EmployessInfo/api/EmployeesOrgLocalApi.java +++ b/nursing-unit-admin/nu-admin-api/nu-admin-local-api/src/main/java/com/nu/modules/EmployessInfo/api/EmployeesOrgLocalApi.java @@ -11,4 +11,6 @@ public interface EmployeesOrgLocalApi { List queryAll(String orgCodes,String openId); String canApply(String employeeId, String orgCode); + + void invitedConfirm(EmployeesApplyEntity dto); } diff --git a/nursing-unit-admin/nu-admin-api/nu-admin-local-api/src/main/java/com/nu/modules/orgapplyinfo/api/IOrgApplyInfoApi.java b/nursing-unit-admin/nu-admin-api/nu-admin-local-api/src/main/java/com/nu/modules/orgapplyinfo/api/IOrgApplyInfoApi.java index 4c1bc5a..bdd27dd 100644 --- a/nursing-unit-admin/nu-admin-api/nu-admin-local-api/src/main/java/com/nu/modules/orgapplyinfo/api/IOrgApplyInfoApi.java +++ b/nursing-unit-admin/nu-admin-api/nu-admin-local-api/src/main/java/com/nu/modules/orgapplyinfo/api/IOrgApplyInfoApi.java @@ -16,5 +16,5 @@ public interface IOrgApplyInfoApi { IPage queryOrgAllInfo(Integer pageNo, Integer pageSize, String orgCode, String title); - List getOrgByOpenId(String status,String openId); + List getOrgByOpenId(String status,String openId,String invited); } diff --git a/nursing-unit-admin/nu-admin-api/nu-admin-local-api/src/main/java/com/nu/modules/orgapplyinfo/entity/OrgAllInfoApiEntity.java b/nursing-unit-admin/nu-admin-api/nu-admin-local-api/src/main/java/com/nu/modules/orgapplyinfo/entity/OrgAllInfoApiEntity.java index e60526f..9795be7 100644 --- a/nursing-unit-admin/nu-admin-api/nu-admin-local-api/src/main/java/com/nu/modules/orgapplyinfo/entity/OrgAllInfoApiEntity.java +++ b/nursing-unit-admin/nu-admin-api/nu-admin-local-api/src/main/java/com/nu/modules/orgapplyinfo/entity/OrgAllInfoApiEntity.java @@ -186,6 +186,8 @@ public class OrgAllInfoApiEntity implements Serializable { private String applyTime; /**审核日期*/ private String auditTime; + /**员工id*/ + private String employeesId; /** 员工信息*/ private EmployeesApiEntity employeesApiEntity; diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/employees/service/impl/EmployeesOrgServiceImpl.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/employees/service/impl/EmployeesOrgServiceImpl.java index 85e7bc8..90b492d 100644 --- a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/employees/service/impl/EmployeesOrgServiceImpl.java +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/employees/service/impl/EmployeesOrgServiceImpl.java @@ -7,8 +7,11 @@ import com.nu.entity.EmployeesApplyEntity; import com.nu.modules.EmployessInfo.api.EmployeesOrgLocalApi; import com.nu.modules.EmployessInfo.entity.EmployeesOrgApiEntity; import com.nu.modules.employees.entity.EmployeesOrg; +import com.nu.modules.employees.entity.NuEmployeesAdvisoryInfo; import com.nu.modules.employees.mapper.EmployeesOrgMapper; import com.nu.modules.employees.service.IEmployeesOrgService; +import com.nu.modules.employees.service.INuEmployeesAdvisoryInfoService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -24,15 +27,19 @@ import java.util.List; @Service public class EmployeesOrgServiceImpl extends ServiceImpl implements IEmployeesOrgService, EmployeesOrgLocalApi { + @Autowired + private INuEmployeesAdvisoryInfoService employeesAdvisoryInfoService; + @Override public String apply(EmployeesApplyEntity dto) { //先将旧数据置为历史状态 UpdateWrapper uw = new UpdateWrapper<>(); - uw.eq("employees_id",dto.getEmployeeId()); - uw.eq("org_code",dto.getOrgCode()); + uw.eq("employees_id", dto.getEmployeeId()); + uw.eq("org_code", dto.getOrgCode()); + uw.eq("iz_history", "1"); EmployeesOrg udto = new EmployeesOrg(); udto.setIzHistory("0"); - baseMapper.update(udto,uw); + baseMapper.update(udto, uw); EmployeesOrg employeesOrg = new EmployeesOrg(); employeesOrg.setOpenId(dto.getOpenId()); @@ -47,11 +54,11 @@ public class EmployeesOrgServiceImpl extends ServiceImpl queryAll(String orgCodes,String openId) { + public List queryAll(String orgCodes, String openId) { QueryWrapper qw = new QueryWrapper<>(); qw.in("org_code", orgCodes.split(",")); - qw.eq("open_id",openId); - qw.eq("iz_history","1"); + qw.eq("open_id", openId); + qw.eq("iz_history", "1"); List list = baseMapper.selectList(qw); List result = BeanUtil.copyToList(list, EmployeesOrgApiEntity.class); return result; @@ -61,17 +68,40 @@ public class EmployeesOrgServiceImpl extends ServiceImpl qw = new QueryWrapper<>(); qw.eq("employees_id", employeeId); - qw.eq("org_code",orgCode); - qw.eq("iz_history","1"); + qw.eq("org_code", orgCode); + qw.eq("iz_history", "1"); EmployeesOrg employeesOrg = baseMapper.selectOne(qw); - if(employeesOrg != null ){ - if("1".equals(employeesOrg.getStatus())){ - return "申请已提交"; + if (employeesOrg != null) { + if ("1".equals(employeesOrg.getStatus())) { + return "申请已提交"; } - if("2".equals(employeesOrg.getStatus())){ + if ("2".equals(employeesOrg.getStatus())) { return "已加入机构,请勿重复提交"; } } return ""; } + + @Override + public void invitedConfirm(EmployeesApplyEntity dto) { + UpdateWrapper uw = new UpdateWrapper<>(); + uw.eq("employees_id", dto.getEmployeeId()); + uw.eq("org_code", dto.getOrgCode()); + uw.eq("iz_history", "1"); + uw.eq("is_invited", "0"); + EmployeesOrg udto = new EmployeesOrg(); + udto.setStatus(dto.getStatus()); + if ("2".equals(dto.getStatus())) { + udto.setEntryTime(dto.getOpeTime());//审批通过的话将入职时间设置进去 + } + baseMapper.update(udto, uw); + + if ("2".equals(dto.getStatus())) { + //修改员工注册表的入驻状态 + NuEmployeesAdvisoryInfo employeesAd = new NuEmployeesAdvisoryInfo(); + employeesAd.setId(dto.getEmployeeId()); + employeesAd.setIzEntry("0"); + employeesAdvisoryInfoService.updateById(employeesAd); + } + } } diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/orgapplyinfo/entity/OrgAllInfo.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/orgapplyinfo/entity/OrgAllInfo.java index f589f88..ccafaa2 100644 --- a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/orgapplyinfo/entity/OrgAllInfo.java +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/orgapplyinfo/entity/OrgAllInfo.java @@ -19,6 +19,9 @@ public class OrgAllInfo implements Serializable { /**机构id*/ private String orgId; + /**员工id*/ + private String employeesId; + /** * 机构/部门名称 */ diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/orgapplyinfo/mapper/OrgApplyInfoMapper.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/orgapplyinfo/mapper/OrgApplyInfoMapper.java index ee01e1e..45e63b4 100644 --- a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/orgapplyinfo/mapper/OrgApplyInfoMapper.java +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/orgapplyinfo/mapper/OrgApplyInfoMapper.java @@ -20,5 +20,5 @@ public interface OrgApplyInfoMapper extends BaseMapper { IPage queryOrgInfo(@Param("page") IPage page, @Param("orgCode") String orgCode, @Param("title") String title); - IPage getOrgByOpenId(IPage page, @Param("openId") String openId, @Param("status") String status); + IPage getOrgByOpenId(IPage page, @Param("openId") String openId, @Param("status") String status, @Param("invited") String invited); } diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/orgapplyinfo/mapper/xml/OrgApplyInfoMapper.xml b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/orgapplyinfo/mapper/xml/OrgApplyInfoMapper.xml index 09ca597..974d096 100644 --- a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/orgapplyinfo/mapper/xml/OrgApplyInfoMapper.xml +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/orgapplyinfo/mapper/xml/OrgApplyInfoMapper.xml @@ -80,10 +80,13 @@ d.iz_elder_tag_main, d.media_url, o.*, + eo.open_id, + eo.employees_id, + eo.org_code, eo.status AS applyStatus, eo.iz_online, eo.iz_freeze, - eo.iz_invited, + eo.is_invited, eo.entry_time, eo.create_time AS apply_time, eo.update_time AS audit_time @@ -101,6 +104,9 @@ #{item} + + and eo.is_invited = #{invited} + @@ -108,6 +114,7 @@ ORDER BY + eo.iz_history desc, CASE eo.status WHEN '2' THEN 1 WHEN '1' THEN 2 diff --git a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/orgapplyinfo/service/impl/OrgApplyInfoServiceImpl.java b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/orgapplyinfo/service/impl/OrgApplyInfoServiceImpl.java index 7d22f84..85b9233 100644 --- a/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/orgapplyinfo/service/impl/OrgApplyInfoServiceImpl.java +++ b/nursing-unit-admin/nu-admin-biz/src/main/java/com/nu/modules/orgapplyinfo/service/impl/OrgApplyInfoServiceImpl.java @@ -344,7 +344,7 @@ public class OrgApplyInfoServiceImpl extends ServiceImpl getOrgByOpenId(IPage page, String openId) { - return baseMapper.getOrgByOpenId(page, openId,"2"); + return baseMapper.getOrgByOpenId(page, openId,"2",null); } @Override @@ -368,9 +368,9 @@ public class OrgApplyInfoServiceImpl extends ServiceImpl getOrgByOpenId(String status,String openId) { + public List getOrgByOpenId(String status,String openId,String invited) { IPage page = new Page<>(1, -1); - IPage r_ = baseMapper.getOrgByOpenId(page, openId,status); + IPage r_ = baseMapper.getOrgByOpenId(page, openId,status,invited); List records = r_.getRecords(); List result = BeanUtil.copyToList(records, OrgAllInfoApiEntity.class); return result; 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 563aa07..6b13d56 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 @@ -17,6 +17,7 @@ import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.util.Date; import java.util.List; import java.util.Map; @@ -43,7 +44,7 @@ public class EmployessApplyApi { if (StringUtils.isBlank(dto.getOrgCode())) { return Result.error("申请失败"); } - String msg = employeesOrgLocalApi.canApply(dto.getEmployeeId(),dto.getOrgCode()); + String msg = employeesOrgLocalApi.canApply(dto.getEmployeeId(), dto.getOrgCode()); if (StringUtils.isNotBlank(msg)) { return Result.error(msg); } @@ -85,7 +86,7 @@ public class EmployessApplyApi { if (orgCodes.endsWith(",")) { orgCodes.substring(0, orgCodes.length() - 2); } - List employeesOrgList = employeesOrgLocalApi.queryAll(orgCodes,openId); + List employeesOrgList = employeesOrgLocalApi.queryAll(orgCodes, openId); if (employeesOrgList != null && employeesOrgList.size() > 0) { employeesOrgList.stream().forEach(eo -> { EmployeesApiEntity en = new EmployeesApiEntity(); @@ -109,8 +110,37 @@ public class EmployessApplyApi { * @return */ @GetMapping(value = "/getEmployeesOrgRela") - public Result> getEmployeesOrgRela(@RequestParam(value = "status", required = false) String status, @RequestParam(value = "openId") String openId) { - List result = orgApplyInfoApi.getOrgByOpenId(status, openId); + public Result> getEmployeesOrgRela(@RequestParam(value = "status", required = false) String status, @RequestParam(value = "invited",required = false) String invited, @RequestParam(value = "openId") String openId) { + List result = orgApplyInfoApi.getOrgByOpenId(status, openId, invited); return Result.OK(result); } + + /** + * 机构邀请员工-员工确认操作 + * 1、需要修改员工机构表被邀请的那条记录的status 2同意/3拒绝 + * 2、给对应机构发通知,让他修改邀请结果 + * 3、如果通过将此人是否已加入机构改为已加入 + * + * @param dto employeeId status orgCode 必传 + * @return + */ + @AutoLog(value = "机构邀请员工-员工确认操作") + @PostMapping("/invitedConfirm") + public Result invitedConfirm(@RequestBody EmployeesApplyEntity dto) { + if (StringUtils.isBlank(dto.getOrgCode())) { + return Result.error("申请失败"); + } + dto.setOpeTime(new Date()); + employeesOrgLocalApi.invitedConfirm(dto); + + EmployeesApplyMQDto mqdto = new EmployeesApplyMQDto(); + mqdto.setStatus(dto.getStatus()); + mqdto.setEmployeeId(dto.getEmployeeId()); + mqdto.setOrgCode(dto.getOrgCode()); + mqdto.setOpeTime(dto.getOpeTime()); + rabbitMQUtil.sendToExchange("hldy.employees", dto.getOrgCode() + ".employees.invitedConfirm", mqdto); + + return Result.ok(); + } + } diff --git a/nursing-unit-common/src/main/java/com/nu/dto/EmployeesApplyMQDto.java b/nursing-unit-common/src/main/java/com/nu/dto/EmployeesApplyMQDto.java index 792c198..d7bb8d0 100644 --- a/nursing-unit-common/src/main/java/com/nu/dto/EmployeesApplyMQDto.java +++ b/nursing-unit-common/src/main/java/com/nu/dto/EmployeesApplyMQDto.java @@ -15,78 +15,80 @@ import java.util.Date; public class EmployeesApplyMQDto implements Serializable { private static final long serialVersionUID = 1L; - /**id*/ + /**id*/ private String id; /**open_id*/ private String openId; /**员工id*/ private String employeeId; - /**姓名*/ + /**姓名*/ private String name; - /**性别*/ + /**性别*/ private String sex; - /**民族*/ + /**民族*/ private String national; - /**身份证号*/ + /**身份证号*/ private String idCard; - /**联系电话*/ + /**联系电话*/ private String tel; - /**出生日期*/ + /**出生日期*/ private Date dateOfBirth; - /**婚否*/ + /**婚否*/ private String marriedOrNot; - /**身高*/ + /**身高*/ private Double height; - /**体重*/ + /**体重*/ private Double weight; - /**家庭住址*/ + /**家庭住址*/ private String address; - /**是否吸烟*/ + /**是否吸烟*/ private String isSmoking; - /**健康状况*/ + /**健康状况*/ private String healthStatus; - /**户籍所在地*/ + /**户籍所在地*/ private String houseAddress; - /**政治面貌*/ + /**政治面貌*/ private String politicalAppearance; - /**紧急联系人*/ + /**紧急联系人*/ private String emergencyContact; - /**紧急联系人电话*/ + /**紧急联系人电话*/ private String emergencyTel; - /**紧急联系人与本人关系*/ + /**紧急联系人与本人关系*/ private String emergencyRelationship; - /**户口性质*/ + /**户口性质*/ private String hukouNature; - /**身份证正面*/ + /**身份证正面*/ private String idCardPositive; - /**身份证反面*/ + /**身份证反面*/ private String idCardNegative; - /**健康证正面*/ + /**健康证正面*/ private String healthCertificatePositive; - /**健康证反面*/ + /**健康证反面*/ private String healthCertificateNegative; - /**银行卡正面*/ + /**银行卡正面*/ private String bankPositive; - /**银行卡反面*/ + /**银行卡反面*/ private String bankNegative; - /**资质证*/ + /**资质证*/ private String qualification; - /**无犯罪证明*/ + /**无犯罪证明*/ private String noCrimeCertificate; - /**区域*/ + /**区域*/ private String regional; - /**是否删除 0未删除 1删除*/ + /**是否删除 0未删除 1删除*/ private String delFlag; - /**申请日期*/ + /**申请日期*/ private Date createTime; - /**更新人*/ + /**更新人*/ private String updateBy; - /**更新日期*/ + /**更新日期*/ private Date updateTime; - /**申请状态 1申请中 2通过 3驳回*/ + /**申请状态 1申请中 2通过 3驳回*/ private String status; - /**审核备注*/ + /**审核备注*/ private String auditContent; /**机构编码*/ private String orgCode; + /**操作时间*/ + private Date opeTime; } diff --git a/nursing-unit-common/src/main/java/com/nu/entity/EmployeesApplyEntity.java b/nursing-unit-common/src/main/java/com/nu/entity/EmployeesApplyEntity.java index 21e5734..4abf6fb 100644 --- a/nursing-unit-common/src/main/java/com/nu/entity/EmployeesApplyEntity.java +++ b/nursing-unit-common/src/main/java/com/nu/entity/EmployeesApplyEntity.java @@ -93,4 +93,6 @@ public class EmployeesApplyEntity implements Serializable { private String auditContent; /**机构编码*/ private String orgCode; + + private Date opeTime; }