From 3ab0da701943cf1b7f233d1d65016eac0827ee23 Mon Sep 17 00:00:00 2001
From: jgzhou <996155731@qq.com>
Date: Thu, 01 Apr 2021 13:49:46 +0000
Subject: [PATCH] 完善

---
 Lunar/Lunar/Tool/Lunar.m |  311 +++++++++++++++++----------------------------------
 1 files changed, 105 insertions(+), 206 deletions(-)

diff --git a/Lunar/Lunar/Tool/Lunar.m b/Lunar/Lunar/Tool/Lunar.m
index 359eaf2..62d8613 100644
--- a/Lunar/Lunar/Tool/Lunar.m
+++ b/Lunar/Lunar/Tool/Lunar.m
@@ -165,6 +165,7 @@
         }
         lastDate = [LunarUtil getDaysOfMonth:lunarYear :lunarMonth];
     }
+    
     return [[self alloc] initWith:lunarYear :lunarMonth :lunarDay :solar.hour :solar.minute :solar.second];
 }
 
@@ -1178,15 +1179,6 @@
 }
 
 /**
- * 获取日喜神方位描述
- * @return string 喜神方位描述,如东北
- */
-- (NSString *)getPositionXiDesc
-{
-  return [self getDayPositionXiDesc];
-}
-
-/**
  * 获取日喜神方位
  * @return string 喜神方位,如艮
  */
@@ -1226,24 +1218,6 @@
  * 获取日阳贵神方位
  * @return string 阳贵神方位,如艮
  */
