From 5169a76246a92ac599846e340045ee8f8d8342ca Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期一, 08 一月 2024 10:54:10 +0800 Subject: [PATCH] 整理 --- server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncOrgUserServiceImpl.java | 77 +++++++++++++++++++++++++++++++++++--- 1 files changed, 70 insertions(+), 7 deletions(-) diff --git a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncOrgUserServiceImpl.java b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncOrgUserServiceImpl.java index 8b0c4f1..d4654a1 100644 --- a/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncOrgUserServiceImpl.java +++ b/server/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncOrgUserServiceImpl.java @@ -25,15 +25,13 @@ import com.github.yulichang.query.MPJQueryWrapper; import com.github.yulichang.wrapper.MPJLambdaWrapper; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.UUID; +import java.util.*; /** * 娴峰悍缁勭粐浜哄憳閫氳繃姝ervice瀹炵幇 @@ -45,6 +43,8 @@ public class HkSyncOrgUserServiceImpl extends HkSyncBaseServiceImpl { @Autowired private CompanyMapper companyMapper; + @Autowired + private DeviceRoleMapper deviceRoleMapper; @Autowired private MemberRoleMapper memberRoleMapper; @Autowired @@ -282,7 +282,36 @@ Constants.DEALING_HK_USER =false; } } - + private List<Integer> getRoleIdByParam( Member member) { + //鏌ヨ鏁版嵁搴撳瓨鍦ㄧ殑鏉冮檺 + List<DeviceRole> deviceRoleList= deviceRoleMapper.selectList(new QueryWrapper<DeviceRole>().lambda() + .eq(DeviceRole::getType,Constants.TWO) + .exists("(select b.id from member_role b where b.ROLE_ID = device_role.ID and b.MEMBER_ID="+member.getRoleId()+")")); + if(CollectionUtils.isNotEmpty(deviceRoleList)){ + List<MemberRole> memberRoleList = new ArrayList<>(); + String ids = ""; + List<Integer> r = new ArrayList<>(); + for (int i = 0; i < deviceRoleList.size(); i++) { + DeviceRole deviceRole =deviceRoleList.get(i); + if(i>0){ + ids += ","; + } + String doorids =deviceRole.getDoorIds(); + if(StringUtils.isNotBlank(doorids)){ + String[] ss = doorids.split(","); + try { + for(String s :ss){ + r.add(Integer.parseInt(s)); + } + }catch (Exception e){ + //鑴忔暟鎹笉澶勭悊 + } + } + } + return r; + } + return null; + } @Transactional private boolean dealMemberInfoBiz(Member c, Date date, String path) { if( c.getCompanyId() == null){ @@ -298,7 +327,39 @@ } return false; } - + private void dealMemberRoleEmpower(Member member ) { + List<Integer> doorIds = getRoleIdByParam(member); + if(doorIds==null || doorIds.size() == 0){ + return; + } + if(StringUtils.isBlank(member.getFaceImg())){ + return; + } + if(Constants.equalsObject(member.getHkStatus(),Constants.ONE)){ + //濡傛灉鐢ㄦ埛鏄悓姝ユ捣搴锋垚鍔燂紝娣诲姞甯︿笅鍙戞潈闄� + List<Empower> list = new ArrayList<>(); + List<Device> deviceList = deviceMapper.selectList(new QueryWrapper<Device>().lambda().in(Device::getId,doorIds)); + if(deviceList == null || deviceList.size() == 0){ + return; + } + for (Device deviceRole:deviceList) { + Empower model = new Empower(); + model.setCreateDate(new Date()); + model.setMemberId(member.getId()); + model.setIsdeleted(Constants.ZERO); + model.setDeviceId(deviceRole.getId()); + model.setSendStatus(Constants.ZERO); + model.setStartTime(member.getStartTime()); + model.setEndTime(member.getEndTime()); + //榛樿缁欎簬铏氭嫙鍗� + model.setCardNos(Constants.VIRTUAL_CARD_INDEX+member.getId()); + model.setSendType(Constants.ZERO); + list.add(model); + } + //瀵煎叆鏂板鐨勬巿鏉冧俊鎭� + empowerMapper.insertBatchSomeColumn(list); + } + } /** * 濡傛灉涔嬪墠宸茬粡鍜屾捣搴峰悓姝ワ紝鍒欐洿鏂扮敤鎴锋暟鎹互鍙婁汉鑴告暟鎹紙鍙兘鏂板浜鸿劯 涔熷彲鑳芥洿鏂颁汉鑴革級 * @param c @@ -334,7 +395,8 @@ c.setHkStatus(Constants.TWO); c.setRemark("浜哄憳淇℃伅鍚屾瀹夐槻骞冲彴鏇存柊澶辫触锛岃淇鍚庨噸璇曪紒锛�"+(result!=null?result.getCode()+result.getMsg():"")); } - + //閲嶆柊涓嬪彂鏉冮檺鏁版嵁 + dealMemberRoleEmpower(c); } c.setHkDate(date); memberMapper.updateById(c); @@ -373,6 +435,7 @@ c.setHkStatus(Constants.ONE); c.setHkId(addHkModel.getPersonId()); memberMapper.updateById(c); + dealMemberRoleEmpower(c); return true; }else{ noticeErpFail(c,Constants.ZERO,"浜哄憳淇℃伅鍚屾瀹夐槻骞冲彴澶辫触锛岃淇鍚庨噸璇曪紒"+result.getCode()+result.getMsg()); -- Gitblit v1.9.3