Przeglądaj źródła

[스플래시][New] 앱 실행 시 멤버 인포 로딩

hyodong.min 6 lat temu
rodzic
commit
869c867322

+ 23 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/activity/ScreenStarter.java

@@ -14,6 +14,7 @@ import kr.co.zumo.app.lifeplus.bean.api.LoginResultBean;
 import kr.co.zumo.app.lifeplus.bean.api.PopupInfoListBean;
 import kr.co.zumo.app.lifeplus.bean.api.PopupInfoResultBean;
 import kr.co.zumo.app.lifeplus.bean.api.RequestBean;
+import kr.co.zumo.app.lifeplus.bean.api.SettingMemberResultBean;
 import kr.co.zumo.app.lifeplus.model.LifeplusPreferences;
 import kr.co.zumo.app.lifeplus.model.SuperModel;
 import kr.co.zumo.app.lifeplus.model.module.APIError;
@@ -40,6 +41,8 @@ import kr.co.zumo.app.lifeplus.view.dialog.DialogID;
 import kr.co.zumo.app.lifeplus.view.dialog.ICustomConfirmListener;
 import kr.co.zumo.app.lifeplus.view.dialog.ICustomDialogListener;
 import kr.co.zumo.app.lifeplus.view.screen.main.SystemPopupModelHelper;
+import kr.co.zumo.app.lifeplus.view.screen.setting.MemberInfoModelHelper;
+import kr.co.zumo.app.lifeplus.view.screen.setting.SettingModelHelper;
 
 /**
  * ScreenStarter
@@ -154,7 +157,7 @@ public class ScreenStarter implements IModuleEmergencyHandler {
       new APILoginStatusMapper(SuperModel.getInstance(), new APIModuleListener<LoginResultBean>() {
         @Override
         public void onApiSuccess(LoginResultBean resultBean) {
-          onLogin(resultBean);
+          loadMemberInfo(resultBean);
         }
 
         @Override
@@ -165,6 +168,25 @@ public class ScreenStarter implements IModuleEmergencyHandler {
     );
   }
 
+  /**
+   * 설정 기본 정보 로딩
+   */
+  private void loadMemberInfo(LoginResultBean loginResultBean) {
+    disposable = MemberInfoModelHelper.getInstance().loadMemberInfo(new RequestBean(), new APIModuleListener<SettingMemberResultBean>() {
+      @Override
+      public void onApiSuccess(SettingMemberResultBean resultBean) {
+        SettingModelHelper.getInstance().setSettingMemberBean(resultBean.getData());
+
+        onLogin(loginResultBean);
+      }
+
+      @Override
+      public void onApiError(String errorMessage, APIError error) {
+        showErrorPopup(errorMessage);
+      }
+    });
+  }
+
   private void onLogin(LoginResultBean resultBean) {
     if (SuperModel.getInstance().isBlockMember()) {
       ActivityDeliveryHelper.getInstance().setPackaging(resultBean.getData());