-- (NSString *)getPositionYangGui
-{
-  return [self getDayPositionYangGui];
-}
-
-/**
- * 获取日阳贵神方位描述
- * @return string 阳贵神方位描述,如东北
- */
-- (NSString *)getPositionYangGuiDesc
-{
-  return [self getDayPositionYangGuiDesc];
-}
-
-/**
- * 获取日阳贵神方位
- * @return string 阳贵神方位,如艮
- */
 - (NSString *)getDayPositionYangGui
 {
   return [LunarUtil share].POSITION_YANG_GUI[_dayGanIndex + 1];
@@ -1274,24 +1248,6 @@
 - (NSString *)getTimePositionYangGuiDesc
 {
     return [LunarUtil share].POSITION_DESC[[self getTimePositionYangGui]];
-}
-
-/**
- * 获取日阴贵神方位
- * @return string 阴贵神方位,如艮
- */
-- (NSString *)getPositionYinGui
-{
-    return [self getDayPositionYinGui];
-}
-
-/**
- * 获取日阴贵神方位描述
- * @return string 阴贵神方位描述,如东北
- */
-- (NSString *)getPositionYinGuiDesc
-{
-    return [self getDayPositionYinGuiDesc];
 }
 
 /**
@@ -1340,15 +1296,6 @@
 }
 
 /**
- * 获取日福神方位描述
- * @return string 福神方位描述,如东北
- */
-- (NSString *)getPositionFuDesc
-{
-    return [self getDayPositionFuDesc];
-}
-
-/**
  * 获取日福神方位
  * @return string 福神方位,如艮
  */
@@ -1391,15 +1338,6 @@
 - (NSString *)getPositionCai
 {
   return [self getDayPositionCai];
-}
-
-/**
- * 获取日财神方位描述
- * @return string 财神方位描述,如东北
- */
-- (NSString *)getPositionCaiDesc
-{
-  return [self getDayPositionCaiDesc];
 }
 
 /**
@@ -1561,15 +1499,6 @@
 }
 
 /**
- * 获取冲描述
- * @return string 冲描述,如(壬申)猴
- */
-- (NSString *)getChongDesc
-{
-  return [self getDayChongDesc];
-}
-
-/**
  * 获取日冲描述
  * @return string 日冲描述,如(壬申)猴
  */
@@ -1585,15 +1514,6 @@
 - (NSString *)getTimeChongDesc
 {
     return [NSString stringWithFormat:@"(%@%@)%@", [self getTimeChongGan], [self getTimeChong], [self getTimeChongShengXiao]];
-}
-
-/**
- * 获取煞
- * @return string 煞,如北
- */
-- (NSString *)getSha
-{
-    return [self getDaySha];
 }
 
 /**
@@ -2053,7 +1973,7 @@
  * @param conditions array|null 过滤条件,如果设置过滤条件,仅返回匹配该名称的
  * @return JieQi|null 节气
  */
-- (JieQi *)getNearJieQi:(BOOL)forward :(NSArray *)conditions
+- (JieQi *)getNearJieQi:(BOOL)forward :(nullable NSArray *)conditions
 {
     NSString *name = nil;
     Solar *near = nil;
@@ -2372,9 +2292,9 @@
     [s appendString:@"]("];
     [s appendFormat:@"%@", [self getDayPositionCaiDesc]];
     [s appendString:@") 冲["];
-    [s appendFormat:@"%@", [self getChongDesc]];
+    [s appendFormat:@"%@", [self getDayChongDesc]];
     [s appendString:@"] 煞["];
-    [s appendFormat:@"%@", [self getSha]];
+    [s appendFormat:@"%@", [self getDaySha]];
     [s appendString:@"]"];
     return s;
 }
@@ -2918,19 +2838,19 @@
             d = 29;
         }
     } else if (9 <= month && month <= 12) {
-        NSInteger v = [[LunarUtil share].LUNAR_MONTH[2*index + 1] integerValue];
+        NSInteger v = [[LunarUtil share].LUNAR_MONTH[2*index+1] integerValue];
         NSInteger l = month - 9;
         if (((v >> l) & 0x01) == 1) {
             d = 29;
         }
     } else {
-        NSInteger v = [[LunarUtil share].LUNAR_MONTH[2*index + 1] integerValue];
+        NSInteger v = [[LunarUtil share].LUNAR_MONTH[2*index+1] integerValue];
         v = (v >> 4) & 0x0F;
         if (v != labs(month)) {
             d = 0;
         } else {
             d = 29;
-            for (NSNumber * i in [LunarUtil share].LUNAR_MONTH) {
+            for (NSNumber * i in [LunarUtil share].LEAP_MONTH_YEAR) {
                 if ([i integerValue] == index) {
                     d = 30;
                     break;
@@ -3904,15 +3824,6 @@
 }
 
 /**
- * 获取阴历对象
- * @return Lunar 阴历对象
- */
-- (Lunar *)getLunar
-{
-    return _lunar;
-}
-
-/**
  * 获取年柱
  * @return string 年柱
  */
@@ -4431,95 +4342,95 @@
     return [[LunarUtil share].NAYIN objectForKey:[self getShenGong]];
 }
 
-///**
-// * 获取运
-// * @param gender 性别,1男,0女
-// * @return Yun 运
-// */
-//- (Yun *)getYun:(NSInteger)gender
-//{
-//  return new Yun($this, $gender);
-//}
-//
-///**
-// * 获取年柱所在旬
-// * @return string 旬
-// */
-//- (NSString *)getYearXun
-//{
-//    return [_lunar getYearXunExact];
-//}
-//
-///**
-// * 获取年柱旬空(空亡)
-// * @return string 旬空(空亡)
-// */
-//- (NSString *) getYearXunKong
-//{
-//    return [_lunar getYearXunKongExact];
-//}
-//
-///**
-// * 获取月柱所在旬
-// * @return string 旬
-// */
-//- (NSString *)getMonthXun
-//{
-//    return [_lunar getMonthXunExact];
-//}
-//
-///**
-// * 获取月柱旬空(空亡)
-// * @return string 旬空(空亡)
-// */
-//- (NSString *)getMonthXunKong
-//{
-//    return [_lunar getMonthXunKongExact];
-//}
-//
-///**
-// * 获取日柱所在旬
-// * @return string 旬
-// */
-//- (NSString *)getDayXun
-//{
-//    if (_sect == 2) {
-//        return [_lunar getDayXunExact2];
-//    } else {
-//        return [_lunar getDayXunExact];
-//    }
-//}
-//
-///**
-// * 获取日柱旬空(空亡)
-// * @return string 旬空(空亡)
-// */
-//- (NSString *)getDayXunKong
-//{
-//    if (_sect == 2) {
-//        return [_lunar getDayXunKongExact2];
-//    } else {
-//        return [_lunar getDayXunKongExact];
-//    }
-//}
-//
-///**
-// * 获取时柱所在旬
-// * @return string 旬
-// */
-//- (NSString *)getTimeXun
-//{
-//    return [_lunar getTimeXun];
-//}
-//
-///**
-// * 获取时柱旬空(空亡)
-// * @return string 旬空(空亡)
-// */
-//- (NSString *)getTimeXunKong
-//{
-//    return [_lunar getTimeXunKong];
-//}
+/**
+ * 获取运
+ * @param gender 性别,1男,0女
+ * @return Yun 运
+ */
+- (Yun *)getYun:(NSInteger)gender
+{
+    return [[Yun alloc] initWith:self :gender];
+}
+
+/**
+ * 获取年柱所在旬
+ * @return string 旬
+ */
+- (NSString *)getYearXun
+{
+    return [_lunar getYearXunExact];
+}
+
+/**
+ * 获取年柱旬空(空亡)
+ * @return string 旬空(空亡)
+ */
+- (NSString *)getYearXunKong
+{
+    return [_lunar getYearXunKongExact];
+}
+
+/**
+ * 获取月柱所在旬
+ * @return string 旬
+ */
+- (NSString *)getMonthXun
+{
+    return [_lunar getMonthXunExact];
+}
+
+/**
+ * 获取月柱旬空(空亡)
+ * @return string 旬空(空亡)
+ */
+- (NSString *)getMonthXunKong
+{
+    return [_lunar getMonthXunKongExact];
+}
+
+/**
+ * 获取日柱所在旬
+ * @return string 旬
+ */
+- (NSString *)getDayXun
+{
+    if (_sect == 2) {
+        return [_lunar getDayXunExact2];
+    } else {
+        return [_lunar getDayXunExact];
+    }
+}
+
+/**
+ * 获取日柱旬空(空亡)
+ * @return string 旬空(空亡)
+ */
+- (NSString *)getDayXunKong
+{
+    if (_sect == 2) {
+        return [_lunar getDayXunKongExact2];
+    } else {
+        return [_lunar getDayXunKongExact];
+    }
+}
+
+/**
+ * 获取时柱所在旬
+ * @return string 旬
+ */
+- (NSString *)getTimeXun
+{
+    return [_lunar getTimeXun];
+}
+
+/**
+ * 获取时柱旬空(空亡)
+ * @return string 旬空(空亡)
+ */
+- (NSString *)getTimeXunKong
+{
+    return [_lunar getTimeXunKong];
+}
 
 
 @end
@@ -4928,15 +4839,6 @@
     return [NineStar share].SONG_TAI_YI[_index];
 }
 
-/**
- * 获取九星序号,从0开始
- * @return int 序号
- */
-- (NSInteger)getIndex
-{
-    return _index;
-}
-
 - (NSString *)toString
 {
     return [NSString stringWithFormat:@"%@%@%@%@", [self getNumber], [self getColor], [self getWuXing], [self getNameInBeiDou]];
@@ -4992,15 +4894,6 @@
  */
 @implementation ShuJiu
 
-- (instancetype)init
-{
-    self = [super init];
-    if (self) {
-        
-    }
-    return self;
-}
-
 - (instancetype)initWith:(NSString *)name :(NSInteger)index
 {
     self = [super init];
@@ -5055,7 +4948,6 @@
         NSDateFormatter *form = [NSDateFormatter new];
         form.dateFormat = @"yyyy-MM-dd HH:mm:ss";
         _calendar = [form dateFromString:s];
-        
     }
     return self;
 }
@@ -5255,7 +5147,15 @@
     return l;
 }
 
-
+- (NSString *)toString
+{
+    NSMutableString *s = [NSMutableString string];
+    [s appendFormat:@"%@", [self toYmdHms]];
+    [s appendString:@" "];
+    [s appendString:@"星期"];
+    [s appendFormat:@"%@", [self getWeekInChinese]];
+    return s;
+}
 
 - (NSString *)toFullString
 {
@@ -6008,7 +5908,6 @@
     NSDateComponents *comps = [calendar components:NSCalendarUnitYear fromDate:date];
     return [[SolarYear alloc] initWith:comps.year];
 }
-
 
 /**
  * 获取本年的月份

--
Gitblit v1.9.1