Commit 0d1fd3a7 by 徐高华

设置校验查询token

parent 56c88757
package com.gic.haoban.manage.web.controller; package com.gic.haoban.manage.web.controller;
import cn.hutool.core.collection.CollectionUtil; import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.gic.api.base.commons.Page; import com.gic.api.base.commons.Page;
import com.gic.commons.util.DateUtil; import com.gic.commons.util.DateUtil;
import com.gic.commons.webapi.reponse.RestResponse; import com.gic.commons.webapi.reponse.RestResponse;
import com.gic.enterprise.api.dto.EnterpriseAndUserDTO;
import com.gic.enterprise.api.dto.EnterpriseDTO; import com.gic.enterprise.api.dto.EnterpriseDTO;
import com.gic.enterprise.api.dto.*; import com.gic.enterprise.api.dto.EnterpriseWxaRelationDTO;
import com.gic.enterprise.api.dto.StoreDTO;
import com.gic.enterprise.api.dto.StoreSearchDTO;
import com.gic.enterprise.api.service.AuthorizeService; import com.gic.enterprise.api.service.AuthorizeService;
import com.gic.enterprise.api.service.EnterpriseService; import com.gic.enterprise.api.service.EnterpriseService;
import com.gic.enterprise.api.service.StoreService; import com.gic.enterprise.api.service.StoreService;
...@@ -18,38 +39,40 @@ import com.gic.haoban.common.anno.IgnoreLogin; ...@@ -18,38 +39,40 @@ import com.gic.haoban.common.anno.IgnoreLogin;
import com.gic.haoban.common.utils.AuthWebRequestUtil; import com.gic.haoban.common.utils.AuthWebRequestUtil;
import com.gic.haoban.common.utils.EntityUtil; import com.gic.haoban.common.utils.EntityUtil;
import com.gic.haoban.common.utils.HaobanResponse; import com.gic.haoban.common.utils.HaobanResponse;
import com.gic.haoban.manage.api.dto.AgentEnterpriseDTO;
import com.gic.haoban.manage.api.dto.BindStoreInfoDTO;
import com.gic.haoban.manage.api.dto.DepartmentDTO; import com.gic.haoban.manage.api.dto.DepartmentDTO;
import com.gic.haoban.manage.api.dto.*; import com.gic.haoban.manage.api.dto.EnterpriseDetailDTO;
import com.gic.haoban.manage.api.dto.HaobanUserDTO;
import com.gic.haoban.manage.api.dto.MaterialDTO;
import com.gic.haoban.manage.api.dto.MiniprogramSettingDTO;
import com.gic.haoban.manage.api.dto.SecretSettingDTO;
import com.gic.haoban.manage.api.dto.WxEnterpriseDTO;
import com.gic.haoban.manage.api.dto.WxEnterpriseQwDTO;
import com.gic.haoban.manage.api.dto.WxEnterpriseRelationDetailDTO;
import com.gic.haoban.manage.api.dto.fee.HaobanQywxFeeDTO; import com.gic.haoban.manage.api.dto.fee.HaobanQywxFeeDTO;
import com.gic.haoban.manage.api.enums.ChannelCodeEnum; import com.gic.haoban.manage.api.enums.ChannelCodeEnum;
import com.gic.haoban.manage.api.enums.SecretTypeEnum; import com.gic.haoban.manage.api.enums.SecretTypeEnum;
import com.gic.haoban.manage.api.service.*; import com.gic.haoban.manage.api.service.DealSyncOperationApiService;
import com.gic.haoban.manage.api.service.DepartmentApiService;
import com.gic.haoban.manage.api.service.HaobanUserApiService;
import com.gic.haoban.manage.api.service.MaterialApiService;
import com.gic.haoban.manage.api.service.WxEnterpriseApiService;
import com.gic.haoban.manage.api.service.WxEnterpriseRelatedApiService;
import com.gic.haoban.manage.api.service.fee.HaobanQywxFeeApiService; import com.gic.haoban.manage.api.service.fee.HaobanQywxFeeApiService;
import com.gic.haoban.manage.web.config.Config; import com.gic.haoban.manage.web.config.Config;
import com.gic.haoban.manage.web.errCode.HaoBanErrCode; import com.gic.haoban.manage.web.errCode.HaoBanErrCode;
import com.gic.haoban.manage.web.qo.MiniprogramSettingQo; import com.gic.haoban.manage.web.qo.MiniprogramSettingQo;
import com.gic.haoban.manage.web.qo.WxEnterpriseBindQo;
import com.gic.haoban.manage.web.vo.EnterpriseDetailVO; import com.gic.haoban.manage.web.vo.EnterpriseDetailVO;
import com.gic.haoban.manage.web.vo.EnterpriseSearchVO; import com.gic.haoban.manage.web.vo.EnterpriseSearchVO;
import com.gic.haoban.manage.web.vo.SecretSettingVO; import com.gic.haoban.manage.web.vo.SecretSettingVO;
import com.gic.haoban.manage.web.vo.StoreVo; import com.gic.haoban.manage.web.vo.StoreVo;
import com.gic.redis.data.util.RedisUtil; import com.gic.redis.data.util.RedisUtil;
import com.gic.wechat.api.dto.qywx.UserDTO; import com.gic.wechat.api.service.qywx.QywxCorpApiService;
import com.gic.wechat.api.service.qywx.QywxUserApiService;
import com.gic.wechat.token.api.dto.QywxCorpInfoDTO; import com.gic.wechat.token.api.dto.QywxCorpInfoDTO;
import com.gic.wechat.token.api.service.QywxTokenManageService; import com.gic.wechat.token.api.service.QywxTokenManageService;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.*; import cn.hutool.core.collection.CollectionUtil;
import java.util.stream.Collectors;
@RestController @RestController
public class WxEnterpriseController extends WebBaseController { public class WxEnterpriseController extends WebBaseController {
...@@ -69,9 +92,7 @@ public class WxEnterpriseController extends WebBaseController { ...@@ -69,9 +92,7 @@ public class WxEnterpriseController extends WebBaseController {
@Autowired @Autowired
private Config config; private Config config;
@Autowired @Autowired
private QywxUserApiService qywxUserApiService; private QywxCorpApiService qywxCorpApiService;
@Autowired
private StaffApiService staffApiService;
@Autowired @Autowired
private DealSyncOperationApiService dealSyncOperationApiService; private DealSyncOperationApiService dealSyncOperationApiService;
@Autowired @Autowired
...@@ -219,35 +240,6 @@ public class WxEnterpriseController extends WebBaseController { ...@@ -219,35 +240,6 @@ public class WxEnterpriseController extends WebBaseController {
return resultResponse(HaoBanErrCode.ERR_1, vo); return resultResponse(HaoBanErrCode.ERR_1, vo);
} }
//微信企业绑定接口 - 迁移到运维
@RequestMapping("wx-enterprise-bind")
@Deprecated
public HaobanResponse wxEnterpriseBind(WxEnterpriseBindQo bindQo) {
if (StringUtils.isAnyBlank(bindQo.getEnterpriseId(), bindQo.getVersion())) {
return resultResponse(HaoBanErrCode.ERR_2);
}
WebLoginDTO login = AuthWebRequestUtil.getLoginUser();
String wxEnterpriseId = login.getWxEnterpriseId();
WxEnterpriseRelationDetailDTO detailDTO = new WxEnterpriseRelationDetailDTO();
detailDTO.setWxEnterpriseRelatedId(bindQo.getWxEnterpriseRelatedId());
detailDTO.setEnterpriseId(bindQo.getEnterpriseId());
detailDTO.setWxEnterpriseId(wxEnterpriseId);
detailDTO.setStaffId(null);
detailDTO.setStaffName(null);
detailDTO.setMemberOpenCardFlag(bindQo.getMemberOpenCardFlag());
detailDTO.setWxEnterpriseType(bindQo.getWxEnterpriseType());
List<StoreOrGroupInfoDTO> storeOrGroupInfoDTOS = JSONObject.parseArray(bindQo.getRelations(), StoreOrGroupInfoDTO.class);
detailDTO.setRelations(storeOrGroupInfoDTOS);
ServiceResponse resp = wxEnterpriseRelatedApiService.wxEnterpriseBind(detailDTO);
if (resp.getCode() != 1) {
HaoBanErrCode.ERR_DEFINE.setMsg(resp.getMessage());
return resultResponse(HaoBanErrCode.ERR_DEFINE);
}
return resultResponse(HaoBanErrCode.ERR_1);
}
//溢出门店列表 //溢出门店列表
@RequestMapping("store-full-list") @RequestMapping("store-full-list")
public HaobanResponse storeFullList(BasePageInfo basePageInfo, String keyWord) { public HaobanResponse storeFullList(BasePageInfo basePageInfo, String keyWord) {
...@@ -339,8 +331,11 @@ public class WxEnterpriseController extends WebBaseController { ...@@ -339,8 +331,11 @@ public class WxEnterpriseController extends WebBaseController {
return resultResponse(HaoBanErrCode.ERR_10012); return resultResponse(HaoBanErrCode.ERR_10012);
} }
wxSecretKey = wxSecretKey.trim(); wxSecretKey = wxSecretKey.trim();
String res = qywxUserApiService.listSelfExternalUserid(qwDTO.getDkCorpid(), wxSecretKey, getWxUserId(wxEnterpriseId, login.getStaffId(), qwDTO , true)); String token = this.qywxCorpApiService.getToken(qwDTO.getDkCorpid(), wxSecretKey);
logger.info("【保存联系人key】res={}", res); logger.info("查询token", token) ;
if(StringUtils.isEmpty(token) || token.length() < 10) {
return this.fail("请确认secret是否正确") ;
}
SecretSettingDTO secretSetting = wxEnterpriseApiService.getSecretSetting(wxEnterpriseId, SecretTypeEnum.CONTACT_CUSTOMER.getVal(), null); SecretSettingDTO secretSetting = wxEnterpriseApiService.getSecretSetting(wxEnterpriseId, SecretTypeEnum.CONTACT_CUSTOMER.getVal(), null);
if (null == secretSetting) { if (null == secretSetting) {
secretSetting = new SecretSettingDTO(); secretSetting = new SecretSettingDTO();
...@@ -381,43 +376,19 @@ public class WxEnterpriseController extends WebBaseController { ...@@ -381,43 +376,19 @@ public class WxEnterpriseController extends WebBaseController {
secretSetting = new SecretSettingDTO(); secretSetting = new SecretSettingDTO();
} }
WxEnterpriseQwDTO qwDTO = this.wxEnterpriseApiService.getQwInfo(wxEnterpriseId) ; WxEnterpriseQwDTO qwDTO = this.wxEnterpriseApiService.getQwInfo(wxEnterpriseId) ;
UserDTO user = qywxUserApiService.getSelfWorkWxUser(qwDTO.getMemberCorpid(), memberSecret, getWxUserId(wxEnterpriseId, login.getStaffId(),qwDTO , false)); String token = this.qywxCorpApiService.getToken(qwDTO.getMemberCorpid(), memberSecret);
logger.info("查询token", token) ;
if(StringUtils.isEmpty(token) || token.length() < 10) {
return this.fail("请确认secret是否正确") ;
}
secretSetting.setSecretType(SecretTypeEnum.MEMBER_WAPP.getVal()); secretSetting.setSecretType(SecretTypeEnum.MEMBER_WAPP.getVal());
secretSetting.setSecretName(secretName); secretSetting.setSecretName(secretName);
secretSetting.setEnterpriseId(enterpriseId); secretSetting.setEnterpriseId(enterpriseId);
secretSetting.setWxEnterpriseId(wxEnterpriseId); secretSetting.setWxEnterpriseId(wxEnterpriseId);
secretSetting.setSecretVal(memberSecret);
if (user != null) { secretSetting.setCheckFlag(1);
secretSetting.setSecretVal(memberSecret); wxEnterpriseApiService.saveSecretSetting(secretSetting);
secretSetting.setCheckFlag(1); return resultResponse(HaoBanErrCode.ERR_1, true);
wxEnterpriseApiService.saveSecretSetting(secretSetting);
return resultResponse(HaoBanErrCode.ERR_1, true);
} else {
secretSetting.setCheckFlag(0);
wxEnterpriseApiService.saveSecretSetting(secretSetting);
return resultResponse(HaoBanErrCode.ERR_10022);
}
}
private String getWxUserId(String wxEnterpriseId, String staffId,WxEnterpriseQwDTO qwDTO , boolean selfFlag) {
StaffDTO statff = null ;
if(StringUtils.isBlank(staffId)) {
statff = this.staffApiService.getWxStaffOne(wxEnterpriseId) ;
}else {
statff = this.staffApiService.selectById(staffId) ;
}
logger.info("staffid={},返回={}" , staffId , JSON.toJSONString(statff));
if(null == statff) {
return null ;
}
if(selfFlag) {
return statff.getWxUserId();
}
if(qwDTO.needOpenUserId3th()) {
return statff.getWxOpenUseId() ;
}else {
return statff.getWxUserId();
}
} }
/** /**
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment