|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.math.BigDecimal; | 
|---|
|  |  |  | import java.time.LocalDate; | 
|---|
|  |  |  | import java.time.LocalDateTime; | 
|---|
|  |  |  | import java.util.ArrayList; | 
|---|
|  |  |  | import java.util.Date; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  | 
|---|
|  |  |  | if(p.getPlanDate() == null){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对不起,第【"+(index+2)+"】行【计划结束日期】数据错误,正确格式为:yyyy-MM-dd(如2022-06-07)!"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(p.getPlanDate().getTime() <= p.getStartDate().getTime()){ | 
|---|
|  |  |  | if(p.getPlanDate().getTime() < p.getStartDate().getTime()){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对不起,第【"+(index+2)+"】行【计划开始日期】要早于【计划结束日期】!"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(StringUtils.isBlank(p.getMaterialCode())){ | 
|---|
|  |  |  | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对不起,第【"+(index+2)+"】行【生产批次】数据错误!"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | Date pDate = DateUtil.getDateFromString(DateUtil.getShortTime(p.getPlanDate()) +" 00:00:00"); | 
|---|
|  |  |  | Date nDate =  DateUtil.getDateFromString(DateUtil.getShortTime(DateUtil.getCurrentDate()) +" 23:59:59"); | 
|---|
|  |  |  | if( nDate.getTime() > pDate.getTime()){ | 
|---|
|  |  |  | LocalDateTime localLocalDateTime = DateUtil.toDateLocalDateTime(p.getStartDate()); | 
|---|
|  |  |  | if( localLocalDateTime.toLocalDate().isBefore(LocalDate.now())){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "对不起,计划生产日期必须为今天以后的日期!"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | p.setMaterialCode(p.getMaterialCode().trim()); | 
|---|