From 3bc8c584155ce04d1ba04496a4d94d82174df488 Mon Sep 17 00:00:00 2001 From: jiangping <jp@doumee.com> Date: 星期二, 10 十二月 2024 15:32:38 +0800 Subject: [PATCH] 最新版本541200007 --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/HkSyncService.java | 2 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java | 3 server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/UserOpenidSaveRequest.java | 14 ++++ server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java | 11 ++- server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java | 7 ++ server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java | 18 ++++++ server/system_service/src/main/java/com/doumee/dao/system/model/SystemUser.java | 6 ++ server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java | 10 +++ server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java | 4 + server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java | 12 +++ server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java | 43 ++++++++++++++ 11 files changed, 123 insertions(+), 7 deletions(-) diff --git a/server/system_service/src/main/java/com/doumee/dao/system/model/SystemUser.java b/server/system_service/src/main/java/com/doumee/dao/system/model/SystemUser.java index 26136e1..96c2bc7 100644 --- a/server/system_service/src/main/java/com/doumee/dao/system/model/SystemUser.java +++ b/server/system_service/src/main/java/com/doumee/dao/system/model/SystemUser.java @@ -92,6 +92,12 @@ @ApiModelProperty(value = "寰俊openid", example = "1", hidden = true) private String openid; + @ApiModelProperty(value = "寰俊openid鎺ㄩ�佹捣搴风姸鎬� 0寰呮帹閫� 1宸叉帹閫� 2缁戝畾澶辫触", example = "1", hidden = true) + private Integer openidHkStatus; + @ApiModelProperty(value = "寰俊openid鎺ㄩ�佹捣搴峰娉� ", example = "1", hidden = true) + private String openidHkInfo; + @ApiModelProperty(value = "寰俊openid鎺ㄩ�佹捣搴锋椂闂�", example = "1", hidden = true) + private Date openidHkDate; //2024骞�12鏈�6鏃�11:00:30 绫诲瀷 0鍙告満浜哄憳 1鏅�氳瀹� 2鍐呴儴浜哄憳 @ApiModelProperty(value = "绫诲瀷 0骞冲彴鐢ㄦ埛 1璁垮", example = "0") diff --git a/server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java b/server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java index 7f344ed..d3c77df 100644 --- a/server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java +++ b/server/system_service/src/main/java/com/doumee/service/system/impl/SystemLoginServiceImpl.java @@ -187,9 +187,16 @@ //濡傛灉openId涓嶄负绌�,缁戝畾璇ョ敤鎴穙penid systemUserMapper.update(null,new UpdateWrapper<SystemUser>().lambda() .set(SystemUser::getOpenid,null) + .set(SystemUser::getOpenidHkDate,null) + .set(SystemUser::getOpenidHkInfo,null) + .set(SystemUser::getOpenidHkStatus,Constants.ZERO) + .eq(SystemUser::getOpenid,openid) .eq(SystemUser::getType,user.getType())); systemUserMapper.update(null,new UpdateWrapper<SystemUser>().lambda() .set(SystemUser::getOpenid,openid) + .set(SystemUser::getOpenidHkStatus,Constants.ZERO) + .set(SystemUser::getOpenidHkDate,null) + .set(SystemUser::getOpenidHkInfo,null) .eq(SystemUser::getId,user.getId())); } } diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java index 04f82da..f9da98c 100644 --- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java +++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java @@ -23,6 +23,7 @@ import com.doumee.dao.business.model.Device; import com.doumee.service.business.DeviceService; import com.doumee.service.business.impl.hksync.*; +import com.doumee.service.business.impl.hksync.ferp.HkSyncOrgUserToHKServiceImpl; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; @@ -61,6 +62,8 @@ private HkSyncPrivilegeServiceImpl hkSyncPrivilegeService; @Autowired private HkSyncPushServiceImpl hkSyncPushService; + @Autowired + private HkSyncOrgUserToHKServiceImpl hkSyncOrgUserToHKService; @Autowired private HkSyncNoticeServiceImpl hkSyncNoticeService; @Autowired @@ -111,6 +114,13 @@ return ApiResponse.success(result); } @PreventRepeat + @ApiOperation("銆愭捣搴枫�戜繚鎸佹捣搴风敤鎴风粦瀹歰penid") + @PostMapping("/saveHkUserOpenid") + public ApiResponse syncHkUserOpenid( @RequestHeader(Constants.HEADER_USER_TOKEN) String token){ + String result = hkSyncOrgUserToHKService.syncHkUserOpenid(this.getLoginUser(token).getId()); + return ApiResponse.success(result); + } + @PreventRepeat @ApiOperation("銆愭捣搴枫�戣幏鍙栫粍浠舵巿鏉冪櫥褰曞湴鍧�鎺ュ彛") @PostMapping("/getServiceUrl") public ApiResponse getServiceUrl(@RequestBody HKGetServiceLoginUrlRequest param,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){ diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java index 8f197ab..a41b594 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java @@ -166,7 +166,8 @@ String[] findAlarmBaseDataStatistic= new String[]{"/api/v1/alarm/findAlarmBaseDataStatistic","娑堥槻鐪嬫澘-4鎶ヨ淇℃伅缁熻"};//娑堥槻鐪嬫澘-4鎶ヨ淇℃伅缁熻 String[] findHomeAlarmInfoPage= new String[]{"/api/v1/alarm/findHomeAlarmInfoPage","瀹夐槻鐪嬫澘-- 鍒嗛〉鏌ヨ鏈鐞嗘姤璀︿俊鎭�6"};//瀹夐槻鐪嬫澘-- 鍒嗛〉鏌ヨ鏈鐞嗘姤璀︿俊鎭�6 String[] minitorDataSearchV1= new String[]{"/api/fem/v1/minitor/data/search","鍒嗛〉鏌ヨ璁惧鐩戞祴鍘嗗彶鏁版嵁"};//鍒嗛〉鏌ヨ璁惧鐩戞祴鍘嗗彶鏁版嵁 - String[] minitorDataSearch= new String[]{"/api/fpms/v2/minitor/data/search"};//鍒嗛〉鏌ヨ璁惧鐩戞祴鍘嗗彶鏁版嵁 + String[] minitorDataSearch= new String[]{"/api/fpms/v2/minitor/data/search","鍒嗛〉鏌ヨ璁惧鐩戞祴鍘嗗彶鏁版嵁"};//鍒嗛〉鏌ヨ璁惧鐩戞祴鍘嗗彶鏁版嵁 + String[] userOpenidSave= new String[]{"/api/v1/oa/userOpenId/saveV2","淇濆瓨鐢ㄦ埛鍙妎penId缁戝畾淇℃伅寰俊鍏紬鍙�"};//淇濆瓨鐢ㄦ埛鍙妎penId缁戝畾淇℃伅寰俊鍏紬鍙� } /** * 闄勫綍A.55娑堥槻璁惧绫诲瀷 diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java index dc5e088..88e2aa9 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKTools.java @@ -833,7 +833,7 @@ return startDoPostStringArtemis(HKConstants.InterfacePath.findAlarmBaseDataStatistic,body); } /** - *瀹夐槻鐪嬫澘-- 鍒嗛〉鏌ヨ鏈鐞嗘姤璀︿俊鎭�6 + *瀹夐槻鐪嬫澘-- b * @param body * @return */ @@ -841,6 +841,16 @@ return startDoPostStringArtemis(HKConstants.InterfacePath.findHomeAlarmInfoPage,body); } /** + *淇濆瓨鐢ㄦ埛鍙妎penId缁戝畾淇℃伅寰俊鍏紬鍙� + * @param body + * @return + */ + public static String userOpenidSave(String body) { + Map<String,String> header = new HashMap<>(); + header.put("userId","admin"); + return startDoPostStringArtemis(HKConstants.InterfacePath.userOpenidSave,null,header,body); + } + /** *鍒嗛〉鏌ヨ璁惧鐩戞祴鍘嗗彶鏁版嵁 * @param body * @return diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/UserOpenidSaveRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/UserOpenidSaveRequest.java new file mode 100644 index 0000000..fd6d26d --- /dev/null +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/param/request/UserOpenidSaveRequest.java @@ -0,0 +1,14 @@ +package com.doumee.core.haikang.model.param.request; + +import com.doumee.core.haikang.model.param.BaseListPageRequest; +import lombok.Data; + +@Data +public class UserOpenidSaveRequest extends BaseListPageRequest { + private String openId ;//String false 寰俊openId + private String userName ;//String false 骞冲彴鐢ㄦ埛鍚� + private String appKey ;//String false appKey + private String oaId;// String false atwl + private String platformName ;//String false 瀹夋嘲鐗╂祦鍥尯 + private String operateTime ;//String false 2024-12-09T15:49:04-07:00 +} diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java index 1cb80a8..bf42ef0 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java @@ -1569,6 +1569,24 @@ return null; } /** + *淇濆瓨鐢ㄦ埛鍙妎penId缁戝畾淇℃伅寰俊鍏紬鍙� + * @return + */ + public static BaseResponse<Integer> userOpenidSave(UserOpenidSaveRequest param){ + log.info("銆愭捣搴蜂繚瀛樼敤鎴峰強openId缁戝畾淇℃伅寰俊鍏紬鍙枫��================寮�濮�===="+JSONObject.toJSONString(param)); + try { + String res = HKTools.userOpenidSave(JSONObject.toJSONString(param)); + TypeReference typeReference = + new TypeReference< BaseResponse<Integer>>(){}; + BaseResponse<Integer> result = JSONObject.parseObject(res, typeReference.getType()); + logResult(result,"娴峰悍淇濆瓨鐢ㄦ埛鍙妎penId缁戝畾淇℃伅寰俊鍏紬鍙�"); + return result; + }catch (Exception e){ + log.error("銆愭捣搴蜂繚瀛樼敤鎴峰強openId缁戝畾淇℃伅寰俊鍏紬鍙枫��================澶辫触====锛歕n"+ e.getMessage()); + } + return null; + } + /** *鍒嗛〉鏌ヨ璁惧鐩戞祴鍘嗗彶鏁版嵁 * @return */ diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/HkSyncService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/HkSyncService.java index dff2631..9bfa3ee 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/HkSyncService.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/ext/HkSyncService.java @@ -100,4 +100,6 @@ String dealPlatformStatusEvent(EventPlatformRequest param, HttpServletResponse response); String dealPlatformCarsEvent(EventPlatformCarsRequest param, HttpServletResponse response); + + String syncHkUserOpenid(Integer id); } 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 b0b5852..e2dcb08 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 @@ -153,6 +153,10 @@ }else{ throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(),"瀵逛笉璧凤紝鍛樺伐淇℃伅鍚屾瀹夐槻骞冲彴澶辫触锛岃绋嶅悗閲嶈瘯锛�"); } + }catch (BusinessException e){ + //濡傛灉鍙戠敓寮傚父锛屽垹闄ゅ凡缁忓垱寤虹殑浜哄憳淇℃伅 + deleteHkUserBiz(new String[]{insert.getHkId()}); + throw e; }catch (Exception e){ //濡傛灉鍙戠敓寮傚父锛屽垹闄ゅ凡缁忓垱寤虹殑浜哄憳淇℃伅 e.printStackTrace(); @@ -243,7 +247,7 @@ * @return */ private boolean dealHkUserBiz(Member insert) { - String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode() + String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_LOCAL_RESOURCE_PATH).getCode() +systemDictDataBiz.queryByCode(Constants.FTP,Constants.MEMBER_IMG).getCode(); UserAddRequest hkAddRequest = HkSyncOrgUserToHKServiceImpl.getUserAddModel(insert,path,Constants.ZERO); if(hkAddRequest == null){ @@ -266,7 +270,7 @@ return false; } private boolean dealHkUserForUpdateBiz(Member update ) { - String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode() + String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_LOCAL_RESOURCE_PATH).getCode() +systemDictDataBiz.queryByCode(Constants.FTP,Constants.MEMBER_IMG).getCode(); UserAddRequest hkAddRequest = HkSyncOrgUserToHKServiceImpl.getUserAddModel(update,path,Constants.ONE); @@ -418,7 +422,6 @@ .ne(Member::getId,member.getId())) >0){ throw new BusinessException(ResponseStatus.DATA_EXISTS.getCode(), "韬唤璇佸彿銆�"+member.getIdcardNoNew()+"銆戝凡琚娇鐢紝涓嶈兘閲嶅"); } - member.setSex(Constants.getSexByCardNo( member.getIdcardNoNew()));//鏍规嵁韬唤璇佸彿鑾峰彇鎬у埆 member.setIdcardDecode( Constants.getTuominStr(member.getIdcardNoNew())); member.setIdcardNo(encrptNo); @@ -970,7 +973,7 @@ wrapper.lambda().ne(Member::getRemark,"浜鸿劯宸插悓姝ユ渶鏂�"); List<Member> list =memberMapper.selectList(wrapper); if(list!=null){ - String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode() + String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_LOCAL_RESOURCE_PATH).getCode() +systemDictDataBiz.queryByCode(Constants.FTP,Constants.MEMBER_IMG).getCode(); for(Member m : list){ String faceId= HkSyncOrgUserToHKServiceImpl.dealMemberFace(m,path); diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java index c7307aa..74cb678 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncBaseServiceImpl.java @@ -101,6 +101,10 @@ return null; } @Override + public String syncHkUserOpenid(Integer id){ + return null; + } + @Override public String dealAcsEvent(EventAcsRequest param, HttpServletResponse response){ return null; } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java index 4c8ffca..7abbefd 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/ferp/HkSyncOrgUserToHKServiceImpl.java @@ -19,6 +19,8 @@ import com.doumee.dao.business.dao.CompanyMapper; import com.doumee.dao.business.join.MemberJoinMapper; import com.doumee.dao.business.model.*; +import com.doumee.dao.system.SystemUserMapper; +import com.doumee.dao.system.model.SystemUser; import com.doumee.service.business.ext.ERPSyncService; import com.doumee.service.business.impl.hksync.HkSyncBaseServiceImpl; import com.doumee.service.business.impl.hksync.HkSyncEmpowerServiceImpl; @@ -26,6 +28,7 @@ import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang3.StringUtils; +import org.checkerframework.checker.units.qual.C; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -62,9 +65,47 @@ @Autowired private ERPSyncService erpSyncService; @Autowired + private SystemUserMapper systemUserMapper; + @Autowired private SystemDictDataBiz systemDictDataBiz; @Autowired private DataSyncConfig dataSyncConfig; + + /** + * 缁戝畾娴峰悍鐢ㄦ埛openId + * { + * "openId" : "ovmre6R7w-vEQCHg52-UN2mV_abI", + * "userName" : "13856591439", + * "appKey" : "wx173e6caf5abc718a", + * "oaId" : "atwl", + * "platformName" : "瀹夋嘲鐗╂祦鍥尯", + * + * } + */ + @Override + public String syncHkUserOpenid(Integer id){ + SystemUser user = systemUserMapper.selectById(id); + if(user == null ||StringUtils.isBlank(user.getOpenid()) ||Constants.equalsInteger(user.getOpenidHkStatus(),Constants.ONE)){ + return null; + } + UserOpenidSaveRequest request = new UserOpenidSaveRequest(); + request.setUserName(user.getUsername()); + request.setAppKey(systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_APPID).getCode()); + request.setOaId("atwl"); + request.setOpenId(user.getOpenid()); + request.setPlatformName("瀹夋嘲鐗╂祦鍥尯"); + BaseResponse<Integer> response = HKService.userOpenidSave(request); + if(response!=null &&response.getCode().equals(HKConstants.RESPONSE_SUCCEE) && Constants.equalsInteger(response.getData(),Constants.ONE)){ + user.setOpenidHkStatus(Constants.ONE); + user.setOpenidHkInfo("缁戝畾鎴愬姛"); + }else{ + user.setOpenidHkStatus(Constants.TWO); + user.setOpenidHkInfo(response!=null?StringUtils.defaultString(response.getMsg(),"銆愭湭鐭ュけ璐ュ師鍥犮��"):"缁戝畾澶辫触"); + } + user.setOpenidHkDate(new Date()); + systemUserMapper.updateById(user); + return "鎴愬姛"; + } /** * 鍚屾娴峰悍缁勭粐淇℃伅,鏍规嵁erp鍚屾缁勭粐缁撴灉锛屽畾鏃舵鏌ラ渶瑕佷笅鍙戝埌娴峰悍鐨勭粍缁囦俊鎭� @@ -285,7 +326,7 @@ return; } Date date = new Date(); - String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode() + String path = systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_LOCAL_RESOURCE_PATH).getCode() +systemDictDataBiz.queryByCode(Constants.FTP,Constants.MEMBER_IMG).getCode(); for(Member c : list){ dealMemberInfoBiz(c,date,path) ; -- Gitblit v1.9.3