李进 2 gadi atpakaļ
vecāks
revīzija
98cf3e0971

+ 0 - 27
device-api-cloud/src/main/java/com/xy/service/MqttServiceImpl.java

@@ -1,27 +0,0 @@
-package com.xy.service;
-
-import com.xy.dto.BackMqttDto;
-import com.xy.dto.MqttDto;
-import com.xy.feign.MqttFeign;
-import com.xy.utils.R;
-import lombok.AllArgsConstructor;
-import org.springframework.stereotype.Service;
-
-import java.util.List;
-
-@Service
-@AllArgsConstructor
-public class MqttServiceImpl implements MqttFeign {
-
-    private MqttFeign mqttFeign;
-
-    @Override
-    public List<MqttDto.Vo> sendMqtt(List<MqttDto> mqttDtos) {
-        return mqttFeign.sendMqtt(mqttDtos);
-    }
-
-    @Override
-    public R mqttBack(BackMqttDto backMqttDto) {
-        return mqttFeign.mqttBack(backMqttDto);
-    }
-}

+ 0 - 19
device-api-cloud/src/main/java/com/xy/service/job/JobServiceImpl.java

@@ -1,19 +0,0 @@
-package com.xy.service.job;
-
-import com.xy.dto.job.JobDto;
-import com.xy.feign.JobFeign;
-import com.xy.utils.R;
-import lombok.AllArgsConstructor;
-import org.springframework.stereotype.Service;
-
-@Service
-@AllArgsConstructor
-public class JobServiceImpl implements JobFeign {
-
-    private JobFeign jobFeign;
-
-    @Override
-    public R<Long> saveJob(JobDto demoJobDto) {
-        return jobFeign.saveJob(demoJobDto);
-    }
-}

+ 28 - 2
device-api-service/src/main/java/com/xy/service/impl/MqttServiceImpl.java

@@ -1,5 +1,7 @@
 package com.xy.service.impl;
 
+import cn.easyes.core.biz.EsPageInfo;
+import cn.easyes.core.conditions.LambdaEsQueryWrapper;
 import cn.hutool.json.JSONObject;
 import cn.hutool.json.JSONUtil;
 import com.github.yitter.idgen.YitIdHelper;
@@ -18,10 +20,14 @@ import lombok.AllArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 import org.springframework.util.StringUtils;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
 
 import java.util.ArrayList;
 import java.util.List;
 
+import static com.xy.utils.EsBeans.toPageBean;
+
 @Slf4j
 @Service
 @Api(tags = "mqtt接口")
@@ -62,11 +68,11 @@ public class MqttServiceImpl implements MqttService {
                 mqttProducer.sendToMqtt(value.toString(), topic, mqttDto.getLevel());
                 //指令记录
                 saveMqttCommand(mqttDto, value, pater.getAck() ? MqttCommandStatusEnum.COMMAND_SEND : MqttCommandStatusEnum.COMMAND_SUCCESS, null);
-                list.add(new MqttDto.Vo().setWorkSn(wkSn).setResult(true));
+                list.add(new MqttDto.Vo().setWkSn(wkSn).setResult(true));
             } catch (Exception e) {
                 //指令记录
                 saveMqttCommand(mqttDto, value, MqttCommandStatusEnum.COMMAND_SEND_FAIL, e.getMessage());
-                list.add(new MqttDto.Vo().setWorkSn(wkSn).setResult(false));
+                list.add(new MqttDto.Vo().setWkSn(wkSn).setResult(false));
             }
         });
         return list;
@@ -91,6 +97,26 @@ public class MqttServiceImpl implements MqttService {
         return R.ok();
     }
 
