فهرست منبع

卡包分页查询带统计数接口

李进 1 سال پیش
والد
کامیت
a448787ba7

+ 19 - 0
device-api-service/src/main/java/com/xy/service/DeviceAlgorithmChargingServiceImpl.java

@@ -3,6 +3,7 @@ package com.xy.service;
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.json.JSONUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.github.yitter.idgen.YitIdHelper;
@@ -154,6 +155,24 @@ public class DeviceAlgorithmChargingServiceImpl extends ServiceImpl<DeviceAlgori
         return R.ok(toPageBean(DeviceAlgorithmChargingDto.Vo.class, iPage));
     }
 
+    @PostMapping("pageCountVo")
+    @ApiOperation("分页查询带统计数")
+    public R<DeviceAlgorithmChargingDto.PageCountVo> pageCountVo(@RequestBody @Validated DeviceAlgorithmChargingDto.Page page) {
+        //查询数据
+        PageBean<DeviceAlgorithmChargingDto.Vo> pageBean = page(page).getData();
+        //查询统计
+        QueryWrapper<DeviceAlgorithmCharging> queryWrapper = new MybatisPlusQuery().eqWrapper(page, DeviceAlgorithmCharging.class)
+                .buildQW()
+                .select("sum(make_size) makeSize", "sum(unused_size) unusedSize");
+        DeviceAlgorithmCharging deviceAlgorithmCharging = getOne(queryWrapper);
+        //封装结果
+        DeviceAlgorithmChargingDto.PageCountVo pageCountVo = new DeviceAlgorithmChargingDto.PageCountVo()
+                .setData(pageBean)
+                .setMakeSize(deviceAlgorithmCharging == null ? 0 : deviceAlgorithmCharging.getMakeSize())
+                .setUnusedSize(deviceAlgorithmCharging == null ? 0 : deviceAlgorithmCharging.getUnusedSize());
+        return R.ok(pageCountVo);
+    }
+
     @PostMapping("check")
     @ApiOperation("检查")
     public R check(@RequestBody @Validated DeviceAlgorithmChargingDto.Check check) {

+ 14 - 0
device-api/src/main/java/com/xy/dto/DeviceAlgorithmChargingDto.java

@@ -197,6 +197,20 @@ public class DeviceAlgorithmChargingDto {
 
     }
 
+    @Data
+    @Accessors(chain = true)
+    public static class PageCountVo {
+
+        @ApiModelProperty(value = "数据")
+        private PageBean<Vo> data;
+
+        @ApiModelProperty(value = "已用条数")
+        private Integer makeSize;
+
+        @ApiModelProperty(value = "未用条数")
+        private Integer unusedSize;
+    }
+
     @Data
     @Accessors(chain = true)
     public static class AlgorithmMoonConfig {