GetMoneyVC.m 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325
  1. //
  2. // GetMoneyVC.m
  3. // yunbaolive
  4. //
  5. // Created by ybRRR on 2020/3/28.
  6. // Copyright © 2020 cat. All rights reserved.
  7. //
  8. #import "GetMoneyVC.h"
  9. //#import "profitTypeVC.h"
  10. #import "YBGetTypeListVC.h"
  11. #define kMaxLength 10
  12. @interface GetMoneyVC ()
  13. {
  14. UILabel *allVotesL;
  15. UILabel *nowVotesL;
  16. UITextField *votesT;
  17. UILabel *typeLabel;
  18. int cash_rate;
  19. UIButton *inputBtn;
  20. UILabel *tipsLabel;
  21. NSDictionary *typeDic;
  22. UIImageView *seletTypeImgView;
  23. }
  24. @end
  25. @implementation GetMoneyVC
  26. - (void)viewDidLoad {
  27. [super viewDidLoad];
  28. self.view.backgroundColor = UIColor.whiteColor;
  29. [self navtion];
  30. [self creatUI];
  31. }
  32. -(void)navtion{
  33. UIView *navtion = [[UIView alloc]initWithFrame:CGRectMake(0, 0, _window_width, 64 + statusbarHeight)];
  34. navtion.backgroundColor =UIColor.whiteColor;
  35. UILabel *label = [[UILabel alloc]init];
  36. label.text = YZMsg(@"提取收益");
  37. [label setFont:NaviTitle_Font];
  38. label.textColor = UIColor.blackColor;
  39. label.frame = CGRectMake(0, statusbarHeight,_window_width,84);
  40. label.textAlignment = NSTextAlignmentCenter;
  41. [navtion addSubview:label];
  42. UIButton *returnBtn = [UIButton buttonWithType:UIButtonTypeCustom];
  43. UIButton *bigBTN = [[UIButton alloc]initWithFrame:CGRectMake(0, statusbarHeight, _window_width/2, 64)];
  44. [bigBTN addTarget:self action:@selector(doReturn) forControlEvents:UIControlEventTouchUpInside];
  45. [navtion addSubview:bigBTN];
  46. returnBtn.frame = CGRectMake(8,24 + statusbarHeight,40,40);
  47. returnBtn.imageEdgeInsets = UIEdgeInsetsMake(12.5, 0, 12.5, 25);
  48. [returnBtn setImage:[UIImage imageNamed:@"pub_back_black"] forState:UIControlStateNormal];
  49. [returnBtn addTarget:self action:@selector(doReturn) forControlEvents:UIControlEventTouchUpInside];
  50. [navtion addSubview:returnBtn];
  51. UIButton *btnttttt = [UIButton buttonWithType:UIButtonTypeCustom];
  52. btnttttt.backgroundColor = [UIColor clearColor];
  53. [btnttttt addTarget:self action:@selector(doReturn) forControlEvents:UIControlEventTouchUpInside];
  54. btnttttt.frame = CGRectMake(0,0,100,64);
  55. [navtion addSubview:btnttttt];
  56. [PublicObj lineViewWithFrame:CGRectMake(0, navtion.height-1, _window_width, 1) andColor:RGB(245, 245, 245) andView:navtion];
  57. [self.view addSubview:navtion];
  58. }
  59. -(void)doReturn{
  60. [self.navigationController popViewControllerAnimated:YES];
  61. [self dismissViewControllerAnimated:YES completion:nil];
  62. }
  63. - (void)tapClick{
  64. [votesT resignFirstResponder];
  65. }
  66. - (void)creatUI{
  67. UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tapClick)];
  68. [self.view addGestureRecognizer:tap];
  69. //黄色背景图
  70. UIImageView *backImgView = [[UIImageView alloc]initWithFrame:CGRectMake(_window_width*0.04, 64+statusbarHeight+10, _window_width*0.92, _window_width*0.92*24/69)];
  71. backImgView.image = [UIImage imageNamed:@"profitBg"];
  72. [self.view addSubview:backImgView];
  73. for (int i = 0; i < 4; i++) {
  74. UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(backImgView.width/2*(i%2), backImgView.height/4*(i/2+1), backImgView.width/2, backImgView.height/4)];
  75. label.textAlignment = NSTextAlignmentCenter;
  76. label.textColor = [UIColor whiteColor];
  77. if (i<2) {
  78. label.font = [UIFont systemFontOfSize:15];
  79. if (i == 0) {
  80. label.text = YZMsg(@"累计收入");
  81. }else{
  82. label.text = YZMsg(@"可提取金额");
  83. [PublicObj lineViewWithFrame:CGRectMake(backImgView.width/2-0.5, backImgView.height/4, 1, backImgView.height/2) andColor:[UIColor whiteColor] andView:backImgView];
  84. }
  85. }else{
  86. label.font = [UIFont boldSystemFontOfSize:22];
  87. if (i == 2) {
  88. label.text = minstr([self.moneyDic valueForKey:@"balance_total"]);
  89. allVotesL = label;
  90. }else{
  91. label.text = minstr([self.moneyDic valueForKey:@"balance"]);
  92. nowVotesL = label;
  93. }
  94. }
  95. [backImgView addSubview:label];
  96. }
  97. //输入提现金额的视图
  98. UIView *textView = [[UIView alloc]initWithFrame:CGRectMake(backImgView.left, backImgView.bottom+10, backImgView.width, backImgView.height/2)];
  99. textView.backgroundColor = RGB(245, 245, 245);
  100. textView.layer.cornerRadius = 5.0;
  101. textView.layer.masksToBounds = YES;
  102. [self.view addSubview:textView];
  103. NSArray *arr = @[YZMsg(@"输入提取金额")];
  104. for (int i = 0; i<1; i++) {
  105. CGFloat labelW = [PublicObj widthOfString:arr[i] andFont:[UIFont systemFontOfSize:15] andHeight:textView.height];
  106. UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(textView.width*0.05, textView.height/2*i, labelW+20, textView.height)];
  107. label.textColor = [UIColor grayColor];
  108. label.font = [UIFont systemFontOfSize:15];
  109. label.text = arr[i];
  110. [textView addSubview:label];
  111. votesT = [[UITextField alloc]initWithFrame:CGRectMake(label.right, 0, textView.width*0.95-label.right, textView.height)];
  112. votesT.textColor = Pink_Cor;
  113. votesT.font = [UIFont boldSystemFontOfSize:17];
  114. votesT.placeholder = @"0";
  115. votesT.keyboardType = UIKeyboardTypeNumberPad;
  116. [textView addSubview:votesT];
  117. [[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(textFieldEditChanged:)
  118. name:@"UITextFieldTextDidChangeNotification" object:votesT];
  119. }
  120. //选择提现账户
  121. UIView *typeView = [[UIView alloc]initWithFrame:CGRectMake(backImgView.left, textView.bottom+10, backImgView.width, 50)];
  122. typeView.backgroundColor = RGB(245, 245, 245);
  123. typeView.layer.cornerRadius = 5.0;
  124. typeView.layer.masksToBounds = YES;
  125. [self.view addSubview:typeView];
  126. typeLabel = [[UILabel alloc]initWithFrame:CGRectMake(textView.width*0.05, 0, typeView.width*0.95-40, 50)];
  127. typeLabel.textColor = [UIColor grayColor];
  128. typeLabel.font = [UIFont systemFontOfSize:15];
  129. typeLabel.text = YZMsg(@"请选择提现账户");
  130. [typeView addSubview:typeLabel];
  131. seletTypeImgView = [[UIImageView alloc]initWithFrame:CGRectMake(typeLabel.left, 15, 20, 20)];
  132. seletTypeImgView.hidden = YES;
  133. [typeView addSubview:seletTypeImgView];
  134. UIImageView *rightImgView = [[UIImageView alloc]initWithFrame:CGRectMake(typeView.width-30, 18, 14, 14)];
  135. rightImgView.image = [UIImage imageNamed:@"person_right"];
  136. rightImgView.userInteractionEnabled = YES;
  137. [typeView addSubview:rightImgView];
  138. UIButton *btn = [UIButton buttonWithType:0];
  139. btn.frame = CGRectMake(0, 0, typeView.width, typeView.height);
  140. [btn addTarget:self action:@selector(selectPayType) forControlEvents:UIControlEventTouchUpInside];
  141. [typeView addSubview:btn];
  142. inputBtn = [UIButton buttonWithType:0];
  143. inputBtn.frame = CGRectMake(15, typeView.bottom + 50, _window_width - 30, 40);
  144. [inputBtn setBackgroundColor: Pink_Cor];
  145. [inputBtn setTitle:YZMsg(@"立即提现") forState:0];
  146. [inputBtn addTarget:self action:@selector(inputBtnClick) forControlEvents:UIControlEventTouchUpInside];
  147. inputBtn.titleLabel.font = [UIFont boldSystemFontOfSize:14];
  148. inputBtn.layer.cornerRadius = 20;
  149. inputBtn.layer.masksToBounds = YES;
  150. [self.view addSubview:inputBtn];
  151. tipsLabel = [[UILabel alloc]initWithFrame:CGRectMake(inputBtn.left+15, inputBtn.bottom + 15, inputBtn.width-30, 100)];
  152. tipsLabel.font = [UIFont systemFontOfSize:11];
  153. tipsLabel.textColor = RGB_COLOR(@"#666666", 1);
  154. tipsLabel.numberOfLines = 0;
  155. [self.view addSubview:tipsLabel];
  156. // [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(ChangeMoenyLabelValue) name:UITextFieldTextDidChangeNotification object:nil];
  157. }
  158. //选择z提现方式
  159. - (void)selectPayType{
  160. YBGetTypeListVC *vc = [[YBGetTypeListVC alloc]init];
  161. if ([typeDic allKeys].count>0) {
  162. vc.selectID = minstr([typeDic valueForKey:@"id"]);
  163. }else{
  164. vc.selectID = YZMsg(@"未选择提现方式");
  165. }
  166. YBWeakSelf;
  167. vc.block = ^(NSDictionary * _Nonnull dic) {
  168. typeDic = dic;
  169. if ([dic allKeys].count>0) {
  170. [Config saveCashAccount:typeDic];
  171. }
  172. [weakSelf updateShowAccount:dic];
  173. };
  174. [self.navigationController pushViewController:vc animated:YES];
  175. //zl----待修改
  176. // profitTypeVC *vc = [[profitTypeVC alloc]init];
  177. // if (typeDic) {
  178. // vc.selectID = minstr([typeDic valueForKey:@"id"]);
  179. // }else{
  180. // vc.selectID = YZMsg(@"未选择提现方式");
  181. // }
  182. // vc.block = ^(NSDictionary * _Nonnull dic) {
  183. // typeDic = dic;
  184. // seletTypeImgView.hidden = NO;
  185. // typeLabel.x = seletTypeImgView.right + 5;
  186. // int type = [minstr([dic valueForKey:@"type"]) intValue];
  187. // switch (type) {
  188. // case 1:
  189. // seletTypeImgView.image = [UIImage imageNamed:@"profit_alipay"];
  190. // typeLabel.text = [NSString stringWithFormat:@"%@(%@)",minstr([dic valueForKey:@"account"]),minstr([dic valueForKey:@"name"])];
  191. // break;
  192. // case 2:
  193. // seletTypeImgView.image = [UIImage imageNamed:@"profit_wx"];
  194. // typeLabel.text = [NSString stringWithFormat:@"%@",minstr([dic valueForKey:@"account"])];
  195. //
  196. // break;
  197. // case 3:
  198. // seletTypeImgView.image = [UIImage imageNamed:@"profit_card"];
  199. // typeLabel.text = [NSString stringWithFormat:@"%@(%@)",minstr([dic valueForKey:@"account"]),minstr([dic valueForKey:@"name"])];
  200. // break;
  201. //
  202. // default:
  203. // break;
  204. // }
  205. //
  206. // };
  207. // [self.navigationController pushViewController:vc animated:YES];
  208. }
  209. -(void)updateShowAccount:(NSDictionary *)dic {
  210. seletTypeImgView.hidden = NO;
  211. typeLabel.x = seletTypeImgView.right + 5;
  212. typeLabel.textColor = [UIColor blackColor];
  213. int type = [minstr([dic valueForKey:@"type"]) intValue];
  214. switch (type) {
  215. case 1:
  216. seletTypeImgView.image = [UIImage imageNamed:@"profit_zff"];
  217. typeLabel.text = [NSString stringWithFormat:@"%@(%@)",minstr([dic valueForKey:@"account"]),minstr([dic valueForKey:@"name"])];
  218. break;
  219. case 2:
  220. seletTypeImgView.image = [UIImage imageNamed:@"profit_wx"];
  221. typeLabel.text = [NSString stringWithFormat:@"%@",minstr([dic valueForKey:@"account"])];
  222. break;
  223. case 3:
  224. seletTypeImgView.image = [UIImage imageNamed:@"profit_card"];
  225. typeLabel.text = [NSString stringWithFormat:@"%@(%@)",minstr([dic valueForKey:@"account"]),minstr([dic valueForKey:@"name"])];
  226. break;
  227. default:{
  228. seletTypeImgView.hidden = YES;
  229. typeLabel.x = seletTypeImgView.left;
  230. typeLabel.text = YZMsg(@"请选择提现账户");
  231. typeLabel.textColor = RGB_COLOR(@"#646464", 1);
  232. }break;
  233. }
  234. }
  235. //提交申请
  236. - (void)inputBtnClick{
  237. if(!typeDic){
  238. [MBProgressHUD showError:YZMsg(@"请填写提现账户")];
  239. return;
  240. }
  241. NSString *url = [purl stringByAppendingFormat:@"?service=User.setShopCash"];
  242. NSDictionary *signdic = @{@"uid":[Config getOwnID],@"token":[Config getOwnToken],@"accountid":minstr([typeDic valueForKey:@"id"]),@"time":[NSNumber numberWithLong: (long)[[NSDate date] timeIntervalSince1970]]};
  243. NSString *sign = [PublicObj sortString:signdic];
  244. NSDictionary *dic = @{
  245. @"uid":[Config getOwnID],
  246. @"token":[Config getOwnToken],
  247. @"accountid":minstr([typeDic valueForKey:@"id"]),
  248. @"money":votesT.text,
  249. @"time":[NSNumber numberWithLong: (long)[[NSDate date] timeIntervalSince1970]],
  250. @"sign":sign,
  251. };
  252. [YBNetworking postWithUrl:@"User.setShopCash" Dic:dic Suc:^(int code, id info, NSString *msg) {
  253. if (code ==0) {
  254. [MBProgressHUD showError:msg];
  255. [[YBBaseAppDelegate sharedAppDelegate]popViewController:YES];
  256. }else{
  257. [MBProgressHUD showError:msg];
  258. }
  259. } Fail:^(id fail) {
  260. }];
  261. }
  262. - (void)ChangeMoenyLabelValue{
  263. if ([[NSString stringWithFormat:@"%lld",[votesT.text longLongValue]/cash_rate] integerValue] > 0) {
  264. inputBtn.userInteractionEnabled = YES;
  265. [inputBtn setBackgroundColor:Pink_Cor];
  266. }else{
  267. inputBtn.userInteractionEnabled = NO;
  268. [inputBtn setBackgroundColor:RGB_COLOR(@"#dcdcdc", 1)];
  269. }
  270. }
  271. -(void)textFieldEditChanged:(NSNotification *)obj{
  272. UITextField *textField = (UITextField *)obj.object;
  273. NSString *toBeString = textField.text;
  274. NSString *lang = [[UITextInputMode currentInputMode] primaryLanguage]; // 键盘输入模式
  275. if ([lang isEqualToString:@"zh-Hans"]) { // 简体中文输入,包括简体拼音,健体五笔,简体手写
  276. UITextRange *selectedRange = [textField markedTextRange]; //获取高亮部分
  277. UITextPosition *position = [textField positionFromPosition:selectedRange.start offset:0];
  278. // 没有高亮选择的字,则对已输入的文字进行字数统计和限制
  279. if (!position) {
  280. if (toBeString.length > kMaxLength) {
  281. textField.text = [toBeString substringToIndex:kMaxLength];
  282. }
  283. } // 有高亮选择的字符串,则暂不对文字进行统计和限制
  284. else{
  285. }
  286. } // 中文输入法以外的直接对其统计限制即可,不考虑其他语种情况 else{
  287. if (toBeString.length > kMaxLength) {
  288. textField.text = [toBeString substringToIndex:kMaxLength];
  289. }
  290. }
  291. @end