| | |
| | | import com.doumee.core.haikang.model.param.respose.*; |
| | | import com.doumee.core.haikang.service.HKService; |
| | | import com.doumee.core.utils.Constants; |
| | | import com.doumee.core.utils.DESUtil; |
| | | import com.doumee.core.utils.DateUtil; |
| | | import com.doumee.core.utils.ImageBase64Util; |
| | | import com.doumee.dao.business.*; |
| | | import com.doumee.dao.business.join.CompanyJoinMapper; |
| | | import com.doumee.dao.business.join.MemberJoinMapper; |
| | | import com.doumee.dao.business.model.*; |
| | | import com.doumee.service.business.ERPSyncService; |
| | | import com.github.yulichang.query.MPJQueryWrapper; |
| | |
| | | @Autowired |
| | | private EmpowerMapper empowerMapper; |
| | | @Autowired |
| | | private MemberMapper memberMapper; |
| | | private MemberJoinMapper memberMapper; |
| | | @Autowired |
| | | private ERPSyncService erpSyncService; |
| | | @Autowired |
| | |
| | | //查询所有需要同步的企业数据 |
| | | String rootOrgId = systemDictDataBiz.queryByCode(Constants.HK_PARAM,Constants.HK_ROOTORG_CODE).getCode(); |
| | | List<Company> list = companyMapper.selectList(new QueryWrapper<Company>() |
| | | .select("*,(select b.hk_id from company b where company.erp_parent_id = b.id limit 1) as hkParentId") |
| | | .select("*,(select b.hk_id from company b where company.erp_parent_id = b.erp_id limit 1) as hkParentId") |
| | | .lambda() |
| | | .eq(Company::getHkStatus,Constants.ZERO) |
| | | .orderByAsc(Company::getErpDate)); |
| | |
| | | Constants.DEALING_HK_USER =true; |
| | | try { |
| | | //查询所有需要同步的企业数据 |
| | | List<Member> list = memberMapper.selectList(new QueryWrapper<Member>() |
| | | .lambda() |
| | | List<Member> list = memberMapper.selectJoinList(Member.class,new MPJLambdaWrapper<Member>() |
| | | .selectAll(Member.class ) |
| | | .selectAs(Company::getHkId,Member::getCompanyHkId) |
| | | .leftJoin(Company.class,Company::getId,Member::getCompanyId) |
| | | .eq(Member::getHkStatus,Constants.ZERO) |
| | | .orderByAsc(Member::getErpDate)); |
| | | if(list ==null || list.size()==0){ |
| | |
| | | UserAddRequest addHkModel = getUserAddModel(c,path,1);//修改 |
| | | //处理新增数据 |
| | | BaseResponse result = HKService.editUser(addHkModel); |
| | | if(StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE) && result.getData()!=null){ |
| | | if(result !=null && StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE) ){ |
| | | if(StringUtils.isNotBlank(c.getFaceImg())){ |
| | | //如果有人脸照片,处理人脸照片同步 |
| | | String faceid = dealMemberFace(c,path); |
| | | if(StringUtils.isBlank(faceid)){ |
| | | noticeErpFail(c,Constants.ZERO,"人脸信息更新失败,请检查人脸照片是否合法!"); |
| | | c.setHkStatus(Constants.TWO); |
| | | c.setRemark("人脸信息更新失败,请检查人脸照片是否合法!!"); |
| | | c.setRemark("人脸信息更新失败,请检查人脸照片是否合法!!"+result.getMsg()); |
| | | }else{ |
| | | c.setFaceId(faceid); |
| | | } |
| | | } |
| | | }else{ |
| | | noticeErpFail(c,Constants.ZERO,"人员信息同步安防平台失败,请修正后重试!"+result.getCode()+result.getMsg()); |
| | | noticeErpFail(c,Constants.ZERO,"人员信息同步安防平台失败,请修正后重试!"); |
| | | c.setHkStatus(Constants.TWO); |
| | | c.setRemark("人员信息同步安防平台更新失败,请修正后重试!!"); |
| | | c.setRemark("人员信息同步安防平台更新失败,请修正后重试!!"+(result!=null?result.getCode()+result.getMsg():"")); |
| | | } |
| | | |
| | | } |
| | |
| | | //删除的组织,不做处理,海康状态更新为不处理,下次不再处理这个记录 |
| | | c.setHkStatus(Constants.TWO); |
| | | c.setRemark("未同步数据,直接删除"); |
| | | c.setEditDate(date); |
| | | c.setErpId(c.getErpOrgId()+"_"+UUID.randomUUID().toString()); |
| | | memberMapper.updateById(c); |
| | | return false; |
| | | } |
| | |
| | | } |
| | | //处理新增数据 |
| | | BaseResponse<UserAddResponse> result = HKService.addUser(addHkModel); |
| | | if(StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE) && result.getData()!=null){ |
| | | if(result!=null && StringUtils.equals(result.getCode(),HKConstants.RESPONSE_SUCCEE) && result.getData()!=null){ |
| | | c.setFaceId(result.getData().getFaceId()); |
| | | c.setHkStatus(Constants.ONE); |
| | | c.setHkId(addHkModel.getPersonId()); |
| | |
| | | }else{ |
| | | noticeErpFail(c,Constants.ZERO,"人员信息同步安防平台失败,请修正后重试!"+result.getCode()+result.getMsg()); |
| | | c.setHkStatus(Constants.TWO); |
| | | c.setRemark("人员信息同步安防平台失败,请修正后重试!"); |
| | | c.setRemark("人员信息同步安防平台失败,请修正后重试!"+(result!=null?result.getMsg():"")); |
| | | memberMapper.updateById(c); |
| | | return false; |
| | | } |
| | |
| | | private UserAddRequest getUserAddModel(Member c,String path,int type) { |
| | | UserAddRequest model = new UserAddRequest(); |
| | | model.setOrgIndexCode(c.getCompanyHkId()); |
| | | model.setPersonId(type == 0 ?HKConstants.RES_USER_INDEX+UUID.randomUUID().toString().replace("-", ""):c.getHkId()); |
| | | model.setJobNo(c.getCode()); |
| | | model.setCertificateNo(DESUtil.decrypt(Constants.EDS_PWD, c.getIdcardNo())); |
| | | model.setCertificateType(HKConstants.CertificateType.SHENFENZHENG.getKey()+""); |
| | | model.setPersonId(type == 0 ?UUID.randomUUID().toString().replace("-", ""):c.getHkId()); |
| | | model.setGender(Constants.formatIntegerNum(c.getSex())+""); |
| | | model.setPersonName(c.getName()); |
| | | if(type== 0 && StringUtils.isNotBlank(c.getFaceImg())){ |