记得上下班打卡 | git大法好,push需谨慎

Commit 72111c05 authored by 张国柄's avatar 张国柄

Merge remote-tracking branch 'origin/dev' into dev

parents f46e651e 6fb98044
...@@ -55,7 +55,7 @@ ...@@ -55,7 +55,7 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.liquidnet</groupId> <groupId>com.liquidnet</groupId>
<artifactId>liquidnet-api-feign-kylin</artifactId> <artifactId>liquidnet-service-kylin-api</artifactId>
<version>1.0-SNAPSHOT</version> <version>1.0-SNAPSHOT</version>
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
......
package com.liquidnet.service.sweet.controller; package com.liquidnet.service.sweet.controller;
import com.liquidnet.service.sweet.service.impl.SweetWechatCallbackServiceImpl;
import com.liquidnet.service.sweet.utils.WechatSignUtils; import com.liquidnet.service.sweet.utils.WechatSignUtils;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
...@@ -15,6 +17,9 @@ import java.io.PrintWriter; ...@@ -15,6 +17,9 @@ import java.io.PrintWriter;
@Slf4j @Slf4j
public class SweetWechatActionCallbackController { public class SweetWechatActionCallbackController {
@Autowired
private SweetWechatCallbackServiceImpl sweetWechatCallbackService;
@GetMapping("record") @GetMapping("record")
@ApiOperation("get") @ApiOperation("get")
public void record( public void record(
...@@ -26,12 +31,12 @@ public class SweetWechatActionCallbackController { ...@@ -26,12 +31,12 @@ public class SweetWechatActionCallbackController {
) { ) {
try { try {
if (WechatSignUtils.checkSignature(signature, timestamp, nonce)) { if (WechatSignUtils.checkSignature(signature, timestamp, nonce)) {
log.info("ssssssss"); log.info("验签通过");
PrintWriter out = response.getWriter(); PrintWriter out = response.getWriter();
out.print(echostr); out.print(echostr);
out.close(); out.close();
} else { } else {
log.info("这里存在非法请求"); log.info("验签未通过");
} }
} catch (Exception e) { } catch (Exception e) {
log.info(e.getMessage()); log.info(e.getMessage());
...@@ -40,7 +45,22 @@ public class SweetWechatActionCallbackController { ...@@ -40,7 +45,22 @@ public class SweetWechatActionCallbackController {
@PostMapping("record") @PostMapping("record")
@ApiOperation("post") @ApiOperation("post")
public void record() { public String record(
log.info("111111"); @RequestBody String requestBody,
@RequestParam("signature") String signature,
@RequestParam("timestamp") String timestamp,
@RequestParam("nonce") String nonce,
@RequestParam("openid") String openid,
@RequestParam(name = "encrypt_type", required = false) String encType,
@RequestParam(name = "msg_signature", required = false) String msgSignature
) {
log.info("\n接收微信请求:[openid=[{}], [signature=[{}], encType=[{}], msgSignature=[{}],"
+ " timestamp=[{}], nonce=[{}], requestBody=[\n{}\n] ",
openid, signature, encType, msgSignature, timestamp, nonce, requestBody);
if (!WechatSignUtils.checkSignature(signature, timestamp, nonce)) {
log.info("验签未通过,非法请求,可能属于伪造的请求!");
return "";
}
return sweetWechatCallbackService.record(requestBody, timestamp, nonce, encType, msgSignature);
} }
} }
package com.liquidnet.service.sweet.controller; package com.liquidnet.service.sweet.controller;
import com.liquidnet.service.base.ResponseDto; import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.sweet.service.impl.SweetLoginServiceImpl; import com.liquidnet.service.sweet.service.impl.SweetWechatLoginServiceImpl;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiImplicitParams;
...@@ -18,7 +18,7 @@ import org.springframework.web.bind.annotation.RestController; ...@@ -18,7 +18,7 @@ import org.springframework.web.bind.annotation.RestController;
public class SweetWechatLoginController { public class SweetWechatLoginController {
@Autowired @Autowired
private SweetLoginServiceImpl sweetLoginService; private SweetWechatLoginServiceImpl sweetLoginService;
@GetMapping("userInfo") @GetMapping("userInfo")
@ApiOperation("code获取用户信息") @ApiOperation("code获取用户信息")
......
package com.liquidnet.service.sweet.controller; package com.liquidnet.service.sweet.controller;
import com.liquidnet.service.base.ResponseDto; import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.sweet.service.impl.SweetTemplateServiceImpl; import com.liquidnet.service.sweet.service.impl.SweetWechatTemplateServiceImpl;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiImplicitParams;
...@@ -15,7 +15,7 @@ import org.springframework.web.bind.annotation.*; ...@@ -15,7 +15,7 @@ import org.springframework.web.bind.annotation.*;
public class SweetWechatTemplateController { public class SweetWechatTemplateController {
@Autowired @Autowired
private SweetTemplateServiceImpl sweetTemplateService; private SweetWechatTemplateServiceImpl sweetTemplateService;
@GetMapping("send") @GetMapping("send")
@ApiOperation("发送模版消息") @ApiOperation("发送模版消息")
......
package com.liquidnet.service.sweet.service.impl;
import lombok.extern.slf4j.Slf4j;
import me.chanjar.weixin.mp.api.WxMpMessageRouter;
import me.chanjar.weixin.mp.api.WxMpService;
import me.chanjar.weixin.mp.api.impl.WxMpServiceImpl;
import me.chanjar.weixin.mp.bean.message.WxMpXmlMessage;
import me.chanjar.weixin.mp.bean.message.WxMpXmlOutMessage;
import me.chanjar.weixin.mp.config.WxMpConfigStorage;
import me.chanjar.weixin.mp.config.impl.WxMpDefaultConfigImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
/**
* <p>
* 公众号动作回调 服务实现类
* </p>
*
* @author liquidnet
* @since 2021-07-31
*/
@Service
@Slf4j
public class SweetWechatCallbackServiceImpl {
/*@Autowired
private WxMpMessageRouter wxMpMessageRouter;*/
public String record(String requestBody, String timestamp, String nonce, String encType, String msgSignature) {
/*String out = null;
if (encType == null) {
// 明文传输的消息
WxMpXmlMessage inMessage = WxMpXmlMessage.fromXml(requestBody);
WxMpXmlOutMessage outMessage = wxMpMessageRouter.route(inMessage);
if (outMessage == null) {
return "";
}
out = outMessage.toXml();
}
log.info("\n组装回复信息:[{}]", out);
return out;*/
return "";
}
}
...@@ -24,7 +24,7 @@ import java.util.Objects; ...@@ -24,7 +24,7 @@ import java.util.Objects;
* @since 2021-07-27 * @since 2021-07-27
*/ */
@Service @Service
public class SweetLoginServiceImpl { public class SweetWechatLoginServiceImpl {
@Value("${liquidnet.wechat.applet.strawberry.appid}") @Value("${liquidnet.wechat.applet.strawberry.appid}")
private String strawberryAppid; private String strawberryAppid;
......
...@@ -2,7 +2,7 @@ package com.liquidnet.service.sweet.service.impl; ...@@ -2,7 +2,7 @@ package com.liquidnet.service.sweet.service.impl;
import com.liquidnet.common.cache.redis.util.RedisUtil; import com.liquidnet.common.cache.redis.util.RedisUtil;
import com.liquidnet.service.base.ResponseDto; import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.feign.kylin.api.FeignKylinPerformanceClient; import com.liquidnet.service.kylin.constant.KylinRedisConst;
import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo; import com.liquidnet.service.kylin.dto.vo.mongo.KylinPerformanceVo;
import com.liquidnet.service.sweet.constant.SweetConstant; import com.liquidnet.service.sweet.constant.SweetConstant;
import com.liquidnet.service.sweet.utils.RedisDataUtils; import com.liquidnet.service.sweet.utils.RedisDataUtils;
...@@ -31,7 +31,7 @@ import java.util.Set; ...@@ -31,7 +31,7 @@ import java.util.Set;
* @since 2021-07-27 * @since 2021-07-27
*/ */
@Service @Service
public class SweetTemplateServiceImpl { public class SweetWechatTemplateServiceImpl {
@Value("${liquidnet.wechat.zhengzai.service.appid}") @Value("${liquidnet.wechat.zhengzai.service.appid}")
private String appid; private String appid;
...@@ -45,9 +45,6 @@ public class SweetTemplateServiceImpl { ...@@ -45,9 +45,6 @@ public class SweetTemplateServiceImpl {
@Autowired @Autowired
private RedisUtil redisUtil; private RedisUtil redisUtil;
@Autowired
private FeignKylinPerformanceClient feignKylinPerformanceClient;
public ResponseDto send(String templateId) { public ResponseDto send(String templateId) {
String redisKey = SweetConstant.REDIS_KEY_SWEET_REMIND_ALL; String redisKey = SweetConstant.REDIS_KEY_SWEET_REMIND_ALL;
Set<String> keys = redisTemplate.keys(redisKey); Set<String> keys = redisTemplate.keys(redisKey);
...@@ -103,8 +100,7 @@ public class SweetTemplateServiceImpl { ...@@ -103,8 +100,7 @@ public class SweetTemplateServiceImpl {
} }
public ResponseDto remind(String openId, String unionId, String performancesId) { public ResponseDto remind(String openId, String unionId, String performancesId) {
ResponseDto<KylinPerformanceVo> performanceVo = feignKylinPerformanceClient.detail(performancesId); KylinPerformanceVo performanceInfo = (KylinPerformanceVo) redisUtil.get(KylinRedisConst.PERFORMANCES);
KylinPerformanceVo performanceInfo = performanceVo.getData();
redisDataUtils.setSweetRemind(openId, unionId, performancesId, performanceInfo); redisDataUtils.setSweetRemind(openId, unionId, performancesId, performanceInfo);
return ResponseDto.success(); return ResponseDto.success();
} }
......
package com.liquidnet.service.sweet.utils; package com.liquidnet.service.sweet.utils;
import org.springframework.beans.factory.annotation.Value;
import java.security.MessageDigest; import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException; import java.security.NoSuchAlgorithmException;
import java.util.Arrays; import java.util.Arrays;
...@@ -15,7 +17,8 @@ import java.util.Arrays; ...@@ -15,7 +17,8 @@ import java.util.Arrays;
public class WechatSignUtils { public class WechatSignUtils {
// 与接口配置信息中的 Token 要一致 // 与接口配置信息中的 Token 要一致
private static String token = "tftipg1427706847"; @Value("${liquidnet.wechat.zhengzai.service.token}")
private static String token;
/** /**
* 验证签名 * 验证签名
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment