ifish/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/RuSunTemp/RuSunBackMessageUtils.m

195 lines
7.9 KiB
Objective-C

//
// RuSunBackMessageUtils.m
// Ifish
//
// Created by imac on 17/1/4.
// Copyright © 2017年 lianxiang. All rights reserved.
//
#import "RuSunBackMessageUtils.h"
@implementation RuSunBackMessageUtils
+(void)readSoketDataWithBaackMassgModel:(RuSunProtocol*)ruSunModel
addWithBackData:(NSData*)data
{
NSString*totalString=[dataContorl dataToHexString:data];
ruSunModel.light1btn=[totalString substringWithRange:NSMakeRange(32, 4)];
ruSunModel.light2btn=[totalString substringWithRange:NSMakeRange(36, 4)];
ruSunModel.waterPumpBtn = [totalString substringWithRange:NSMakeRange(40, 4)];
ruSunModel.timer1=[totalString substringWithRange:NSMakeRange(44,12)];
ruSunModel.timer2=[totalString substringWithRange:NSMakeRange(56, 12)];
ruSunModel.timer3=[totalString substringWithRange:NSMakeRange(68, 12)];
ruSunModel.timer4=[totalString substringWithRange:NSMakeRange(80, 12)];
ruSunModel.timer5=[totalString substringWithRange:NSMakeRange(92, 12)];
ruSunModel.timer6=[totalString substringWithRange:NSMakeRange(104, 12)];
ruSunModel.backLight = [totalString substringWithRange:NSMakeRange(116, 2)];
ruSunModel.guiDengState = [totalString substringWithRange:NSMakeRange(118, 2)];
ruSunModel.wendu=[totalString substringWithRange:NSMakeRange(120, 4)];
ruSunModel.pHlevel = [totalString substringWithRange:NSMakeRange(124, 4)];
ruSunModel.heatTemperature=[totalString substringWithRange:NSMakeRange(128, 4)];
ruSunModel.heatStickState=[totalString substringWithRange:NSMakeRange(132, 2)];//16进制型
ruSunModel.baojingSwitch=[totalString substringWithRange:NSMakeRange(134, 2)];
ruSunModel.miniTp=[totalString substringWithRange:NSMakeRange(136, 4)];
ruSunModel.maxTp=[totalString substringWithRange:NSMakeRange(140, 4)];
ruSunModel.funcCode= [totalString substringWithRange:NSMakeRange(144, 4)];
[[DataCenter defaultDtacenter] setValue:ruSunModel forKey:@"RuSunBackMessageInfo"];
}
+(void)setTemperaturelabel:(UILabel*)temperaturelabel
addbubleImge:(UIImageView*)bubleImg
WithBackData:(NSData*)data
addWithBackMassageModel:(RuSunProtocol*)backModel
addWithTableview:(UITableView*)tableview
{
NSString*str=[dataContorl dataToHexString:data];
str=[str substringWithRange:NSMakeRange(120,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)resetRuSunButtonState:(UIButton*)light1
addlight2:(UIButton*)light2
addWaterPump:(UIButton*)waterPump
addJiaRe:(UIButton*)jiaReBang
withBackModel:(RuSunProtocol*)backModel
{
// 灯1
NSString*stateString1=[backModel.light1btn substringWithRange:NSMakeRange(2, 2)];
if ([stateString1 isEqualToString:@"01"]) {
[light1 setImage:[UIImage imageNamed:@"PFLight1_on"] forState:UIControlStateNormal];
light1.selected=YES;
}else{
[light1 setImage:[UIImage imageNamed:@"PFLight1_off"] forState:UIControlStateNormal];
light1.selected=NO;
}
// 灯2
NSString*stateString2=[backModel.light2btn substringWithRange:NSMakeRange(2, 2)];
if ([stateString2 isEqualToString:@"01"]) {
[light2 setImage:[UIImage imageNamed:@"PFLight1_on"] forState:UIControlStateNormal];
light2.selected=YES;
}else{
[light2 setImage:[UIImage imageNamed:@"PFLight1_off"] forState:UIControlStateNormal];
light2.selected=NO;
}
// 水泵
NSString*stateString3=[backModel.waterPumpBtn substringWithRange:NSMakeRange(2, 2)];
if ([stateString3 isEqualToString:@"01"]){
[waterPump setImage:[UIImage imageNamed:@"ChongLang_on"] forState:UIControlStateNormal];
waterPump.selected=YES;
}else{
[waterPump setImage:[UIImage imageNamed:@"ChongLang_off"] forState:UIControlStateNormal];
waterPump.selected=NO;
}
// 加热棒 状态 1字节
NSString*stateString4=[backModel.heatStickState substringWithRange:NSMakeRange(0, 2)];
if ([stateString4 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:(RuSunProtocol*)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];
timerArr=@[@[wenduString,@"设置时段"],@[setTim1,setTim2],@[setTim3,setTim4],@[setTim5,setTim6]];
return timerArr;
}
@end