|
@@ -0,0 +1,53 @@
|
|
|
+package com.xy.service.alipay.impl;
|
|
|
+
|
|
|
+import cn.hutool.json.JSONUtil;
|
|
|
+import com.xy.dto.spi.DeviceAlarmNotifyDTO;
|
|
|
+import com.xy.service.alipay.SpiDeviceService;
|
|
|
+import com.xy.service.spi.ISpiService;
|
|
|
+import com.xy.service.spi.request.AsyncRequestParams;
|
|
|
+import io.swagger.annotations.Api;
|
|
|
+import lombok.AllArgsConstructor;
|
|
|
+import lombok.extern.slf4j.Slf4j;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+import java.util.Map;
|
|
|
+
|
|
|
+
|
|
|
+/**
|
|
|
+ * spi 设备相关
|
|
|
+ *
|
|
|
+ * @author 谭斌
|
|
|
+ * @date 2023/04/16
|
|
|
+ */
|
|
|
+@Service
|
|
|
+@AllArgsConstructor
|
|
|
+@Slf4j
|
|
|
+@Api(tags = "设备相关")
|
|
|
+public class SpiDeviceServiceImpl implements SpiDeviceService {
|
|
|
+
|
|
|
+
|
|
|
+ private ISpiService spiService;
|
|
|
+
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public String deviceAlarmNotify(Map<String, String> params) {
|
|
|
+ log.info("设备告警通知请求:{}", JSONUtil.toJsonPrettyStr(params));
|
|
|
+ //1.获取同步请求参数
|
|
|
+ AsyncRequestParams asyncRequestParams = spiService.getAsyncRequestParams(params);
|
|
|
+
|
|
|
+ //2.入参验签
|
|
|
+ boolean b = spiService.checkSign(params);
|
|
|
+ if (!b) {
|
|
|
+ log.error("设备告警通知接口,验签失败:{}", JSONUtil.toJsonPrettyStr(params));
|
|
|
+ //验签失败
|
|
|
+ return "验签失败!";
|
|
|
+ }
|
|
|
+ //3.本系统业务逻辑处理
|
|
|
+ //3.1获取的支付宝请求业务参数
|
|
|
+ DeviceAlarmNotifyDTO deviceAlarmNotifyDTO = spiService.getDeviceAlarmNotifyDTO(asyncRequestParams);
|
|
|
+ //3.2 根据支付宝请求业务参数,进行本系统逻辑处理
|
|
|
+ // 业务处理代码3.2....................
|
|
|
+ //3.3 封装请求成功业务响应信息
|
|
|
+ return "success";
|
|
|
+ }
|
|
|
+}
|