Commit ce3d07de by 李威

热电

parent cab09589
...@@ -514,6 +514,7 @@ ...@@ -514,6 +514,7 @@
@[@"1800",@"1800",@"1800",@"1800",@"1800"],//ps2 @[@"1800",@"1800",@"1800",@"1800",@"1800"],//ps2
@[@"1800",@"1800",@"1800",@"2700",@"1800",@"1800"],//DJMHome @[@"1800",@"1800",@"1800",@"2700",@"1800",@"1800"],//DJMHome
@[@"1800",@"1800",@"1800",@"1800",@"1800"],//Drfacialage @[@"1800",@"1800",@"1800",@"1800",@"1800"],//Drfacialage
@[@"1800",@"1800",@"1800",@"1800",@"1800"],//Dr热电
@[@"1800",@"1800",@"1800",@"1800",@"1800"],//Dr水滴 @[@"1800",@"1800",@"1800",@"1800",@"1800"],//Dr水滴
@[@"395",@"395",@"395",@"395",@"395"],//SEYOAP @[@"395",@"395",@"395",@"395",@"395"],//SEYOAP
@[@"395",@"395",@"395",@"395",@"395"]//DJM邦颜 @[@"395",@"395",@"395",@"395",@"395"]//DJM邦颜
......
...@@ -204,7 +204,14 @@ ...@@ -204,7 +204,14 @@
#define DR04_HFX_get_stop @"06000B31010200"//获取暂停 #define DR04_HFX_get_stop @"06000B31010200"//获取暂停
#define DR04_HFX_get_shortPress @"55AA06000B310102039CC6"//获取短按 #define DR04_HFX_get_shortPress @"55AA06000B310102039CC6"//获取短按
#pragma =--=-==-=-DR04==-=-=--==-=-=-=-
#define DR05_HE_send_PowerOff @"0600a631020100"//发送关机
#define DR05_HE_send_PowerOn @"0600a631020101"//发送开机
#define DR05_HE_send_enterEMS @"0500a6310202"//发送进入EMS
#define DR05_HE_send_stop @"0600a632020900"//发送暂停
#define DR05_HE_send_start @"0600a632020901"//发送开启
#define DR05_HE_send_wendu @"0600a632020b"//发送温度
#define DR05_HE_send_nengliang @"0600a632020a"//发送能量
#endif /* XHCommand_h */ #endif /* XHCommand_h */
...@@ -151,6 +151,7 @@ static NSString *const HJNotificationDisconnect = @"NotificationDisconnect"; ...@@ -151,6 +151,7 @@ static NSString *const HJNotificationDisconnect = @"NotificationDisconnect";
#define Dr022DeviceName @"Dr-02-2"//4档 #define Dr022DeviceName @"Dr-02-2"//4档
#define Dr04DeviceName @"Dr-04" #define Dr04DeviceName @"Dr-04"
#define Dr041DeviceName @"Dr-04-1" #define Dr041DeviceName @"Dr-04-1"
#define Dr05DeviceName @"Dr-05"
//SEYO //SEYO
#define DrSEYOAPDeviceName @"LS02" #define DrSEYOAPDeviceName @"LS02"
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
#ifndef XHURL_h #ifndef XHURL_h
#define XHURL_h #define XHURL_h
//#define URL @"https://testdjm.imoreme.com"//测试 //#define URL @"https://testdjm.imoreme.com"//测试
#define URL @"http://djm.imoreme.com"//正式 #define URL @"https://djm.imoreme.com"//正式
//#define URL @"http://192.168.1.168:8080"//luocong //#define URL @"http://192.168.1.168:8080"//luocong
/** 发送验证码 **/ /** 发送验证码 **/
#define VerifyCodeURL [NSString stringWithFormat:@"%@%@",URL,@"/ldm/api/getVerifyCode"] #define VerifyCodeURL [NSString stringWithFormat:@"%@%@",URL,@"/ldm/api/getVerifyCode"]
......
...@@ -277,7 +277,7 @@ static HJBluetoothManager *sharedinstance = nil; ...@@ -277,7 +277,7 @@ static HJBluetoothManager *sharedinstance = nil;
break; break;
case 5://DrWarter case 5://DrWarter
{ {
self.DeviceArr = @[Dr02DeviceName,Dr04DeviceName,Dr041DeviceName]; self.DeviceArr = @[Dr02DeviceName,Dr04DeviceName,Dr041DeviceName,Dr05DeviceName];
//,Dr021DeviceName //,Dr021DeviceName
} }
break; break;
...@@ -303,6 +303,14 @@ static HJBluetoothManager *sharedinstance = nil; ...@@ -303,6 +303,14 @@ static HJBluetoothManager *sharedinstance = nil;
[self updateBleStatus:BluetoothStatusFoundPeripheral]; [self updateBleStatus:BluetoothStatusFoundPeripheral];
[_centralManager connectPeripheral:peripheral options:nil]; [_centralManager connectPeripheral:peripheral options:nil];
} }
}else if (XHGetDataManager.machineIndex == 2) {
if ([advertisementData[@"kCBAdvDataLocalName"] isEqualToString:Dr05DeviceName]) {
XHGetDataManager.deviceCode = advertisementData[@"kCBAdvDataLocalName"];
_servicePeripheral = peripheral;
[self stopScanning];
[self updateBleStatus:BluetoothStatusFoundPeripheral];
[_centralManager connectPeripheral:peripheral options:nil];
}
} }
}else{ }else{
if ([advertisementData[@"kCBAdvDataLocalName"] isEqualToString:self.DeviceArr[XHGetDataManager.machineIndex]]) { if ([advertisementData[@"kCBAdvDataLocalName"] isEqualToString:self.DeviceArr[XHGetDataManager.machineIndex]]) {
......
...@@ -39,7 +39,11 @@ ...@@ -39,7 +39,11 @@
/// 上次操作流速 /// 上次操作流速
@property (nonatomic,assign) NSInteger currentspeed; @property (nonatomic,assign) NSInteger currentspeed;
/// 上次操作温度
@property (nonatomic,assign) NSInteger currentwendu;
/// 上次操作能量
@property (nonatomic,assign) NSInteger currentnengliang;
/// 密码 /// 密码
@property (nonatomic,copy) NSString *passWord; @property (nonatomic,copy) NSString *passWord;
/// 验证码 /// 验证码
......
...@@ -38,6 +38,11 @@ ...@@ -38,6 +38,11 @@
#define Age @"age" #define Age @"age"
#define Currentspeed @"currentspeed" #define Currentspeed @"currentspeed"
#define CurrentWendu @"currentwendu"
#define CurrentNengliang @"currentnengliang"
#define ClientId @"clientId" #define ClientId @"clientId"
...@@ -157,6 +162,22 @@ ...@@ -157,6 +162,22 @@
return [[self userDefaults] integerForKey:Currentspeed]; return [[self userDefaults] integerForKey:Currentspeed];
} }
-(void)setCurrentwendu:(NSInteger)currentspeed{
[[self userDefaults] setInteger:currentspeed forKey:CurrentWendu];
[[self userDefaults] synchronize];
}
-(NSInteger)currentwendu{
return [[self userDefaults] integerForKey:CurrentWendu];
}
-(void)setCurrentnengliang:(NSInteger)currentspeed{
[[self userDefaults] setInteger:currentspeed forKey:CurrentNengliang];
[[self userDefaults] synchronize];
}
-(NSInteger)currentnengliang{
return [[self userDefaults] integerForKey:CurrentNengliang];
}
-(void)setAge:(NSString *)age{ -(void)setAge:(NSString *)age{
[[self userDefaults] setObject:age forKey:Age]; [[self userDefaults] setObject:age forKey:Age];
......
...@@ -29,6 +29,7 @@ ...@@ -29,6 +29,7 @@
manager.responseSerializer = [AFJSONResponseSerializer serializer]; manager.responseSerializer = [AFJSONResponseSerializer serializer];
} }
manager.requestSerializer.timeoutInterval = 50; manager.requestSerializer.timeoutInterval = 50;
[manager.requestSerializer setValue:XHGetDataManager.token forHTTPHeaderField:@"token"];
[manager GET:url parameters:updateDic headers:nil progress:^(NSProgress * _Nonnull downloadProgress) { [manager GET:url parameters:updateDic headers:nil progress:^(NSProgress * _Nonnull downloadProgress) {
} success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) { } success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) {
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
#import <ZFPlayer/ZFPlayerControlView.h> #import <ZFPlayer/ZFPlayerControlView.h>
#import <ZFPlayer/ZFAVPlayerManager.h> #import <ZFPlayer/ZFAVPlayerManager.h>
#import "DXHFXVideoModel.h" #import "DXHFXVideoModel.h"
#import "KTVHTTPCache.h" #import <KTVHTTPCache/KTVHTTPCache.h>
@interface DXHEUpkeepVC () @interface DXHEUpkeepVC ()
@property (nonatomic, strong) ZFPlayerControlView *controlView; @property (nonatomic, strong) ZFPlayerControlView *controlView;
......
...@@ -10,7 +10,9 @@ ...@@ -10,7 +10,9 @@
#import "DXHotElecticView.h" #import "DXHotElecticView.h"
#import "DXHFXVideoModel.h" #import "DXHFXVideoModel.h"
#import "DXRDSmartRec.h" #import "DXRDSmartRec.h"
@interface DXHotElectricVC ()<BluetoothDelegate>{ #import <KTVHTTPCache/KTVHTTPCache.h>
@interface DXHotElectricVC ()<BluetoothDelegate,DXHotElecticViewDelegate>{
CGFloat palyTime; CGFloat palyTime;
} }
...@@ -18,7 +20,20 @@ ...@@ -18,7 +20,20 @@
@property (nonatomic,strong)DXHFXVideoDetailsModel *videoListModel; @property (nonatomic,strong)DXHFXVideoDetailsModel *videoListModel;
@property (nonatomic,strong)NSMutableArray *smartRecModelArray; @property (nonatomic,strong)NSMutableArray *smartRecModelArray;
@property (nonatomic,assign) NSInteger wenduNum;
@property (nonatomic,assign) NSInteger nengliangNum;
/// 计时器
@property (nonatomic,strong) NSTimer *timer;
@property (nonatomic,copy) NSString *deviceid;
/// 总时间
@property (nonatomic,assign) NSInteger totalTime;
@property (nonatomic,assign) NSInteger currentStress;
@property (nonatomic,assign) NSInteger currentspeed;
//操作记录id
@property (nonatomic,strong) NSString *guestureId;
@property (nonatomic,strong) NSString *extraTimeIsUsed;//额外时间是否使用
@property (nonatomic,strong)NSString *extraTimeValue;//额外时长
@end @end
@implementation DXHotElectricVC @implementation DXHotElectricVC
...@@ -29,8 +44,10 @@ ...@@ -29,8 +44,10 @@
self.navigationItem.titleView = [self switchButtonView]; self.navigationItem.titleView = [self switchButtonView];
[HJGetBluetoothManager startScaning]; //[HJGetBluetoothManager startScaning];
[self addNotification]; [self addNotification];
self.totalTime = 1800;
[self initUI]; [self initUI];
[self initData]; [self initData];
// Do any additional setup after loading the view. // Do any additional setup after loading the view.
...@@ -38,6 +55,7 @@ ...@@ -38,6 +55,7 @@
-(void)initUI { -(void)initUI {
self.dxHotElectView = [[DXHotElecticView alloc]initWithFrame:CGRectMake(0, HJNavHeight, HJScreenWidth, HJScreenHeight-HJNavHeight)]; self.dxHotElectView = [[DXHotElecticView alloc]initWithFrame:CGRectMake(0, HJNavHeight, HJScreenWidth, HJScreenHeight-HJNavHeight)];
self.dxHotElectView.delegate = self;
[self.view addSubview:self.dxHotElectView]; [self.view addSubview:self.dxHotElectView];
// [self.dxHotElectView mas_makeConstraints:^(MASConstraintMaker *make) { // [self.dxHotElectView mas_makeConstraints:^(MASConstraintMaker *make) {
...@@ -49,6 +67,8 @@ ...@@ -49,6 +67,8 @@
-(void)initData { -(void)initData {
[self requestVideoList]; [self requestVideoList];
[self requestSmartRec]; [self requestSmartRec];
self.dxHotElectView.timeLb.text = [[HJTools shared] minusToTime:self.totalTime];
} }
-(UIView *)switchButtonView { -(UIView *)switchButtonView {
...@@ -69,24 +89,244 @@ ...@@ -69,24 +89,244 @@
// topbutton.titleEdgeInsets = UIEdgeInsetsMake(0, 20, 0, 0); // topbutton.titleEdgeInsets = UIEdgeInsetsMake(0, 20, 0, 0);
// topbutton.imageEdgeInsets = UIEdgeInsetsMake(0, topbutton.titleLabel.bounds.size.width + 25, 0, -(topbutton.titleLabel.bounds.size.width + 10)); // topbutton.imageEdgeInsets = UIEdgeInsetsMake(0, topbutton.titleLabel.bounds.size.width + 25, 0, -(topbutton.titleLabel.bounds.size.width + 10));
[topbutton addTarget:self action:@selector(topBtnClik:) forControlEvents:UIControlEventTouchUpInside]; [topbutton addTarget:self action:@selector(topBtnClik:) forControlEvents:UIControlEventTouchUpInside];
return topbutton; return topbutton;
} }
-(void)topBtnClik:(UIButton *)button { -(void)topBtnClik:(UIButton *)button {
if (button.selected) { if (!button.selected) {
[button setTitle:HJLocalizedString(@" 自定义 ") forState:UIControlStateNormal]; [button setTitle:HJLocalizedString(@" 自定义 ") forState:UIControlStateNormal];
[self.dxHotElectView switchingModeType:0];
}else { }else {
[button setTitle:HJLocalizedString(@" 智能推荐 ") forState:UIControlStateNormal]; [button setTitle:HJLocalizedString(@" 智能推荐 ") forState:UIControlStateNormal];
[self.dxHotElectView switchingModeType:1];
} }
button.selected = !button.selected; button.selected = !button.selected;
} }
-(void)sendwenduValue:(NSInteger)wenduNum {
self.wenduNum = wenduNum;
[HJGetBluetoothManager writeStr:[[NSString stringWithFormat:@"%@%@",DR05_HE_send_wendu,[[HJTools shared] ToLongHex:self.wenduNum withLength:2]] withCrc16Modbus]];
}
-(void)sendNengLangValue:(NSInteger)nengliangNum {
self.nengliangNum = nengliangNum;
[HJGetBluetoothManager writeStr:[[NSString stringWithFormat:@"%@%@",DR05_HE_send_nengliang,[[HJTools shared] ToLongHex:self.nengliangNum withLength:2]] withCrc16Modbus]];
}
-(void)palyOrStopDevice:(UIButton *)button {
if(self.totalTime>0){
if (button.selected) {
[self stopDr05Action];
}else {
self.isStart = true;
if (!self.timer) {
self.timer=[NSTimer scheduledTimerWithTimeInterval:1.0f target:self selector:@selector(timerAction) userInfo:nil repeats:YES];
[[NSRunLoop mainRunLoop] addTimer:self.timer forMode:NSDefaultRunLoopMode];
}
if((!self.isUpdate && !self.guestureId) || (self.totalTime == self.remaintime &&!self.isUpdate && !self.guestureId) ){
[self saveDr05Record];
}
[HJGetBluetoothManager writeStr:[[NSString stringWithFormat:DR05_HE_send_start] withCrc16Modbus]];
}
button.selected = !button.selected;
}else {
HJSelfWeak;
[self getUseTimes:^(BOOL getTimesSuccessful) {
HJSelfStrong;
if(getTimesSuccessful == false){
[strongSelf deviceValidTime];
}
}];
}
}
-(void)setIsVerifySucceed:(BOOL)isVerifySucceed {
self.totalTime = self.remaintime;
}
-(void)deviceNoConnected {
[SVProgressHUD showErrorWithStatus:HJLocalizedString(@"仪器未连接")];
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.5 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
[SVProgressHUD dismiss];
});
}
-(void)stopDr05Action{
HJSelfWeak;
[HJGetBluetoothManager writeStr:[[NSString stringWithFormat:DR05_HE_send_stop] withCrc16Modbus]];
dispatch_async(dispatch_get_main_queue(), ^{
weakSelf.dxHotElectView.startBtn.selected = false;
});
self.isStart = false;
/// 暂停计时器
[self.timer invalidate];
self.timer=nil;
}
-(void)timerAction {
if(self.totalTime>0){
//DR04_HFX_send_getEnergy
self.totalTime--;
self.dxHotElectView.timeLb.text = [[HJTools shared] minusToTime:self.totalTime];
if((self.remaintime-self.totalTime)%20==0){
[self saveLocationRecord];
}
if((self.remaintime - self.totalTime)%3==0){
/// 工作提示音
[self playSoundEffect:@"working.wav"];
}
}else{
HJSelfWeak;
[HJGetBluetoothManager writeStr:[[NSString stringWithFormat:DR05_HE_send_stop] withCrc16Modbus]];
dispatch_async(dispatch_get_main_queue(), ^{
weakSelf.dxHotElectView.startBtn.selected = false;
});
self.isStart = false;
/// 暂停计时器
[self.timer invalidate];
self.timer=nil;
}
}
-(void)clearTime {
self.totalTime = 1800;
self.dxHotElectView.timeLb.text = [[HJTools shared] minusToTime:self.totalTime];
}
-(void)saveDr05Record {
if ([self iSDeviceID]) {
NSMutableDictionary *paramsDic = [NSMutableDictionary dictionary];
NSDictionary *recordWDic = @{
@"x":[NSString stringWithFormat:@"%ld", self.remaintime-self.totalTime],
@"y":[NSString stringWithFormat:@"%ld",self.wenduNum],
};
NSDictionary *recordNDic = @{
@"x":[NSString stringWithFormat:@"%ld", self.remaintime-self.totalTime],
@"y":[NSString stringWithFormat:@"%ld",self.nengliangNum],
};
[self.itemRecord addObject:recordWDic];
[self.itemRecord addObject:recordNDic];
NSDictionary *updateDic = @{
@"devicecode":XHGetDataManager.deviceCode,
@"time":[NSString stringWithFormat:@"%ld",self.remaintime-self.totalTime],
@"program":[NSString stringWithFormat:@"%ld",self.wenduNum],
@"record":[self.itemRecord mj_JSONString],
@"date":[[HJTools shared] currentTimeStr]
};
[self saveRecord:updateDic];
}
}
-(void)setIsSaveSucceed:(BOOL)isSaveSucceed{
if (isSaveSucceed) {
if (super.isBack) {
[self updateDr05Record];
}
}
}
-(void)updateDr05Record{
if (self.isConnected) {
NSDictionary *recordWDic = @{
@"x":[NSString stringWithFormat:@"%ld", self.remaintime-self.totalTime],
@"y":[NSString stringWithFormat:@"%ld",self.wenduNum],
};
NSDictionary *recordNDic = @{
@"x":[NSString stringWithFormat:@"%ld", self.remaintime-self.totalTime],
@"y":[NSString stringWithFormat:@"%ld",self.nengliangNum],
};
[self.itemRecord addObject:recordWDic];
[self.itemRecord addObject:recordNDic];
NSDictionary *updateDic = @{@"devicecode":XHGetDataManager.deviceCode,
@"time":[NSString stringWithFormat:@"%ld",self.remaintime-self.totalTime],
@"program":[NSString stringWithFormat:@"%ld",self.currentStress],
@"record":[self.itemRecord mj_JSONString
],@"date":[[HJTools shared] currentTimeStr]
};
NSMutableDictionary *paramsDic = [NSMutableDictionary dictionary];
NSMutableDictionary *upDic = [NSMutableDictionary dictionary];
[upDic addEntriesFromDictionary:[HJUserDefaults objectForKey:@"updateDictyDr05"]];
[paramsDic addEntriesFromDictionary:[HJUserDefaults objectForKey:@"updateDictyDr05"]];
[paramsDic addEntriesFromDictionary:updateDic];
[self updateRecord:paramsDic];
}
}
//存储数据到本地
- (void)saveLocationRecord{
NSMutableDictionary *paramsDic = [NSMutableDictionary dictionary];
NSDictionary *recordWDic = @{
@"x":[NSString stringWithFormat:@"%ld", self.remaintime-self.totalTime],
@"y":[NSString stringWithFormat:@"%ld",self.wenduNum],
};
NSDictionary *recordNDic = @{
@"x":[NSString stringWithFormat:@"%ld", self.remaintime-self.totalTime],
@"y":[NSString stringWithFormat:@"%ld",self.nengliangNum],
};
[self.itemRecord addObject:recordWDic];
[self.itemRecord addObject:recordNDic];
NSDictionary *updateDic = @{
@"devicecode":XHGetDataManager.deviceCode,
@"time":[NSString stringWithFormat:@"%ld",self.remaintime-self.totalTime],
@"program":[NSString stringWithFormat:@"%ld",self.wenduNum],
@"record":[self.itemRecord mj_JSONString],
@"date":[[HJTools shared] currentTimeStr]
};
[paramsDic addEntriesFromDictionary:updateDic];
[paramsDic setObject:[NSString stringWithFormat:@"%ld",self.remaintime] forKey:@"remaintime"];
[paramsDic setObject:[NSString stringWithFormat:@"%ld",self.totalTime] forKey:@"totalTime"];
[paramsDic setObject:self.guestureId?self.guestureId:@"0" forKey:@"guestureId"];
[paramsDic setObject:XHGetDataManager.deviceID?XHGetDataManager.deviceID:self.deviceid forKey:@"deviceid"];
[paramsDic setObject:[XHCommonMethods isEmptyOrNull:XHGetDataManager.shopId]?@"0":XHGetDataManager.shopId forKey:@"shopid"];
[paramsDic setObject:[XHCommonMethods isEmptyOrNull:XHGetDataManager.optionName]?@"0":XHGetDataManager.optionName forKey:@"optionname"];
[paramsDic setObject:[XHCommonMethods isEmptyOrNull:XHGetDataManager.optionId]?@"0":XHGetDataManager.optionId forKey:@"opid"];
[paramsDic setObject:XHGetDataManager.nickName forKey:@"clientname"];
[paramsDic setObject:[NSString stringWithFormat:@"%ld",(long)XHGetDataManager.clientId] forKey:@"customerID"];
[paramsDic setObject:@"test" forKey:@"ordernumber"];
[paramsDic setObject:[NSString isNull:self.dataModel.orderMap.verification]?@"0":self.dataModel.orderMap.verification forKey:@"ordernumber"];
[paramsDic setObject:self.guestureId forKey:@"cid"];
[paramsDic setObject:[NSString isNull:self.verificationNum]?@"0":self.verificationNum forKey:@"verificationNum"];
[paramsDic setObject:self.extraTimeIsUsed?self.extraTimeIsUsed:@"0" forKey:@"extraTimeIsUsed"];
[paramsDic setObject:self.extraTimeValue?self.extraTimeValue:@"0" forKey:@"extraTimeValue"];
[HJUserDefaults setObject:paramsDic forKey:@"updateDictyDr05"];
[HJUserDefaults synchronize];
}
#pragma mark ======= ble收到命令 ======= #pragma mark ======= ble收到命令 =======
- (void)didUpdateValueForCharacteristicValue:(NSString *)value{ - (void)didUpdateValueForCharacteristicValue:(NSString *)value{
...@@ -234,29 +474,27 @@ ...@@ -234,29 +474,27 @@
// } // }
// } // }
// //
// HJSelfWeak; HJSelfWeak;
// [SVProgressHUD showSuccessWithStatus:HJLocalizedString(@"断开连接")]; // [SVProgressHUD showSuccessWithStatus:HJLocalizedString(@"断开连接")];
// dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ // dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
// [SVProgressHUD dismiss]; // [SVProgressHUD dismiss];
// }); // });
// dispatch_async(dispatch_get_main_queue(), ^{ dispatch_async(dispatch_get_main_queue(), ^{
// weakSelf.myNoconnectView.hidden = false;
// [weakSelf setNavState:true]; weakSelf.isConnected = false;
// [weakSelf stopDr04Action]; weakSelf.dxHotElectView.isConnected = false;
// weakSelf.BLEConnect = false; });
// weakSelf.isConnected = false;
// weakSelf.isStart = false;
// });
// HJGetBluetoothManager.noReconnect = false; // HJGetBluetoothManager.noReconnect = false;
} }
#pragma mark ----------连接成功---------- #pragma mark ----------连接成功----------
-(void)connect{ -(void)connect{
//// [HJGetBluetoothManager writeStr:[DR04_HFX_send_getUpdateVersion withCrc16Modbus]]; //// [HJGetBluetoothManager writeStr:[DR04_HFX_send_getUpdateVersion withCrc16Modbus]];
// self.deviceid = XHGetDataManager.deviceID.copy; self.deviceid = XHGetDataManager.deviceID.copy;
// self.BLEConnect = true; // self.BLEConnect = true;
// self.isConnected = true; self.isConnected = true;
// self.dxHotElectView.isConnected = true;
//
// if ([XHGetDataManager.deviceCode isEqualToString:@"Dr-04"]) { // if ([XHGetDataManager.deviceCode isEqualToString:@"Dr-04"]) {
// self.isStrengthen = NO; // self.isStrengthen = NO;
// self.myView.is041 = NO; // self.myView.is041 = NO;
...@@ -284,19 +522,23 @@ ...@@ -284,19 +522,23 @@
// //
// }]; // }];
// } // }
//// [HJGetBluetoothManager writeStr:[[NSString stringWithFormat:DR04_HFX_send_getVersion] withCrc16Modbus]]; // [HJGetBluetoothManager writeStr:[[NSString stringWithFormat:DR04_HFX_send_getVersion] withCrc16Modbus]];
// dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.00 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.00 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
// //获取固件版本 //获取固件版本
//// [self showUploadAlert]; // [self showUploadAlert];
// [HJGetBluetoothManager writeStr:[[NSString stringWithFormat:DR04_HFX_send_getVersion] withCrc16Modbus]]; [HJGetBluetoothManager writeStr:[[NSString stringWithFormat:DR05_HE_send_PowerOn] withCrc16Modbus]];
// }); });
// dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.02 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.02 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
// //获取档位 //进入EMS
// [HJGetBluetoothManager writeStr:[[NSString stringWithFormat:DR04_HFX_send_getEnergy] withCrc16Modbus]]; [HJGetBluetoothManager writeStr:[[NSString stringWithFormat:DR05_HE_send_enterEMS] withCrc16Modbus]];
// }); });
// dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.04 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{ // dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.04 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
// //获取UV灯状态 // //温度
// [HJGetBluetoothManager writeStr:[[NSString stringWithFormat:DR04_HFX_send_getUVState] withCrc16Modbus]]; // [HJGetBluetoothManager writeStr:[[NSString stringWithFormat:@"%@%@",DR05_HE_send_wendu,[[HJTools shared] ToLongHex:self.wenduNum withLength:2]] withCrc16Modbus]];
// });
// dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.06 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
//
// [HJGetBluetoothManager writeStr:[[NSString stringWithFormat:@"%@%@",DR05_HE_send_nengliang,[[HJTools shared] ToLongHex:self.nengliangNum withLength:2]] withCrc16Modbus]];
// }); // });
} }
...@@ -314,6 +556,14 @@ ...@@ -314,6 +556,14 @@
weakSelf.videoListModel = [DXHFXVideoDetailsModel mj_objectWithKeyValues:urlArray[0]]; weakSelf.videoListModel = [DXHFXVideoDetailsModel mj_objectWithKeyValues:urlArray[0]];
NSLog(@"%@",weakSelf.videoListModel); NSLog(@"%@",weakSelf.videoListModel);
weakSelf.dxHotElectView.videoModel = weakSelf.videoListModel; weakSelf.dxHotElectView.videoModel = weakSelf.videoListModel;
NSURL *proxyURL = [KTVHTTPCache proxyURLWithOriginalURL:[NSURL URLWithString:weakSelf.videoListModel.videoUrl]];
weakSelf.dxHotElectView.playerView.assetURL = proxyURL;
HJSelfWeak;
weakSelf.dxHotElectView.playerView.playerDidToEnd = ^(id _Nonnull asset) {
weakSelf.dxHotElectView.playerView.assetURL = proxyURL;
};
} }
...@@ -353,10 +603,41 @@ ...@@ -353,10 +603,41 @@
} }
- (void)setIsBack:(BOOL)isBack{ - (void)setIsBack:(BOOL)isBack{
[self.navigationController popViewControllerAnimated:YES]; if(self.totalTime>0){
HJAlertView *alertView = [[HJAlertView alloc] init];
alertView.parentView = [UIApplication sharedApplication].keyWindow;
alertView.title = HJLocalizedString(@"提示");
alertView.message = HJLocalizedString(@"方案正在进行中,是否确定退出?");
[alertView setButtonTitles:[NSMutableArray arrayWithObjects:HJLocalizedString(@"取消"),HJLocalizedString(@"确定"), nil]];
[alertView show];
alertView.onButtonTouchUpInside = ^(HJAlertView * _Nonnull alertView, NSInteger buttonIndex) {
if(buttonIndex == 1){//退出
[self stopDr05Action];
HJGetBluetoothManager.noReconnect = true;
[HJGetBluetoothManager stopScanning];
[HJGetBluetoothManager stopConnect];
[HJGetBluetoothManager.delegate removeBluetoothDelegate:self];
// [self updateDr04Record];
[self.dxHotElectView.playerView stop];
[self.navigationController popViewControllerAnimated:YES];
}
[alertView close];
};
}else{
HJGetBluetoothManager.noReconnect = true;
[HJGetBluetoothManager stopScanning];
[HJGetBluetoothManager stopConnect];
[HJGetBluetoothManager.delegate removeBluetoothDelegate:self];
[self.dxHotElectView.playerView stop];
[self.navigationController popViewControllerAnimated:YES];
}
} }
-(void)handletimerAction { -(void)handletimerAction {
} }
...@@ -369,7 +650,7 @@ ...@@ -369,7 +650,7 @@
-(void)viewWillAppear:(BOOL)animated { -(void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated]; [super viewWillAppear:animated];
[HJGetBluetoothManager.delegate addBluetoothDelegate:self]; // [HJGetBluetoothManager.delegate addBluetoothDelegate:self];
[self.dxHotElectView.playerView.currentPlayerManager play]; [self.dxHotElectView.playerView.currentPlayerManager play];
if([HJUserDefaults objectForKey:@"videoVolumeIsOn"]){ if([HJUserDefaults objectForKey:@"videoVolumeIsOn"]){
......
...@@ -23,14 +23,30 @@ typedef enum : NSUInteger{ ...@@ -23,14 +23,30 @@ typedef enum : NSUInteger{
ItemHEstartOrstop, ItemHEstartOrstop,
ItemHEClearTime ItemHEClearTime
}itemHotType; }itemHotType;
@protocol DXHotElecticViewDelegate <NSObject>
-(void)sendNengLangValue:(NSInteger)nengliangNum;
-(void)sendwenduValue:(NSInteger)wenduNum;
-(void)palyOrStopDevice:(UIButton *)button;
-(void)deviceNoConnected;
-(void)clearTime;
@end
@interface DXHotElecticView : UIView @interface DXHotElecticView : UIView
@property (nonatomic,strong) ZFPlayerController *playerView; @property (nonatomic,strong) ZFPlayerController *playerView;
@property (nonatomic,strong) DXHFXVideoDetailsModel *videoModel; @property (nonatomic,strong) DXHFXVideoDetailsModel *videoModel;
@property (nonatomic,strong) NSMutableArray <DXRDSmartRec *>*smartRecModelArray; @property (nonatomic,strong) NSMutableArray <DXRDSmartRec *>*smartRecModelArray;
@property (nonatomic,strong) id<DXHotElecticViewDelegate>delegate;
@property (nonatomic,assign) BOOL isConnected;//是否连接蓝牙
@property (nonatomic,strong) UIButton *startBtn;
@property (nonatomic,strong) UILabel *timeLb;
//模式切换 0.智能推荐 1.自定义 //模式切换 0.智能推荐 1.自定义
-(void)switchingModeType:(NSInteger)type; -(void)switchingModeType:(NSInteger)type;
@end @end
NS_ASSUME_NONNULL_END NS_ASSUME_NONNULL_END
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
#import "DXHotElecticView.h" #import "DXHotElecticView.h"
#import "DXProgressBarView.h" #import "DXProgressBarView.h"
#import <KTVHTTPCache/KTVHTTPCache.h>
@interface DXHotElecticView ()<DXProgressBarViewDelegate> @interface DXHotElecticView ()<DXProgressBarViewDelegate>
@property (nonatomic, strong) ZFPlayerControlView *controlView; @property (nonatomic, strong) ZFPlayerControlView *controlView;
...@@ -26,9 +27,7 @@ ...@@ -26,9 +27,7 @@
@property (nonatomic,strong) UIButton *addBtn; @property (nonatomic,strong) UIButton *addBtn;
@property (nonatomic,strong) UILabel *timeLb;
@property (nonatomic,strong) UIImageView *timeImg; @property (nonatomic,strong) UIImageView *timeImg;
@property (nonatomic,strong) UIButton *startBtn;
@property (nonatomic,strong) UIButton *clearTimeBtn; @property (nonatomic,strong) UIButton *clearTimeBtn;
@property (nonatomic,strong) UISlider *wdSlider; @property (nonatomic,strong) UISlider *wdSlider;
...@@ -41,6 +40,13 @@ ...@@ -41,6 +40,13 @@
@property (nonatomic,strong) UIButton *volumeBtn; @property (nonatomic,strong) UIButton *volumeBtn;
@property (nonatomic,assign) NSInteger wenduNum;
@property (nonatomic,assign) NSInteger nengliangNum;
@property (nonatomic,assign) CGFloat wdSliderMin;
@property (nonatomic,assign) CGFloat wdSlidermax;
@property (nonatomic,assign) CGFloat nlSliderMin;
@property (nonatomic,assign) CGFloat nlSlidermax;
@end @end
@implementation DXHotElecticView @implementation DXHotElecticView
...@@ -48,6 +54,8 @@ ...@@ -48,6 +54,8 @@
self = [super initWithFrame:frame]; self = [super initWithFrame:frame];
if(self) { if(self) {
self.backgroundColor = XHColorRGB_Alpha(247, 247, 247, 1); self.backgroundColor = XHColorRGB_Alpha(247, 247, 247, 1);
_wenduNum = 0;
_nengliangNum = 0;
[self initUI]; [self initUI];
} }
return self; return self;
...@@ -292,7 +300,7 @@ ...@@ -292,7 +300,7 @@
[_wdNumLabel mas_makeConstraints:^(MASConstraintMaker *make) { [_wdNumLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.equalTo(bottomView); make.centerX.equalTo(bottomView);
make.bottom.equalTo(_wdSlider.mas_top).offset(-20); make.bottom.equalTo(_wdSlider.mas_top).offset(-10);
}]; }];
self.centerline = [UIView new]; self.centerline = [UIView new];
...@@ -375,15 +383,15 @@ ...@@ -375,15 +383,15 @@
[_nlNumLabel mas_makeConstraints:^(MASConstraintMaker *make) { [_nlNumLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.equalTo(bottomView); make.centerX.equalTo(bottomView);
make.bottom.equalTo(_nlSlider.mas_top).offset(-20); make.bottom.equalTo(_nlSlider.mas_top).offset(-10);
}]; }];
_timeImg = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"HFX_time"]]; _timeImg = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"HFX_time"]];
[bottomView addSubview:_timeImg]; [bottomView addSubview:_timeImg];
[_timeImg mas_makeConstraints:^(MASConstraintMaker *make) { [_timeImg mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.equalTo(self.decBtn); make.left.mas_equalTo(65);
make.top.equalTo(self.xdBtn.mas_bottom).offset(42*IPhone6ScaleHeight); make.top.equalTo(self.xdBtn.mas_bottom).offset(55*IPhone6ScaleHeight);
make.size.mas_equalTo(CGSizeMake(22, 22)); make.size.mas_equalTo(CGSizeMake(22, 22));
}]; }];
...@@ -412,7 +420,7 @@ ...@@ -412,7 +420,7 @@
[bottomView addSubview:_startBtn]; [bottomView addSubview:_startBtn];
[_startBtn mas_makeConstraints:^(MASConstraintMaker *make) { [_startBtn mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.equalTo(bottomView); make.centerX.equalTo(bottomView);
make.centerY.equalTo(self.timeImg).multipliedBy(1.1); make.centerY.equalTo(self.timeImg).multipliedBy(1.075);
}]; }];
_clearTimeBtn = [UIButton buttonWithType:UIButtonTypeCustom]; _clearTimeBtn = [UIButton buttonWithType:UIButtonTypeCustom];
...@@ -422,7 +430,7 @@ ...@@ -422,7 +430,7 @@
_clearTimeBtn.tag = ItemHEClearTime; _clearTimeBtn.tag = ItemHEClearTime;
[bottomView addSubview:_clearTimeBtn]; [bottomView addSubview:_clearTimeBtn];
[_clearTimeBtn mas_makeConstraints:^(MASConstraintMaker *make) { [_clearTimeBtn mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.equalTo(self.addBtn); make.right.mas_equalTo(-47.5);
make.centerY.equalTo(self.startBtn); make.centerY.equalTo(self.startBtn);
}]; }];
} }
...@@ -441,12 +449,33 @@ ...@@ -441,12 +449,33 @@
-(void)setVideoModel:(DXHFXVideoDetailsModel *)videoModel { -(void)setVideoModel:(DXHFXVideoDetailsModel *)videoModel {
_videoModel = videoModel; _videoModel = videoModel;
} }
-(void)setSmartRecModelArray:(NSMutableArray<DXRDSmartRec *> *)smartRecModelArray { -(void)setSmartRecModelArray:(NSMutableArray<DXRDSmartRec *> *)smartRecModelArray {
_smartRecModelArray = smartRecModelArray; _smartRecModelArray = smartRecModelArray;
// for (int i = 0; i<smartRecModelArray.count; i++) {
// DXRDSmartRec *dxsmartModel = [smartRecModelArray objectAtIndex:i];
// if ([dxsmartModel.keystr isEqualToString:@"dr_05_smart_temperature"]) {
// NSArray *array = [dxsmartModel.keyvalue componentsSeparatedByString:@":"];
// if (array.count == 2) {
// _wdSliderMin = [array[0] floatValue];
// _wdSlidermax = [array[1] floatValue];
// }
// }else if([dxsmartModel.keystr isEqualToString:@"dr_05_smart_energy"]) {
// NSArray *array = [dxsmartModel.keyvalue componentsSeparatedByString:@":"];
// if (array.count == 2) {
// _nlSliderMin = [array[0] floatValue];
// _nlSlidermax = [array[1] floatValue];
// }
// }
// }
} }
-(void)switchingModeType:(NSInteger)type { -(void)switchingModeType:(NSInteger)type {
if (type == 0) { if (type == 0) {
for (int i = 0; i<_smartRecModelArray.count; i++) { for (int i = 0; i<_smartRecModelArray.count; i++) {
...@@ -456,6 +485,7 @@ ...@@ -456,6 +485,7 @@
if (array.count == 2) { if (array.count == 2) {
_wdSlider.minimumValue = [array[0] floatValue]; _wdSlider.minimumValue = [array[0] floatValue];
_wdSlider.maximumValue = [array[1] floatValue]; _wdSlider.maximumValue = [array[1] floatValue];
_wenduNum = _wdSlider.minimumValue*100;
} }
} }
else if ([model.keystr isEqualToString:@"dr_05_smart_energy"]){ else if ([model.keystr isEqualToString:@"dr_05_smart_energy"]){
...@@ -463,36 +493,143 @@ ...@@ -463,36 +493,143 @@
if (array.count == 2) { if (array.count == 2) {
_nlSlider.minimumValue = [array[0] floatValue]; _nlSlider.minimumValue = [array[0] floatValue];
_nlSlider.maximumValue = [array[1] floatValue]; _nlSlider.maximumValue = [array[1] floatValue];
_nengliangNum = _wdSlider.minimumValue*100;
} }
} }
} }
}else { }else {
_nlSlider.minimumValue = 0;
_nlSlider.maximumValue = 1;
_wdSlider.minimumValue = 0;
_wdSlider.maximumValue = 1;
} }
} }
-(void)controlWithItem:(UIButton *)button { -(void)controlWithItem:(UIButton *)button {
if (self.isConnected) {
if (button.tag == ItemWenduDec) {
if (_wenduNum == _wdSlider.minimumValue*100) {
if (self.delegate && [self.delegate respondsToSelector:@selector(sendwenduValue:)]) {
[self.delegate sendwenduValue:_wenduNum];
}
}else {
_wenduNum--;
if (self.delegate && [self.delegate respondsToSelector:@selector(sendwenduValue:)]) {
[self.delegate sendwenduValue:_wenduNum];
}
}
float value = _wenduNum/100.f;
_wdSlider.value = value;
_wdNumLabel.text = [NSString stringWithFormat:@"%.f%%",value*100];
}else if (button.tag == ItemWenduAdd) {
if (_wenduNum == _wdSlider.maximumValue*100) {
if (self.delegate && [self.delegate respondsToSelector:@selector(sendwenduValue:)]) {
[self.delegate sendwenduValue:_wenduNum];
}
}else {
_wenduNum++;
if (self.delegate && [self.delegate respondsToSelector:@selector(sendwenduValue:)]) {
[self.delegate sendwenduValue:_wenduNum];
}
}
float value = _wenduNum/100.f;
_wdSlider.value = value;
_wdNumLabel.text = [NSString stringWithFormat:@"%.f%%",value*100];
}else if (button.tag == ItemNengLdec) {
if (_nengliangNum == _nlSlider.minimumValue*100) {
if (self.delegate && [self.delegate respondsToSelector:@selector(sendNengLangValue:)]) {
[self.delegate sendNengLangValue:_nengliangNum];
}
}else {
_nengliangNum--;
if (self.delegate && [self.delegate respondsToSelector:@selector(sendNengLangValue:)]) {
[self.delegate sendNengLangValue:_nengliangNum];
}
}
float value = _nengliangNum/100.f;
_nlSlider.value = value;
_nlNumLabel.text = [NSString stringWithFormat:@"%.f%%",value*100];
}else if (button.tag == ItemNebgLadd) {
if (_nengliangNum == _nlSlider.maximumValue*100) {
if (self.delegate && [self.delegate respondsToSelector:@selector(sendNengLangValue:)]) {
[self.delegate sendNengLangValue:_nengliangNum];
}
}else {
_nengliangNum++;
if (self.delegate && [self.delegate respondsToSelector:@selector(sendNengLangValue:)]) {
[self.delegate sendNengLangValue:_nengliangNum];
}
}
float value = _nengliangNum/100.f;
_nlSlider.value = value;
_nlNumLabel.text = [NSString stringWithFormat:@"%.f%%",value*100];
}else if (button.tag == ItemHEstartOrstop) {
if (self.delegate && [self.delegate respondsToSelector:@selector(palyOrStopDevice:)]) {
[self.delegate palyOrStopDevice:button];
}
}
}else {
if (self.delegate && [self.delegate respondsToSelector:@selector(deviceNoConnected)]) {
[self.delegate deviceNoConnected];
}
}
if (button.tag == ItemHEClearTime) {
if (self.delegate && [self.delegate respondsToSelector:@selector(clearTime)]) {
[self.delegate clearTime];
}
}
} }
-(void)sliderbutton:(UISlider *)slider { -(void)sliderbutton:(UISlider *)slider {
if (!self.isConnected) {
return;
}
if (self.nlSlider == slider) { if (self.nlSlider == slider) {
float value = _nlSlider.value; float value = _nlSlider.value;
_nengliangNum = 100*value;
_nlNumLabel.text = [NSString stringWithFormat:@"%.f%%",value/_nlSlider.maximumValue*100]; _nlNumLabel.text = [NSString stringWithFormat:@"%.f%%",value/_nlSlider.maximumValue*100];
if (self.delegate && [self.delegate respondsToSelector:@selector(sendNengLangValue:)]) {
[self.delegate sendNengLangValue:_nengliangNum];
}
}else { }else {
float value = _wdSlider.value; float value = _wdSlider.value;
_wenduNum = 100*value;
_wdNumLabel.text = [NSString stringWithFormat:@"%.f%%",value/_wdSlider.maximumValue*100]; _wdNumLabel.text = [NSString stringWithFormat:@"%.f%%",value/_wdSlider.maximumValue*100];
if (self.delegate && [self.delegate respondsToSelector:@selector(sendwenduValue:)]) {
[self.delegate sendwenduValue:_wenduNum];
}
} }
} }
-(void)sliderChangedbutton:(UISlider *)slider { -(void)sliderChangedbutton:(UISlider *)slider {
if (self.nlSlider == slider) { if (self.isConnected) {
float value = _nlSlider.value; if (self.nlSlider == slider) {
_nlNumLabel.text = [NSString stringWithFormat:@"%.f%%",value/_nlSlider.maximumValue*100]; float value = _nlSlider.value;
_nlNumLabel.text = [NSString stringWithFormat:@"%.f%%",value*100];
}else {
float value = _wdSlider.value;
_wdNumLabel.text = [NSString stringWithFormat:@"%.f%%",value*100];
}
}else { }else {
float value = _wdSlider.value; self.nlSlider.value = 0;
_wdNumLabel.text = [NSString stringWithFormat:@"%.f%%",value/_wdSlider.maximumValue*100]; self.wdSlider.value = 0;
_nlNumLabel.text = [NSString stringWithFormat:@"%.f%%",self.nlSlider.value/_nlSlider.maximumValue*100];
_wdNumLabel.text = [NSString stringWithFormat:@"%.f%%",self.wdSlider.value/_wdSlider.maximumValue*100];
if (self.delegate && [self.delegate respondsToSelector:@selector(deviceNoConnected)]) {
[self.delegate deviceNoConnected];
}
} }
} }
...@@ -510,7 +647,9 @@ ...@@ -510,7 +647,9 @@
} }
-(void)playVideoTime:(CGFloat)time { -(void)playVideoTime:(CGFloat)time {
[self.playerView seekToTime:time completionHandler:^(BOOL finished) {
}];
} }
-(void)topBtnClik:(UIButton *)button { -(void)topBtnClik:(UIButton *)button {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment