From cb12bb9025cd17c095b745639eaa9cf15e420998 Mon Sep 17 00:00:00 2001 From: ruanqi Date: Tue, 11 Jun 2024 17:57:40 +0800 Subject: [PATCH] =?UTF-8?q?=E9=87=87=E8=B4=AD=E5=85=A5=E5=BA=93?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/Impl/PoReceiveServiceImpl.java | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/spring/modules/material/service/Impl/PoReceiveServiceImpl.java b/src/main/java/com/spring/modules/material/service/Impl/PoReceiveServiceImpl.java index 1383528..9ef103d 100644 --- a/src/main/java/com/spring/modules/material/service/Impl/PoReceiveServiceImpl.java +++ b/src/main/java/com/spring/modules/material/service/Impl/PoReceiveServiceImpl.java @@ -22,10 +22,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; @Service @@ -152,11 +149,17 @@ public class PoReceiveServiceImpl implements PoReceiveService { } Date currentDate = new Date(); if(currentDate.after(inData.getExpiredDate())){ - throw new RuntimeException("该物料已过期,失效日期为"+DateUtil.getStringDate(inData.getManufactureDate())); + throw new RuntimeException("该物料已过期,失效日期为"+DateUtil.getStringDate(inData.getExpiredDate())); } - Date futureDate = new Date(currentDate.getTime() - (45 * 24 * 60 * 60 * 1000)); - if(futureDate.after(inData.getManufactureDate())){ - throw new RuntimeException("该物料生产日期在45天以前,生产日期为"+DateUtil.getStringDate(inData.getExpiredDate())); + Calendar calendar = Calendar.getInstance(); + calendar.setTime(currentDate); + + // 使用 Calendar 类的方法计算45天前的日期 + calendar.add(Calendar.DAY_OF_YEAR, -45); + Date pastDate = calendar.getTime(); + // Date futureDate = new Date(currentDate.getTime() - (45 * 24 * 60 * 60 * 1000)); + if(pastDate.after(inData.getManufactureDate())){ + throw new RuntimeException("该物料生产日期在45天以前,生产日期为"+DateUtil.getStringDate(inData.getManufactureDate())); } for (int i = 0; i < inData.getRollNumber(); i++) { String rollNo= transNoControlService.transNo(inData.getSite(), "RollNo");