瀏覽代碼

[공통][New] 회원 가입 팝업을 Presenter base 로 이동

hyodong.min 7 年之前
父節點
當前提交
e3795436d0

+ 56 - 12
app/src/main/java/kr/co/zumo/app/lifeplus/view/presenter/Presenter.java

@@ -14,6 +14,7 @@ import com.google.gson.Gson;
 
 import kr.co.zumo.app.R;
 import kr.co.zumo.app.lifeplus.ILifeCycle;
+import kr.co.zumo.app.lifeplus.bean.BucketDeliveryBean;
 import kr.co.zumo.app.lifeplus.bean.ContentsDeliveryBean;
 import kr.co.zumo.app.lifeplus.bean.ContentsWebDeliveryBean;
 import kr.co.zumo.app.lifeplus.bean.UtilityActivityBean;
@@ -39,9 +40,11 @@ import kr.co.zumo.app.lifeplus.view.command.FinishActivityCommand;
 import kr.co.zumo.app.lifeplus.view.command.ScreenCommand;
 import kr.co.zumo.app.lifeplus.view.custom.Loading;
 import kr.co.zumo.app.lifeplus.view.dialog.AlertDialog;
+import kr.co.zumo.app.lifeplus.view.dialog.ConfirmDialog;
 import kr.co.zumo.app.lifeplus.view.dialog.DialogBase;
 import kr.co.zumo.app.lifeplus.view.dialog.DialogBuilder;
 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.dialog.PinConfirmDialog;
 import kr.co.zumo.app.lifeplus.view.screen.main.SystemPopupModelHelper;
@@ -346,27 +349,38 @@ public abstract class Presenter<M extends Model, V extends IView> implements ILi
             break;
           case ScreenID.BUCKET_ACTIVITY:
             model.loadMyBucketCount(event -> {
+              BucketDeliveryBean bucketDeliveryBean = new BucketDeliveryBean();
               if (event.getInteger() == 0) {
-                utilityActivityBean.setScreenId(ScreenID.BUCKET_BEST);
+                bucketDeliveryBean.setScreenId(ScreenID.BUCKET_BEST);
               }
               else {
-                utilityActivityBean.setScreenId(ScreenID.MY_BUCKET_LIST);
+                bucketDeliveryBean.setScreenId(ScreenID.MY_BUCKET_LIST);
               }
-              model.setDeliveryPackaging(utilityActivityBean);
-              go(ScreenID.UTILITY_ACTIVITY);
+              model.setDeliveryPackaging(bucketDeliveryBean);
+              go(screenId);
             });
             break;
           case ScreenID.SETTING_MEMBER_INFO:
-            confirmPin(() -> {
-              utilityActivityBean.setScreenId(ScreenID.SETTING_MEMBER_INFO);
-              model.setDeliveryPackaging(utilityActivityBean);
-              go(ScreenID.UTILITY_ACTIVITY);
-            });
+            if (model.isMember()) {
+              confirmPin(() -> {
+                utilityActivityBean.setScreenId(ScreenID.SETTING_MEMBER_INFO);
+                model.setDeliveryPackaging(utilityActivityBean);
+                go(ScreenID.UTILITY_ACTIVITY);
+              });
+            }
+            else {
+              showPopupForGuest();
+            }
             break;
           case ScreenID.SETTING_CODE:
-            utilityActivityBean.setScreenId(ScreenID.SETTING_CODE);
-            model.setDeliveryPackaging(utilityActivityBean);
-            go(ScreenID.UTILITY_ACTIVITY);
+            if (model.isMember()) {
+              utilityActivityBean.setScreenId(ScreenID.SETTING_CODE);
+              model.setDeliveryPackaging(utilityActivityBean);
+              go(ScreenID.UTILITY_ACTIVITY);
+            }
+            else {
+              showPopupForGuest();
+            }
             break;
           default:
             // 원래 액티비티로 표시되는 화면들.
@@ -440,6 +454,36 @@ public abstract class Presenter<M extends Model, V extends IView> implements ILi
       .show();
   }
 
