diff --git a/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/Xuanduo2TimerModel.h b/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/Xuanduo2TimerModel.h
index 89d2b78..0d86519 100644
--- a/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/Xuanduo2TimerModel.h
+++ b/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/Xuanduo2TimerModel.h
@@ -91,5 +91,18 @@ NS_ASSUME_NONNULL_BEGIN
@property (nonatomic, strong) NSString *type;
+@end
+@interface XuanduoTempCorrectModel : NSObject
+
+/// 01-正偏差,02-负偏差
+@property (nonatomic, strong) NSString *deviation;
+//偏差值
+@property (nonatomic, strong) NSString *tempDelta;
+
+//实际值
+@property (nonatomic, strong) NSString *realTemp;
+
+
+
@end
NS_ASSUME_NONNULL_END
diff --git a/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/Xuanduo2TimerModel.m b/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/Xuanduo2TimerModel.m
index 1df58c5..1f9fcc0 100644
--- a/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/Xuanduo2TimerModel.m
+++ b/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/Xuanduo2TimerModel.m
@@ -34,5 +34,11 @@
@end
+@implementation XuanduoTempCorrectModel
+
+
+
+@end
+
diff --git a/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/XuanduoTempratueCorrectViewController.m b/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/XuanduoTempratueCorrectViewController.m
index 29e1637..6e96934 100644
--- a/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/XuanduoTempratueCorrectViewController.m
+++ b/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/XuanduoTempratueCorrectViewController.m
@@ -51,7 +51,8 @@ static NSString *timerTypeFlag = @"TimerTypeTableViewCell";
@property(nonatomic,copy) NSString *nextChangeDateLabel;
@property(nonatomic,strong) MyHud *XuTohud;
@property(nonatomic,strong)XuanduoTempratureCorrectView*tempView;
-
+@property(nonatomic,strong)XuanduoTempCorrectModel*tempCorrectModel;
+@property(nonatomic,strong)NSTimer*timer;
@end
@implementation XuanduoTempratueCorrectViewController
@@ -162,9 +163,12 @@ static NSString *timerTypeFlag = @"TimerTypeTableViewCell";
label.numberOfLines=0;
label.text=@"温度校准值需在+-5℃以内,超过+-5℃请更换水温抬头,更换探头后,需点击取消校准按钮,清除上一次温度校准的误差值";
CGSize size= [label.text boundingRectWithSize:CGSizeMake(300, MAXFLOAT) options:(NSStringDrawingUsesFontLeading | NSStringDrawingTruncatesLastVisibleLine | NSStringDrawingUsesLineFragmentOrigin) attributes:@{NSFontAttributeName: label.font} context:NULL].size;
- label.frame=CGRectMake((self.view.frame.size.width-size.width)/2.0, CGRectGetMaxY(tempView.frame)+10, size.width, size.height);
+ label.frame=CGRectMake((self.view.frame.size.width-size.width)/2.0, CGRectGetMaxY(tempView.frame)+100, size.width, size.height);
[self.view addSubview:label];
+ [self.tempView.cancelBtn addTarget:self action:@selector(cancelCorrect) forControlEvents:UIControlEventTouchUpInside];
+ [self.tempView.textField becomeFirstResponder];
+
}
@@ -174,8 +178,14 @@ static NSString *timerTypeFlag = @"TimerTypeTableViewCell";
#pragma mark - cell的折叠
+-(void)cancelCorrect
+{
+ [self.tempView.textField resignFirstResponder];
+ [self correctTempCorrectModel:NO];
+}
- (void)sure {
[self.tempView.textField resignFirstResponder];
+ [self correctTempCorrectModel:NO];
}
- (void)cancel {
@@ -260,40 +270,40 @@ static NSString *timerTypeFlag = @"TimerTypeTableViewCell";
NSString*string1=[dataContorl dataToHexString:data];
NSLog(@"return str == %@",string1);
NSString *readTimer = [string1 substringToIndex:4];
- if (_selectSection-2<_titieArr.count && _selectSection-2>=0 && [readTimer isEqualToString:@"0116"]) {
- if (!_timerModel) {
- _timerModel = [[Xuanduo2TimerModel alloc] init];
- _timerModel.groupModelArr = [NSMutableArray array];
- }else {
- [_timerModel.groupModelArr removeAllObjects];
+ if ( [readTimer isEqualToString:@"0116"]) {
+ NSString*lightNumber=[string1 substringWithRange:NSMakeRange(30, 2)];
+ if ([lightNumber isEqualToString:@"0b"])//定时
+ {
+ XuanduoTempCorrectModel*tempModel=[[XuanduoTempCorrectModel alloc]init];
+ tempModel.deviation=[string1 substringWithRange:NSMakeRange(32, 2)];
+ tempModel.tempDelta=[string1 substringWithRange:NSMakeRange(34, 2)];
+ tempModel.realTemp=[string1 substringWithRange:NSMakeRange(36, 4)];
+
+ self.tempCorrectModel=tempModel;
+ float mac=[dataContorl hexToTen:tempModel.realTemp];
+
+ //float TPlabel=mac/10+(mac%10)*0.1;
+ float temp = mac/10.0;
+ NSString *stringTemp = [NSString stringWithFormat:@"%.1f℃",temp];
+ self.tempView.realTempLabel.text=[NSString stringWithFormat:@"探测温度:%@",stringTemp];
+ float delta=[dataContorl hexToTen:tempModel.tempDelta];
+
+ //float TPlabel=mac/10+(mac%10)*0.1;
+ float deltatemp = delta/10.0;
+ NSString *deltatempString = [NSString stringWithFormat:@"%.1f",deltatemp];
+ NSString*prefix=@"+";
+ if ([tempModel.deviation isEqualToString:@"02"])
+ {
+ prefix=@"-";
+ }
+ self.tempView.textField.text=[NSString stringWithFormat:@"%@%@",prefix,deltatempString];
+ NSString *corrTemp = [NSString stringWithFormat:@"%.1f℃",[tempModel.deviation isEqualToString:@"02"]?(temp-deltatemp):(temp+deltatemp)];
+ self.tempView.correectTempLabel.text=corrTemp;
+
+
}
- [Xuanduo2DataUtility readTimerSocketDataWithBackMsgModel:_timerModel addWithBackStr:string1 type:self.currentdevice.type];
- NSMutableArray *dataArr = [self.timeDic objectForKey:_titieArr[_selectSection-2]];
- [dataArr removeAllObjects];
- [dataArr addObject:plusflag];
- [dataArr addObjectsFromArray:_timerModel.groupModelArr];
- BOOL havePlus = [dataArr containsObject:plusflag];
- if (havePlus && dataArr.count > 10) {
- [dataArr removeObjectAtIndex:0];
- }else if (!havePlus && dataArr.count < 10){
- [dataArr insertObject:plusflag atIndex:0];
- }
- NSLog(@"dataarr.count = %ld",dataArr.count);
-
-
}
- else if (_selectSection-2<_titieArr.count && _selectSection-2>=0 && [readTimer isEqualToString:@"0119"]) {
-
- _cycleModel=[[XuanduoCycleModel alloc]init];
- [Xuanduo2DataUtility readCycleSocketDataWithBackMsgModel:_cycleModel addWithBackStr:string1 type:self.currentdevice.type];
- NSMutableArray *dataArr = [self.timeDic objectForKey:_titieArr[_selectSection-2]];
- [dataArr removeAllObjects];
-
- [dataArr addObject:_cycleModel];
-
-
-
- }
+
if ([readTimer isEqualToString:@"0108"] || [readTimer isEqualToString:@"0105"]) {
[Xuanduo2DataUtility readSocketDataWithBackMsgModel:self.dataModel addWithBackData:data type:self.currentdevice.type];
[self refreshWithData:self.dataModel];
@@ -309,8 +319,64 @@ static NSString *timerTypeFlag = @"TimerTypeTableViewCell";
}
-(void)ifishDeviceLogInSuccees{
-
+ [self readTempCorrectModel];
+// [self.timer invalidate];
+// self.timer=nil;
+// self.timer=[NSTimer scheduledTimerWithTimeInterval:5 target:self selector:@selector(readTempCorrectModel) userInfo:nil repeats:YES];
}
+-(void)readTempCorrectModel
+{
+ baseModel*readModel=[[baseModel alloc]init];
+ readModel.sendmacId =self.currentdevice.macAddress;
+ readModel.resavemacId =self.currentdevice.macAddress;
+ readModel.functionCode=@"16";
+ readModel.massagelegth=@"12";
+
+ NSString*readString=[NSString stringWithFormat:@"%@%@%@",readModel.description,@"0b",@"0000"];
+
+ NSData*readData=[dataContorl stringToHexData:readString];
+ [[Socketsingleton sharedInstance] soketWriteData:readData];
+
+ [_indicatorView startAnimating];
+
+
+}
+-(void)correctTempCorrectModel:(BOOL)cancelCorrect;
+{
+ baseModel*readModel=[[baseModel alloc]init];
+ readModel.sendmacId =self.currentdevice.macAddress;
+ readModel.resavemacId =self.currentdevice.macAddress;
+ readModel.functionCode=@"15";
+ readModel.massagelegth=@"18";
+
+ NSString*deviation=@"01";//正校准
+ if ([self.tempView.textField.text containsString:@"-"])
+ {
+ deviation=@"02";//负向校准
+ }
+ if (cancelCorrect)
+ {
+ deviation=@"00";
+ }
+
+ NSString*pureString=[self.tempView.textField.text stringByReplacingOccurrencesOfString:@"-" withString:@""];
+ pureString=[pureString stringByReplacingOccurrencesOfString:@"+" withString:@""];
+ pureString=[pureString stringByReplacingOccurrencesOfString:@"℃" withString:@""];
+ NSInteger delta= (NSInteger)(pureString.floatValue*10);
+
+ NSString*hex=[dataContorl leftAddZero:2 andStr:[dataContorl ToHex:delta]];
+
+ NSString*readString=[NSString stringWithFormat:@"%@%@%@%@%@%@",readModel.description,@"0b",deviation,hex,@"00000000",@"0000"];
+
+ NSData*readData=[dataContorl stringToHexData:readString];
+ [[Socketsingleton sharedInstance] soketWriteData:readData];
+
+ [_indicatorView startAnimating];
+ [self readTempCorrectModel];
+
+
+}
+
-(void)ifishSocket:(AsyncSocket *)sock didAcceptNewSocket:(AsyncSocket *)newSocket{
diff --git a/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/XuanduoTempratureCorrectView.h b/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/XuanduoTempratureCorrectView.h
index ffd667f..7d88fd7 100644
--- a/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/XuanduoTempratureCorrectView.h
+++ b/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/XuanduoTempratureCorrectView.h
@@ -11,7 +11,10 @@
NS_ASSUME_NONNULL_BEGIN
@interface XuanduoTempratureCorrectView : UIView
+@property (weak, nonatomic) IBOutlet UILabel *correectTempLabel;
+@property (weak, nonatomic) IBOutlet UILabel *realTempLabel;
@property (weak, nonatomic) IBOutlet UITextField *textField;
+@property (weak, nonatomic) IBOutlet UIButton *cancelBtn;
@end
diff --git a/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/XuanduoTempratureCorrectView.m b/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/XuanduoTempratureCorrectView.m
index a5c9e3e..e8a380d 100644
--- a/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/XuanduoTempratureCorrectView.m
+++ b/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/XuanduoTempratureCorrectView.m
@@ -20,6 +20,8 @@
-(void)awakeFromNib
{
[super awakeFromNib];
+ self.cancelBtn.titleLabel.font=[UIFont systemFontOfSize:15];
+ self.correectTempLabel.layer.cornerRadius=8;
}
diff --git a/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/XuanduoTempratureCorrectView.xib b/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/XuanduoTempratureCorrectView.xib
index 818141a..8177932 100644
--- a/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/XuanduoTempratureCorrectView.xib
+++ b/Ifish/controllers/FishTinkController/maincontroller/CenterontrolControllers/XuTo/XuanduoTempratureCorrectView.xib
@@ -26,7 +26,7 @@