소스 검색

//tt product callback

release_toaliyun_real
xhxu 4 년 전
부모
커밋
f8d7e8ce4d
1개의 변경된 파일40개의 추가작업 그리고 5개의 파일을 삭제
  1. +40
    -5
      mallinkCallback/src/main/java/com/iformall/controller/callback/TtWebController.java

+ 40
- 5
mallinkCallback/src/main/java/com/iformall/controller/callback/TtWebController.java 파일 보기

@@ -1,21 +1,36 @@
package com.iformall.controller.callback;

import com.alibaba.fastjson.JSONObject;
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.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import javax.servlet.http.HttpServletRequest;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;


@RestController
@RequestMapping("/ttweb/notify")
public class TtWebController extends BaseController {

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();
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 {
String header = request.getHeader("X-Douyin-Signature");
logger.info("抖音开放平台通知-----header.X-Douyin-Signature{}"+header);
// Map<String, Object> parameterMap = JSONObject.parseObject(body, Map.class);

String event = (String) parameterMap.get("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");
logger.info("抖音开放平台通知-----content{}"+content.toString());
String challenge = content.get("challenge").toString();
@@ -52,6 +86,7 @@ public class TtWebController extends BaseController {
return resultMap;
} catch (Exception e){
logger.error(e.getMessage());
resultMap.put("err_code",1000);
resultMap.put("err_tips","error");
return resultMap;
}


불러오는 중...
취소
저장