| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223 |
- //
- // MultiHomeHubViewController.m
- // OneCable
- //
- // Created by nComz on 2017. 5. 11..
- // Copyright © 2017년 ntels. All rights reserved.
- //
- #import "MultiHomeHubViewController.h"
- #import "RequestHandler.h"
- #import "DeviceModel.h"
- #import "CustomTableView.h"
- #import "CustomButton.h"
- #import "Reachability.h"
- #import "HomeHubViewController.h"
- /**
-
- 네트워크, 동글 On / Off 이미지
- On : img_homehub_list_connect
- Off : img_homehub_list_notconnect
-
- 업데이트 On / Off 이미지
- On : img_homehub_list_update_on
- Off : img_homehub_list_update_off
- **/
- @interface MultiHomeHubViewController ()
- {
- UIImage *_imgOnline, *_imgOffLine, *_imgUptOn, *_imgUptOff;
- }
- @end
- @implementation MultiHomeHubTableViewCell
- - (void)didMoveToSuperview {
-
- // [self layoutIfNeeded];
- }
- @end
- @implementation MultiHomeHubViewController
- - (void)viewDidLoad {
- [super viewDidLoad];
-
- [self initUI];
- [self prepareViewDidLoad];
-
- }
- - (void)initUI {
-
- UIView *statusBar = [[[UIApplication sharedApplication] valueForKey:@"statusBarWindow"] valueForKey:@"statusBar"];
- statusBar.backgroundColor = [UIColor whiteColor];
-
- [self.navigationController.navigationBar setHidden:YES];
- self.navigationController.interactivePopGestureRecognizer.enabled = NO;
-
- [self initTableViewAsDefaultStyle:_tableView];
- }
- - (void)prepareViewDidLoad {
-
- _imgOnline = [UIImage imageNamed:@"img_homehub_list_connect"];
- _imgOffLine = [UIImage imageNamed:@"img_homehub_list_notconnect"];
- _imgUptOn = [UIImage imageNamed:@"img_homehub_list_update_on"];
- _imgUptOff = [UIImage imageNamed:@"img_homehub_list_update_off"];
- }
- - (void)viewWillAppear:(BOOL)animated {
-
- [super viewWillAppear:animated];
-
- NSLog(@"multi home hub view will appear");
-
- [_tableView reloadData];
-
- UIViewController *vc = [CommonUtil currentViewController];
- NSLog(@"CommonUtil currentViewController : %@", [CommonUtil currentViewController]);
- }
- - (void)operationComplite {
-
- NSLog(@"multi home hub operation complite");
-
- if (_closeWhenOperationComplite)
- [self btnCloseTouched:nil];
-
- }
- #pragma mark - TableView Delegate
- - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
- return 1;
- }
- - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
- return [[JDFacade facade].loginUser.deviceList count];
- }
- - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
-
- CGFloat height = 151.0f;
-
- return height;
- }
- - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
-
- DeviceModel *info = [[JDFacade facade].loginUser.deviceList objectAtIndex:indexPath.row];
-
- MultiHomeHubTableViewCell *cell = (MultiHomeHubTableViewCell *)[tableView dequeueReusableCellWithIdentifier:@"MultiHubCellIdentifier"];
-
- cell.lblTitle.text = [NSString stringWithFormat:@"%@", info.deviceName];
- cell.btnHubDetail.tag = indexPath.row;
-
- // 네트워크 연결상태 확인
- if ([info isDeviceConn]) {
- cell.imgNetwork.image = _imgOnline;
- } else {
- cell.imgNetwork.image = _imgOffLine;
- }
- // Z-Wave 동작상태 확인
- if (info.isDeviceOnlined) {
- cell.imgDongle.image = _imgOnline;
- } else {
- cell.imgDongle.image = _imgOffLine;
- }
-
- if ([info isUpdateNeed]) {
- cell.imgUpdate.image = _imgUptOn;
- } else {
- cell.imgUpdate.image = _imgUptOff;
- }
-
-
- return cell;
- }
- - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
- [tableView deselectRowAtIndexPath:indexPath animated:NO];
-
- [self showHomeHubDetail:indexPath];
- }
- - (IBAction)btnHubDetail:(id)sender {
- UIButton *senderButton = (UIButton *)sender;
-
- NSIndexPath *indexPath = [NSIndexPath indexPathForRow:senderButton.tag inSection:0];
-
- [self showHomeHubDetail:indexPath];
- }
- -(void)showHomeHubDetail:(NSIndexPath *)indexPath
- {
- DeviceModel *info = [[JDFacade facade].loginUser.deviceList objectAtIndex:indexPath.row];
-
- HomeHubViewController *vc = (HomeHubViewController *)[CommonUtil instantiateViewControllerWithIdentifier:@"HomeHubViewController" storyboardName:@"Main"];
- vc.selectHub = info;
-
- [self.navigationController pushViewController:vc animated:YES];
-
- // vc.providesPresentationContextTransitionStyle = YES;
- // vc.definesPresentationContext = YES;
- //
- // [vc setModalPresentationStyle:UIModalPresentationOverCurrentContext];
- //
- // UIViewController *pvc = self.presentingViewController;
- // [self dismissViewControllerAnimated:NO completion:^{//TODO : UI Confirm with Mr.Mo
- // [pvc presentViewController:vc animated:YES completion:nil];
- // }];
-
- // UIViewController *pvc = self.presentingViewController;
- // [self dismissViewControllerAnimated:NO completion:^{
- // [pvc presentViewController:vc animated:YES completion:nil];
- // }];
- //
- // [self presentViewController:vc animated:YES completion:nil];
- }
- - (IBAction)btnCloseTouched:(id)sender {
- [self dismissViewControllerAnimated:YES completion:nil];
- }
- - (void)didReceiveMemoryWarning {
- [super didReceiveMemoryWarning];
- }
- #pragma mark - SocketService
- -(void) receiveSocketData:(NSNotification *)notification {
-
- SocketModel *result = [[SocketModel alloc] initWithDictionary:notification.object error:nil];
- //NSLog(@"receiveSocketData Result : %@", result);
-
- [self processSocket:result];
- }
- - (void) socketDidReceiveMessage:(id)message result:(SocketModel *)result {
-
- //NSLog(@"receiveSocketData Result : %@", result);
-
- [self processSocket:result];
- }
- - (void)processSocket:(SocketModel*)result {
-
- if (EQUALS(result.messageType, MSG_TYPE_DEVICE_CONN) ||
- EQUALS(result.messageType, MSG_TYPE_DEVICE_CONTENT)) {
-
- [_tableView reloadData];
- }
- }
- @end
|