From d70a94f330e6f9844024242e09f31bc062fa5f2b Mon Sep 17 00:00:00 2001 From: Stormeye Wu Date: Mon, 16 Sep 2019 14:17:05 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=9F=9F=E5=90=8D=E6=B8=85=E9=99=A4][?= =?UTF-8?q?=E4=BF=AE=E6=94=B9]:=E5=9F=9F=E5=90=8D=E5=8F=AF=E6=B8=85?= =?UTF-8?q?=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/iformall/utils/OpenConstant.java | 11 +++- .../controller/WxWeappInfoController.java | 60 +++++++++++++++++-- 2 files changed, 66 insertions(+), 5 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/utils/OpenConstant.java b/mallinkService/src/main/java/com/iformall/utils/OpenConstant.java index 9040fdf..f1cd72a 100644 --- a/mallinkService/src/main/java/com/iformall/utils/OpenConstant.java +++ b/mallinkService/src/main/java/com/iformall/utils/OpenConstant.java @@ -28,9 +28,18 @@ public class OpenConstant { public static final String ERRCODE = "errcode"; public static final Integer SUCC = 0; + + /** + * domain 操作 + */ + public static final String SET = "set"; // set覆盖 + public static final String ADD = "add"; // add添加 + public static final String DEL = "delete"; // delete删除 + public static final String GET = "get"; // get获取 + public static final String VERIFY_SUCC = "verify_success"; public static final String VERIFY_FAIL = "verify_fail"; - public static final String SET = "set"; + public static final String URL = "url"; public static final String REQ_DOMAIN = "requestdomain"; public static final String WS_DOMAIN = "wsrequestdomain"; diff --git a/mlWechatOpen/src/main/java/com/iformall/controller/WxWeappInfoController.java b/mlWechatOpen/src/main/java/com/iformall/controller/WxWeappInfoController.java index 9a834fd..36cf0da 100644 --- a/mlWechatOpen/src/main/java/com/iformall/controller/WxWeappInfoController.java +++ b/mlWechatOpen/src/main/java/com/iformall/controller/WxWeappInfoController.java @@ -181,6 +181,60 @@ public class WxWeappInfoController extends BaseController { return new ResultData(); } + @ApiOperation(value = "APP清除域名", notes = "{\"weappId\":\"weappId\",\"type\":\"String\"}") + @PostMapping("cleanDomain") + public ResultData cleanDomain(@RequestBody Map params) { + logger.debug("[" + getIpAddr() + "] WxWeappInfoController::cleanDomain"); + String appId = params.get(OpenConstant.WE_APPID); + String typeStr = params.get(OpenConstant.TYPE); + + if(StringUtils.isBlank(typeStr)) { + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "type参数不能为空"); + } + if(StringUtils.isBlank(appId)) { + return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "weappId参数不能为空"); + } + + Integer type = 0; + try { + type = Integer.parseInt(typeStr); + } catch (Exception e) { + return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); + } + // 检查基础配置参数 + WxWeappBasicSet weappBasicSetQ = new WxWeappBasicSet(); + weappBasicSetQ.setType(type); + weappBasicSetQ.setDeploy(getFmDeploy); + WxWeappBasicSet weappBasicSet = weappBasicSetService.getByTypeAndDeploy(weappBasicSetQ); + if(weappBasicSet == null) { + logger.error("未找到相关的基础设置参数"); + return new ResultData(ErrorCode.WEAPP_BASIC_SET_ERR); + } + + JSONObject domainObj = JSON.parseObject(weappBasicSet.getDomainUrl()); + if(domainObj == null) { + logger.error("未找到相关的基础设置参数"); + return new ResultData(ErrorCode.WEAPP_BASIC_SET_DOMAIN_ERR); + } + + // 检查appId是否已授权 + WxAuthorizerInfo authorizerInfo = authorizerInfoService.getByAppId(appId); + if(authorizerInfo == null) { + return new ResultData(ErrorCode.WEAPP_APPID_NOT_AUTH); + } + if(!authorizerInfo.getAuthorizationStatus().equals(EnumWxAuthorizationStatus.AUTHORIZED.getCode())) { + return new ResultData(ErrorCode.WEAPP_APPID_NOT_AUTH); + } + WxOpenMaService openMaService = openService.getWxOpenComponentService().getWxMaServiceByAppid(appId); + try { + modifyDomainUrl(OpenConstant.DEL, domainObj, authorizerInfo, openMaService); + } catch (WxErrorException e) { + logger.error(e.getMessage()); + return new ResultData(Result.ERROR, e.getMessage()); + } + return new ResultData(); + } + private ResultData setBasicForAppId(String appId, WxWeappBasicSet weappBasicSet, JSONObject domainObj, JSONObject templeObj) { WxAuthorizerInfo authorizerInfo = authorizerInfoService.getByAppId(appId); if(authorizerInfo == null) { @@ -189,8 +243,7 @@ public class WxWeappInfoController extends BaseController { WxOpenMaService openMaService = openService.getWxOpenComponentService().getWxMaServiceByAppid(appId); try { setBasicVersion(weappBasicSet, authorizerInfo, openMaService); - - setDomainUrl(domainObj, authorizerInfo, openMaService); + modifyDomainUrl(OpenConstant.SET, domainObj, authorizerInfo, openMaService); } catch (WxErrorException e) { logger.error(e.getMessage()); return new ResultData(Result.ERROR, e.getMessage()); @@ -282,9 +335,8 @@ public class WxWeappInfoController extends BaseController { logger.info("setBasicTemplateMsgPressSuccess end."); } - private void setDomainUrl(JSONObject domainObj, WxAuthorizerInfo authorizerInfo, WxOpenMaService openMaService) throws WxErrorException { + private void modifyDomainUrl(String action, JSONObject domainObj, WxAuthorizerInfo authorizerInfo, WxOpenMaService openMaService) throws WxErrorException { // 服务器域名 - String action = OpenConstant.SET; JSONObject urlObj = domainObj.getJSONObject(OpenConstant.URL); List requestDomain = getUrlList(urlObj.getJSONArray(OpenConstant.REQ_DOMAIN)); List wsrequestDomain = getUrlList(urlObj.getJSONArray(OpenConstant.WS_DOMAIN));