QuizViewController.m 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. //
  2. // QuizViewController.m
  3. // OneCable
  4. //
  5. // Created by nComz on 2017. 3. 17..
  6. // Copyright © 2017년 ntels. All rights reserved.
  7. //
  8. #import "QuizViewController.h"
  9. #import "CustomButton.h"
  10. #import "CustomTextField.h"
  11. #import "RequestHandler.h"
  12. /**
  13. 해당 메뉴는 멤버만 출력
  14. **/
  15. @interface QuizViewController () <CustomTextFieldDelegate>{
  16. }
  17. @end
  18. @implementation QuizViewController
  19. - (void)viewDidLoad {
  20. [super viewDidLoad];
  21. [self initUI];
  22. [self requsetMasterQuiz];
  23. }
  24. - (void)viewWillAppear:(BOOL)animated {
  25. [super viewWillAppear:animated];
  26. [self requsetMasterQuiz];
  27. }
  28. - (void)initUI {
  29. [self.navigationController.navigationBar setHidden:YES];
  30. self.navigationController.interactivePopGestureRecognizer.enabled = NO;
  31. _btnNext.enabled = NO;
  32. [_lblStep setColor:kUITextColor03 text:[NSString stringWithFormat:@"%@", @"/ 5"]];
  33. _txtYear.delegate = self;
  34. _txtMonth.delegate = self;
  35. _txtDay.delegate = self;
  36. _txtYear.keyboardType = UIKeyboardTypeNumberPad;
  37. _txtMonth.keyboardType = UIKeyboardTypeNumberPad;
  38. _txtDay.keyboardType = UIKeyboardTypeNumberPad;
  39. _txtYear.returnKeyType = UIReturnKeyNext;
  40. _txtMonth.returnKeyType = UIReturnKeyNext;
  41. _txtDay.returnKeyType = UIReturnKeyDone;
  42. }
  43. - (void)requestAnswerQuiz{
  44. NSString *answer = [NSString stringWithFormat:@"%@%@%@",_txtYear.text,_txtMonth.text,_txtDay.text];
  45. //parameters
  46. NSDictionary *parameter = @{@"phone": @"01054075080" ,
  47. @"answer": answer};
  48. NSString *path = [[JDFacade facade] getUrlWithCustAndGroupID:API_POST_QUIZ_SEND arguments:nil];
  49. [[RequestHandler handler] sendAsyncPostRequestAPIPath:path parameters:parameter modelClass:[JDJSONModel class] completion:^(id responseObject) {
  50. UIViewController *vc = [CommonUtil instantiateViewControllerWithIdentifier:@"IDSetViewController" storyboardName:@"SignUp"];
  51. [self.navigationController pushViewController:vc animated:YES];
  52. } failure:^(id errorObject) {
  53. JDErrorModel *error = (JDErrorModel *)errorObject;
  54. [[JDFacade facade] alert:error.errorMessage];
  55. }];
  56. }
  57. - (void)requsetMasterQuiz {
  58. //parameters
  59. NSDictionary *parameter = @{@"phone": @"01054075080"};
  60. NSString *path = [[JDFacade facade]getUrlWithCustAndGroupID:API_POST_REQUEST_QUIZ
  61. arguments:nil];
  62. [[RequestHandler handler] sendAsyncPostRequestAPIPath:path parameters:parameter modelClass:[LoginModel class] completion:^(id responseObject) {
  63. LoginModel *loginModel = (LoginModel *) responseObject;
  64. _lblQuiz.text = loginModel.quiz;
  65. NSLog(@"Response1 : %@",responseObject);
  66. NSLog(@"Response2 : %@",loginModel.quiz);
  67. } failure:^(id errorObject) {
  68. JDErrorModel *error = (JDErrorModel *)errorObject;
  69. [[JDFacade facade] alert:error.errorMessage];
  70. }];
  71. }
  72. - (IBAction)btnNextTouched:(id)sender {
  73. [self requestAnswerQuiz];
  74. }
  75. - (IBAction)btnCancelTouched:(id)sender {
  76. [self dismissViewControllerAnimated:YES completion:nil];
  77. }
  78. - (void)textFieldDidEndEditing:(UITextField *)textField{
  79. if (_txtYear.text.length >= 4 && _txtMonth.text.length >= 2 && _txtDay.text.length >=2){
  80. _btnNext.enabled = YES;
  81. } else {
  82. _btnNext.enabled = NO;
  83. }
  84. }
  85. - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
  86. if ([textField isEqual:_txtYear]) {
  87. if (textField.text.length >= 4 && range.length == 0) {
  88. return NO;
  89. }
  90. } else if([textField isEqual:_txtMonth]){
  91. if (textField.text.length >= 2 && range.length == 0) {
  92. return NO;
  93. }
  94. } else if ([textField isEqual:_txtDay]){
  95. if (textField.text.length >= 2 && range.length == 0) {
  96. return NO;
  97. }
  98. }
  99. return YES;
  100. }
  101. - (void)didReceiveMemoryWarning {
  102. [super didReceiveMemoryWarning];
  103. }
  104. @end