Explorar o código

二维码导出完成

李进 %!s(int64=2) %!d(string=hai) anos
pai
achega
6fdb2ceebb

+ 22 - 10
device-api-service/src/main/java/com/xy/service/DeviceCreateIdsServiceImpl.java

@@ -23,14 +23,11 @@ import lombok.SneakyThrows;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestParam;
 
 import java.time.LocalDate;
 import java.time.LocalDateTime;
-import java.util.ArrayList;
 import java.util.List;
 
 import static com.xy.utils.Beans.copy;
@@ -133,15 +130,30 @@ public class DeviceCreateIdsServiceImpl extends ServiceImpl<DeviceCreateIdsMappe
         return R.ok();
     }
 
-    @GetMapping("exportQrCode")
+    @PostMapping("exportQrCode")
     @ApiOperation("导出二维码")
-    public void exportQrCode(@RequestParam(value = "deviceId") Long[] deviceId) {
-        if (deviceId == null || deviceId.length == 0) {
-            throw new CommRuntimeException("设备id不能为空");
+    public void exportQrCode(DeviceCreateIdsDto.ExportQrCode exportQrCode) {
+        List<String> list = null;
+        Boolean isWhere = exportQrCode.getIsWhere() == null ? false : exportQrCode.getIsWhere();
+        if (!isWhere) {
+            List<Long> deviceIds = exportQrCode.getDeviceIds();
+            if (Emptys.check(deviceIds)) {
+                for (Long aLong : deviceIds) {
+                    list.add(aLong.toString());
+                }
+            }
+        } else {
+            LambdaQueryWrapper<DeviceCreateIds> lambdaQueryWrapper = new MybatisPlusQuery().eqWrapper(exportQrCode, DeviceCreateIds.class)
+                    .ge(DeviceCreateIds::getCreateTime, exportQrCode.getBeginCreateTime())
+                    .le(DeviceCreateIds::getCreateTime, exportQrCode.getEndCreateTime())
+                    .ge(DeviceCreateIds::getBindTime, exportQrCode.getBeginBindTime())
+                    .le(DeviceCreateIds::getBindTime, exportQrCode.getEndBindTime())
+                    .build();
+            List<DeviceCreateIds> deviceCreateIds = list(lambdaQueryWrapper);
+            deviceCreateIds.forEach(deviceCreateIds1 -> list.add(String.valueOf(deviceCreateIds1.getDeviceId())));
         }
-        List<String> list = new ArrayList<>();
-        for (Long aLong : deviceId) {
-            list.add(aLong.toString());
+        if (!Emptys.check(list)) {
+            throw new CommRuntimeException("没有导出的数据");
         }
         QRCodeUtils.create(list, 200, 200).download(list);
     }

+ 6 - 7
device-api-service/src/main/java/com/xy/service/DeviceQualityServiceImpl.java

@@ -16,7 +16,6 @@ import io.swagger.annotations.ApiOperation;
 import lombok.AllArgsConstructor;
 import org.springframework.stereotype.Service;
 import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 
@@ -90,17 +89,17 @@ public class DeviceQualityServiceImpl extends ServiceImpl<DeviceQualityMapper, D
         return R.ok();
     }
 
-    @GetMapping("getQrCode")
+    @PostMapping("getQrCode")
     @ApiOperation("获取二维码")
-    public R<String> getQrCode(Long deviceId) {
-        String base64 = QRCodeUtils.create(deviceId.toString(), 200, 200).base64();
+    public R<String> getQrCode(DeviceQualityDto.Save save) {
+        String base64 = QRCodeUtils.create(save.getDeviceId().toString(), 200, 200).base64();
         return R.ok(base64);
     }
 
-    @GetMapping("exportQrCode")
+    @PostMapping("exportQrCode")
     @ApiOperation("导出二维码")
-    public void exportQrCode(Long deviceId) {
-        QRCodeUtils.create(deviceId.toString(), 200, 200).download(deviceId.toString());
+    public void exportQrCode(DeviceQualityDto.Save save) {
+        QRCodeUtils.create(save.getDeviceId().toString(), 200, 200).download(save.getDeviceId().toString());
     }
 
 }

+ 44 - 1
device-api/src/main/java/com/xy/dto/DeviceCreateIdsDto.java

@@ -52,7 +52,7 @@ public class DeviceCreateIdsDto {
     @Accessors(chain = true)
     public static class Page extends Vo {
 
-        @ApiModelProperty("设备类型")
+        @ApiModelProperty("分页对象")
         private PageBean page;
 
         @JsonFormat(pattern = "yyyy-MM-dd")
@@ -88,6 +88,49 @@ public class DeviceCreateIdsDto {
         }
     }
 
+    @Data
+    @Accessors(chain = true)
+    public static class ExportQrCode extends Vo {
+
+        @ApiModelProperty(value = "是否查询结果导出 true=是 false/null=否")
+        private Boolean isWhere;
+
+        @ApiModelProperty(value = "设备id")
+        private List<Long> deviceIds;
+
+        @JsonFormat(pattern = "yyyy-MM-dd")
+        @ApiModelProperty(value = "创建时间-起")
+        private LocalDate beginCreateTime;
+
+        @JsonFormat(pattern = "yyyy-MM-dd")
+        @ApiModelProperty(value = "创建时间-始")
+        private LocalDate endCreateTime;
+
+        @JsonFormat(pattern = "yyyy-MM-dd")
+        @ApiModelProperty(value = "绑定时间-起")
+        private LocalDate beginBindTime;
+
+        @JsonFormat(pattern = "yyyy-MM-dd")
+        @ApiModelProperty(value = "绑定时间-始")
+        private LocalDate endBindTime;
+
+        public LocalDateTime getBeginCreateTime() {
+            return beginCreateTime == null ? null : beginCreateTime.atTime(0, 0, 0);
+        }
+
+        public LocalDateTime getEndCreateTime() {
+            return endCreateTime == null ? null : endCreateTime.atTime(23, 59, 59);
+        }
+
+        public LocalDateTime getBeginBindTime() {
+            return beginBindTime == null ? null : beginBindTime.atTime(0, 0, 0);
+        }
+
+        public LocalDateTime getEndBindTime() {
+            return endBindTime == null ? null : endBindTime.atTime(23, 59, 59);
+        }
+    }
+
     @Data
     @Accessors(chain = true)
     public static class Vo {