ifish/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/RuiMei/RuiMeiBackMsgUtils.m

232 lines
9.5 KiB
Objective-C

//
// 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)];
UInt64 mac=[dataContorl hexToTen:backModel.heatTemperature];
float TPlabel=mac/10;
int temp= (int)(TPlabel+0.5);
NSString *stringFloat = [NSString stringWithFormat:@"%d",temp];
UILabel *lbl = [jiaReBang viewWithTag:1];
if ([stateString6 isEqualToString:@"01"]){
//加热
lbl.textColor = JWUIColorFromRGB(0x38b9fc);
}else{
lbl.textColor = [UIColor lightGrayColor];
}
lbl.text = [NSString stringWithFormat:@"%@°C", stringFloat];
}
+(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