| | |
| | | |
| | | 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); |
| | |
| | | insert.setCode(member.getCode()); |
| | | insert.setType(Constants.TWO); |
| | | insert.setHkDate(new Date()); |
| | | insert.setErpId(member.getErpId()); |
| | | insert.setWorkStatus(Constants.ZERO);//默认在职 |
| | | insert.setCanVisit(Constants.ZERO);//默认不可访问 |
| | | insert.setAuthStatus(Constants.ZERO); |
| | |
| | | /** |
| | | * 同步钉钉内部员工信息 |
| | | */ |
| | | @Override |
| | | public void syncDDUserInfo() throws ApiException { |
| | | List<OapiV2UserGetResponse.UserGetResponse> list = dingTalk.syncAllUserInfo(); |
| | | if(CollectionUtils.isEmpty(list)){ |
| | |
| | | |
| | | 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()); |
| | |
| | | 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()); |
| | |
| | | |
| | | 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()); |
| | |
| | | } |
| | | |
| | | |
| | | @Override |
| | | public void ddPushMemberInfo(String eventType, shade.com.alibaba.fastjson2.JSONObject eventData) throws ApiException { |
| | | JSONArray jsonArray = eventData.getJSONArray("userId"); |
| | | if(jsonArray.isEmpty()){ |
| | |
| | | } |
| | | }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); |
| | | } |
| | | } |
| | | } |