server/platform/src/main/java/com/doumee/api/business/SitesController.java
@@ -69,7 +69,7 @@ return ApiResponse.success(null); } @ApiOperation("分页查询") @ApiOperation("站点通讯监控_分页查询") @PostMapping("/page") @RequiresPermissions("business:sites:query") public ApiResponse<PageData<Sites>> findPage (@RequestBody PageWrap<Sites> pageWrap) { @@ -91,15 +91,15 @@ } @ApiOperation("站点储车监控") @ApiOperation("站点储车监控-分页查询") @PostMapping("/findSitesMonitorDTOPage") @RequiresPermissions("business:sites:query") public ApiResponse<PageData<SitesMonitorDTO>> findSitesMonitorDTOPage(@RequestBody PageWrap<SitesMonitorDTO> pageWrap){ public ApiResponse<PageData<Sites>> findSitesMonitorDTOPage(@RequestBody PageWrap<SitesMonitorDTO> pageWrap){ return ApiResponse.success(sitesService.findSitesMonitorDTOPage(pageWrap)); } @ApiOperation("实时车位信息") @PostMapping("/findSitesMonitorDTOPage") @ApiOperation("实时车位信息-分页查询") @PostMapping("/findSitesMonitorBikePage") @RequiresPermissions("business:sites:query") public ApiResponse<PageData<SitesMonitorBikeDTO>> getSitesMonitorBikeDTO(@RequestBody PageWrap<SitesMonitorDTO> pageWrap){ return ApiResponse.success(sitesService.getSitesMonitorBikeDTO(pageWrap)); server/services/src/main/java/com/doumee/dao/business/model/Sites.java
@@ -1,14 +1,13 @@ package com.doumee.dao.business.model; import com.baomidou.mybatisplus.annotation.TableLogic; import com.baomidou.mybatisplus.annotation.*; import com.doumee.core.annotation.excel.ExcelColumn; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import com.fasterxml.jackson.annotation.JsonFormat; import java.math.BigDecimal; import java.util.Date; /** @@ -76,4 +75,18 @@ @ExcelColumn(name="版本号") private String clientVersion; @ApiModelProperty(value = "锁止器数") @TableField(exist = false) private Integer localCount; @ApiModelProperty(value = "在架车辆数") @TableField(exist = false) private Integer bikeCount; @ApiModelProperty(value = "满架率") @TableField(exist = false) private BigDecimal rate; } server/services/src/main/java/com/doumee/service/business/SitesService.java
@@ -115,7 +115,7 @@ * @param pageWrap 分页对象 * @return PageData<Sites> */ PageData<SitesMonitorDTO> findSitesMonitorDTOPage(PageWrap<SitesMonitorDTO> pageWrap); PageData<Sites> findSitesMonitorDTOPage(PageWrap<SitesMonitorDTO> pageWrap); PageData<SitesMonitorBikeDTO> getSitesMonitorBikeDTO(PageWrap<SitesMonitorDTO> pageWrap); server/services/src/main/java/com/doumee/service/business/impl/BikeRepairServiceImpl.java
@@ -52,8 +52,6 @@ @Autowired private MultifileMapper multifileMapper; @Autowired private SystemDictDataBiz systemDictDataBiz; @Override public String create(BikeRepair bikeRepair) { server/services/src/main/java/com/doumee/service/business/impl/SitesServiceImpl.java
@@ -21,13 +21,13 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.commons.lang3.StringUtils; import org.checkerframework.checker.units.qual.C; import org.apache.shiro.SecurityUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import org.springframework.util.StringUtils; import java.math.BigDecimal; import java.util.Date; @@ -200,10 +200,19 @@ } @Override public PageData<SitesMonitorDTO> findSitesMonitorDTOPage(PageWrap<SitesMonitorDTO> pageWrap) { public PageData<Sites> findSitesMonitorDTOPage(PageWrap<SitesMonitorDTO> pageWrap) { IPage page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); Page<SitesMonitorDTO> sitesMonitorDTO = sitesMapper.getSitesMonitorDTO(page, pageWrap.getModel().getCode(), pageWrap.getModel().getName()); // IPage page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); IPage<Sites> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); QueryWrapper<Sites> queryWrapper = new QueryWrapper<>(); Utils.MP.blankToNull(pageWrap.getModel()); queryWrapper.select("*,(select count(r.id) from locks r where r.site_id = sites.id) as localCount" + ",(select count(r.bike_code) from locks r where r.site_id = sites.id and r.bike_code is null and r.bike_code !='' ) as bikeCount"); // Page<SitesMonitorDTO> sitesMonitorDTO = sitesMapper.getSitesMonitorDTO(page, pageWrap.getModel().getCode(), pageWrap.getModel().getName()); queryWrapper.lambda().like(StringUtils.isNotBlank(pageWrap.getModel().getCode()),Sites::getCode,pageWrap.getModel().getCode()); queryWrapper.lambda().like(StringUtils.isNotBlank(pageWrap.getModel().getName()),Sites::getCode,pageWrap.getModel().getName()); queryWrapper.lambda().orderByAsc(Sites::getCode); IPage<Sites> sitesMonitorDTO = sitesMapper.selectPage(page, queryWrapper); if (!CollectionUtils.isEmpty(sitesMonitorDTO.getRecords())){ sitesMonitorDTO.getRecords().forEach(s->{ server/services/src/main/resources/mappers/SitesMapper.xml
@@ -11,7 +11,7 @@ count(l.id) as lid, count(l.bike_code ) as lbikeCount from sites sites sites LEFT JOIN locks l on sites.id = l.site_id <where> sites.isdeleted = 0