# Conflicts:
#	src/main/java/com/gunshi/project/xyt/controller/StWaterRController.java
master
wany 2024-07-24 09:12:37 +08:00
commit 4f4dd72e11
5 changed files with 55 additions and 21 deletions

View File

@ -1,31 +1,26 @@
package com.gunshi.project.xyt.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.gunshi.core.result.R;
import com.gunshi.db.dto.DateTimeRangeSo;
import com.gunshi.project.xyt.entity.vo.StWaterRVo;
import com.gunshi.project.xyt.model.ResMonthEcoFlow;
import com.gunshi.project.xyt.model.StWaterR;
import com.gunshi.project.xyt.service.ResMonthEcoFlowService;
import com.gunshi.project.xyt.service.StWaterRService;
import com.gunshi.project.xyt.util.ConvertUtil;
import com.gunshi.project.xyt.util.DateUtil;
import com.gunshi.project.xyt.util.ExcelUtil;
import com.gunshi.project.xyt.validate.markers.Insert;
import com.gunshi.project.xyt.validate.markers.Update;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;
import java.util.Map;
/**
* :
@ -74,6 +69,20 @@ public class StWaterRController {
return R.ok(service.list(wrapper));
}
@Operation(summary = "获取月核定流量")
@GetMapping("/getResMonthEcoFlow")
public R<Map<Integer, Object>> getResMonthEcoFlow(@Schema(name = "startTime", description = "开始时间") @RequestParam("startTime") String startTime, @Schema(name = "endTime", description = "开始时间") @RequestParam("endTime") String endTime) {
Map<Integer, Object> resMap = new HashMap<>();
QueryWrapper<ResMonthEcoFlow> wrapper = new QueryWrapper<ResMonthEcoFlow>()
.ge(StringUtils.isNotEmpty(startTime), "month", Integer.valueOf(startTime.substring(5, 7)))
.le(StringUtils.isNotEmpty(endTime), "month", Integer.valueOf(endTime.substring(5, 7)));
List<ResMonthEcoFlow> list = resMonthEcoFlowService.list(wrapper);
if(CollectionUtils.isNotEmpty(list)){
resMap = list.stream().collect(Collectors.toMap(ResMonthEcoFlow::getMonth, ResMonthEcoFlow::getValue));
}
return R.ok(resMap);
}
@Operation(summary = "分页")
@PostMapping("/page")
public R<Page<StWaterR>> page(@RequestBody @Validated StWaterR stWaterR) {
@ -95,10 +104,4 @@ public class StWaterRController {
List<StWaterRVo> vos = ConvertUtil.entityToVoList(this.list(stWaterR).getData(), StWaterRVo.class);
ExcelUtil.exportExcel(vos, filename, StWaterRVo.class, response, "供水流量表");
}
@Operation(summary = "闸阀总览-供水统计")
@PostMapping("/stat")
public R<Map<String, BigDecimal>> stat(@RequestBody @Validated DateTimeRangeSo dateTimeRangeSo) {
return R.ok(service.stat(dateTimeRangeSo));
}
}

View File

@ -15,11 +15,13 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.gunshi.core.result.R;
import com.gunshi.project.xyt.model.ResMonthEcoFlow;
import com.gunshi.project.xyt.model.StWaterRReal;
import com.gunshi.project.xyt.service.ResMonthEcoFlowService;
import com.gunshi.project.xyt.service.StStbprpBService;
import com.gunshi.project.xyt.service.StWaterRRealService;
import com.gunshi.project.xyt.validate.markers.Insert;
import com.gunshi.project.xyt.validate.markers.Update;
@ -37,6 +39,9 @@ import io.swagger.v3.oas.annotations.tags.Tag;
@RequestMapping(value="/stWaterRReal")
public class StWaterRRealController {
@Autowired
private StStbprpBService stStbprpBService;
@Autowired
private StWaterRRealService service;
@ -81,7 +86,17 @@ public class StWaterRRealController {
@Operation(summary = "列表")
@PostMapping("/list")
public R<List<StWaterRReal>> list() {
return R.ok(service.lambdaQuery().list());
List<StWaterRReal> list = service.listRelated();
if(CollectionUtils.isNotEmpty(list)){
// 获取当月核定流量
ResMonthEcoFlow resMonthEcoFlow = resMonthEcoFlowService.getOne(new QueryWrapper<ResMonthEcoFlow>().eq("month", Calendar.getInstance().get(Calendar.MONTH) + 1));
if(ObjectUtils.isNotEmpty(resMonthEcoFlow)){
for(StWaterRReal real : list){
real.setResMonthEcoFlow(resMonthEcoFlow);
}
}
}
return R.ok(list);
}
// @Operation(summary = "分页")

View File

@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.gunshi.project.xyt.model.StWaterRReal;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* :
* author: xusan
@ -12,4 +14,5 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface StWaterRRealMapper extends BaseMapper<StWaterRReal> {
}
List<StWaterRReal> listRelated();
}

View File

@ -1,13 +1,15 @@
package com.gunshi.project.xyt.service;
import java.util.List;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.gunshi.project.xyt.mapper.StWaterRRealMapper;
import com.gunshi.project.xyt.model.StWaterRReal;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
import lombok.extern.slf4j.Slf4j;
/**
* :
@ -20,6 +22,9 @@ import java.util.Date;
public class StWaterRRealService extends ServiceImpl<StWaterRRealMapper, StWaterRReal>
{
public List<StWaterRReal> listRelated() {
return baseMapper.listRelated();
}
}

View File

@ -2,4 +2,12 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.gunshi.project.xyt.mapper.StWaterRRealMapper">
<select id="listRelated" resultType="com.gunshi.project.xyt.model.StWaterRReal">
SELECT stb.stcd, stb.sttp, t.tm, t.q, t.v
FROM public.st_stbprp_b stb
LEFT JOIN public.st_water_r_real t ON t.stcd = stb.stcd
<where>
stb.sttp in ('QQ', 'PQ')
</where>
</select>
</mapper>