预处理兼容pq/pms处理

This commit is contained in:
2023-09-21 09:15:48 +08:00
parent 79865cc395
commit d868558c6e
22 changed files with 771 additions and 508 deletions

View File

@@ -0,0 +1,68 @@
package com.njcn.common.utils;
import lombok.extern.slf4j.Slf4j;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
/**
* pqs
*
* @author cdf
* @date 2023/9/20
*/
@Slf4j
public class NjcnDateUtils {
/**
* 传入两个时间范围,返回这两个时间范围内的所有日期,并保存在一个集合中
*
* @param beginTime
* @param endTime
* @return
* @throws Exception
*/
public static List<String> findEveryDay(String beginTime, String endTime) {
//创建一个放所有日期的集合
List<String> dates = new ArrayList<>();
//创建时间解析对象规定解析格式
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
//将传入的时间解析成Date类型,相当于格式化
Date dBegin = null;
Date dEnd = null;
try {
dBegin = sdf.parse(beginTime);
dEnd = sdf.parse(endTime);
} catch (ParseException e) {
log.error("获取两个时间段范围异常,异常信息"+e.getMessage());
return new ArrayList<>();
}
//将格式化后的第一天添加进集合
dates.add(sdf.format(dBegin));
//使用本地的时区和区域获取日历
Calendar calBegin = Calendar.getInstance();
//传入起始时间将此日历设置为起始日历
calBegin.setTime(dBegin);
//判断结束日期前一天是否在起始日历的日期之后
while (dEnd.after(calBegin.getTime())) {
//根据日历的规则:月份中的每一天,为起始日历加一天
calBegin.add(Calendar.DAY_OF_MONTH, 1);
//得到的每一天就添加进集合
dates.add(sdf.format(calBegin.getTime()));
//如果当前的起始日历超过结束日期后,就结束循环
}
return dates;
}
}