+  /***********************************
+   * Popup for guest
+   ***********************************/
+  protected void showPopupForGuest() {
+    // 비회원 가입 유도
+    new DialogBuilder<ConfirmDialog, ICustomConfirmListener>(getFragmentManager(), DialogID.CONFIRM)
+      .listener(new ICustomConfirmListener<ConfirmDialog>() {
+        @Override
+        public void onPositiveResult(ConfirmDialog dialog, Event event) {
+          dialog.dispose();
+          go(ScreenID.SIGN_UP_START);
+        }
+
+        @Override
+        public void onNegativeResult(ConfirmDialog dialog, Event event) {
+          dialog.dispose();
+        }
+
+        @Override
+        public void onDialogCanceled(ConfirmDialog dialog) {
+          dialog.dispose();
+        }
+      })
+      .attribute(dialog -> {
+        dialog.setText(ResourceUtil.getString(R.string.only_user_service));
+        dialog.setPositiveButtonLabelId(R.string.member_confirm);
+      })
+      .show();
+  }
+
   /***********************************
    * navigation
    ***********************************/

+ 0 - 33
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/contents/ContentsOverviewPresenter.java

@@ -2,17 +2,11 @@ package kr.co.zumo.app.lifeplus.view.screen.contents;
 
 import android.util.Log;
 
-import kr.co.zumo.app.R;
 import kr.co.zumo.app.lifeplus.bean.ContentsOverviewDeliveryBean;
 import kr.co.zumo.app.lifeplus.helper.NavigationBar;
 import kr.co.zumo.app.lifeplus.supervisor.ScreenID;
-import kr.co.zumo.app.lifeplus.util.ResourceUtil;
 import kr.co.zumo.app.lifeplus.view.DoubleChecker;
 import kr.co.zumo.app.lifeplus.view.Event;
