From 5df732ffe16b3f162422c2db61a78458e28c7f8d Mon Sep 17 00:00:00 2001 From: rk <94314517@qq.com> Date: 星期五, 10 十月 2025 14:45:29 +0800 Subject: [PATCH] 钥匙柜开发 天气预警通知 --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java | 48 +++++++++++++++++++++++++++++++++++++----------- 1 files changed, 37 insertions(+), 11 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 624ce03..01b1d19 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 @@ -78,6 +78,7 @@ import java.math.BigDecimal; import java.util.Date; import java.util.*; +import java.util.concurrent.TimeUnit; import java.util.stream.Collectors; /** @@ -93,6 +94,9 @@ @Autowired private MemberJoinMapper memberJoinMapper; + + @Autowired + private JkCabinetMapper jkCabinetMapper; @Autowired private TrainTimeMapper trainTimeMapper; @@ -221,9 +225,9 @@ private Member initAddMemberModel(Member member, LoginUserInfo loginUserInfo) { Member insert= new Member(); - insert.setCreator(Objects.nonNull(loginUserInfo.getId())?loginUserInfo.getId():null); + insert.setCreator(Objects.nonNull(loginUserInfo)?loginUserInfo.getId():null); insert.setCreateDate(new Date()); - insert.setEditor(Objects.nonNull(loginUserInfo.getId())?loginUserInfo.getId():null); + insert.setEditor(Objects.nonNull(loginUserInfo)?loginUserInfo.getId():null); insert.setEditDate(new Date()); insert.setHkOrgId(member.getHkOrgId()); insert.setIsdeleted(Constants.ZERO); @@ -233,6 +237,8 @@ insert.setCode(member.getCode()); insert.setType(Constants.TWO); insert.setHkDate(new Date()); + insert.setDdId(member.getDdId()); + insert.setErpId(member.getErpId()); insert.setWorkStatus(Constants.ZERO);//榛樿鍦ㄨ亴 insert.setCanVisit(Constants.ZERO);//榛樿涓嶅彲璁块棶 insert.setAuthStatus(Constants.ZERO); @@ -1208,6 +1214,21 @@ queryWrapper.apply(" find_in_set('"+companySpecialId+"',REPLACE(t3.company_path,'/',',')) "); } } + if(null != member.getQueryAuth() && Constants.equalsInteger(member.getQueryAuth(),Constants.ONE)){ + List<JkCabinet> jkCabinets = jkCabinetMapper.selectList(new QueryWrapper<JkCabinet>().lambda() + .eq(JkCabinet::getIsdeleted,Constants.ZERO) + .isNotNull(JkCabinet::getAuthMemberId) + ); + if(CollectionUtils.isNotEmpty(jkCabinets)){ + List<String> memberIdList = new ArrayList<>(); + List<String> authMemberId = jkCabinets.stream().map(i->i.getAuthMemberId()).collect(Collectors.toList()); + for (String s:authMemberId) { + memberIdList.addAll(Arrays.asList(s.split(","))) ; + } + queryWrapper.in(Member::getId,memberIdList); + } + + } queryWrapper.eq(Member::getIsdeleted,Constants.ZERO); queryWrapper.eq(Member::getWorkStatus,Constants.ZERO); queryWrapper.orderByAsc(Member::getPinyin); @@ -2138,7 +2159,7 @@ if(importing!=null && importing){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝宸插瓨鍦ㄥ憳宸ュ鍏ヤ换鍔℃鍦ㄦ墽琛屼腑锛岃绋嶅悗鍐嶈瘯锛�"); } - redisTemplate.opsForValue().set(Constants.RedisKeys.IMPORTING_MEMBER,true); + redisTemplate.opsForValue().set(Constants.RedisKeys.IMPORTING_MEMBER,true,30, TimeUnit.MINUTES); try { ExcelImporter ie = null; List<MemberImport> dataList =null; @@ -2391,6 +2412,7 @@ /** * 鍚屾閽夐拤鍐呴儴鍛樺伐淇℃伅 */ + @Override public void syncDDUserInfo() throws ApiException { List<OapiV2UserGetResponse.UserGetResponse> list = dingTalk.syncAllUserInfo(); if(CollectionUtils.isEmpty(list)){ @@ -2456,10 +2478,11 @@ private Member syncDDAddMemberModel(OapiV2UserGetResponse.UserGetResponse deptGetResponse,Member member) { member.setCreateDate(new Date()); - member.setErpId(deptGetResponse.getUserid()); + member.setErpId(deptGetResponse.getUnionid()); member.setPhone(deptGetResponse.getMobile()); member.setName(deptGetResponse.getName()); member.setCode(deptGetResponse.getJobNumber()); + member.setDdId(deptGetResponse.getUserid()); isMemberParamValidDetail(member,deptGetResponse.getDeptIdList()); //鑾峰彇鍑虹敓鏃ユ湡 //鑴辨晱鎿嶄綔 @@ -2486,7 +2509,7 @@ if(Objects.nonNull(deptIdList)){ List<Company> companyList = companyMapper.selectList(new QueryWrapper<Company>().lambda().in(Company::getErpId,deptIdList) .eq(Company::getType,Constants.ONE).eq(Company::getIsdeleted,Constants.ZERO) - .isNotNull(Company::getHkId) +// .isNotNull(Company::getHkId) 鏆傛椂鏃犳硶鍚屾娴峰悍 鍏堟敞閲� ); if(CollectionUtils.isNotEmpty(companyList)){ member.setHkOrgId(companyList.get(Constants.ZERO).getHkId()); @@ -2515,11 +2538,11 @@ public Member syncDDEditMemberModel(OapiV2UserGetResponse.UserGetResponse deptGetResponse,Member updateMember) { updateMember.setEditDate(new Date()); - updateMember.setErpId(deptGetResponse.getUserid()); + updateMember.setErpId(deptGetResponse.getUnionid()); updateMember.setPhone(deptGetResponse.getMobile()); updateMember.setName(deptGetResponse.getName()); updateMember.setCode(deptGetResponse.getJobNumber()); - + updateMember.setDdId(deptGetResponse.getUserid()); updateMember.setHkId(null); updateMember.setAuthStatus(Constants.ZERO); Boolean hkFlag = dealHkUserForUpdateBiz(updateMember); @@ -2541,6 +2564,7 @@ .set(updateMember.getHkDate()!=null,Member::getHkDate,updateMember.getHkDate()) .set(StringUtils.isNotBlank(updateMember.getRemark()),Member::getRemark,updateMember.getRemark()) .set(StringUtils.isNotBlank(updateMember.getFaceImg()),Member::getFaceImg,updateMember.getFaceImg()) + .set(StringUtils.isNotBlank(updateMember.getDdId()),Member::getDdId,updateMember.getDdId()) .set(updateMember.getFaceId()!=null,Member::getFaceId,updateMember.getFaceId()) .set(updateMember.getCompanyId()!=null,Member::getCompanyId,updateMember.getCompanyId()) .set(Member::getCode,updateMember.getCode()) @@ -2582,6 +2606,7 @@ } + @Override public void ddPushMemberInfo(String eventType, shade.com.alibaba.fastjson2.JSONObject eventData) throws ApiException { JSONArray jsonArray = eventData.getJSONArray("userId"); if(jsonArray.isEmpty()){ @@ -2599,16 +2624,17 @@ } }else if(eventType.equals("user_add_org")||eventType.equals("user_modify_org")){ for (int i = 0; i < jsonArray.size(); i++) { + OapiV2UserGetResponse.UserGetResponse userGetResponse = dingTalk.syncUserInfo(jsonArray.getString(i)); Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda() .eq(Member::getIsdeleted,Constants.ZERO) - .eq(Member::getErpId,jsonArray.getLong(i)) + .eq(Member::getErpId,userGetResponse.getUnionid()) .last(" limit 1") ); - OapiV2UserGetResponse.UserGetResponse deptGetResponse = dingTalk.syncUserInfo(jsonArray.getString(i)); if(Objects.isNull(member)){ - getAddMemberModel(deptGetResponse,member); + member = new Member(); + getAddMemberModel(userGetResponse,member); }else{ - getUpdateMemberModel(deptGetResponse,member); + getUpdateMemberModel(userGetResponse,member); } } } -- Gitblit v1.9.3