Commit ce3d07de by 李威

热电

parent cab09589
......@@ -514,6 +514,7 @@
@[@"1800",@"1800",@"1800",@"1800",@"1800"],//ps2
@[@"1800",@"1800",@"1800",@"2700",@"1800",@"1800"],//DJMHome
@[@"1800",@"1800",@"1800",@"1800",@"1800"],//Drfacialage
@[@"1800",@"1800",@"1800",@"1800",@"1800"],//Dr热电
@[@"1800",@"1800",@"1800",@"1800",@"1800"],//Dr水滴
@[@"395",@"395",@"395",@"395",@"395"],//SEYOAP
@[@"395",@"395",@"395",@"395",@"395"]//DJM邦颜
......
......@@ -204,7 +204,14 @@
#define DR04_HFX_get_stop @"06000B31010200"//获取暂停
#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 */
......@@ -151,6 +151,7 @@ static NSString *const HJNotificationDisconnect = @"NotificationDisconnect";
#define Dr022DeviceName @"Dr-02-2"//4档
#define Dr04DeviceName @"Dr-04"
#define Dr041DeviceName @"Dr-04-1"
#define Dr05DeviceName @"Dr-05"
//SEYO
#define DrSEYOAPDeviceName @"LS02"
......
......@@ -9,7 +9,7 @@
#ifndef XHURL_h
#define XHURL_h
//#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 VerifyCodeURL [NSString stringWithFormat:@"%@%@",URL,@"/ldm/api/getVerifyCode"]
......
......@@ -277,7 +277,7 @@ static HJBluetoothManager *sharedinstance = nil;
break;
case 5://DrWarter
{
self.DeviceArr = @[Dr02DeviceName,Dr04DeviceName,Dr041DeviceName];
self.DeviceArr = @[Dr02DeviceName,Dr04DeviceName,Dr041DeviceName,Dr05DeviceName];
//,Dr021DeviceName
}
break;
......@@ -303,6 +303,14 @@ static HJBluetoothManager *sharedinstance = nil;
[self updateBleStatus:BluetoothStatusFoundPeripheral];
[_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{
if ([advertisementData[@"kCBAdvDataLocalName"] isEqualToString:self.DeviceArr[XHGetDataManager.machineIndex]]) {
......
......@@ -39,7 +39,11 @@
/// 上次操作流速
@property (nonatomic,assign) NSInteger currentspeed;
/// 上次操作温度
@property (nonatomic,assign) NSInteger currentwendu;
/// 上次操作能量
@property (nonatomic,assign) NSInteger currentnengliang;
/// 密码
@property (nonatomic,copy) NSString *passWord;
/// 验证码
......
......@@ -38,6 +38,11 @@
#define Age @"age"
#define Currentspeed @"currentspeed"
#define CurrentWendu @"currentwendu"
#define CurrentNengliang @"currentnengliang"
#define ClientId @"clientId"
......@@ -157,6 +162,22 @@
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{
[[self userDefaults] setObject:age forKey:Age];
......
......@@ -29,6 +29,7 @@
manager.responseSerializer = [AFJSONResponseSerializer serializer];
}
manager.requestSerializer.timeoutInterval = 50;
[manager.requestSerializer setValue:XHGetDataManager.token forHTTPHeaderField:@"token"];
[manager GET:url parameters:updateDic headers:nil progress:^(NSProgress * _Nonnull downloadProgress) {
} success:^(NSURLSessionDataTask * _Nonnull task, id _Nullable responseObject) {
......
......@@ -10,7 +10,7 @@
#import <ZFPlayer/ZFPlayerControlView.h>
#import <ZFPlayer/ZFAVPlayerManager.h>
#import "DXHFXVideoModel.h"
#import "KTVHTTPCache.h"
#import <KTVHTTPCache/KTVHTTPCache.h>
@interface DXHEUpkeepVC ()
@property (nonatomic, strong) ZFPlayerControlView *controlView;
......
......@@ -10,7 +10,9 @@
#import "DXHotElecticView.h"
#import "DXHFXVideoModel.h"
#import "DXRDSmartRec.h"
@interface DXHotElectricVC ()<BluetoothDelegate>{
#import <KTVHTTPCache/KTVHTTPCache.h>
@interface DXHotElectricVC ()<BluetoothDelegate,DXHotElecticViewDelegate>{
CGFloat palyTime;
}
......@@ -18,7 +20,20 @@
@property (nonatomic,strong)DXHFXVideoDetailsModel *videoListModel;
@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
@implementation DXHotElectricVC
......@@ -29,8 +44,10 @@
self.navigationItem.titleView = [self switchButtonView];
[HJGetBluetoothManager startScaning];
//[HJGetBluetoothManager startScaning];
[self addNotification];
self.totalTime = 1800;
[self initUI];
[self initData];
// Do any additional setup after loading the view.
......@@ -38,6 +55,7 @@
-(void)initUI {
self.dxHotElectView = [[DXHotElecticView alloc]initWithFrame:CGRectMake(0, HJNavHeight, HJScreenWidth, HJScreenHeight-HJNavHeight)];
self.dxHotElectView.delegate = self;
[self.view addSubview:self.dxHotElectView];
// [self.dxHotElectView mas_makeConstraints:^(MASConstraintMaker *make) {
......@@ -49,6 +67,8 @@
-(void)initData {
[self requestVideoList];
[self requestSmartRec];
self.dxHotElectView.timeLb.text = [[HJTools shared] minusToTime:self.totalTime];
}
-(UIView *)switchButtonView {
......@@ -71,22 +91,242 @@
[topbutton addTarget:self action:@selector(topBtnClik:) forControlEvents:UIControlEventTouchUpInside];
return topbutton;
}
-(void)topBtnClik:(UIButton *)button {
if (!button.selected) {
[button setTitle:HJLocalizedString(@" 自定义 ") forState:UIControlStateNormal];
[self.dxHotElectView switchingModeType:0];
}else {
[button setTitle:HJLocalizedString(@" 智能推荐 ") forState:UIControlStateNormal];
[self.dxHotElectView switchingModeType:1];
}
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]];
}
return topbutton;
-(void)sendNengLangValue:(NSInteger)nengliangNum {
self.nengliangNum = nengliangNum;
[HJGetBluetoothManager writeStr:[[NSString stringWithFormat:@"%@%@",DR05_HE_send_nengliang,[[HJTools shared] ToLongHex:self.nengliangNum withLength:2]] withCrc16Modbus]];
}
-(void)topBtnClik:(UIButton *)button {
-(void)palyOrStopDevice:(UIButton *)button {
if(self.totalTime>0){
if (button.selected) {
[button setTitle:HJLocalizedString(@" 自定义 ") forState:UIControlStateNormal];
[self stopDr05Action];
}else {
[button setTitle:HJLocalizedString(@" 智能推荐 ") forState:UIControlStateNormal];
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收到命令 =======
- (void)didUpdateValueForCharacteristicValue:(NSString *)value{
......@@ -234,28 +474,26 @@
// }
// }
//
// HJSelfWeak;
HJSelfWeak;
// [SVProgressHUD showSuccessWithStatus:HJLocalizedString(@"断开连接")];
// dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
// [SVProgressHUD dismiss];
// });
// dispatch_async(dispatch_get_main_queue(), ^{
// weakSelf.myNoconnectView.hidden = false;
// [weakSelf setNavState:true];
// [weakSelf stopDr04Action];
// weakSelf.BLEConnect = false;
// weakSelf.isConnected = false;
// weakSelf.isStart = false;
// });
dispatch_async(dispatch_get_main_queue(), ^{
weakSelf.isConnected = false;
weakSelf.dxHotElectView.isConnected = false;
});
// HJGetBluetoothManager.noReconnect = false;
}
#pragma mark ----------连接成功----------
-(void)connect{
//// [HJGetBluetoothManager writeStr:[DR04_HFX_send_getUpdateVersion withCrc16Modbus]];
// self.deviceid = XHGetDataManager.deviceID.copy;
self.deviceid = XHGetDataManager.deviceID.copy;
// self.BLEConnect = true;
// self.isConnected = true;
self.isConnected = true;
self.dxHotElectView.isConnected = true;
//
// if ([XHGetDataManager.deviceCode isEqualToString:@"Dr-04"]) {
// self.isStrengthen = NO;
......@@ -284,19 +522,23 @@
//
// }];
// }
//// [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(), ^{
// //获取固件版本
//// [self showUploadAlert];
// [HJGetBluetoothManager writeStr:[[NSString stringWithFormat:DR04_HFX_send_getVersion] withCrc16Modbus]];
// });
// dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.02 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
// //获取档位
// [HJGetBluetoothManager writeStr:[[NSString stringWithFormat:DR04_HFX_send_getEnergy] withCrc16Modbus]];
// });
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.00 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
//获取固件版本
// [self showUploadAlert];
[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(), ^{
//进入EMS
[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(), ^{
// //获取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 @@
weakSelf.videoListModel = [DXHFXVideoDetailsModel mj_objectWithKeyValues:urlArray[0]];
NSLog(@"%@",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 @@
}
- (void)setIsBack:(BOOL)isBack{
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 {
}
......@@ -369,7 +650,7 @@
-(void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[HJGetBluetoothManager.delegate addBluetoothDelegate:self];
// [HJGetBluetoothManager.delegate addBluetoothDelegate:self];
[self.dxHotElectView.playerView.currentPlayerManager play];
if([HJUserDefaults objectForKey:@"videoVolumeIsOn"]){
......
......@@ -23,14 +23,30 @@ typedef enum : NSUInteger{
ItemHEstartOrstop,
ItemHEClearTime
}itemHotType;
@protocol DXHotElecticViewDelegate <NSObject>
-(void)sendNengLangValue:(NSInteger)nengliangNum;
-(void)sendwenduValue:(NSInteger)wenduNum;
-(void)palyOrStopDevice:(UIButton *)button;
-(void)deviceNoConnected;
-(void)clearTime;
@end
@interface DXHotElecticView : UIView
@property (nonatomic,strong) ZFPlayerController *playerView;
@property (nonatomic,strong) DXHFXVideoDetailsModel *videoModel;
@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.自定义
-(void)switchingModeType:(NSInteger)type;
@end
NS_ASSUME_NONNULL_END
......@@ -7,6 +7,7 @@
#import "DXHotElecticView.h"
#import "DXProgressBarView.h"
#import <KTVHTTPCache/KTVHTTPCache.h>
@interface DXHotElecticView ()<DXProgressBarViewDelegate>
@property (nonatomic, strong) ZFPlayerControlView *controlView;
......@@ -26,9 +27,7 @@
@property (nonatomic,strong) UIButton *addBtn;
@property (nonatomic,strong) UILabel *timeLb;
@property (nonatomic,strong) UIImageView *timeImg;
@property (nonatomic,strong) UIButton *startBtn;
@property (nonatomic,strong) UIButton *clearTimeBtn;
@property (nonatomic,strong) UISlider *wdSlider;
......@@ -41,6 +40,13 @@
@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
@implementation DXHotElecticView
......@@ -48,6 +54,8 @@
self = [super initWithFrame:frame];
if(self) {
self.backgroundColor = XHColorRGB_Alpha(247, 247, 247, 1);
_wenduNum = 0;
_nengliangNum = 0;
[self initUI];
}
return self;
......@@ -292,7 +300,7 @@
[_wdNumLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.equalTo(bottomView);
make.bottom.equalTo(_wdSlider.mas_top).offset(-20);
make.bottom.equalTo(_wdSlider.mas_top).offset(-10);
}];
self.centerline = [UIView new];
......@@ -375,15 +383,15 @@
[_nlNumLabel mas_makeConstraints:^(MASConstraintMaker *make) {
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"]];
[bottomView addSubview:_timeImg];
[_timeImg mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.equalTo(self.decBtn);
make.top.equalTo(self.xdBtn.mas_bottom).offset(42*IPhone6ScaleHeight);
make.left.mas_equalTo(65);
make.top.equalTo(self.xdBtn.mas_bottom).offset(55*IPhone6ScaleHeight);
make.size.mas_equalTo(CGSizeMake(22, 22));
}];
......@@ -412,7 +420,7 @@
[bottomView addSubview:_startBtn];
[_startBtn mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.equalTo(bottomView);
make.centerY.equalTo(self.timeImg).multipliedBy(1.1);
make.centerY.equalTo(self.timeImg).multipliedBy(1.075);
}];
_clearTimeBtn = [UIButton buttonWithType:UIButtonTypeCustom];
......@@ -422,7 +430,7 @@
_clearTimeBtn.tag = ItemHEClearTime;
[bottomView addSubview:_clearTimeBtn];
[_clearTimeBtn mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.equalTo(self.addBtn);
make.right.mas_equalTo(-47.5);
make.centerY.equalTo(self.startBtn);
}];
}
......@@ -441,12 +449,33 @@
-(void)setVideoModel:(DXHFXVideoDetailsModel *)videoModel {
_videoModel = videoModel;
}
-(void)setSmartRecModelArray:(NSMutableArray<DXRDSmartRec *> *)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 {
if (type == 0) {
for (int i = 0; i<_smartRecModelArray.count; i++) {
......@@ -456,6 +485,7 @@
if (array.count == 2) {
_wdSlider.minimumValue = [array[0] floatValue];
_wdSlider.maximumValue = [array[1] floatValue];
_wenduNum = _wdSlider.minimumValue*100;
}
}
else if ([model.keystr isEqualToString:@"dr_05_smart_energy"]){
......@@ -463,36 +493,143 @@
if (array.count == 2) {
_nlSlider.minimumValue = [array[0] floatValue];
_nlSlider.maximumValue = [array[1] floatValue];
_nengliangNum = _wdSlider.minimumValue*100;
}
}
}
}else {
_nlSlider.minimumValue = 0;
_nlSlider.maximumValue = 1;
_wdSlider.minimumValue = 0;
_wdSlider.maximumValue = 1;
}
}
-(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 {
if (!self.isConnected) {
return;
}
if (self.nlSlider == slider) {
float value = _nlSlider.value;
_nengliangNum = 100*value;
_nlNumLabel.text = [NSString stringWithFormat:@"%.f%%",value/_nlSlider.maximumValue*100];
if (self.delegate && [self.delegate respondsToSelector:@selector(sendNengLangValue:)]) {
[self.delegate sendNengLangValue:_nengliangNum];
}
}else {
float value = _wdSlider.value;
_wenduNum = 100*value;
_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 {
if (self.isConnected) {
if (self.nlSlider == slider) {
float value = _nlSlider.value;
_nlNumLabel.text = [NSString stringWithFormat:@"%.f%%",value/_nlSlider.maximumValue*100];
_nlNumLabel.text = [NSString stringWithFormat:@"%.f%%",value*100];
}else {
float value = _wdSlider.value;
_wdNumLabel.text = [NSString stringWithFormat:@"%.f%%",value/_wdSlider.maximumValue*100];
_wdNumLabel.text = [NSString stringWithFormat:@"%.f%%",value*100];
}
}else {
self.nlSlider.value = 0;
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 @@
}
-(void)playVideoTime:(CGFloat)time {
[self.playerView seekToTime:time completionHandler:^(BOOL finished) {
}];
}
-(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