+    @PostMapping("page")
+    @ApiOperation("分页查询")
+    public R<PageBean<MqttDto.Vo2>> page(@RequestBody MqttDto.Page page) {
+        LambdaEsQueryWrapper<MqttCommand> lambdaEsQueryWrapper = new EsQueryWrapper().eqWrapper(page, MqttCommand.class)
+                .like(MqttCommand::getError)
+                .like(MqttCommand::getValue)
+                .ge(MqttCommand::getSendTime, page.getBeginSendTime())
+                .le(MqttCommand::getSendTime, page.getEndSendTime())
+                .ge(MqttCommand::getTimeout, page.getBeginTimeout())
+                .le(MqttCommand::getTimeout, page.getEndTimeout())
+                .ge(MqttCommand::getDelayTime, page.getBeginDelayTime())
+                .le(MqttCommand::getDelayTime, page.getEndDelayTime())
+                .build()
+                .orderByDesc(MqttCommand::getSendTime);
+        PageBean pageBean = page.getPage();
+        EsPageInfo<MqttCommand> mqttCommandEsPageInfo = mqttCommandMapper.pageQuery(lambdaEsQueryWrapper, (int) pageBean.getCurrent(), (int) pageBean.getSize());
+        return R.ok(toPageBean(MqttDto.Vo2.class, mqttCommandEsPageInfo));
+    }
+    
+
     /**
      * 新增指令记录
      *

+ 111 - 2
device-api/src/main/java/com/xy/dto/MqttDto.java

@@ -1,12 +1,16 @@
 package com.xy.dto;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.xy.dto.pater.PaterDto;
+import com.xy.utils.PageBean;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.experimental.Accessors;
 
 import javax.validation.constraints.NotBlank;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
 
 @Data
 @ApiModel("指令交互类")
@@ -33,14 +37,119 @@ public class MqttDto {
     private PaterDto pater;
 
     @Data
-    @ApiModel("指令返参类")
     @Accessors(chain = true)
     public static class Vo {
 
         @ApiModelProperty("业务系统sn编号")
-        private String workSn;
+        private String wkSn;
 
         @ApiModelProperty("结果值")
         private Boolean result;
     }
+
+    @Data
+    @Accessors(chain = true)
+    public static class Page extends Vo2 {
+
+        @ApiModelProperty("分页对象")
+        private PageBean page;
+
+        @JsonFormat(pattern = "yyyy-MM-dd")
+        @ApiModelProperty(value = "发送时间-起")
+        private LocalDate beginSendTime;
+
+        @JsonFormat(pattern = "yyyy-MM-dd")
+        @ApiModelProperty(value = "发送时间-始")
+        private LocalDate endSendTime;
+
+        @JsonFormat(pattern = "yyyy-MM-dd")
+        @ApiModelProperty(value = "过期时间-起")
+        private LocalDate beginTimeout;
+
+        @JsonFormat(pattern = "yyyy-MM-dd")
+        @ApiModelProperty(value = "过期时间-始")
+        private LocalDate endTimeout;
+
+        @JsonFormat(pattern = "yyyy-MM-dd")
+        @ApiModelProperty(value = "延迟消费时间-起")
+        private LocalDate beginDelayTime;
+
+        @JsonFormat(pattern = "yyyy-MM-dd")
+        @ApiModelProperty(value = "延迟消费时间-始")
+        private LocalDate endDelayTime;
+
+        public LocalDateTime getBeginSendTime() {
+            return beginSendTime == null ? null : beginSendTime.atTime(0, 0, 0);
+        }
+
+        public LocalDateTime getEndSendTime() {
+            return endSendTime == null ? null : endSendTime.atTime(23, 59, 59);
+        }
+
+        public LocalDateTime getBeginTimeout() {
+            return beginTimeout == null ? null : beginTimeout.atTime(0, 0, 0);
+        }
+
+        public LocalDateTime getEndTimeout() {
+            return endTimeout == null ? null : endTimeout.atTime(23, 59, 59);
+        }
+
+        public LocalDateTime getBeginDelayTime() {
+            return beginDelayTime == null ? null : beginDelayTime.atTime(0, 0, 0);
+        }
+
+        public LocalDateTime getEndDelayTime() {
+            return endDelayTime == null ? null : endDelayTime.atTime(23, 59, 59);
+        }
+    }
+
+    @Data
+    @Accessors(chain = true)
+    public static class Vo2 {
+
+        @ApiModelProperty("id")
+        private String id;
+
+        @ApiModelProperty("是否调试")
+        private Boolean debug;
+
+        @ApiModelProperty("指令大类")
+        private String type1;
+
+        @ApiModelProperty("指令小类")
+        private String type2;
+
+        @ApiModelProperty("指令状态 1=已发送 2=发送失败 3=已执行 4=执行失败,5=执行超时 6=已完成")
+        private Integer status;
+
+        @ApiModelProperty("指令完整值")
+        private String value;
+
+        @ApiModelProperty("指令发送时间")
+        private String sendTime;
+
+        @ApiModelProperty("指令执行时间")
+        private String execTime;
+
+        @ApiModelProperty("指令过期时间")
+        private String timeout;
+
+        @ApiModelProperty("接收指令的topic")
+        private String topic;
+
+        @ApiModelProperty("是否应答")
+        private Boolean ack;
+
+        @ApiModelProperty("消息级别")
+        private Integer level;
+
+        @ApiModelProperty("已发送次数")
+        private Integer num;
+
+        @ApiModelProperty("消息消费时间(延迟消费)")
+        private String delayTime;
+
+        @ApiModelProperty("错误日志")
+        private String error;
+    }
 }