ifish/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/JuNeng/JuNengSoketBackUtls.m

316 lines
14 KiB
Objective-C

//
// JuNengSoketBackUtls.m
// Ifish
//
// Created by imac on 17/1/12.
// Copyright © 2017年 lianlian. All rights reserved.
//
#import "JuNengSoketBackUtls.h"
@implementation JuNengSoketBackUtls
+(void)readSoketDataWithBackMsgModel:(JuNengProtocol*)model
addWithBackData:(NSData*)data{
//有运行模式字断
NSString*totalString=[dataContorl dataToHexString:data];
model.light=[totalString substringWithRange:NSMakeRange(32, 4)];
model.shajunLight = [totalString substringWithRange:NSMakeRange(36, 4)];
model.gasPumpBtn=[totalString substringWithRange:NSMakeRange(40, 4)];
model.uvPumpBtn=[totalString substringWithRange:NSMakeRange(44, 4)];
model.fuJian = [totalString substringWithRange:NSMakeRange(48, 4)];
model.timer1=[totalString substringWithRange:NSMakeRange(52,12)];
model.timer2=[totalString substringWithRange:NSMakeRange(64, 12)];
model.timer3=[totalString substringWithRange:NSMakeRange(76, 12)];
model.timer4=[totalString substringWithRange:NSMakeRange(88, 12)];
model.timer5=[totalString substringWithRange:NSMakeRange(100, 12)];
model.timer6=[totalString substringWithRange:NSMakeRange(112, 12)];
model.timer7=[totalString substringWithRange:NSMakeRange(124, 12)];
model.timer8=[totalString substringWithRange:NSMakeRange(136,12)];
model.timer9=[totalString substringWithRange:NSMakeRange(148, 12)];
model.timer10=[totalString substringWithRange:NSMakeRange(160, 12)];
model.timer11=[totalString substringWithRange:NSMakeRange(172, 12)];
model.timer12=[totalString substringWithRange:NSMakeRange(184, 12)];
model.timer13=[totalString substringWithRange:NSMakeRange(196, 12)];
model.timer14=[totalString substringWithRange:NSMakeRange(208, 12)];
model.timer15=[totalString substringWithRange:NSMakeRange(220, 12)];
model.heatStickState = [totalString substringWithRange:NSMakeRange(232, 2)];
model.wendu=[totalString substringWithRange:NSMakeRange(234, 4)];
model.heatTemperature=[totalString substringWithRange:NSMakeRange(238, 4)];
model.baojingSwitch=[totalString substringWithRange:NSMakeRange(242, 2)];
model.miniTp=[totalString substringWithRange:NSMakeRange(244, 4)];
model.maxTp=[totalString substringWithRange:NSMakeRange(248, 4)];
model.funcCode= [totalString substringWithRange:NSMakeRange(252, 4)];
// //实施更新数据 保存
[[DataCenter defaultDtacenter] setValue:model forKey:@"JuNengCCProto"];
}
+(void)setTemperaturelabel:(UILabel*)temperaturelabel
addbubleImge:(UIImageView*)bubleImg
WithBackData:(NSData*)data
addWithBackMassageModel:(JuNengProtocol*)backModel
addWithTableview:(UITableView*)tableview
{
NSString*str=[dataContorl dataToHexString:data];
str=[str substringWithRange:NSMakeRange(234,4)];
UInt64 mac=[dataContorl hexToTen:str];
NSLog(@"%llu",mac);
// float TPlabel=mac/10;
// int temp= (int)(TPlabel+0.5);
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=@"0";
}else{
temperaturelabel.text=stringFloat;
}
});
}
+(void)resetJuNengCCBtnState:(UIButton*)light
addShajunLight:(UIButton*)shajunLight
addGasPump:(UIButton*)gasPump
addUV:(UIButton*)uvBtn
addFuJian:(UIButton*)fuJianBtn
addJiaRe:(UIButton*)JiaReBtn
withBackModel:(JuNengProtocol*)backModel
{
//灯一
NSString*stateString1=[backModel.light substringWithRange:NSMakeRange(2, 2)];
if ([stateString1 isEqualToString:@"01"]) {
[light setImage:[UIImage imageNamed:@"PFLight1_on.png"] forState:UIControlStateNormal];
light.selected=YES;
}else{
[light setImage:[UIImage imageNamed:@"PFLight1_off.png"] forState:UIControlStateNormal];
light.selected=NO;
}
// 杀菌灯
NSString*stateString2=[backModel.shajunLight substringWithRange:NSMakeRange(2, 2)];
if ([stateString2 isEqualToString:@"01"]) {
[shajunLight setImage:[UIImage imageNamed:@"PFkilLlight_on.png"] forState:UIControlStateNormal];
shajunLight.selected=YES;
}else{
[shajunLight setImage:[UIImage imageNamed:@"PFkilLlight_off.png"] forState:UIControlStateNormal];
shajunLight.selected=NO;
}
//氧泵
NSString*stateString3=[backModel.gasPumpBtn substringWithRange:NSMakeRange(2, 2)];
if ([stateString3 isEqualToString:@"01"]) {
[gasPump setImage:[UIImage imageNamed:@"O2_on.png"] forState:UIControlStateNormal];
gasPump.selected=YES;
}else{
gasPump.selected=NO;
[gasPump setImage:[UIImage imageNamed:@"O2_off.png"] forState:UIControlStateNormal];
}
//循环水泵
NSString*stateString4=[backModel.uvPumpBtn substringWithRange:NSMakeRange(2, 2)];
if ([stateString4 isEqualToString:@"01"]) {
[uvBtn setImage:[UIImage imageNamed:@"PFPump_on.png"] forState:UIControlStateNormal];
uvBtn.selected=YES;
}else{
uvBtn.selected=NO;
[uvBtn setImage:[UIImage imageNamed:@"PFPump_off.png"] forState:UIControlStateNormal];
}
//备用 附件
NSString*stateString5=[backModel.fuJian substringWithRange:NSMakeRange(2, 2)];
if ([stateString5 isEqualToString:@"01"]) {
[fuJianBtn setImage:[UIImage imageNamed:@"NewPiFu_beiyongon.png"] forState:UIControlStateNormal];
fuJianBtn.selected=YES;
}else{
fuJianBtn.selected=NO;
[fuJianBtn setImage:[UIImage imageNamed:@"NewPiFu_beiyongoff.png"] forState:UIControlStateNormal];
}
//加热 注意只有一个字节 加热棒只控制温度不设置开关 开关状态服务器返回
NSString*stateString7=[backModel.heatStickState substringWithRange:NSMakeRange(0, 2)];
if ([stateString7 isEqualToString:@"01"]) {
[JiaReBtn setImage:[UIImage imageNamed:@"JiaReBang_on.png"] forState:UIControlStateNormal];
JiaReBtn.selected=YES;
}else{
JiaReBtn.selected=NO;
[JiaReBtn setImage:[UIImage imageNamed:@"JiaReBang_off.png"] forState:UIControlStateNormal];
}
}
//不同于别的 设备 此设备 一个控制三个定时器
+(NSArray*)refreshJuNengCCTimerTempWithBackeModel:(JuNengProtocol*)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];
// 十六进制
NSString*startTimeHex9=[backModel.timer9 substringWithRange:NSMakeRange(4, 4)];
NSString*endTimeHex9=[backModel.timer9 substringWithRange:NSMakeRange(8, 4)];
// 十进制
NSString*startTimeTen9=[dataContorl hexStringToDateString:startTimeHex9];
NSString*endTimeTen9=[dataContorl hexStringToDateString:endTimeHex9];
NSString*setTim9=[NSString stringWithFormat:@"%@~%@",startTimeTen9,endTimeTen9];
// 十六进制
NSString*startTimeHex10=[backModel.timer10 substringWithRange:NSMakeRange(4, 4)];
NSString*endTimeHex10=[backModel.timer10 substringWithRange:NSMakeRange(8, 4)];
// 十进制
NSString*startTimeTen10=[dataContorl hexStringToDateString:startTimeHex10];
NSString*endTimeTen10=[dataContorl hexStringToDateString:endTimeHex10];
NSString*setTim10=[NSString stringWithFormat:@"%@~%@",startTimeTen10,endTimeTen10];
// 十六进制
NSString*startTimeHex11=[backModel.timer11 substringWithRange:NSMakeRange(4, 4)];
NSString*endTimeHex11=[backModel.timer11 substringWithRange:NSMakeRange(8, 4)];
// 十进制
NSString*startTimeTen11=[dataContorl hexStringToDateString:startTimeHex11];
NSString*endTimeTen11=[dataContorl hexStringToDateString:endTimeHex11];
NSString*setTim11=[NSString stringWithFormat:@"%@~%@",startTimeTen11,endTimeTen11];
// 十六进制
NSString*startTimeHex12=[backModel.timer12 substringWithRange:NSMakeRange(4, 4)];
NSString*endTimeHex12=[backModel.timer12 substringWithRange:NSMakeRange(8, 4)];
// 十进制
NSString*startTimeTen12=[dataContorl hexStringToDateString:startTimeHex12];
NSString*endTimeTen12=[dataContorl hexStringToDateString:endTimeHex12];
NSString*setTim12=[NSString stringWithFormat:@"%@~%@",startTimeTen12,endTimeTen12];
// 十六进制
NSString*startTimeHex13=[backModel.timer13 substringWithRange:NSMakeRange(4, 4)];
NSString*endTimeHex13=[backModel.timer13 substringWithRange:NSMakeRange(8, 4)];
// 十进制
NSString*startTimeTen13=[dataContorl hexStringToDateString:startTimeHex13];
NSString*endTimeTen13=[dataContorl hexStringToDateString:endTimeHex13];
NSString*setTim13=[NSString stringWithFormat:@"%@~%@",startTimeTen13,endTimeTen13];
// 十六进制
NSString*startTimeHex14=[backModel.timer14 substringWithRange:NSMakeRange(4, 4)];
NSString*endTimeHex14=[backModel.timer14 substringWithRange:NSMakeRange(8, 4)];
// 十进制
NSString*startTimeTen14=[dataContorl hexStringToDateString:startTimeHex14];
NSString*endTimeTen14=[dataContorl hexStringToDateString:endTimeHex14];
NSString*setTim14=[NSString stringWithFormat:@"%@~%@",startTimeTen14,endTimeTen14];
// 十六进制
NSString*startTimeHex15=[backModel.timer15 substringWithRange:NSMakeRange(4, 4)];
NSString*endTimeHex15=[backModel.timer15 substringWithRange:NSMakeRange(8, 4)];
// 十进制
NSString*startTimeTen15=[dataContorl hexStringToDateString:startTimeHex15];
NSString*endTimeTen15=[dataContorl hexStringToDateString:endTimeHex15];
NSString*setTim15=[NSString stringWithFormat:@"%@~%@",startTimeTen15,endTimeTen15];
timerArr=@[@[wenduString,@"设置时段"],@[setTim1,setTim2,setTim3],@[setTim4,setTim5,setTim6],@[setTim7,setTim8,setTim9],@[setTim10,setTim11,setTim12],@[setTim13,setTim14,setTim15,@""]];
return timerArr;
}
@end