Files
ifish/Ifish/controllers/IfishTabControllers/探索/lookafterWorkbech/ShopEditViewController.m
T
2019-03-12 09:26:46 +08:00

1074 lines
35 KiB
Objective-C

//
// ShopEditViewController.m
// Ifish
//
// Created by imac on 16/8/24.
// Copyright © 2016年 lianxiang. All rights reserved.
//
#import "ShopEditViewController.h"
#import "CertifyListViewFirstCell.h"
#import "CertifyListSecondCell.h"
#import "shopEditViewImgCell.h"
#define CELLMODYF_LOACTON 4440440
#define CLLSHENGSHIQU_LOACTON 2220220
#define CLLDETALADDRESS 3330330
#define CELLPHONE 1110110
#define CELLADDIMG 5550550
#define CELLTIJIAOBTN 6660660
#import "ChinaPlckerView.h"
#import "CertifyListFourthCell.h"
//#import <BaiduMapAPI_Location/BMKLocationService.h>
//#import <BMKLocationKit/BMKLocationComponent.h>
//#import <BaiduMapAPI_Search/BMKGeocodeSearch.h>
//#import <BaiduMapAPI_Utils/BMKUtilsComponent.h>
//#import <BaiduMapAPI_Search/BMKGeocodeSearchResult.h>
#import <CoreLocation/CoreLocation.h>
#import "UIImageView+WebCache.h"
#import "ShopCertificationHtmlController.h"
@interface ShopEditViewController ()<UITableViewDelegate,
UITableViewDataSource,
UITextFieldDelegate,
UIImagePickerControllerDelegate,
UIActionSheetDelegate,
UINavigationControllerDelegate,
ChinaPlckerViewDelegate,
CLLocationManagerDelegate,
// BMKLocationServiceDelegate,
// BMKGeoCodeSearchDelegate,
UIGestureRecognizerDelegate>
{
// BMKGeoCodeSearch*_geocodesearch;
}
@property(nonatomic,strong)UITableView *tableView;
@property(nonatomic,strong) NSArray *titles;
@property(nonatomic,strong) NSArray *placeHolders;
@property(nonatomic,strong) NSString *address;
//@property(nonatomic)BMKLocationService*locService;
@property (nonatomic,strong ) CLLocationManager *locationManager;//定位服务
@property (nonatomic,copy) NSString *currentCity;//城市
@property(nonatomic,strong) NSString *privence;
@property(nonatomic,strong) NSString *city;
@property(nonatomic,strong) NSString *area;
@property(nonatomic,strong)UIActionSheet*photosheet;
@property(nonatomic)BOOL isUpdate;
@end
@implementation ShopEditViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
_isUpdate = NO;
self.title = @"修改资料";
[self creatTab];
self.titles = @[@"电话:",@"地址:",@""];
self.placeHolders = @[@"联系电话",@"省、市、区",@"请填写和营业执照一致的详情地址"];
self.privence = self.shopInfo.shopsProvince;
self.city = self.shopInfo.shopsCity;
self.area = self.shopInfo.shopsArea;
[self getLocation];
}
#pragma mark 定位
-(void)getLocation{
//初始化BMKLocationService
// _locService=[[BMKLocationService alloc]init];
// _locService.delegate=self;
// //启动LocationService
// [_locService startUserLocationService];
// _geocodesearch=[[BMKGeoCodeSearch alloc]init];
// _geocodesearch.delegate=self;
if ([CLLocationManager locationServicesEnabled]) {
_locationManager = [[CLLocationManager alloc]init];
_locationManager.delegate = self;
[_locationManager requestAlwaysAuthorization];
_currentCity = [[NSString alloc]init];
[_locationManager requestWhenInUseAuthorization];
_locationManager.desiredAccuracy = kCLLocationAccuracyBest;
_locationManager.distanceFilter = 5.0;
[_locationManager startUpdatingLocation];
}
}
#pragma mark - 定位失败
-(void)locationManager:(CLLocationManager *)manager didFailWithError:(NSError *)error{
UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"提示" message:@"请在设置中打开定位" preferredStyle:UIAlertControllerStyleAlert];
UIAlertAction *ok = [UIAlertAction actionWithTitle:@"打开定位" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
NSURL *settingURL = [NSURL URLWithString:UIApplicationOpenSettingsURLString];
[[UIApplication sharedApplication]openURL:settingURL];
}];
UIAlertAction *cancel = [UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) {
}];
[alert addAction:cancel];
[alert addAction:ok];
[self presentViewController:alert animated:YES completion:nil];
}
#pragma mark - 定位成功
-(void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray<CLLocation *> *)locations{
[_locationManager stopUpdatingLocation];
CLLocation *currentLocation = [locations lastObject];
CLGeocoder *geoCoder = [[CLGeocoder alloc]init];
//当前的经纬度
NSLog(@"当前的经纬度 %f,%f",currentLocation.coordinate.latitude,currentLocation.coordinate.longitude);
//这里的代码是为了判断didUpdateLocations调用了几次 有可能会出现多次调用 为了避免不必要的麻烦 在这里加个if判断 如果大于1.0就return
NSTimeInterval locationAge = -[currentLocation.timestamp timeIntervalSinceNow];
if (locationAge > 1.0){//如果调用已经一次,不再执行
return;
}
//地理反编码 可以根据坐标(经纬度)确定位置信息(街道 门牌等)
[geoCoder reverseGeocodeLocation:currentLocation completionHandler:^(NSArray<CLPlacemark *> * _Nullable placemarks, NSError * _Nullable error) {
if (placemarks.count >0) {
CLPlacemark *placeMark = placemarks[0];
_currentCity = placeMark.locality;
if (!_currentCity) {
_currentCity = @"无法定位当前城市";
}
//看需求定义一个全局变量来接收赋值
NSLog(@"当前国家 - %@",placeMark.country);//当前国家
NSLog(@"当前城市 - %@",_currentCity);//当前城市
NSLog(@"当前位置 - %@",placeMark.subLocality);//当前位置
NSLog(@"当前街道 - %@",placeMark.thoroughfare);//当前街道
NSLog(@"具体地址 - %@",placeMark.name);//具体地址
NSString *message = [NSString stringWithFormat:@"%@,%@,%@,%@,%@",placeMark.country,_currentCity,placeMark.subLocality,placeMark.thoroughfare,placeMark.name];
self.address =message;
CertifyListSecondCell *cell = [self.view viewWithTag:CELLMODYF_LOACTON];
if (cell) {
cell.loactionLabel.text= self.address;
}
static dispatch_once_t disOnce;
dispatch_once(&disOnce, ^ {
[self.tableView reloadData];
});
// UIAlertView *alert = [[UIAlertView alloc]initWithTitle:nil message:message delegate:self cancelButtonTitle:nil otherButtonTitles:@"好", nil];
// [alert show];
}else if (error == nil && placemarks.count){
NSLog(@"NO location and error return");
}else if (error){
NSLog(@"loction error:%@",error);
}
}];
}
//处理方向变更信息
//- (void)didUpdateUserHeading:(BMKUserLocation *)userLocation
//{
// //NSLog(@"heading is %@",userLocation.heading);
//}
//处理位置坐标更新
//- (void)didUpdateBMKUserLocation:(BMKUserLocation *)userLocation
//{
//NSLog(@"didUpdateUserLocation lat %f,long %f",userLocation.location.coordinate.latitude,userLocation.location.coordinate.longitude);
// [self reverseGeoCodeWithlatitude:userLocation.location.coordinate.latitude addlongitude:userLocation.location.coordinate.longitude];
// static dispatch_once_t disOnce;
// dispatch_once(&disOnce, ^ {
//
// [self reverseGeoCodeWithlatitude:userLocation.location.coordinate.latitude addlongitude:userLocation.location.coordinate.longitude];
// });
//}
/**
* 地理反编码
*/
//-(void)reverseGeoCodeWithlatitude:(CLLocationDegrees)latitude addlongitude:(CLLocationDegrees)longitude{
// CLLocationCoordinate2D pt=(CLLocationCoordinate2D){latitude,longitude};
// BMKReverseGeoCodeOption *reverseGeocodeSearchOption = [[BMKReverseGeoCodeOption alloc]init];
// reverseGeocodeSearchOption.reverseGeoPoint=pt;
// BOOL flag = [_geocodesearch reverseGeoCode:reverseGeocodeSearchOption];
// if(flag)
// {
// NSLog(@"反geo检索发送成功");
// }
// else
// {
// NSLog(@"反geo检索发送失败");
// }
//
//}
-(void)dealloc{
// if (_geocodesearch!=nil) {
// _geocodesearch=nil;
// }
}
#pragma mark BMKGeoCodeSearchDelegate
//-(void)onGetReverseGeoCodeResult:(BMKGeoCodeSearch *)searcher result:(BMKReverseGeoCodeResult *)result errorCode:(BMKSearchErrorCode)error{
// NSLog(@"address%@",result.address);
// self.address = result.address;
//
//
// CertifyListSecondCell *cell = [self.view viewWithTag:CELLMODYF_LOACTON];
//
// if (cell) {
//
// cell.loactionLabel.text= self.address;
//
// }
//
// static dispatch_once_t disOnce;
// dispatch_once(&disOnce, ^ {
//
// [self.tableView reloadData];
//
// });
//
//}
//返回地址信息搜索结果
//- (void)onGetGeoCodeResult:(BMKGeoCodeSearch *)searcher result:(BMKGeoCodeResult *)result errorCode:(BMKSearchErrorCode)error {
//
// if (error == BMK_SEARCH_NO_ERROR) {
// //在此处理正常结果
// }
// else {
// NSLog(@"抱歉,未找到结果");
// }
//}
//
//- (void)onGetGeoCodeResult:(BMKGeoCodeSearch *)searcher result:(BMKGeoCodeResult *)result errorCode:(BMKSearchErrorCode)error{
//
//
//}
-(void)goBackAction{
//IOS 8
if (_isUpdate) {
[self.navigationController popViewControllerAnimated:YES];
return;
}
UIAlertController*ac=[UIAlertController alertControllerWithTitle:@"" message:@"是否放弃当前操作" preferredStyle:UIAlertControllerStyleAlert];
[self presentViewController:ac animated:YES completion:nil];
[ac addAction:[UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:^(UIAlertAction*action){
}]];
[ac addAction:[UIAlertAction actionWithTitle:@"放弃" style:UIAlertActionStyleDefault handler:^(UIAlertAction*action){
[self.navigationController popViewControllerAnimated:YES];
}]];
}
-(void)viewWillAppear:(BOOL)animated{
// _geocodesearch.delegate=self;// 此处记得不用的时候需要置nil,
// _locService.delegate=self;
}
- (void)viewDidAppear:(BOOL)animated
{
[super viewDidAppear:animated];
// 禁用 iOS7 返回手势
if ([self.navigationController respondsToSelector:@selector(interactivePopGestureRecognizer)]) {
self.navigationController.interactivePopGestureRecognizer.enabled = NO;
}
}
-(void)viewWillDisappear:(BOOL)animated{
// _locService.delegate=nil;
[super viewWillDisappear:animated];
// 开启
if ([self.navigationController respondsToSelector:@selector(interactivePopGestureRecognizer)]) {
self.navigationController.interactivePopGestureRecognizer.enabled = YES;
}
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
-(void)creatTab{
self.tableView = [[UITableView alloc] init ];
self.tableView.frame =CGRectMake(0,0, self.view.frame.size.width,self.view.frame.size.height);
self.tableView.delegate = self;
self.tableView.dataSource = self;
self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
self.tableView.showsVerticalScrollIndicator = NO;
self.tableView.backgroundColor = TABLE_BACKGROUD_COLOR;
[self.view addSubview:self.tableView];
UITapGestureRecognizer*tabGestrueRecognizer=[[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tabViewGestrue)];
tabGestrueRecognizer.delegate =self;
[self.tableView addGestureRecognizer:tabGestrueRecognizer];
}
-(BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldReceiveTouch:(UITouch *)touch{
if ([touch.view isKindOfClass:[shopEditViewImgCell class]]) {
return YES;
}
return NO;
}
-(void)tabViewGestrue{
[self hiddenKeybord];
}
-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
return 6;
}
-(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
return 1;
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
if (indexPath.row <= 2) {
CertifyListViewFirstCell *cell = [tableView dequeueReusableCellWithIdentifier:@"CertifyListViewFirstCell"];
if (!cell) {
cell = [[[NSBundle mainBundle]loadNibNamed:@"CertifyListViewFirstCell" owner:self options:nil]lastObject];
}
cell.infoDetailTextfeild.placeholder = self.placeHolders[indexPath.row];
if (indexPath.row ==0) {
cell.infoDetailTextfeild.text = self.shopInfo.shopsPhone;
}else if (indexPath.row ==1){
cell.infoDetailTextfeild.text = [NSString stringWithFormat:@"%@%@%@",self.privence,self.city,self.area];
}else if (indexPath.row ==2){
cell.infoDetailTextfeild.text = self.shopInfo.shopsAddress;
}
cell.titleCatelabel.text = self.titles[indexPath.row];
cell.tag = (indexPath.row + 1)*1110110;
cell.infoDetailTextfeild.layer.masksToBounds = YES;
cell.infoDetailTextfeild.layer.cornerRadius = 5;
cell.infoDetailTextfeild.delegate = self;
UIView*kongbaiView=[[UIView alloc]initWithFrame:CGRectMake(0,0, 10, 10)];
cell.infoDetailTextfeild.leftView=kongbaiView;
cell.infoDetailTextfeild.leftViewMode=UITextFieldViewModeAlways;
if (indexPath.row == 0) {
cell.infoDetailTextfeild.keyboardType= UIKeyboardTypeNumberPad;
}
cell.selectionStyle = UITableViewCellSelectionStyleNone;
return cell;
}else if (indexPath.row == 3){
CertifyListSecondCell *cell = [tableView dequeueReusableCellWithIdentifier:@"CertifyListSecondCell"];
if (!cell) {
cell = [[[NSBundle mainBundle]loadNibNamed:@"CertifyListSecondCell" owner:self options:nil]lastObject];
}
cell.dingWeiBtn.layer.masksToBounds = YES;
cell.dingWeiBtn.layer.cornerRadius = 5;
[cell.dingWeiBtn addTarget:self action:@selector(useLocationArea) forControlEvents:UIControlEventTouchUpInside];
cell.tag= CELLMODYF_LOACTON;
if (self.address) {
cell.loactionLabel.text = self.address;
}
cell.selectionStyle = UITableViewCellSelectionStyleNone;
return cell;
}else if (indexPath.row == 4){
shopEditViewImgCell *cell = [tableView dequeueReusableCellWithIdentifier:@"shopEditViewImgCell"];
if (!cell) {
cell = [[[NSBundle mainBundle]loadNibNamed:@"shopEditViewImgCell" owner:self options:nil]lastObject];
}
cell.tag = CELLADDIMG ;
cell.zhaoPaiImg.userInteractionEnabled = YES;
if (![self.shopInfo.picture4 isEqualToString:@""]) {
cell.addImgBtn.hidden = YES;
cell.shangchuanLabel.hidden = YES;
//获取系统当前的时间戳
NSDate* dat = [NSDate dateWithTimeIntervalSinceNow:0];
NSTimeInterval time=[dat timeIntervalSince1970]*1000;
NSString *timeString = [NSString stringWithFormat:@"%.0f",time];
NSString * imgUrl = [NSString stringWithFormat:@"%@/shops/%@/%@?time=%@",JIEKOUPORTHTTP,self.shopInfo.userId,self.shopInfo.picture4,timeString];
[cell.zhaoPaiImg sd_setImageWithURL:[NSURL URLWithString:imgUrl]];
}else{
cell.addImgBtn.hidden = NO;
cell.shangchuanLabel.hidden = NO;
}
//获取系统当前的时间戳
// NSDate* dat = [NSDate dateWithTimeIntervalSinceNow:0];
// NSTimeInterval time=[dat timeIntervalSince1970]*1000;
// NSString *timeString = [NSString stringWithFormat:@"%.0f",time];
//
// NSString * imgUrl = [NSString stringWithFormat:@"%@/shops/%@/%@?time=%@",JIEKOUPORTHTTP,self.shopInfo.userId,self.shopInfo.picture4,timeString];
//
// [cell.zhaoPaiImg sd_setImageWithURL:[NSURL URLWithString:imgUrl]];
//
// if (cell.zhaoPaiImg.image) {
// cell.addImgBtn.hidden = YES;
// cell.shangchuanLabel.hidden = YES;
//
// }else{
//
// cell.addImgBtn.hidden = NO;
// cell.shangchuanLabel.hidden = NO;
// }
[cell.addImgBtn addTarget:self action:@selector(addImgAction:) forControlEvents:UIControlEventTouchUpInside];
cell.selectionStyle = UITableViewCellSelectionStyleNone;
return cell;
}else if (indexPath.row == 5){
CertifyListFourthCell *cell = [tableView dequeueReusableCellWithIdentifier:@"CertifyListFourthCell"];
if (!cell) {
cell = [[[NSBundle mainBundle]loadNibNamed:@"CertifyListFourthCell" owner:self options:nil]lastObject];
}
cell.tag = CELLTIJIAOBTN;
cell.selectionStyle = UITableViewCellSelectionStyleNone;
cell.xieYiBtn.hidden = YES;
[cell.tiJiaoRenZheng addTarget:self action:@selector(tiJiaoRenZheng:) forControlEvents:UIControlEventTouchUpInside];
[cell.tiJiaoRenZheng setTitle:@"确认修改" forState:UIControlStateNormal];
cell.xieYiButton.hidden = YES;
return cell;
}
return nil;
}
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
CGFloat rowH = kScreenSize.width * 2/3;
if (indexPath.row <=2){
return 60;
}else if (indexPath.row == 3){
return 70;
}else if (indexPath.row == 4){
return rowH;
}else if (indexPath.row == 5){
return 100;
}
return 0;
}
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
CertifyListViewFirstCell *cell =[self.view viewWithTag:CELLPHONE];
[cell.infoDetailTextfeild resignFirstResponder];
if (indexPath.row == 4) {
[self picImgHandler];
}
}
#pragma mark - textField 代理
-(BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
CertifyListViewFirstCell *cell =[self.view viewWithTag:CLLSHENGSHIQU_LOACTON];
if (textField==cell.infoDetailTextfeild) {
[self xuanzeAddress];
return NO;
}else{
return YES;
}
}
#pragma mark- 省市区选择器
-(void)xuanzeAddress{
[ChinaPlckerView customChinaPicker:self superView:self.view];
}
#pragma mark - ChinaPlckerViewDelegate
- (void)chinaPlckerViewDelegateChinaModel:(ChinaArea *)chinaModel{
// CertifyListViewFirstCell *cell =[self.view viewWithTag:CERTYVIEW_CELLTAGROW3];
//
//
// cell.infoDetailTextfeild.text = [NSString stringWithFormat:@"%@%@%@",chinaModel.provinceModel.NAME,chinaModel.cityModel.NAME,chinaModel.areaModel.NAME];
self.privence = chinaModel.provinceModel.NAME;
self.city = chinaModel.cityModel.NAME;
self.area = chinaModel.areaModel.NAME;
[self.tableView reloadData];
}
#pragma mark - 使用定位地址
-(void)useLocationArea{
CertifyListViewFirstCell *cell =[self.view viewWithTag:CLLDETALADDRESS];
CertifyListSecondCell *lactioncell = [self.view viewWithTag:CELLMODYF_LOACTON];
self.shopInfo.shopsAddress= lactioncell.loactionLabel.text;
cell.infoDetailTextfeild.text = lactioncell.loactionLabel.text;
}
#pragma mark - 招牌选择按钮
-(void)addImgAction:(UIButton *)btn{
[self picImgHandler];
}
-(void)picImgHandler{
if (IFISHIOS8) {
UIAlertController*alertCT=[UIAlertController alertControllerWithTitle:@"获取图片" message:nil preferredStyle:UIAlertControllerStyleActionSheet];
// 判断是否支持相机 模拟器无相机
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {
UIAlertAction*action=[UIAlertAction actionWithTitle:@"拍照" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
// 相机
UIImagePickerController *imagePicker=[[UIImagePickerController alloc]init];
imagePicker.delegate=self;
imagePicker.allowsEditing=YES;
imagePicker.sourceType=UIImagePickerControllerSourceTypeCamera;
[self presentViewController:imagePicker animated:YES completion:nil];
}];
[alertCT addAction:action];
}
UIAlertAction*action1=[UIAlertAction actionWithTitle:@"从相册选取" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
//相册
UIImagePickerController*imgpic=[[UIImagePickerController alloc]init];
imgpic.delegate=self;
imgpic.allowsEditing=YES;
imgpic.sourceType=UIImagePickerControllerSourceTypePhotoLibrary;
[self presentViewController:imgpic animated:YES completion:nil];
}];
[alertCT addAction:action1];
UIAlertAction *cancelAction=[UIAlertAction actionWithTitle:@"取消" style:UIAlertActionStyleCancel handler:^(UIAlertAction * _Nonnull action) {
}];
[alertCT addAction:cancelAction];
[self presentViewController:alertCT animated:YES completion:nil];
}else{
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {
self.photosheet=[[UIActionSheet alloc]initWithTitle:@"获取图片" delegate:self cancelButtonTitle:@"取消" destructiveButtonTitle:nil otherButtonTitles:@"拍照",@"从相册选择", nil];
}
[self.photosheet showInView:self.view];
}
}
#pragma mark--UIActionSheetDelegate IOS7
-(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex{
if (actionSheet==self.photosheet) {
if (buttonIndex==actionSheet.cancelButtonIndex) {
return;
}
NSUInteger sourceType=0;
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {
switch (buttonIndex) {
case 0:
{
sourceType=UIImagePickerControllerSourceTypeCamera;
}
break;
case 1:
{
sourceType=UIImagePickerControllerSourceTypePhotoLibrary;
}
break;
default:
break;
}
}else{
if (buttonIndex==1) {
sourceType=UIImagePickerControllerSourceTypeSavedPhotosAlbum;
}
}
// 转跳页面
UIImagePickerController*imgPic=[[UIImagePickerController alloc]init];
imgPic.delegate=self;
imgPic.allowsEditing=YES;
imgPic.sourceType=sourceType;
[self presentViewController:imgPic animated:YES completion:nil];
}
}
#pragma mark --选取完成后调用方法
-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary<NSString *,id> *)info{
[picker dismissViewControllerAnimated:YES completion:nil]
;
UIImage*img=[info objectForKey:UIImagePickerControllerEditedImage];
//UIImage *smallImage = [self thumbnailWithImageWithoutScale:img size:CGSizeMake(300.0f, 200.0f)];
UIImage *smallImage = [self scaleFromImage:img toSize:CGSizeMake(kScreenSize.width,kScreenSize.width*2/3)];
// NSData*imageData=UIImageJPEGRepresentation(smallImage,1.0f);// 1 不缩放保存
shopEditViewImgCell *cell = [self.view viewWithTag:CELLADDIMG];
cell.zhaoPaiImg.image = smallImage;
cell.addImgBtn.hidden= YES;
cell.shangchuanLabel.hidden = YES;
}
- (UIImage *) scaleFromImage: (UIImage *) image toSize: (CGSize) size
{
UIGraphicsBeginImageContext(size);
[image drawInRect:CGRectMake(0, 0, size.width, size.height)];
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return newImage;
}
- (UIImage *)thumbnailWithImageWithoutScale:(UIImage *)image size:(CGSize)asize
{
UIImage *newimage;
if (nil == image) {
newimage = nil;
}
else{
CGSize oldsize = image.size;
CGRect rect;
if (asize.width/asize.height > oldsize.width/oldsize.height) {
rect.size.width = asize.width*oldsize.height/oldsize.width;
// rect.size.height = asize.height*oldsize.height/oldsize.width;
rect.size.height = asize.width*oldsize.height/oldsize.width;
rect.origin.x = (asize.width - rect.size.width)/2;
rect.origin.y = 0;
}
else{
//rect.size.width = asize.width;
rect.size.width = asize.height*oldsize.width/oldsize.height;
rect.size.height = asize.height*oldsize.width/oldsize.height;
rect.origin.x = 0;
rect.origin.y = (asize.height - rect.size.height)/2;
}
UIGraphicsBeginImageContext(asize);
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetFillColorWithColor(context, [[UIColor clearColor] CGColor]);
UIRectFill(CGRectMake(0, 0, asize.width, asize.height));//clear background
[image drawInRect:rect];
newimage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
}
return newimage;
}
#pragma mark-处理收键盘
-(BOOL)textFieldShouldReturn:(UITextField *)textField{
[textField resignFirstResponder];
return YES;
}
-(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{
[self hiddenKeybord];
}
-(void)hiddenKeybord{
CertifyListViewFirstCell *cell1 =[self.view viewWithTag:CLLDETALADDRESS];
[cell1.infoDetailTextfeild resignFirstResponder];
CertifyListViewFirstCell *cell2 =[self.view viewWithTag:CELLPHONE];
[cell2.infoDetailTextfeild resignFirstResponder];
}
#pragma mark- 协议
-(void)xieYiBtnClick:(UIButton*)btn{
btn.selected =! btn.selected;
CertifyListFourthCell *cell =[self.view viewWithTag:CELLTIJIAOBTN];
if (btn.selected == YES) {
cell.tiJiaoRenZheng.userInteractionEnabled=NO;
cell.tiJiaoRenZheng.backgroundColor=[UIColor lightGrayColor];
}else{
cell.tiJiaoRenZheng.userInteractionEnabled=YES;
cell.tiJiaoRenZheng.backgroundColor = COLOR_LABEL_TITLE;
}
}
#pragma mark- 商户接入协议
-(void)pushXieYiView{
ShopCertificationHtmlController *htmlview=[[ShopCertificationHtmlController alloc] init];
[self.navigationController pushViewController:htmlview animated:YES];
}
#pragma mark - 提交认证
-(void)tiJiaoRenZheng:(UIButton *)btn{
CertifyListViewFirstCell *cell1 =[self.view viewWithTag:CELLPHONE];
CertifyListViewFirstCell *cell2 =[self.view viewWithTag:CLLSHENGSHIQU_LOACTON];
CertifyListViewFirstCell *cell3 =[self.view viewWithTag:CLLDETALADDRESS];
shopEditViewImgCell *celladd = [self.view viewWithTag:CELLADDIMG];
if (cell1.infoDetailTextfeild.text.length ==0 || cell1.infoDetailTextfeild.text.length >11) {
[self.view makeToast:@"请正确输入正确的手机号或电话"];
return;
}
if (cell3.infoDetailTextfeild.text.length>20 ||cell3.infoDetailTextfeild.text.length == 0) {
[self.view makeToast:@"详情地址不能超过20个字"];
return;
}
if (cell2.infoDetailTextfeild.text.length == 0) {
[self.view makeToast:@"请选择省市区"];
return;
}
[self.view makeToastActivity];
AFHTTPRequestOperationManager*manager=[AFHTTPRequestOperationManager manager];
manager.requestSerializer = [AFJSONRequestSerializer serializer];
manager.responseSerializer=[AFHTTPResponseSerializer serializer];
if (self.privence==nil) {
self.privence = @"无";
}
if (self.city==nil) {
self.city = @"无";
}
if (self.area ==nil) {
//有省份无地区
self.area =@"无";
}
/* NSString *url = IfishUpdateBaseShopsInfo;
NSDictionary *paras = @{
@"shopsId":self.shopInfo.shopsId,
@"shopsPhone":cell1.infoDetailTextfeild.text,
@"shopsProvince":self.privence,
@"shopsCity":self.city,
@"shopsArea":self.area,
@"shopsAddress":cell3.infoDetailTextfeild.text,
@"file4":@"png"
};
[manager POST:url parameters:paras constructingBodyWithBlock:^(id<AFMultipartFormData> formData) {
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.dateFormat = @"yyyyMMddHHmmss";
NSString *str = [formatter stringFromDate:[NSDate date]];
NSString *fileName = [NSString stringWithFormat:@"%@.png", str];
NSString *name = [NSString stringWithFormat:@"file%d",4];
NSData* imgdata=UIImagePNGRepresentation(celladd.zhaoPaiImg.image);
if (celladd.zhaoPaiImg.image) {
[formData appendPartWithFileData:imgdata name:name fileName:fileName mimeType:@"image/png"];
}
} success:^(AFHTTPRequestOperation *operation, id responseObject) {
NSDictionary*resultDic=[NSJSONSerialization JSONObjectWithData:responseObject options:NSJSONReadingMutableContainers error:nil];
NSLog(@"result:%@",resultDic[@"result"]);
[self.view hideToastActivity];
if ([resultDic[@"result"] isEqualToString:@"100"]) {
[self.view makeToast:@"提交成功"];
NSDictionary*shopsInfoDic= resultDic[@"data"];
CertificationShopModel *shopInfo=[[CertificationShopModel alloc] init];
shopInfo.picture1 = shopsInfoDic[@"picture1"];
shopInfo.picture2 = shopsInfoDic[@"picture2"];
shopInfo.picture3 = shopsInfoDic[@"picture3"];
shopInfo.picture4 = shopsInfoDic[@"picture4"];
shopInfo.reason = shopsInfoDic[@"reason"];
shopInfo.shopsAddress = shopsInfoDic[@"shopsAddress"];
shopInfo.shopsArea = shopsInfoDic[@"shopsArea"];
shopInfo.shopsCity = shopsInfoDic[@"shopsCity"];
shopInfo.shopsId = shopsInfoDic[@"shopsId"];
shopInfo.shopsName = shopsInfoDic[@"shopsName"];
shopInfo.shopsPhone = shopsInfoDic[@"shopsPhone"];
shopInfo.shopsProvince = shopsInfoDic[@"shopsProvince"];
shopInfo.status = shopsInfoDic[@"status"];
shopInfo.userId = shopsInfoDic[@"userId"];
shopInfo.userName = shopsInfoDic[@"userName"];
shopInfo.userImg = shopsInfoDic[@"userImg"];
[[DataCenter defaultDtacenter]setValue:shopInfo forKey:@"ShopsInfo"];
}else if ([resultDic[@"result"] isEqualToString:@"101"]){
[self.view makeToast:@"提交失败错误码101"];
}
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
[self.view makeToast:@"提交失败,请检查网络"];
}];*/
UIImage* imgdata=celladd.zhaoPaiImg.image;
NSString *url = IfishUpdateBaseShopsInfo;
NSDictionary *paras = @{
@"shopsId":self.shopInfo.shopsId,
@"shopsPhone":cell1.infoDetailTextfeild.text,
@"shopsProvince":self.privence,
@"shopsCity":self.city,
@"shopsArea":self.area,
@"shopsAddress":cell3.infoDetailTextfeild.text,
@"file4":@"png",
@"":@"",
@"":@""
};
[AFHttpTool updateBaseShopsInfo:paras formatImg:imgdata requsetUrl:url success:^(id response) {
NSDictionary*resultDic=[NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableContainers error:nil];
NSLog(@"result:%@",resultDic[@"result"]);
[self.view hideToastActivity];
_isUpdate = YES;
if ([resultDic[@"result"] isEqualToString:@"100"]) {
[self.view makeToast:@"提交成功"];
NSDictionary*shopsInfoDic= resultDic[@"data"];
CertificationShopModel *shopInfo=[[CertificationShopModel alloc] init];
shopInfo.picture1 = shopsInfoDic[@"picture1"];
shopInfo.picture2 = shopsInfoDic[@"picture2"];
shopInfo.picture3 = shopsInfoDic[@"picture3"];
shopInfo.picture4 = shopsInfoDic[@"picture4"];
shopInfo.reason = shopsInfoDic[@"reason"];
shopInfo.shopsAddress = shopsInfoDic[@"shopsAddress"];
shopInfo.shopsArea = shopsInfoDic[@"shopsArea"];
shopInfo.shopsCity = shopsInfoDic[@"shopsCity"];
shopInfo.shopsId = shopsInfoDic[@"shopsId"];
shopInfo.shopsName = shopsInfoDic[@"shopsName"];
shopInfo.shopsPhone = shopsInfoDic[@"shopsPhone"];
shopInfo.shopsProvince = shopsInfoDic[@"shopsProvince"];
shopInfo.status = shopsInfoDic[@"status"];
shopInfo.userId = shopsInfoDic[@"userId"];
shopInfo.userName = shopsInfoDic[@"userName"];
shopInfo.userImg = shopsInfoDic[@"userImg"];
shopInfo.wechat = shopsInfoDic[@"weixinCode"];
shopInfo.shoplink = shopsInfoDic[@"shopLink"];
[[DataCenter defaultDtacenter]setValue:shopInfo forKey:@"ShopsInfo"];
}else if ([resultDic[@"result"] isEqualToString:@"101"]){
[self.view makeToast:@"提交失败错误码101"];
}
} failure:^(NSError *err) {
[self.view makeToast:@"提交失败,请检查网络"];
}];
}
@end