From 2464da7e6dfb4406772b791fe19e474829a8e9fd Mon Sep 17 00:00:00 2001 From: Stormeye Wu Date: Tue, 19 Feb 2019 18:09:41 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=BE=AE=E4=BF=A1=E5=BC=80=E5=8F=91=E5=B9=B3?= =?UTF-8?q?=E5=8F=B0][=E4=BF=AE=E6=94=B9]:=E5=8F=91=E5=B8=83=E7=8A=B6?= =?UTF-8?q?=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../enums/EnumWeappReleaseStatus.java | 3 +- .../controller/WechatWeappCodeController.java | 54 ++++++++++++++++++- .../controller/WxWeappInfoController.java | 1 - 3 files changed, 55 insertions(+), 3 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumWeappReleaseStatus.java b/mallinkService/src/main/java/com/iformall/enums/EnumWeappReleaseStatus.java index 41a0be0d9..d999cd06b 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumWeappReleaseStatus.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumWeappReleaseStatus.java @@ -7,7 +7,8 @@ public enum EnumWeappReleaseStatus { // 0为发布成功,1为发布失败 SUCCESS(0, "发布成功"), - FAIL(1, "发布失败") + FAIL(1, "发布失败"), + BACK(2, "发布回退"), ; public static EnumWeappReleaseStatus getEnum(Integer code) { diff --git a/mallinkWechatOpen/src/main/java/com/iformall/controller/WechatWeappCodeController.java b/mallinkWechatOpen/src/main/java/com/iformall/controller/WechatWeappCodeController.java index 77d3f3808..0a68bd0a8 100644 --- a/mallinkWechatOpen/src/main/java/com/iformall/controller/WechatWeappCodeController.java +++ b/mallinkWechatOpen/src/main/java/com/iformall/controller/WechatWeappCodeController.java @@ -6,6 +6,10 @@ import com.google.gson.GsonBuilder; import com.google.gson.reflect.TypeToken; import com.iformall.common.Result; import com.iformall.common.ResultData; +import com.iformall.domain.po.WxWeappCodeStatus; +import com.iformall.enums.EnumWeappAuditStatus; +import com.iformall.enums.EnumWeappReleaseStatus; +import com.iformall.service.WxWeappCodeStatusService; import com.iformall.service.wechat.WxOpenService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -42,6 +46,9 @@ public class WechatWeappCodeController { @Autowired private WxOpenService openService; + @Autowired + private WxWeappCodeStatusService weappCodeStatusService; + @ApiOperation(value = "为授权的小程序帐号上传小程序代码", notes = "extInfo参考https://mp.weixin.qq.com/debug/wxadoc/dev/framework/config.html") @PostMapping("/codeCommit") public ResultData codeCommit(Long templateId, String userVersion, String userDesc, String extInfoStr) { @@ -130,6 +137,15 @@ public class WechatWeappCodeController { WxOpenMaService openMaService = openService.getWxOpenComponentService().getWxMaServiceByAppid(appId); WxOpenMaSubmitAuditResult openRet = openMaService.submitAudit(subMessage); logger.info(openRet.toString()); + WxWeappCodeStatus codeStatus = weappCodeStatusService.getByAppId(appId); + if(codeStatus != null) { + if(openRet.isSuccess()) { + codeStatus.setAuditStatus(EnumWeappAuditStatus.AUDITING.getCode()); + } else { + codeStatus.setAuditStatus(EnumWeappAuditStatus.FAIL.getCode()); + } + weappCodeStatusService.updateAuditStatus(codeStatus); + } return new ResultData(openRet); } catch (WxErrorException e) { logger.error(e.getMessage()); @@ -144,6 +160,16 @@ public class WechatWeappCodeController { WxOpenMaService openMaService = openService.getWxOpenComponentService().getWxMaServiceByAppid(appId); WxOpenMaQueryAuditResult openRet = openMaService.getAuditStatus(Long.valueOf(auditidStr)); logger.info(openRet.toString()); + WxWeappCodeStatus codeStatus = weappCodeStatusService.getByAppId(appId); + if(codeStatus != null) { + if(openRet.getStatus().equals(0)) { + codeStatus.setAuditStatus(EnumWeappAuditStatus.SUCCESS.getCode()); + } else { + codeStatus.setAuditStatus(EnumWeappAuditStatus.FAIL.getCode()); + codeStatus.setAuditErrCode(Integer.valueOf(openRet.getErrcode())); + } + weappCodeStatusService.updateAuditStatus(codeStatus); + } return new ResultData(openRet); } catch (WxErrorException e) { logger.error(e.getMessage()); @@ -158,6 +184,16 @@ public class WechatWeappCodeController { WxOpenMaService openMaService = openService.getWxOpenComponentService().getWxMaServiceByAppid(appId); WxOpenMaQueryAuditResult openRet = openMaService.getLatestAuditStatus(); logger.info(openRet.toString()); + WxWeappCodeStatus codeStatus = weappCodeStatusService.getByAppId(appId); + if(codeStatus != null) { + if(openRet.getStatus().equals(0)) { + codeStatus.setAuditStatus(EnumWeappAuditStatus.SUCCESS.getCode()); + } else { + codeStatus.setAuditStatus(EnumWeappAuditStatus.FAIL.getCode()); + codeStatus.setAuditErrCode(Integer.valueOf(openRet.getErrcode())); + } + weappCodeStatusService.updateAuditStatus(codeStatus); + } return new ResultData(openRet); } catch (WxErrorException e) { logger.error(e.getMessage()); @@ -172,6 +208,16 @@ public class WechatWeappCodeController { WxOpenMaService openMaService = openService.getWxOpenComponentService().getWxMaServiceByAppid(appId); WxOpenResult openRet = openMaService.releaesAudited(); logger.info(openRet.toString()); + WxWeappCodeStatus codeStatus = weappCodeStatusService.getByAppId(appId); + if(codeStatus != null) { + if(openRet.getErrcode().equals('0')) { + codeStatus.setReleaseStatus(EnumWeappReleaseStatus.SUCCESS.getCode()); + } else { + codeStatus.setReleaseStatus(EnumWeappReleaseStatus.FAIL.getCode()); + codeStatus.setReleaseErrCode(Integer.valueOf(openRet.getErrcode())); + } + weappCodeStatusService.updateReleaseStatus(codeStatus); + } return new ResultData(openRet); } catch (WxErrorException e) { logger.error(e.getMessage()); @@ -186,7 +232,13 @@ public class WechatWeappCodeController { WxOpenMaService openMaService = openService.getWxOpenComponentService().getWxMaServiceByAppid(appId); WxOpenResult openRet = openMaService.revertCodeReleaes(); logger.info(openRet.toString()); - return new ResultData(openRet); + if(openRet.isSuccess()) { + WxWeappCodeStatus codeStatus = weappCodeStatusService.getByAppId(appId); + if(codeStatus != null) { + codeStatus.setReleaseStatus(EnumWeappReleaseStatus.BACK.getCode()); + weappCodeStatusService.updateReleaseStatus(codeStatus); + } + } } catch (WxErrorException e) { logger.error(e.getMessage()); } diff --git a/mallinkWechatOpen/src/main/java/com/iformall/controller/WxWeappInfoController.java b/mallinkWechatOpen/src/main/java/com/iformall/controller/WxWeappInfoController.java index ce431afff..5315c8c2f 100644 --- a/mallinkWechatOpen/src/main/java/com/iformall/controller/WxWeappInfoController.java +++ b/mallinkWechatOpen/src/main/java/com/iformall/controller/WxWeappInfoController.java @@ -81,7 +81,6 @@ public class WxWeappInfoController extends BaseController { public ResultData list(@ModelAttribute WxWeappInfo weappInfo, Integer pageNum, Integer pageSize) { logger.debug("[" + getIpAddr() + "] WxWeappInfoController::list"); if (null == weappInfo) weappInfo = new WxWeappInfo(); - weappInfo.setAuthorizationStatus(EnumWxAuthorizationStatus.AUTHORIZED.getCode()); weappInfo.setSortColumns(WxAuthorizerInfo.Field.CurrentVersion_DESC); final PageInfo page = authorizerInfoService.listVoAsPage(weappInfo, pageNum, pageSize); return new ResultData(page);