YOUPAIHRBillDetailVC.m 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174
  1. //
  2. // YOUPAIHRBillDetailVC.m
  3. // VQU
  4. //
  5. // Created by xiaohaoran on 2021/10/27.
  6. // Copyright © 2021 MS. All rights reserved.
  7. //
  8. #import "YOUPAIHRBillDetailVC.h"
  9. #import "JXCategoryView.h"
  10. #import "YOUPAIJXCategoryTitleBackgroundView.h"
  11. #import "JXPagerView.h"
  12. #import "YOUPAIHRBillSubDetailVC.h"
  13. #import "PGDatePickManager.h"
  14. #define LZCategoryViewHeight 44.0f
  15. //#define LZCategoryViewItemWidth 12.0f
  16. @interface YOUPAIHRBillDetailVC ()<JXCategoryViewDelegate,JXPagerViewDelegate,JXCategoryListContainerViewDelegate>
  17. @property (nonatomic, weak) JXCategoryListContainerView *youpaippagerView;
  18. @property (nonatomic, strong) JXCategoryTitleView *youpaipcategoryView;
  19. @property (strong, nonatomic) NSArray *youpaiptitlesArr;
  20. @property (nonatomic, strong) NSMutableArray *youpaipdotStates;
  21. @property(nonatomic,strong)NSString *youpaipdate;
  22. @end
  23. @implementation YOUPAIHRBillDetailVC
  24. - (void)viewDidLoad {
  25. [super viewDidLoad];
  26. self.title = LCStr(word5);//@"收支明细";
  27. if ([LCSaveData getWhiteVersion]) {
  28. self.youpaiptitlesArr = @[@""];
  29. }else{
  30. self.youpaiptitlesArr = @[@"钻石",LCStr(word45)];
  31. }
  32. [self youpaifsetupUI];
  33. [self youpaifrightBtn];
  34. self.view.backgroundColor = [UIColor whiteColor];
  35. }
  36. -(void)youpaifrightBtn{
  37. self.navigationItem.rightBarButtonItem = [UIBarButtonItem itemWithTarget:self action:@selector(youpaifselectDateAction) title:@"筛选" font:LCFont14 titleColor:LZA3AABEColor highlightedColor:LZA3AABEColor titleEdgeInsets:UIEdgeInsetsZero];
  38. }
  39. - (void)datePicker:(PGDatePicker *)datePicker didSelectDate:(NSDateComponents *)dateComponents{
  40. NSLog(@"dateComponents = %@", dateComponents);
  41. NSInteger year=[dateComponents year];
  42. NSInteger month=[dateComponents month];
  43. self.youpaipdate = [NSString stringWithFormat:@"%ld-%ld",year,month];
  44. [[NSNotificationCenter defaultCenter]postNotificationName:@"changSelectDate" object:nil userInfo:@{@"date":self.youpaipdate}];
  45. }
  46. //选择时间
  47. -(void)youpaifselectDateAction{
  48. PGDatePickManager *datePickManager = [[PGDatePickManager alloc]init];
  49. datePickManager.isShadeBackground = true;
  50. datePickManager.cancelButtonFont = LCFont(15);
  51. datePickManager.confirmButtonFont = LCFont(15);
  52. datePickManager.cancelButtonTextColor = LZA3AABEColor;
  53. datePickManager.confirmButtonTextColor = LZ273145Color;
  54. datePickManager.headerViewBackgroundColor = [UIColor whiteColor];
  55. datePickManager.headerHeight = 50;
  56. PGDatePicker *datePicker = datePickManager.datePicker;
  57. datePicker.backgroundColor = [UIColor whiteColor];
  58. datePicker.rowHeight = 35;
  59. datePicker.middleTextColor = LZ273145Color;
  60. datePicker.textColorOfSelectedRow = LZ273145Color;
  61. datePicker.textColorOfOtherRow = LZD3D1D7Color;
  62. datePicker.textFontOfSelectedRow = LCFont(17);
  63. datePicker.textFontOfOtherRow = LCFont(17);
  64. datePicker.lineBackgroundColor = [UIColor clearColor];
  65. NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
  66. NSDate* currentDate = [NSDate date];
  67. [dateFormatter setDateFormat:@"yyyy"];
  68. NSString* currentYear=[dateFormatter stringFromDate:currentDate] ;
  69. [dateFormatter setDateFormat:@"MM"];
  70. NSString* currentMonth=[dateFormatter stringFromDate:currentDate];
  71. NSString* maxDateStr = [NSString stringWithFormat:@"%zd-%@",[currentYear integerValue],currentMonth];
  72. NSString* minDateStr = [NSString stringWithFormat:@"%zd-%@",[currentYear integerValue]-50,currentMonth];
  73. [dateFormatter setDateFormat:@"yyyy-MM"];
  74. NSString* defaultDateStr;
  75. NSDate *date = [dateFormatter dateFromString:defaultDateStr];//上次设置的日期
  76. [datePicker setDate:date];
  77. datePicker.maximumDate = [dateFormatter dateFromString:maxDateStr];
  78. datePicker.minimumDate = [dateFormatter dateFromString:minDateStr];
  79. datePicker.delegate = self;
  80. datePicker.datePickerType = PGDatePickerTypeLine;
  81. datePicker.isHiddenMiddleText = false;
  82. datePicker.datePickerMode = PGDatePickerModeYearAndMonth;
  83. [self presentViewController:datePickManager animated:false completion:nil];
  84. }
  85. -(void)youpaifsetupUI{
  86. UIView *bgV = [[UIView alloc] init];
  87. [self.view addSubview:bgV];
  88. [bgV mas_makeConstraints:^(MASConstraintMaker *make) {
  89. make.top.mas_equalTo(NavBarHeight);
  90. make.left.mas_equalTo(0);
  91. make.right.mas_equalTo(0);
  92. make.height.mas_equalTo(LZCategoryViewHeight);
  93. }];
  94. YOUPAIJXCategoryTitleBackgroundView *youpaipcategoryView = [[YOUPAIJXCategoryTitleBackgroundView alloc] init];
  95. youpaipcategoryView.backgroundColor = [UIColor clearColor];
  96. youpaipcategoryView.titles = self.youpaiptitlesArr;
  97. youpaipcategoryView.delegate = self;
  98. youpaipcategoryView.titleSelectedColor = [UIColor whiteColor];
  99. youpaipcategoryView.titleColor = LZ273145Color;
  100. youpaipcategoryView.titleColorGradientEnabled = YES;
  101. youpaipcategoryView.titleFont = LCFont(12.0f);
  102. youpaipcategoryView.titleSelectedFont = LCBoldFont(12.0f);
  103. youpaipcategoryView.cellWidth = 65.0f;
  104. youpaipcategoryView.cellSpacing = 0.01f;
  105. youpaipcategoryView.normalBackgroundColor = [UIColor clearColor];
  106. if ([LCSaveData getWhiteVersion]) {
  107. youpaipcategoryView.selectedBackgroundColor = [UIColor colorWithPatternImage:[LCTools ColorImage:CGSizeMake(65.0f, 25.0f) FromColors:@[LCWhiteColor,LCWhiteColor] ByGradientType:GradientLeftToRight]];
  108. }else{
  109. youpaipcategoryView.selectedBackgroundColor = [UIColor colorWithPatternImage:[LCTools ColorImage:CGSizeMake(65.0f, 25.0f) FromColors:@[LZBFB6FFColor,LZ7C69FEColor] ByGradientType:GradientLeftToRight]];
  110. }
  111. youpaipcategoryView.averageCellSpacingEnabled = NO;
  112. youpaipcategoryView.normalBorderColor = [UIColor clearColor];
  113. youpaipcategoryView.selectedBorderColor = [UIColor clearColor];
  114. youpaipcategoryView.borderLineWidth = 0;
  115. youpaipcategoryView.backgroundCornerRadius = 12.5f;
  116. youpaipcategoryView.backgroundWidth = 65.0f;
  117. youpaipcategoryView.backgroundHeight = 25.0f;
  118. [bgV addSubview:youpaipcategoryView];
  119. self.youpaipcategoryView = youpaipcategoryView;
  120. [youpaipcategoryView mas_makeConstraints:^(MASConstraintMaker *make) {
  121. make.top.bottom.offset(0.0f);
  122. make.centerX.equalTo(bgV);
  123. make.width.offset(65.0f * 2.0f + 40.0f);
  124. }];
  125. JXCategoryListContainerView *pagerView = [[JXCategoryListContainerView alloc] initWithType:JXCategoryListContainerType_CollectionView delegate:self];
  126. pagerView.listCellBackgroundColor = [UIColor clearColor];
  127. [self.view addSubview:pagerView];
  128. [pagerView mas_makeConstraints:^(MASConstraintMaker *make) {
  129. make.top.mas_equalTo(bgV.mas_bottom).offset(0);
  130. make.left.mas_equalTo(0);
  131. make.right.mas_equalTo(0);
  132. make.bottom.mas_equalTo(-SafeHeight);
  133. }];
  134. self.youpaippagerView = pagerView;
  135. self.youpaipcategoryView.listContainer = self.youpaippagerView;
  136. }
  137. // 返回列表的数量
  138. - (NSInteger)numberOfListsInlistContainerView:(JXCategoryListContainerView *)listContainerView {
  139. return self.youpaiptitlesArr.count;
  140. }
  141. // 根据下标 index 返回对应遵守并实现 `JXCategoryListContentViewDelegate` 协议的列表实例
  142. - (id<JXCategoryListContentViewDelegate>)listContainerView:(JXCategoryListContainerView *)listContainerView initListForIndex:(NSInteger)index {
  143. // 0:全部 1:收益 2:支出 3:其他
  144. NSArray *typeArr = @[@"2",@"1"];
  145. NSArray *newtypeArr = @[@"1",@"2"];
  146. YOUPAIHRBillSubDetailVC *vc = [YOUPAIHRBillSubDetailVC new];
  147. vc.youpaiptype = typeArr[index];
  148. vc.newtype = newtypeArr[index];
  149. vc.youpaipcate_id = self.youpaipcate_id;
  150. return vc;
  151. }
  152. @end