Initial commit
This commit is contained in:
Vendored
BIN
Binary file not shown.
@@ -0,0 +1,48 @@
|
||||
//
|
||||
// IfishAddGoldRuleType.h
|
||||
// Ifish
|
||||
//
|
||||
// Created by imac on 17/3/10.
|
||||
// Copyright © 2017年 lianlian. All rights reserved.
|
||||
//
|
||||
|
||||
#ifndef IfishAddGoldRuleType_h
|
||||
#define IfishAddGoldRuleType_h
|
||||
|
||||
//金币
|
||||
#define EVERYDAYSIGNIN @"everyDaySignin"
|
||||
#define READINFORMATION @"readInformation"
|
||||
#define OPENGOODSLINK @"openGoodsLink"
|
||||
#define ROOMLEAVEMSG @"roomLeaveMsg"
|
||||
#define IFISHCOMMUNITY @"ifishCommunity"
|
||||
#define SHARECAMERAPICTURE @"shareCameraPicture"
|
||||
#define SHARELOOKREPORT @"shareLookReport"
|
||||
#define SHAREIFISHAPP @"shareIfishApp"
|
||||
#define RENAME @"rename"
|
||||
#define OPLOADHEADIMG @"uploadHeadImg"
|
||||
#define OPENSHARECAMERA @"openShareCamera"
|
||||
#define CHIOCELOOKSHOPS @"choiceLookShops"
|
||||
#define IFISHDOCTOR @"ifishDoctor"
|
||||
|
||||
#define IFISHADDGOLDTYPE0 @"everyDay"
|
||||
#define IFISHADDGOLDTYPE1 @"once"
|
||||
|
||||
//经验
|
||||
#define IFISHADDEXPTYPE0 @"everyDay"
|
||||
#define IFISHADDEXPTYPE1 @"once"
|
||||
|
||||
#define IFISHADDEXP_BIDCAMERA @"bindCamera"
|
||||
#define IFISHADDEXP_BIDDEVICE @"bindDevice"
|
||||
#define IFISHADDEXP_LOGIN @"everyDayLogin"
|
||||
|
||||
|
||||
//任务
|
||||
|
||||
#define IFISHTASK_ARR @"IfishTaskArray"
|
||||
#define IFISHTASK_HAVEDONEALL @"ifishTaskAllDone"
|
||||
|
||||
//注册成功 登录云信
|
||||
#define IFISHIMLOGINSUCSESS @"ifishIMuserLoginSucsses"
|
||||
|
||||
|
||||
#endif /* IfishAddGoldRuleType_h */
|
||||
@@ -0,0 +1,29 @@
|
||||
//
|
||||
// IfishHelperUtils.h
|
||||
// Ifish
|
||||
//
|
||||
// Created by imac on 16/12/7.
|
||||
// Copyright © 2016年 lianxiang. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
@interface IfishHelperUtils : NSObject
|
||||
|
||||
+(NSString*)formatCameraPalybackTime:(NSInteger)minute second:(NSInteger)second;
|
||||
//字符串中提取数字并获取其下标
|
||||
+(NSRange)getIndexFromString:(NSString *)str;
|
||||
|
||||
+(NSString *)getLeveloacalImgName:(NSString *)gradNum;
|
||||
//判断每日任务近日是否要屌用接口 加金币
|
||||
+(BOOL)dignoseIsRequestDataToday:(NSString *)ruleType;
|
||||
//判断是否调用加经验接口
|
||||
+(BOOL)dignoseIsAddExpToday:(NSString *)ruleType;
|
||||
|
||||
//更新任务列表数据
|
||||
+(void)updateTask:(NSString *)ruleType;
|
||||
//未完成 任务
|
||||
+(NSInteger)getUnDoneTaskCount;
|
||||
|
||||
|
||||
@end
|
||||
@@ -0,0 +1,170 @@
|
||||
//
|
||||
// IfishHelperUtils.m
|
||||
// Ifish
|
||||
//
|
||||
// Created by imac on 16/12/7.
|
||||
// Copyright © 2016年 lianxiang. All rights reserved.
|
||||
//
|
||||
|
||||
#import "IfishHelperUtils.h"
|
||||
#import "IfishUserDefaultHelper.h"
|
||||
#import "IifishGetGoldTaskHelper.h"
|
||||
#import "IifshGetExpHelper.h"
|
||||
@implementation IfishHelperUtils
|
||||
|
||||
+(NSString*)formatCameraPalybackTime:(NSInteger)minute second:(NSInteger)second{
|
||||
|
||||
NSString *timeLabe=@"";
|
||||
|
||||
if (second<10 &&minute<10) {
|
||||
|
||||
timeLabe=[NSString stringWithFormat:@"0%ld:0%ld",(long)minute,(long)second];
|
||||
|
||||
}else if (second>=10 && minute<10){
|
||||
timeLabe=[NSString stringWithFormat:@"0%ld:%ld",(long)minute,(long)second];
|
||||
|
||||
}else if (second<10 && minute>=10){
|
||||
timeLabe=[NSString stringWithFormat:@"%ld:0%ld",(long)minute,(long)second];
|
||||
|
||||
}else if (second>=10 && minute>=10){
|
||||
timeLabe=[NSString stringWithFormat:@"%ld:%ld",(long)minute,(long)second];
|
||||
|
||||
}
|
||||
return timeLabe;
|
||||
|
||||
}
|
||||
//此方法仅适配 经验值 获取方式 的label
|
||||
+(NSRange)getIndexFromString:(NSString *)str
|
||||
{
|
||||
NSRange range =NSMakeRange(0, 1);
|
||||
NSScanner *scanner = [NSScanner scannerWithString:str];
|
||||
[scanner scanUpToCharactersFromSet:[NSCharacterSet decimalDigitCharacterSet] intoString:nil];
|
||||
int number;
|
||||
[scanner scanInt:&number];
|
||||
//NSLog(@"number : %d", number);
|
||||
NSString *numberstr =[NSString stringWithFormat:@"%d",number];
|
||||
|
||||
if (numberstr.length==0) {
|
||||
return range;
|
||||
}else if (numberstr.length==1){
|
||||
|
||||
|
||||
}else if (numberstr.length>=1&&numberstr.length<10){
|
||||
//经验值1位
|
||||
numberstr = [numberstr substringFromIndex:numberstr.length -1];
|
||||
|
||||
}else
|
||||
{ //经验值2位
|
||||
numberstr = [numberstr substringFromIndex:numberstr.length -2];
|
||||
}
|
||||
|
||||
range = [str rangeOfString:numberstr];
|
||||
|
||||
return range;
|
||||
|
||||
}
|
||||
|
||||
+(NSString *)getLeveloacalImgName:(NSString *)gradNum
|
||||
{
|
||||
NSString *imgName =nil;
|
||||
if ([gradNum intValue]==2) {
|
||||
imgName = @"levelUp_fish";
|
||||
}else if ([gradNum intValue]==3){
|
||||
imgName = @"levelUp_crab";
|
||||
|
||||
}else if ([gradNum intValue]==4){
|
||||
|
||||
imgName = @"levelUp_yashark";
|
||||
}else if ([gradNum intValue]==5){
|
||||
imgName = @"levelUp_totoise";
|
||||
|
||||
}else if ([gradNum intValue]==6){
|
||||
imgName = @"levelUp_xiaodragon";
|
||||
|
||||
}else if ([gradNum intValue]==7){
|
||||
|
||||
imgName = @"levelUp_dragon";
|
||||
}
|
||||
|
||||
return imgName;
|
||||
}
|
||||
|
||||
|
||||
//+(BOOL)diagnoseIsAddValue
|
||||
//{
|
||||
// NSString *now = [dataContorl getYearmonthaddDay];
|
||||
// IfishUserAsset *userAsset = [dataContorl getAllIfishUserAsset];
|
||||
//
|
||||
// NSString *defaultDate = userAsset.lastLoginDate;
|
||||
// if ([defaultDate isKindOfClass:[NSNull class]]||!defaultDate) {
|
||||
// return YES;
|
||||
// }
|
||||
// if ([now isEqualToString:defaultDate]) {
|
||||
// return NO;
|
||||
// }
|
||||
//
|
||||
// return YES;
|
||||
//}
|
||||
|
||||
+(BOOL)dignoseIsRequestDataToday:(NSString *)ruleType
|
||||
{
|
||||
IfishUserAsset *userAsset = [dataContorl getAllIfishUserAsset];
|
||||
NSString *olddate = userAsset.lastLoginDate;
|
||||
NSString *newdate = [IifishGetGoldTaskHelper getEveryDayTaskAddGoldDateWithRuleType:ruleType];
|
||||
|
||||
if (newdate) {
|
||||
if ([olddate isEqualToString:newdate]) {
|
||||
return NO;
|
||||
}
|
||||
}
|
||||
// newdate ==nil 时默认可以调用
|
||||
return YES;
|
||||
}
|
||||
|
||||
+(BOOL)dignoseIsAddExpToday:(NSString *)ruleType
|
||||
{
|
||||
IfishUserAsset *userAsset = [dataContorl getAllIfishUserAsset];
|
||||
NSString *olddate = userAsset.lastLoginDate;
|
||||
NSString *newdate = [IifshGetExpHelper getEveryDayExpDateWithRuleType:ruleType];
|
||||
|
||||
if (newdate) {
|
||||
if ([olddate isEqualToString:newdate]) {
|
||||
return NO;
|
||||
}
|
||||
}
|
||||
// newdate ==nil 时默认可以调用
|
||||
return YES;
|
||||
|
||||
}
|
||||
|
||||
+(void)updateTask:(NSString *)ruleType
|
||||
{
|
||||
NSArray * arr = [[DataCenter defaultDtacenter] valueForKey:IFISHTASK_ARR];
|
||||
NSMutableArray *newArr =[[NSMutableArray alloc] init];
|
||||
for (IfishTaskModel *mode in arr) {
|
||||
if ([mode.ruleType isEqualToString:ruleType]) {
|
||||
mode.isDone = YES;
|
||||
//mode.addGoldValue = [addvalue integerValue];
|
||||
}
|
||||
[newArr addObject:mode];
|
||||
}
|
||||
|
||||
[[DataCenter defaultDtacenter] setValue:newArr forKey:IFISHTASK_ARR];
|
||||
}
|
||||
|
||||
+(NSInteger)getUnDoneTaskCount{
|
||||
NSArray *task =[[DataCenter defaultDtacenter] valueForKey:IFISHTASK_ARR];
|
||||
NSInteger intervalue =0;
|
||||
NSInteger total =0;
|
||||
if (![task isKindOfClass:[NSNull class]] && task) {
|
||||
total =task.count;
|
||||
for (IfishTaskModel *mode in task) {
|
||||
if (mode.isDone) {
|
||||
intervalue ++;
|
||||
}
|
||||
}
|
||||
}
|
||||
NSInteger unDone = total - intervalue;
|
||||
return unDone;
|
||||
}
|
||||
@end
|
||||
@@ -0,0 +1,29 @@
|
||||
//
|
||||
// IfishUserObsever.h
|
||||
// Ifish
|
||||
//
|
||||
// Created by imac on 17/3/3.
|
||||
// Copyright © 2017年 lianlian. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
@interface IfishUserObsever : NSObject
|
||||
@property (nonatomic,strong) IfishUserAsset *userAsset;
|
||||
+ (IfishUserObsever *)sharedInstance;
|
||||
//-(void)userAssetAddObserver;
|
||||
|
||||
//新增经验接口调用 ruleTyp 新增经验规则
|
||||
-(void)xinZengJingYanZhi:(NSString *)ruleTyp addType:(NSString*)addType;
|
||||
//新增金币接口调用
|
||||
-(void)addGoldWith:(NSString *)ruleType addType:(NSString*)addType;
|
||||
|
||||
//新增金币tost
|
||||
-(void)showAddGoldWith:(NSString *)addValue;
|
||||
// 经验 tost
|
||||
-(void)showAddExp:(NSString *)addValue;
|
||||
|
||||
//升级
|
||||
-(void)showLevelUpWith:(NSString*)newValue;
|
||||
|
||||
@end
|
||||
@@ -0,0 +1,179 @@
|
||||
//
|
||||
// IfishUserObsever.m
|
||||
// Ifish
|
||||
//
|
||||
// Created by imac on 17/3/3.
|
||||
// Copyright © 2017年 lianlian. All rights reserved.
|
||||
//
|
||||
|
||||
#import "IfishUserObsever.h"
|
||||
#import "IfishLevelUpView.h"
|
||||
#import "IfishHelperUtils.h"
|
||||
#import "IfishUserDefaultHelper.h"
|
||||
#import "IfishGoldAndExpTostView.h"
|
||||
#import "IifishGetGoldTaskHelper.h"
|
||||
#import "IifshGetExpHelper.h"
|
||||
@implementation IfishUserObsever
|
||||
+ (IfishUserObsever *)sharedInstance
|
||||
{
|
||||
static IfishUserObsever *sharedInstace = nil;
|
||||
static dispatch_once_t onceToken;
|
||||
dispatch_once(&onceToken, ^{
|
||||
|
||||
sharedInstace = [[self alloc] init];
|
||||
sharedInstace.userAsset = [dataContorl getAllIfishUserAsset];
|
||||
});
|
||||
|
||||
return sharedInstace;
|
||||
}
|
||||
|
||||
//备用KVO
|
||||
-(void)userAssetAddObserver
|
||||
{
|
||||
//self.userAsset = [dataContorl getAllIfishUserAsset];
|
||||
//[self.userAsset addObserver:self forKeyPath:@"gradeNum" options:NSKeyValueObservingOptionNew|NSKeyValueObservingOptionOld context:nil];
|
||||
|
||||
}
|
||||
|
||||
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context{
|
||||
if([keyPath isEqualToString:@"gradeNum"])
|
||||
{
|
||||
//NSString *newValue = change[@"new"];
|
||||
//BOOL isUP = [IfishHelperUtils diagnoseLevelIsUp:newValue];
|
||||
//if (isUP) {
|
||||
// [self addAdViewWith:newValue];
|
||||
//}
|
||||
|
||||
NSLog(@"change**************%@",change);
|
||||
}
|
||||
}
|
||||
|
||||
-(void)showLevelUpWith:(NSString*)newValue{
|
||||
|
||||
IfishLevelUpView *levelUpView =[[IfishLevelUpView alloc] initWithFrame:[UIApplication sharedApplication].keyWindow.bounds];
|
||||
levelUpView.imgName = [IfishHelperUtils getLeveloacalImgName:newValue];
|
||||
|
||||
[[UIApplication sharedApplication].keyWindow addSubview:levelUpView];
|
||||
}
|
||||
|
||||
-(void)dealloc{
|
||||
//[self.userAsset removeObserver:self forKeyPath:@"gradeNum"];
|
||||
}
|
||||
|
||||
//增加经验
|
||||
-(void)xinZengJingYanZhi:(NSString *)ruleTyp addType:(NSString*)addType
|
||||
{
|
||||
// 每日加经验接口是否调用 一次性加经验不做处理直接请求
|
||||
|
||||
if ([addType isEqualToString:IFISHADDEXPTYPE0]) {
|
||||
BOOL iscanAdd = [IfishHelperUtils dignoseIsAddExpToday:ruleTyp];
|
||||
if (!iscanAdd) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
NSString *userId =[dataContorl dataControlGetUserIdInfo];
|
||||
__weak typeof (self) weakself = self;
|
||||
[AFHttpTool addLevelValueWith:userId ruleType:ruleTyp success:^(id response) {
|
||||
NSDictionary *reDic=[NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableContainers error:nil];
|
||||
|
||||
if ([reDic[@"result"] isEqualToString:@"100"]){
|
||||
NSDictionary *data=reDic[@"data"];
|
||||
|
||||
if (![data isKindOfClass:[NSNull class]]&&data) {
|
||||
IfishUserAsset *userAsset = [[IfishUserAsset alloc] initWithDict:data];
|
||||
[dataContorl resetUserAsset:userAsset];
|
||||
//每日加经验 完成后 mark 一下
|
||||
if ([addType isEqualToString:IFISHADDEXPTYPE0]) {
|
||||
[IifshGetExpHelper everyDayExpMark:userAsset.lastLoginDate withRuleType:ruleTyp];
|
||||
}
|
||||
|
||||
NSString *oldGradeNum = [IfishUserDefaultHelper getDefualtGradNum];
|
||||
NSString *gradeNum = userAsset.gradeNum;
|
||||
NSLog(@"oldGradeNum%@",oldGradeNum);
|
||||
|
||||
//加经验 tost
|
||||
NSString *addvalue = [NSString stringWithFormat:@"%ld",(long)userAsset.addValue];
|
||||
//一次性任务 addValue 0 不show
|
||||
if (userAsset.addValue !=0) {
|
||||
[weakself showAddExp:addvalue];
|
||||
}
|
||||
|
||||
if ([oldGradeNum intValue]<[gradeNum intValue]){
|
||||
[weakself showLevelUpWith:gradeNum];
|
||||
[IfishUserDefaultHelper chageLevlelGrad:gradeNum];
|
||||
}
|
||||
}
|
||||
}else{
|
||||
[[UIApplication sharedApplication].keyWindow makeToast:@"添加经验请求出错"];
|
||||
}
|
||||
|
||||
} failure:^(NSError *err) {
|
||||
|
||||
}];
|
||||
}
|
||||
|
||||
-(void)addGoldWith:(NSString *)ruleType addType:(NSString*)addType
|
||||
{
|
||||
//判断是否今天任务 每日任务判断 是否完成 一次性任务不做处理直接请求
|
||||
if ([addType isEqualToString:IFISHADDGOLDTYPE0]) {
|
||||
BOOL iscanAdd = [IfishHelperUtils dignoseIsRequestDataToday:ruleType];
|
||||
if (!iscanAdd) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
NSString *userId =[dataContorl dataControlGetUserIdInfo];
|
||||
__weak typeof (self) weakself = self;
|
||||
[AFHttpTool addGoldValue:userId ruleType:ruleType success:^(id response) {
|
||||
NSDictionary *reDic=[NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableContainers error:nil];
|
||||
|
||||
if ([reDic[@"result"] isEqualToString:@"100"]){
|
||||
NSDictionary *data=reDic[@"data"];
|
||||
if (![data isKindOfClass:[NSNull class]]&&data) {
|
||||
|
||||
IfishUserAsset *userAsset = [[IfishUserAsset alloc] initWithDict:data];
|
||||
[dataContorl resetUserAsset:userAsset];
|
||||
//每日任务 完成后 mark 一下 保证每日一次
|
||||
NSString *date = userAsset.lastLoginDate;
|
||||
if ([addType isEqualToString:IFISHADDGOLDTYPE0]) {
|
||||
[IifishGetGoldTaskHelper everyDayTaskMark:date withRuleType:ruleType];
|
||||
}
|
||||
|
||||
//加金币 tost
|
||||
NSString *addvalue = [NSString stringWithFormat:@"%ld",(long)userAsset.addValue];
|
||||
// addValue 0 不show
|
||||
if (userAsset.addValue !=0) {
|
||||
|
||||
[weakself showAddGoldWith:addvalue];
|
||||
//更新任务列表数据 签到的数据在签到接口中处理
|
||||
[IfishHelperUtils updateTask:ruleType];
|
||||
}
|
||||
}
|
||||
|
||||
}else{
|
||||
[[UIApplication sharedApplication].keyWindow makeToast:@"添加金币请求出错"];
|
||||
}
|
||||
} failure:^(NSError *err) {
|
||||
|
||||
}];
|
||||
}
|
||||
|
||||
|
||||
|
||||
-(void)showAddGoldWith:(NSString *)addValue
|
||||
{
|
||||
IfishGoldAndExpTostView *levelUpView =[[IfishGoldAndExpTostView alloc] initWithFrame:[UIApplication sharedApplication].keyWindow.bounds];
|
||||
[[UIApplication sharedApplication].keyWindow addSubview:levelUpView];
|
||||
[levelUpView showGoldToastView:addValue];
|
||||
|
||||
}
|
||||
|
||||
-(void)showAddExp:(NSString *)addValue
|
||||
{
|
||||
|
||||
IfishGoldAndExpTostView *levelUpView =[[IfishGoldAndExpTostView alloc] initWithFrame:[UIApplication sharedApplication].keyWindow.bounds];
|
||||
[[UIApplication sharedApplication].keyWindow addSubview:levelUpView];
|
||||
[levelUpView showExpTostView:addValue];
|
||||
}
|
||||
@end
|
||||
@@ -0,0 +1,17 @@
|
||||
//
|
||||
// IifishGetGoldTaskHelper.h
|
||||
// Ifish
|
||||
//
|
||||
// Created by imac on 17/3/10.
|
||||
// Copyright © 2017年 lianlian. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
//存储每条任务当日完成时日期 判断做任务接口是否调用 保证每天 每日任务 只请求一次
|
||||
@interface IifishGetGoldTaskHelper : NSObject
|
||||
|
||||
+(void)everyDayTaskMark:(NSString *)date withRuleType:(NSString *)ruleType;
|
||||
+(NSString *)getEveryDayTaskAddGoldDateWithRuleType:(NSString *)ruleType;
|
||||
|
||||
|
||||
@end
|
||||
@@ -0,0 +1,84 @@
|
||||
//
|
||||
// IifishGetGoldTaskHelper.m
|
||||
// Ifish
|
||||
//
|
||||
// Created by imac on 17/3/10.
|
||||
// Copyright © 2017年 lianlian. All rights reserved.
|
||||
//
|
||||
|
||||
#import "IifishGetGoldTaskHelper.h"
|
||||
|
||||
@implementation IifishGetGoldTaskHelper
|
||||
|
||||
+(void)everyDayTaskMark:(NSString *)date withRuleType:(NSString *)ruleType
|
||||
{
|
||||
|
||||
NSUserDefaults*userdefult=[NSUserDefaults standardUserDefaults];
|
||||
//任务 每日签到 everyDaySignin
|
||||
if ([ruleType isEqualToString:EVERYDAYSIGNIN]) {
|
||||
[userdefult setObject:date forKey:EVERYDAYSIGNIN];
|
||||
}else if ([ruleType isEqualToString:READINFORMATION]){
|
||||
// 阅读资讯 readInformation
|
||||
[userdefult setObject:date forKey:READINFORMATION];
|
||||
}else if ([ruleType isEqualToString:OPENGOODSLINK]){
|
||||
// 打开淘宝链接 openGoodsLink
|
||||
[userdefult setObject:date forKey:OPENGOODSLINK];
|
||||
}else if ([ruleType isEqualToString:ROOMLEAVEMSG]){
|
||||
// 看看留言 roomLeaveMsg
|
||||
[userdefult setObject:date forKey:ROOMLEAVEMSG];
|
||||
}else if ([ruleType isEqualToString:IFISHCOMMUNITY]){
|
||||
// 进入社区 ifishCommunity
|
||||
[userdefult setObject:date forKey:IFISHCOMMUNITY];
|
||||
}else if ([ruleType isEqualToString:SHARECAMERAPICTURE]){
|
||||
// 分享截图 shareCameraPicture
|
||||
[userdefult setObject:date forKey:SHARECAMERAPICTURE];
|
||||
}else if ([ruleType isEqualToString:SHARELOOKREPORT]){
|
||||
// 分享看护报告 shareLookReport
|
||||
[userdefult setObject:date forKey:SHARELOOKREPORT];
|
||||
}else if ([ruleType isEqualToString:SHAREIFISHAPP]){
|
||||
// 分享app shareIfishApp
|
||||
[userdefult setObject:date forKey:SHAREIFISHAPP];
|
||||
}
|
||||
//rename openShareCamera 。。都是一次性任务可不做处理
|
||||
|
||||
[userdefult synchronize];
|
||||
}
|
||||
|
||||
+(NSString *)getEveryDayTaskAddGoldDateWithRuleType:(NSString *)ruleType
|
||||
{
|
||||
NSUserDefaults*userdefult=[NSUserDefaults standardUserDefaults];
|
||||
NSString *date = nil;
|
||||
//任务 每日签到 everyDaySignin
|
||||
if ([ruleType isEqualToString:EVERYDAYSIGNIN]) {
|
||||
date = [userdefult objectForKey:EVERYDAYSIGNIN];
|
||||
}else if ([ruleType isEqualToString:READINFORMATION]){
|
||||
// 阅读资讯 readInformation
|
||||
date = [userdefult objectForKey:READINFORMATION];
|
||||
|
||||
}else if ([ruleType isEqualToString:OPENGOODSLINK]){
|
||||
// 打开淘宝链接 openGoodsLink
|
||||
date = [userdefult objectForKey:OPENGOODSLINK];
|
||||
|
||||
}else if ([ruleType isEqualToString:ROOMLEAVEMSG]){
|
||||
// 看看留言 roomLeaveMsg
|
||||
date = [userdefult objectForKey:ROOMLEAVEMSG];
|
||||
}else if ([ruleType isEqualToString:IFISHCOMMUNITY]){
|
||||
// 进入社区 ifishCommunity
|
||||
date = [userdefult objectForKey:IFISHCOMMUNITY];
|
||||
|
||||
}else if ([ruleType isEqualToString:SHARECAMERAPICTURE]){
|
||||
// 分享截图 shareCameraPicture
|
||||
date = [userdefult objectForKey:SHARECAMERAPICTURE];
|
||||
}else if ([ruleType isEqualToString:SHARELOOKREPORT]){
|
||||
// 分享看护报告 shareLookReport
|
||||
date = [userdefult objectForKey:SHARELOOKREPORT];
|
||||
}else if ([ruleType isEqualToString:SHAREIFISHAPP]){
|
||||
// 分享爱鱼奇 shareIfishApp
|
||||
date = [userdefult objectForKey:SHAREIFISHAPP];
|
||||
}
|
||||
[userdefult synchronize];
|
||||
|
||||
return date;
|
||||
}
|
||||
|
||||
@end
|
||||
@@ -0,0 +1,18 @@
|
||||
//
|
||||
// IifshGetExpHelper.h
|
||||
// Ifish
|
||||
//
|
||||
// Created by imac on 17/3/10.
|
||||
// Copyright © 2017年 lianlian. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
//每日经验 增加纪录 用于判断是否 调用每日经验接口
|
||||
//只 记录 addType = everyDay 的 once 不做处理
|
||||
@interface IifshGetExpHelper : NSObject
|
||||
|
||||
+(void)everyDayExpMark:(NSString *)date withRuleType:(NSString *)ruleType;
|
||||
+(NSString *)getEveryDayExpDateWithRuleType:(NSString *)ruleType;
|
||||
|
||||
|
||||
@end
|
||||
@@ -0,0 +1,34 @@
|
||||
//
|
||||
// IifshGetExpHelper.m
|
||||
// Ifish
|
||||
//
|
||||
// Created by imac on 17/3/10.
|
||||
// Copyright © 2017年 lianlian. All rights reserved.
|
||||
//
|
||||
|
||||
#import "IifshGetExpHelper.h"
|
||||
|
||||
@implementation IifshGetExpHelper
|
||||
|
||||
+(void)everyDayExpMark:(NSString *)date withRuleType:(NSString *)ruleType
|
||||
{
|
||||
NSUserDefaults*userdefult=[NSUserDefaults standardUserDefaults];
|
||||
|
||||
if ([ruleType isEqualToString:IFISHADDEXP_LOGIN]) {
|
||||
[userdefult setObject:date forKey:IFISHADDEXP_LOGIN];;
|
||||
}
|
||||
[userdefult synchronize];
|
||||
|
||||
}
|
||||
|
||||
+(NSString *)getEveryDayExpDateWithRuleType:(NSString *)ruleType
|
||||
{
|
||||
NSUserDefaults*userdefult=[NSUserDefaults standardUserDefaults];
|
||||
NSString *date = nil;
|
||||
if ([ruleType isEqualToString:IFISHADDEXP_LOGIN]) {
|
||||
[userdefult setObject:date forKey:IFISHADDEXP_LOGIN];;
|
||||
}
|
||||
[userdefult synchronize];
|
||||
return date;
|
||||
}
|
||||
@end
|
||||
@@ -0,0 +1,59 @@
|
||||
//
|
||||
// dataContorl.h
|
||||
// Ifish
|
||||
//
|
||||
// Created by imac on 15/10/13.
|
||||
// Copyright © 2015年 imac. All rights reserved.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
#import "IfishUserAsset.h"
|
||||
@interface dataContorl : NSObject
|
||||
+(NSString *) dataToHexString:(NSData*)data;
|
||||
+(NSData *) stringToHexData:(NSString*)string;
|
||||
+(NSString *)hexStringFromString:(NSString *)string;
|
||||
+(NSString *)ToHex:(long long int)tmpid;
|
||||
+(UInt64)hexToTen:(NSString*)str;
|
||||
+ (NSString *)stringFromHexString:(NSString *)hexString;
|
||||
+(NSString*)dateStringToHexString:(NSString *)dateString;
|
||||
+(NSString*)tpIntStringToFourHex:(int)intString;
|
||||
+(NSString*)hexStringToDateString:(NSString*)hexString;
|
||||
+(NSString *)translation:(NSString *)arebic;
|
||||
|
||||
//随机生成32位字符
|
||||
+(NSString *)get10LengthString;
|
||||
+(NSString *)getCurrentSyatemTime;
|
||||
|
||||
+ (BOOL)valiMobile:(NSString *)mobile;
|
||||
+ (NSString*)areaCode:(NSString *)phoneNumb;
|
||||
//获取用户ID string类型
|
||||
+(NSString *)dataControlGetUserIdInfo;
|
||||
+(NSArray *)getallCameras;
|
||||
+(void)saveCameraArr:(NSArray*)cameraArr;
|
||||
+(NSArray *)getallDevices;
|
||||
+(UserModel*)getUserInfo;
|
||||
+(void)resetUser:(UserModel *)model;
|
||||
|
||||
//获取金币经验等级 数据
|
||||
//归档弊端修改值麻烦 后边优化使用sql3
|
||||
|
||||
+(IfishUserAsset*)getAllIfishUserAsset;
|
||||
+(void)resetUserAsset:(IfishUserAsset *)model;
|
||||
|
||||
|
||||
+ (UIImage *)handleImage:(UIImage *)originalImage withSize:(CGSize)size;
|
||||
//获取年月日
|
||||
+(NSString *)getYearmonthaddDay;
|
||||
//获取年月日 时分
|
||||
+(NSDate*)formatDateTime:(NSString *)timerstr;
|
||||
//时分
|
||||
+(NSString *)getHmWithDate:(NSDate *)date;
|
||||
//年月日
|
||||
+(NSString *)getYearmonthaddDayWithDate:(NSDate *)date;
|
||||
//月日
|
||||
+(NSString *)getMonthAndDay:(NSDate *)date;
|
||||
|
||||
|
||||
+(BOOL)isIncludeSpecialCharact:(NSString *)str;
|
||||
|
||||
@end
|
||||
@@ -0,0 +1,590 @@
|
||||
//
|
||||
// dataContorl.m
|
||||
// Ifish
|
||||
//
|
||||
// Created by imac on 15/10/13.
|
||||
// Copyright © 2015年 imac. All rights reserved.
|
||||
//
|
||||
|
||||
#import "dataContorl.h"
|
||||
|
||||
|
||||
@implementation dataContorl
|
||||
// NSdata进制转十六进制字符串
|
||||
+(NSString *) dataToHexString:(NSData*)data
|
||||
{
|
||||
NSUInteger len = [data length];
|
||||
char * chars = (char *)[data bytes];
|
||||
NSMutableString * hexString = [[NSMutableString alloc] init];
|
||||
|
||||
for(NSUInteger i = 0; i < len; i++ )
|
||||
[hexString appendString:[NSString stringWithFormat:@"%0.2hhx", chars[i]]];
|
||||
return hexString;
|
||||
}
|
||||
|
||||
// 十六进制字符串转NSdata进制
|
||||
+(NSData *) stringToHexData:(NSString*)string{
|
||||
|
||||
NSInteger len = [string length] / 2; // Target length
|
||||
unsigned char *buf = malloc(len);
|
||||
unsigned char *whole_byte = buf;
|
||||
char byte_chars[3] = {'\0','\0','\0'};
|
||||
|
||||
int i;
|
||||
for (i=0; i < [string length] / 2; i++) {
|
||||
byte_chars[0] = [string characterAtIndex:i*2];
|
||||
byte_chars[1] = [string characterAtIndex:i*2+1];
|
||||
*whole_byte = strtol(byte_chars, NULL, 16);
|
||||
whole_byte++;
|
||||
}
|
||||
NSData *data = [NSData dataWithBytes:buf length:len];
|
||||
free( buf );
|
||||
return data;
|
||||
|
||||
}
|
||||
// 普通字符串转为十六进制
|
||||
+(NSString *)hexStringFromString:(NSString *)string{
|
||||
NSData *myD = [string dataUsingEncoding:NSUTF8StringEncoding];
|
||||
Byte *bytes = (Byte *)[myD bytes];
|
||||
//下面是Byte 转换为16进制。
|
||||
NSString *hexStr=@"";
|
||||
for(int i=0;i<[myD length];i++)
|
||||
{
|
||||
NSString *newHexStr = [NSString stringWithFormat:@"%x",bytes[i]&0xff];///16进制数
|
||||
|
||||
if([newHexStr length]==1)
|
||||
|
||||
hexStr = [NSString stringWithFormat:@"%@0%@",hexStr,newHexStr];
|
||||
|
||||
else
|
||||
|
||||
hexStr = [NSString stringWithFormat:@"%@%@",hexStr,newHexStr];
|
||||
}
|
||||
return hexStr;
|
||||
}
|
||||
|
||||
// 十 转十六
|
||||
+(NSString *)ToHex:(long long int)tmpid
|
||||
{
|
||||
NSString *nLetterValue;
|
||||
NSString *str =@"";
|
||||
long long int ttmpig;
|
||||
for (int i = 0; i<9; i++) {
|
||||
ttmpig=tmpid%16;
|
||||
tmpid=tmpid/16;
|
||||
switch (ttmpig)
|
||||
{
|
||||
case 10:
|
||||
nLetterValue =@"A";break;
|
||||
case 11:
|
||||
nLetterValue =@"B";break;
|
||||
case 12:
|
||||
nLetterValue =@"C";break;
|
||||
case 13:
|
||||
nLetterValue =@"D";break;
|
||||
case 14:
|
||||
nLetterValue =@"E";break;
|
||||
case 15:
|
||||
nLetterValue =@"F";break;
|
||||
default:nLetterValue=[[NSString alloc]initWithFormat:@"%lli",ttmpig];
|
||||
|
||||
}
|
||||
str = [nLetterValue stringByAppendingString:str];
|
||||
if (tmpid == 0) {
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
return str;
|
||||
}
|
||||
// 十六转十
|
||||
+(UInt64)hexToTen:(NSString*)str{
|
||||
// unsigned long long result = 0;
|
||||
//
|
||||
// NSScanner *scanner = [NSScanner scannerWithString:data];
|
||||
//
|
||||
// [scanner scanHexLongLong:&result];
|
||||
// return scanner;
|
||||
UInt64 mac1 = 0;
|
||||
if (str) {
|
||||
|
||||
mac1 = strtoul([str UTF8String], 0, 16);
|
||||
|
||||
}
|
||||
return mac1;
|
||||
|
||||
}
|
||||
// 十六转串
|
||||
+ (NSString *)stringFromHexString:(NSString *)hexString { //
|
||||
char *myBuffer = (char *)malloc((int)[hexString length] / 2 + 1);
|
||||
bzero(myBuffer, [hexString length] / 2 + 1);
|
||||
for (int i = 0; i < [hexString length] - 1; i += 2) {
|
||||
unsigned int anInt;
|
||||
NSString * hexCharStr = [hexString substringWithRange:NSMakeRange(i, 2)];
|
||||
NSScanner * scanner = [[NSScanner alloc] initWithString:hexCharStr];
|
||||
[scanner scanHexInt:&anInt];
|
||||
myBuffer[i / 2] = (char)anInt;
|
||||
}
|
||||
NSString *unicodeString = [NSString stringWithCString:myBuffer encoding:4];
|
||||
NSLog(@"------字符串=======%@",unicodeString);
|
||||
return unicodeString;
|
||||
}
|
||||
//时间转四位十六进制 如01:15——> 010f
|
||||
+(NSString*)dateStringToHexString:(NSString *)dateString{
|
||||
|
||||
//NSString*hour=[dateString substringWithRange:NSMakeRange(0, 2)];// 0~23 小时
|
||||
NSRange range=[dateString rangeOfString:@":"];
|
||||
NSString*hour=[dateString substringToIndex:range.location];
|
||||
// NSString*minite=[dateString substringWithRange:NSMakeRange(3, 2)];// 0~59 分钟
|
||||
NSString*minite=[dateString substringFromIndex:range.location+1];
|
||||
NSString*hexHour=@"";//
|
||||
NSString*hexMinite=@"";
|
||||
// if ([hour hasPrefix:@"0"]) {
|
||||
// hexHour=[NSString stringWithFormat:@"0%@",[[NSString alloc] initWithFormat:@"%1x",[hour intValue]]];
|
||||
// // NSLog(@"hex0带 %@",hexHour);
|
||||
//
|
||||
//
|
||||
// }else{
|
||||
hexHour=[NSString stringWithFormat:@"%@",[[NSString alloc] initWithFormat:@"%1x",[hour intValue]]];
|
||||
// NSLog(@"hex %@",hexHour);
|
||||
// }
|
||||
|
||||
if ([minite hasPrefix:@"0"]) {
|
||||
hexMinite=[NSString stringWithFormat:@"0%@",[[NSString alloc] initWithFormat:@"%1x",[minite intValue]]];
|
||||
}else{
|
||||
hexMinite=[NSString stringWithFormat:@"%@",[[NSString alloc] initWithFormat:@"%1x",[minite intValue]]];;
|
||||
}
|
||||
|
||||
|
||||
if (hexHour.length==1) {
|
||||
hexHour=[NSString stringWithFormat:@"0%@",hexHour];
|
||||
}
|
||||
if (hexMinite.length==1) {
|
||||
hexMinite=[NSString stringWithFormat:@"0%@",hexMinite];
|
||||
}
|
||||
|
||||
NSString*fomatString=[NSString stringWithFormat:@"%@%@",hexHour,hexMinite];
|
||||
|
||||
|
||||
return fomatString;
|
||||
|
||||
}
|
||||
//1-40C 十进制温度数据 转四位 十六进制数据串
|
||||
// 1C 1*10 / 10C 10*10 /20C 20*10/ 26C 26*10
|
||||
// 10-000a 100-0064 200-00C8 260-0104
|
||||
|
||||
+(NSString*)tpIntStringToFourHex:(int)intString{
|
||||
NSString*siWeihexString=@"";
|
||||
if (intString==10) {
|
||||
|
||||
NSString*hexString=[NSString stringWithFormat:@"%@",[[NSString alloc]initWithFormat:@"%1x",intString]];
|
||||
siWeihexString=[NSString stringWithFormat:@"000%@",hexString];
|
||||
|
||||
}else if (intString>10&&intString<260)
|
||||
{
|
||||
NSString*hexString=[NSString stringWithFormat:@"%@",[[NSString alloc]initWithFormat:@"%1x",intString]];
|
||||
siWeihexString=[NSString stringWithFormat:@"00%@",hexString];
|
||||
|
||||
|
||||
}else if (intString>=260)
|
||||
{
|
||||
NSString*hexString=[NSString stringWithFormat:@"%@",[[NSString alloc]initWithFormat:@"%1x",intString]];
|
||||
siWeihexString=[NSString stringWithFormat:@"0%@",hexString];
|
||||
|
||||
}
|
||||
return siWeihexString;
|
||||
}
|
||||
//四位 十六进制转时间 如 010f——> 01:15
|
||||
+(NSString*)hexStringToDateString:(NSString*)hexString{
|
||||
|
||||
NSString*shiString=@"";
|
||||
NSString*fenString=@"";
|
||||
UInt64 shi =strtoul([[hexString substringWithRange:NSMakeRange(0, 2)] UTF8String], 0, 16);
|
||||
|
||||
shiString=[NSString stringWithFormat:@"%llu",shi];
|
||||
// NSLog(@"str2 %@",shiString);
|
||||
|
||||
|
||||
UInt64 fen = strtoul([[hexString substringWithRange:NSMakeRange(2, 2)] UTF8String], 0, 16);
|
||||
if (fen<=9) {
|
||||
fenString=[NSString stringWithFormat:@"0%llu",fen
|
||||
];
|
||||
// NSLog(@"str3 %@",fenString);
|
||||
}else{
|
||||
fenString=[NSString stringWithFormat:@"%llu",fen
|
||||
];
|
||||
// NSLog(@"str4 %@",fenString);
|
||||
}
|
||||
|
||||
NSString*formatString=[NSString stringWithFormat:@"%@:%@",shiString,fenString];
|
||||
|
||||
//NSLog(@"str5 %@",formatString);
|
||||
|
||||
return formatString;
|
||||
|
||||
}
|
||||
//阿拉伯数字转化为汉语数字
|
||||
+(NSString *)translation:(NSString *)arebic
|
||||
|
||||
{ NSString *str = arebic;
|
||||
NSArray *arabic_numerals = @[@"1",@"2",@"3",@"4",@"5",@"6",@"7",@"8",@"9",@"0"];
|
||||
NSArray *chinese_numerals = @[@"一",@"二",@"三",@"四",@"五",@"六",@"七",@"八",@"九",@"零"];
|
||||
NSArray *digits = @[@"个",@"十",@"百",@"千",@"万",@"十",@"百",@"千",@"亿",@"十",@"百",@"千",@"兆"];
|
||||
NSDictionary *dictionary = [NSDictionary dictionaryWithObjects:chinese_numerals forKeys:arabic_numerals];
|
||||
|
||||
NSMutableArray *sums = [NSMutableArray array];
|
||||
for (int i = 0; i < str.length; i ++) {
|
||||
NSString *substr = [str substringWithRange:NSMakeRange(i, 1)];
|
||||
NSString *a = [dictionary objectForKey:substr];
|
||||
NSString *b = digits[str.length -i-1];
|
||||
NSString *sum = [a stringByAppendingString:b];
|
||||
if ([a isEqualToString:chinese_numerals[9]])
|
||||
{
|
||||
if([b isEqualToString:digits[4]] || [b isEqualToString:digits[8]])
|
||||
{
|
||||
sum = b;
|
||||
if ([[sums lastObject] isEqualToString:chinese_numerals[9]])
|
||||
{
|
||||
[sums removeLastObject];
|
||||
}
|
||||
}else
|
||||
{
|
||||
sum = chinese_numerals[9];
|
||||
}
|
||||
|
||||
if ([[sums lastObject] isEqualToString:sum])
|
||||
{
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
[sums addObject:sum];
|
||||
}
|
||||
|
||||
NSString *sumStr = [sums componentsJoinedByString:@""];
|
||||
NSString *chinese = [sumStr substringToIndex:sumStr.length-1];
|
||||
NSLog(@"%@",str);
|
||||
NSLog(@"%@",chinese);
|
||||
return chinese;
|
||||
}
|
||||
|
||||
|
||||
+(NSString *)get10LengthString
|
||||
{
|
||||
NSString *string = [[NSString alloc]init];
|
||||
for (int i = 0; i < 10; i++) {
|
||||
int number = arc4random() % 36;
|
||||
if (number < 10) {
|
||||
int figure = arc4random() % 10;
|
||||
NSString *tempString = [NSString stringWithFormat:@"%d", figure];
|
||||
string = [string stringByAppendingString:tempString];
|
||||
}else {
|
||||
int figure = (arc4random() % 26) + 97;
|
||||
char character = figure;
|
||||
NSString *tempString = [NSString stringWithFormat:@"%c", character];
|
||||
string = [string stringByAppendingString:tempString];
|
||||
}
|
||||
}
|
||||
|
||||
return string;
|
||||
|
||||
|
||||
}
|
||||
//获取时间戳 当前时间long型的毫秒数除以1000
|
||||
|
||||
+(NSString *)getCurrentSyatemTime
|
||||
{
|
||||
//获取系统当前的时间戳 秒级
|
||||
|
||||
NSDate* dat = [NSDate dateWithTimeIntervalSinceNow:0];
|
||||
|
||||
NSTimeInterval time=[dat timeIntervalSince1970];
|
||||
long longTime = (long)time;
|
||||
NSString *timeString = [NSString stringWithFormat:@"%ld",longTime];
|
||||
return timeString;
|
||||
|
||||
|
||||
}
|
||||
|
||||
+(NSString *)getYearmonthaddDay{
|
||||
|
||||
NSDate * date=[NSDate date];
|
||||
NSDateFormatter *dateFormatter=[[NSDateFormatter alloc]init];
|
||||
dateFormatter.dateFormat=@"yyyy-MM-dd";
|
||||
NSString *foamtDate = [dateFormatter stringFromDate:date];
|
||||
return foamtDate;
|
||||
}
|
||||
|
||||
+(NSString *)getMonthAndDay:(NSDate *)date{
|
||||
|
||||
NSDate * day=[NSDate date];
|
||||
NSDateFormatter *dateFormatter=[[NSDateFormatter alloc]init];
|
||||
dateFormatter.dateFormat=@"MM-dd";
|
||||
NSString *foamtDate = [dateFormatter stringFromDate:day];
|
||||
return foamtDate;
|
||||
}
|
||||
|
||||
+(NSString *)getHmWithDate:(NSDate *)date{
|
||||
|
||||
NSDateFormatter *dateFormatter=[[NSDateFormatter alloc]init];
|
||||
dateFormatter.dateFormat=@"HH:mm";
|
||||
NSString *foamtDate = [dateFormatter stringFromDate:date];
|
||||
return foamtDate;
|
||||
|
||||
}
|
||||
|
||||
+(NSString *)getYearmonthaddDayWithDate:(NSDate *)date{
|
||||
|
||||
NSDateFormatter *dateFormatter=[[NSDateFormatter alloc]init];
|
||||
dateFormatter.dateFormat=@"yyyy-MM-dd";
|
||||
NSString *foamtDate = [dateFormatter stringFromDate:date];
|
||||
return foamtDate;
|
||||
|
||||
}
|
||||
//判断手机号码格式是否正确
|
||||
|
||||
+ (BOOL)valiMobile:(NSString *)mobile
|
||||
|
||||
{
|
||||
|
||||
NSString * MOBILE = @"^[1][3-8]\\d{9}$|^([6|9])\\d{7}$|^[0][9]\\d{8}$|^[6]([8|6])\\d{5}$";
|
||||
NSPredicate*regextestmobile=[NSPredicate predicateWithFormat:@"SELF MATCHES %@",MOBILE];
|
||||
BOOL isMacth=[regextestmobile evaluateWithObject:mobile];
|
||||
/* 正则表达式:^[1][3-8]\\d{9}$|^([6|9])\\d{7}$|^[0][9]\\d{8}$|^[6]([8|6])\\d{5}$
|
||||
|
||||
规则说明:
|
||||
|
||||
中国大陆:开头1 3-8号段,后边跟9位数字
|
||||
|
||||
台湾:09开头后面跟8位数字
|
||||
|
||||
香港:9或6开头后面跟7位数字
|
||||
|
||||
澳门:66或68开头后面跟5位数字
|
||||
|
||||
注意:以上表达式只验证港澳台及大陆手机号码,不包含座机小灵通及区号等验证
|
||||
|
||||
*/
|
||||
if (isMacth) {
|
||||
|
||||
return YES;
|
||||
}else{
|
||||
|
||||
return NO;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+ (NSString*)areaCode:(NSString *)phoneNumb{
|
||||
|
||||
NSString *zone= nil;
|
||||
//中国大陆:开头1 3-8号段
|
||||
NSString *prenumb = [phoneNumb substringWithRange:NSMakeRange(0, 2)];
|
||||
NSString * MOBILE1 = @"^[1][3-8]$";
|
||||
NSPredicate*regextestmobile1=[NSPredicate predicateWithFormat:@"SELF MATCHES %@",MOBILE1];
|
||||
|
||||
BOOL isMacth1=[regextestmobile1 evaluateWithObject:prenumb];
|
||||
|
||||
// 台湾:09开头后面跟8位数字
|
||||
NSString * MOBILE2 = @"^[0][9]$";
|
||||
NSPredicate*regextestmobile2=[NSPredicate predicateWithFormat:@"SELF MATCHES %@",MOBILE2];
|
||||
|
||||
BOOL isMacth2=[regextestmobile2 evaluateWithObject:prenumb];
|
||||
//香港
|
||||
NSString *prenumb1 = [phoneNumb substringWithRange:NSMakeRange(0, 1)];
|
||||
NSString * MOBILE3 = @"^([5|6|9])$";
|
||||
NSPredicate*regextestmobile3=[NSPredicate predicateWithFormat:@"SELF MATCHES %@",MOBILE3];
|
||||
BOOL isMacth3=[regextestmobile3 evaluateWithObject:prenumb1];
|
||||
|
||||
//澳门
|
||||
|
||||
NSString * MOBILE4 = @"^[6]([8|6])$";
|
||||
NSPredicate*regextestmobile4=[NSPredicate predicateWithFormat:@"SELF MATCHES %@",MOBILE4];
|
||||
BOOL isMacth4=[regextestmobile4 evaluateWithObject:prenumb];
|
||||
|
||||
|
||||
|
||||
if (isMacth1) {
|
||||
//大陆
|
||||
zone = @"86";
|
||||
|
||||
}else if (isMacth2)
|
||||
{
|
||||
//台湾
|
||||
zone = @"886";
|
||||
|
||||
}else if (isMacth3){
|
||||
//香港
|
||||
zone = @"852";
|
||||
|
||||
}else if (isMacth4){
|
||||
//澳门
|
||||
zone = @"853";
|
||||
}
|
||||
|
||||
return zone;
|
||||
}
|
||||
|
||||
+(NSString *)dataControlGetUserIdInfo
|
||||
{
|
||||
|
||||
UserModel*model=[[DataCenter defaultDtacenter]valueForKey:@"UserLogIn"];
|
||||
NSString *userId =[NSString stringWithFormat:@"%@",model.userId];
|
||||
|
||||
return userId;
|
||||
|
||||
}
|
||||
|
||||
+(UserModel*)getUserInfo
|
||||
{
|
||||
UserModel*model=[[DataCenter defaultDtacenter]valueForKey:@"UserLogIn"];
|
||||
return model;
|
||||
|
||||
}
|
||||
|
||||
//修改
|
||||
+(void)resetUser:(UserModel *)model
|
||||
{
|
||||
|
||||
[[DataCenter defaultDtacenter] setValue:model forKey:@"UserLogIn"];
|
||||
|
||||
}
|
||||
+(NSArray *)getallCameras{
|
||||
|
||||
NSArray*cameraArr =[[DataCenter defaultDtacenter]valueForKey:@"cameraArr"];
|
||||
|
||||
return cameraArr;
|
||||
|
||||
}
|
||||
|
||||
+(void)saveCameraArr:(NSArray*)cameraArr{
|
||||
if (!cameraArr) {
|
||||
cameraArr = [[NSArray alloc] init];
|
||||
}
|
||||
[[DataCenter defaultDtacenter] setValue:cameraArr forKey:@"cameraArr"];
|
||||
|
||||
}
|
||||
|
||||
+(NSArray *)getallDevices
|
||||
{
|
||||
NSArray*deviceArr =[[DataCenter defaultDtacenter]valueForKey:@"deviceInfo"];
|
||||
return deviceArr;
|
||||
}
|
||||
|
||||
|
||||
+ (UIImage *)handleImage:(UIImage *)originalImage withSize:(CGSize)size
|
||||
{
|
||||
CGSize originalsize = [originalImage size];
|
||||
NSLog(@"改变前图片的宽度为%f,图片的高度为%f",originalsize.width,originalsize.height);
|
||||
|
||||
//原图长宽均小于标准长宽的,不作处理返回原图
|
||||
if (originalsize.width<size.width && originalsize.height<size.height)
|
||||
{
|
||||
return originalImage;
|
||||
}
|
||||
|
||||
//原图长宽均大于标准长宽的,按比例缩小至最大适应值
|
||||
else if(originalsize.width>size.width && originalsize.height>size.height)
|
||||
{
|
||||
CGFloat rate = 1.0;
|
||||
CGFloat widthRate = originalsize.width/size.width;
|
||||
CGFloat heightRate = originalsize.height/size.height;
|
||||
|
||||
rate = widthRate>heightRate?heightRate:widthRate;
|
||||
|
||||
CGImageRef imageRef = nil;
|
||||
|
||||
if (heightRate>widthRate)
|
||||
{
|
||||
imageRef = CGImageCreateWithImageInRect([originalImage CGImage], CGRectMake(0, originalsize.height/2-size.height*rate/2, originalsize.width, size.height*rate));//获取图片整体部分
|
||||
}
|
||||
else
|
||||
{
|
||||
imageRef = CGImageCreateWithImageInRect([originalImage CGImage], CGRectMake(originalsize.width/2-size.width*rate/2, 0, size.width*rate, originalsize.height));//获取图片整体部分
|
||||
}
|
||||
UIGraphicsBeginImageContext(size);//指定要绘画图片的大小
|
||||
CGContextRef con = UIGraphicsGetCurrentContext();
|
||||
|
||||
CGContextTranslateCTM(con, 0.0, size.height);
|
||||
CGContextScaleCTM(con, 1.0, -1.0);
|
||||
|
||||
CGContextDrawImage(con, CGRectMake(0, 0, size.width, size.height), imageRef);
|
||||
|
||||
UIImage *standardImage = UIGraphicsGetImageFromCurrentImageContext();
|
||||
NSLog(@"改变后图片的宽度为%f,图片的高度为%f",[standardImage size].width,[standardImage size].height);
|
||||
|
||||
UIGraphicsEndImageContext();
|
||||
CGImageRelease(imageRef);
|
||||
|
||||
return standardImage;
|
||||
}
|
||||
|
||||
//原图长宽有一项大于标准长宽的,对大于标准的那一项进行裁剪,另一项保持不变
|
||||
else if(originalsize.height>size.height || originalsize.width>size.width)
|
||||
{
|
||||
CGImageRef imageRef = nil;
|
||||
|
||||
if(originalsize.height>size.height)
|
||||
{
|
||||
imageRef = CGImageCreateWithImageInRect([originalImage CGImage], CGRectMake(0, originalsize.height/2-size.height/2, originalsize.width, size.height));//获取图片整体部分
|
||||
}
|
||||
else if (originalsize.width>size.width)
|
||||
{
|
||||
imageRef = CGImageCreateWithImageInRect([originalImage CGImage], CGRectMake(originalsize.width/2-size.width/2, 0, size.width, originalsize.height));//获取图片整体部分
|
||||
}
|
||||
|
||||
UIGraphicsBeginImageContext(size);//指定要绘画图片的大小
|
||||
CGContextRef con = UIGraphicsGetCurrentContext();
|
||||
|
||||
CGContextTranslateCTM(con, 0.0, size.height);
|
||||
CGContextScaleCTM(con, 1.0, -1.0);
|
||||
|
||||
CGContextDrawImage(con, CGRectMake(0, 0, size.width, size.height), imageRef);
|
||||
|
||||
UIImage *standardImage = UIGraphicsGetImageFromCurrentImageContext();
|
||||
NSLog(@"改变后图片的宽度为%f,图片的高度为%f",[standardImage size].width,[standardImage size].height);
|
||||
|
||||
UIGraphicsEndImageContext();
|
||||
CGImageRelease(imageRef);
|
||||
|
||||
return standardImage;
|
||||
}
|
||||
|
||||
//原图为标准长宽的,不做处理
|
||||
else
|
||||
{
|
||||
return originalImage;
|
||||
}
|
||||
}
|
||||
|
||||
+(IfishUserAsset*)getAllIfishUserAsset{
|
||||
|
||||
IfishUserAsset*model=[[DataCenter defaultDtacenter]valueForKey:@"IfishUserAsset"];
|
||||
return model;
|
||||
}
|
||||
|
||||
+(void)resetUserAsset:(IfishUserAsset *)model
|
||||
{
|
||||
[[DataCenter defaultDtacenter] setValue:model forKey:@"IfishUserAsset"];
|
||||
|
||||
}
|
||||
|
||||
+(NSDate*)formatDateTime:(NSString *)timerstr
|
||||
{
|
||||
|
||||
NSString *string = timerstr;
|
||||
NSTimeInterval second = string.longLongValue / 1000.0;
|
||||
NSDate *date = [NSDate dateWithTimeIntervalSince1970:second];
|
||||
return date;
|
||||
}
|
||||
|
||||
//判断是否包含特殊字符串 即非数字字母下划线
|
||||
+(BOOL)isIncludeSpecialCharact:(NSString *)str {
|
||||
|
||||
NSString *regex =@"(^[a-zA-Z0-9_\u4e00-\u9fa5]+$)";
|
||||
NSPredicate * pred = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex];
|
||||
BOOL isRight = [pred evaluateWithObject:str];
|
||||
return isRight;
|
||||
}
|
||||
|
||||
@end
|
||||
Reference in New Issue
Block a user