|
|
@ -788,4 +788,56 @@ public class ThirdLoginServiceImpl implements ThirdLoginService, ResultDataResol |
|
|
|
return token; |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
public ResiDingAppLoginResDTO resiLoginDingTemp(ResiDingAppLoginFormDTO formDTO) { |
|
|
|
//获取用户手机号
|
|
|
|
log.info("钉钉居民端应用登录入参:"+ JSON.toJSONString(formDTO)); |
|
|
|
ResiDingAppLoginResDTO resDTO= null; |
|
|
|
try { |
|
|
|
resDTO = new ResiDingAppLoginResDTO(); |
|
|
|
EnvEnum currentEnv = EnvEnum.getCurrentEnv(); |
|
|
|
if (EnvEnum.PROD.getCode().equals(currentEnv.getCode())) { |
|
|
|
//烟台的客户id
|
|
|
|
resDTO.setCustomerId("1535072605621841922"); |
|
|
|
}else if(EnvEnum.TEST.getCode().equals(currentEnv.getCode())){ |
|
|
|
//最美琴岛
|
|
|
|
resDTO.setCustomerId("0c41b272ee9ee95ac6f184ad548a30eb"); |
|
|
|
resDTO.setGridId("f896b59f3cddf1f54280546d79803652"); |
|
|
|
resDTO.setGridName("抚顺社区-抚顺第一网格"); |
|
|
|
resDTO.setAgencyId("f6e183d8e6687020074e6d8061926bfa"); |
|
|
|
resDTO.setEpmetUserId("f838614e67cf8ae0edaefe562b6660e5"); |
|
|
|
resDTO.setRegFlag(true); |
|
|
|
}else if(EnvEnum.LOCAL.getCode().equals(currentEnv.getCode())||EnvEnum.DEV.getCode().equals(currentEnv.getCode())){ |
|
|
|
//其余统一走开发环境
|
|
|
|
resDTO.setCustomerId("45687aa479955f9d06204d415238f7cc"); |
|
|
|
resDTO.setGridId("763d6e09b9081d63195d53da84b3ae3a"); |
|
|
|
resDTO.setGridName("抚顺社区-抚顺第二网格"); |
|
|
|
resDTO.setAgencyId("f6e183d8e6687020074e6d8061926bfa"); |
|
|
|
resDTO.setEpmetUserId("f838614e67cf8ae0edaefe562b6660e5"); |
|
|
|
resDTO.setRegFlag(true); |
|
|
|
} |
|
|
|
|
|
|
|
//1、获取用户手机号
|
|
|
|
String clientId = formDTO.getClientId(); |
|
|
|
com.aliyun.dingtalk.module.Result<AccessTokenResult> userAccessToken = dingTalkClientToken.getUserAccessToken(formDTO.getAuthCode(), clientId, DingMiniAppEnum.getEnum(clientId).getSuiteSecret()); |
|
|
|
log.info("resiLoginDing userAccessToken:{}",JSON.toJSONString(userAccessToken)); |
|
|
|
if (!userAccessToken.success() || null == userAccessToken.getData()) { |
|
|
|
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "调用微信api异常:" + JSON.toJSONString(userAccessToken), EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getMsg()); |
|
|
|
} |
|
|
|
com.aliyun.dingtalk.module.Result<UserBaseInfo> me = dingTalkClientUser.getUserInfo("me", userAccessToken.getData().getAccessToken()); |
|
|
|
log.info("resiLoginDing me:{}",JSON.toJSONString(me)); |
|
|
|
resDTO.setExtInfo(JSON.toJSONString(me.getData())); |
|
|
|
|
|
|
|
// 2、调用userfeign接口获取userId、注册网格相关信息 todo
|
|
|
|
|
|
|
|
//3.生成token,并且存放Redis
|
|
|
|
String token=this.saveTokenDtoDing(AppClientConstant.APP_RESI,AppClientConstant.MINI_DING, resDTO.getEpmetUserId(), resDTO.getCustomerId()); |
|
|
|
resDTO.setAuthorization(token); |
|
|
|
|
|
|
|
} catch (ApiException e) { |
|
|
|
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), e.getErrMsg(), EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getMsg()); |
|
|
|
} |
|
|
|
return resDTO; |
|
|
|
} |
|
|
|
} |
|
|
|