Browse Source

[회원가입][Bug] 가입 완료 > 이미 회원 이라면 userNo는 저장한다.
- 이 경우 앱 재실행 시 이상없이 로그인 된다.

hyodong.min 7 years ago
parent
commit
e0205c193a

+ 0 - 37
app/src/main/java/kr/co/zumo/app/lifeplus/supervisor/screen/AllMenuScreen.java

@@ -1,37 +0,0 @@
-/*
- * COPYRIGHT (c) 2018 All rights reserved by HANWHA LIFE.
- */
-package kr.co.zumo.app.lifeplus.supervisor.screen;
-
-import kr.co.zumo.app.lifeplus.helper.ScreenManagerHelper;
-import kr.co.zumo.app.lifeplus.supervisor.ScreenID;
-
-/**
- * AllMenuScreen
- * <pre>
- * </pre>
- *
- * @author 민효동
- * @version 1.0
- * @history 민효동   [2018-11-18]   [최초 작성]
- * @since 2018-11-18
- */
-public class AllMenuScreen extends FragmentScreen {
-  public AllMenuScreen(ScreenManagerHelper helper, int id, int direction, int method) {
-    super(helper, id, direction, method);
-  }
-
-  @Override
-  public void change() {
-    // 상황에 따라서 id 를 변경해준다.
-
-    if(helper.getModel().isMember()){
-      id = ScreenID.ALL_MENU;
-    }
-    else {
-      id = ScreenID.ALL_MENU_GUEST;
-    }
-
-    super.change();
-  }
-}

+ 0 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/supervisor/screen/ScreenManager.java

@@ -53,7 +53,6 @@ public class ScreenManager implements IScreen {
           new CommandInvoker().invoke(helper.getPresenter(), new HomeCommand());
           break;
         case ScreenID.ALL_MENU:
-//          screen = new AllMenuScreen(helper, id, direction, method);
           screen = new ActivityScreen(helper, id, direction, method);
           break;
         case ScreenID.CONTENTS:

+ 15 - 6
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/signup/SignUpAgreeModel.java

@@ -102,10 +102,11 @@ public class SignUpAgreeModel extends Model {
    */
   public void saveUserId(String userId) {
     Log.i("APP# SignUpModel | saveUserId", "| userId: " + userId);
+    // init
     SuperModel.getInstance().renewMemberData();
 
+    // reset
     SuperModel.getInstance().setUserId(userId);
-
     MobileAuthBean mobileAuthBean = SignUpModelHelper.getInstance().getMobileAuthBean();
     if (StringUtil.isFull(mobileAuthBean.getName())) {
       SuperModel.getInstance().setUserName(mobileAuthBean.getName());
@@ -174,10 +175,10 @@ public class SignUpAgreeModel extends Model {
     else {
       // 필수 항목 체크 완료;
 
+      // 선택 동의 확인
       ArrayList<PolicyNumberBean> policyList = new ArrayList<>();
       List<PolicyBean> agreeBean = getAgreeItems();
       if (null != agreeBean) {
-
         for (PolicyBean bean : agreeBean) {
           if (bean.isMandatory() == false && bean.isChecked()) {
             policyList.add(new PolicyNumberBean(bean.getPolicyNumber(), true));
@@ -197,22 +198,30 @@ public class SignUpAgreeModel extends Model {
       disposable.add(new APIMemberInsertModule().call(bean, new IAPIModuleListener<MemberJoinResultBean>() {
           @Override
           public void onApiSuccess(MemberJoinResultBean resultBean) {
+
             saveUserId(resultBean.getData().getUserNo());
+
             SuperModel.getInstance().saveEncryptedPin(SignUpModelHelper.getInstance().getEncryptedPin());
             onResult(new Event.Builder(Event.RESULT).integer(Event.MEMBER_JOIN).build());
           }
 
           @Override
           public void onApiReason(MemberJoinResultBean resultBean) {
+            if (resultBean.getCode() == LifeplusAPIBean.RETURN_SIGN_UP_ERROR_ALREADY_MEMBER) {
+              // 이미 가입한 회원 (탈퇴 안한 상태?)
+
+              // 이 경우에도 userNo 는 필요함.
+              // fixme userId 를 저장하면 앱 재실행 시 이상없이 로그인 된다.
+              //
+              saveUserId(resultBean.getData().getUserNo());
+
+              onResult(new Event.Builder(Event.RESULT).integer(Event.MEMBER_ALREADY_MEMBER).build());
+            }
             if (resultBean.getCode() == LifeplusAPIBean.RETURN_MOBILE_AUTH_ERROR_NEED_FOR_30_DAYS) {
               // 탈퇴 30일 회원 구분
               SuperModel.getInstance().addMemberStatus(SuperModel.MEMBER_STATUS_BIT_OUT);
               onResult(new Event.Builder(Event.RESULT).integer(Event.MEMBER_NEED_30DAYS).build());
             }
-            if (resultBean.getCode() == LifeplusAPIBean.RETURN_SIGN_UP_ERROR_ALREADY_MEMBER) {
-              // 이미 가입한 회원 (탈퇴안한 상태?)
-              onResult(new Event.Builder(Event.RESULT).integer(Event.MEMBER_ALREADY_MEMBER).build());
-            }
             else {
               onResult(new Event.Builder(Event.ERROR).integer(Event.MEMBER_JOIN).string(resultBean.getReturnMessage()).build());
             }

+ 1 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/view/screen/signup/SignUpAgreePresenter.java

@@ -108,7 +108,7 @@ public class SignUpAgreePresenter extends Presenter<SignUpAgreeModel, ISignUpAgr
           go(ScreenID.SIGN_UP_NEED_FOR_30DAYS);
         }
         else if (event.getInteger() == Event.MEMBER_ALREADY_MEMBER) {
-          // 이미 가입한 회원 (탈퇴안한 상태?)
+          // 이미 가입한 회원 (탈퇴 안한 상태?)
           go(ScreenID.SIGN_UP_ALREADY_MEMBER);
         }
         else if (event.getInteger() == Event.MEMBER_LOGIN) {