408 lines
8.6 KiB
Go
408 lines
8.6 KiB
Go
package calendar
|
|
|
|
func liaoJinYuanCals() map[int]uint32 {
|
|
return map[int]uint32{
|
|
949: 2996838400,
|
|
955: 1237097216,
|
|
958: 2858129152,
|
|
959: 1787832832,
|
|
961: 766088192,
|
|
964: 2574266112,
|
|
965: 1232086016,
|
|
973: 2464163072,
|
|
985: 3031177216,
|
|
986: 1788881664,
|
|
994: 3645910016,
|
|
999: 2775716864,
|
|
1001: 3530398464,
|
|
1012: 3579124224,
|
|
1015: 2513671936,
|
|
1020: 2992512000,
|
|
1021: 1787833856,
|
|
1024: 727723008,
|
|
1025: 2507153408,
|
|
1029: 1783730688,
|
|
1039: 3667270400,
|
|
1040: 3046125056,
|
|
1044: 2463113472,
|
|
1045: 3378156800,
|
|
1049: 2907710464,
|
|
1053: 2461767424,
|
|
1056: 1823052800,
|
|
1059: 2605723136,
|
|
1064: 3912439040,
|
|
1070: 1255156992,
|
|
1073: 2991597824,
|
|
1075: 3601470208,
|
|
1077: 2513836800,
|
|
1078: 2511351296,
|
|
1080: 2763790592,
|
|
1094: 728372224,
|
|
1105: 2733216256,
|
|
1113: 635048960,
|
|
1121: 1269470464,
|
|
1129: 2874414592,
|
|
1134: 3529513728,
|
|
1145: 3041761536,
|
|
1147: 3445629184,
|
|
1152: 1689265920,
|
|
1155: 1530929920,
|
|
1163: 3595576320,
|
|
1168: 2461018624,
|
|
1176: 628108288,
|
|
1178: 2839221504,
|
|
1184: 1264594176,
|
|
1198: 3040880384,
|
|
1207: 2904563200,
|
|
1209: 727721472,
|
|
1239: 1370498304,
|
|
1250: 3576701440,
|
|
1251: 1520769024,
|
|
1253: 1523588864,
|
|
1256: 2732596480,
|
|
1258: 3511690240,
|
|
1263: 2513447168,
|
|
1270: 3047528192,
|
|
1273: 1169888512,
|
|
1276: 1784254976,
|
|
}
|
|
}
|
|
|
|
func liaoJinYuanEras() []Era {
|
|
return []Era{
|
|
{
|
|
Year: 1264,
|
|
Emperor: "元世祖",
|
|
OtherNianHaoStart: "至元",
|
|
Dynasty: "元",
|
|
},
|
|
{
|
|
Year: 1260,
|
|
Emperor: "元世祖",
|
|
Nianhao: "中统",
|
|
Dynasty: "元",
|
|
},
|
|
{
|
|
Year: 1251,
|
|
Emperor: "元宪宗",
|
|
Nianhao: "元宪宗",
|
|
Dynasty: "元",
|
|
},
|
|
{
|
|
Year: 1249,
|
|
Emperor: "元定宗后",
|
|
Nianhao: "元定宗后",
|
|
Dynasty: "元",
|
|
},
|
|
{
|
|
Year: 1246,
|
|
Emperor: "元定宗",
|
|
Nianhao: "元定宗",
|
|
Dynasty: "元",
|
|
},
|
|
{
|
|
Year: 1242,
|
|
Emperor: "元太宗",
|
|
Nianhao: "元太宗后",
|
|
Dynasty: "元",
|
|
},
|
|
{
|
|
Year: 1234,
|
|
Emperor: "元太宗",
|
|
OtherNianHaoStart: "元太宗",
|
|
Dynasty: "元",
|
|
Offset: 5,
|
|
},
|
|
{
|
|
Year: 1232,
|
|
Emperor: "金哀宗",
|
|
Nianhao: "天兴",
|
|
Dynasty: "金",
|
|
},
|
|
{
|
|
Year: 1224,
|
|
Emperor: "金哀宗",
|
|
Nianhao: "正大",
|
|
Dynasty: "金",
|
|
},
|
|
{
|
|
Year: 1222,
|
|
Emperor: "金宣宗",
|
|
OtherNianHaoStart: "元光",
|
|
Dynasty: "金",
|
|
},
|
|
{
|
|
Year: 1217,
|
|
Emperor: "金宣宗",
|
|
OtherNianHaoStart: "兴定",
|
|
Dynasty: "金",
|
|
},
|
|
{
|
|
Year: 1213,
|
|
Emperor: "金宣宗",
|
|
OtherNianHaoStart: "贞佑",
|
|
Dynasty: "金",
|
|
},
|
|
{
|
|
Year: 1213,
|
|
Emperor: "金宣宗",
|
|
OtherNianHaoStart: "至宁",
|
|
Dynasty: "金",
|
|
},
|
|
{
|
|
Year: 1212,
|
|
Emperor: "金卫绍王",
|
|
OtherNianHaoStart: "崇庆",
|
|
Dynasty: "金",
|
|
},
|
|
{
|
|
Year: 1209,
|
|
Emperor: "金卫绍王",
|
|
Nianhao: "大安",
|
|
Dynasty: "金",
|
|
},
|
|
{
|
|
Year: 1201,
|
|
Emperor: "金章宗",
|
|
Nianhao: "泰和",
|
|
Dynasty: "金",
|
|
},
|
|
{
|
|
Year: 1196,
|
|
Emperor: "金章宗",
|
|
OtherNianHaoStart: "承安",
|
|
Dynasty: "金",
|
|
},
|
|
{
|
|
Year: 1190,
|
|
Emperor: "金章宗",
|
|
Nianhao: "明昌",
|
|
Dynasty: "金",
|
|
},
|
|
{
|
|
Year: 1161,
|
|
Emperor: "金世宗",
|
|
OtherNianHaoStart: "大定",
|
|
Dynasty: "金",
|
|
},
|
|
{
|
|
Year: 1156,
|
|
Emperor: "金海陵王",
|
|
OtherNianHaoStart: "正隆",
|
|
Dynasty: "金",
|
|
},
|
|
{
|
|
Year: 1153,
|
|
Emperor: "金海陵王",
|
|
OtherNianHaoStart: "贞元",
|
|
Dynasty: "金",
|
|
},
|
|
{
|
|
Year: 1149,
|
|
Emperor: "金海陵王",
|
|
OtherNianHaoStart: "天德",
|
|
Dynasty: "金",
|
|
},
|
|
{
|
|
Year: 1141,
|
|
Emperor: "金熙宗",
|
|
Nianhao: "皇统",
|
|
Dynasty: "金",
|
|
},
|
|
{
|
|
Year: 1138,
|
|
Emperor: "金熙宗",
|
|
Nianhao: "天眷",
|
|
Dynasty: "金",
|
|
},
|
|
{
|
|
Year: 1125,
|
|
Emperor: "金太宗",
|
|
OtherNianHaoStart: "天会",
|
|
Dynasty: "金",
|
|
Offset: 2,
|
|
},
|
|
{
|
|
Year: 1121,
|
|
Emperor: "辽天祚帝",
|
|
Nianhao: "保大",
|
|
Dynasty: "辽",
|
|
},
|
|
{
|
|
Year: 1111,
|
|
Emperor: "辽天祚帝",
|
|
Nianhao: "天庆",
|
|
Dynasty: "辽",
|
|
},
|
|
{
|
|
Year: 1101,
|
|
Emperor: "辽天祚帝",
|
|
OtherNianHaoStart: "乾统",
|
|
Dynasty: "辽",
|
|
},
|
|
{
|
|
Year: 1095,
|
|
Emperor: "辽道宗",
|
|
Nianhao: "寿昌",
|
|
Dynasty: "辽",
|
|
},
|
|
{
|
|
Year: 1085,
|
|
Emperor: "辽道宗",
|
|
Nianhao: "大安",
|
|
Dynasty: "辽",
|
|
},
|
|
{
|
|
Year: 1075,
|
|
Emperor: "辽道宗",
|
|
Nianhao: "大康",
|
|
Dynasty: "辽",
|
|
},
|
|
{
|
|
Year: 1065,
|
|
Emperor: "辽道宗",
|
|
Nianhao: "咸雍",
|
|
Dynasty: "辽",
|
|
},
|
|
{
|
|
Year: 1055,
|
|
Emperor: "辽道宗",
|
|
OtherNianHaoStart: "清宁",
|
|
Dynasty: "辽",
|
|
},
|
|
{
|
|
Year: 1032,
|
|
Emperor: "辽兴宗",
|
|
OtherNianHaoStart: "重熙",
|
|
Dynasty: "辽",
|
|
},
|
|
{
|
|
Year: 1031,
|
|
Emperor: "辽兴宗",
|
|
OtherNianHaoStart: "景福",
|
|
Dynasty: "辽",
|
|
},
|
|
{
|
|
Year: 1021,
|
|
Emperor: "辽圣宗",
|
|
OtherNianHaoStart: "太平",
|
|
Dynasty: "辽",
|
|
},
|
|
{
|
|
Year: 1012,
|
|
Emperor: "辽圣宗",
|
|
OtherNianHaoStart: "开泰",
|
|
Dynasty: "辽",
|
|
},
|
|
{
|
|
Year: 983,
|
|
Emperor: "辽圣宗",
|
|
OtherNianHaoStart: "统和",
|
|
Dynasty: "辽",
|
|
},
|
|
{
|
|
Year: 979,
|
|
Emperor: "辽景宗",
|
|
OtherNianHaoStart: "乾亨",
|
|
Dynasty: "辽",
|
|
},
|
|
{
|
|
Year: 969,
|
|
Emperor: "辽景宗",
|
|
OtherNianHaoStart: "保宁",
|
|
Dynasty: "辽",
|
|
},
|
|
{
|
|
Year: 951,
|
|
Emperor: "辽穆宗",
|
|
OtherNianHaoStart: "应历",
|
|
Dynasty: "辽",
|
|
},
|
|
{
|
|
Year: 947,
|
|
Emperor: "辽世宗",
|
|
OtherNianHaoStart: "天禄",
|
|
Dynasty: "辽",
|
|
},
|
|
{
|
|
Year: 947,
|
|
Emperor: "辽太宗",
|
|
Nianhao: "大同",
|
|
Dynasty: "辽",
|
|
},
|
|
{
|
|
Year: 939,
|
|
Emperor: "辽太宗",
|
|
OtherNianHaoStart: "会同",
|
|
Dynasty: "辽",
|
|
},
|
|
}
|
|
}
|
|
|
|
func liaoJinYuanEraMap() map[string][][]int {
|
|
return map[string][][]int{
|
|
"中统": [][]int{{1260, 1264}},
|
|
"元宪宗": [][]int{{1251, 1259}},
|
|
"元定宗后": [][]int{{1249, 1250}},
|
|
"元定宗": [][]int{{1246, 1248}},
|
|
"元太宗后": [][]int{{1242, 1245}},
|
|
"元太宗": [][]int{{1229, 1241}},
|
|
"天兴": [][]int{{1232, 1229}},
|
|
"正大": [][]int{{1224, 1231}},
|
|
"元光": [][]int{{1222, 1223}},
|
|
"兴定": [][]int{{1217, 1222}},
|
|
"贞佑": [][]int{{1213, 1217}},
|
|
"至宁": [][]int{{1213, 1213}},
|
|
"崇庆": [][]int{{1212, 1213}},
|
|
"泰和": [][]int{{1201, 1208}},
|
|
"承安": [][]int{{1196, 1200}},
|
|
"明昌": [][]int{{1190, 1196}},
|
|
"大定": [][]int{{1161, 1189}},
|
|
"正隆": [][]int{{1156, 1161}},
|
|
"贞元": [][]int{{1153, 1156}},
|
|
"天德": [][]int{{1149, 1153}},
|
|
"皇统": [][]int{{1141, 1149}},
|
|
"天眷": [][]int{{1138, 1140}},
|
|
"天会": [][]int{{1123, 1137}},
|
|
"保大": [][]int{{1121, 1125}},
|
|
"天庆": [][]int{{1111, 1120}},
|
|
"乾统": [][]int{{1101, 1110}},
|
|
"寿昌": [][]int{{1095, 1101}},
|
|
"大安": [][]int{{1085, 1094}, {1209, 1212}},
|
|
"大康": [][]int{{1075, 1084}},
|
|
"咸雍": [][]int{{1065, 1074}},
|
|
"清宁": [][]int{{1055, 1064}},
|
|
"重熙": [][]int{{1032, 1055}},
|
|
"景福": [][]int{{1031, 1032}},
|
|
"太平": [][]int{{1021, 1031}},
|
|
"开泰": [][]int{{1012, 1021}},
|
|
"统和": [][]int{{983, 1012}},
|
|
"乾亨": [][]int{{979, 983}},
|
|
"保宁": [][]int{{969, 979}},
|
|
"应历": [][]int{{951, 969}},
|
|
"天禄": [][]int{{947, 951}},
|
|
"大同": [][]int{{947, 947}},
|
|
"会同": [][]int{{939, 946}},
|
|
}
|
|
}
|
|
|
|
func innerSolarToLunarLiaoJinYuan(date Time) Time {
|
|
year := date.solarTime.Year()
|
|
month := int(date.solarTime.Month())
|
|
day := date.solarTime.Day()
|
|
if year >= 947 && year <= 1279 {
|
|
lyear, lmonth, ganzhiMonth, lday, isLeap, ldesc := rapidLunarHan2Qing(year, month, day, 0, liaoJinYuanCals)
|
|
date.lunars = append(date.lunars, LunarTime{
|
|
year: lyear,
|
|
month: lmonth,
|
|
day: lday,
|
|
leap: isLeap,
|
|
desc: ldesc,
|
|
comment: "",
|
|
ganzhiMonth: ganzhiMonth,
|
|
eras: innerEras(lyear, liaoJinYuanEras),
|
|
})
|
|
}
|
|
return date
|
|
}
|