From 4ed693f48d1435de7a6333df17c2b34154731429 Mon Sep 17 00:00:00 2001
From: Your Name <you@example.com>
Date: 星期三, 05 七月 2023 22:26:27 +0800
Subject: [PATCH] Merge branch 'master' of http://git.homecommunity.cn/supervip/MicroCommunity
---
service-api/src/main/java/com/java110/api/controller/app/charge/NotifyDingDingChargeController.java | 41 +++++++++++++++++++++++------------------
1 files changed, 23 insertions(+), 18 deletions(-)
diff --git a/service-api/src/main/java/com/java110/api/controller/app/charge/NotifyDingDingChargeController.java b/service-api/src/main/java/com/java110/api/controller/app/charge/NotifyDingDingChargeController.java
index 85445ec..b602306 100644
--- a/service-api/src/main/java/com/java110/api/controller/app/charge/NotifyDingDingChargeController.java
+++ b/service-api/src/main/java/com/java110/api/controller/app/charge/NotifyDingDingChargeController.java
@@ -3,8 +3,7 @@
import com.alibaba.fastjson.JSONObject;
import com.java110.core.base.controller.BaseController;
import com.java110.core.log.LoggerFactory;
-import com.java110.dto.chargeMachineOrder.NotifyChargeOrderDto;
-import com.java110.dto.meterWater.NotifyMeterWaterOrderDto;
+import com.java110.dto.charge.NotifyChargeOrderDto;
import com.java110.intf.common.INotifyChargeV1InnerServiceSMO;
import com.java110.utils.cache.MappingCache;
import com.java110.vo.ResultVo;
@@ -18,11 +17,10 @@
import javax.crypto.SecretKey;
import javax.crypto.spec.SecretKeySpec;
import javax.servlet.http.HttpServletRequest;
-import java.security.NoSuchAlgorithmException;
import java.util.Base64;
@RestController
-@RequestMapping(path = "/equipments")
+@RequestMapping(path = "/app/equipments")
public class NotifyDingDingChargeController extends BaseController {
private final static Logger logger = LoggerFactory.getLogger(NotifyDingDingChargeController.class);
@@ -36,7 +34,7 @@
private INotifyChargeV1InnerServiceSMO notifyChargeV1InnerServiceSMOImpl;
/**
- * <p>鏀粯鍥炶皟Api</p>
+ * <p>鍏呯數缁撴潫閫氱煡</p>
*
* @param request
* @throws Exception
@@ -47,7 +45,7 @@
@PathVariable String port,
@RequestBody String postInfo,
HttpServletRequest request) {
- if (!validateSign(request)) {
+ if (!validateSign(request, "/equipments/" + id + "/" + port + "/finish", postInfo)) {
return new ResponseEntity<>("{\n" +
"\"code\" : -1,\n" +
"\"msg\" : \"閴存潈澶辫触\"\n" +
@@ -60,8 +58,11 @@
notifyChargeOrderDto.setMachineCode(id);
notifyChargeOrderDto.setPortCode(port);
notifyChargeOrderDto.setBodyParam(postInfo);
+ notifyChargeOrderDto.setReason(param.getString("typeName"));
+ notifyChargeOrderDto.setEnergy(param.getString("energy"));
- ResultVo resultVo = notifyChargeV1InnerServiceSMOImpl.finishCharge(notifyChargeOrderDto);
+ ResultVo resultVo = null;
+ resultVo = notifyChargeV1InnerServiceSMOImpl.finishCharge(notifyChargeOrderDto);
if (resultVo.getCode() == ResultVo.CODE_OK) {
resultVo.setCode(200);
@@ -77,33 +78,37 @@
* @param request
* @throws Exception
*/
- @RequestMapping(path = "/{id}/event", method = RequestMethod.POST)
- public ResponseEntity<String> heartbeat(
+ @RequestMapping(path = "/{id}/power", method = RequestMethod.POST)
+ public ResponseEntity<String> workHeartbeat(
@PathVariable String id,
@RequestBody String postInfo,
HttpServletRequest request) {
- if (!validateSign(request)) {
+ if (!validateSign(request, "/equipments/" + id + "/power", postInfo)) {
return new ResponseEntity<>("{\n" +
"\"code\" : -1,\n" +
"\"msg\" : \"閴存潈澶辫触\"\n" +
"}", HttpStatus.OK);
}
- JSONObject param = JSONObject.parseObject(postInfo);
NotifyChargeOrderDto notifyChargeOrderDto = new NotifyChargeOrderDto();
notifyChargeOrderDto.setMachineCode(id);
notifyChargeOrderDto.setBodyParam(postInfo);
+ ResultVo resultVo = null;
+ resultVo = notifyChargeV1InnerServiceSMOImpl.workHeartbeat(notifyChargeOrderDto);
+ if (resultVo.getCode() == ResultVo.CODE_OK) {
+ resultVo.setCode(200);
+ resultVo.setMsg("success");
+ }
- return notifyChargeV1InnerServiceSMOImpl.heartbeat(notifyChargeOrderDto);
-
+ return ResultVo.createResponseEntity(resultVo);
}
- private boolean validateSign(HttpServletRequest request) {
- String appId = request.getParameter("appid");
- String timestamp = request.getParameter("timestamp");
- String sign = request.getParameter("sign");
+ private boolean validateSign(HttpServletRequest request, String url, String postInfo) {
+ String appId = request.getHeader("appid");
+ String timestamp = request.getHeader("timestamp");
+ String sign = request.getHeader("sign");
String secret = MappingCache.getValue(DING_DING_DOMAIN, DING_DING_APP_SECURE);
- String data = "appid=" + appId + "×tamp=" + timestamp;
+ String data = "appid=" + appId + "&content=" + postInfo + "×tamp=" + timestamp + "&uri=" + url;
SecretKey secretKey = new SecretKeySpec(secret.getBytes(), "HmacMD5");
Mac mac = null;
try {
--
Gitblit v1.8.0