-import kr.co.zumo.app.lifeplus.view.dialog.ConfirmDialog;
-import kr.co.zumo.app.lifeplus.view.dialog.DialogBuilder;
-import kr.co.zumo.app.lifeplus.view.dialog.DialogID;
-import kr.co.zumo.app.lifeplus.view.dialog.ICustomConfirmListener;
 
 /**
  * ContentsOverviewPresenter
@@ -113,33 +107,6 @@ public class ContentsOverviewPresenter extends ContentsBasePresenter<ContentsOve
     }
   }
 
-  protected void showPopupForGuest() {
-    // 비회원 가입 유도
-    new DialogBuilder<ConfirmDialog, ICustomConfirmListener>(getFragmentManager(), DialogID.CONFIRM)
-      .listener(new ICustomConfirmListener<ConfirmDialog>() {
-        @Override
-        public void onPositiveResult(ConfirmDialog dialog, Event event) {
-          dialog.dispose();
-          go(ScreenID.SIGN_UP_START);
-        }
-
-        @Override
-        public void onNegativeResult(ConfirmDialog dialog, Event event) {
-          dialog.dispose();
-        }
-
-        @Override
-        public void onDialogCanceled(ConfirmDialog dialog) {
-          dialog.dispose();
-        }
-      })
-      .attribute(dialog -> {
-        dialog.setText(ResourceUtil.getString(R.string.only_user_service));
-        dialog.setPositiveButtonLabelId(R.string.member_confirm);
-      })
-      .show();
-  }
-
   @Override
   public void onNavigationClickClose(NavigationBar navigationBar) {
     onBackPressed();

+ 0 - 30
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/contents/ContentsPresenter.java

@@ -13,16 +13,13 @@ import kr.co.zumo.app.lifeplus.bean.api.ContentsItemBean;
 import kr.co.zumo.app.lifeplus.bean.api.LifeplusContentsBean;
 import kr.co.zumo.app.lifeplus.helper.NavigationBar;
 import kr.co.zumo.app.lifeplus.supervisor.ScreenID;
-import kr.co.zumo.app.lifeplus.util.ResourceUtil;
 import kr.co.zumo.app.lifeplus.util.StringUtil;
 import kr.co.zumo.app.lifeplus.view.DoubleChecker;
 import kr.co.zumo.app.lifeplus.view.Event;
 import kr.co.zumo.app.lifeplus.view.command.WebCommand;
 import kr.co.zumo.app.lifeplus.view.dialog.AppReviewDialog;
-import kr.co.zumo.app.lifeplus.view.dialog.ConfirmDialog;
 import kr.co.zumo.app.lifeplus.view.dialog.DialogBuilder;
 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.dialog.IDialogBase;
 import kr.co.zumo.app.lifeplus.view.dialog.MoreInfoDialog;
@@ -304,33 +301,6 @@ public class ContentsPresenter extends ContentsBasePresenter<ContentsModel, ICon
     showShareDialog();
   }
 
-  protected void showPopupForGuest() {
-    // 비회원 가입 유도
-    new DialogBuilder<ConfirmDialog, ICustomConfirmListener>(getFragmentManager(), DialogID.CONFIRM)
-      .listener(new ICustomConfirmListener<ConfirmDialog>() {
-        @Override
-        public void onPositiveResult(ConfirmDialog dialog, Event event) {
-          dialog.dispose();
-          go(ScreenID.SIGN_UP_START);
-        }
-
-        @Override
-        public void onNegativeResult(ConfirmDialog dialog, Event event) {
-          dialog.dispose();
-        }
-
-        @Override
-        public void onDialogCanceled(ConfirmDialog dialog) {
-          dialog.dispose();
-        }
-      })
-      .attribute(dialog -> {
-        dialog.setText(ResourceUtil.getString(R.string.only_user_service));
-        dialog.setPositiveButtonLabelId(R.string.member_confirm);
-      })
-      .show();
-  }
-
   protected void showTooltipDialog() {
     new DialogBuilder<TooltipDialog, ICustomDialogListener>(getFragmentManager(), DialogID.TOOL_TIP)
       .listener(new ICustomDialogListener<TooltipDialog>() {

+ 0 - 31
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/event/EventDetailPresenter.java

@@ -2,19 +2,15 @@ package kr.co.zumo.app.lifeplus.view.screen.event;
 
 import android.os.Handler;
 
-import kr.co.zumo.app.R;
 import kr.co.zumo.app.lifeplus.helper.ActionBarHelper;
 import kr.co.zumo.app.lifeplus.helper.NavigationBar;
 import kr.co.zumo.app.lifeplus.supervisor.ScreenID;
-import kr.co.zumo.app.lifeplus.util.ResourceUtil;
 import kr.co.zumo.app.lifeplus.view.Event;
 import kr.co.zumo.app.lifeplus.view.dialog.CoinSavingDialog;
-import kr.co.zumo.app.lifeplus.view.dialog.ConfirmDialog;
 import kr.co.zumo.app.lifeplus.view.dialog.DialogBuilder;
 import kr.co.zumo.app.lifeplus.view.dialog.DialogID;
 import kr.co.zumo.app.lifeplus.view.dialog.EventNoticeDialog;
 import kr.co.zumo.app.lifeplus.view.dialog.IAttribute;
-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.presenter.Presenter;
 
@@ -141,33 +137,6 @@ public class EventDetailPresenter extends Presenter<EventDetailModel, IEventDeta
 
   }
 
-  private void showPopupForGuest() {
-    // 비회원 가입 유도
-    new DialogBuilder<ConfirmDialog, ICustomConfirmListener>(getFragmentManager(), DialogID.CONFIRM)
-      .listener(new ICustomConfirmListener<ConfirmDialog>() {
-        @Override
-        public void onPositiveResult(ConfirmDialog dialog, Event event) {
-          dialog.dispose();
-          go(ScreenID.SIGN_UP_START);
-        }
-
-        @Override
-        public void onNegativeResult(ConfirmDialog dialog, Event event) {
-          dialog.dispose();
-        }
-
-        @Override
-        public void onDialogCanceled(ConfirmDialog dialog) {
-          dialog.dispose();
-        }
-      })
-      .attribute(dialog -> {
-        dialog.setText(ResourceUtil.getString(R.string.only_user_service));
-        dialog.setPositiveButtonLabelId(R.string.member_confirm);
-      })
-      .show();
-  }
-
   @Override
   public void onNavigationClickLike(NavigationBar navigationBar) {
   }

+ 0 - 33
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/event/EventPresenter.java

@@ -1,14 +1,8 @@
 package kr.co.zumo.app.lifeplus.view.screen.event;
 
-import kr.co.zumo.app.R;
 import kr.co.zumo.app.lifeplus.model.BlankModel;
 import kr.co.zumo.app.lifeplus.supervisor.ScreenID;
-import kr.co.zumo.app.lifeplus.util.ResourceUtil;
 import kr.co.zumo.app.lifeplus.view.Event;
-import kr.co.zumo.app.lifeplus.view.dialog.ConfirmDialog;
-import kr.co.zumo.app.lifeplus.view.dialog.DialogBuilder;
-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.presenter.Presenter;
 
 /**
@@ -102,31 +96,4 @@ public class EventPresenter extends Presenter<BlankModel, IEventView> {
   public void onResult(Event event) {
 
   }
-
-  private void showPopupForGuest() {
-    // 비회원 가입 유도
-    new DialogBuilder<ConfirmDialog, ICustomConfirmListener>(getFragmentManager(), DialogID.CONFIRM)
-      .listener(new ICustomConfirmListener<ConfirmDialog>() {
-        @Override
-        public void onPositiveResult(ConfirmDialog dialog, Event event) {
-          dialog.dispose();
-          go(ScreenID.SIGN_UP_START);
-        }
-
-        @Override
-        public void onNegativeResult(ConfirmDialog dialog, Event event) {
-          dialog.dispose();
-        }
-
-        @Override
-        public void onDialogCanceled(ConfirmDialog dialog) {
-          dialog.dispose();
-        }
-      })
-      .attribute(dialog -> {
-        dialog.setText(ResourceUtil.getString(R.string.only_user_service));
-        dialog.setPositiveButtonLabelId(R.string.member_confirm);
-      })
-      .show();
-  }
 }

+ 1 - 30
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/faq/FAQPresenter.java

@@ -3,15 +3,9 @@
  */
 package kr.co.zumo.app.lifeplus.view.screen.faq;
 
