空置页面和设置页面调试通过
This commit is contained in:
+45
@@ -0,0 +1,45 @@
|
||||
//
|
||||
// RuiMeiBackMsgUtils.h
|
||||
// Ifish
|
||||
//
|
||||
// Created by Minghao Xue on 2018/4/14.
|
||||
// Copyright © 2018年 lianlian. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "RuiMeiProtocolModel.h"
|
||||
|
||||
#define DataCenterRuiMeiModelKey @"DataCenterRuiMeiModelKey"
|
||||
|
||||
@interface RuiMeiBackMsgUtils : NSObject
|
||||
|
||||
/**
|
||||
* save soket massage control
|
||||
*/
|
||||
+(void)readSoketDataWithBaackMassgModel:(RuiMeiProtocolModel*)ruSunModel
|
||||
addWithBackData:(NSData*)data;
|
||||
|
||||
/**
|
||||
* setTemperaturelabel
|
||||
*/
|
||||
+(void)setTemperaturelabel:(UILabel*)temperaturelabel
|
||||
addbubleImge:(UIImageView*)bubleImg
|
||||
WithBackData:(NSData*)data
|
||||
addWithBackMassageModel:(RuiMeiProtocolModel*)backModel
|
||||
addWithTableview:(UITableView*)tableview;
|
||||
/**
|
||||
* light state
|
||||
*/
|
||||
|
||||
+(void)resetRuSunCHState:(UIButton*)ch1
|
||||
ch2:(UIButton*)ch2
|
||||
ch3:(UIButton*)ch3
|
||||
ch4:(UIButton*)ch4
|
||||
andJiaRe:(UIButton*)jiaReBang
|
||||
withBackModel:(RuiMeiProtocolModel*)backModel;
|
||||
/**
|
||||
* refresh setViewData
|
||||
*/
|
||||
+(NSArray*)refreshRuSunTimerAddTemperatureWithBackMassageModel:(RuiMeiProtocolModel*)backModel;
|
||||
|
||||
@end
|
||||
+232
@@ -0,0 +1,232 @@
|
||||
//
|
||||
// RuiMeiBackMsgUtils.m
|
||||
// Ifish
|
||||
//
|
||||
// Created by Minghao Xue on 2018/4/14.
|
||||
// Copyright © 2018年 lianlian. All rights reserved.
|
||||
//
|
||||
|
||||
#import "RuiMeiBackMsgUtils.h"
|
||||
|
||||
@implementation RuiMeiBackMsgUtils
|
||||
|
||||
+(void)readSoketDataWithBaackMassgModel:(RuiMeiProtocolModel*)ruSunModel
|
||||
addWithBackData:(NSData*)data
|
||||
{
|
||||
|
||||
NSString*totalString=[dataContorl dataToHexString:data];
|
||||
//无运行模式
|
||||
ruSunModel.ch1=[totalString substringWithRange:NSMakeRange(30, 4)];
|
||||
ruSunModel.ch2=[totalString substringWithRange:NSMakeRange(34, 4)];
|
||||
ruSunModel.ch3 = [totalString substringWithRange:NSMakeRange(38, 4)];
|
||||
ruSunModel.ch4 = [totalString substringWithRange:NSMakeRange(42, 4)];
|
||||
ruSunModel.customModel = [totalString substringWithRange:NSMakeRange(46, 4)];
|
||||
ruSunModel.timer1=[totalString substringWithRange:NSMakeRange(50,12)];
|
||||
ruSunModel.timer2=[totalString substringWithRange:NSMakeRange(62, 12)];
|
||||
ruSunModel.timer3=[totalString substringWithRange:NSMakeRange(74, 12)];
|
||||
ruSunModel.timer4=[totalString substringWithRange:NSMakeRange(86, 12)];
|
||||
ruSunModel.timer5=[totalString substringWithRange:NSMakeRange(98, 12)];
|
||||
ruSunModel.timer6=[totalString substringWithRange:NSMakeRange(110, 12)];
|
||||
ruSunModel.timer7=[totalString substringWithRange:NSMakeRange(122, 12)];
|
||||
ruSunModel.timer8=[totalString substringWithRange:NSMakeRange(134, 12)];
|
||||
ruSunModel.heatStickState=[totalString substringWithRange:NSMakeRange(146, 2)];//16进制型
|
||||
ruSunModel.wendu=[totalString substringWithRange:NSMakeRange(148, 4)];
|
||||
ruSunModel.heatTemperature=[totalString substringWithRange:NSMakeRange(152, 4)];
|
||||
ruSunModel.shiwen = [totalString substringWithRange:NSMakeRange(156, 4)];
|
||||
ruSunModel.baojingSwitch=[totalString substringWithRange:NSMakeRange(160, 2)];
|
||||
ruSunModel.miniTp=[totalString substringWithRange:NSMakeRange(162, 4)];
|
||||
ruSunModel.maxTp=[totalString substringWithRange:NSMakeRange(166, 4)];
|
||||
ruSunModel.funcCode= [totalString substringWithRange:NSMakeRange(170, 4)];
|
||||
[[DataCenter defaultDtacenter] setValue:ruSunModel forKey:DataCenterRuiMeiModelKey];
|
||||
|
||||
}
|
||||
|
||||
+(void)setTemperaturelabel:(UILabel*)temperaturelabel
|
||||
addbubleImge:(UIImageView*)bubleImg
|
||||
WithBackData:(NSData*)data
|
||||
addWithBackMassageModel:(RuiMeiProtocolModel*)backModel
|
||||
addWithTableview:(UITableView*)tableview
|
||||
{
|
||||
|
||||
|
||||
NSString*str=[dataContorl dataToHexString:data];
|
||||
str=[str substringWithRange:NSMakeRange(148,4)];
|
||||
UInt64 mac=[dataContorl hexToTen:str];
|
||||
float TPlabel=mac/10+(mac%10)*0.1;
|
||||
NSString *stringFloat = [NSString stringWithFormat:@"%.1f",TPlabel];
|
||||
NSLog(@"%@",stringFloat);
|
||||
dispatch_async(dispatch_get_main_queue(), ^{
|
||||
if (mac==0) {
|
||||
|
||||
temperaturelabel.text=@"00.0";
|
||||
|
||||
}else{
|
||||
|
||||
temperaturelabel.text=stringFloat;
|
||||
}
|
||||
});
|
||||
}
|
||||
+(void)resetRuSunCHState:(UIButton*)ch1
|
||||
ch2:(UIButton*)ch2
|
||||
ch3:(UIButton*)ch3
|
||||
ch4:(UIButton*)ch4
|
||||
andJiaRe:(UIButton*)jiaReBang
|
||||
withBackModel:(RuiMeiProtocolModel*)backModel
|
||||
{
|
||||
|
||||
// ch1
|
||||
|
||||
NSString*stateString1=[backModel.ch1 substringWithRange:NSMakeRange(2, 2)];
|
||||
|
||||
if ([stateString1 isEqualToString:@"01"]) {
|
||||
[ch1 setImage:[UIImage imageNamed:@"PFLight1_on"] forState:UIControlStateNormal];
|
||||
ch1.selected=YES;
|
||||
}else{
|
||||
[ch1 setImage:[UIImage imageNamed:@"PFLight1_off"] forState:UIControlStateNormal];
|
||||
ch1.selected=NO;
|
||||
|
||||
}
|
||||
// ch2
|
||||
|
||||
NSString*stateString2=[backModel.ch2 substringWithRange:NSMakeRange(2, 2)];
|
||||
|
||||
if ([stateString2 isEqualToString:@"01"]) {
|
||||
[ch2 setImage:[UIImage imageNamed:@"PFLight1_on"] forState:UIControlStateNormal];
|
||||
ch2.selected=YES;
|
||||
}else{
|
||||
[ch2 setImage:[UIImage imageNamed:@"PFLight1_off"] forState:UIControlStateNormal];
|
||||
ch2.selected=NO;
|
||||
}
|
||||
|
||||
// ch3
|
||||
|
||||
NSString*stateString3=[backModel.ch3 substringWithRange:NSMakeRange(2, 2)];
|
||||
|
||||
if ([stateString3 isEqualToString:@"01"]){
|
||||
|
||||
[ch3 setImage:[UIImage imageNamed:@"PFkilLlight_on"] forState:UIControlStateNormal];
|
||||
ch3.selected=YES;
|
||||
|
||||
}else{
|
||||
[ch3 setImage:[UIImage imageNamed:@"PFkilLlight_off"] forState:UIControlStateNormal];
|
||||
ch3.selected=NO;
|
||||
|
||||
}
|
||||
|
||||
// ch4
|
||||
|
||||
NSString*stateString4=[backModel.ch4 substringWithRange:NSMakeRange(2, 2)];
|
||||
|
||||
if ([stateString4 isEqualToString:@"01"]){
|
||||
|
||||
[ch4 setImage:[UIImage imageNamed:@"O2_on"] forState:UIControlStateNormal];
|
||||
ch4.selected=YES;
|
||||
|
||||
}else{
|
||||
[ch4 setImage:[UIImage imageNamed:@"O2_off"] forState:UIControlStateNormal];
|
||||
ch4.selected=NO;
|
||||
|
||||
}
|
||||
|
||||
// 加热制冷 状态 1字节
|
||||
NSString*stateString6=[backModel.heatStickState substringWithRange:NSMakeRange(0, 2)];
|
||||
|
||||
if ([stateString6 isEqualToString:@"01"]){
|
||||
//加热
|
||||
[jiaReBang setImage:[UIImage imageNamed:@"JiaReBang_on"] forState:UIControlStateNormal];
|
||||
jiaReBang.selected=YES;
|
||||
|
||||
}else{
|
||||
//制冷
|
||||
|
||||
[jiaReBang setImage:[UIImage imageNamed:@"JiaReBang_off"] forState:UIControlStateNormal];
|
||||
jiaReBang.selected=NO;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+(NSArray*)refreshRuSunTimerAddTemperatureWithBackMassageModel:(RuiMeiProtocolModel*)backModel
|
||||
{
|
||||
NSArray*timerArr=[[NSArray alloc]init];
|
||||
NSString*low=backModel.miniTp;
|
||||
NSString*heigh=backModel.maxTp;
|
||||
UInt64 lowten=[dataContorl hexToTen:low];
|
||||
UInt64 heighten=[dataContorl hexToTen:heigh];
|
||||
float formatlow=lowten/10;
|
||||
float formatheigh=heighten/10;
|
||||
|
||||
NSString*wenduString=[NSString stringWithFormat:@"%.0f~%.0f°C",formatlow,formatheigh];
|
||||
|
||||
// 十六进制
|
||||
NSString*startTimeHex1=[backModel.timer1 substringWithRange:NSMakeRange(4, 4)];
|
||||
NSString*endTimeHex1=[backModel.timer1 substringWithRange:NSMakeRange(8, 4)];
|
||||
|
||||
// 十进制
|
||||
NSString*startTimeTen1=[dataContorl hexStringToDateString:startTimeHex1];
|
||||
NSString*endTimeTen1=[dataContorl hexStringToDateString:endTimeHex1];
|
||||
NSString*setTim1=[NSString stringWithFormat:@"%@~%@",startTimeTen1,endTimeTen1];
|
||||
// 十六进制
|
||||
NSString*startTimeHex2=[backModel.timer2 substringWithRange:NSMakeRange(4, 4)];
|
||||
NSString*endTimeHex2=[backModel.timer2 substringWithRange:NSMakeRange(8, 4)];
|
||||
// 十进制
|
||||
NSString*startTimeTen2=[dataContorl hexStringToDateString:startTimeHex2];
|
||||
NSString*endTimeTen2=[dataContorl hexStringToDateString:endTimeHex2];
|
||||
NSString*setTim2=[NSString stringWithFormat:@"%@~%@",startTimeTen2,endTimeTen2];
|
||||
|
||||
// 十六进制
|
||||
NSString*startTimeHex3=[backModel.timer3 substringWithRange:NSMakeRange(4, 4)];
|
||||
NSString*endTimeHex3=[backModel.timer3 substringWithRange:NSMakeRange(8, 4)];
|
||||
// 十进制
|
||||
NSString*startTimeTen3=[dataContorl hexStringToDateString:startTimeHex3];
|
||||
NSString*endTimeTen3=[dataContorl hexStringToDateString:endTimeHex3];
|
||||
NSString*setTim3=[NSString stringWithFormat:@"%@~%@",startTimeTen3,endTimeTen3];
|
||||
|
||||
// 十六进制
|
||||
NSString*startTimeHex4=[backModel.timer4 substringWithRange:NSMakeRange(4, 4)];
|
||||
NSString*endTimeHex4=[backModel.timer4 substringWithRange:NSMakeRange(8, 4)];
|
||||
// 十进制
|
||||
NSString*startTimeTen4=[dataContorl hexStringToDateString:startTimeHex4];
|
||||
NSString*endTimeTen4=[dataContorl hexStringToDateString:endTimeHex4];
|
||||
NSString*setTim4=[NSString stringWithFormat:@"%@~%@",startTimeTen4,endTimeTen4];
|
||||
|
||||
// 十六进制
|
||||
NSString*startTimeHex5=[backModel.timer5 substringWithRange:NSMakeRange(4, 4)];
|
||||
NSString*endTimeHex5=[backModel.timer5 substringWithRange:NSMakeRange(8, 4)];
|
||||
// 十进制
|
||||
NSString*startTimeTen5=[dataContorl hexStringToDateString:startTimeHex5];
|
||||
NSString*endTimeTen5=[dataContorl hexStringToDateString:endTimeHex5];
|
||||
NSString*setTim5=[NSString stringWithFormat:@"%@~%@",startTimeTen5,endTimeTen5];
|
||||
|
||||
// 十六进制
|
||||
NSString*startTimeHex6=[backModel.timer6 substringWithRange:NSMakeRange(4, 4)];
|
||||
NSString*endTimeHex6=[backModel.timer6 substringWithRange:NSMakeRange(8, 4)];
|
||||
// 十进制
|
||||
NSString*startTimeTen6=[dataContorl hexStringToDateString:startTimeHex6];
|
||||
NSString*endTimeTen6=[dataContorl hexStringToDateString:endTimeHex6];
|
||||
NSString*setTim6=[NSString stringWithFormat:@"%@~%@",startTimeTen6,endTimeTen6];
|
||||
|
||||
// 十六进制
|
||||
NSString*startTimeHex7=[backModel.timer7 substringWithRange:NSMakeRange(4, 4)];
|
||||
NSString*endTimeHex7=[backModel.timer7 substringWithRange:NSMakeRange(8, 4)];
|
||||
// 十进制
|
||||
NSString*startTimeTen7=[dataContorl hexStringToDateString:startTimeHex7];
|
||||
NSString*endTimeTen7=[dataContorl hexStringToDateString:endTimeHex7];
|
||||
NSString*setTim7=[NSString stringWithFormat:@"%@~%@",startTimeTen7,endTimeTen7];
|
||||
|
||||
// 十六进制
|
||||
NSString*startTimeHex8=[backModel.timer8 substringWithRange:NSMakeRange(4, 4)];
|
||||
NSString*endTimeHex8=[backModel.timer8 substringWithRange:NSMakeRange(8, 4)];
|
||||
// 十进制
|
||||
NSString*startTimeTen8=[dataContorl hexStringToDateString:startTimeHex8];
|
||||
NSString*endTimeTen8=[dataContorl hexStringToDateString:endTimeHex8];
|
||||
NSString*setTim8=[NSString stringWithFormat:@"%@~%@",startTimeTen8,endTimeTen8];
|
||||
|
||||
timerArr=@[@[wenduString,@"设置时段"],@[setTim1,setTim2],@[setTim3,setTim4],@[setTim5,setTim6],@[setTim7,setTim8,@""]];
|
||||
|
||||
return timerArr;
|
||||
|
||||
|
||||
}
|
||||
|
||||
@end
|
||||
+18
@@ -0,0 +1,18 @@
|
||||
//
|
||||
// RuiMeiCHControl.h
|
||||
// Ifish
|
||||
//
|
||||
// Created by Minghao Xue on 2018/4/22.
|
||||
// Copyright © 2018年 lianlian. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
@interface RuiMeiCHControl : NSObject
|
||||
@property (nonatomic,copy) NSString *ch1name;
|
||||
@property (nonatomic,copy) NSString *ch2name;
|
||||
@property (nonatomic,copy) NSString *ch3name;
|
||||
@property (nonatomic,copy) NSString *ch4name;
|
||||
@property (nonatomic,copy) NSString *jiaRe;
|
||||
@property (nonatomic,copy) NSString *macAd;
|
||||
@end
|
||||
+36
@@ -0,0 +1,36 @@
|
||||
//
|
||||
// RuiMeiCHControl.m
|
||||
// Ifish
|
||||
//
|
||||
// Created by Minghao Xue on 2018/4/22.
|
||||
// Copyright © 2018年 lianlian. All rights reserved.
|
||||
//
|
||||
|
||||
#import "RuiMeiCHControl.h"
|
||||
|
||||
@implementation RuiMeiCHControl
|
||||
|
||||
-(void)encodeWithCoder:(NSCoder*)aCoder{
|
||||
|
||||
[aCoder encodeObject:_ch1name forKey:@"ch1name"];
|
||||
[aCoder encodeObject:_ch2name forKey:@"ch2name"];
|
||||
[aCoder encodeObject:_ch3name forKey:@"ch3name"];
|
||||
[aCoder encodeObject:_ch4name forKey:@"ch4name"];
|
||||
[aCoder encodeObject:_macAd forKey:@"macaddress"];
|
||||
[aCoder encodeObject:_jiaRe forKey:@"jiaRe"];
|
||||
}
|
||||
|
||||
-(id)initWithCoder:(NSCoder*)aDecoder{
|
||||
if (self=[super init]) {
|
||||
self.ch1name=[aDecoder decodeObjectForKey:@"ch1name"];
|
||||
self.ch2name=[aDecoder decodeObjectForKey:@"ch2name"];
|
||||
self.ch3name=[aDecoder decodeObjectForKey:@"ch3name"];
|
||||
self.ch4name=[aDecoder decodeObjectForKey:@"ch4name"];
|
||||
self.macAd = [aDecoder decodeObjectForKey:@"macaddress"];
|
||||
self.jiaRe = [aDecoder decodeObjectForKey:@"jiaRe"];
|
||||
}
|
||||
|
||||
return self;
|
||||
}
|
||||
|
||||
@end
|
||||
+17
@@ -0,0 +1,17 @@
|
||||
//
|
||||
// RuiMeiCHNameCustom.h
|
||||
// Ifish
|
||||
//
|
||||
// Created by Minghao Xue on 2018/4/22.
|
||||
// Copyright © 2018年 lianlian. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "RuiMeiCHControl.h"
|
||||
|
||||
@interface RuiMeiCHNameCustom : NSObject
|
||||
|
||||
+(void)saveCHname:(RuiMeiCHControl*)chModel;
|
||||
+(RuiMeiCHControl *)currentdevice:(NSString *)macaddress;
|
||||
|
||||
@end
|
||||
+36
@@ -0,0 +1,36 @@
|
||||
//
|
||||
// RuiMeiCHNameCustom.m
|
||||
// Ifish
|
||||
//
|
||||
// Created by Minghao Xue on 2018/4/22.
|
||||
// Copyright © 2018年 lianlian. All rights reserved.
|
||||
//
|
||||
|
||||
#import "RuiMeiCHNameCustom.h"
|
||||
#import "UserExtendataArchaver.h"
|
||||
|
||||
@implementation RuiMeiCHNameCustom
|
||||
|
||||
+(void)saveCHname:(RuiMeiCHControl*)chModel
|
||||
{
|
||||
|
||||
[UserExtendataArchaver archiverRuiMeiDeviceCHInfo:chModel];
|
||||
|
||||
}
|
||||
|
||||
+(RuiMeiCHControl *)currentdevice:(NSString *)macaddress
|
||||
{
|
||||
RuiMeiCHControl *runsunCH = [UserExtendataArchaver unArchiverRuiMeiDeviceCHInfo:macaddress];
|
||||
if (!runsunCH||[runsunCH isKindOfClass:[NSNull class]]) {
|
||||
runsunCH = [[RuiMeiCHControl alloc] init];
|
||||
runsunCH.ch1name = @"S1";
|
||||
runsunCH.ch2name = @"S2";
|
||||
runsunCH.ch3name = @"UV/杀菌";
|
||||
runsunCH.ch4name = @"冲浪/氧泵";
|
||||
runsunCH.jiaRe = @"加热棒";
|
||||
runsunCH.macAd = macaddress;
|
||||
}
|
||||
return runsunCH;
|
||||
}
|
||||
|
||||
@end
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
//
|
||||
// RuiMeiProtocolModel.h
|
||||
// Ifish
|
||||
//
|
||||
// Created by Minghao Xue on 2018/4/14.
|
||||
// Copyright © 2018年 lianlian. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
@interface RuiMeiProtocolModel : NSObject
|
||||
@property (nonatomic,copy) NSString *ch1;
|
||||
@property (nonatomic,copy) NSString *ch2;
|
||||
@property (nonatomic,copy) NSString *ch3;
|
||||
@property (nonatomic,copy) NSString *ch4;
|
||||
@property (nonatomic,copy) NSString *customModel;
|
||||
|
||||
@property(nonatomic,copy) NSString *timer1;
|
||||
@property(nonatomic,copy) NSString *timer2;
|
||||
@property(nonatomic,copy) NSString *timer3;
|
||||
@property(nonatomic,copy) NSString *timer4;
|
||||
@property(nonatomic,copy) NSString *timer5;
|
||||
@property(nonatomic,copy) NSString *timer6;
|
||||
@property(nonatomic,copy) NSString *timer7;
|
||||
@property(nonatomic,copy) NSString *timer8;
|
||||
@property(nonatomic,copy) NSString *heatStickState;
|
||||
@property(nonatomic,copy) NSString *wendu;
|
||||
// 加热温度
|
||||
@property(nonatomic,copy) NSString *heatTemperature;
|
||||
//室温
|
||||
@property(nonatomic,copy) NSString *shiwen;
|
||||
@property(nonatomic,copy) NSString *baojingSwitch;
|
||||
@property(nonatomic,copy) NSString *miniTp;
|
||||
@property(nonatomic,copy) NSString *maxTp;
|
||||
@property(nonatomic,copy) NSString *funcCode;
|
||||
|
||||
@end
|
||||
+13
@@ -0,0 +1,13 @@
|
||||
//
|
||||
// RuiMeiProtocolModel.m
|
||||
// Ifish
|
||||
//
|
||||
// Created by Minghao Xue on 2018/4/14.
|
||||
// Copyright © 2018年 lianlian. All rights reserved.
|
||||
//
|
||||
|
||||
#import "RuiMeiProtocolModel.h"
|
||||
|
||||
@implementation RuiMeiProtocolModel
|
||||
|
||||
@end
|
||||
+28
@@ -0,0 +1,28 @@
|
||||
//
|
||||
// RuiMeiSetViewController.h
|
||||
// Ifish
|
||||
//
|
||||
// Created by Minghao Xue on 2018/4/22.
|
||||
// Copyright © 2018年 lianlian. All rights reserved.
|
||||
//
|
||||
|
||||
#import "FatherController.h"
|
||||
|
||||
@interface RuiMeiSetViewController : FatherController
|
||||
{
|
||||
BOOL _isHidden;
|
||||
BOOL mySwitchIsOn;
|
||||
|
||||
}
|
||||
|
||||
@property(nonatomic,strong)NSArray*timeArr;
|
||||
@property(nonatomic,strong)NSArray*titleArr;
|
||||
@property(nonatomic)BOOL isAuto;// 自动模式
|
||||
|
||||
@property(nonatomic)UIActivityIndicatorView*indicatorView;
|
||||
|
||||
@property(nonatomic)int percent;
|
||||
@property(nonatomic,strong) DeviceModel* currentdevice;
|
||||
@property (nonatomic, assign) BOOL customModeOn;
|
||||
|
||||
@end
|
||||
+1157
File diff suppressed because it is too large
Load Diff
+32
@@ -0,0 +1,32 @@
|
||||
//
|
||||
// RuiMeiViewController.h
|
||||
// Ifish
|
||||
//
|
||||
// Created by Minghao Xue on 2018/4/14.
|
||||
// Copyright © 2018年 lianlian. All rights reserved.
|
||||
//
|
||||
|
||||
#import "CenterViewController.h"
|
||||
|
||||
//瑞美四控
|
||||
@interface RuiMeiViewController : CenterViewController
|
||||
@property(nonatomic,strong)UIButton*button;
|
||||
|
||||
@property(nonatomic,strong)UIButton *ch1Button;
|
||||
@property(nonatomic,strong)UIButton *ch2Button;
|
||||
@property(nonatomic,strong)UIButton *ch3Button;
|
||||
@property(nonatomic,strong)UIButton *ch4Button;
|
||||
|
||||
@property(nonatomic,strong) UILabel *chName;
|
||||
@property(nonatomic,strong) UILabel *ch1Name;
|
||||
@property(nonatomic,strong) UILabel *ch2Name;
|
||||
@property(nonatomic,strong) UILabel *ch3Name;
|
||||
@property(nonatomic,strong) UILabel *ch4Name;
|
||||
//S5 只控制温度
|
||||
@property(nonatomic,strong) UILabel *jiaReName;
|
||||
|
||||
@property(nonatomic,strong)UIButton*heatBtn;
|
||||
@property(nonatomic,strong) UILabel *hotcolLabe;
|
||||
@property(nonatomic,strong) UILabel *hotcolTempLabe;
|
||||
|
||||
@end
|
||||
+609
@@ -0,0 +1,609 @@
|
||||
//
|
||||
// RuiMeiViewController.m
|
||||
// Ifish
|
||||
//
|
||||
// Created by Minghao Xue on 2018/4/14.
|
||||
// Copyright © 2018年 lianlian. All rights reserved.
|
||||
//
|
||||
|
||||
#define kPlace ([UIScreen mainScreen].bounds.size.width - btnWid*2) /4
|
||||
#define RUNSUN_CH1 6000
|
||||
#define RUNSUN_CH2 6001
|
||||
#define RUNSUN_CH3 6002
|
||||
#define RUNSUN_CH4 6003
|
||||
#define RUNSUN_JARE 6004
|
||||
|
||||
#define btnWid 100
|
||||
|
||||
#import "RuiMeiViewController.h"
|
||||
#import "RuiMeiProtocolModel.h"
|
||||
#import "RuiMeiBackMsgUtils.h"
|
||||
#import "XuToWenDuPicview.h"
|
||||
#import "RuSunLightOrder.h"
|
||||
#import "RuSunGuiDeng.h"
|
||||
#import "RunSun84CHSetViewController.h"
|
||||
#import "RuiMeiSetViewController.h"
|
||||
#import "RuiMeiCHControl.h"
|
||||
#import "RuiMeiCHNameCustom.h"
|
||||
#import "RuSunInpdViewController.h"
|
||||
#import "HaveHotCoolWenDuPicview.h"
|
||||
|
||||
@interface RuiMeiViewController ()<IfishCommuniteDelegate>
|
||||
{
|
||||
dispatch_queue_t _ruSunMainQueue;
|
||||
}
|
||||
@property(nonatomic,strong) RuiMeiProtocolModel *backmodel;
|
||||
@property(nonatomic,strong) HaveHotCoolWenDuPicview *wenduPicview;
|
||||
@property(nonatomic,strong) RuiMeiSetViewController *setVC;
|
||||
//@property(nonatomic,strong) RunSunChangeNameViewController *changenameVC;
|
||||
@property(nonatomic,strong) RuSunInpdViewController *changenameVC;
|
||||
|
||||
@end
|
||||
|
||||
@implementation RuiMeiViewController
|
||||
|
||||
- (void)viewDidLoad {
|
||||
|
||||
[super viewDidLoad];
|
||||
|
||||
_backmodel=[[RuiMeiProtocolModel alloc] init];
|
||||
[Socketsingleton sharedInstance].communiteDelegate=self;
|
||||
_ruSunMainQueue = dispatch_get_main_queue();
|
||||
// Do any additional setup after loading the view.
|
||||
UITapGestureRecognizer*tapgestureRecognizer=[[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(RuSunCenterViewSetTap)];
|
||||
[self.setImag addGestureRecognizer:tapgestureRecognizer];
|
||||
[self.setbackBtn addTarget:self action:@selector(RuSunCenterViewSetAction:) forControlEvents:UIControlEventTouchUpInside];
|
||||
[self.SetTimeButton addTarget:self action:@selector(RuSunCenterViewSetAction:) forControlEvents:UIControlEventTouchUpInside];
|
||||
|
||||
[self initControlNormalBtn];
|
||||
}
|
||||
|
||||
-(void)RuSunCenterViewSetTap
|
||||
{
|
||||
|
||||
RuiMeiProtocolModel*backmodel=[[DataCenter defaultDtacenter]valueForKey:DataCenterRuiMeiModelKey];
|
||||
|
||||
if (backmodel) {
|
||||
[self pushSetTimeVC];
|
||||
}else{
|
||||
[self deviceNotOnlineState];
|
||||
|
||||
[self showLableAction:@"设备已离线"];
|
||||
|
||||
[self.indicatorView stopAnimating];
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
#pragma mark -转跳设置界面
|
||||
|
||||
-(void)RuSunCenterViewSetAction:(UIButton*)btn
|
||||
{
|
||||
RuiMeiProtocolModel*backmodel=[[DataCenter defaultDtacenter]valueForKey:DataCenterRuiMeiModelKey];
|
||||
if (backmodel) {
|
||||
[self pushSetTimeVC];
|
||||
}else{
|
||||
[self deviceNotOnlineState];
|
||||
|
||||
[self showLableAction:@"设备已离线"];
|
||||
|
||||
[self.indicatorView stopAnimating];
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
-(void)pushSetTimeVC{
|
||||
|
||||
self.setVC=[[RuiMeiSetViewController alloc]init];
|
||||
|
||||
self.setVC.currentdevice=self.currentDevice;
|
||||
NSString*stateString=[self.backmodel.customModel substringWithRange:NSMakeRange(2, 2)];
|
||||
if ([stateString isEqualToString:@"01"]) {
|
||||
self.setVC.customModeOn=YES;
|
||||
}else{
|
||||
self.setVC.customModeOn=NO;
|
||||
}
|
||||
[self.navigationController pushViewController:self.setVC animated:YES];
|
||||
|
||||
}
|
||||
|
||||
|
||||
-(void)initControlNormalBtn
|
||||
{
|
||||
|
||||
NSArray*nameArr=@[@"PFLight1_off.png",@"PFLight1_off.png",@"PFkilLlight_off.png",@"O2_off.png",@"JiaReBang_off"];
|
||||
|
||||
CGFloat btnControlWith = 70;
|
||||
CGFloat btnControlPlace = (kScreenSize.width - 3*btnControlWith )/4;
|
||||
|
||||
for (int i = 0; i < 3; i ++) {
|
||||
|
||||
self.button = [[UIButton alloc] init] ;
|
||||
self.button.frame = CGRectMake(btnControlPlace +i*(btnControlPlace + btnControlWith),kScreenSize.height - 3*btnControlPlace - 2 *btnControlWith -10 - 10 , btnControlWith, btnControlWith +11);
|
||||
|
||||
[self.button setImage:[UIImage imageNamed:nameArr[i]] forState:UIControlStateNormal];
|
||||
//self.button.backgroundColor = [UIColor redColor];
|
||||
self.button.tag=6000+i;
|
||||
[self.button addTarget:self action:@selector(controlBtnCilck:) forControlEvents:UIControlEventTouchUpInside];
|
||||
|
||||
|
||||
self.chName = [[UILabel alloc] initWithFrame:CGRectMake(btnControlPlace +i*(btnControlPlace + btnControlWith),kScreenSize.height - 3*btnControlPlace - 2 *btnControlWith -20 + btnControlWith -5 , btnControlWith, btnControlPlace - 5)];
|
||||
//textLbl.backgroundColor = [UIColor blackColor];
|
||||
self.chName.textColor = [UIColor colorWithRed:250/255.0f green:255/255.0f blue:255/254.0f alpha:1];
|
||||
self.chName.textAlignment = NSTextAlignmentCenter;
|
||||
NSArray *arr = @[@"S1",@"S2",@"UV/杀菌"];
|
||||
self.chName.text = arr[i];
|
||||
|
||||
self.chName.font = [UIFont boldSystemFontOfSize:14];
|
||||
|
||||
[self.tableView addSubview:self.chName];
|
||||
[self.tableView addSubview:self.button];
|
||||
|
||||
if (i==0) {
|
||||
|
||||
self.ch1Button = self.button;
|
||||
self.ch1Name = self.chName;
|
||||
}else if (i==1){
|
||||
|
||||
self.ch2Button = self.button;
|
||||
self.ch2Name = self.chName;
|
||||
|
||||
}else if (i==2){
|
||||
self.ch3Name = self.chName;
|
||||
self.ch3Button = self.button;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
//CGFloat btnControlPlace1 = (kScreenSize.width - 2*btnControlWith )/3;
|
||||
|
||||
for (int i = 0; i < 2; i ++) {
|
||||
self.button = [[UIButton alloc] init] ;
|
||||
self.button.frame = CGRectMake(btnControlPlace +i*(btnControlPlace + btnControlWith), kScreenSize.height - 2*btnControlPlace - btnControlWith -25 -5 , btnControlWith, btnControlWith + 11);
|
||||
|
||||
|
||||
[self.button setImage:[UIImage imageNamed:nameArr[i+3]]forState:UIControlStateNormal];
|
||||
|
||||
self.button.tag= 6003+i;
|
||||
[self.button addTarget:self action:@selector(controlBtnCilck:) forControlEvents:UIControlEventTouchUpInside];
|
||||
|
||||
UILabel* textLbl = [[UILabel alloc] initWithFrame:CGRectMake(btnControlPlace +i*(btnControlPlace + btnControlWith), kScreenSize.height - 2*btnControlPlace - btnControlWith -35 + btnControlWith, btnControlWith, btnControlPlace - 5)];
|
||||
//textLbl.backgroundColor = [UIColor blackColor];
|
||||
textLbl.textAlignment = NSTextAlignmentCenter;
|
||||
textLbl.textColor = [UIColor colorWithRed:250/255.0f green:255/255.0f blue:255/254.0f alpha:1];
|
||||
NSArray *arr = @[@"冲浪/氧泵",@"加热棒"];
|
||||
textLbl.font = [UIFont boldSystemFontOfSize:14];
|
||||
textLbl.text = arr[i];
|
||||
self.chName = textLbl;
|
||||
[self.tableView addSubview:textLbl];
|
||||
[self.tableView addSubview:self.button];
|
||||
|
||||
if (i==0) {
|
||||
|
||||
self.ch4Button = self.button;
|
||||
self.ch4Name = self.chName;
|
||||
} else if (i==1){
|
||||
self.heatBtn = self.button;
|
||||
self.jiaReName = self.chName;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
//重置 self.bubble 的 frame
|
||||
CGFloat animViewHeight= kScreenSize.width/4;
|
||||
if (kScreenSize.height==480) {
|
||||
|
||||
self.bubble.frame = CGRectMake((kScreenSize.width -(kScreenSize.width - 2 * kPlace)*2/3)/2, kPlace + 60 , (kScreenSize.width - 2 * kPlace)*2/3, (kScreenSize.width - 2 * kPlace)*2/3);
|
||||
|
||||
//(kScreenSize.width - 2 * kPlace - 200)*2/3
|
||||
self.temperature.frame = CGRectMake(30, 70, (kScreenSize.width - 2 * kPlace - 100)*2/3, 50);
|
||||
self.temperature.font = [UIFont fontWithName:@"Avenir Next Condensed" size:46];
|
||||
|
||||
self.dulabel.frame = CGRectMake( (kScreenSize.width - 2 * kPlace - 100)*2/3,74,50, kScreenSize.width - 2 * kPlace - 210);
|
||||
|
||||
|
||||
self.dulabel.font = [UIFont fontWithName:@"Avenir Next Condensed" size:20];
|
||||
|
||||
self.animView.frame= CGRectMake(0, kPlace + 80 + (kScreenSize.width - 2 * kPlace) -animViewHeight/2 - 15-80, kScreenSize.width, animViewHeight);
|
||||
|
||||
self.notOnLineLabel.frame = CGRectMake(40, 60, kScreenSize.width - 2 * kPlace - 100, kScreenSize.width - 2 * kPlace - 200);
|
||||
self.notOnLineLabel .font = [UIFont fontWithName:@"Avenir Next Condensed" size:15];
|
||||
|
||||
self.hotcolLabe = [[UILabel alloc] init];
|
||||
self.hotcolLabe.frame = CGRectMake(0, CGRectGetMaxY(self.temperature.frame) + 10, self.bubble.frame.size.width, 15);
|
||||
//self.hotcolLabe.textColor = JWUIColorFromRGB(fc6638);
|
||||
self.hotcolLabe.textAlignment = NSTextAlignmentCenter;
|
||||
self.hotcolLabe.font =[UIFont systemFontOfSize:13];
|
||||
self.hotcolLabe.text = @"制冷加热";
|
||||
[self.bubble addSubview:self.hotcolLabe];
|
||||
|
||||
self.hotcolTempLabe = [[UILabel alloc] init];
|
||||
self.hotcolTempLabe.frame = CGRectMake(0, CGRectGetMaxY(self.hotcolLabe.frame) + 5, self.bubble.frame.size.width, 15);
|
||||
self.hotcolTempLabe.font =[UIFont systemFontOfSize:14];
|
||||
self.hotcolTempLabe.textAlignment = NSTextAlignmentCenter;
|
||||
self.hotcolTempLabe.textColor = JWUIColorFromRGB(0x666666);
|
||||
self.hotcolTempLabe.text = @"温度";
|
||||
[self.bubble addSubview:self.hotcolTempLabe];
|
||||
|
||||
|
||||
}else{
|
||||
//kScreenSize.width - 2 * kPlace - 200
|
||||
self.temperature.frame = CGRectMake(10, 80, kScreenSize.width - 2 * kPlace - 100,70);
|
||||
self.temperature.font = [UIFont fontWithName:@"Avenir Next Condensed" size:60];
|
||||
|
||||
self.bubble.frame = CGRectMake((kScreenSize.width -(kScreenSize.width - 3 * kPlace ))/2, kPlace + 80 , kScreenSize.width - 3 * kPlace, kScreenSize.width - 3 * kPlace);
|
||||
|
||||
self.dulabel.frame = CGRectMake((kScreenSize.width - 2 * kPlace)/3*2 -30 , 90 ,50, 60);
|
||||
self.dulabel.font = [UIFont fontWithName:@"Avenir Next Condensed" size:40];
|
||||
self.animView.frame= CGRectMake(0, kPlace + 40 + (kScreenSize.width - 2 * kPlace) -animViewHeight/2 - 15, kScreenSize.width, animViewHeight);
|
||||
|
||||
CGFloat bubH=kScreenSize.width - 3 * kPlace;
|
||||
self.notOnLineLabel.frame = CGRectMake(0,bubH/2-15, bubH, 30);
|
||||
self.notOnLineLabel .font = [UIFont fontWithName:@"Avenir Next Condensed" size:20];
|
||||
|
||||
self.hotcolLabe = [[UILabel alloc] init];
|
||||
self.hotcolLabe.frame = CGRectMake(0, CGRectGetMaxY(self.temperature.frame) + 10, self.bubble.frame.size.width, 15);
|
||||
//self.hotcolLabe.textColor = JWUIColorFromRGB(fc6638);
|
||||
self.hotcolLabe.textAlignment = NSTextAlignmentCenter;
|
||||
self.hotcolLabe.font =[UIFont systemFontOfSize:13];
|
||||
[self.bubble addSubview:self.hotcolLabe];
|
||||
|
||||
self.hotcolTempLabe = [[UILabel alloc] init];
|
||||
self.hotcolTempLabe.frame = CGRectMake(0, CGRectGetMaxY(self.hotcolLabe.frame) + 5, self.bubble.frame.size.width, 15);
|
||||
self.hotcolTempLabe.font =[UIFont systemFontOfSize:14];
|
||||
self.hotcolTempLabe.textAlignment = NSTextAlignmentCenter;
|
||||
self.hotcolTempLabe.textColor = JWUIColorFromRGB(0x666666);
|
||||
self.hotcolTempLabe.text = @"温度";
|
||||
[self.bubble addSubview:self.hotcolTempLabe];
|
||||
}
|
||||
|
||||
[self initCHNames];
|
||||
}
|
||||
|
||||
|
||||
#pragma mark - 控制按钮事件
|
||||
|
||||
-(void)controlBtnCilck:(UIButton *)btn{
|
||||
|
||||
RuiMeiProtocolModel*backmodel=[[DataCenter defaultDtacenter]valueForKey:DataCenterRuiMeiModelKey];
|
||||
if (backmodel) {
|
||||
|
||||
|
||||
}else{
|
||||
[self.indicatorView stopAnimating];
|
||||
[self deviceNotOnlineState];
|
||||
[self showLableAction:@"设备已离线"];
|
||||
return;
|
||||
}
|
||||
|
||||
NSString *lightSate;
|
||||
if (btn.selected) {
|
||||
lightSate=@"00";
|
||||
btn.selected=NO;
|
||||
|
||||
}else {
|
||||
lightSate=@"01";
|
||||
btn.selected=YES;
|
||||
}
|
||||
|
||||
switch (btn.tag) {
|
||||
|
||||
case RUNSUN_CH1:
|
||||
{
|
||||
btn.userInteractionEnabled=YES;
|
||||
[btn setImage:[UIImage imageNamed:@"PFLight1_on.png"] forState:UIControlStateSelected];
|
||||
[self sendOffOnLinghtCommend:@"01" liaghtState:lightSate];
|
||||
|
||||
}
|
||||
break;
|
||||
|
||||
case RUNSUN_CH2:
|
||||
{
|
||||
btn.userInteractionEnabled=YES;
|
||||
[btn setImage:[UIImage imageNamed:@"PFLight1_on.png"] forState:UIControlStateSelected];
|
||||
[self sendOffOnLinghtCommend:@"02" liaghtState:lightSate];
|
||||
}
|
||||
break;
|
||||
case RUNSUN_CH3:
|
||||
{
|
||||
btn.userInteractionEnabled=YES;
|
||||
[btn setImage:[UIImage imageNamed:@"PFkilLlight_on.png"] forState:UIControlStateSelected];
|
||||
[self sendOffOnLinghtCommend:@"03" liaghtState:lightSate];
|
||||
}
|
||||
break;
|
||||
case RUNSUN_CH4:
|
||||
{
|
||||
btn.userInteractionEnabled=YES;
|
||||
[btn setImage:[UIImage imageNamed:@"O2_on.png"] forState:UIControlStateSelected];
|
||||
[self sendOffOnLinghtCommend:@"04" liaghtState:lightSate];
|
||||
}
|
||||
break;
|
||||
case RUNSUN_JARE:
|
||||
{
|
||||
if (backmodel) {
|
||||
_wenduPicview=[[HaveHotCoolWenDuPicview alloc] init];
|
||||
_wenduPicview.frame=CGRectMake(0, 0, kScreenSize.width, kScreenSize.height);
|
||||
[_wenduPicview.sureBtn addTarget:self action:@selector(sureBtnClick:) forControlEvents:UIControlEventTouchUpInside];
|
||||
|
||||
[self.view.window addSubview:_wenduPicview];
|
||||
_wenduPicview.wenDuPicviewDelegate = self;
|
||||
NSString *stateStr =nil;
|
||||
if ([backmodel.heatStickState isKindOfClass:[NSNull class]]||!backmodel.heatStickState) {
|
||||
backmodel.heatStickState = @"00";
|
||||
}
|
||||
stateStr = [backmodel.heatStickState substringWithRange:NSMakeRange(0, 2)];
|
||||
[_wenduPicview initCateBtnSate:stateStr];
|
||||
|
||||
[self ruSunJiaReMianQue];
|
||||
|
||||
}else{
|
||||
|
||||
[self showLableAction:@"设备已离线"];
|
||||
}
|
||||
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#pragma mark - 发送开关灯指令
|
||||
-(void)sendOffOnLinghtCommend:(NSString *)linghtNumber liaghtState:(NSString *)state
|
||||
{
|
||||
//此款设备无运行模式
|
||||
RuSunLightOrder*lightOrder=[[RuSunLightOrder alloc]init];
|
||||
lightOrder.sendmacId = self.currentDevice.macAddress;
|
||||
lightOrder.resavemacId = self.currentDevice.macAddress;
|
||||
NSString*switchString1=lightOrder.description;
|
||||
lightOrder.switchBtn = state;
|
||||
lightOrder.crc16Str=@"0000";
|
||||
lightOrder.lightNumber=linghtNumber;
|
||||
NSString*switchString2=[NSString stringWithFormat:@"%@%@%@%@",switchString1,lightOrder.lightNumber,lightOrder.switchBtn,lightOrder.crc16Str];
|
||||
NSData*manulData=[dataContorl stringToHexData:switchString2];
|
||||
[ [Socketsingleton sharedInstance] soketWriteData:manulData];
|
||||
if ([Socketsingleton sharedInstance].clientSocket.isConnected) {
|
||||
//soket 未断开时显示
|
||||
[self initHUD];
|
||||
[self.myhud myhudstart];
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#pragma mark -发送柜灯指令
|
||||
-(void)sendGuiDengCommend:(NSString *)lightSate
|
||||
{
|
||||
|
||||
|
||||
RuSunGuiDeng*guidengModel=[[RuSunGuiDeng alloc]init];
|
||||
guidengModel.resavemacId = self.currentDevice.macAddress;
|
||||
guidengModel.sendmacId = self.currentDevice.macAddress;
|
||||
guidengModel.crc16Str=@"0000";
|
||||
guidengModel.onOff=lightSate;
|
||||
|
||||
NSString* guidengOrder=[NSString stringWithFormat:@"%@%@%@",guidengModel.description,guidengModel.onOff,guidengModel.crc16Str];
|
||||
NSData*guidengData=[dataContorl stringToHexData:guidengOrder];
|
||||
[[Socketsingleton sharedInstance] soketWriteData:guidengData];
|
||||
|
||||
if ([Socketsingleton sharedInstance].clientSocket.isConnected) {
|
||||
//soket 未断开时显示
|
||||
[self initHUD];
|
||||
[self.myhud myhudstart];
|
||||
}
|
||||
}
|
||||
|
||||
#pragma mark -加热制冷温度选择
|
||||
|
||||
-(void)sureBtnClick:(UIButton *)btn{
|
||||
|
||||
NSLog(@"%@******** _wenduPicview.picViewResultString",_wenduPicview.picViewResultString);
|
||||
if (_wenduPicview.picViewResultString ==nil) {
|
||||
|
||||
[_wenduPicview removeFromSuperview];
|
||||
|
||||
}else{
|
||||
|
||||
JiaReWenDuModel *model=[[JiaReWenDuModel alloc] init];
|
||||
model.resavemacId = self.currentDevice.macAddress;
|
||||
model.sendmacId = self.currentDevice.macAddress;
|
||||
int intlowString = [_wenduPicview.picViewResultString intValue];
|
||||
int newIntlowString=intlowString*10;
|
||||
|
||||
NSLog(@"%d******** newIntlowString",newIntlowString);
|
||||
// 转四位16进制
|
||||
model.JiaReWenDu=[dataContorl tpIntStringToFourHex:newIntlowString];
|
||||
model.crc16Code =@"0000";
|
||||
|
||||
NSString * hexstring=[NSString stringWithFormat:@"%@%@%@",model.description,model.JiaReWenDu,model.crc16Code];
|
||||
NSData*data=[dataContorl stringToHexData:hexstring];
|
||||
|
||||
[ [Socketsingleton sharedInstance] soketWriteData:data];
|
||||
}
|
||||
|
||||
[_wenduPicview removeFromSuperview];
|
||||
|
||||
}
|
||||
|
||||
-(void)ruSunJiaReMianQue
|
||||
{
|
||||
RuiMeiProtocolModel*backmodel=[[DataCenter defaultDtacenter]valueForKey:DataCenterRuiMeiModelKey];
|
||||
UInt64 mac=[dataContorl hexToTen:backmodel.heatTemperature];
|
||||
NSLog(@"%llu",mac);
|
||||
float TPlabel=mac/10;
|
||||
int temp= (int)(TPlabel+0.5);
|
||||
NSString *stringFloat = [NSString stringWithFormat:@"%d",temp];
|
||||
NSLog(@"%@",stringFloat);
|
||||
NSArray*wenDuArr=[_wenduPicview.picArr objectAtIndex:0];
|
||||
|
||||
dispatch_async(_ruSunMainQueue, ^{
|
||||
for (NSInteger i=0; i<wenDuArr.count; i++) {
|
||||
|
||||
NSString*picString=wenDuArr[i];
|
||||
|
||||
if ([picString isEqualToString:stringFloat ] ) {
|
||||
|
||||
[_wenduPicview.pic selectRow:i inComponent:0 animated:NO];
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
- (void)didReceiveMemoryWarning {
|
||||
[super didReceiveMemoryWarning];
|
||||
// Dispose of any resources that can be recreated.
|
||||
}
|
||||
|
||||
#pragma mark - 登陆成功后收到服务端的回执之后,调用的代理方法
|
||||
-(void)socketDidGetBackmsgData:(NSData *)data onsoket:(AsyncSocket *)sock{
|
||||
|
||||
[self.indicatorView stopAnimating];
|
||||
self.temperature.hidden=NO;
|
||||
//设备在线显示与设备离线相对应
|
||||
self.dulabel.hidden=NO;
|
||||
//设备在线显示与设备离线相对应 收到返回数据改变显示状态
|
||||
self.notOnLineLabel.hidden = YES;
|
||||
self.temperaturebackImg.hidden=NO;
|
||||
self.hotcolTempLabe.hidden = NO;
|
||||
self.hotcolLabe.hidden = NO;
|
||||
|
||||
[self.myhud hidmyHud];
|
||||
if (self.setVC.indicatorView) {
|
||||
[self.setVC.indicatorView stopAnimating];
|
||||
}
|
||||
//存储
|
||||
[RuiMeiBackMsgUtils readSoketDataWithBaackMassgModel:_backmodel addWithBackData:data];
|
||||
|
||||
// 温度 等状态
|
||||
dispatch_async(dispatch_get_main_queue(), ^{
|
||||
if (self.setVC) {
|
||||
NSString*stateString=[self.backmodel.customModel substringWithRange:NSMakeRange(2, 2)];
|
||||
if ([stateString isEqualToString:@"01"]) {
|
||||
self.setVC.customModeOn=YES;
|
||||
}else{
|
||||
self.setVC.customModeOn=NO;
|
||||
}
|
||||
}
|
||||
[RuiMeiBackMsgUtils setTemperaturelabel:self.temperature addbubleImge:self.bubble WithBackData:data addWithBackMassageModel:_backmodel addWithTableview:self.tableView];
|
||||
|
||||
[RuiMeiBackMsgUtils resetRuSunCHState:_ch1Button ch2:_ch2Button ch3:_ch3Button ch4:_ch4Button andJiaRe:_heatBtn withBackModel:_backmodel ];
|
||||
|
||||
|
||||
if (!_backmodel.heatStickState) {
|
||||
_backmodel.heatStickState = @"00";
|
||||
}
|
||||
NSString*stateString=[_backmodel.heatStickState substringWithRange:NSMakeRange(0, IFISH_LIGHTBTN_BYTE)];
|
||||
if ([stateString isEqualToString:@"00"]) {
|
||||
//00加热
|
||||
self.hotcolLabe.text = [NSString stringWithFormat:@"-加热-"];
|
||||
self.hotcolLabe.textColor = JWUIColorFromRGB(0xfc6638);
|
||||
|
||||
|
||||
}else{
|
||||
//01制冷
|
||||
self.hotcolLabe.text = [NSString stringWithFormat:@"-室内温度-"];
|
||||
self.hotcolLabe.textColor = JWUIColorFromRGB(0x38b9fc);
|
||||
|
||||
}
|
||||
|
||||
if (!_backmodel.heatStickState) {
|
||||
_backmodel.heatStickState = @"00";
|
||||
}
|
||||
UInt64 mac=[dataContorl hexToTen:_backmodel.heatTemperature];
|
||||
float TPlabel=mac/10;
|
||||
int temp= (int)(TPlabel+0.5);
|
||||
NSString *stringFloat = [NSString stringWithFormat:@"%d°C",temp];
|
||||
NSLog(@"制冷加热温度%@",stringFloat);
|
||||
|
||||
self.hotcolTempLabe.text = stringFloat;
|
||||
|
||||
|
||||
});
|
||||
|
||||
|
||||
// 刷新设置界面
|
||||
dispatch_async(dispatch_get_main_queue(), ^{
|
||||
|
||||
if (self.setVC) {
|
||||
self.setVC.timeArr= [RuiMeiBackMsgUtils refreshRuSunTimerAddTemperatureWithBackMassageModel:_backmodel];
|
||||
[self.setVC.tableView reloadData];
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
-(void)ifishDeviceLogInSuccees{
|
||||
self.isconnect=YES;
|
||||
NSLog(@"设备登录成功");
|
||||
|
||||
}
|
||||
-(void)ifishDeviceLogInFail{
|
||||
|
||||
[self endRefreshing];
|
||||
[self.indicatorView stopAnimating];
|
||||
dispatch_async(dispatch_get_main_queue(), ^{
|
||||
[self deviceNotOnlineState];//设备离线
|
||||
self.hotcolTempLabe.hidden = YES;
|
||||
self.hotcolLabe.hidden = YES;
|
||||
});
|
||||
}
|
||||
|
||||
#pragma mark -父类方法
|
||||
-(void)shezhiMingCheng
|
||||
{
|
||||
|
||||
//_changenameVC = [[RunSunChangeNameViewController alloc] init];
|
||||
|
||||
_changenameVC = [[RuSunInpdViewController alloc] init];
|
||||
_changenameVC.name = self.name.text;
|
||||
_changenameVC.device = self.currentDevice;
|
||||
__weak typeof (self)wself = self;
|
||||
|
||||
_changenameVC.NameWithBlock = ^(NSString *nameStr){
|
||||
wself.name.text = nameStr;
|
||||
[wself initCHNames];
|
||||
};
|
||||
[ wself.navigationController pushViewController: _changenameVC animated:YES];
|
||||
|
||||
}
|
||||
|
||||
-(void)initCHNames{
|
||||
|
||||
RuiMeiCHControl * ruSunCH = [RuiMeiCHNameCustom currentdevice:self.currentDevice.macAddress];
|
||||
self.ch1Name.text = ruSunCH.ch1name;
|
||||
self.ch2Name.text = ruSunCH.ch2name;
|
||||
self.ch3Name.text = ruSunCH.ch3name;
|
||||
self.ch4Name.text = ruSunCH.ch4name;
|
||||
self.jiaReName.text = ruSunCH.jiaRe;
|
||||
|
||||
}
|
||||
#pragma mark - 制冷制热指令
|
||||
-(void)didSelectCoolOrHeat:(NSString *)hotCool{
|
||||
//由s5 控制 原理同灯
|
||||
RuSunLightOrder*lightOrder=[[RuSunLightOrder alloc]init];
|
||||
lightOrder.sendmacId = self.currentDevice.macAddress;
|
||||
lightOrder.resavemacId = self.currentDevice.macAddress;
|
||||
NSString*switchString1=lightOrder.description;
|
||||
lightOrder.switchBtn = hotCool;
|
||||
lightOrder.crc16Str=@"0000";
|
||||
lightOrder.lightNumber=@"05";
|
||||
|
||||
NSString*switchString2=[NSString stringWithFormat:@"%@%@%@%@",switchString1,lightOrder.lightNumber,lightOrder.switchBtn,lightOrder.crc16Str];
|
||||
NSData*manulData=[dataContorl stringToHexData:switchString2];
|
||||
[ [Socketsingleton sharedInstance] soketWriteData:manulData];
|
||||
if ([Socketsingleton sharedInstance].clientSocket.isConnected) {
|
||||
//soket 未断开时显示
|
||||
[self initHUD];
|
||||
[self.myhud myhudstart];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@end
|
||||
Reference in New Issue
Block a user