ifish/Ifish/Utinitys/ifishDeviceCommunicationDat.../DeviceCommunicateDataUnity.m

623 lines
27 KiB
Objective-C

//
// DeviceCommunicateDataUnity.m
// Ifish
//
// Created by imac on 16/1/7.
// Copyright © 2016年 imac. All rights reserved.
//
#import "DeviceCommunicateDataUnity.h"
#import "AppDelegate.h"
#define LIGHT1_TAG 201
#define LIGHT2_TAG 202
#define PUMP_TAG 203
#define TWOC_PUMP 210
#define TWOC_LIGHT 211
#define TWOC_LIGHT2 212
#import "manulswitchMSModel.h"
#import "Socketsingleton.h"
@implementation DeviceCommunicateDataUnity
//99字节三控返回数据解析 三控 6定时器
+(void)readSoketbackMassageOfThreeControlData:(NSData*)data WithModel:(BackmassegeModel*)backModel{
//backModel=[[BackmassegeModel alloc]init];
NSString*totalString=[dataContorl dataToHexString:data];// 转十六进制
backModel.yunxingmoshi=[totalString substringWithRange:NSMakeRange(30, 2)];
backModel.light1=[totalString substringWithRange:NSMakeRange(32, 4)];
backModel.light2=[totalString substringWithRange:NSMakeRange(36, 4)];
backModel.pump=[totalString substringWithRange:NSMakeRange(40, 4)];
backModel.timer1=[totalString substringWithRange:NSMakeRange(52,12)];
backModel.timer2=[totalString substringWithRange:NSMakeRange(64, 12)];
backModel.timer3=[totalString substringWithRange:NSMakeRange(76, 12)];
backModel.timer4=[totalString substringWithRange:NSMakeRange(88, 12)];
backModel.timer5=[totalString substringWithRange:NSMakeRange(100, 12)];
backModel.timer6=[totalString substringWithRange:NSMakeRange(112, 12)];
backModel.timer7=[totalString substringWithRange:NSMakeRange(124, 12)];
backModel.timer8=[totalString substringWithRange:NSMakeRange(136, 12)];
backModel.timer9=[totalString substringWithRange:NSMakeRange(148, 12)];
backModel.timer10=[totalString substringWithRange:NSMakeRange(160, 12)];
backModel.wendu=[totalString substringWithRange:NSMakeRange(172, 4)];//16进制型
backModel.Ph=[totalString substringWithRange:NSMakeRange(176, 4)];
backModel.brightness=[totalString substringWithRange:NSMakeRange(180, 2)];
backModel.tankLight=[totalString substringWithRange:NSMakeRange(182, 2)];
//backModel.shidu=[totalString substringWithRange:NSMakeRange(180, 4)];
backModel.baojingSwitch=[totalString substringWithRange:NSMakeRange(184, 2)];
backModel.miniTp=[totalString substringWithRange:NSMakeRange(186, 4)];
backModel.maxTp=[totalString substringWithRange:NSMakeRange(190, 4)];
//实施更新数据 保存
[[DataCenter defaultDtacenter] setValue:backModel forKey:@"DeviceBackInfo"];
}
//71字节 返回数据解析
+(void)readSoketThreeControlBackMassageData:(NSData*)data WithModel:(BackmassegeModel*)backModel{
NSString*totalString=[dataContorl dataToHexString:data];// 转十六进制
backModel.yunxingmoshi=[totalString substringWithRange:NSMakeRange(30, 2)];
backModel.light1=[totalString substringWithRange:NSMakeRange(32, 4)];
backModel.light2=[totalString substringWithRange:NSMakeRange(36, 4)];
backModel.pump=[totalString substringWithRange:NSMakeRange(40, 4)];
backModel.timer1=[totalString substringWithRange:NSMakeRange(44,12)];
backModel.timer2=[totalString substringWithRange:NSMakeRange(56, 12)];
backModel.timer3=[totalString substringWithRange:NSMakeRange(68, 12)];
backModel.timer4=[totalString substringWithRange:NSMakeRange(80, 12)];
backModel.timer5=[totalString substringWithRange:NSMakeRange(92, 12)];
backModel.timer6=[totalString substringWithRange:NSMakeRange(104, 12)];
backModel.wendu=[totalString substringWithRange:NSMakeRange(116, 4)];//16进制型
backModel.Ph=[totalString substringWithRange:NSMakeRange(120, 4)];
backModel.brightness=[totalString substringWithRange:NSMakeRange(124, 2)];
backModel.tankLight=[totalString substringWithRange:NSMakeRange(126, 2)];
//backModel.shidu=[totalString substringWithRange:NSMakeRange(124, 4)];
backModel.baojingSwitch=[totalString substringWithRange:NSMakeRange(128, 2)];
backModel.miniTp=[totalString substringWithRange:NSMakeRange(130, 4)];
backModel.maxTp=[totalString substringWithRange:NSMakeRange(134, 4)];
//实施更新数据 保存
[[DataCenter defaultDtacenter]setValue:backModel forKey:@"DeviceBackInfo"];
}
+(void)resetThreeControlButtonState:(UIButton*)light1 addlight2:(UIButton*)light2 addpump:(UIButton*)pump withBackModel:(BackmassegeModel*)backModel{
//灯一
NSString*stateString1=[backModel.light1 substringWithRange:NSMakeRange(2, 2)];
if ([stateString1 isEqualToString:@"01"]) {
[light1 setImage:[UIImage imageNamed:@"PFLight1_on.png"] forState:UIControlStateNormal];
light1.selected=YES;
}else{
[light1 setImage:[UIImage imageNamed:@"PFLight1_off.png"] forState:UIControlStateNormal];
light1.selected=NO;
}
NSString*stateString2=[backModel.light2 substringWithRange:NSMakeRange(2, 2)];// 灯二
if ([stateString2 isEqualToString:@"01"]) {
[light2 setImage:[UIImage imageNamed:@"PFLight1_on.png"] forState:UIControlStateNormal];
light2.selected=YES;
}else{
[light2 setImage:[UIImage imageNamed:@"PFLight1_off.png"] forState:UIControlStateNormal];
light2.selected=NO;
}
// 水泵
NSString*stateString3=[backModel.pump substringWithRange:NSMakeRange(2, 2)];
if ([stateString3 isEqualToString:@"01"]) {
[pump setImage:[UIImage imageNamed:@"ChongLang_on.png"] forState:UIControlStateNormal];
pump.selected=YES;
}else{
pump.selected=NO;
[pump setImage:[UIImage imageNamed:@"ChongLang_off.png"] forState:UIControlStateNormal];
}
}
+(void)resettwoControlbutton:(UIButton*)light1 addpump:(UIButton*)light2 withbackmsgModel:(BackmassegeModel*)backModel
{
// 灯
NSString*stateString1=[backModel.light1 substringWithRange:NSMakeRange(2, 2)];
if ([stateString1 isEqualToString:@"01"]) {
[light1 setImage:[UIImage imageNamed:@"PFLight1_on.png"] forState:UIControlStateNormal];
light1.selected=YES;
}else{
[light1 setImage:[UIImage imageNamed:@"PFLight1_off.png"] forState:UIControlStateNormal];
light1.selected=NO;
}
// 水泵
NSString*stateString2=[backModel.light2 substringWithRange:NSMakeRange(2, 2)];
if ([stateString2 isEqualToString:@"01"]) {
[light2 setImage:[UIImage imageNamed:@"ChongLang_on.png"] forState:UIControlStateNormal];
light2.selected=YES;
}else{
[light2 setImage:[UIImage imageNamed:@"ChongLang_off.png"] forState:UIControlStateNormal];
light2.selected=NO;
}
}
+(NSArray*)refreshThreeControlTimerAddTemperatureWithBackMassageModel:(BackmassegeModel*)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)];
if (!backModel.timer1)
{
return nil;
}
// 十进制
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];
timerArr=@[@[wenduString,@"设置时段"],@[setTim1,setTim2],@[setTim3,setTim4],@[setTim5,setTim6,@""]];
return timerArr;
}
//注意返回 信息模型 99 字节模型
+(NSArray*)refreshTwoControlSetViewWithBackMassageModel:(BackmassegeModel*)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];
timerArr=@[@[wenduString,@"设置时段"],@[setTim1,setTim2],@[setTim3,setTim4,@""]];
return timerArr;
}
+(void)setTemperaturelabel:(UILabel*)temperaturelabel addTemperaturebackImg:(UIImageView*)temperaturebackImg addbubleImge:(UIImageView*)bubleImg WithBackData:(NSData*)data addWithBackMassageModel:(BackmassegeModel*)backModel addWithTableview:(UITableView*)tableview{
NSString*str=[dataContorl dataToHexString:data];
if (str.length==198) {//三控99字节温度显示
str=[str substringWithRange:NSMakeRange(172,4)];
}else if (str.length==142){//三控71字节温度显示
str=[str substringWithRange:NSMakeRange(116,4)];
}
//str=[str substringWithRange:NSMakeRange(172,4)];
UInt64 mac=[dataContorl hexToTen:str];
NSLog(@"%llu",mac);
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";
[bubleImg addSubview:temperaturelabel];
temperaturebackImg.image=[UIImage imageNamed:@"cold_snow"];
if ([backModel.baojingSwitch isEqualToString:@"01"]) {
}else{
}
[bubleImg addSubview:temperaturebackImg];
}else{
temperaturelabel.text=stringFloat;
temperaturelabel.textAlignment=NSTextAlignmentCenter;
[bubleImg addSubview:temperaturelabel];
NSString*heighTmp=backModel.maxTp;
UInt64 max=[dataContorl hexToTen:heighTmp];
UInt64 min=[dataContorl hexToTen:backModel.miniTp];
if (mac>=max) {
temperaturebackImg.image=[UIImage imageNamed:@"hot_fire"];
[tableview addSubview:temperaturebackImg];
if ([backModel.baojingSwitch isEqualToString:@"01"]) {
}else{
}
}else if (mac<=min){
if ([backModel.baojingSwitch isEqualToString:@"01"]) {
}else{
}
temperaturebackImg.image=[UIImage imageNamed:@"cold_snow"];
[tableview addSubview:temperaturebackImg];
}else if (mac>min&&mac<max){
[temperaturebackImg removeFromSuperview
];
}
}
});
}
//两控 四定时器
+(NSArray*)refreshTwoControlTimerAddTemperatureWithBackMassageModel:(TwoControlBackmsgmodel*)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];
//
timerArr=@[@[wenduString,@"设置时段"],@[setTim1,setTim2],@[setTim3,setTim4]];
return timerArr;
}
//两控 零定时器设置界面刷新
+(NSArray*)refreshTwoControlTimerWithBackMassageModel:(TwoControlBackmsgmodel*)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];
timerArr=@[wenduString];
return timerArr;
}
//两控
+(void)readSoketbackMassageOfTwoControlData:(NSData*)data WithModel:(TwoControlBackmsgmodel*)backModel{
//返回data 57 字节
NSString*totalString=[dataContorl dataToHexString:data];// 转十六进制
backModel.yunxingmoshi=[totalString substringWithRange:NSMakeRange(30, 2)];
backModel.light=[totalString substringWithRange:NSMakeRange(32, 4)];
backModel.pump=[totalString substringWithRange:NSMakeRange(36, 4)];
backModel.timer1=[totalString substringWithRange:NSMakeRange(40,12)];
backModel.timer2=[totalString substringWithRange:NSMakeRange(52, 12)];
backModel.timer3=[totalString substringWithRange:NSMakeRange(64, 12)];
backModel.timer4=[totalString substringWithRange:NSMakeRange(76, 12)];
backModel.wendu=[totalString substringWithRange:NSMakeRange(88, 4)];//16进制型
backModel.Ph=[totalString substringWithRange:NSMakeRange(92, 4)];
//backModel.shidu=[totalString substringWithRange:NSMakeRange(96, 4)];
backModel.brightness=[totalString substringWithRange:NSMakeRange(96, 2)];
backModel.tankLight=[totalString substringWithRange:NSMakeRange(98, 2)];
backModel.baojingSwitch=[totalString substringWithRange:NSMakeRange(100, 2)];
backModel.miniTp=[totalString substringWithRange:NSMakeRange(102, 4)];
backModel.maxTp=[totalString substringWithRange:NSMakeRange(106, 4)];
//实施更新数据 保存
[[DataCenter defaultDtacenter]setValue:backModel forKey:@"DeviceBackTwoControlInfo"];
}
+(void)resetTwoControlButtonState:(UIButton*)light1 addpump:(UIButton*)pump withBackModel:(TwoControlBackmsgmodel*)backModel{
//灯
NSString*stateString1=[backModel.light substringWithRange:NSMakeRange(2, 2)];
if ([stateString1 isEqualToString:@"01"]) {
[light1 setImage:[UIImage imageNamed:@"PFLight1_on.png"] forState:UIControlStateNormal];
light1.selected=YES;
}else{
[light1 setImage:[UIImage imageNamed:@"PFLight1_off.png"] forState:UIControlStateNormal];
light1.selected=NO;
}
// 水泵
NSString*stateString3=[backModel.pump substringWithRange:NSMakeRange(2, 2)];
if ([stateString3 isEqualToString:@"01"]) {
[pump setImage:[UIImage imageNamed:@"ChongLang_on.png"] forState:UIControlStateNormal];
pump.selected=YES;
}else{
pump.selected=NO;
[pump setImage:[UIImage imageNamed:@"ChongLang_off.png"] forState:UIControlStateNormal];
}
}
+(void)setTwoControlTemperaturelabel:(UILabel*)temperaturelabel addTemperaturebackImg:(UIImageView*)temperaturebackImg addbubleImg:(UIImageView*)bubleImg WithBackData:(NSData*)data addWithBackMassageModel:(TwoControlBackmsgmodel*)backModel addWithTableview:(UITableView*)tableview{
NSString*str=[dataContorl dataToHexString:data];
str=[str substringWithRange:NSMakeRange(88,4)];
UInt64 mac=[dataContorl hexToTen:str];
NSLog(@"%llu",mac);
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";
[bubleImg addSubview:temperaturelabel];
temperaturebackImg.image=[UIImage imageNamed:@"cold_snow"];
if ([backModel.baojingSwitch isEqualToString:@"01"]) {
}else{
// shuixiangwenduLabel.hidden=NO;
}
[tableview addSubview:temperaturebackImg];
}else{
temperaturelabel.text=stringFloat;
temperaturelabel.textAlignment=NSTextAlignmentCenter;
[bubleImg addSubview:temperaturelabel];
NSString*heighTmp=backModel.maxTp;
UInt64 max=[dataContorl hexToTen:heighTmp];
UInt64 min=[dataContorl hexToTen:backModel.miniTp];
if (mac>=max) {
temperaturebackImg.image=[UIImage imageNamed:@"hot_fire"];
[tableview addSubview:temperaturebackImg];
if ([backModel.baojingSwitch isEqualToString:@"01"]) {
//shuixiangwenduLabel.hidden=YES;
}else{
//shuixiangwenduLabel.hidden=NO;
}
;
}else if (mac<=min){
if ([backModel.baojingSwitch isEqualToString:@"01"]) {
//shuixiangwenduLabel.hidden=YES;
}else{
//shuixiangwenduLabel.hidden=NO;
}
temperaturebackImg.image=[UIImage imageNamed:@"cold_snow"];
[tableview addSubview:temperaturebackImg];
}else if (mac>min&&mac<max){
//shuixiangwenduLabel.hidden=NO;
[temperaturebackImg removeFromSuperview
];
}
}
});
}
//零控
+(void)readSoketbackMassageZeroControlData:(NSData*)data WithModel:(ZeroControlBackmsgModel*)backModel{
NSString*totalString=[dataContorl dataToHexString:data];// 转十六进制
backModel.wendu=[totalString substringWithRange:NSMakeRange(30, 4)];//16进制型
backModel.Ph=[totalString substringWithRange:NSMakeRange(34, 4)];
//backModel.shidu=[totalString substringWithRange:NSMakeRange(38, 4)];
backModel.brightness=[totalString substringWithRange:NSMakeRange(38, 2)];
backModel.tankLight=[totalString substringWithRange:NSMakeRange(40, 2)];
backModel.baojingSwitch=[totalString substringWithRange:NSMakeRange(42, 2)];
backModel.miniTp=[totalString substringWithRange:NSMakeRange(44, 4)];
backModel.maxTp=[totalString substringWithRange:NSMakeRange(48, 4)];
//实施更新数据 保存
[[DataCenter defaultDtacenter]setValue:backModel forKey:@"DeviceBackZeroControlInfo"];
}
+(void)setZeroControlTemperaturelabel:(UILabel*)temperaturelabel addTemperaturebackImg:(UIImageView*)temperaturebackImg addbubleImgeView:(UIImageView*)bubleImg WithBackData:(NSData*)data addWithBackMassageModel:(ZeroControlBackmsgModel*)backModel addWithTableview:(UITableView*)tableview{
NSString*str=[dataContorl dataToHexString:data];
str=[str substringWithRange:NSMakeRange(30,4)];
UInt64 mac=[dataContorl hexToTen:str];
NSLog(@"%llu",mac);
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";
[bubleImg addSubview:temperaturelabel];
temperaturebackImg.image=[UIImage imageNamed:@"cold_snow"];
if ([backModel.baojingSwitch isEqualToString:@"01"]) {
//shuixiangwenduLabel.hidden=YES;
}else{
//shuixiangwenduLabel.hidden=NO;
}
[tableview addSubview:temperaturebackImg];
}else{
temperaturelabel.text=stringFloat;
temperaturelabel.textAlignment=NSTextAlignmentCenter;
[bubleImg addSubview:temperaturelabel];
NSString*heighTmp=backModel.maxTp;
UInt64 max=[dataContorl hexToTen:heighTmp];
UInt64 min=[dataContorl hexToTen:backModel.miniTp];
if (mac>=max) {
temperaturebackImg.image=[UIImage imageNamed:@"hot_fire"];
[tableview addSubview:temperaturebackImg];
if ([backModel.baojingSwitch isEqualToString:@"01"]) {
//shuixiangwenduLabel.hidden=YES;
}else{
// shuixiangwenduLabel.hidden=NO;
}
}else if (mac<=min){
temperaturebackImg.image=[UIImage imageNamed:@"cold_snow"];
if ([backModel.baojingSwitch isEqualToString:@"01"]) {
//shuixiangwenduLabel.hidden=YES;
}else{
//shuixiangwenduLabel.hidden=NO;
}
[tableview addSubview:temperaturebackImg];
}else if (mac>min&&mac<max){
//shuixiangwenduLabel.hidden=NO;
[temperaturebackImg removeFromSuperview
];
}
}
});
}
+(NSArray*)refreshNoneControlSetViewWithBackMassageModel:(ZeroControlBackmsgModel*)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];
timerArr=@[wenduString];
return timerArr;
}
@end