diff --git a/mallinkService/src/main/java/com/iformall/service/toutiao/api/TtOpenMaService.java b/mallinkService/src/main/java/com/iformall/service/toutiao/api/TtOpenMaService.java index 130512f..170b571 100644 --- a/mallinkService/src/main/java/com/iformall/service/toutiao/api/TtOpenMaService.java +++ b/mallinkService/src/main/java/com/iformall/service/toutiao/api/TtOpenMaService.java @@ -108,7 +108,7 @@ public interface TtOpenMaService extends TtMaService { /** * 1. 为授权的小程序帐号上传小程序代码 */ - String API_CODE_COMMIT = "https://api.weixin.qq.com/wxa/commit"; + String API_CODE_COMMIT = "https://open.microapp.bytedance.com/openapi/v1/microapp/package/upload"; /** * 2. 获取体验小程序的体验二维码 diff --git a/mallinkService/src/main/java/com/iformall/service/toutiao/api/impl/TtOpenMaServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/toutiao/api/impl/TtOpenMaServiceImpl.java index ad49821..fe9941e 100644 --- a/mallinkService/src/main/java/com/iformall/service/toutiao/api/impl/TtOpenMaServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/toutiao/api/impl/TtOpenMaServiceImpl.java @@ -8,6 +8,7 @@ import com.google.gson.JsonObject; import com.iformall.service.toutiao.api.TtOpenComponentService; import com.iformall.service.toutiao.api.TtOpenMaService; import com.iformall.service.toutiao.miniapp.impl.TtMaServiceImpl; +import lombok.extern.java.Log; import me.chanjar.weixin.common.error.WxErrorException; import me.chanjar.weixin.open.bean.ma.WxMaOpenCommitExtInfo; import me.chanjar.weixin.open.bean.ma.WxMaQrcodeParam; @@ -20,7 +21,7 @@ import java.util.List; import java.util.Map; /** - * @author 007 + * *
  *     增加开放平台代小程序管理服务能力
  *     说明:这里让这个服务公开便于调用者模拟本地测试服务
@@ -286,13 +287,16 @@ public class TtOpenMaServiceImpl extends TtMaServiceImpl implements TtOpenMaServ
    */
   @Override
   public WxOpenResult codeCommit(Long templateId, String userVersion, String userDesc, WxMaOpenCommitExtInfo extInfo) throws WxErrorException {
+    String uri = API_CODE_COMMIT + "?component_appid=" + ttOpenComponentService.getWxOpenConfigStorage().getComponentAppId();
+
     JsonObject params = new JsonObject();
     params.addProperty("template_id", templateId);
     params.addProperty("user_version", userVersion);
     params.addProperty("user_desc", userDesc);
     //注意:ext_json必须是字符串类型
     params.addProperty("ext_json", GSON.toJson(extInfo));
-    String response = post(API_CODE_COMMIT, GSON.toJson(params));
+    String response = ttOpenComponentService.postByAppAccessToken(appId,uri,GSON.toJson(params),"authorizer_access_token");
+
     return WxMaGsonBuilder.create().fromJson(response, WxOpenResult.class);
   }
 
diff --git a/mlToutiaoOpen/src/main/java/com/iformall/controller/WxWeappInfoController.java b/mlToutiaoOpen/src/main/java/com/iformall/controller/WxWeappInfoController.java
index 73df4af..e732797 100644
--- a/mlToutiaoOpen/src/main/java/com/iformall/controller/WxWeappInfoController.java
+++ b/mlToutiaoOpen/src/main/java/com/iformall/controller/WxWeappInfoController.java
@@ -20,6 +20,9 @@ import com.iformall.domain.vo.WxWeappInfo;
 import com.iformall.domain.vo.WxWeappReleaseStatusVo;
 import com.iformall.enums.*;
 import com.iformall.service.*;
+import com.iformall.service.toutiao.FmTtOpenService;
+import com.iformall.service.toutiao.api.TtOpenMaService;
+import com.iformall.service.toutiao.miniapp.TtMaService;
 import com.iformall.service.wechat.FmOpenService;
 import com.iformall.utils.Constant;
 import com.iformall.utils.OpenConstant;
@@ -75,7 +78,7 @@ public class WxWeappInfoController extends BaseController {
     private WxWeappReleaseStatusService weappReleaseStatusService;
 
     @Autowired
-    private FmOpenService openService;
+    private FmTtOpenService openService;
 
     @Autowired
     private WxAppinfoService appinfoService;
@@ -226,7 +229,7 @@ public class WxWeappInfoController extends BaseController {
         if(!authorizerInfo.getAuthorizationStatus().equals(EnumWxAuthorizationStatus.AUTHORIZED.getCode())) {
                 return new ResultData(ErrorCode.WEAPP_APPID_NOT_AUTH);
             }
-        WxOpenMaService openMaService = openService.getWxOpenComponentService().getWxMaServiceByAppid(appId);
+        TtOpenMaService openMaService = openService.getTtOpenComponentService().getTtMaServiceByAppid(appId);
         try {
             modifyDomainUrl(OpenConstant.DEL, domainObj, authorizerInfo, openMaService);
         } catch (WxErrorException e) {
@@ -241,7 +244,7 @@ public class WxWeappInfoController extends BaseController {
         if(authorizerInfo == null) {
             return new ResultData(ErrorCode.WEAPP_APPID_NOT_AUTH);
         }
-        WxOpenMaService openMaService = openService.getWxOpenComponentService().getWxMaServiceByAppid(appId);
+        TtOpenMaService openMaService = openService.getTtOpenComponentService().getTtMaServiceByAppid(appId);
         try {
             setBasicVersion(weappBasicSet, authorizerInfo, openMaService);
             modifyDomainUrl(OpenConstant.SET, domainObj, authorizerInfo, openMaService);
@@ -249,94 +252,94 @@ public class WxWeappInfoController extends BaseController {
             logger.error(e.getMessage());
             return new ResultData(Result.ERROR, e.getMessage());
         }
-        // 设置微信模板
-        if(weappBasicSet.getType().equals(EnumAppType.C.getCode())) {
-            if(authorizerInfo.getTemplateStatus() == null ||
-                    !authorizerInfo.getTemplateStatus().equals(EnumWxAuthotizationTemplateStatus.SUCCESS.getCode())) {
-                // 模板未设置或者设置失败
-                // 获取模板
-                WxAppinfo appinfo = appinfoService.getByAppId(appId);
-                WxMaService maService = openService.getWxOpenComponentService().getWxMaServiceByAppid(appId);
-
-                try {
-                    setBasicTemplateMsgVerifySuccess(templeObj, appinfo, maService);
-                    setBasicTemplateMsgVerifyFail(templeObj, appinfo, maService);
-                    setBasicTemplateMsgPressSuccess(templeObj, appinfo, maService);
-
-                    // 更新状态
-                    authorizerInfo.setTemplateStatus(EnumWxAuthotizationTemplateStatus.SUCCESS.getCode());
-                    authorizerInfo.setTemplateTime(new Date());
-                    authorizerInfo.setUpdateTime(new Date());
-                    authorizerInfoService.updateTemplate(authorizerInfo);
-                } catch (WxErrorException e) {
-                    logger.error(e.getMessage());
-                    // 更新状态
-                    authorizerInfo.setTemplateStatus(EnumWxAuthotizationTemplateStatus.Fail.getCode());
-                    authorizerInfo.setTemplateTime(new Date());
-                    authorizerInfo.setUpdateTime(new Date());
-                    authorizerInfoService.updateTemplate(authorizerInfo);
-                    return new ResultData(Result.ERROR, e.getMessage());
-                }
-            }
-        }
+//        // 设置微信模板
+//        if(weappBasicSet.getType().equals(EnumAppType.C.getCode())) {
+//            if(authorizerInfo.getTemplateStatus() == null ||
+//                    !authorizerInfo.getTemplateStatus().equals(EnumWxAuthotizationTemplateStatus.SUCCESS.getCode())) {
+//                // 模板未设置或者设置失败
+//                // 获取模板
+//                WxAppinfo appinfo = appinfoService.getByAppId(appId);
+//                TtMaService maService = openService.getTtOpenComponentService().getTtMaServiceByAppid(appId);
+//
+//                try {
+////                    setBasicTemplateMsgVerifySuccess(templeObj, appinfo, maService);
+////                    setBasicTemplateMsgVerifyFail(templeObj, appinfo, maService);
+////                    setBasicTemplateMsgPressSuccess(templeObj, appinfo, maService);
+//
+//                    // 更新状态
+//                    authorizerInfo.setTemplateStatus(EnumWxAuthotizationTemplateStatus.SUCCESS.getCode());
+//                    authorizerInfo.setTemplateTime(new Date());
+//                    authorizerInfo.setUpdateTime(new Date());
+//                    authorizerInfoService.updateTemplate(authorizerInfo);
+//                } catch (WxErrorException e) {
+//                    logger.error(e.getMessage());
+//                    // 更新状态
+//                    authorizerInfo.setTemplateStatus(EnumWxAuthotizationTemplateStatus.Fail.getCode());
+//                    authorizerInfo.setTemplateTime(new Date());
+//                    authorizerInfo.setUpdateTime(new Date());
+//                    authorizerInfoService.updateTemplate(authorizerInfo);
+//                    return new ResultData(Result.ERROR, e.getMessage());
+//                }
+//            }
+//        }
         // 设置成功返回null
         return null;
     }
 
-    private void setBasicTemplateMsg(JSONObject templeObj, WxAppinfo appinfo, WxMaService maService, Integer msgCode, String msgTypeStr) throws WxErrorException {
-        JSONObject msgObj;
-        try {
-            msgObj = templeObj.getJSONObject(msgTypeStr);
-        } catch (Exception e) {
-            logger.error(e.getMessage());
-            return;
-        }
-        logger.info(msgObj.toJSONString());
-        String id = msgObj.getString(OpenConstant.ID);
-        JSONArray keyidlist = msgObj.getJSONArray(OpenConstant.KEY_ID_LIST);
-        String customParam = msgObj.getString(OpenConstant.CUSTOM_PARAM);
-        logger.info(customParam);
-        JSONObject customParamObj = JSON.parseObject(customParam);
-        List keyArr1 = getIdList(keyidlist);
-        if (appinfo != null) {
-            // wx_template_msg
-            WxTemplateMsg templateMsgQ = new WxTemplateMsg();
-            templateMsgQ.setTenantId(appinfo.getTenantId());
-            logger.info(msgCode.toString());
-            templateMsgQ.setType(msgCode);
-            WxTemplateMsg templateMsg = templateMsgService.getByObj(templateMsgQ);
-            if (templateMsg != null) {
-                templateMsg.setCustomParam(customParamObj.toJSONString());
-                templateMsgService.saveOrUpdate(templateMsg);
-            } else {
-                WxMaTemplateAddResult ret = maService.getTemplateService().addTemplate(id, keyArr1);
-                logger.info(ret.toString());
-                templateMsgQ.setTemplateId(ret.getTemplateId());
-                templateMsgQ.setCustomParam(customParamObj.toJSONString());
-                templateMsgService.saveOrUpdate(templateMsgQ);
-            }
-        }
-    }
-
-    private void setBasicTemplateMsgVerifySuccess(JSONObject templeObj, WxAppinfo appinfo, WxMaService maService) throws WxErrorException {
-        // 核销成功消息
-        setBasicTemplateMsg(templeObj, appinfo, maService, EnumTemplateType.VERIFY_SUCCESS.getCode(), OpenConstant.VERIFY_SUCC);
-    }
-
-    private void setBasicTemplateMsgVerifyFail(JSONObject templeObj, WxAppinfo appinfo, WxMaService maService) throws WxErrorException {
-        // 核销失败消息
-        setBasicTemplateMsg(templeObj, appinfo, maService, EnumTemplateType.VERIFY_FAIL.getCode(), OpenConstant.VERIFY_FAIL);
-    }
-
-    private void setBasicTemplateMsgPressSuccess(JSONObject templeObj, WxAppinfo appinfo, WxMaService maService) throws WxErrorException {
-        // 砍价成功消息
-        logger.info("setBasicTemplateMsgPressSuccess begin..");
-        /// EnumTemplateType.PRESS_PRICE_SUCCESS.getCode()
-        setBasicTemplateMsg(templeObj, appinfo, maService, 3, "press_success");
-        logger.info("setBasicTemplateMsgPressSuccess end.");
-    }
-
-    private void modifyDomainUrl(String action, JSONObject domainObj, WxAuthorizerInfo authorizerInfo, WxOpenMaService openMaService) throws WxErrorException {
+//    private void setBasicTemplateMsg(JSONObject templeObj, WxAppinfo appinfo, TtMaService maService, Integer msgCode, String msgTypeStr) throws WxErrorException {
+//        JSONObject msgObj;
+//        try {
+//            msgObj = templeObj.getJSONObject(msgTypeStr);
+//        } catch (Exception e) {
+//            logger.error(e.getMessage());
+//            return;
+//        }
+//        logger.info(msgObj.toJSONString());
+//        String id = msgObj.getString(OpenConstant.ID);
+//        JSONArray keyidlist = msgObj.getJSONArray(OpenConstant.KEY_ID_LIST);
+//        String customParam = msgObj.getString(OpenConstant.CUSTOM_PARAM);
+//        logger.info(customParam);
+//        JSONObject customParamObj = JSON.parseObject(customParam);
+//        List keyArr1 = getIdList(keyidlist);
+//        if (appinfo != null) {
+//            // wx_template_msg
+//            WxTemplateMsg templateMsgQ = new WxTemplateMsg();
+//            templateMsgQ.setTenantId(appinfo.getTenantId());
+//            logger.info(msgCode.toString());
+//            templateMsgQ.setType(msgCode);
+//            WxTemplateMsg templateMsg = templateMsgService.getByObj(templateMsgQ);
+//            if (templateMsg != null) {
+//                templateMsg.setCustomParam(customParamObj.toJSONString());
+//                templateMsgService.saveOrUpdate(templateMsg);
+//            } else {
+//                WxMaTemplateAddResult ret = maService.getTemplateService().addTemplate(id, keyArr1);
+//                logger.info(ret.toString());
+//                templateMsgQ.setTemplateId(ret.getTemplateId());
+//                templateMsgQ.setCustomParam(customParamObj.toJSONString());
+//                templateMsgService.saveOrUpdate(templateMsgQ);
+//            }
+//        }
+//    }
+
+//    private void setBasicTemplateMsgVerifySuccess(JSONObject templeObj, WxAppinfo appinfo, TtMaService maService) throws WxErrorException {
+//        // 核销成功消息
+//        setBasicTemplateMsg(templeObj, appinfo, maService, EnumTemplateType.VERIFY_SUCCESS.getCode(), OpenConstant.VERIFY_SUCC);
+//    }
+//
+//    private void setBasicTemplateMsgVerifyFail(JSONObject templeObj, WxAppinfo appinfo, TtMaService maService) throws WxErrorException {
+//        // 核销失败消息
+//        setBasicTemplateMsg(templeObj, appinfo, maService, EnumTemplateType.VERIFY_FAIL.getCode(), OpenConstant.VERIFY_FAIL);
+//    }
+//
+//    private void setBasicTemplateMsgPressSuccess(JSONObject templeObj, WxAppinfo appinfo, TtMaService maService) throws WxErrorException {
+//        // 砍价成功消息
+//        logger.info("setBasicTemplateMsgPressSuccess begin..");
+//        /// EnumTemplateType.PRESS_PRICE_SUCCESS.getCode()
+//        setBasicTemplateMsg(templeObj, appinfo, maService, 3, "press_success");
+//        logger.info("setBasicTemplateMsgPressSuccess end.");
+//    }
+
+    private void modifyDomainUrl(String action, JSONObject domainObj, WxAuthorizerInfo authorizerInfo, TtOpenMaService openMaService) throws WxErrorException {
         // 服务器域名
         JSONObject urlObj = domainObj.getJSONObject(OpenConstant.URL);
         List requestDomain = getUrlList(urlObj.getJSONArray(OpenConstant.REQ_DOMAIN));
@@ -381,7 +384,7 @@ public class WxWeappInfoController extends BaseController {
         authorizerInfoService.updateWebDomainUrl(authorizerInfo);
     }
 
-    private void setBasicVersion(WxWeappBasicSet weappBasicSet, WxAuthorizerInfo authorizerInfo, WxOpenMaService openMaService) throws WxErrorException {
+    private void setBasicVersion(WxWeappBasicSet weappBasicSet, WxAuthorizerInfo authorizerInfo, TtOpenMaService openMaService) throws WxErrorException {
         // 设置基础版本
         String versionRet = openMaService.setSupportVersion(weappBasicSet.getVersion());
         logger.info(versionRet);
@@ -619,7 +622,7 @@ public class WxWeappInfoController extends BaseController {
                 extInfo.getExtMap().put(OpenConstant.APP_VERSION, userVersion);
             }
             logger.info("NEW: " + extInfo.toString());
-            WxOpenMaService openMaService = openService.getWxOpenComponentService().getWxMaServiceByAppid(appinfo.getAppId());
+            TtOpenMaService openMaService = openService.getTtOpenComponentService().getTtMaServiceByAppid(appinfo.getAppId());
             WxOpenResult openRet = openMaService.codeCommit(templateId, userVersion, userDesc, extInfo);
             logger.info(openRet.toString());
             if (openRet.isSuccess()) {
@@ -673,7 +676,7 @@ public class WxWeappInfoController extends BaseController {
         try {
             WxOpenMaSubmitAuditMessage subMessage = gson.fromJson(extSet.getReleaseJson(), new TypeToken() {}.getType());
             logger.info(subMessage.toString());
-            WxOpenMaService openMaService = openService.getWxOpenComponentService().getWxMaServiceByAppid(codeStatus.getAppId());
+            TtOpenMaService openMaService = openService.getTtOpenComponentService().getTtMaServiceByAppid(codeStatus.getAppId());
             WxOpenMaSubmitAuditResult openRet = openMaService.submitAudit(subMessage);
             logger.info(openRet.toString());
             if(openRet.isSuccess()) {
@@ -752,7 +755,7 @@ public class WxWeappInfoController extends BaseController {
         apps.stream().forEach( auditStatus -> {
             // 审核中,可以发起审核查询
             try {
-                WxOpenMaService openMaService = openService.getWxOpenComponentService().getWxMaServiceByAppid(auditStatus.getAppId());
+                TtOpenMaService openMaService = openService.getTtOpenComponentService().getTtMaServiceByAppid(auditStatus.getAppId());
                 WxOpenMaQueryAuditResult openResult = openMaService.getLatestAuditStatus();
                 logger.info(openResult.toString());
                 if (openResult.isSuccess()) {
@@ -811,7 +814,7 @@ public class WxWeappInfoController extends BaseController {
         apps.stream().forEach( auditStatus -> {
             // 审核通过,已发布不可撤回
             try {
-                WxOpenMaService openMaService = openService.getWxOpenComponentService().getWxMaServiceByAppid(auditStatus.getAppId());
+                TtOpenMaService openMaService = openService.getTtOpenComponentService().getTtMaServiceByAppid(auditStatus.getAppId());
                 WxOpenResult openResult = openMaService.undoCodeAudit();
                 logger.info(openResult.toString());
                 if(openResult.isSuccess()) {
@@ -872,7 +875,7 @@ public class WxWeappInfoController extends BaseController {
             }
 
             try {
-                WxOpenMaService openMaService = openService.getWxOpenComponentService().getWxMaServiceByAppid(auditStatus.getAppId());
+                TtOpenMaService openMaService = openService.getTtOpenComponentService().getTtMaServiceByAppid(auditStatus.getAppId());
                 WxOpenResult openRet = openMaService.releaesAudited();
                 logger.info(openRet.toString());
                 boolean releaseSuccess = false;