From 57b1d0498e3832478986fbd1277bfe278cea816a Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期一, 12 一月 2026 09:39:30 +0800
Subject: [PATCH] 修改简道云人员推送删除功能bug
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java | 124 ++++++++++++++++++++++++++---------------
1 files changed, 79 insertions(+), 45 deletions(-)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
index 0798ec7..390f9ff 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -377,6 +377,38 @@
.eq(Empower::getIsdeleted,Constants.ZERO)
.set(Empower::getSendStatus,Constants.ZERO));
}
+ public void cancelAllMemberEmpowerBathch(List<Integer> members,LoginUserInfo user) {
+ //鍒犻櫎鍏ㄩ儴鏉冮檺
+ Date date = new Date();
+ memberMapper.update(null,new UpdateWrapper<Member>().lambda()
+ .in(Member::getId,members)
+ .set(Member::getRoleId,null)
+ .set(Member::getAuthStatus,Constants.ZERO)
+ .set(Member::getStartTime,null)
+ .set(Member::getEndTime,null)
+ .set(Member::getEditor,user.getId())
+ .set(Member::getEditDate,new Date()) );
+ memberRoleMapper.update(null,new UpdateWrapper<MemberRole>().lambda()
+ .in(MemberRole::getMemberId,members)
+ .set(MemberRole::getIsdeleted,Constants.ONE)
+ .set(MemberRole::getEdirot,user.getId())
+ .set(MemberRole::getEditDate,date));
+ //鎶婃墍鏈夊緟涓嬪彂鐨勪换鍔℃敼鎴� 宸插彇娑�
+ empowerMapper.update(null,new UpdateWrapper<Empower>().lambda()
+ .in(Empower::getMemberId,members)
+ .eq(Empower::getIsdeleted,Constants.ZERO)
+ .eq(Empower::getSendStatus,Constants.EmpowerStatus.wait)
+ .set(Empower::getIsdeleted,Constants.ONE)
+ .set(Empower::getSendStatus,Constants.EmpowerStatus.cancel));
+ //鎵�鏈変笅鍙戣繃鐨勪换鍔★紝鏀逛负寰呭垹闄ゆ潈闄�
+ empowerMapper.update(null,new UpdateWrapper<Empower>().lambda()
+ .in(Empower::getMemberId,members)
+ .set(Empower::getIsdeleted,Constants.ONE)
+ .notIn(Empower::getSendStatus,Constants.EmpowerStatus.fail)
+ .set(Empower::getRemark,"绛夊緟鍚屾鍒犻櫎瀹夐槻骞冲彴")
+ .eq(Empower::getIsdeleted,Constants.ZERO)
+ .set(Empower::getSendStatus,Constants.ZERO));
+ }
private void isMemberParamValid(Member member) {
if(member.getCompanyId() == null){
@@ -682,6 +714,7 @@
}
if(memberRole.getRoleIds() ==null || memberRole.getRoleIds().length ==0){
//濡傛灉鏄竻绌烘潈闄�
+ cancelAllMemberEmpowerBathch(memberRole.getIds(),memberRole.getLoginUserInfo() );
}else{
if( ! (Constants.equalsInteger(memberRole.getTimeType(),Constants.ZERO)
||Constants.equalsInteger(memberRole.getTimeType(),Constants.TWO)
@@ -695,54 +728,54 @@
if(Constants.equalsInteger(memberRole.getTimeType(),Constants.ONE) && memberRole.getEndTime().getTime() <= memberRole.getStartTime().getTime()){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鏈夋晥鏈熸埅姝㈡棩鏈熶笉鑳藉皬浜庡紑濮嬫椂闂达紒");
}
- }
- if(Constants.equalsInteger(memberRole.getTimeType(),Constants.ZERO) ){
- memberRole.setStartTime(null);
- memberRole.setEndTime(null);
- }
- for (Integer id : memberRole.getIds()){
- Member member = memberMapper.selectById(id);
- if(member==null || member.getIsdeleted().equals(Constants.ONE)){
- //濡傛灉鍛樺伐淇℃伅涓嶅悎娉曠洿鎺ヨ烦杩�
- continue;
+ if(Constants.equalsInteger(memberRole.getTimeType(),Constants.ZERO) ){
+ memberRole.setStartTime(null);
+ memberRole.setEndTime(null);
}
- if(StringUtils.isBlank(member.getFaceId()) || !Constants.equalsInteger(member.getFaceStatus(),Constants.ONE)){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝鐢ㄦ埛銆�"+member.getName()+"銆戠殑浜鸿劯淇℃伅涓嶆弧瓒虫巿鏉冩潯浠讹紝璇疯繑鍥炲畬鍠勫悗鍐嶈繘琛岃鎿嶄綔锛�");
- }
- member.setStartTime(memberRole.getStartTime());
- member.setEndTime(memberRole.getEndTime());
- Integer ischange = getRoleIdByParam(memberRole.getRoleIds(),member,memberRoleMapper,deviceRoleMapper);
- if(memberRole.getRoleIds()!=null && memberRole.getRoleIds().length>0 && StringUtils.isBlank(member.getRoleId())){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝鏈煡璇㈠埌鏈夋晥闂ㄧ缁勬暟鎹�");
- }
- if(Constants.equalsInteger(memberRole.getTimeType(),Constants.TWO)){
- //濡傛灉鎸夌収鍩硅鏃ユ湡涓嬪彂
- TrainTime trainTime = trainTimeMapper.selectOne(new QueryWrapper<TrainTime>().lambda()
- .eq(TrainTime::getMemberId,id )
- .eq(TrainTime::getIsdeleted,Constants.ZERO )
- .orderByDesc(TrainTime::getId)
- .last("limit 1")
- );
- if(trainTime == null || trainTime.getStartTime()==null || trainTime.getEndTime() ==null || trainTime.getStartTime().getTime()>=trainTime.getEndTime().getTime()){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝鐢ㄦ埛銆�"+member.getName()+"銆戝煿璁湁鏁堟湡淇℃伅涓虹┖锛岃杩斿洖瀹屽杽鍚庡啀杩涜璇ユ搷浣滐紒");
+ for (Integer id : memberRole.getIds()){
+ Member member = memberMapper.selectById(id);
+ if(member==null || member.getIsdeleted().equals(Constants.ONE)){
+ //濡傛灉鍛樺伐淇℃伅涓嶅悎娉曠洿鎺ヨ烦杩�
+ continue;
}
- if(trainTime.getEndTime() .getTime()< System.currentTimeMillis()){
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝鐢ㄦ埛銆�"+member.getName()+"銆戝煿璁湁鏁堟湡宸茶繃鏈燂紝璇烽噸鏂颁笂浼犲叾鍩硅鏈夋晥鏈燂紒");
+ if(StringUtils.isBlank(member.getFaceId()) || !Constants.equalsInteger(member.getFaceStatus(),Constants.ONE)){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝鐢ㄦ埛銆�"+member.getName()+"銆戠殑浜鸿劯淇℃伅涓嶆弧瓒虫巿鏉冩潯浠讹紝璇疯繑鍥炲畬鍠勫悗鍐嶈繘琛岃鎿嶄綔锛�");
}
- memberRole.setStartTime(trainTime.getStartTime());
- memberRole.setEndTime(trainTime.getEndTime());
+ member.setStartTime(memberRole.getStartTime());
+ member.setEndTime(memberRole.getEndTime());
+ Integer ischange = getRoleIdByParam(memberRole.getRoleIds(),member,memberRoleMapper,deviceRoleMapper);
+ if(memberRole.getRoleIds()!=null && memberRole.getRoleIds().length>0 && StringUtils.isBlank(member.getRoleId())){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝鏈煡璇㈠埌鏈夋晥闂ㄧ缁勬暟鎹�");
+ }
+ if(Constants.equalsInteger(memberRole.getTimeType(),Constants.TWO)){
+ //濡傛灉鎸夌収鍩硅鏃ユ湡涓嬪彂
+ TrainTime trainTime = trainTimeMapper.selectOne(new QueryWrapper<TrainTime>().lambda()
+ .eq(TrainTime::getMemberId,id )
+ .eq(TrainTime::getIsdeleted,Constants.ZERO )
+ .orderByDesc(TrainTime::getId)
+ .last("limit 1")
+ );
+ if(trainTime == null || trainTime.getStartTime()==null || trainTime.getEndTime() ==null || trainTime.getStartTime().getTime()>=trainTime.getEndTime().getTime()){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝鐢ㄦ埛銆�"+member.getName()+"銆戝煿璁湁鏁堟湡淇℃伅涓虹┖锛岃杩斿洖瀹屽杽鍚庡啀杩涜璇ユ搷浣滐紒");
+ }
+ if(trainTime.getEndTime() .getTime()< System.currentTimeMillis()){
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝鐢ㄦ埛銆�"+member.getName()+"銆戝煿璁湁鏁堟湡宸茶繃鏈燂紝璇烽噸鏂颁笂浼犲叾鍩硅鏈夋晥鏈燂紒");
+ }
+ memberRole.setStartTime(trainTime.getStartTime());
+ memberRole.setEndTime(trainTime.getEndTime());
+ }
+ memberMapper.update(null,new UpdateWrapper<Member>().lambda()
+ .eq(Member::getId,member.getId())
+ .set(Member::getRoleId,member.getRoleId())
+ .set(Member::getAuthStatus,Constants.ONE)
+ .set(Member::getStartTime,memberRole.getStartTime())
+ .set(Member::getEndTime,memberRole.getEndTime())
+ .set(Member::getEditor,memberRole.getLoginUserInfo().getId())
+ .set(Member::getEditDate,new Date()) );
+ saveUserActionBiz(member,memberRole.getLoginUserInfo(), Constants.UserActionType.AUTH_ROLE,userActionJoinMapper,null);
+ //閲嶆柊鎺堟潈
+ HkSyncOrgUserToHKServiceImpl.dealMemberRoleEmpowerDo(null,member,deviceRoleMapper,empowerMapper,deviceMapper);
}
- memberMapper.update(null,new UpdateWrapper<Member>().lambda()
- .eq(Member::getId,member.getId())
- .set(Member::getRoleId,member.getRoleId())
- .set(Member::getAuthStatus,Constants.ONE)
- .set(Member::getStartTime,memberRole.getStartTime())
- .set(Member::getEndTime,memberRole.getEndTime())
- .set(Member::getEditor,memberRole.getLoginUserInfo().getId())
- .set(Member::getEditDate,new Date()) );
- saveUserActionBiz(member,memberRole.getLoginUserInfo(), Constants.UserActionType.AUTH_ROLE,userActionJoinMapper,null);
- //閲嶆柊鎺堟潈
- HkSyncOrgUserToHKServiceImpl.dealMemberRoleEmpowerDo(null,member,deviceRoleMapper,empowerMapper,deviceMapper);
}
}
@@ -978,6 +1011,7 @@
.set(Member::getRoleId,null)
.set(StringUtils.isNotBlank(updateMember.getErpId()),Member::getErpId,updateMember.getErpId())
.set(StringUtils.isNotBlank(updateMember.getDdId()),Member::getDdId,updateMember.getDdId())
+ .set(StringUtils.isNotBlank(updateMember.getPhone()),Member::getPhone,updateMember.getPhone())
.set(StringUtils.isNotBlank(updateMember.getName()),Member::getName,updateMember.getName())
.set(Member::getEditDate,updateMember.getEditDate())
.set(Member::getEditor,updateMember.getEditor())
@@ -2071,7 +2105,7 @@
.eq(Member::getStatus,Constants.ZERO)
.eq(Member::getWorkStatus,Constants.ZERO)
.eq(Member::getCanVisit,Constants.ONE)
- .eq(Company::getType,Constants.ONE)
+// .eq(Company::getType,Constants.ONE)
.orderByAsc(Member::getPinyin)
);
List<MemberVO> memberVOList = new ArrayList<>();
--
Gitblit v1.9.3