记得上下班打卡 | git大法好,push需谨慎

Commit 32fae02f authored by wanglele's avatar wanglele

时间处理优化

parent 59c8975a
...@@ -140,6 +140,20 @@ public class GoblinNftExCodeTaskServiceImpl implements IGoblinNftExCodeTaskServi ...@@ -140,6 +140,20 @@ public class GoblinNftExCodeTaskServiceImpl implements IGoblinNftExCodeTaskServi
LocalDateTime exStartTime = nftExCodeTask.getExStartTime(); LocalDateTime exStartTime = nftExCodeTask.getExStartTime();
LocalDateTime exStopTime = nftExCodeTask.getExStopTime(); LocalDateTime exStopTime = nftExCodeTask.getExStopTime();
// 时间比较 // 时间比较
boolean bolNotUn = false;
// 时间比较
if (goblinNftExCodeTask.getExStartTime().isBefore(exStartTime)) {
nftExCodeTask.setExStartTime(goblinNftExCodeTask.getExStartTime());
bolNotUn = true;
}
if (goblinNftExCodeTask.getExStopTime().isAfter(exStopTime)) {
nftExCodeTask.setExStopTime(goblinNftExCodeTask.getExStopTime());
bolNotUn = true;
}
if (bolNotUn) {
goblinNftExCodeTaskHashMap.put(goblinNftExCodeTask.getSkuId(), nftExCodeTask);
}
} }
} }
...@@ -188,8 +202,21 @@ public class GoblinNftExCodeTaskServiceImpl implements IGoblinNftExCodeTaskServi ...@@ -188,8 +202,21 @@ public class GoblinNftExCodeTaskServiceImpl implements IGoblinNftExCodeTaskServi
GoblinNftExCodeTask nftExCodeTaskCurrent = goblinNftExCodeTaskHashMap.get(goblinNftExCodeTask.getSkuId()); GoblinNftExCodeTask nftExCodeTaskCurrent = goblinNftExCodeTaskHashMap.get(goblinNftExCodeTask.getSkuId());
LocalDateTime exStartTime = nftExCodeTaskCurrent.getExStartTime(); LocalDateTime exStartTime = nftExCodeTaskCurrent.getExStartTime();
LocalDateTime exStopTime = nftExCodeTaskCurrent.getExStopTime(); LocalDateTime exStopTime = nftExCodeTaskCurrent.getExStopTime();
boolean bolNotUn = false;
// 时间比较 // 时间比较
if (goblinNftExCodeTask.getExStartTime().isBefore(exStartTime)) {
nftExCodeTaskCurrent.setExStartTime(goblinNftExCodeTask.getExStartTime());
bolNotUn = true;
}
if (goblinNftExCodeTask.getExStopTime().isAfter(exStopTime)) {
nftExCodeTaskCurrent.setExStopTime(goblinNftExCodeTask.getExStopTime());
bolNotUn = true;
}
if (bolNotUn) {
goblinNftExCodeTaskHashMap.put(goblinNftExCodeTask.getSkuId(), nftExCodeTaskCurrent);
}
} }
} }
} }
...@@ -198,33 +225,35 @@ public class GoblinNftExCodeTaskServiceImpl implements IGoblinNftExCodeTaskServi ...@@ -198,33 +225,35 @@ public class GoblinNftExCodeTaskServiceImpl implements IGoblinNftExCodeTaskServi
// sku ---> 时间存储 // sku ---> 时间存储
for (String key : goblinNftExCodeTaskHashMap.keySet()) { for (String key : goblinNftExCodeTaskHashMap.keySet()) {
GoblinNftExSkuVo goblinNftExSkuVo = goblinRedisUtils.getSkuTime(key);
GoblinNftExCodeTask goblinNftExCodeTask = goblinNftExCodeTaskHashMap.get(key); GoblinNftExCodeTask goblinNftExCodeTask = goblinNftExCodeTaskHashMap.get(key);
LocalDateTime exStartTime = goblinNftExCodeTask.getExStartTime(); // "2022-06-26 19:00:00"; LocalDateTime exStartTime = goblinNftExCodeTask.getExStartTime();
LocalDateTime exStopTime = goblinNftExCodeTask.getExStopTime(); // "2024-06-26 19:00:00"; LocalDateTime exStopTime = goblinNftExCodeTask.getExStopTime();
GoblinNftExSkuVo goblinNftExSkuVo = goblinRedisUtils.getSkuTime(key);
GoblinNftExSkuVo goblinNftExSku = GoblinNftExSkuVo.getNew();
Boolean bolTime = false;
if (!StringUtil.isEmpty(goblinNftExSkuVo)) { if (!StringUtil.isEmpty(goblinNftExSkuVo)) {
// redis存储 单个sku的开始和结束时间 // redis存储 单个sku的开始和结束时间
LocalDateTime rdExStartTime = LocalDateTime.parse(goblinNftExSkuVo.getRdStartTime(), DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); // "2019-06-26 19:00:00"; LocalDateTime rdExStartTime = LocalDateTime.parse(goblinNftExSkuVo.getRdStartTime(), DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); // "2019-06-26 19:00:00";
LocalDateTime rdExStopTime = LocalDateTime.parse(goblinNftExSkuVo.getRdStopTime(), DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); // "2019-06-26 19:00:00"; LocalDateTime rdExStopTime = LocalDateTime.parse(goblinNftExSkuVo.getRdStopTime(), DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); // "2019-06-26 19:00:00";
// 时间比对 // 时间比对
if (!rdExStartTime.isAfter(exStartTime)) { if (exStartTime.isBefore(rdExStartTime)) {
exStartTime = rdExStartTime;
}
if (exStopTime.isBefore(rdExStopTime)) {
exStopTime = rdExStopTime;
}
}
GoblinNftExSkuVo goblinNftExSku = GoblinNftExSkuVo.getNew();
goblinNftExSku.setExStartTime(exStartTime); goblinNftExSku.setExStartTime(exStartTime);
goblinNftExSku.setExStopTime(exStopTime);
goblinNftExSku.setRdStartTime(exStartTime.toString()); goblinNftExSku.setRdStartTime(exStartTime.toString());
bolTime = true;
}
if (exStopTime.isAfter(rdExStopTime)) {
goblinNftExSku.setExStopTime(exStopTime);
goblinNftExSku.setRdStopTime(exStopTime.toString()); goblinNftExSku.setRdStopTime(exStopTime.toString());
bolTime = true;
}
}
if (bolTime){
goblinRedisUtils.addSkuTime(key, goblinNftExSku); goblinRedisUtils.addSkuTime(key, goblinNftExSku);
}
} }
...@@ -238,10 +267,19 @@ public class GoblinNftExCodeTaskServiceImpl implements IGoblinNftExCodeTaskServi ...@@ -238,10 +267,19 @@ public class GoblinNftExCodeTaskServiceImpl implements IGoblinNftExCodeTaskServi
} }
public static void main(String[] args) { public static void main(String[] args) {
LocalDateTime exStopTime = LocalDateTime.parse("2024-06-26 19:00:00", DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); // "2019-06-26 19:00:00"; String time1 = "2029-06-26 19:00:00"; // 我的时间1
LocalDateTime rdExStopTime = LocalDateTime.parse("2066-06-26 19:00:00", DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")); // "2019-06-26 19:00:00"; String time2 = "2019-06-26 19:00:00"; // 我的时间2
if (exStopTime.isBefore(rdExStopTime)) { DateTimeFormatter dtf2 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
} LocalDateTime localDateTime1 = LocalDateTime.parse(time1, dtf2);
System.out.println(localDateTime1.isBefore(LocalDateTime.now()));//你的时间大于当前时间是false
System.out.println(localDateTime1.isAfter(LocalDateTime.now()));//你的时间大于在当前时间是true
System.out.println("******************************************************************");
LocalDateTime localDateTime2 = LocalDateTime.parse(time2, dtf2);
System.out.println(localDateTime2.isBefore(LocalDateTime.now()));//你的时间小于当前时间是true
System.out.println(localDateTime2.isAfter(LocalDateTime.now()));//你的时间小于在当前时间是false
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment