diff --git a/blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataWmsClient.java b/blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataWmsClient.java index 57aecdf1..8ed4f502 100644 --- a/blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataWmsClient.java +++ b/blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataWmsClient.java @@ -5,7 +5,8 @@ import org.springblade.common.exception.BusinessException; import org.springblade.core.tool.api.R; import org.springblade.wms.pojo.entity.StRealtimeStock; import org.springframework.cloud.openfeign.FeignClient; -import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import java.util.Date; @@ -36,19 +37,19 @@ public interface IErpDataWmsClient { /** * 到期送检发送erp */ - @GetMapping(SEND_ST_SUBMISSION) - R sendStSubmission(@RequestParam("stRealtimeStock")StRealtimeStock stRealtimeStock, @RequestParam("goodsCode")String goodsCode, @RequestParam("userName")String userName) throws BusinessException; + @PostMapping(SEND_ST_SUBMISSION) + R sendStSubmission(@RequestBody StRealtimeStock stRealtimeStock, @RequestParam("goodsCode")String goodsCode, @RequestParam("userName")String userName) throws BusinessException; /** * 仓库提请发送erp */ - @GetMapping(SEND_ERP_BUY_REQUEST) + @PostMapping(SEND_ERP_BUY_REQUEST) R sendErpBuyRequest(@RequestParam("extraBill")String extraBill, @RequestParam("qty")Double qty, @RequestParam("ldapName")String ldapName) throws BusinessException; /** * 工装计划申报发送erp */ - @GetMapping(CREATE_MOLD_PLAN) + @PostMapping(CREATE_MOLD_PLAN) R createMoldPlan(@RequestParam("partCode")String partCode, @RequestParam("moCode")String moCode, @RequestParam("plantype")String plantype, @RequestParam("quantity")Double quantity, @RequestParam("needDate")Date needDate, @RequestParam("level")String level, @RequestParam("keeper")String keeper, @RequestParam("createMan")String createMan, @RequestParam("memo")String memo, @RequestParam("urgentType")String urgentType, @RequestParam("erpWoCode")String erpWoCode) throws BusinessException; @@ -56,7 +57,7 @@ public interface IErpDataWmsClient { /** * 工装计划申报删除发送erp */ - @GetMapping(DELETE_MOLD_PLAN) + @PostMapping(DELETE_MOLD_PLAN) R deleteMoldPlan(@RequestParam("erpWoCode")String erpWoCode) throws BusinessException; } diff --git a/blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataWmsClientFallback.java b/blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataWmsClientFallback.java index ccdf1e55..0c1237c5 100644 --- a/blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataWmsClientFallback.java +++ b/blade-service-api/blade-erpdata-api/src/main/java/org/springblade/erpdata/feign/IErpDataWmsClientFallback.java @@ -3,6 +3,7 @@ package org.springblade.erpdata.feign; import org.springblade.core.tool.api.R; import org.springblade.wms.pojo.entity.StRealtimeStock; import org.springframework.stereotype.Component; +import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import java.util.Date; @@ -18,7 +19,7 @@ import java.util.Date; @Component public class IErpDataWmsClientFallback implements IErpDataWmsClient{ @Override - public R sendStSubmission(@RequestParam("stRealtimeStock") StRealtimeStock stRealtimeStock, @RequestParam("goodsCode")String goodsCode, @RequestParam("userName")String userName) { + public R sendStSubmission(@RequestBody StRealtimeStock stRealtimeStock, @RequestParam("goodsCode")String goodsCode, @RequestParam("userName")String userName) { return R.fail("获取数据失败"); } diff --git a/blade-service-api/blade-wms-api/src/main/java/org/springblade/wms/pojo/vo/StRealtimeStockVO.java b/blade-service-api/blade-wms-api/src/main/java/org/springblade/wms/pojo/vo/StRealtimeStockVO.java index e53f7a30..df54a8dd 100644 --- a/blade-service-api/blade-wms-api/src/main/java/org/springblade/wms/pojo/vo/StRealtimeStockVO.java +++ b/blade-service-api/blade-wms-api/src/main/java/org/springblade/wms/pojo/vo/StRealtimeStockVO.java @@ -85,6 +85,11 @@ public class StRealtimeStockVO extends StRealtimeStock { @Schema(description = "出入库数量") private Double inQuantity; + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @Schema(description = "入库日期") + private Date inDate; + @TableField(exist = false) private String deptName; @TableField(exist = false) diff --git a/blade-service/blade-wms/src/main/java/org/springblade/wms/controller/StStorageLocationController.java b/blade-service/blade-wms/src/main/java/org/springblade/wms/controller/StStorageLocationController.java index fe28b2eb..29e550a4 100644 --- a/blade-service/blade-wms/src/main/java/org/springblade/wms/controller/StStorageLocationController.java +++ b/blade-service/blade-wms/src/main/java/org/springblade/wms/controller/StStorageLocationController.java @@ -9,6 +9,7 @@ import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.servlet.http.HttpServletResponse; import jakarta.validation.Valid; import lombok.AllArgsConstructor; +import org.apache.commons.lang3.StringUtils; import org.springblade.core.boot.ctrl.BladeController; import org.springblade.core.excel.util.ExcelUtil; import org.springblade.core.log.annotation.ApiLog; @@ -79,7 +80,9 @@ public class StStorageLocationController extends BladeController { if (user != null && user.getDeptId() != null) { wrapper.eq("create_dept", user.getDeptId()); } - + if (StringUtils.isBlank(query.getAscs()) && StringUtils.isBlank(query.getDescs())) { + wrapper.orderByDesc("create_time"); + } IPage pages = stStorageLocationService.page(Condition.getPage(query), wrapper); return R.data(StStorageLocationWrapper.build().pageVO(pages)); } diff --git a/blade-service/blade-wms/src/main/java/org/springblade/wms/controller/StStorehouseController.java b/blade-service/blade-wms/src/main/java/org/springblade/wms/controller/StStorehouseController.java index cb224179..ddeba657 100644 --- a/blade-service/blade-wms/src/main/java/org/springblade/wms/controller/StStorehouseController.java +++ b/blade-service/blade-wms/src/main/java/org/springblade/wms/controller/StStorehouseController.java @@ -103,7 +103,7 @@ public class StStorehouseController extends BladeController { } if (StringUtils.isBlank(query.getAscs()) && StringUtils.isBlank(query.getDescs())) { - wrapper.orderByAsc("sh_code"); + wrapper.orderByDesc("create_time"); } IPage pages = stStorehouseService.page(Condition.getPage(query), wrapper); // 转换为 VO diff --git a/blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StExpireRecordMapper.xml b/blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StExpireRecordMapper.xml index 2cb60d55..8f42aec7 100644 --- a/blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StExpireRecordMapper.xml +++ b/blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StExpireRecordMapper.xml @@ -39,7 +39,16 @@ r.goods_status, r.memo, r.stop_use, - r.scrap_cycle + r.scrap_cycle, + -- 到期状态:1-已到期 0-未到期(当前时间>=过期时间则已到期) + CASE WHEN r.scrap_cycle IS NULL THEN 0 WHEN SYSDATE >= r.scrap_cycle THEN 1 ELSE 0 END AS expireStatus, + -- 核心新增:临期天数(到期时间-当前时间,处理空值/负数) + CASE + -- 到期时间为空 → 临期天数为0 + WHEN r.scrap_cycle IS NULL THEN 0 + -- 直接计算天数差,TRUNC取整;未过期为正,已过期为负 + ELSE TRUNC(r.scrap_cycle - SYSDATE) + END AS expireDays FROM ST_REALTIME_STOCK r -- 新主表:实时库存表 -- 左关联物料表:库存表goods_id关联物料表主键,过滤已删除数据 LEFT JOIN ST_GOODS g ON r.goods_id = g.id AND g.is_deleted = 0 @@ -51,13 +60,14 @@ r.is_deleted = 0 AND r.is_scrap = 0 - + AND ( (r.scrap_cycle IS NOT NULL AND TRUNC(r.scrap_cycle - SYSDATE) <= 30) OR SYSDATE >= r.scrap_cycle ) + AND g.goods_code LIKE '%' || #{stExpireRecord.goodsCode} || '%' @@ -83,6 +93,7 @@ AND SYSDATE >= r.scrap_cycle + ORDER BY expireDays ASC diff --git a/blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StExpireSubmissionMapper.xml b/blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StExpireSubmissionMapper.xml index 998660bc..670f0608 100644 --- a/blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StExpireSubmissionMapper.xml +++ b/blade-service/blade-wms/src/main/java/org/springblade/wms/mapper/StExpireSubmissionMapper.xml @@ -19,6 +19,7 @@ + @@ -65,7 +66,7 @@ -- 左关联库房表(库存表sh_id关联库房表主键,过滤已删除) LEFT JOIN ST_STOREHOUSE sh ON r.sh_id = sh.id AND sh.is_deleted = 0 -- 左关联部门表(主表esDept关联部门表主键,过滤已删除) - LEFT JOIN BLADE_DEPT dept ON se.es_dept = dept.id AND dept.is_deleted = 0 + LEFT JOIN BLADE_DEPT dept ON se.es_dept_id = dept.id AND dept.is_deleted = 0 -- 左关联用户表(主表esMan关联用户表主键,过滤已删除) LEFT JOIN BLADE_USER u ON se.es_man = u.id AND u.is_deleted = 0 -- 主表过滤条件:未删除 @@ -118,6 +119,7 @@ ) + ORDER BY expireDays ASC