-import kr.co.zumo.app.R;
 import kr.co.zumo.app.lifeplus.supervisor.ScreenID;
-import kr.co.zumo.app.lifeplus.util.ResourceUtil;
 import kr.co.zumo.app.lifeplus.view.DoubleChecker;
 import kr.co.zumo.app.lifeplus.view.Event;
-import kr.co.zumo.app.lifeplus.view.dialog.ConfirmDialog;
-import kr.co.zumo.app.lifeplus.view.dialog.DialogBuilder;
-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.presenter.Presenter;
 
 /**
@@ -120,30 +114,7 @@ public class FAQPresenter extends Presenter<FAQModel, IFAQView> {
       go(ScreenID.MY_FAQ);
     }
     else {
-      // 비회원 가입 유도
-      new DialogBuilder<ConfirmDialog, ICustomConfirmListener>(getFragmentManager(), DialogID.CONFIRM)
-        .listener(new ICustomConfirmListener<ConfirmDialog>() {
-          @Override
-          public void onPositiveResult(ConfirmDialog dialog, Event event) {
-            dialog.dispose();
-            go(ScreenID.SIGN_UP_START);
-          }
-
-          @Override
-          public void onNegativeResult(ConfirmDialog dialog, Event event) {
-            dialog.dispose();
-          }
-
-          @Override
-          public void onDialogCanceled(ConfirmDialog dialog) {
-            dialog.dispose();
-          }
-        })
-        .attribute(dialog -> {
-          dialog.setText(ResourceUtil.getString(R.string.only_user_service));
-          dialog.setPositiveButtonLabelId(R.string.member_confirm);
-        })
-        .show();
+      showPopupForGuest();
     }
   }
 }

+ 0 - 35
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/introduction/LifeplusIntroductionPresenter.java

@@ -4,17 +4,11 @@ import android.support.annotation.IntRange;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 
-import kr.co.zumo.app.R;
 import kr.co.zumo.app.lifeplus.bean.BucketDeliveryBean;
 import kr.co.zumo.app.lifeplus.bean.api.BucketWithTagBean;
 import kr.co.zumo.app.lifeplus.model.BlankModel;
 import kr.co.zumo.app.lifeplus.supervisor.ScreenID;
-import kr.co.zumo.app.lifeplus.util.ResourceUtil;
 import kr.co.zumo.app.lifeplus.view.Event;
-import kr.co.zumo.app.lifeplus.view.dialog.ConfirmDialog;
-import kr.co.zumo.app.lifeplus.view.dialog.DialogBuilder;
-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.presenter.Presenter;
 
 /**
@@ -120,35 +114,6 @@ public class LifeplusIntroductionPresenter extends Presenter<BlankModel, IIntrod
 
   }
 
-  private void showPopupForGuest() {
-    // 비회원 가입 유도
-    new DialogBuilder<ConfirmDialog, ICustomConfirmListener>(getFragmentManager(), DialogID.CONFIRM)
-      .listener(new ICustomConfirmListener<ConfirmDialog>() {
-        @Override
-        public void onPositiveResult(ConfirmDialog dialog, Event event) {
-          dialog.dispose();
-          go(ScreenID.SIGN_UP_START);
-        }
-
-        @Override
-        public void onNegativeResult(ConfirmDialog dialog, Event event) {
-          dialog.dispose();
-
-        }
-
-        @Override
-        public void onDialogCanceled(ConfirmDialog dialog) {
-          dialog.dispose();
-
-        }
-      })
-      .attribute(dialog -> {
-        dialog.setText(ResourceUtil.getString(R.string.only_user_service));
-        dialog.setPositiveButtonLabelId(R.string.member_confirm);
-      })
-      .show();
-  }
-
   private BucketDeliveryBean getBucketDeliveryBean(@NonNull @ScreenID.ID @IntRange(from = 0, to = 1000) int id, @Nullable String title, @Nullable BucketWithTagBean bean) {
     BucketDeliveryBean bucketDeliveryBean = new BucketDeliveryBean();
     bucketDeliveryBean.setScreenId(id);

+ 1 - 33
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/my/main/MyMainPresenter.java

@@ -16,14 +16,9 @@ import kr.co.zumo.app.lifeplus.config.NetworkConfig;
 import kr.co.zumo.app.lifeplus.supervisor.ContentsFlagHelper;
 import kr.co.zumo.app.lifeplus.supervisor.ScreenID;
 import kr.co.zumo.app.lifeplus.util.AppUtil;
-import kr.co.zumo.app.lifeplus.util.ResourceUtil;
 import kr.co.zumo.app.lifeplus.util.StringUtil;
 import kr.co.zumo.app.lifeplus.view.DoubleChecker;
 import kr.co.zumo.app.lifeplus.view.Event;
-import kr.co.zumo.app.lifeplus.view.dialog.ConfirmDialog;
-import kr.co.zumo.app.lifeplus.view.dialog.DialogBuilder;
-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.presenter.Presenter;
 
 /**
@@ -183,7 +178,7 @@ public class MyMainPresenter extends Presenter<MyMainModel, IMyMainView> {
           go(ScreenID.BUCKET_ACTIVITY);
         }
         else {
-          showBucketPopupForGuest();
+          showPopupForGuest();
         }
         break;
       case Event.MY_BUCKET:
@@ -257,33 +252,6 @@ public class MyMainPresenter extends Presenter<MyMainModel, IMyMainView> {
     }
   }
 
-  private void showBucketPopupForGuest() {
-    // 비회원 가입 유도
-    new DialogBuilder<ConfirmDialog, ICustomConfirmListener>(getFragmentManager(), DialogID.CONFIRM)
-      .listener(new ICustomConfirmListener<ConfirmDialog>() {
-        @Override
-        public void onPositiveResult(ConfirmDialog dialog, Event event) {
-          dialog.dispose();
-          go(ScreenID.SIGN_UP_START);
-        }
-
-        @Override
-        public void onNegativeResult(ConfirmDialog dialog, Event event) {
-          dialog.dispose();
-        }
-
-        @Override
-        public void onDialogCanceled(ConfirmDialog dialog) {
-          dialog.dispose();
-        }
-      })
-      .attribute(dialog -> {
-        dialog.setText(ResourceUtil.getString(R.string.only_user_service));
-        dialog.setPositiveButtonLabelId(R.string.member_confirm);
-      })
-      .show();
-  }
-
   @Override
   public void onResult(Event event) {
     int integer = event.getInteger();