| @@ -1,21 +1,36 @@ | |||||
| package com.iformall.controller.callback; | package com.iformall.controller.callback; | ||||
| import com.alibaba.fastjson.JSONObject; | |||||
| import com.iformall.controller.base.BaseController; | import com.iformall.controller.base.BaseController; | ||||
| import com.iformall.domain.po.WxAppinfo; | |||||
| import com.iformall.service.MailService; | |||||
| import com.iformall.service.WxAppinfoService; | |||||
| import com.iformall.utils.DateUtils; | |||||
| import me.chanjar.weixin.common.util.crypto.SHA1; | |||||
| import org.slf4j.Logger; | import org.slf4j.Logger; | ||||
| import org.slf4j.LoggerFactory; | import org.slf4j.LoggerFactory; | ||||
| import org.springframework.beans.factory.annotation.Autowired; | |||||
| import org.springframework.web.bind.annotation.*; | import org.springframework.web.bind.annotation.*; | ||||
| import javax.servlet.http.HttpServletRequest; | import javax.servlet.http.HttpServletRequest; | ||||
| import java.util.Date; | |||||
| import java.util.HashMap; | import java.util.HashMap; | ||||
| import java.util.Map; | import java.util.Map; | ||||
| @RestController | @RestController | ||||
| @RequestMapping("/ttweb/notify") | @RequestMapping("/ttweb/notify") | ||||
| public class TtWebController extends BaseController { | public class TtWebController extends BaseController { | ||||
| private final Logger logger = LoggerFactory.getLogger(this.getClass()); | private final Logger logger = LoggerFactory.getLogger(this.getClass()); | ||||
| @Autowired | |||||
| private String fmExceptionEmails; | |||||
| @Autowired | |||||
| private MailService mailService; | |||||
| @Autowired | |||||
| private WxAppinfoService wxAppinfoService; | |||||
| /** | /** | ||||
| * { | * { | ||||
| @@ -34,15 +49,34 @@ public class TtWebController extends BaseController { | |||||
| // String body = ((BodyReaderHttpServletRequestWrapper) request).getBody(); | // String body = ((BodyReaderHttpServletRequestWrapper) request).getBody(); | ||||
| logger.info("抖音开放平台通知-----parameterMap{}"+parameterMap); | logger.info("抖音开放平台通知-----parameterMap{}"+parameterMap); | ||||
| String client_key = (String) parameterMap.get("client_key"); | |||||
| logger.info("抖音开放平台通知-----client_key{}"+client_key); | |||||
| WxAppinfo appInfo = wxAppinfoService.getByAppId(client_key); | |||||
| String header = request.getHeader("X-Douyin-Signature"); | |||||
| logger.info("抖音开放平台通知-----header.X-Douyin-Signature{}"+header); | |||||
| String gen = SHA1.gen(appInfo.getSecret(), parameterMap.toString()); | |||||
| //发邮件 | |||||
| String[] receivers = fmExceptionEmails.split(","); | |||||
| StringBuilder sb = new StringBuilder(); | |||||
| sb.append(DateUtils.date2String(new Date())); | |||||
| sb.append("\n"); | |||||
| sb.append("抖音开放平台通知{}"+parameterMap.toString()); | |||||
| sb.append("\n"); | |||||
| sb.append("SHA1.gen{}"+gen); | |||||
| sb.append("\n"); | |||||
| sb.append("header{}"+header); | |||||
| //发送邮件 | |||||
| mailService.sendSimpleMail(receivers, "抖音开放平台通知", sb.toString()); | |||||
| try { | try { | ||||
| String header = request.getHeader("X-Douyin-Signature"); | |||||
| logger.info("抖音开放平台通知-----header.X-Douyin-Signature{}"+header); | |||||
| // Map<String, Object> parameterMap = JSONObject.parseObject(body, Map.class); | // Map<String, Object> parameterMap = JSONObject.parseObject(body, Map.class); | ||||
| String event = (String) parameterMap.get("event"); | String event = (String) parameterMap.get("event"); | ||||
| logger.info("抖音开放平台通知-----event{}"+event); | logger.info("抖音开放平台通知-----event{}"+event); | ||||
| String client_key = (String) parameterMap.get("client_key"); | |||||
| logger.info("抖音开放平台通知-----client_key{}"+client_key); | |||||
| Map content = (HashMap) parameterMap.get("content"); | Map content = (HashMap) parameterMap.get("content"); | ||||
| logger.info("抖音开放平台通知-----content{}"+content.toString()); | logger.info("抖音开放平台通知-----content{}"+content.toString()); | ||||
| String challenge = content.get("challenge").toString(); | String challenge = content.get("challenge").toString(); | ||||
| @@ -52,6 +86,7 @@ public class TtWebController extends BaseController { | |||||
| return resultMap; | return resultMap; | ||||
| } catch (Exception e){ | } catch (Exception e){ | ||||
| logger.error(e.getMessage()); | logger.error(e.getMessage()); | ||||
| resultMap.put("err_code",1000); | |||||
| resultMap.put("err_tips","error"); | resultMap.put("err_tips","error"); | ||||
| return resultMap; | return resultMap; | ||||
| } | } | ||||