From 4c1abca185a5727da6fb314a0cb4cd44bfe1b3bf Mon Sep 17 00:00:00 2001
From: Davin <591807572@qq.com>
Date: 星期五, 07 六月 2024 17:48:47 +0800
Subject: [PATCH] feature appkey修改

---
 EZSDK/EZSDK/EZ/TempPassword/Controllers/HDLEZDeviceMsgListViewController.m |   89 ++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 80 insertions(+), 9 deletions(-)

diff --git a/EZSDK/EZSDK/EZ/TempPassword/Controllers/HDLEZDeviceMsgListViewController.m b/EZSDK/EZSDK/EZ/TempPassword/Controllers/HDLEZDeviceMsgListViewController.m
index da4e342..b4eb890 100644
--- a/EZSDK/EZSDK/EZ/TempPassword/Controllers/HDLEZDeviceMsgListViewController.m
+++ b/EZSDK/EZSDK/EZ/TempPassword/Controllers/HDLEZDeviceMsgListViewController.m
@@ -28,7 +28,8 @@
 
 @property (nonatomic, assign) NSInteger pageSize;//鍒嗛〉瀹归噺
 
-@property (nonatomic, strong) NSMutableArray <MWPhoto *>*photos;   // 棰勮鍥剧墖淇℃伅
+@property (nonatomic, strong) NSMutableArray <MWPhoto *>*photos;    // 棰勮鍥剧墖淇℃伅
+@property (nonatomic, strong) NSString *currentPreviewPhoto;        // 褰撳墠棰勮鐨勫浘鐗�
     
 @end
 
@@ -109,14 +110,16 @@
         weakSelf.msgListModel=[HDLEZDevMsgListModel yy_modelWithDictionary:responseData.data];
         if (responseData.success) {
             weakSelf.msgListModel=[HDLEZDevMsgListModel yy_modelWithDictionary:responseData.data];
-            if (weakSelf.msgListModel.list.count!=0) {
-                [weakSelf.msgList addObjectsFromArray:weakSelf.msgListModel.list];
-                weakSelf.msgListV.msgList=weakSelf.msgList;
+            if (weakSelf.currentPageNo == 1) {
+                [weakSelf.msgList removeAllObjects];
+            }
+            [weakSelf.msgList addObjectsFromArray:weakSelf.msgListModel.list];
+            weakSelf.msgListV.msgList=weakSelf.msgList;
+            if (weakSelf.msgListModel.list.count == weakSelf.pageSize) {
                 weakSelf.currentPageNo+=1;
-            }else{
+            } else {
                 [weakSelf.footer endRefreshingWithNoMoreData];
             }
-            
         }else{
             [weakSelf.view makeToast:responseData.message
                             duration:1.5
@@ -142,9 +145,24 @@
 }
 
 - (void)didClickDownLoad:(MWPhotoBrowser *)photoBrowser {
+    
+    __weak __typeof(self)weakSelf = self;
+    [self authPhotoLibraries:^(BOOL isAblity) {
+        if (isAblity) {
+            [weakSelf downloadTheImage];
+        } else {
+            [weakSelf guideUserOpenAuth];
+        }
+    }];
+}
+
+- (void)downloadTheImage {
     dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
-        
-        NSURL *url = [NSURL URLWithString:@"https://upload-images.jianshu.io/upload_images/5809200-a99419bb94924e6d.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240"];
+        if (!self.currentPreviewPhoto || self.currentPreviewPhoto.length == 0) {
+            [UIView dd_showMessage:NSLocalizedString(@"device_save_gallery_failure", @"涓嬭浇澶辫触")];
+            return;
+        }
+        NSURL *url = [NSURL URLWithString:self.currentPreviewPhoto];
         SDWebImageManager *manager = [SDWebImageManager sharedManager];
         UIImage *img;
         if ([manager diskImageExistsForURL:url]) {
@@ -172,16 +190,69 @@
     }
     else
     {
-        message = [error description];
+        message = NSLocalizedString(@"device_save_gallery_failure", @"涓嬭浇澶辫触");
+        NSLog(@"#######鍥剧墖淇濆瓨澶辫触锛�%@", [error description]);
     }
     [UIView dd_showMessage:message];
 }
 
+/*璁块棶鐩稿唽鏉冮檺
+ */
+-(void)authPhotoLibraries:(void(^)(BOOL isAblity))result {
+    PHAuthorizationStatus author =[PHPhotoLibrary authorizationStatus];
+    if (author == PHAuthorizationStatusRestricted || author ==PHAuthorizationStatusDenied){
+        if (result) {
+            result(NO);
+        }
+    } else if (author == PHAuthorizationStatusNotDetermined) {  // 棣栨鎺堟潈
+        dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);
+        dispatch_async(queue, ^{
+            [PHPhotoLibrary requestAuthorization:^(PHAuthorizationStatus status) {
+                if (status != PHAuthorizationStatusAuthorized) {
+                    if (result) {
+                        result(NO);
+                    }
+                } else {
+                    if (result) {
+                        result(YES);
+                    }
+                }
+            }];
+        });
+    } else {
+        if (result) {
+            result(YES);
+        }
+    }
+}
+
+/*寮曞鐢ㄦ埛鎺堟潈鑾峰彇鍥剧墖
+ */
+- (void)guideUserOpenAuth{
+    UIAlertController *alertC = [UIAlertController alertControllerWithTitle:NSLocalizedString(@"hdl_ez_download_tip", @"娓╅Θ鎻愮ず") message:NSLocalizedString(@"hdl_ez_download_auth", @"璇锋墦寮�璁块棶鏉冮檺") preferredStyle:(UIAlertControllerStyleAlert)];
+    UIAlertAction *alertA = [UIAlertAction actionWithTitle:NSLocalizedString(@"hdl_ez_download_cancle", @"鍙栨秷") style:(UIAlertActionStyleDefault) handler:nil];
+    UIAlertAction *act = [UIAlertAction actionWithTitle:NSLocalizedString(@"hdl_ez_download_toSet", @"鍘昏缃�") style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {
+        // 寮曞鐢ㄦ埛璁剧疆
+        NSURL *url = [NSURL URLWithString:UIApplicationOpenSettingsURLString];
+        
+        if ([[UIApplication sharedApplication] canOpenURL:url]) {
+            
+            [[UIApplication sharedApplication] openURL:url options:@{} completionHandler:nil];
+        }
+    }];
+    [alertC addAction:alertA];
+    [alertC addAction:act];
+    [self presentViewController:alertC animated:YES completion:nil];
+}
+
 #pragma mark PrivateMethod
 - (void)previewPictureWithUrl:(NSString *)picUrl {
+    self.currentPreviewPhoto = picUrl;
     self.photos = [NSMutableArray array];
     [self.photos addObject:[MWPhoto photoWithURL:[NSURL URLWithString:picUrl]]];
     MWPhotoBrowser *browser = [[MWPhotoBrowser alloc] initWithDelegate:self];
+    browser.displayActionButton = NO;
+    browser.zoomPhotosToFill = NO;
     [browser showDownloadBtn];
 
     [self.navigationController pushViewController:browser animated:NO];

--
Gitblit v1.8.0