Initial commit

This commit is contained in:
ifish
2017-08-15 16:59:01 +08:00
commit bdc83e07ef
5766 changed files with 423223 additions and 0 deletions
@@ -0,0 +1,853 @@
//
// AFHttpTool.h
// Ifish
//
// Created by imac on 15/12/24.
// Copyright © 2015年 imac. All rights reserved.
//
//仅登陆 注册 验证码 接口使用 直接使用 全地址
//若按服务器ip 请求可参考 Netmanager 类中登陆注册方法(仅限登陆注册)
//
//此类v3.2起 只用于验证码 登陆注册 和2016 10 27 后新增接口 因为请求头中 加了安全验证
#import <Foundation/Foundation.h>
#define IFISHERROCODE @"100"
#define IFFISHFAIL @"101"
#define IFISHDEVICE_REMOVE @"207"
#define IFISHCAMERA_REMOVE @"210"
//上传图片太大
#define IFISH_UPLOADPICBIGEER @"206"
//用户ID 不能存在
#define IFISH_USERIDNONE @"207"
//安全校验失败
#define IFISH_SAFEERRPR @"400"
//参数校验失败
#define IFISH_ParamERRPR @"401"
typedef NS_ENUM(NSInteger, RequestMethodType){
RequestMethodTypePost = 1,
RequestMethodTypeGet = 2
};
typedef NS_ENUM(NSInteger, IfishAdType){
IfishAdTypeShouYE = 1,
IfishAdTypeZiXun = 2,
IfishAdTypeYouXuanShop = 3,
IfishAdTypeQianDao = 4,
IfishAdTypeKankan = 5,
IfishAdTypeYuYiSheng =6,
IfishAdTypeLoadAD =7
};
typedef NS_ENUM(NSInteger, IfishGoodsListType){
IfishGoodsTypeShouYE = 1,
IfishGoodsTypeYuYinSheng = 2,
IfishGoodsTypeAiYuYanXuan = 3,
IfishGoodsTypeJinHuoGuanLi = 4
};
@interface AFHttpTool : NSObject
/**
* 发送一个请求
*
* @param methodType 请求方法
* @param url 请求路径
* @param params 请求参数
* @param success 请求成功后的回调(请将请求成功后想做的事情写到这个block中)
* @param failure 请求失败后的回调(请将请求失败后想做的事情写到这个block中)
* @param token "userId+timestamp+”ifish8”经MD5加密后生成的口令
*/
+(void)requestWihtMethod:(RequestMethodType)methodType
url : (NSString *)url
params:(NSDictionary *)params
success:(void (^)(id response))success
failure:(void (^)(NSError *err))failure;
/**
* 获取验证码 getSecurityCode
*
* @param phoneNumber phoneNumber
* @param sendType sendType
* @param success success
* @param failure failure
*/
+(void)getSecurityCodeWithPhoneNumber:(NSString*)phoneNumber
sendType:(NSString*)sendType
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 注册
*
* @param phoneNumber phoneNumber
* @param userPassword userPassword
* @param phoneType 手机类型IOS
* @param address 注册所在地
* @param success success
* @param failure failure
*/
+(void)addUserWithPhoneNumber:(NSString*)phoneNumber
password:(NSString*)userPassword
phoneType:(NSString*)phoneType
address:(NSString*)address
longitude:(double)longitude
latitude:(double)latitude
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 用户登录 userLogin
*
* @param phoneNumber phoneNumber description
* @param userPassword userPassword description
* @param phoneType phoneType description
* @param success success description
* @param failure failure description
*/
+(void)userLogInWithPhoneNumber:(NSString*)phoneNumber
password:(NSString*)userPassword
phoneType:(NSString *)phoneType
address:(NSString*)address
longitude:(double)longitude
latitude:(double)latitude
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/*
*获取更多用户数据 get 请求
*/
+(void)getMoreUserDataWith:(NSString *)userId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/*
用户用户信息修改 updateUser
*/
+(void)updateUserWithUserId:(NSNumber*)userId
nickName:(NSString*)nickName
phoneNumber:(NSString*)phoneNumber
userSex:(NSString*)userSex
userImg:(NSString*)userImg
signature:(NSString*)signature
timestamp:(NSNumber*)timestamp
token:(NSString*)token
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/*
头像上传 uploadFile
fileUpload :上传头像类型GIF,PNG,BMP,JPG,JPEG
*/
+(void)uploadUserImgWithUserId:(NSNumber*)userId
fileUpload:(NSString*)fileUpload
token:(NSString*)token
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/*
* 密码修改 updatePwd
*/
+(void)updatePwdWithUserId:(NSNumber*)userId
oldPassword:(NSString*)oldPassword
newPassword:(NSString*)userPassword
timestamp:(NSNumber*)timestamp
token:(NSString*)token
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/*
忘记密码 resetPassword
userPassword :是新密码
*/
+(void)resetPasswordWithUserId:(NSString*)phoneNumber
userPassword:(NSString*)userPassword
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/*
* 获取用户设备信息 getDeviceInf
*/
+(void)getDeviceInfoWithUserId:(NSNumber*)userId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/*
* 设备信息修改 updateDevice
*/
+(void)updateDeviceWithPriIdDeviceId:(NSString*)deviceId
priIdUserId:(NSString*)userId
showName:(NSString*)showName
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/*
* 通过手机分享设备 shareDevice
*/
+(void)shareDeviceWithPhoneNumber:(NSString*)phoneNumber
deviceId:(NSString*)deviceId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/*
* 扫一扫分享设备 shareDeviceByQrCode
*/
+(void)shareDeviceByQrCodeWithUserId:(NSNumber*)userId
deviceId:(NSString*)deviceId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/*
* 解除分享的设备 deleteShareDevice
*/
+(void)deleteShareDeviceWithUserId:(NSNumber*)userId
deviceId:(NSString*)deviceId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/*
* 删除绑定的设备 deleteDeviceUser
*/
+(void)deleteDeviceUserWithPriIdDeviceId:(NSString*)deviceId
priIdUserId:(NSNumber*)userId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/*
* 版本检测 getNewestVersion
*/
+(void)getNewestVersionWithPhoneType:(NSString*)ios
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/*
* 问题反馈 questionsFeedback
*/
+(void)questionsFeedbackWithUserId:(NSNumber*)uerId
questionContent:(NSString*)questionContent
timestamp:(NSNumber*)timestamp
token:(NSString*)token
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/*
* 更多厂家 venderListInf
* firstResult :开始条数
* pageSize: 每页大小
*/
+(void)getVerderListInfWithFirstResult:(NSInteger)firstResult
pageSize:(NSInteger)pageSize
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/*
* 更多商家 merchantListInf
* firstResult :开始条数
* pageSize: 每页大小
*/
+(void)getMerchantListInfWithFirstResult:(NSInteger)firstResult
pageSize:(NSInteger)pageSize
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/*
* 设置默认店铺 defaultShop
*/
+(void)setDefaultShopWithUserId:(NSNumber*)userId
merchantId:(NSString*)merchantId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/*
* 扫描二维码纪录激活量 sweepQRCode
*/
+(void)sweepQRCCodeWithActivateIdUserId:(NSNumber*)activateIdUserId
activateIdRecodeId:(NSString*)activateIdRecodeId
activeIdProvinceId:(NSString*)activeIdProvinceId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/*
* 重新生成融云token getToken
*/
+(void)getTokenWithUserId:(NSNumber*)UserId
imgPath:(NSString*)imgPath
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 保存自定义图标
*/
+(void)saveCustomIconWith:(NSNumber*)UserId
deviceId:(NSString*)deviceId
customIconName:(NSString*)customIconName
customShowName:(NSString*)customShowName
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 设置换水提醒
*/
+(void)setRemindWaterInfWith:(NSString*)deviceId
waterRemind:(NSString*)waterRemind
remindCycle:(NSString*)remindCycle
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 获取换水提醒信息
*/
+(void)getRemindWaterInfwith:(NSString*)deviceId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 绑定摄像头
*/
+(void)bindCameraWith:(NSString *)cameraId
userId:(NSNumber *)userId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 设备关联摄像头
*/
+(void)deviceBindCameraWith:(NSString *)cameraId
userId:(NSNumber *)userId
deviceId:(NSString *)deviceId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 删除绑定的摄像头
*/
+(void)deleteCameraUserWith:(NSString *)cameraId
deiviceId:(NSString *)deiviceId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 删除设备和摄像头关系
*/
+(void)deleteDeviceCameraWith:(NSString *)cameraId
deiviceId:(NSString *)deiviceId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 扫码激活摄像头
*/
+(void)scanCodeActiveCamea:(NSString *)cameraId
deiviceId:(NSString *)deiviceId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 新增商户信息 或 审核失败修改商户 v3
*/
+(void)saveShopsInfo:(NSDictionary *)paras
formatImgArr:(NSArray *)multipartFile
requsetUrl:(NSString *)url
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 审核成功修改商户 v3
*/
+(void)updateBaseShopsInfo:(NSDictionary *)paras
formatImg:(UIImage *)formatImg
requsetUrl:(NSString *)url
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 审核状态查询
*/
+(void)getShopsStatus:(NSString *)shopsId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 选择看护商家
*/
+(void)xuanZeKanHuShangJia:(NSString *)shopsPhone
yongHuId:(NSNumber *)userId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 看护开关
*/
+(void)kanHuKaiGuanWith:(NSString *)cameraId
userId:(NSString *)userId
status:(NSString *)status
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 看护列表
*/
+(void)getKanHuListWithShopsId:(NSString *)shopsUserId
firstResult:(NSString *)firstResult
pageSize:(NSString *)pageSize
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 发送看护报告
*/
+(void)sendReportWithUserId:(NSString * )userId
baoGaoHtmlName:(NSString *)fileName
reportId:(NSString *)reportId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 查询看护报告详情
*/
+(void)getLookReportById:(NSString *)reportId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 新增直播间
*/
+(void)addLiveRoombyUserId:(NSString*)userId
cameraId:(NSString*)cameraId
isLive:(NSString*)isLive
roomName:(NSString*)roomName
roomDec:(NSString*)roomDec
upLoadFile:(UIImage*)upLoadImg
name:(NSString*)name
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 获取直播间信息
*/
+(void)getLiewRoomInfo:(NSString *)userId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 修改直播间
*/
+(void)updateLiveRoomCameraId:(NSString *)cameraId
userId:(NSString *)userId
roomId:(NSString *)roomId
isLive:(NSString *)isLive
roomName:(NSString *)roomName
roomDesc:(NSString *)roomDesc
upLoadFile:(UIImage*)upLoadImg
name:(NSString*)name
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 直播间 人气加1
*/
+(void)popularityValueRoomId:(NSString *)roomId
userId:(NSString *)userId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 直播间 获取直播列表 综合数据列表 获取综合数据(5条距离用户最近的+5条用户最近浏览的+5条人气值最高的)传userId,
*/
//+(void)getLiveRoomsuserId:(NSString*)userId
// success:(void (^)(id response))success
// failure:(void (^)(NSError* err))failure;
/**
* 直播间 获取直播列表 分页列表 compreRoomId 获取综合数的所有roomId 和 “,”组成的字符串
*/
+(void)getLiveRoomsfirstResult:(NSInteger)firstResult
pageSize:(NSInteger)pageSize
userId:(NSString *)userId
orders:(NSString *)orders
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 直播banner图
*/
+(void)getLiveBannerSuccess:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* getGwellCodes
*/
+(void)getGwellCodes:(NSString *)userId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 获取商家列表
*/
+(void)getShopsinfo:(NSString *)userId
firstResult:(NSInteger)firstResult
pageSize:(NSInteger)pageSize
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 选择看护商家(新)
*/
+(void)newChoiceShops:(NSString *)shopsUserId
userId:(NSString *)userId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 删除看护关系
*/
+(void)removeLookUserId:(NSString *)userId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 鱼医生提问
*/
+(void)fishDoctorQuestion:(NSString *)userId
questionContent:(NSString *)questionContent
payTourSum:(NSString *)payTourSum
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 十四、 提交直播间留言
*/
+(void)IfishCommitLeaveMessage:(NSString *)userId
roomId:(NSString *)roomId
asUserId:(NSString *)asUserId
messageContent:(NSString *)messageContent
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 十五、 直播间留言分页数据
*/
+(void)ifishGetLiveMeassage:(NSInteger)firstResult
pageSize:(NSInteger)pageSize
roomId:(NSInteger)roomId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 获取规则等级信息 (GET请求)
*/
+(void)getLevelRuleInfo:(NSString *)userId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 新增加经验
*/
+(void)addLevelValueWith:(NSString *)userId
ruleType:(NSString *)ruleType
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 分页经验值获取记录
*/
+(void)gradeRecorde:(NSString *)userId
firstResult:(NSInteger)firstResult
pageSize:(NSInteger)pageSize
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 新增金币
*/
+(void)addGoldValue:(NSString *)userId
ruleType:(NSString *)ruleType
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 金币获取记录
*/
+(void)goldValueRecord:(NSString *)userId
firstResult:(NSInteger)firstResult
pageSize:(NSInteger)pageSize
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 金币消耗记录
*/
+(void)goldExpendRecord:(NSString *)userId
firstResult:(NSInteger)firstResult
pageSize:(NSInteger)pageSize
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 获取金币规则信息
*/
+(void)getgGoldRuleInfo:(NSString *)userId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 三十 签到 (post请求)
*/
+(void)ifishSignIn:(NSString *)userId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 三十一 砸金蛋 (post请求)
*/
+(void)ifishHitGoldenEgg:(NSString *)userId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 获取广告信息 get 请求
*/
+(void)getIfishBannerData:(IfishAdType)type
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 分页资讯信息 get 请求
*/
+(void)ifishGetInformations:(NSInteger)firstResult
pageSize:(NSInteger)pageSize
userId:(NSString *)userId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 增加点击数 post 请求
*/
+(void)ifishAdditionClickNum:(int)infoId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 分页直播间信息 get 请求
*/
+(void)ifishGetliveRooms:(NSInteger)firstResult
pageSize:(NSInteger)pageSize
userId:(NSString *)userId
orderType:(NSString *)orderType
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 扫一扫绑定水族箱(分享设备)此新接口 老接口无请求头数据
*/
+(void)shareDeviceWhth:(NSString *)userId
deviceId:(NSString *)deviceId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/*
* 绑定设备 bindDevice
*/
+(void)bindDeviceWithUserId:(NSString*)userId
macAddress:(NSString*)macAddress
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 获取商品信息(分类型)1 首页商品 2 鱼医生页
*/
+(void)getIfishGoodsListWith:(IfishGoodsListType)type
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 扫一扫成为商家会员
*/
+(void)becomeShopUserWith:(NSString *)userId
shopId:(NSString *)shopId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 分页获取商家会员信息列表
*/
+(void)getPageShopsUserInfo:(NSInteger)firstResult
pageSize:(NSInteger)pageSize
userId:(NSString *)userId
shopsId:(NSString *)shopsId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 获取商家会员信息
*/
+(void)getShopsUserInfo:(NSString *)userId
shopId:(NSString *)shopId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 更新商家会员信息
* memberLevel 会员等级(1-3)
* userName 备注名称(10)
* phoneNumber 手机号码(11)
* province 省(30)
* city 市(30)
* area 区(30)
* address 地址(100)
* remark 备注(50)
*/
+(void)updateShopsUserInfo:(NSString *)userId
shopId:(NSString *)shopId
memberLevel:(NSString *)memberLevel
userName:(NSString *)userName
phoneNumber:(NSString *)phoneNumber
province:(NSString *)province
city:(NSString *)city
area:(NSString *)area
address:(NSString *)address
remark:(NSString *)remark
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 直播间点赞
*/
+(void)liveDianZanRoomId:(NSString *)roomId
userId:(NSString *)userId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 直播间打赏
* payUserId 打赏用户ID
* payeeUserId 被打赏用户ID
*/
+(void)liveRoomDaShang:(NSString *)payUserId
payeeUserId:(NSString *)payeeUserId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 获取有效优惠券 get
*/
+(void)getValidatingCouponsSuccess:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 分页查询用户兑换记录
*/
+(void)couponRecords:(NSString *)userId
pageSize:(NSInteger)pageSize
firstResult:(NSInteger)firstResult
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 兑换优惠券
*/
+(void)exchangeCoupon:(NSString *)userId
couponId:(NSString *)couponId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 分页用户动态
*/
+(void)getUserActivity:(NSString *)userId
pageSize:(NSInteger)pageSize
firstResult:(NSInteger)firstResult
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 分页店铺商品
*/
+(void)getCommodityInfoByPage:(NSString *)shopId
pageSize:(NSInteger)pageSize
firstResult:(NSInteger)firstResult
commodityState:(NSString *)commodityState
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 新增商品
*/
+(void)createCommodity:(NSString *)shopId
userId:(NSString *)userId
commodityName:(NSString *)commodityName
imgpath:(NSString *)imgpath
mediapath:(NSString *)videopath
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 修改商品 暂时只修改商品名 视频不做处理
*/
+(void)updateCommodity:(NSString *)shopId
userId:(NSString *)userId
commodityName:(NSString *)commodityName
commodityId:(NSString *)commodityId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 增加商品店点击数
*/
+(void)updateCommodityClickCount:(NSString *)commodityId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 删除商品
*/
+(void)deleteCommodityById:(NSString *)shopId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 获取用户动态总数
*/
+(void)getIFishUserActivityMaxCountSuccess:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
@end
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,173 @@
//
// AFNOHeaderHttpTool.h
// Ifish
//
// Created by imac on 16/10/27.
// Copyright © 2016年 lianxiang. All rights reserved.
//
#import <Foundation/Foundation.h>
#define IFISHERROCODE @"100"
#define IFFISHFAIL @"101"
#define IFISHDEVICE_REMOVE @"207"
#define IFISHCAMERA_REMOVE @"210"
//上传图片太大
#define IFISH_UPLOADPICBIGEER @"206"
//用户ID 不能存在
#define IFISH_USERIDNONE @"207"
typedef NS_ENUM(NSInteger, RequestType){
RequestTypePost = 1,
RequestTypeGet = 2
};
@interface AFNOHeaderHttpTool : NSObject
/**
* 发送一个请求 无请求头参数
*
* @param methodType 请求方法
* @param url 请求路径
* @param params 请求参数
* @param success 请求成功后的回调(请将请求成功后想做的事情写到这个block中)
* @param failure 请求失败后的回调(请将请求失败后想做的事情写到这个block中)
* @param token "userId+timestamp+”ifish8”经MD5加密后生成的口令
*/
+(void) requestWihtMethod:(RequestType)
methodType url : (NSString *)url
params:(NSDictionary *)params
success:(void (^)(id response))success
failure:(void (^)(NSError *err))failure;
/**
* 保存自定义图标
*/
+(void)saveCustomIconWith:(NSNumber*)UserId
deviceId:(NSString*)deviceId
customIconName:(NSString*)customIconName
customShowName:(NSString*)customShowName
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 查询看护报告详情
*/
+(void)getLookReportById:(NSString *)reportId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 删除设备和摄像头关系
*/
+(void)deleteDeviceCameraWith:(NSString *)cameraId
deiviceId:(NSString *)deiviceId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 看护开关
*/
+(void)kanHuKaiGuanWith:(NSString *)cameraId
userId:(NSString *)userId
status:(NSString *)status
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 设备关联摄像头
*/
+(void)deviceBindCameraWith:(NSString *)cameraId
userId:(NSNumber *)userId
deviceId:(NSString *)deviceId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 看护列表
*/
+(void)getKanHuListWithShopsId:(NSString *)shopsUserId
firstResult:(NSString *)firstResult
pageSize:(NSString *)pageSize
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 绑定摄像头
*/
+(void)bindCameraWith:(NSString *)cameraId
userId:(NSNumber *)userId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 设置换水提醒
*/
+(void)setRemindWaterInfWith:(NSString*)deviceId
waterRemind:(NSString*)waterRemind
remindCycle:(NSString*)remindCycle
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 获取换水提醒信息
*/
+(void)getRemindWaterInfwith:(NSString*)deviceId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 扫码激活摄像头
*/
+(void)scanCodeActiveCamea:(NSString *)cameraId
deiviceId:(NSString *)deiviceId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 审核状态查询
*/
+(void)getShopsStatus:(NSString *)shopsId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 选择看护商家
*/
+(void)xuanZeKanHuShangJia:(NSString *)shopsPhone
yongHuId:(NSNumber *)userId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 发送看护报告
*/
+(void)sendReportWithUserId:(NSString * )userId
baoGaoHtmlName:(NSString *)fileName
reportId:(NSString *)reportId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
@end
@@ -0,0 +1,298 @@
//
// AFNOHeaderHttpTool.m
// Ifish
//
// Created by imac on 16/10/27.
// Copyright © 2016年 lianxiang. All rights reserved.
//
#import "AFNOHeaderHttpTool.h"
#import "AFNetworking.h"
#define ContentType @"text/html"
@implementation AFNOHeaderHttpTool
+(void) requestWihtMethod:(RequestType)
methodType url : (NSString *)url
params:(NSDictionary *)params
success:(void (^)(id response))success
failure:(void (^)(NSError *err))failure
{
// NSURL* baseURL = [NSURL URLWithString:DEV_IFISH_SERVER];
// //获得请求管理者
// AFHTTPRequestOperationManager*manager = [[AFHTTPRequestOperationManager alloc] initWithBaseURL:baseURL];
AFHTTPRequestOperationManager*manager=[AFHTTPRequestOperationManager manager];
//此类中接口 无安全校验
manager.responseSerializer=[AFHTTPResponseSerializer serializer];
//#ifdef ContentType
// manager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:ContentType];
//#endif
// manager.requestSerializer.HTTPShouldHandleCookies = YES;
switch (methodType) {
case RequestTypeGet:
{
//GET请求
[manager GET:url parameters:params
success:^(AFHTTPRequestOperation* operation, NSDictionary* responseObj) {
if (success) {
success(responseObj);
}
} failure:^(AFHTTPRequestOperation* operation, NSError* error) {
if (failure) {
failure(error);
}
}];
}
break;
case RequestTypePost:
{
//POST请求
[manager POST:url parameters:params
success:^(AFHTTPRequestOperation* operation, NSDictionary* responseObj) {
if (success) {
success(responseObj);
}
} failure:^(AFHTTPRequestOperation* operation, NSError* error) {
if (failure){
failure(error);
}
}];
}
break;
default:
break;
}
}
+(void)saveCustomIconWith:(NSNumber*)UserId
deviceId:(NSString*)deviceId
customIconName:(NSString*)customIconName
customShowName:(NSString*)customShowName
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure{
NSDictionary*para=@{
@"priId.userId":UserId,
@"priId.deviceId":deviceId,
@"customShowName":customShowName,
@"customIconName":customIconName
};
[AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:kSaveCustomIcon params:para success:success failure:failure];
}
+(void)getLookReportById:(NSString *)reportId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure
{
NSDictionary*para=@{
@"reportId":reportId
};
[AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:IfishgetLookReportById
params:para
success:success
failure:failure];
}
+(void)deleteDeviceCameraWith:(NSString *)cameraId
deiviceId:(NSString *)deiviceId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure
{
NSDictionary*para=@{
@"cameraId":cameraId,
@"deviceId":deiviceId
};
[AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:IfishdeleteDeviceCamera params:para success:success failure:failure];
}
+(void)kanHuKaiGuanWith:(NSString *)cameraId
userId:(NSString *)userId
status:(NSString *)status
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure
{
NSDictionary*para=@{
@"cameraId":cameraId,
@"userId":userId,
@"status":status
};
[AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:IfishOnOffLook
params:para
success:success
failure:failure];
}
+(void)deviceBindCameraWith:(NSString *)cameraId
userId:(NSNumber *)userId
deviceId:(NSString *)deviceId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure
{
NSDictionary*para=@{
@"cameraId":cameraId,
@"deviceId":deviceId,
@"userId": userId
};
[AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:IfishdeviceBindCamera params:para success:success failure:failure];
}
+(void)getKanHuListWithShopsId:(NSString *)shopsUserId
firstResult:(NSString *)firstResult
pageSize:(NSString *)pageSize
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure
{
NSDictionary*para=@{
@"shopsUserId":shopsUserId,
@"firstResult":firstResult,
@"pageSize":pageSize
};
[AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:IfishlookList
params:para
success:success
failure:failure];
}
+(void)bindCameraWith:(NSString *)cameraId
userId:(NSNumber *)userId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure
{
NSDictionary*para=@{
@"cameraId":cameraId,
@"userId":userId
};
[AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:IfishBindCamera params:para success:success failure:failure];
}
+(void)setRemindWaterInfWith:(NSString*)deviceId
waterRemind:(NSString*)waterRemind
remindCycle:(NSString*)remindCycle
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure
{
NSDictionary*para=@{
@"deviceId":deviceId,
@"waterRemind":waterRemind,
@"remindCycle":remindCycle
};
[AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:kSetRemindWaterInf params:para success:success failure:failure];
}
+(void)getRemindWaterInfwith:(NSString*)deviceId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure
{
NSDictionary*para=@{
@"deviceId":deviceId,
};
[AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:kGetRemindWaterInf params:para success:success failure:failure];
}
+(void)scanCodeActiveCamea:(NSString *)cameraId
deiviceId:(NSString *)deiviceId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure
{
NSDictionary*para=@{
@"cameraId":cameraId,
@"deviceId":deiviceId
};
[AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:JiHuoSheXiangTou
params:para
success:success
failure:failure];
}
+(void)getShopsStatus:(NSString *)shopsId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure{
NSDictionary*para=@{
@"shopsId":shopsId
};
[AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:IfishGetShopsStatus
params:para
success:success
failure:failure];
}
+(void)xuanZeKanHuShangJia:(NSString *)shopsPhone
yongHuId:(NSNumber *)userId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure
{
NSDictionary*para=@{
@"phoneNumber":shopsPhone,
@"userId":userId
};
[AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:IfishChoiceShops
params:para
success:success
failure:failure];
}
+(void)sendReportWithUserId:(NSString * )userId
baoGaoHtmlName:(NSString *)fileName
reportId:(NSString *)reportId
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure
{
NSDictionary*para=@{
@"userId":userId,
@"fileName":fileName,
@"reportId":reportId
};
[AFNOHeaderHttpTool requestWihtMethod:RequestTypePost url:IfishSendReport
params:para
success:success
failure:failure];
}
@end
@@ -0,0 +1,161 @@
//
// IFISHHttpTool.h
// Ifish
//
// Created by imac on 15/12/24.
// Copyright © 2015年 imac. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "DeviceModel.h"
#import "ChatroomModel.h"
#import "UserModel.h"
#import "merchantModel.h"
#import "LeftViewController.h"
#import "ICSDrawerController.h"
#import "CenterViewController.h"
#import "RightViewController.h"
#import "AppDelegate.h"
#import "LogInViewController.h"
#import "AFNetworking.h"
#import "DisconnectNetController.h"
#import "setRemindWaterModel.h"
#import "TwoControlCenterController.h"
#import "ThreeControlCenterViewController.h"
#import "FourControlViewController.h"
#import "NoneControlCenterViewController.h"
#import "XuToCenterViewController.h"
#import "PuasiphysicalSkinViewController.h"
#import "IfishBlackListCenterViewController.h"
#import "KeLiAiCenterViewController.h"
#import "FourControlNormalCenterController.h"
#import "SonNuoCenterViewController.h"
#import "ShopCertifyStausModel.h"
#import "CertificationShopModel.h"
#import <SMS_SDK/SMSSDK.h>
typedef void (^backVerifyCode)(NSString*verifycode);
//下次换水时间
typedef void (^nexChangeWaterTime)(setRemindWaterModel*remindModel);
//换水提醒信息获取
typedef void(^changeWaterInf)(setRemindWaterModel*remindModel);
typedef void (^cameraIsActive)(NSString *cameIsActive);
//查询商铺认证信息
typedef void(^ShopCertifyStaus)(ShopCertifyStausModel*shopCertifyd);
//选择看护商家
typedef void(^kanHuShangJia)(CertificationShopModel*kanHuShangJia);
@interface IFISHHttpTool : NSObject
@property(nonatomic,strong)ICSDrawerController*ics;
@property(nonatomic,strong)UIActivityIndicatorView*indcView;
+(IFISHHttpTool*)shareInstance;
/**
* login 适用于 自动登录 DisconnectNetController断网登录 DownLoadViewController下载更新未下载 返回登录
注册完界面自动登录 登录界面登录 暂未封装此方法不适用
*/
-(void)ifishLogindismissvc:(DisconnectNetController*)disconnectVC;
/**
* 获取验证码 阿里
*
* @param timeBtn 验证码按钮
* @param phoneNumber phoneNumber
* @param sendType 验证类型
*/
-(void)getVerifyCodeWithTimerButton:(UIButton*)timeBtn
addPhoneNumber:(NSString*)phoneNumber
addSendType:(NSString*)sendType
backData:(backVerifyCode)backVerifyCodeblock;
/**
* 获取验证码 SMS
*
* @param timeBtn 验证码按钮
* @param zone 区域号,不要加"+"号(Area code)
*
*/
-(void)getverifyWithTimerButton:(UIButton*)timeBtn addphoneNumber:(NSString*)phoneNumber zone:
(NSString*)areaCode result:(void (^)(NSError *err))result;
/**
* 注册
*
* @param phoneNumber phoneNumber
* @param passwd passwd
* @param phoneType phoneType
* @param Address Address
*/
-(void)ifishRegistWithPhoneNumber:(NSString*)phoneNumber addWithPasswd:(NSString*)passwd addwithPhonetype:(NSString*)phoneType addAddress:(NSString*)Address longitude:(double)longitude
latitude:(double)latitude;
/**
* 接口实现部分
*/
//保存自定义图片
-(void)saveCustomIconwith:(NSNumber*)userId customIconName:(NSString*)customIconName addDeviceId:(NSString*)deviceId addcustomShowName:(NSString*)customShowName;
/**
* 设置换水提醒
*/
-(void)setRemindWaterInfWith:(NSString*)deviceId
waterRemind:(NSString*)waterRemind
remindCycle:(NSString*)remindCycle
huishuiShiJian:(nexChangeWaterTime)reminDate;
/**
* 获取换水提醒
*/
-(void)getRemindWaterInfWith:(NSString*)deviceId
huishuiInfo:(changeWaterInf)waterinfo;
/**
* 扫码激活摄像头
*/
-(void)scanCamerawith:(NSString *)cameraId
andeviceId:(NSString *)deviceId
backInfo:(cameraIsActive)cameraActive
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure;
/**
* 店铺审核状态查询
*
*
*/
-(void)shopCertifyStausWith:(NSString*)shopId
huishuiShiJian:(ShopCertifyStaus)ShopCertify;
-(void)newshopCertifyStausWith:(NSString*)shopId
huishuiShiJian:(ShopCertifyStaus)ShopCertify;
/**
* 选择看护商家
*/
-(void)xuanZeKanHuShnagJiaWith:(NSString *)shopsPhone
UserId :(NSNumber *)userId
xuaZeShangJia:(kanHuShangJia)kanHuShangJia;
@end
@@ -0,0 +1,718 @@
//
// IFISHHttpTool.m
// Ifish
//
// Created by imac on 15/12/24.
// Copyright © 2015年 imac. All rights reserved.
//
#import "IFISHHttpTool.h"
#import "AFHttpTool.h"
#import "AFNOHeaderHttpTool.h"
#import "MyMD5.h"
#import "IfishDataUnity.h"
#import "NetManager.h"
#import "AccountResult.h"
#import "LoginResult.h"
#import "UDManager.h"
//
#import "CertificationShopModel.h"
#import "NTESLoginManager.h"
#import "NTESService.h"
#import "IfishUserDefaultHelper.h"
#import "IfishUserDataUnity.h"
@implementation IFISHHttpTool
{
dispatch_source_t _timer1;
}
+(IFISHHttpTool*)shareInstance
{
static IFISHHttpTool*instance=nil;
static dispatch_once_t predicate;
dispatch_once(&predicate, ^{
instance=[[[self class]alloc]init];
});
return instance;
}
-(void)ifishLogindismissvc:(DisconnectNetController*)disconnectVC{
UIApplication*app=[UIApplication sharedApplication];
AppDelegate*app1=(AppDelegate*)app.delegate;
NSUserDefaults*userDefsult=[NSUserDefaults standardUserDefaults];
NSString*name=[userDefsult objectForKey:@"name"];
NSString*pasword=[userDefsult objectForKey:@"password"];
NSString*address=[userDefsult objectForKey:@"address"];
double userlongitude=[userDefsult doubleForKey:@"userlongitude"];
double userlatitude=[userDefsult doubleForKey:@"userlatitude"];
if (!address) {
address = @"暂未获取地址信息";
}
if (!userlongitude) {
userlongitude = 0;
}
if (!userlatitude) {
userlongitude = 0;
}
//是否退出登陆
[userDefsult setObject:@"0" forKey:@"isExit"];
NSString*passWordStr=[MyMD5 md5:pasword];
//__weak typeof (self) weakSelf=self;
[AFHttpTool userLogInWithPhoneNumber:name password:passWordStr phoneType:@"ios" address:address
longitude:userlongitude
latitude:userlatitude success:^(id response) {
NSDictionary*dict=[NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableContainers error:nil];
NSLog(@"%@",dict);
NSString *result=dict[@"result"];
if ([result isEqualToString:@"100"]) {
// 登录成功
if (disconnectVC) {
[disconnectVC dismissViewControllerAnimated:YES completion:nil];
}
// 存储数据
NSDictionary *datadic = dict[@"data"];
[[IfishUserDataUnity shareDataInstance] userAutologinSuccsess:datadic];
}else if ([result isEqualToString:@"101"]){
[app1.window makeToast:@"登录失败"];
//登录失败
}else if ([result isEqualToString:@"204"]){
// 验证失败,密码不正确
LogInViewController*logvc=[[LogInViewController alloc]init];
UINavigationController *nav=[[UINavigationController alloc]initWithRootViewController:logvc];
[nav.navigationBar setBackgroundImage:[UIImage imageNamed:@"blackbar.png"] forBarMetrics:UIBarMetricsDefault];
app1.window.rootViewController=nav;
[app1.window makeToast:@"验证失败,密码不正确"];
}else if ([result isEqualToString:@"202"]){
[app1.window makeToast:@"用户未注册"];
}else if ([result isEqualToString:@"400"]){
[app1.window makeToast:@"安全校验失败"];
DisconnectNetController *connectVC =[[DisconnectNetController alloc] init];
UINavigationController *nav=[[UINavigationController alloc]initWithRootViewController:connectVC];
[nav.navigationBar setBackgroundImage:[UIImage imageNamed:@"blackbar.png"] forBarMetrics:UIBarMetricsDefault];
app1.window.rootViewController=nav;
}
} failure:^(NSError *err) {
DisconnectNetController *connectVC =[[DisconnectNetController alloc] init];
UINavigationController *nav=[[UINavigationController alloc]initWithRootViewController:connectVC];
[nav.navigationBar setBackgroundImage:[UIImage imageNamed:@"blackbar.png"] forBarMetrics:UIBarMetricsDefault];
app1.window.rootViewController=nav;
NSString *errstr = [NSString stringWithFormat:@"%@",err];
BLYLog(BuglyLogLevelWarn, errstr);
}];
}
-(void)showTitle:(NSString*)title messsage:(NSString*)message{
UIAlertView *alert=[[UIAlertView alloc]initWithTitle:title message:message delegate:nil cancelButtonTitle:nil otherButtonTitles:nil, nil];
NSTimeInterval dismissSeconds=1.0;
[alert show];
[self performSelector:@selector(dismissAlert:) withObject:alert afterDelay:dismissSeconds];
}
-(void)dismissAlert:(UIAlertView*)alertView{
[alertView dismissWithClickedButtonIndex:[alertView cancelButtonIndex] animated:YES];
}
- (void)showLableAction:(NSString *)str{
AppDelegate*app=(AppDelegate*)[UIApplication sharedApplication].delegate;
UILabel *laberAction =[[UILabel alloc]init];
laberAction.frame =CGRectMake(kScreenSize.width/2 - 75, kScreenSize.height/2 , 200, 40);
laberAction.clipsToBounds =YES;
laberAction.layer.cornerRadius =5;
laberAction.alpha =1;
laberAction.text =str;
laberAction.textAlignment =NSTextAlignmentCenter;
laberAction.backgroundColor =IndicatorBack_COLOR;
laberAction.textColor=[UIColor blackColor];
[UIView animateWithDuration:2.0 animations:^{
laberAction.alpha =0;
}completion:^(BOOL finished) {
[laberAction removeFromSuperview];
}];
[app.window addSubview:laberAction];
}
-(void)makeTostView:(NSString*)str{
AppDelegate*app=(AppDelegate*)[UIApplication sharedApplication].delegate;
[app.window makeToast:str];
}
#pragma mark 获取验证码
-(void)getVerifyCodeWithTimerButton:(UIButton*)timeBtn
addPhoneNumber:(NSString*)phoneNumber
addSendType:(NSString*)sendType
backData:(backVerifyCode)backVerifyCodeblock{
[self timerFireWithTimerButton:timeBtn addPhoneNumber:phoneNumber];
[self getverifyWithTimerButton:timeBtn addphoneNumber:phoneNumber AddSendType:sendType backData:backVerifyCodeblock];
}
#pragma mark 倒计时
-(void)timerFireWithTimerButton:(UIButton*)timeBtn addPhoneNumber:(NSString*)phoneNumber{
__block int timeout=60; //倒计时时间
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
_timer1 = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0,queue);
dispatch_source_set_timer(_timer1,dispatch_walltime(NULL, 0),1.0*NSEC_PER_SEC, 0); //每秒执行
dispatch_source_set_event_handler(_timer1, ^{
if(timeout<=0){ //倒计时结束,关闭
dispatch_source_cancel(_timer1);
dispatch_async(dispatch_get_main_queue(), ^{
//设置界面的按钮显示 根据自己需求设置
[timeBtn setTitle:@"语音验证码" forState:UIControlStateNormal];
timeBtn.userInteractionEnabled = YES;
//timeBtn.backgroundColor=COLOR_LABEL_TITLE;
[timeBtn setBackgroundImage:[UIImage imageNamed:@"registered_icon_validation"] forState:UIControlStateNormal];
});
}else{
// int minutes = timeout / 60;
int seconds = timeout % 60;
NSString *strTime=@"";
if (seconds==0) {
strTime=@"60";
}else{
strTime = [NSString stringWithFormat:@"%.2d", seconds];
}
dispatch_async(dispatch_get_main_queue(), ^{
//设置界面的按钮显示 根据自己需求设置
NSLog(@"____%@",strTime);
[timeBtn setTitle:[NSString stringWithFormat:@"%@秒",strTime] forState:UIControlStateNormal];
//timeBtn.backgroundColor=[UIColor lightGrayColor];
[timeBtn setBackgroundImage:[UIImage imageNamed:@"registered_icon_validation_ws"] forState:UIControlStateNormal];
timeBtn.userInteractionEnabled = NO;
});
timeout--;
}
});
dispatch_resume(_timer1);
if ([phoneNumber isEqualToString:@""]){
[self showTitle:@"" messsage:@"手机号不能为空"];
dispatch_source_cancel(_timer1);
dispatch_async(dispatch_get_main_queue(), ^{
//设置界面的按钮显示 根据自己需求设置
[timeBtn setTitle:@"语音验证码" forState:UIControlStateNormal];
timeBtn.userInteractionEnabled = YES;
//timeBtn.backgroundColor=COLOR_LABEL_TITLE;
[timeBtn setBackgroundImage:[UIImage imageNamed:@"registered_icon_validation"] forState:UIControlStateNormal];
});
}
}
#pragma mark - ali
-(void)getverifyWithTimerButton:(UIButton*)timeBtn addphoneNumber:(NSString*)phoneNumber AddSendType:(NSString*)sendType backData:(backVerifyCode)backVerifyCodeblock{
BOOL isMacth=[dataContorl valiMobile:phoneNumber];
if (isMacth==YES) {
[AFHttpTool getSecurityCodeWithPhoneNumber:phoneNumber sendType:sendType success:^(id response) {
if (response) {
NSDictionary *reDic=[NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableContainers error:nil];
// self.verifyTextField.text=reDic[@"data"];
NSString* verifyData=reDic[@"data"];
NSLog(@"_verifyData%@",verifyData);
if ([reDic[@"result"] isEqualToString:@"100"]) {
backVerifyCodeblock(verifyData);
}else if([reDic[@"result"] isEqualToString:@"101"]){
dispatch_source_cancel(_timer1);
dispatch_async(dispatch_get_main_queue(), ^{
//设置界面的按钮显示 根据自己需求设置
[timeBtn setTitle:@"语音验证码" forState:UIControlStateNormal];
timeBtn.userInteractionEnabled = YES;
//timeBtn.backgroundColor=COLOR_LABEL_TITLE;
[timeBtn setBackgroundImage:[UIImage imageNamed:@"registered_icon_validation"] forState:UIControlStateNormal];
});
[self showTitle:@"" messsage:@"获取验证失败"];
// 获取验证失败
}else if ([reDic[@"result"] isEqualToString:@"201"]){
dispatch_source_cancel(_timer1);
dispatch_async(dispatch_get_main_queue(), ^{
//设置界面的按钮显示 根据自己需求设置
[timeBtn setTitle:@"语音验证码" forState:UIControlStateNormal];
timeBtn.userInteractionEnabled = YES;
//timeBtn.backgroundColor=COLOR_LABEL_TITLE;
[timeBtn setBackgroundImage:[UIImage imageNamed:@"registered_icon_validation"] forState:UIControlStateNormal];
});
[self showTitle:@"" messsage:@"手机已经注册过"];
}else{
}
}
} failure:^(NSError *err) {
UIAlertView *alter =[[UIAlertView alloc]initWithTitle:@"温馨提示" message:@"请求异常" delegate:self cancelButtonTitle:@"" otherButtonTitles: nil];
[alter show];
NSLog(@"失败");
}];
}else{
dispatch_source_cancel(_timer1);
dispatch_async(dispatch_get_main_queue(), ^{
//设置界面的按钮显示 根据自己需求设置
[timeBtn setTitle:@"语音验证码" forState:UIControlStateNormal];
timeBtn.userInteractionEnabled = YES;
//timeBtn.backgroundColor=COLOR_LABEL_TITLE;
[timeBtn setBackgroundImage:[UIImage imageNamed:@"registered_icon_validation"] forState:UIControlStateNormal];
});
[self showTitle:@"" messsage:@"请输入正确手机号"];
}
}
#pragma mark - SMS 新
-(void)getverifyWithTimerButton:(UIButton*)timeBtn addphoneNumber:(NSString*)phoneNumber zone:
(NSString*)areaCode result:(void (^)(NSError *err))result
{
[self timerFireWithTimerButton:timeBtn addPhoneNumber:phoneNumber];
[SMSSDK getVerificationCodeByMethod:SMSGetCodeMethodVoice phoneNumber:phoneNumber zone:areaCode customIdentifier:nil result:^(NSError *error) {
if (!error) {
NSLog(@"获取验证码成功");
} else {
NSLog(@"错误信息:%@",error);
dispatch_source_cancel(_timer1);
dispatch_async(dispatch_get_main_queue(), ^{
//设置界面的按钮显示 根据自己需求设置
[timeBtn setTitle:@"语音验证码" forState:UIControlStateNormal];
timeBtn.userInteractionEnabled = YES;
//timeBtn.backgroundColor=COLOR_LABEL_TITLE;
[timeBtn setBackgroundImage:[UIImage imageNamed:@"registered_icon_validation"] forState:UIControlStateNormal];
});
[self showTitle:@"" messsage:@"获取验证失败"];
}
}];
}
#pragma mark 注册
-(void)ifishRegistWithPhoneNumber:(NSString *)phoneNumber addWithPasswd:(NSString *)passwd addwithPhonetype:(NSString *)phoneType addAddress:(NSString *)address longitude:(double)longitude
latitude:(double)latitude{
NSString*passStr=[MyMD5 md5:passwd];
[AFHttpTool addUserWithPhoneNumber:phoneNumber password:passStr phoneType:phoneType address:address longitude:longitude
latitude:latitude success:^(id response) {
if (response) {
NSDictionary*resultDic=[NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableContainers error:nil];
NSLog(@"result:%@",resultDic[@"result"]);
NSLog(@"resultDic:%@",resultDic);
if ([resultDic[@"result"] isEqualToString:@"100"])
{
UserModel *model=[[UserModel alloc]init];
model.phoneNumber=phoneNumber;
NSDictionary*DataDic=resultDic[@"data"];
model.userId=DataDic[@"userId"];
model.nickName=DataDic[@"nickName"];
// 保存在本地
[[DataCenter defaultDtacenter]setValue:model forKey:@"UserRegist"];
NSUserDefaults*userdefult=[NSUserDefaults standardUserDefaults];
NSString*userName=phoneNumber;
NSString*password=passwd;
[userdefult setObject:password forKey:@"password"];
[userdefult setObject:userName forKey:@"name"];
[userdefult setObject:model.userId forKey:@"userId"];
[userdefult setObject:model.userSex forKey:@"userSex"];
[userdefult synchronize];
// 设置别名
// NSString*userID=[NSString stringWithFormat:@"%@",model.userId];
// [JPUSHService setTags:nil alias:userID callbackSelector:@selector(tagAliasCallback:tags:alias:) object:self];
//
}else{
[self showTitle:@"" messsage:@"注册失败"];
}
}
} failure:^(NSError *err) {
UIAlertView *alter =[[UIAlertView alloc]initWithTitle:@"温馨提示" message:@"请检查您的网络" delegate:self cancelButtonTitle:@"确定" otherButtonTitles: nil];
[alter show];
}];
}
- (void)tagAliasCallback:(int)iResCode tags:(NSSet*)tags alias:(NSString*)alias {
NSLog(@"rescode: %d, \ntags: %@, \nalias: %@\n", iResCode, tags , alias);
if (iResCode!=0) {
//NSUserDefaults*userdefult=[NSUserDefaults standardUserDefaults];
//NSString*userID=[userdefult objectForKey:@"userId"];
//[JPUSHService setTags:nil alias: userID callbackSelector:@selector(tagAliasCallback:tags:alias:) object:self];
}
}
#pragma mark 保存自定义图片
-(void)saveCustomIconwith:(NSNumber*)userId customIconName:(NSString*)customIconName addDeviceId:(NSString*)deviceId addcustomShowName:(NSString*)customShowName{
[AFNOHeaderHttpTool saveCustomIconWith:userId deviceId:deviceId customIconName:customIconName customShowName:customShowName success:^(id response) {
NSDictionary *reDic=[NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableContainers error:nil];
if ([reDic[@"result"] isEqualToString:@"100"]) {
}else if ([reDic[@"result"] isEqualToString:@"101"]){
}
} failure:^(NSError *err) {
}];
}
#pragma mark 设置换水提醒
-(void)setRemindWaterInfWith:(NSString*)deviceId
waterRemind:(NSString*)waterRemind
remindCycle:(NSString*)remindCycle
huishuiShiJian:(nexChangeWaterTime)reminDate{
[_indcView startAnimating];
[AFNOHeaderHttpTool setRemindWaterInfWith:deviceId waterRemind:waterRemind remindCycle:remindCycle success:^(id response) {
if (response) {
NSDictionary *reDic=[NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableContainers error:nil];
NSDictionary*dataDic=reDic[@"data"];
if ([reDic[@"result"] isEqualToString:@"100"]) {
//setRemindWaterModel*model=[[setRemindWaterModel alloc]init];
[_indcView stopAnimating];
setRemindWaterModel*model=[[setRemindWaterModel alloc]init];
model.remindDate= dataDic[@"remindDate"];
model.todayremind=dataDic[@"todayRemind"];
model.waterremind=dataDic[@"waterRemind"];
NSNumber *cle = (NSNumber *)dataDic[@"remindCycle"];
model.remindcycle= [cle integerValue];
reminDate(model);
}else if([reDic[@"result"] isEqualToString:@"101"]){
[_indcView stopAnimating];
[[UIApplication sharedApplication].keyWindow makeToast:@"设置失败"];
}
}
} failure:^(NSError *err) {
[_indcView stopAnimating];
}];
}
#pragma mark 获取换水提醒信息
-(void)getRemindWaterInfWith:(NSString*)deviceId
huishuiInfo:(changeWaterInf)waterinfo{
[_indcView startAnimating];
[AFNOHeaderHttpTool getRemindWaterInfwith:deviceId success:^(id response) {
if (response) {
NSDictionary *reDic=[NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableContainers error:nil];
NSDictionary*dataDic=reDic[@"data"];
if ([reDic[@"result"] isEqualToString:@"100"]) {
[_indcView stopAnimating];
setRemindWaterModel*model=[[setRemindWaterModel alloc]init];
model.remindDate= dataDic[@"remindDate"];
model.todayremind=dataDic[@"todayRemind"];
model.waterremind=dataDic[@"waterRemind"];
NSNumber *cle = (NSNumber *)dataDic[@"remindCycle"];
model.remindcycle= [cle integerValue];
waterinfo(model);
}else if([reDic[@"result"] isEqualToString:@"101"]){
[_indcView stopAnimating];
[[UIApplication sharedApplication].keyWindow makeToast:@"设置失败"];
}
}
} failure:^(NSError *err) {
[_indcView stopAnimating];
} ];
}
-(void)creatIndicatorView{
_indcView=[[UIActivityIndicatorView alloc]initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];
// _indicatorView.center=CGPointMake(kScreenSize.width/2, kScreenSize.height/2+100);
_indcView.frame=CGRectMake(kScreenSize.width/2-50,kScreenSize.height/2-100,100, 100);
_indcView.backgroundColor=[UIColor colorWithRed:0 green:0 blue:0 alpha:0.5];
_indcView.layer.masksToBounds=YES;
_indcView.layer.cornerRadius=5;
AppDelegate*delegate=(AppDelegate*)[[UIApplication sharedApplication]delegate];
[delegate.window addSubview:_indcView];
}
-(void)scanCamerawith:(NSString *)cameraId
andeviceId:(NSString *)deviceId
backInfo:(cameraIsActive)cameraActive
success:(void (^)(id response))success
failure:(void (^)(NSError* err))failure{
[AFNOHeaderHttpTool scanCodeActiveCamea:cameraId deiviceId:deviceId success:success failure:failure];
}
//查询审核后状态(old
-(void)shopCertifyStausWith:(NSString*)shopId
huishuiShiJian:(ShopCertifyStaus)ShopCertify
{
[AFNOHeaderHttpTool getShopsStatus:shopId success:^(id response) {
NSDictionary *reDic=[NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableContainers error:nil];
NSDictionary*dataDic=reDic[@"data"];
if ([reDic[@"result"] isEqualToString:@"100"]) {
ShopCertifyStausModel*shopCertifyd=[[ShopCertifyStausModel alloc] init];
shopCertifyd.shopsId= dataDic[@"shopsId"];
shopCertifyd.userId= dataDic[@"userId"];
shopCertifyd.userName= dataDic[@"userName"];
shopCertifyd.shopsPhone= dataDic[@"shopsPhone"];
shopCertifyd.shopsName= dataDic[@"shopsName"];
shopCertifyd.shopsProvince= dataDic[@"shopsProvince"];
shopCertifyd.shopsCity= dataDic[@"shopsCity"];
shopCertifyd.shopsArea= dataDic[@"shopsArea"];
shopCertifyd.shopsAddress= dataDic[@"shopsAddress"];
shopCertifyd.picture1= dataDic[@"picture1"];
shopCertifyd.picture2= dataDic[@"picture2"];
shopCertifyd.picture3= dataDic[@"picture3"];
shopCertifyd.picture4= dataDic[@"picture4"];
shopCertifyd.status= dataDic[@"status"];
shopCertifyd.reason= dataDic[@"reason"];
CertificationShopModel *ShopsInfo= [[CertificationShopModel alloc] init];
ShopsInfo.shopsId= dataDic[@"shopsId"];
ShopsInfo.userId= dataDic[@"userId"];
ShopsInfo.userName= dataDic[@"userName"];
ShopsInfo.shopsPhone= dataDic[@"shopsPhone"];
ShopsInfo.shopsName= dataDic[@"shopsName"];
ShopsInfo.shopsProvince= dataDic[@"shopsProvince"];
ShopsInfo.shopsCity= dataDic[@"shopsCity"];
ShopsInfo.shopsArea= dataDic[@"shopsArea"];
ShopsInfo.shopsAddress= dataDic[@"shopsAddress"];
ShopsInfo.picture1= dataDic[@"picture1"];
ShopsInfo.picture2= dataDic[@"picture2"];
ShopsInfo.picture3= dataDic[@"picture3"];
ShopsInfo.picture4= dataDic[@"picture4"];
ShopsInfo.status= dataDic[@"status"];
ShopsInfo.reason= dataDic[@"reason"];
[[DataCenter defaultDtacenter] setValue:ShopsInfo forKey:@"ShopsInfo"];
ShopCertify(shopCertifyd);
}else if([reDic[@"result"] isEqualToString:@"101"]){
[self makeTostView:@"查询失败101"];
}
} failure:^(NSError *err) {
}];
}
//查询审核后状态(最新)
-(void)newshopCertifyStausWith:(NSString*)shopId
huishuiShiJian:(ShopCertifyStaus)ShopCertify
{
[AFHttpTool getShopsStatus:shopId success:^(id response) {
NSDictionary *reDic=[NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableContainers error:nil];
NSDictionary*dataDic=reDic[@"data"];
if ([reDic[@"result"] isEqualToString:@"100"]) {
ShopCertifyStausModel*shopCertifyd=[[ShopCertifyStausModel alloc] init];
shopCertifyd.shopsId= dataDic[@"shopsId"];
shopCertifyd.userId= dataDic[@"userId"];
shopCertifyd.userName= dataDic[@"userName"];
shopCertifyd.shopsPhone= dataDic[@"shopsPhone"];
shopCertifyd.shopsName= dataDic[@"shopsName"];
shopCertifyd.shopsProvince= dataDic[@"shopsProvince"];
shopCertifyd.shopsCity= dataDic[@"shopsCity"];
shopCertifyd.shopsArea= dataDic[@"shopsArea"];
shopCertifyd.shopsAddress= dataDic[@"shopsAddress"];
shopCertifyd.picture1= dataDic[@"picture1"];
shopCertifyd.picture2= dataDic[@"picture2"];
shopCertifyd.picture3= dataDic[@"picture3"];
shopCertifyd.picture4= dataDic[@"picture4"];
shopCertifyd.status= dataDic[@"status"];
shopCertifyd.reason= dataDic[@"reason"];
shopCertifyd.weixinCode= dataDic[@"weixinCode"];
shopCertifyd.shopLink= dataDic[@"shopLink"];
CertificationShopModel *ShopsInfo= [[CertificationShopModel alloc] init];
ShopsInfo.shopsId= dataDic[@"shopsId"];
ShopsInfo.userId= dataDic[@"userId"];
ShopsInfo.userName= dataDic[@"userName"];
ShopsInfo.shopsPhone= dataDic[@"shopsPhone"];
ShopsInfo.shopsName= dataDic[@"shopsName"];
ShopsInfo.shopsProvince= dataDic[@"shopsProvince"];
ShopsInfo.shopsCity= dataDic[@"shopsCity"];
ShopsInfo.shopsArea= dataDic[@"shopsArea"];
ShopsInfo.shopsAddress= dataDic[@"shopsAddress"];
ShopsInfo.picture1= dataDic[@"picture1"];
ShopsInfo.picture2= dataDic[@"picture2"];
ShopsInfo.picture3= dataDic[@"picture3"];
ShopsInfo.picture4= dataDic[@"picture4"];
ShopsInfo.status= dataDic[@"status"];
ShopsInfo.reason= dataDic[@"reason"];
ShopsInfo.wechat= dataDic[@"weixinCode"];
ShopsInfo.shoplink= dataDic[@"shopLink"];
[[DataCenter defaultDtacenter] setValue:ShopsInfo forKey:@"ShopsInfo"];
ShopCertify(shopCertifyd);
}else if([reDic[@"result"] isEqualToString:@"101"]){
[self makeTostView:@"查询失败101"];
}
} failure:^(NSError *err) {
}];
}
-(void)xuanZeKanHuShnagJiaWith:(NSString *)shopsPhone
UserId :(NSNumber *)userId
xuaZeShangJia:(kanHuShangJia)kanHuShangJia
{
[AFNOHeaderHttpTool xuanZeKanHuShangJia:shopsPhone yongHuId:userId success:^(id response) {
NSDictionary *reDic=[NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableContainers error:nil];
NSDictionary*dataDic=reDic[@"data"];
if ([reDic[@"result"] isEqualToString:@"100"]) {
CertificationShopModel*kanHuShangJiaXinXi=[[CertificationShopModel alloc] init];
kanHuShangJiaXinXi.userId= dataDic[@"userId"];
kanHuShangJiaXinXi.userName= dataDic[@"userName"];
kanHuShangJiaXinXi.userImg = dataDic[@"userImg"];
kanHuShangJiaXinXi.shopsPhone= dataDic[@"shopsPhone"];
kanHuShangJiaXinXi.shopsName= dataDic[@"shopsName"];
kanHuShangJiaXinXi.shopsProvince= dataDic[@"shopsProvince"];
kanHuShangJiaXinXi.shopsCity= dataDic[@"shopsCity"];
kanHuShangJiaXinXi.shopsArea= dataDic[@"shopsArea"];
kanHuShangJiaXinXi.shopsAddress= dataDic[@"shopsAddress"];
kanHuShangJiaXinXi.shopsId = dataDic[@"shopsId"];
kanHuShangJiaXinXi.picture1 = dataDic[@"picture1"];
kanHuShangJiaXinXi.picture2 = dataDic[@"picture2"];
kanHuShangJiaXinXi.picture3 = dataDic[@"picture3"];
kanHuShangJiaXinXi.picture4 = dataDic[@"picture4"];
kanHuShangJiaXinXi.reason = dataDic[@"reason"];
kanHuShangJiaXinXi.status = dataDic[@"status"];
//存储
[[DataCenter defaultDtacenter]setValue:kanHuShangJiaXinXi forKey:@"ShopsInfo2"];
kanHuShangJia(kanHuShangJiaXinXi);
}else if([reDic[@"result"] isEqualToString:@"101"]){
[self makeTostView:@"失败101"];
}else if([reDic[@"result"] isEqualToString:@"212"]){
[self makeTostView:@"请填写正确的已通过爱鱼奇认证的商家手机号"];
}
} failure:^(NSError *err) {
[self makeTostView:@"出现未知领域问题"];
}];
}
@end
@@ -0,0 +1,82 @@
//
// IfishDataUnity.h
// Ifish
//
// Created by imac on 16/5/26.
// Copyright © 2016年 imac. All rights reserved.
//
#import <Foundation/Foundation.h>
#import "ScanViewController.h"
#import "SonNuoCenterViewController.h"
#import "YooseeCenterViewController.h"
#import "DeviceCameraModel.h"
#import "IfishMianTabViewController.h"
#import "KeLiAiCenterViewController.h"
#import "IfishDeviceInfo.h"
#import "RuSunHaveHeateViewController.h"
#import "SongNuoDBCenterViewController.h"
#import "RunSun84biteCenterViewController.h"
//默认选中 下表类型
//typedef NS_ENUM (NSInteger,saveIndexType){
//
// //登陆
// indexTypelogIn,
// //自动登录
// indexTypeAminimateLogIn,
// //二维码扫描
// indexTypeScanQrCode,
// //选中
// indexTypeSelect,
// //删除默认下标
// indexTypeDelect,
// //绑定默认下标
// indexTypeBindDevice
//
//};
//
@interface IfishDataUnity : NSObject
+(IfishDataUnity*)shareDataInstance;
/**
设备 增 删 选 返回 单个设备
操作 devicemodel verdermodel 用归档 (可选用FMDB DB类型已建)
* 增 扫描分享,绑定 删 删除设备 选 选中设备
*/
/**
* 二维码添加
*/
-(void)addDeviceByQRCodeWithDic:(NSDictionary *)resultDic addWith:(NSMutableArray *)deviceArry dismiss:(ScanViewController*) scanVC;
/**
* 绑定添加
*/
-(void)saveDeviceDataWith:(NSMutableArray *)deviceArry Withdic:(NSDictionary *)dataDic dissmissScanVC:(ScanViewController *)scanVC;
//设置 根视图
-(void)initAppCenterVcWith:(DeviceModel*)devicemodel addWithdissMisVc:(ScanViewController *)scanVC;
#pragma mark - 2.3版本后改为tab栏
/**
* 新加tab栏 登陆 转跳逻辑修改
*/
-(void)setAppTabRoot;
@end
@@ -0,0 +1,331 @@
//
// IfishDataUnity.m
// Ifish
//
// Created by imac on 16/5/26.
// Copyright © 2016年 imac. All rights reserved.
//
#import "IfishDataUnity.h"
//#import "JPUSHService.h"
#import "IfishCameraModel.h"
#import "IfishNewsModel.h"
@implementation IfishDataUnity
+(IfishDataUnity*)shareDataInstance
{
static IfishDataUnity*instance=nil;
static dispatch_once_t predicate;
dispatch_once(&predicate, ^{
instance=[[[self class]alloc]init];
});
return instance;
}
#pragma mark -二维码添加
-(void)addDeviceByQRCodeWithDic:(NSDictionary *)resultDic addWith:(NSMutableArray *)deviceArry dismiss:(ScanViewController*) scanVC{
// 保存设备信息 单个设备 更改 dic
NSDictionary*dataDic=resultDic[@"data"];
[self saveDeviceDataWith:deviceArry Withdic:dataDic dissmissScanVC:(ScanViewController *)scanVC];
}
//保存 单个设备信息
-(void)saveDeviceDataWith:(NSMutableArray *)deviceArry Withdic:(NSDictionary *)dataDic dissmissScanVC:(ScanViewController *)scanVC
{
DeviceModel*devicemodel=[[DeviceModel alloc]initWithDict:dataDic];
//设备
[deviceArry insertObject:devicemodel atIndex:0];
[[DataCenter defaultDtacenter]setValue:deviceArry forKey:@"deviceInfo"];
[self initAppCenterVcWith:devicemodel addWithdissMisVc:scanVC];
}
#pragma mark -设置根视图
-(void)initAppCenterVcWith:(DeviceModel*)devicemodel addWithdissMisVc:(ScanViewController *)scanVC{
if (scanVC) {
[[UIApplication sharedApplication].delegate.window.rootViewController.view makeToastActivityBlackBack];
[scanVC dismissViewControllerAnimated:YES completion:^{
[self setrootWith:devicemodel];
[[UIApplication sharedApplication].delegate.window.rootViewController.view hideToastActivity];
}];
return;
}
[self setrootWith:devicemodel];
}
-(void)setrootWith:(DeviceModel*)devicemodel{
// 先判断是否授权
if ([devicemodel.type isEqual:[NSNull null]]||!devicemodel.type) {
//未知类型 跳转未授权 显示未知类型
devicemodel.isBlacklist = @"1";
}
if ([devicemodel.isBlacklist isEqual:[NSNull null]]) {
devicemodel.isBlacklist = @"1";
}
if ([devicemodel.isBlacklist isEqualToString:@"1"]) {
//黑名单 未授权 跳转到 未授权界面
[self setBlackViewWithDevice:devicemodel];
}else{
if ([devicemodel.controlAmount isEqual:[NSNull null]]) {
// 服务器返回此字段 为NSUll 时默认到0控
devicemodel.controlAmount = 0;
}
//v3.5后新加硬件类型字段 判断硬件类型
//新增硬件类型 原来的设备用 controlAmount 和timerAmount 判断 新加设备按类型区分
//硬件型号: 1c 三控(温控),硬件型号:cc 四川聚能 松诺新bd 睿芯独立2a
if ([devicemodel.type isEqualToString:DECICE_TYPE_THREETMP]) {
RuSunHaveHeateViewController *ruSuncenter=[[RuSunHaveHeateViewController alloc] init];
ruSuncenter.currentDevice = devicemodel;
UIApplication*app=[UIApplication sharedApplication];
AppDelegate*app1=(AppDelegate*)app.delegate;
UINavigationController*nav=[[UINavigationController alloc]initWithRootViewController:ruSuncenter];
[nav.navigationBar setBackgroundImage:[UIImage imageNamed:@"blackbar.png"] forBarMetrics:UIBarMetricsDefault];
app1.window.rootViewController=nav;
}else if ([devicemodel.type isEqualToString:DECICE_TYPE_JUNENGCC]){
[self setBlackViewWithDevice:devicemodel];
}else if ([devicemodel.type isEqualToString:DECICE_TYPE_SONGNEWBD]){
SongNuoDBCenterViewController *SongNuoBDcenter=[[SongNuoDBCenterViewController alloc] init];
SongNuoBDcenter.currentDevice = devicemodel;
UIApplication*app=[UIApplication sharedApplication];
AppDelegate*app1=(AppDelegate*)app.delegate;
UINavigationController*nav=[[UINavigationController alloc]initWithRootViewController:SongNuoBDcenter];
[nav.navigationBar setBackgroundImage:[UIImage imageNamed:@"blackbar.png"] forBarMetrics:UIBarMetricsDefault];
app1.window.rootViewController=nav;
}else if ([devicemodel.type isEqualToString:DECICE_TYPE_RUSUN2A]){
RunSun84biteCenterViewController *RunSun84center=[[RunSun84biteCenterViewController alloc] init];
RunSun84center.currentDevice = devicemodel;
UIApplication*app=[UIApplication sharedApplication];
AppDelegate*app1=(AppDelegate*)app.delegate;
UINavigationController*nav=[[UINavigationController alloc]initWithRootViewController:RunSun84center];
[nav.navigationBar setBackgroundImage:[UIImage imageNamed:@"blackbar.png"] forBarMetrics:UIBarMetricsDefault];
app1.window.rootViewController=nav;
}else{
int controlAmount=[devicemodel.controlAmount intValue];
switch (controlAmount) {
case IFISH_DEVICE_CONTROLAMOUNT0:
{
//零控
NoneControlCenterViewController *none=[[NoneControlCenterViewController alloc] init];
none.currentDevice = devicemodel;
UIApplication*app=[UIApplication sharedApplication];
AppDelegate*app1=(AppDelegate*)app.delegate;
UINavigationController*nav=[[UINavigationController alloc]initWithRootViewController:none];
[nav.navigationBar setBackgroundImage:[UIImage imageNamed:@"blackbar.png"] forBarMetrics:UIBarMetricsDefault];
app1.window.rootViewController=nav;
}
break;
case IFISH_DEVICE_CONTROLAMOUNT2:
{
// 两控
TwoControlCenterController *twocontrolCenter=[[TwoControlCenterController alloc] init];
twocontrolCenter.currentDevice = devicemodel;
UIApplication*app=[UIApplication sharedApplication];
AppDelegate*app1=(AppDelegate*)app.delegate;
UINavigationController*nav=[[UINavigationController alloc]initWithRootViewController:twocontrolCenter];
[nav.navigationBar setBackgroundImage:[UIImage imageNamed:@"blackbar.png"] forBarMetrics:UIBarMetricsDefault];
app1.window.rootViewController=nav;
}
break;
case IFISH_DEVICE_CONTROLAMOUNT3:
{
// 三控YooseeCenterViewController
ThreeControlCenterViewController *threeControlCenter=[[ThreeControlCenterViewController alloc] init];
threeControlCenter.currentDevice = devicemodel;
//ICSDrawerController*ics=[[ICSDrawerController alloc]initWithLeftViewController:left centerViewController:threeControlCenter rightViewController:rightVC];
UIApplication*app=[UIApplication sharedApplication];
AppDelegate*app1=(AppDelegate*)app.delegate;
UINavigationController*nav=[[UINavigationController alloc]initWithRootViewController:threeControlCenter];
[nav.navigationBar setBackgroundImage:[UIImage imageNamed:@"blackbar.png"] forBarMetrics:UIBarMetricsDefault];
app1.window.rootViewController=nav;
}
break;
case IFISH_DEVICE_CONTROLAMOUNT4:
{
int timerAmount =[devicemodel.timerAmount intValue];
if (timerAmount == 8) {
// 四控 8定时器
// FourControlViewController *fourControlCenter=[[FourControlViewController alloc] init];
FourControlNormalCenterController *fourControlCenter=[[FourControlNormalCenterController alloc] init];
fourControlCenter.currentDevice = devicemodel;
UIApplication*app=[UIApplication sharedApplication];
AppDelegate*app1=(AppDelegate*)app.delegate;
UINavigationController*nav=[[UINavigationController alloc]initWithRootViewController:fourControlCenter];
[nav.navigationBar setBackgroundImage:[UIImage imageNamed:@"blackbar.png"] forBarMetrics:UIBarMetricsDefault];
app1.window.rootViewController=nav;
}else if (timerAmount == 6){
//可丽爱 4控制 6定时器
KeLiAiCenterViewController *keliaicenterVC=[[KeLiAiCenterViewController alloc] init];
keliaicenterVC.currentDevice = devicemodel;
UIApplication*app=[UIApplication sharedApplication];
AppDelegate*app2=(AppDelegate*)app.delegate;
UINavigationController*nav=[[UINavigationController alloc]initWithRootViewController:keliaicenterVC];
[nav.navigationBar setBackgroundImage:[UIImage imageNamed:@"blackbar.png"] forBarMetrics:UIBarMetricsDefault];
app2.window.rootViewController=nav;
}else{
NSString *tost=[NSString stringWithFormat:@"未知错误4控%d定时器",timerAmount];
[[UIApplication sharedApplication].keyWindow makeToast:tost];
}
}
break;
case IFISH_DEVICE_CONTROLAMOUNT5:
{
// 绚 多
XuToCenterViewController *XuToCenter=[[XuToCenterViewController alloc] init];
XuToCenter.currentDevice = devicemodel;
//ICSDrawerController*ics=[[ICSDrawerController alloc]initWithLeftViewController:left centerViewController:XuToCenter rightViewController:rightVC];
UIApplication*app=[UIApplication sharedApplication];
AppDelegate*app1=(AppDelegate*)app.delegate;
UINavigationController*nav=[[UINavigationController alloc]initWithRootViewController:XuToCenter];
[nav.navigationBar setBackgroundImage:[UIImage imageNamed:@"blackbar.png"] forBarMetrics:UIBarMetricsDefault];
app1.window.rootViewController=nav;
}
break;
case IFISH_DEVICE_CONTROLAMOUNT8 :
{
//松诺
SonNuoCenterViewController *songNu=[[SonNuoCenterViewController alloc] init];
//ICSDrawerController*ics=[[ICSDrawerController alloc]initWithLeftViewController:left centerViewController:songNu rightViewController:rightVC];
songNu.currentDevice = devicemodel;
UIApplication*app=[UIApplication sharedApplication];
AppDelegate*app1=(AppDelegate*)app.delegate;
UINavigationController*nav=[[UINavigationController alloc]initWithRootViewController:songNu];
[nav.navigationBar setBackgroundImage:[UIImage imageNamed:@"blackbar.png"] forBarMetrics:UIBarMetricsDefault];
app1.window.rootViewController=nav;
}
default:
break;
}
}
}
}
-(void)setBlackViewWithDevice:(DeviceModel *)devicemodel
{
IfishBlackListCenterViewController *blackVC=[[IfishBlackListCenterViewController alloc] init];
blackVC.currentDevice = devicemodel;
if ([devicemodel.type isEqual:[NSNull null]]||!devicemodel.type) {
//未知类型 跳转未授权 显示位置类型
blackVC.stateText = @"未知类型";
}else{
if ([devicemodel.type isEqualToString:DECICE_TYPE_JUNENGCC]) {
blackVC.stateText = @"未知类型";
}
if ([devicemodel.type isEqualToString:DECICE_TYPE_SONGNEWBD]) {
blackVC.stateText = @"未知类型";
}
}
UIApplication*app=[UIApplication sharedApplication];
AppDelegate*app1=(AppDelegate*)app.delegate;
UINavigationController*nav=[[UINavigationController alloc]initWithRootViewController:blackVC];
[nav.navigationBar setBackgroundImage:[UIImage imageNamed:@"blackbar.png"] forBarMetrics:UIBarMetricsDefault];
app1.window.rootViewController=nav;
}
//设置根视图
-(void)setAppTabRoot{
IfishMianTabViewController *mianVC=[[IfishMianTabViewController alloc] init];
[UIApplication sharedApplication].delegate.window.rootViewController=mianVC;
}
@end
@@ -0,0 +1,25 @@
//
// IfishUserDataUnity.h
// Ifish
//
// Created by imac on 17/4/7.
// Copyright © 2017年 lianlian. All rights reserved.
//
#import <Foundation/Foundation.h>
@interface IfishUserDataUnity : NSObject
+(IfishUserDataUnity*)shareDataInstance;
/**
* 登陆验证成功 返回 from登录界面
*/
-(void)userloginValidationSuccsess:(NSDictionary *)dataDic phoneNumber:(NSString *)phoneNumber passward:(NSString *)password;
/**
* 登陆验证成功 返回 自动登录
*/
-(void)userAutologinSuccsess:(NSDictionary *)dataDic;
@end
@@ -0,0 +1,233 @@
//
// IfishUserDataUnity.m
// Ifish
//
// Created by imac on 17/4/7.
// Copyright © 2017年 lianlian. All rights reserved.
//
#import "IfishUserDataUnity.h"
#import "NTESLoginManager.h"
#import "SVProgressHUD.h"
#import "NTESService.h"
#import "IfishMianTabViewController.h"
#import "IfishUserDefaultHelper.h"
#import "NSObject+LBLaunchImage.h"
#import "IfishLoadingWebViewController.h"
#import "IfishADTimerViewController.h"
@implementation IfishUserDataUnity
+(IfishUserDataUnity*)shareDataInstance
{
static IfishUserDataUnity*instance=nil;
static dispatch_once_t predicate;
dispatch_once(&predicate, ^{
instance=[[[self class]alloc]init];
});
return instance;
}
-(void)userloginValidationSuccsess:(NSDictionary *)dataDic phoneNumber:(NSString *)phoneNumber passward:(NSString *)password
{
NSDictionary *userDic=dataDic[@"userInfo"];
UserModel *model=[[UserModel alloc] initWithDict:userDic];
[[DataCenter defaultDtacenter]setValue:model forKey:@"UserLogIn"];
//金币任务等级
NSDictionary *userAssetDic=dataDic[@"userAsset"];
IfishUserAsset *userAsset =[[IfishUserAsset alloc] initWithDict:userAssetDic];
[[DataCenter defaultDtacenter]setValue:userAsset forKey:@"IfishUserAsset"];
NSUserDefaults*userdefult=[NSUserDefaults standardUserDefaults];
[userdefult setObject:password forKey:@"password"];
[userdefult setObject:phoneNumber forKey:@"name"];
[userdefult setObject:@"0" forKey:@"isExit"];
[userdefult setObject:model.userId forKey:@"userId"];
if ([model.userSex isEqual:[NSNull null]] || model.userSex ==nil) {
model.userSex=@"";
}
[userdefult setObject:model.userSex forKey:@"userSex"];
[userdefult synchronize];
NSLog(@"userDic:%@",userDic);
NSLog(@"登录成功");
//登陆云信
NSString *acount = [NSString stringWithFormat:@"%@",model.userId];
[self doLoginWithAccount:acount addToken:model.neteaseToken];
[self setAppTabRoot];
}
#pragma mark -登陆云信服务器
- (void)doLoginWithAccount:(NSString *)acount addToken:(NSString *)token
{
NSString *loginAccount = acount;
NSString *loginToken = token;
//NIM SDK 只提供消息通道,并不依赖用户业务逻辑,开发者需要为每个APP用户指定一个NIM帐号,NIM只负责验证NIM的帐号即可(在服务器端集成)
//用户APP的帐号体系和 NIM SDK 并没有直接关系
//DEMO中使用 username 作为 NIM 的account md5(password) 作为 token
//开发者需要根据自己的实际情况配置自身用户系统和 NIM 用户系统的关系
[[[NIMSDK sharedSDK] loginManager] login:loginAccount
token:loginToken
completion:^(NSError *error) {
[SVProgressHUD dismiss];
if (error == nil)
{
LoginData *sdkData = [[LoginData alloc] init];
sdkData.account = loginAccount;
sdkData.token = loginToken;
[[NTESLoginManager sharedManager] setCurrentLoginData:sdkData];
[[NTESServiceManager sharedManager] start];
//NSInteger count = [[[NIMSDK sharedSDK] conversationManager] allUnreadCount];
// NSLog(@"count%d",count);
[[NSNotificationCenter defaultCenter] postNotificationName:IFISHIMLOGINSUCSESS object:nil];
}
else
{
NSString *toast = [NSString stringWithFormat:@"登录失败 code: %zd",error.code];
[[UIApplication sharedApplication].keyWindow makeToast:toast ];
}
}];
}
#pragma mark - 自动登录
-(void)userAutologinSuccsess:(NSDictionary *)dataDic
{
NSDictionary *userDic=dataDic[@"userInfo"];
UserModel *model=[[UserModel alloc] initWithDict:userDic];
[[DataCenter defaultDtacenter]setValue:model forKey:@"UserLogIn"];
//金币任务等级
NSDictionary *userAssetDic=dataDic[@"userAsset"];
IfishUserAsset *userAsset =[[IfishUserAsset alloc] initWithDict:userAssetDic];
[[DataCenter defaultDtacenter]setValue:userAsset forKey:@"IfishUserAsset"];
//是否升级
NSString *oldGradeNum = [IfishUserDefaultHelper getDefualtGradNum];
NSString *gradeNum = [NSString stringWithFormat:@"%@",userAsset.gradeNum];
if ([oldGradeNum intValue]<[gradeNum intValue]){
[[IfishUserObsever sharedInstance] showLevelUpWith:gradeNum];
[IfishUserDefaultHelper chageLevlelGrad:gradeNum];
}
//登陆云信 走自动登录
LoginData *data = [[NTESLoginManager sharedManager] currentLoginData];
NSString *account = [data account];
NSString *token = [data token];
//如果有缓存用户名密码推荐使用自动登录
if ([account length] && [token length])
{
//自动登录
//非强制模式
//[[[NIMSDK sharedSDK] loginManager] autoLogin:account
// token:token];
//这里我们使用强制模式 即不考虑安全登录 多设备同帐号登陆
NIMAutoLoginData * LoginData = [[NIMAutoLoginData alloc] init];
LoginData.account = account;
LoginData.token = token;
//强制模式 强制模式下的自动登录,服务器将不检查当前登录设备是否为上一次登录设备,安全性较低。但相对的更加方便,适合 IM 仅作为辅助模块的 App
LoginData.forcedMode = YES;
[[[NIMSDK sharedSDK] loginManager] autoLogin:LoginData];
[[NTESServiceManager sharedManager] start];
}
else
{ //注册登录
NSString *acount = [NSString stringWithFormat:@"%@",model.userId];
[self doLoginWithAccount:acount addToken:model.neteaseToken];
}
//[self startLounchImg];
//完成登陆验证开始 广告页倒计时
[self setAdViewVC];
}
-(void)setAdViewVC
{
IfishADTimerViewController *mianVC=[[IfishADTimerViewController alloc] init];
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:mianVC];
[UIApplication sharedApplication].delegate.window.rootViewController=nav;
}
-(void)startLounchImg{
__weak typeof(self) weakSelf = self;
[NSObject makeLBLaunchImageAdView:^(LBLaunchImageAdView *imgAdView) {
[[UIApplication sharedApplication].keyWindow addSubview:imgAdView];
//设置广告的类型
imgAdView.getLBlaunchImageAdViewType(LogoAdType);
//设置本地启动图片
imgAdView.localAdImgName = @"Ifishlaunch_adView.jpg";
//自定义跳过按钮
imgAdView.skipBtn.backgroundColor = [UIColor blackColor];
//各种点击事件的回调
imgAdView.clickBlock = ^(clickType type){
switch (type) {
case clickAdType:{
NSLog(@"点击广告回调");
//TestViewController *vc = [[TestViewController alloc]init];
//vc.view.backgroundColor = [UIColor whiteColor];
//[[UIApplication sharedApplication].delegate.window.rootViewController presentViewController:vc animated:YES completion:^{
// }];
IfishMianTabViewController *mianVC=[[IfishMianTabViewController alloc] init];
[UIApplication sharedApplication].delegate.window.rootViewController=mianVC;
IfishLoadingWebViewController *pushVC = [[IfishLoadingWebViewController alloc] init];
pushVC.pushlink = IFISH_DEVCEITROURL;
[mianVC.navigationController pushViewController:pushVC animated:YES];
}
break;
case skipAdType:
{
NSLog(@"点击跳过回调");
[weakSelf setAppTabRoot];
}
break;
case overtimeAdType:
{
NSLog(@"倒计时完成后的回调");
[weakSelf setAppTabRoot];
}
break;
default:
break;
}
};
}];
}
//设置根视图
-(void)setAppTabRoot{
IfishMianTabViewController *mianVC=[[IfishMianTabViewController alloc] init];
[UIApplication sharedApplication].delegate.window.rootViewController=mianVC;
}
@end