提交 74847d52 authored 作者: 吕本才's avatar 吕本才

货需导入

上级 1953347a
package com.sfa.common.core.utils; package com.sfa.common.core.utils;
import org.apache.commons.lang3.time.DateFormatUtils;
import java.lang.management.ManagementFactory; import java.lang.management.ManagementFactory;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.time.LocalDate; import java.time.*;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.util.Calendar; import java.util.Calendar;
import java.util.Date; import java.util.Date;
import org.apache.commons.lang3.time.DateFormatUtils;
/** /**
* 时间工具类 * 时间工具类
* *
* @author ruoyi * @author ruoyi
*/ */
public class DateUtils extends org.apache.commons.lang3.time.DateUtils public class DateUtils extends org.apache.commons.lang3.time.DateUtils {
{
public static String HH_MM_SS_0 = "yyyy-MM-dd 00:00:00"; public static String HH_MM_SS_0 = "yyyy-MM-dd 00:00:00";
public static String YYYY = "yyyy"; public static String YYYY = "yyyy";
...@@ -40,8 +36,7 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils ...@@ -40,8 +36,7 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils
* *
* @return Date() 当前日期 * @return Date() 当前日期
*/ */
public static Date getNowDate() public static Date getNowDate() {
{
return new Date(); return new Date();
} }
...@@ -50,44 +45,34 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils ...@@ -50,44 +45,34 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils
* *
* @return String * @return String
*/ */
public static String getDate() public static String getDate() {
{
return dateTimeNow(YYYY_MM_DD); return dateTimeNow(YYYY_MM_DD);
} }
public static final String getTime() public static final String getTime() {
{
return dateTimeNow(YYYY_MM_DD_HH_MM_SS); return dateTimeNow(YYYY_MM_DD_HH_MM_SS);
} }
public static final String dateTimeNow() public static final String dateTimeNow() {
{
return dateTimeNow(YYYYMMDDHHMMSS); return dateTimeNow(YYYYMMDDHHMMSS);
} }
public static final String dateTimeNow(final String format) public static final String dateTimeNow(final String format) {
{
return parseDateToStr(format, new Date()); return parseDateToStr(format, new Date());
} }
public static final String dateTime(final Date date) public static final String dateTime(final Date date) {
{
return parseDateToStr(YYYY_MM_DD, date); return parseDateToStr(YYYY_MM_DD, date);
} }
public static final String parseDateToStr(final String format, final Date date) public static final String parseDateToStr(final String format, final Date date) {
{
return new SimpleDateFormat(format).format(date); return new SimpleDateFormat(format).format(date);
} }
public static final Date dateTime(final String format, final String ts) public static final Date dateTime(final String format, final String ts) {
{ try {
try
{
return new SimpleDateFormat(format).parse(ts); return new SimpleDateFormat(format).parse(ts);
} } catch (ParseException e) {
catch (ParseException e)
{
throw new RuntimeException(e); throw new RuntimeException(e);
} }
} }
...@@ -95,8 +80,7 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils ...@@ -95,8 +80,7 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils
/** /**
* 日期路径 即年/月/日 如2018/08/08 * 日期路径 即年/月/日 如2018/08/08
*/ */
public static final String datePath() public static final String datePath() {
{
Date now = new Date(); Date now = new Date();
return DateFormatUtils.format(now, "yyyy/MM/dd"); return DateFormatUtils.format(now, "yyyy/MM/dd");
} }
...@@ -104,8 +88,7 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils ...@@ -104,8 +88,7 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils
/** /**
* 日期路径 即年/月/日 如20180808 * 日期路径 即年/月/日 如20180808
*/ */
public static final String dateTime() public static final String dateTime() {
{
Date now = new Date(); Date now = new Date();
return DateFormatUtils.format(now, "yyyyMMdd"); return DateFormatUtils.format(now, "yyyyMMdd");
} }
...@@ -113,18 +96,13 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils ...@@ -113,18 +96,13 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils
/** /**
* 日期型字符串转化为日期 格式 * 日期型字符串转化为日期 格式
*/ */
public static Date parseDate(Object str) public static Date parseDate(Object str) {
{ if (str == null) {
if (str == null)
{
return null; return null;
} }
try try {
{
return parseDate(str.toString(), parsePatterns); return parseDate(str.toString(), parsePatterns);
} } catch (ParseException e) {
catch (ParseException e)
{
return null; return null;
} }
} }
...@@ -132,8 +110,7 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils ...@@ -132,8 +110,7 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils
/** /**
* 获取服务器启动时间 * 获取服务器启动时间
*/ */
public static Date getServerStartDate() public static Date getServerStartDate() {
{
long time = ManagementFactory.getRuntimeMXBean().getStartTime(); long time = ManagementFactory.getRuntimeMXBean().getStartTime();
return new Date(time); return new Date(time);
} }
...@@ -145,8 +122,7 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils ...@@ -145,8 +122,7 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils
* @param startTime 开始时间 * @param startTime 开始时间
* @return 时间差(天/小时/分钟) * @return 时间差(天/小时/分钟)
*/ */
public static String timeDistance(Date endDate, Date startTime) public static String timeDistance(Date endDate, Date startTime) {
{
long nd = 1000 * 24 * 60 * 60; long nd = 1000 * 24 * 60 * 60;
long nh = 1000 * 60 * 60; long nh = 1000 * 60 * 60;
long nm = 1000 * 60; long nm = 1000 * 60;
...@@ -167,8 +143,7 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils ...@@ -167,8 +143,7 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils
/** /**
* 增加 LocalDateTime ==> Date * 增加 LocalDateTime ==> Date
*/ */
public static Date toDate(LocalDateTime temporalAccessor) public static Date toDate(LocalDateTime temporalAccessor) {
{
ZonedDateTime zdt = temporalAccessor.atZone(ZoneId.systemDefault()); ZonedDateTime zdt = temporalAccessor.atZone(ZoneId.systemDefault());
return Date.from(zdt.toInstant()); return Date.from(zdt.toInstant());
} }
...@@ -176,8 +151,7 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils ...@@ -176,8 +151,7 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils
/** /**
* 增加 LocalDate ==> Date * 增加 LocalDate ==> Date
*/ */
public static Date toDate(LocalDate temporalAccessor) public static Date toDate(LocalDate temporalAccessor) {
{
LocalDateTime localDateTime = LocalDateTime.of(temporalAccessor, LocalTime.of(0, 0, 0)); LocalDateTime localDateTime = LocalDateTime.of(temporalAccessor, LocalTime.of(0, 0, 0));
ZonedDateTime zdt = localDateTime.atZone(ZoneId.systemDefault()); ZonedDateTime zdt = localDateTime.atZone(ZoneId.systemDefault());
return Date.from(zdt.toInstant()); return Date.from(zdt.toInstant());
...@@ -185,24 +159,43 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils ...@@ -185,24 +159,43 @@ public class DateUtils extends org.apache.commons.lang3.time.DateUtils
/** /**
* 获取今天开始时间00:00:00 * 获取今天开始时间00:00:00
*
* @return * @return
*/ */
public static Date dateStart(Date date){ public static Date dateStart(Date date) {
Calendar start = Calendar.getInstance(); Calendar start = Calendar.getInstance();
start.setTime(date); start.setTime(date);
start.set( Calendar.HOUR_OF_DAY,0); start.set(Calendar.HOUR_OF_DAY, 0);
start.set( Calendar.MINUTE, 0); start.set(Calendar.MINUTE, 0);
start.set( Calendar.SECOND,0); start.set(Calendar.SECOND, 0);
start.set( Calendar.MILLISECOND,0); start.set(Calendar.MILLISECOND, 0);
return start.getTime(); return start.getTime();
} }
/** /**
* 获取今天增加天数后的结束时间23:59:59 * 获取今天增加天数后的结束时间23:59:59
*
* @return
*/
public static Date dateStart(int day) {
Date date = dateStart(new Date());
return DateUtils.addMilliseconds(DateUtils.addDays(date, day), -1000);
}
/**
* 计算当前日期在当月属于第几周
* 以周一到周日为一周,不跨月计算
* @param date
* @return * @return
*/ */
public static Date dateStart(int day){ public static int calculateWeekNumber(LocalDate date) {
Date date=dateStart(new Date()); // 获取当月第一天
return DateUtils.addMilliseconds(DateUtils.addDays(date,day),-1000); LocalDate firstDayOfMonth = date.withDayOfMonth(1);
// 计算当月第一天是星期几(1 代表星期一,7 代表星期日)
int firstDayWeekday = firstDayOfMonth.getDayOfWeek().getValue();
// 计算给定日期与当月第一天的天数差
int daysSinceFirstDay = date.getDayOfMonth() - 1;
// 计算给定日期所在周数(从 1 开始)
return (daysSinceFirstDay + firstDayWeekday) / 7 + 1;
} }
} }
package com.sfa.common.core.utils; package com.sfa.common.core.utils;
import com.sfa.common.core.constant.Constants;
import com.sfa.common.core.text.StrFormatter;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.util.AntPathMatcher;
import java.util.Collection; import java.util.Collection;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import org.springframework.util.AntPathMatcher; import java.util.regex.Matcher;
import com.sfa.common.core.constant.Constants; import java.util.regex.Pattern;
import com.sfa.common.core.text.StrFormatter;
/** /**
* 字符串工具类 * 字符串工具类
...@@ -604,4 +608,21 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils ...@@ -604,4 +608,21 @@ public class StringUtils extends org.apache.commons.lang3.StringUtils
} }
return sb.toString(); return sb.toString();
} }
/**
* 从文字中获取数字部分
* @param text
* @return
*/
public static Long getNumberFromStr(String text) {
if (ObjectUtils.isEmpty(text)) {
return null;
}
Pattern pattern = Pattern.compile("\\d");
Matcher matcher = pattern.matcher(text);
while (matcher.find()) {
return Long.valueOf(matcher.group());
}
return null;
}
} }
...@@ -1536,4 +1536,22 @@ public class ExcelUtil<T> ...@@ -1536,4 +1536,22 @@ public class ExcelUtil<T>
} }
return method; return method;
} }
/**
* 获取下标对应的列的英文名称
* @param columnNumber
* @return
*/
public static String convertToExcelColumn(int columnNumber) {
StringBuilder columnName = new StringBuilder();
while (columnNumber > 0) {
int remainder = (columnNumber - 1) % 26;
char letter = (char) ('A' + remainder);
columnName.insert(0, letter);
columnNumber = (columnNumber - 1) / 26;
}
return columnName.toString();
}
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论