diff --git a/src/main/java/com/gunshi/project/hsz/controller/RiceSupportBalanceController.java b/src/main/java/com/gunshi/project/hsz/controller/RiceSupportBalanceController.java index 5f86511..76bf073 100644 --- a/src/main/java/com/gunshi/project/hsz/controller/RiceSupportBalanceController.java +++ b/src/main/java/com/gunshi/project/hsz/controller/RiceSupportBalanceController.java @@ -4,14 +4,12 @@ package com.gunshi.project.hsz.controller; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.gunshi.core.result.R; import com.gunshi.project.hsz.entity.dto.RiceSupportBalanceCaculateDto; -import com.gunshi.project.hsz.entity.dto.RiceWaterCaculateDto; +import com.gunshi.project.hsz.entity.so.RiceSupportBalanceCaculateIcPageSo; import com.gunshi.project.hsz.entity.so.RiceSupportBalanceCaculatePageSo; -import com.gunshi.project.hsz.entity.vo.RiceRqWaterCaculateVo; +import com.gunshi.project.hsz.entity.so.RiceSupportBalanceCaculateRcPageSo; import com.gunshi.project.hsz.model.IcWaterForecast; import com.gunshi.project.hsz.model.RiceRqWater; import com.gunshi.project.hsz.model.RiceSupportBalance; -import com.gunshi.project.hsz.service.IcWaterForecastService; -import com.gunshi.project.hsz.service.RiceRqWaterService; import com.gunshi.project.hsz.service.RiceSupportBalanceService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.media.Schema; @@ -42,7 +40,7 @@ public class RiceSupportBalanceController { } @Operation(summary = "计算") - @PostMapping("/caculate") + @PostMapping("/insert") public R caculate(@RequestBody RiceSupportBalanceCaculateDto dto){ riceSupportBalanceService.caculateAndSave(dto); return R.ok(true); @@ -50,14 +48,14 @@ public class RiceSupportBalanceController { @Operation(summary = "来水预测-分页查询,供需平衡版") @PostMapping("/icpage") - public R> icPage(@RequestBody RiceSupportBalanceCaculatePageSo pageSo){ + public R> icPage(@RequestBody RiceSupportBalanceCaculateIcPageSo pageSo){ Page page = riceSupportBalanceService.icPage(pageSo); return R.ok(page); } @Operation(summary = "农业需水-分页查询,供需平衡版") @PostMapping("/rcpage") - public R> rcPage(@RequestBody RiceSupportBalanceCaculatePageSo pageSo){ + public R> rcPage(@RequestBody RiceSupportBalanceCaculateRcPageSo pageSo){ Page page = riceSupportBalanceService.rcPage(pageSo); return R.ok(page); } diff --git a/src/main/java/com/gunshi/project/hsz/entity/so/RiceSupportBalanceCaculateIcPageSo.java b/src/main/java/com/gunshi/project/hsz/entity/so/RiceSupportBalanceCaculateIcPageSo.java new file mode 100644 index 0000000..38fd0b7 --- /dev/null +++ b/src/main/java/com/gunshi/project/hsz/entity/so/RiceSupportBalanceCaculateIcPageSo.java @@ -0,0 +1,24 @@ +package com.gunshi.project.hsz.entity.so; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.gunshi.db.dto.PageSo; +import lombok.Data; + +import java.time.LocalDateTime; + +@Data +public class RiceSupportBalanceCaculateIcPageSo { + + + private PageSo pageSo; + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private LocalDateTime startTime; // 开始时间 + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private LocalDateTime endTime; // 结束时间 + + private String icplanName; // 计划名称 + + private Integer type; // 类型 0 长期 1短期 +} diff --git a/src/main/java/com/gunshi/project/hsz/entity/so/RiceSupportBalanceCaculatePageSo.java b/src/main/java/com/gunshi/project/hsz/entity/so/RiceSupportBalanceCaculatePageSo.java index f85f3d8..f55386b 100644 --- a/src/main/java/com/gunshi/project/hsz/entity/so/RiceSupportBalanceCaculatePageSo.java +++ b/src/main/java/com/gunshi/project/hsz/entity/so/RiceSupportBalanceCaculatePageSo.java @@ -1,5 +1,6 @@ package com.gunshi.project.hsz.entity.so; +import com.fasterxml.jackson.annotation.JsonFormat; import com.gunshi.db.dto.PageSo; import lombok.Data; @@ -11,8 +12,10 @@ public class RiceSupportBalanceCaculatePageSo { private PageSo pageSo; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private LocalDateTime startTime; // 开始时间 + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private LocalDateTime endTime; // 结束时间 private String planName; // 计划名称 diff --git a/src/main/java/com/gunshi/project/hsz/entity/so/RiceSupportBalanceCaculateRcPageSo.java b/src/main/java/com/gunshi/project/hsz/entity/so/RiceSupportBalanceCaculateRcPageSo.java new file mode 100644 index 0000000..a25dd3b --- /dev/null +++ b/src/main/java/com/gunshi/project/hsz/entity/so/RiceSupportBalanceCaculateRcPageSo.java @@ -0,0 +1,24 @@ +package com.gunshi.project.hsz.entity.so; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.gunshi.db.dto.PageSo; +import lombok.Data; + +import java.time.LocalDateTime; + +@Data +public class RiceSupportBalanceCaculateRcPageSo { + + + private PageSo pageSo; + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private LocalDateTime startTime; // 开始时间 + + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private LocalDateTime endTime; // 结束时间 + + private String rcplanName; // 计划名称 + + private Integer type; // 类型 0 长期 1短期 +} diff --git a/src/main/java/com/gunshi/project/hsz/service/RiceSupportBalanceService.java b/src/main/java/com/gunshi/project/hsz/service/RiceSupportBalanceService.java index aa9a49a..d2bdf11 100644 --- a/src/main/java/com/gunshi/project/hsz/service/RiceSupportBalanceService.java +++ b/src/main/java/com/gunshi/project/hsz/service/RiceSupportBalanceService.java @@ -6,7 +6,9 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.gunshi.project.hsz.common.model.StRsvrRReal; import com.gunshi.project.hsz.entity.RiceSupportMidCaculate; import com.gunshi.project.hsz.entity.dto.RiceSupportBalanceCaculateDto; +import com.gunshi.project.hsz.entity.so.RiceSupportBalanceCaculateIcPageSo; import com.gunshi.project.hsz.entity.so.RiceSupportBalanceCaculatePageSo; +import com.gunshi.project.hsz.entity.so.RiceSupportBalanceCaculateRcPageSo; import com.gunshi.project.hsz.entity.vo.TyYearRainfallVo; import com.gunshi.project.hsz.mapper.RiceSupportBalanceMapper; import com.gunshi.project.hsz.model.*; @@ -23,7 +25,6 @@ import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; import java.util.Optional; -import java.util.concurrent.atomic.AtomicBoolean; @Service @Slf4j @@ -51,12 +52,34 @@ public class RiceSupportBalanceService extends ServiceImpl icPage(RiceSupportBalanceCaculatePageSo pageSo) { + public Page icPage(RiceSupportBalanceCaculateIcPageSo pageSo) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.le(IcWaterForecast::getStartTime,pageSo.getStartTime()); queryWrapper.ge(IcWaterForecast::getEndTime,pageSo.getEndTime()); if(pageSo.getType() != null){ queryWrapper.eq(IcWaterForecast::getType, pageSo.getType()); } - if(!StringUtils.isBlank(pageSo.getPlanName())){ - queryWrapper.like(IcWaterForecast::getPlanName, pageSo.getPlanName()); + if(!StringUtils.isBlank(pageSo.getIcplanName())){ + queryWrapper.like(IcWaterForecast::getPlanName, pageSo.getIcplanName()); } Page icWaterForecastPage = icWaterForecastService.getBaseMapper().selectPage(pageSo.getPageSo().toPage(), queryWrapper); + for (IcWaterForecast record : icWaterForecastPage.getRecords()) { + List icWaterForecastDetails = icWaterForecastDetailService.listByForecastId(record.getId()); + record.setDetails(icWaterForecastDetails); + } return icWaterForecastPage; } - public Page rcPage(RiceSupportBalanceCaculatePageSo pageSo) { + public Page rcPage(RiceSupportBalanceCaculateRcPageSo pageSo) { List yearByRangeDate = LocalDateTimeUtils.getYearByRangeDate(pageSo.getStartTime(), pageSo.getEndTime()); LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); - if(!StringUtils.isBlank(pageSo.getPlanName())){ - queryWrapper.like(RiceRqWater::getPlanName, pageSo.getPlanName()); + if(!StringUtils.isBlank(pageSo.getRcplanName())){ + queryWrapper.like(RiceRqWater::getPlanName, pageSo.getRcplanName()); } queryWrapper.in(RiceRqWater::getYear, yearByRangeDate); Page riceRqWaterPage = riceRqWaterService.getBaseMapper().selectPage(pageSo.getPageSo().toPage(), queryWrapper); + List records = riceRqWaterPage.getRecords(); + for (RiceRqWater record : records) { + //灌水定额配置 + record.setRiceWaterKis(riceWaterKiService.selectByRiceWaterId(record.getId())); + //水稻生长系数配置 + record.setRiceGrowConfig(riceGrowConfigService.selectByRiceWaterId(record.getId())); + //按月份 + record.setRiceWaterForecastMonths(riceWaterForecastMonthService.selectByRiceWaterId(record.getId())); + //按生长周期 + record.setRiceWaterForecastCycles(riceWaterForecastCycleService.selectByRiceWaterId(record.getId())); + } return riceRqWaterPage; } diff --git a/src/main/java/com/gunshi/project/hsz/system/SysVisitMenuLogController.java b/src/main/java/com/gunshi/project/hsz/system/SysVisitMenuLogController.java index ba5f114..52bf569 100644 --- a/src/main/java/com/gunshi/project/hsz/system/SysVisitMenuLogController.java +++ b/src/main/java/com/gunshi/project/hsz/system/SysVisitMenuLogController.java @@ -43,23 +43,26 @@ public class SysVisitMenuLogController { // private ProjectCommonService projectCommonService; @Post(path = "/page", summary = "分页查询") public R> page(@RequestBody @Validated VisitMenuLogPageSo dto) { - LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(); +// LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(); +// +// if (dto.getMenu() != null) { +// queryWrapper.like(SysVisitMenuLog::getMenu1, dto.getMenu()); +// queryWrapper.like(SysVisitMenuLog::getMenu2, dto.getMenu()); +// queryWrapper.like(SysVisitMenuLog::getMenu3, dto.getMenu()); +// } - if (dto.getMenu() != null) { - queryWrapper.like(SysVisitMenuLog::getMenu1, dto.getMenu()); - queryWrapper.like(SysVisitMenuLog::getMenu2, dto.getMenu()); - queryWrapper.like(SysVisitMenuLog::getMenu3, dto.getMenu()); - } - - return R.ok(thisMapper.selectPage(dto.getPageSo().toPage(), queryWrapper)); + return R.ok(thisMapper.pageQuery(dto.getPageSo().toPage(),dto)); } @Post(path = "/count", summary = "统计查询") public R> count(@RequestBody @Validated VisitMenuLogPageSo dto) { LambdaQueryWrapper queryWrapper = Wrappers.query(SysVisitMenuLog.class) - .select("COUNT(ID) COUNT, menu2, menu1") + .select("COUNT(ID) COUNT, menu2, menu1,menu3") .lambda(); + if(dto.getLoginType() != null){ + queryWrapper.eq(SysVisitMenuLog::getLoginType, dto.getLoginType()); + } if (dto.getStm() != null) { queryWrapper.ge(SysVisitMenuLog::getCreateTime, dto.getStm()); @@ -69,21 +72,10 @@ public class SysVisitMenuLogController { queryWrapper.le(SysVisitMenuLog::getCreateTime, dto.getEtm()); } - queryWrapper.groupBy(SysVisitMenuLog::getMenu2, SysVisitMenuLog::getMenu1); - + queryWrapper.groupBy(SysVisitMenuLog::getMenu2, SysVisitMenuLog::getMenu1,SysVisitMenuLog::getMenu3) + .last("ORDER BY COUNT DESC"); List list = thisMapper.selectList(queryWrapper); - - - return R.ok( - list - .stream() - .sorted( - Comparator - .comparing(SysVisitMenuLog::getCount) - .reversed() - ) - .collect(Collectors.toList()) - ); + return R.ok(list); } @Post(path = "/insert", summary = "添加") diff --git a/src/main/java/com/gunshi/project/hsz/system/mapper/SysUserLoginLogMapper.java b/src/main/java/com/gunshi/project/hsz/system/mapper/SysUserLoginLogMapper.java index f0b104a..5e60264 100644 --- a/src/main/java/com/gunshi/project/hsz/system/mapper/SysUserLoginLogMapper.java +++ b/src/main/java/com/gunshi/project/hsz/system/mapper/SysUserLoginLogMapper.java @@ -14,8 +14,8 @@ public interface SysUserLoginLogMapper extends BaseMapper { @Select(""" """) diff --git a/src/main/java/com/gunshi/project/hsz/system/mapper/SysVisitMenuLogMapper.java b/src/main/java/com/gunshi/project/hsz/system/mapper/SysVisitMenuLogMapper.java index 9224c6c..697ba41 100644 --- a/src/main/java/com/gunshi/project/hsz/system/mapper/SysVisitMenuLogMapper.java +++ b/src/main/java/com/gunshi/project/hsz/system/mapper/SysVisitMenuLogMapper.java @@ -1,9 +1,23 @@ package com.gunshi.project.hsz.system.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.gunshi.project.hsz.system.model.SysVisitMenuLog; +import com.gunshi.project.hsz.system.so.VisitMenuLogPageSo; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Select; @Mapper public interface SysVisitMenuLogMapper extends BaseMapper { + + + @Select(""" + + """) + Page pageQuery(Page page, VisitMenuLogPageSo dto); + } \ No newline at end of file diff --git a/src/main/java/com/gunshi/project/hsz/system/so/UserLoginLogPageSo.java b/src/main/java/com/gunshi/project/hsz/system/so/UserLoginLogPageSo.java index 61d162d..e07cb10 100644 --- a/src/main/java/com/gunshi/project/hsz/system/so/UserLoginLogPageSo.java +++ b/src/main/java/com/gunshi/project/hsz/system/so/UserLoginLogPageSo.java @@ -1,5 +1,6 @@ package com.gunshi.project.hsz.system.so; +import com.fasterxml.jackson.annotation.JsonFormat; import com.gunshi.db.dto.PageSo; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotNull; @@ -26,9 +27,11 @@ public class UserLoginLogPageSo { private String name; @Schema(description="开始时间 yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date stm; @Schema(description="结束时间 yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date etm; } diff --git a/src/main/java/com/gunshi/project/hsz/system/so/UserLoginLogSo.java b/src/main/java/com/gunshi/project/hsz/system/so/UserLoginLogSo.java index c0661f6..a31271c 100644 --- a/src/main/java/com/gunshi/project/hsz/system/so/UserLoginLogSo.java +++ b/src/main/java/com/gunshi/project/hsz/system/so/UserLoginLogSo.java @@ -1,5 +1,6 @@ package com.gunshi.project.hsz.system.so; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotNull; import lombok.Data; @@ -19,10 +20,12 @@ public class UserLoginLogSo { @Schema(description="开始时间 yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @NotNull private Date stm; @Schema(description="结束时间 yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @NotNull private Date etm; diff --git a/src/main/java/com/gunshi/project/hsz/system/so/VisitMenuLogPageSo.java b/src/main/java/com/gunshi/project/hsz/system/so/VisitMenuLogPageSo.java index 9c7f0aa..2983f6a 100644 --- a/src/main/java/com/gunshi/project/hsz/system/so/VisitMenuLogPageSo.java +++ b/src/main/java/com/gunshi/project/hsz/system/so/VisitMenuLogPageSo.java @@ -1,5 +1,6 @@ package com.gunshi.project.hsz.system.so; +import com.fasterxml.jackson.annotation.JsonFormat; import com.gunshi.db.dto.PageSo; import io.swagger.v3.oas.annotations.media.Schema; import jakarta.validation.constraints.NotNull; @@ -18,7 +19,6 @@ import java.util.Date; @Schema(description = "页面访问记录分页查询条件") public class VisitMenuLogPageSo { - @NotNull(message = "分页参数不能为空") @Schema(description = "分页参数") private PageSo pageSo; @@ -28,10 +28,15 @@ public class VisitMenuLogPageSo { @Schema(description="名称") private String name; + @Schema(description="登录类型, 0: web, 1:app") + private String loginType; + @Schema(description="开始时间 yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date stm; @Schema(description="结束时间 yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date etm; }