From e631f636308e7af347a781e46c728a97eb3308ee Mon Sep 17 00:00:00 2001 From: Gk40002148 Date: Tue, 20 Sep 2022 16:18:55 +0900 Subject: [PATCH] =?UTF-8?q?=E3=83=90=E3=83=83=E3=82=AF=E3=82=B0=E3=83=A9?= =?UTF-8?q?=E3=82=A6=E3=83=B3=E3=83=89=E7=A7=BB=E8=A1=8C=E6=99=82=E3=81=AB?= =?UTF-8?q?=E3=82=A2=E3=83=97=E3=83=AA=E3=81=AE=E3=82=A2=E3=82=A4=E3=82=B3?= =?UTF-8?q?=E3=83=B3=E3=83=90=E3=83=83=E3=83=82=E3=82=92=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E3=81=99=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB=E5=A4=89=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Main/View/MainTabBarViewController.swift | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/AgileWorks/AgileWorks/Main/View/MainTabBarViewController.swift b/AgileWorks/AgileWorks/Main/View/MainTabBarViewController.swift index ba8feee..d0649ec 100644 --- a/AgileWorks/AgileWorks/Main/View/MainTabBarViewController.swift +++ b/AgileWorks/AgileWorks/Main/View/MainTabBarViewController.swift @@ -34,6 +34,7 @@ class MainTabBarViewController: UITabBarController { super.viewDidLoad() delegate = self NotificationCenter.default.addObserver(self, selector: #selector(updateFcmToken(notification:)), name: .notifyFCMToken, object: nil) + NotificationCenter.default.addObserver(self, selector: #selector(movedToBackground), name: UIApplication.willResignActiveNotification, object: nil) } @objc @@ -47,6 +48,33 @@ class MainTabBarViewController: UITabBarController { } } } + + @objc + func movedToBackground() { + // 承認待ち件数の取得 + getApprovals { result in + var reqApprovalCount = 0 + switch result { + case .success(let response): + let requestApproval = "REQUEST_APPROVAL" + for item in response.items where item.code == requestApproval { + reqApprovalCount = item.count + } + DispatchQueue.main.async { + UIApplication.shared.applicationIconBadgeNumber = reqApprovalCount + } + case .failure(let error): + log.e(error) + } + } + } + // 承認件数取得 + private func getApprovals(completion: @escaping (Result) -> Void) { + let approvalsEndpoint = GetApprovalsEndpoint() + Session.send(approvalsEndpoint) { result in + completion(result) + } + } func popViewController() { guard let navigation = self.viewControllers?[self.selectedIndex] as? UINavigationController else { -- GitLab