From 1c20c8231980a8d4b91688ff8641a06d3b2f68ab Mon Sep 17 00:00:00 2001 From: MrShi <1878285526@qq.com> Date: 星期二, 14 十月 2025 16:34:22 +0800 Subject: [PATCH] 改bug --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java | 169 +++++++++++--------------------------------------------- 1 files changed, 34 insertions(+), 135 deletions(-) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java index dbef628..0a46f0b 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/erp/ErpSyncServiceImpl.java @@ -4,12 +4,9 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.api.R; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.doumee.biz.system.SystemDictDataBiz; import com.doumee.config.DataSyncConfig; -import com.doumee.config.Jwt.JwtPayLoad; -import com.doumee.config.Jwt.JwtTokenUtil; import com.doumee.core.constants.ResponseStatus; import com.doumee.core.erp.ErpConstants; import com.doumee.core.erp.ErpTool; @@ -17,8 +14,8 @@ import com.doumee.core.erp.model.openapi.response.erp.ERPApiResponse; import com.doumee.core.exception.BusinessException; import com.doumee.core.haikang.model.HKConstants; -import com.doumee.core.model.PageData; -import com.doumee.core.model.PageWrap; +import com.doumee.service.business.third.model.PageData; +import com.doumee.service.business.third.model.PageWrap; import com.doumee.core.erp.model.openapi.request.*; import com.doumee.core.erp.model.openapi.response.*; import com.doumee.core.erp.model.openapi.response.erp.ErpOrgListResponse; @@ -27,16 +24,18 @@ import com.doumee.core.utils.DESUtil; import com.doumee.core.utils.DateUtil; import com.doumee.core.utils.Utils; -import com.doumee.core.utils.redis.RedisUtil; import com.doumee.core.wx.wxPlat.WxPlatNotice; import com.doumee.dao.business.*; import com.doumee.dao.business.dao.CompanyMapper; +import com.doumee.dao.business.dao.MemberMapper; import com.doumee.dao.business.join.CarEventJoinMapper; import com.doumee.dao.business.join.DeviceEventJoinMapper; import com.doumee.dao.business.join.VisitEventJoinMapper; import com.doumee.dao.business.model.*; +import com.doumee.dao.business.model.Member; import com.doumee.service.business.ext.ERPSyncService; import com.doumee.service.business.InterfaceLogService; +import com.doumee.service.business.impl.MemberServiceImpl; import com.doumee.service.business.impl.hksync.ferp.HkSyncOrgUserToHKServiceImpl; import com.github.yulichang.wrapper.MPJLambdaWrapper; import lombok.Synchronized; @@ -47,7 +46,6 @@ import org.springframework.beans.factory.annotation.Value; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import javax.annotation.PostConstruct; @@ -81,7 +79,6 @@ @Autowired private VisitEventMapper visitEventMapper; - @Autowired private VisitEventJoinMapper visitEventJoinMapper; @@ -153,7 +150,7 @@ List<Company> allList = companyMapper.selectList(new QueryWrapper<Company>().lambda().eq(Company::getType,Constants.ONE)); dealCompanyChangeList(list,addList,updateList,delIds,allList); if(addList.size()>0){ - companyMapper.insertBatchSomeColumn(addList); + companyMapper.insert(addList); } if(updateList.size()>0){ for(Company c : updateList){ @@ -306,7 +303,7 @@ .eq(Member::getType, Constants.memberType.internal)); dealUserChangeList(list,addList,updateList,delList,allList,param); if(addList.size()>0){ - memberMapper.insertBatchSomeColumn(addList); + memberMapper.insert(addList); /* for (Member member:addList) { dealRoleEmpower(member ); }*/ @@ -474,31 +471,30 @@ return false; } - @Override - public AccessTokenResponse createERPToken(String accessKey, String accessSecret){ - AccessTokenResponse result = new AccessTokenResponse(); - try{ - String erpAccessKey = systemDictDataBiz.queryByCode(Constants.ERP_CONFIG,Constants.ERP_ACCESS_KEY).getCode(); - String erpAccessSecret = systemDictDataBiz.queryByCode(Constants.ERP_CONFIG,Constants.ERP_ACCESS_SECRET).getCode(); - if(!(accessKey.equals(erpAccessKey)&&erpAccessSecret.equals(accessSecret))){ - throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"绉橀挜鍖归厤澶辫触"); - } - JwtPayLoad payLoad = new JwtPayLoad(erpAccessKey+"-"+erpAccessSecret); - String token = JwtTokenUtil.generateToken(payLoad); - RedisUtil.addObject(redisTemplate,Constants.RedisKeys.ERP_TOKEN,token,Constants.RedisKeys.EXPIRE_TIME); - result.setToken(token); - result.setExpireTime(Constants.RedisKeys.EXPIRE_TIME); - return result; - }catch (BusinessException e){ - throw e; - }finally { - Map<String,String> param = new HashMap<>(); - param.put("accessKey",accessKey); - param.put("accessSecret",accessSecret); - saveInterfaceLog(param,"/visitBiz/accesstoken",JSONObject.toJSONString(result),Constants.ZERO); - } - - } +// @Override +// public AccessTokenResponse createERPToken(String accessKey, String accessSecret){ +// AccessTokenResponse result = new AccessTokenResponse(); +// try{ +// String erpAccessKey = systemDictDataBiz.queryByCode(Constants.ERP_CONFIG,Constants.ERP_ACCESS_KEY).getCode(); +// String erpAccessSecret = systemDictDataBiz.queryByCode(Constants.ERP_CONFIG,Constants.ERP_ACCESS_SECRET).getCode(); +// if(!(accessKey.equals(erpAccessKey)&&erpAccessSecret.equals(accessSecret))){ +// throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"绉橀挜鍖归厤澶辫触"); +// +// String token = JwtTokenUtil.generateToken(payLoad); +// RedisUtil.addObject(redisTemplate,Constants.RedisKeys.ERP_TOKEN,token,Constants.RedisKeys.EXPIRE_TIME); +// result.setToken(token); +// result.setExpireTime(Constants.RedisKeys.EXPIRE_TIME); +// return result; +// }catch (BusinessException e){ +// throw e; +// }finally { +// Map<String,String> param = new HashMap<>(); +// param.put("accessKey",accessKey); +// param.put("accessSecret",accessSecret); +// saveInterfaceLog(param,"/visitBiz/accesstoken",JSONObject.toJSONString(result),Constants.ZERO); +// } +// +// } /** * 闂ㄧ缁勫叏閲忔帴鍙� @@ -926,101 +922,9 @@ } } if(memberCardList.size()>0){ - memberCardMapper.insertBatchSomeColumn(memberCardList); + memberCardMapper.insert(memberCardList); } } - } - private Integer getRoleIdByParam(Integer[] param, Member member) { - //娣诲姞浜哄憳瑙掕壊鍏宠仈鏁版嵁 - member.setRoleId(null); - List<MemberRole> roleList = memberRoleMapper.selectList( new QueryWrapper<MemberRole>().lambda() - .eq(MemberRole::getIsdeleted,Constants.ZERO) - .eq(MemberRole::getMemberId,member.getId())); - if((param == null || param.length==0 ) &&( roleList==null || roleList.size()==0)){ - //妫�鏌ョ敤鎴锋潈闄愭槸鍚﹀彂鐜板彉鍖� - return 0; - } - if((param == null || param.length==0 ) &&( roleList!=null && roleList.size()>0) ){ - //濡傛灉鍘熸潵鏈夋潈闄愶紝鎺ュ彛杩涜鏉冮檺鍒犻櫎 - memberRoleMapper.delete(new QueryWrapper<MemberRole>().lambda().eq(MemberRole::getMemberId,member.getId())); - return 1; - } - if(!Objects.isNull(param)&¶m.length>Constants.ZERO){ - if(roleList!=null && roleList.size()>0) { - //鍜屽師鏈夋潈闄愯繘琛屽姣旓紝鐪嬫槸鍚︽潈闄愬彂鐢熷彉鍖� - boolean ischange1=false; - for (MemberRole role : roleList) { - ischange1=false; - for (int j = 0; j < param.length; j++) { - if(Constants.equalsInteger(role.getRoleId(),param[j])){ - ischange1=true; - break; - } - } - if(!ischange1){ - break; - } - } - - boolean ischange2 =false; - for (int j = 0; j < param.length; j++) { - ischange2=false; - for (MemberRole role : roleList) { - if(Constants.equalsInteger(role.getRoleId(),param[j])){ - ischange2=true; - break; - } - } - if(!ischange2){ - break; - } - } - if(ischange2 && ischange1){ - return 0;//鏉冮檺鏈彂鐢熸敼鍙� - } - } - //濡傛灉鍘熸潵鏈夋潈闄愶紝鎺ュ彛杩涜鏉冮檺鍒犻櫎 - memberRoleMapper.delete(new QueryWrapper<MemberRole>().lambda().eq(MemberRole::getMemberId,member.getId())); - //鏌ヨ鏁版嵁搴撳瓨鍦ㄧ殑鏉冮檺 - List<DeviceRole> deviceRoleList= deviceRoleMapper.selectList(new QueryWrapper<DeviceRole>().lambda() - .eq(DeviceRole::getType,Constants.TWO) - .in(DeviceRole::getId,param)); - 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 += ","; - } - Integer id =deviceRole.getId(); - ids += "["+id+"]"; - 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){ - //鑴忔暟鎹笉澶勭悊 - } - } - MemberRole memberRole = new MemberRole(); - memberRole.setCreateDate(new Date()); - memberRole.setMemberId(member.getId()); - memberRole.setIsdeleted(Constants.ZERO); - memberRole.setRoleId(deviceRole.getId()); - memberRoleList.add(memberRole); - } - member.setRoleId(ids); - memberRoleMapper.insertBatchSomeColumn(memberRoleList); - member.setRoleId(ids); - } - return 1; - } - return 0; } @@ -1040,7 +944,7 @@ if(Objects.isNull(member)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝鐢ㄦ埛淇℃伅涓嶅瓨鍦紒"); } - Integer ischange = getRoleIdByParam(param.getRoleIds(),member); + Integer ischange = MemberServiceImpl.getRoleIdByParam(param.getRoleIds(),member,memberRoleMapper,deviceRoleMapper); if(ischange == 0){ return;//鏈彂鐜版潈闄愬彉鍖栵紝鐩存帴杩斿洖 } @@ -1102,7 +1006,7 @@ parkBook.setRemark("寰呭悓姝ュ畨闃插钩鍙�"); parkBookList.add(parkBook); } - parkBookMapper.insertBatchSomeColumn(parkBookList); + parkBookMapper.insert(parkBookList); }else{ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"瀵逛笉璧凤紝鍋滆溅搴撲俊鎭笉瀛樺湪锛屾巿鏉冨け璐�"); } @@ -1151,11 +1055,6 @@ i.setEndtime(param.getEndTime()); i.setDoors(param.getDoors()); visitsMapper.updateById(i); - if(Objects.isNull(i.getParentId())){ - wxPlatNotice.sendVisitAuditTemplateNotice(i, - systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_PREFIX).getCode(), - systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_AUDIT_VISIT).getCode()); - } }); } }catch (BusinessException e){ -- Gitblit v1.9.3