Skip to content

Commit 2644815

Browse files
committed
v1.7.2 修复每日宜忌错误;更新2018之后的△T参数。
1 parent 2fedf45 commit 2644815

8 files changed

Lines changed: 68 additions & 32 deletions

File tree

CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,16 @@
1919
1. 修复九星错别字。
2020
2. 优化每日宜忌算法。
2121
3. 去除每日宜忌的重复项。
22+
> 不建议使用该版本
2223
2324
## [1.7.0] - 2025-02-12
2425
1. 修复每日宜忌错别字。
26+
> 不建议使用该版本
2527
2628
## [1.7.1] - 2025-02-27
2729
1. 修复每日宜忌错误。
30+
> 不建议使用该版本
31+
32+
## [1.7.2] - 2025-03-05
33+
1. 修复每日宜忌错误。
34+
2. 更新2018之后的△T参数。

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ lunar是一款无第三方依赖的公历(阳历)、农历(阴历、老黄历)
1616
<dependency>
1717
<groupId>cn.6tail</groupId>
1818
<artifactId>lunar</artifactId>
19-
<version>1.7.1</version>
19+
<version>1.7.2</version>
2020
</dependency>
2121
```
2222

README_EN.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ lunar is a calendar library for Solar and Chinese Lunar.
1212
<dependency>
1313
<groupId>cn.6tail</groupId>
1414
<artifactId>lunar</artifactId>
15-
<version>1.7.1</version>
15+
<version>1.7.2</version>
1616
</dependency>
1717
```
1818

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
<groupId>cn.6tail</groupId>
88
<artifactId>lunar</artifactId>
99
<packaging>jar</packaging>
10-
<version>1.7.1</version>
10+
<version>1.7.2</version>
1111
<name>${project.groupId}:${project.artifactId}</name>
1212
<url>https://github.com/6tail/lunar-java</url>
1313
<description>a calendar library for Solar and Chinese Lunar</description>

