From 4b0cf5de549ebfb56a85b8e3e4f69331e90f1411 Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期五, 08 八月 2025 16:06:45 +0800 Subject: [PATCH] no message --- rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/StockStatisticController.java | 59 +++++++++++++++++++ rsf-server/src/main/java/com/vincent/rsf/server/common/config/MybatisPlusConfig.java | 1 rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskType.java | 23 +++++++ rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/StockStatistic.java | 90 +++++++++++++++++++++--------- 4 files changed, 146 insertions(+), 27 deletions(-) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/common/config/MybatisPlusConfig.java b/rsf-server/src/main/java/com/vincent/rsf/server/common/config/MybatisPlusConfig.java index 1e2d9af..959af2a 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/common/config/MybatisPlusConfig.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/common/config/MybatisPlusConfig.java @@ -51,6 +51,7 @@ "man_loc_type_rela", "man_qly_inspect_result", "view_stock_manage", + "view_stock_statistic", "man_transfer_order", "man_wave_order_rela" ).contains(tableName); diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/StockStatisticController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/StockStatisticController.java index c9058d5..c4bf3c7 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/StockStatisticController.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/StockStatisticController.java @@ -1,6 +1,7 @@ package com.vincent.rsf.server.manager.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.vincent.rsf.framework.common.Cools; import com.vincent.rsf.framework.common.R; @@ -34,6 +35,64 @@ } @PreAuthorize("hasAuthority('manager:stockStatistic:list')") + @PostMapping("/outStatistic/page") + public R outStatisticPage(@RequestBody Map<String, Object> map) { + BaseParam baseParam = buildParam(map, BaseParam.class); + PageParam<StockStatistic, BaseParam> pageParam = new PageParam<>(baseParam, StockStatistic.class); + QueryWrapper<StockStatistic> wrapper = pageParam.buildWrapper(true); + wrapper.select("id, loc_code, day_time, task_type, task_status, barcode, maktx, matnr_code, batch, SUM(anfme) AS anfme, unit, fields_index, create_time, update_time"); + wrapper.groupBy("matnr_code, day_time"); + return R.ok().add(stockStatisticService.page(pageParam, wrapper)); + } + + @PreAuthorize("hasAuthority('manager:stockStatistic:list')") + @PostMapping("/inStatistic/page") + public R inStatisticPage(@RequestBody Map<String, Object> map) { + BaseParam baseParam = buildParam(map, BaseParam.class); + PageParam<StockStatistic, BaseParam> pageParam = new PageParam<>(baseParam, StockStatistic.class); + QueryWrapper<StockStatistic> wrapper = pageParam.buildWrapper(true); + wrapper.select("id, loc_code, day_time, task_type, task_status, barcode, maktx, matnr_code, batch, SUM(anfme) AS anfme, unit, fields_index, create_time, update_time"); + wrapper.groupBy("matnr_code, day_time"); + return R.ok().add(stockStatisticService.page(pageParam, wrapper)); + } + + @PreAuthorize("hasAuthority('manager:stockStatistic:list')") + @PostMapping("/inStatisticItem/page") + public R inStockItemPage(@RequestBody Map<String, Object> map) { + BaseParam baseParam = buildParam(map, BaseParam.class); + PageParam<StockStatistic, BaseParam> pageParam = new PageParam<>(baseParam, StockStatistic.class); + QueryWrapper<StockStatistic> wrapper = pageParam.buildWrapper(true); + wrapper.select("id, loc_code, day_time, task_type, task_status, barcode, maktx, matnr_code, batch, SUM(anfme) anfme, unit, fields_index, create_by, update_by, create_time, update_time"); + wrapper.groupBy("matnr_code, day_time, task_type, task_status"); + return R.ok().add(stockStatisticService.page(pageParam, wrapper)); + } + + @PreAuthorize("hasAuthority('manager:stockStatistic:list')") + @PostMapping("/outStatisticItem/page") + public R outStockItemPage(@RequestBody Map<String, Object> map) { + BaseParam baseParam = buildParam(map, BaseParam.class); + PageParam<StockStatistic, BaseParam> pageParam = new PageParam<>(baseParam, StockStatistic.class); + QueryWrapper<StockStatistic> wrapper = pageParam.buildWrapper(true); + wrapper.select("id, loc_code, day_time, task_type, task_status, barcode, maktx, matnr_code, batch, SUM(anfme) anfme, unit, fields_index, create_by, update_by, create_time, update_time"); + wrapper.groupBy("matnr_code, day_time, task_type, task_status"); + return R.ok().add(stockStatisticService.page(pageParam, wrapper)); + } + + @PreAuthorize("hasAuthority('manager:stockStatistic:list')") + @PostMapping("/statistic/num/page") + public R statisticNumPage(@RequestBody Map<String, Object> map) { + BaseParam baseParam = buildParam(map, BaseParam.class); + PageParam<StockStatistic, BaseParam> pageParam = new PageParam<>(baseParam, StockStatistic.class); + QueryWrapper<StockStatistic> wrapper = pageParam.buildWrapper(true); + wrapper.select("id, day_time, COUNT( barcode ) `count`, SUM( anfme ) anfme, COUNT(IF (task_type = 1, 0, NULL)) in_anfme_count, COUNT(IF ( task_type = 101, 0, NULL)) out_anfme_count, SUM(CASE WHEN task_type = 1 THEN)"); + wrapper.groupBy("barcode, day_time"); + return R.ok().add(stockStatisticService.page(pageParam, wrapper)); + } + + + + + @PreAuthorize("hasAuthority('manager:stockStatistic:list')") @PostMapping("/stockStatistic/list") public R list(@RequestBody Map<String, Object> map) { return R.ok().add(stockStatisticService.list()); diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/StockStatistic.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/StockStatistic.java index e92e213..09c91ce 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/StockStatistic.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/StockStatistic.java @@ -5,6 +5,8 @@ import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableLogic; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.vincent.rsf.server.manager.enums.TaskType; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -12,7 +14,10 @@ import com.vincent.rsf.framework.common.SpringUtils; import com.vincent.rsf.server.system.service.UserService; import com.vincent.rsf.server.system.entity.User; +import org.springframework.format.annotation.DateTimeFormat; + import java.io.Serializable; +import java.text.SimpleDateFormat; import java.util.Date; @Data @@ -54,8 +59,30 @@ @ApiModelProperty(value= "鐗╂枡缂栫爜") private String matnrCode; - @ApiModelProperty(value= "") + @ApiModelProperty(value= "鏁伴噺") private Long count; + + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + private Date createTime; + + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + private Date updateTime; + + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + private String createBy; + + @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + private String updateBy; + + @ApiModelProperty("鎵樼洏鐮�") + private String barcode; + + @ApiModelProperty("搴撲綅") + private String locCode; /** * 搴撳瓨鎵规 @@ -63,7 +90,7 @@ @ApiModelProperty(value= "搴撳瓨鎵规") private String batch; - @ApiModelProperty(value= "") + @ApiModelProperty(value= "鏁伴噺") private Double anfme; /** @@ -87,31 +114,40 @@ this.unit = unit; } -// StockStatistic stockStatistic = new StockStatistic( -// null, // ID[闈炵┖] -// null, // -// null, // 浠诲姟绫诲瀷 -// null, // 浠诲姟鐘舵�� -// null, // 鐗╂枡鍚嶇О -// null, // 鐗╂枡缂栫爜 -// null, // [闈炵┖] -// null, // 搴撳瓨鎵规 -// null, // -// null // 搴撳瓨鍗曚綅 -// ); - - - - public Boolean getStatusBool(){ - if (null == this.status){ return null; } - switch (this.status){ - case 1: - return true; - case 0: - return false; - default: - return null; - } + public String getTaskType$() { + return TaskType.getTypeDesc(taskType); } + + public String getCreateBy$(){ + UserService service = SpringUtils.getBean(UserService.class); + User user = service.getById(this.createBy); + if (!Cools.isEmpty(user)){ + return String.valueOf(user.getNickname()); + } + return null; + } + + public String getCreateTime$(){ + if (Cools.isEmpty(this.createTime)){ + return ""; + } + return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime); + } + + public String getUpdateBy$(){ + UserService service = SpringUtils.getBean(UserService.class); + User user = service.getById(this.updateBy); + if (!Cools.isEmpty(user)){ + return String.valueOf(user.getNickname()); + } + return null; + } + + public String getUpdateTime$(){ + if (Cools.isEmpty(this.updateTime)){ + return ""; + } + return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime); + } } diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskType.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskType.java index 33337d3..7e850e5 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskType.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/enums/TaskType.java @@ -28,4 +28,27 @@ this.type = Integer.parseInt(type); this.desc = desc; } + + public static String getTypeDesc(Integer type) { + if (type == null) { + return null; + } + if (TaskType.TASK_TYPE_IN.type.equals(type)) { + return TaskType.TASK_TYPE_IN.desc; + } else if (TaskType.TASK_TYPE_EMPITY_IN.type.equals(type)) { + return TaskType.TASK_TYPE_EMPITY_IN.desc; + } else if (TaskType.TASK_TYPE_OUT.type.equals(type)) { + return TaskType.TASK_TYPE_OUT.desc; + } else if (TaskType.TASK_TYPE_PICK_IN.type.equals(type)) { + return TaskType.TASK_TYPE_PICK_IN.desc; + } else if (TaskType.TASK_TYPE_MERGE_IN.type.equals(type)) { + return TaskType.TASK_TYPE_MERGE_IN.desc; + } else if (TaskType.TASK_TYPE_CHECK_IN.type.equals(type)) { + return TaskType.TASK_TYPE_CHECK_IN.desc; + } + + return null; + } + + } -- Gitblit v1.9.1