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