diff --git a/mallinkWechatOpen/src/main/java/com/iformall/controller/WxWeappInfoController.java b/mallinkWechatOpen/src/main/java/com/iformall/controller/WxWeappInfoController.java index 6c3cd811b..07c216062 100644 --- a/mallinkWechatOpen/src/main/java/com/iformall/controller/WxWeappInfoController.java +++ b/mallinkWechatOpen/src/main/java/com/iformall/controller/WxWeappInfoController.java @@ -313,92 +313,6 @@ public class WxWeappInfoController extends BaseController { return keyArr; } - @ApiOperation(value = "批量,授权的小程序上传code并提交审核", notes = "{\"apps\":\"appid,appid\",\"templateId\":\"String\",\"userVersion\":\"String\",\"userDesc\":\"String\"}") - @PostMapping("batchCodeCommitAndAudit") - public ResultData batchCodeCommitAndAudit(@RequestBody Map params) { - logger.debug("[" + getIpAddr() + "] WxWeappInfoController::batchExtSet"); - String appsStr = params.get("apps"); - String templateIdStr = params.get("templateId"); - String userVersion = params.get("userVersion"); - String userDesc = params.get("userDesc"); - - Long templateId = null; - try { - templateId = Long.parseLong(templateIdStr); - } catch (Exception e) { - return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); - } - String [] apps = appsStr.split(","); - // 逐一检查app的设置 - for(String appId: apps) { - WxWeappExtSet extSetQ = new WxWeappExtSet(); - extSetQ.setAppId(appId); - WxWeappExtSet extSet = weappExtSetService.getByObj(extSetQ); - if(extSet == null) { - return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); - } - if(StringUtils.isBlank(extSet.getExtJson())) { - return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); - } - if(StringUtils.isBlank(extSet.getReleaseJson())) { - return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL); - } - } - // 逐一设置app配置 - for(String appId: apps) { - // 检查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); - } - codeOperation(appId, userVersion, userDesc, templateId); - } - return new ResultData(); - } - - private void codeOperation(String appId, String userVersion, String userDesc, Long templateId) { - WxAppinfo appinfo = appinfoService.getByAppId(appId); - - int iAppType = 0; - String appTypeStr = userVersion.substring(0, 1); - if(appTypeStr.equalsIgnoreCase("C")) - iAppType = EnumAppType.C.getCode(); - else if(appTypeStr.equalsIgnoreCase("B")) - iAppType = EnumAppType.B.getCode(); - if(!appinfo.getType().equals(iAppType)) { - // 如果版本号与小程序的类型不一致,不提交版本 - return; - } - - // get ext json - WxWeappExtSet extSetQ = new WxWeappExtSet(); - extSetQ.setAppId(appId); - WxWeappExtSet extSet = weappExtSetService.getByObj(extSetQ); - WxWeappCodeStatus codeStatus = weappCodeStatusService.getByAppId(appId); - if(extSet != null) { - boolean codeCommitStatus = false; - if(codeStatus != null && codeStatus.getCodeStatus().equals(0) && codeStatus.getUserVersion().equals(userVersion)) { - codeCommitStatus = true; - } - if(!codeCommitStatus) { - codeCommitStatus = doCodeCommit(userVersion, userDesc, templateId, appinfo, extSet, codeStatus); - } - // 提交审核 - if(codeCommitStatus) { - WxWeappAuditStatus auditStatus = weappAuditStatusService.getByAppId(appId); - if(auditStatus != null && auditStatus.getAuditStatus().equals(EnumWeappAuditStatus.AUDITING.getCode())) { - logger.error("审核中不能再提交审核"); - return; - } - doCodeAudit(codeStatus, auditStatus, extSet); - } - - } - } - @ApiOperation(value = "批量授权的小程序上传code", notes = "{\"apps\":\"appid,appid\",\"templateId\":\"String\",\"userVersion\":\"String\",\"userDesc\":\"String\"}") @PostMapping("batchCodeCommit") public ResultData batchCodeCommit(@RequestBody Map params) { @@ -588,8 +502,8 @@ public class WxWeappInfoController extends BaseController { codeStatus.setCodeStatus(EnumWeappCodeCommitStatus.SUCCESS.getCode()); } else { codeStatus.setCodeStatus(EnumWeappCodeCommitStatus.FAIL.getCode()); - codeStatus.setCodeErrCode(codeErrCode); } + codeStatus.setCodeErrCode(codeErrCode); codeStatus.setCodeTime(new Date()); weappCodeStatusService.updateStatus(codeStatus); } @@ -599,6 +513,7 @@ public class WxWeappInfoController extends BaseController { private void doCodeAudit(WxWeappCodeStatus codeStatus, WxWeappAuditStatus auditStatus, WxWeappExtSet extSet) { Gson gson = new GsonBuilder().create(); boolean submitStatus = false; + Long auditid = null; String codeErrCode = ""; try { WxOpenMaSubmitAuditMessage subMessage = gson.fromJson(extSet.getReleaseJson(), new TypeToken() {}.getType()); @@ -608,10 +523,11 @@ public class WxWeappInfoController extends BaseController { logger.info(openRet.toString()); if(openRet.isSuccess()) { submitStatus = true; + auditid = openRet.getAuditId(); } else { submitStatus = false; - codeErrCode = gson.toJson(openRet); } + codeErrCode = gson.toJson(openRet); } catch (WxErrorException e) { logger.error(e.getMessage()); submitStatus = false; @@ -627,6 +543,7 @@ public class WxWeappInfoController extends BaseController { auditStatus.setVersionDesc(codeStatus.getVersionDesc()); if(submitStatus) { auditStatus.setAuditStatus(EnumWeappAuditStatus.AUDITING.getCode()); + auditStatus.setAuditid(auditid); } else { auditStatus.setAuditStatus(EnumWeappAuditStatus.FAIL.getCode()); } @@ -637,16 +554,17 @@ public class WxWeappInfoController extends BaseController { if(!submitStatus) { if(!auditStatus.getUserVersion().equals(codeStatus.getUserVersion()) && auditStatus.getAuditStatus().equals(EnumWeappAuditStatus.AUDITING.getCode())) { - // 提交审核失败不替换当前审核中的数据 + // 当前审核中的数据不能替换 return; } - codeStatus.setCodeStatus(EnumWeappAuditStatus.FAIL.getCode()); - codeStatus.setCodeErrCode(codeErrCode); + auditStatus.setAuditStatus(EnumWeappAuditStatus.FAIL.getCode()); } else { - codeStatus.setCodeStatus(EnumWeappAuditStatus.AUDITING.getCode()); + auditStatus.setAuditStatus(EnumWeappAuditStatus.AUDITING.getCode()); + auditStatus.setAuditid(auditid); } auditStatus.setUserVersion(codeStatus.getUserVersion()); auditStatus.setVersionDesc(codeStatus.getVersionDesc()); + auditStatus.setAuditErrCode(codeErrCode); auditStatus.setAuditTime(new Date()); weappAuditStatusService.updateStatus(auditStatus); } @@ -691,6 +609,7 @@ public class WxWeappInfoController extends BaseController { auditStatus.setAuditStatus(EnumWeappAuditStatus.AUDITING.getCode()); break; } + auditStatus.setAuditid(openResult.getAuditId()); auditStatus.setAuditTime(new Date()); weappAuditStatusService.updateStatus(auditStatus); } @@ -747,7 +666,7 @@ public class WxWeappInfoController extends BaseController { apps.stream().forEach( auditStatus -> { WxWeappReleaseStatus releaseStatus = weappReleaseStatusService.getByAppId(auditStatus.getAppId()); if(releaseStatus != null) { - // 版本已发布成功,跳过 + // 当前版本已发布成功,跳过 if(releaseStatus.getUserVersion().equals(version) && releaseStatus.getReleaseStatus().equals(EnumWeappReleaseStatus.SUCCESS.getCode())) { return; @@ -770,12 +689,12 @@ public class WxWeappInfoController extends BaseController { } if(releaseSuccess) { releaseStatus.setReleaseStatus(EnumWeappReleaseStatus.SUCCESS.getCode()); - releaseStatus.setReleaseTime(new Date()); } else { releaseStatus.setReleaseStatus(EnumWeappReleaseStatus.FAIL.getCode()); - releaseStatus.setReleaseErrCode(gson.toJson(openRet)); - releaseStatus.setReleaseTime(new Date()); + } + releaseStatus.setReleaseErrCode(gson.toJson(openRet)); + releaseStatus.setReleaseTime(new Date()); weappReleaseStatusService.saveStatus(releaseStatus); } catch (WxErrorException e) { logger.error(e.getMessage());