src/main/java/com/nlf/calendar/util/LunarUtil.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -830,7 +830,7 @@ private static List<String> getDayYiJi(String monthGanZhi, String dayGanZhi, Str
830830
Matcher matcher = Pattern.compile(day + "=(.[^;]+?);").matcher(DAY_YI_JI);
831831
while (matcher.find()) {
832832
String v = matcher.group(1);
833-
if (Pattern.compile(month + "[\\w{2}]*:").matcher(v).find()) {
833+
if (Pattern.compile(month + "(?:\\w{2})*:").matcher(v).find()) {
834834
matcher = Pattern.compile(pattern).matcher(v);
835835
if (matcher.find()) {
836836
String s = matcher.group(1);

src/main/java/com/nlf/calendar/util/ShouXingUtil.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,10 @@ public class ShouXingUtil {
5656
2000, 63.87, 0.1, 0, 0,
5757
2005, 64.7, 0.21, 0, 0,
5858
2012, 66.8, 0.22, 0, 0,
59-
2018, 69.0, 0.36, 0, 0,
60-
2028, 72.6
59+
2018, 73.6, 0.40, 0, 0,
60+
2021, 78.1, 0.44, 0, 0,
61+
2024, 83.1, 0.55, 0, 0,
62+
2028, 98.6
6163
};
6264
private static final double[] XL0 = {
6365
10000000000D,

src/test/java/test/JieQiTest.java

Lines changed: 32 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -21,30 +21,30 @@ public void test2022() {
2121
Map<String,String> jieQi = new HashMap<String, String>(){
2222
private static final long serialVersionUID = 1L;
2323
{
24-
put("冬至","2021-12-21 23:59:18");
25-
put("小寒","2022-01-05 17:14:03");
26-
put("大寒","2022-01-20 10:39:05");
27-
put("立春","2022-02-04 04:50:45");
28-
put("雨水","2022-02-19 00:43:00");
29-
put("惊蛰","2022-03-05 22:43:43");
30-
put("春分","2022-03-20 23:33:24");
31-
put("清明","2022-04-05 03:20:13");
32-
put("谷雨","2022-04-20 10:24:16");
33-
put("立夏","2022-05-05 20:25:56");
34-
put("小满","2022-05-21 09:22:35");
35-
put("芒种","2022-06-06 00:25:47");
36-
put("夏至","2022-06-21 17:13:50");
37-
put("小暑","2022-07-07 10:37:59");
38-
put("大暑","2022-07-23 04:06:58");
39-
put("立秋","2022-08-07 20:29:07");
40-
put("处暑","2022-08-23 11:16:09");
41-
put("白露","2022-09-07 23:32:17");
42-
put("秋分","2022-09-23 09:03:41");
43-
put("寒露","2022-10-08 15:22:26");
44-
put("霜降","2022-10-23 18:35:41");
45-
put("立冬","2022-11-07 18:45:28");
46-
put("小雪","2022-11-22 16:20:28");
47-
put("大雪","2022-12-07 11:46:15");
24+
put("冬至","2021-12-21 23:59:09");
25+
put("小寒","2022-01-05 17:13:54");
26+
put("大寒","2022-01-20 10:38:56");
27+
put("立春","2022-02-04 04:50:36");
28+
put("雨水","2022-02-19 00:42:50");
29+
put("惊蛰","2022-03-05 22:43:34");
30+
put("春分","2022-03-20 23:33:15");
31+
put("清明","2022-04-05 03:20:03");
32+
put("谷雨","2022-04-20 10:24:07");
33+
put("立夏","2022-05-05 20:25:47");
34+
put("小满","2022-05-21 09:22:25");
35+
put("芒种","2022-06-06 00:25:38");
36+
put("夏至","2022-06-21 17:13:40");
37+
put("小暑","2022-07-07 10:37:49");
38+
put("大暑","2022-07-23 04:06:49");
39+
put("立秋","2022-08-07 20:28:57");
40+
put("处暑","2022-08-23 11:15:59");
41+
put("白露","2022-09-07 23:32:07");
42+
put("秋分","2022-09-23 09:03:31");
43+
put("寒露","2022-10-08 15:22:16");
44+
put("霜降","2022-10-23 18:35:31");
45+
put("立冬","2022-11-07 18:45:18");
46+
put("小雪","2022-11-22 16:20:18");
47+
put("大雪","2022-12-07 11:46:04");
4848
}
4949
};
5050

@@ -183,7 +183,7 @@ public void test7() {
183183
@Test
184184
public void test8() {
185185
Lunar lunar = Lunar.fromYmd(2050, 12, 1);
186-
Assert.assertEquals("2050-12-07 06:41:13", lunar.getJieQiTable().get("DA_XUE").toYmdHms());
186+
Assert.assertEquals("2050-12-07 06:40:53", lunar.getJieQiTable().get("DA_XUE").toYmdHms());
187187
}
188188

189189
@Test
@@ -197,7 +197,13 @@ public void test9() {
197197
@Test
198198
public void test10() {
199199
Lunar lunar = Solar.fromYmd(2023, 6, 1).getLunar();
200-
Assert.assertEquals("2022-12-22 05:48:11", lunar.getJieQiTable().get("冬至").toYmdHms());
200+
Assert.assertEquals("2022-12-22 05:48:01", lunar.getJieQiTable().get("冬至").toYmdHms());
201+
}
202+
203+
@Test
204+
public void test11() {
205+
Lunar lunar = Solar.fromYmd(2025, 3, 5).getLunar();
206+
Assert.assertEquals("2025-03-05 16:07:02", lunar.getJieQiTable().get("惊蛰").toYmdHms());
201207
}
202208

203209
}

src/test/java/test/LunarTest.java

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -657,4 +657,25 @@ public void test96() {
657657
Assert.assertEquals("[开市, 立券, 理发, 作灶]", lunar.getDayJi().toString());
658658
}
659659

660+
@Test
661+
public void test97() {
662+
Lunar lunar = Solar.fromYmd(2025, 3, 5).getLunar();
663+
Assert.assertEquals("[破屋, 坏垣, 求医, 治病]", lunar.getDayYi().toString());
664+
Assert.assertEquals("[诸事不宜]", lunar.getDayJi().toString());
665+
}
666+
667+
@Test
668+
public void test98() {
669+
Lunar lunar = Solar.fromYmd(2025, 5, 3).getLunar();
670+
Assert.assertEquals("[祭祀, 祈福, 求嗣, 斋醮, 沐浴, 纳畜, 入殓, 破土, 安葬]", lunar.getDayYi().toString());
671+
Assert.assertEquals("[移徙, 入宅, 嫁娶, 出行, 安床]", lunar.getDayJi().toString());
672+
}
673+
674+
@Test
675+
public void test99() {
676+
Lunar lunar = Solar.fromYmd(2025, 5, 4).getLunar();
677+
Assert.assertEquals("[纳采, 祭祀, 祈福, 求嗣, 斋醮, 出行, 起基, 盖屋, 定磉, 安门, 入殓, 安葬]", lunar.getDayYi().toString());
678+
Assert.assertEquals("[嫁娶, 开市, 纳财, 出火]", lunar.getDayJi().toString());
679+
}
680+
660681
}

0 commit comments

Comments
 (0)