Browse Source

[주모][New] API 기본 파라메터 설정

hyodong.min 6 years ago
parent
commit
256aae6a4d
19 changed files with 195 additions and 26 deletions
  1. 79 0
      app/src/main/java/kr/co/zumo/app/lifeplus/bean/api/ZumoRequestBean.java
  2. 5 0
      app/src/main/java/kr/co/zumo/app/lifeplus/model/BasicParamProvider.java
  3. 7 0
      app/src/main/java/kr/co/zumo/app/lifeplus/model/IParamProvider.java
  4. 34 0
      app/src/main/java/kr/co/zumo/app/lifeplus/model/module/ZumoAPIModule.java
  5. 36 0
      app/src/main/java/kr/co/zumo/app/lifeplus/network/api/ZumoParameterMapper.java
  6. 4 1
      app/src/main/java/kr/co/zumo/app/lifeplus/zumo/bean/api/DmcyUserCnclRequestBean.java
  7. 3 1
      app/src/main/java/kr/co/zumo/app/lifeplus/zumo/bean/api/FindIDRequestBean.java
  8. 3 1
      app/src/main/java/kr/co/zumo/app/lifeplus/zumo/bean/api/FindPWRequestBean.java
  9. 3 1
      app/src/main/java/kr/co/zumo/app/lifeplus/zumo/bean/api/IsEmailSocialValidCheckRequestBean.java
  10. 3 1
      app/src/main/java/kr/co/zumo/app/lifeplus/zumo/bean/api/MemberInfoByUserNoRequestBean.java
  11. 2 2
      app/src/main/java/kr/co/zumo/app/lifeplus/zumo/bean/api/MemberJoinRequestBean.java
  12. 2 2
      app/src/main/java/kr/co/zumo/app/lifeplus/zumo/bean/api/MemberLoginRequestBean.java
  13. 2 3
      app/src/main/java/kr/co/zumo/app/lifeplus/zumo/model/module/APIDmcyUserCnclModule.java
  14. 2 2
      app/src/main/java/kr/co/zumo/app/lifeplus/zumo/model/module/APIEmailSocialValidCheckModule.java
  15. 2 2
      app/src/main/java/kr/co/zumo/app/lifeplus/zumo/model/module/APIFindIdModule.java
  16. 2 2
      app/src/main/java/kr/co/zumo/app/lifeplus/zumo/model/module/APIFindPasswordModule.java
  17. 2 2
      app/src/main/java/kr/co/zumo/app/lifeplus/zumo/model/module/APIMemberInfoByUserNoModule.java
  18. 2 4
      app/src/main/java/kr/co/zumo/app/lifeplus/zumo/model/module/APIMemberLoginModule.java
  19. 2 2
      app/src/main/java/kr/co/zumo/app/lifeplus/zumo/model/module/APISetMemberJoinModule.java

+ 79 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/bean/api/ZumoRequestBean.java

@@ -0,0 +1,79 @@
+/*
+ * COPYRIGHT (c) 2018 All rights reserved by HANWHA LIFE.
+ */
+package kr.co.zumo.app.lifeplus.bean.api;
+
+import com.google.gson.annotations.SerializedName;
+
+import kr.co.zumo.app.lifeplus.bean.JsonBeanBase;
+
+/**
+ * ZumoRequestBean
+ * API 통신을 위해서 기본적으로
+ * <pre>
+ * </pre>
+ *
+ * @author 민효동
+ * @version 1.0
+ * @history 민효동   [2018. 10. 5.]   [최초 작성]
+ * @since 2018. 10. 5.
+ */
+public class ZumoRequestBean extends JsonBeanBase {
+
+  public static final String PARAM_APP_VER = "appVerInfo";
+  public static final String PARAM_DEVICE_ID = "deviTokn";
+  public static final String PARAM_USER_NO = "userNo";
+  public static final String PARAM_OS_TYPE = "smtpOs";
+  public static final String PARAM_OS_VER = "smtpOsVer";
+
+  @SerializedName(PARAM_APP_VER)
+  private String appVersion;
+  @SerializedName(PARAM_DEVICE_ID)
+  private String deviceId;
+  @SerializedName(PARAM_USER_NO)
+  private String userNo;
+  @SerializedName(PARAM_OS_TYPE)
+  private String osType;
+  @SerializedName(PARAM_OS_VER)
+  private String osVer;
+
+  public String getAppVersion() {
+    return appVersion;
+  }
+
+  public void setAppVersion(String appVersion) {
+    this.appVersion = appVersion;
+  }
+
+  public String getDeviceId() {
+    return deviceId;
+  }
+
+  public void setDeviceId(String deviceId) {
+    this.deviceId = deviceId;
+  }
+
+  public String getUserNo() {
+    return userNo;
+  }
+
+  public void setUserNo(String userId) {
+    this.userNo = userId;
+  }
+
+  public String getOsType() {
+    return osType;
+  }
+
+  public void setOsType(String osType) {
+    this.osType = osType;
+  }
+
+  public String getOsVer() {
+    return osVer;
+  }
+
+  public void setOsVer(String osVer) {
+    this.osVer = osVer;
+  }
+}

+ 5 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/model/BasicParamProvider.java

@@ -52,4 +52,9 @@ public class BasicParamProvider implements IParamProvider {
     // 1:ios, 2:and
     return "2";
   }
+
+  @Override
+  public String getOsVer() {
+    return AppUtil.getOsVersion();
+  }
 }

+ 7 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/model/IParamProvider.java

@@ -50,4 +50,11 @@ public interface IParamProvider {
    * @return
    */
   String getOsType();
+
+  /**
+   * OS version
+   *
+   * @return
+   */
+  String getOsVer();
 }

+ 34 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/model/module/ZumoAPIModule.java

@@ -0,0 +1,34 @@
+/*
+ * COPYRIGHT (c) 2018 All rights reserved by HANWHA LIFE.
+ */
+package kr.co.zumo.app.lifeplus.model.module;
+
+import io.reactivex.Single;
+import kr.co.zumo.app.lifeplus.bean.api.APIBean;
+import kr.co.zumo.app.lifeplus.bean.api.ZumoRequestBean;
+import kr.co.zumo.app.lifeplus.model.IParamProvider;
+import kr.co.zumo.app.lifeplus.network.api.ZumoParameterMapper;
+
+/**
+ * ZumoAPIModule
+ * <pre>
+ * </pre>
+ *
+ * @author 민효동
+ * @version 1.0
+ * @history 민효동   [2018. 10. 12.]   [최초 작성]
+ * @since 2018. 10. 12.
+ */
+public abstract class ZumoAPIModule<T extends ZumoRequestBean, B extends APIBean> extends APIModule<T, B> {
+
+  protected T mapBasicParameter(IParamProvider provider, T requestBean) {
+    return new ZumoParameterMapper<T>().map(provider, requestBean);
+  }
+
+  /***********************************
+   * abstract
+   ***********************************/
+
+  protected abstract Single<B> getAPI(T requestBean);
+
+}

+ 36 - 0
app/src/main/java/kr/co/zumo/app/lifeplus/network/api/ZumoParameterMapper.java

@@ -0,0 +1,36 @@
+/*
+ * COPYRIGHT (c) 2018 All rights reserved by HANWHA LIFE.
+ */
+package kr.co.zumo.app.lifeplus.network.api;
+
+import kr.co.zumo.app.lifeplus.bean.api.ZumoRequestBean;
+import kr.co.zumo.app.lifeplus.model.IParamProvider;
+
+/**
+ * ParameterMapper
+ * <pre>
+ * </pre>
+ *
+ * @author 민효동
+ * @version 1.0
+ * @history 민효동   [2018-10-24]   [최초 작성]
+ * @since 2018-10-24
+ */
+public class ZumoParameterMapper<T extends ZumoRequestBean> {
+
+  /**
+   * API 에 필요한 기본 정보 맵핑
+   *
+   * @param bean
+   * @return
+   */
+  public T map(IParamProvider provider, T bean) {
+    bean.setAppVersion(provider.getVersionName());
+    bean.setUserNo(provider.getUserId());
+    bean.setDeviceId(provider.getDeviceId());
+    bean.setOsType(provider.getOsType());
+    bean.setOsVer(provider.getOsVer());
+
+    return bean;
+  }
+}

+ 4 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/zumo/bean/api/DmcyUserCnclRequestBean.java

@@ -2,7 +2,10 @@ package kr.co.zumo.app.lifeplus.zumo.bean.api;
 
 import com.google.gson.annotations.SerializedName;
 
-public class DmcyUserCnclRequestBean extends BaseRequestBean {
+import kr.co.zumo.app.lifeplus.bean.api.ZumoRequestBean;
+
+
+public class DmcyUserCnclRequestBean extends ZumoRequestBean {
 
     /**
      * 사용자번호

+ 3 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/zumo/bean/api/FindIDRequestBean.java

@@ -2,7 +2,9 @@ package kr.co.zumo.app.lifeplus.zumo.bean.api;
 
 import com.google.gson.annotations.SerializedName;
 
-public class FindIDRequestBean extends BaseRequestBean {
+import kr.co.zumo.app.lifeplus.bean.api.ZumoRequestBean;
+
+public class FindIDRequestBean extends ZumoRequestBean {
 
     /**
      * 사용자명

+ 3 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/zumo/bean/api/FindPWRequestBean.java

@@ -2,7 +2,9 @@ package kr.co.zumo.app.lifeplus.zumo.bean.api;
 
 import com.google.gson.annotations.SerializedName;
 
-public class FindPWRequestBean extends BaseRequestBean {
+import kr.co.zumo.app.lifeplus.bean.api.ZumoRequestBean;
+
+public class FindPWRequestBean extends ZumoRequestBean {
 
     /**
      * 사용자명

+ 3 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/zumo/bean/api/IsEmailSocialValidCheckRequestBean.java

@@ -4,7 +4,9 @@ import android.support.annotation.Nullable;
 
 import com.google.gson.annotations.SerializedName;
 
-public class IsEmailSocialValidCheckRequestBean extends BaseRequestBean {
+import kr.co.zumo.app.lifeplus.bean.api.ZumoRequestBean;
+
+public class IsEmailSocialValidCheckRequestBean extends ZumoRequestBean {
 
     /**
      * 주모가입경로 (F:페이스북, G:구글, K:카카오, N:이메일, V:네이버)

+ 3 - 1
app/src/main/java/kr/co/zumo/app/lifeplus/zumo/bean/api/MemberInfoByUserNoRequestBean.java

@@ -1,4 +1,6 @@
 package kr.co.zumo.app.lifeplus.zumo.bean.api;
 
-public class MemberInfoByUserNoRequestBean extends BaseRequestBean {
+import kr.co.zumo.app.lifeplus.bean.api.ZumoRequestBean;
+
+public class MemberInfoByUserNoRequestBean extends ZumoRequestBean {
 }

+ 2 - 2
app/src/main/java/kr/co/zumo/app/lifeplus/zumo/bean/api/MemberJoinRequestBean.java

@@ -4,9 +4,9 @@ import android.support.annotation.Nullable;
 
 import com.google.gson.annotations.SerializedName;
 
-import kr.co.zumo.app.lifeplus.bean.api.RequestBean;
+import kr.co.zumo.app.lifeplus.bean.api.ZumoRequestBean;
 
-public class MemberJoinRequestBean extends RequestBean {
+public class MemberJoinRequestBean extends ZumoRequestBean {
 
     /**
      * 사용자명

+ 2 - 2
app/src/main/java/kr/co/zumo/app/lifeplus/zumo/bean/api/MemberLoginRequestBean.java

@@ -4,9 +4,9 @@ import android.support.annotation.Nullable;
 
 import com.google.gson.annotations.SerializedName;
 
-import kr.co.zumo.app.lifeplus.bean.api.RequestBean;
+import kr.co.zumo.app.lifeplus.bean.api.ZumoRequestBean;
 
-public class MemberLoginRequestBean extends RequestBean {
+public class MemberLoginRequestBean extends ZumoRequestBean {
 
     /**
      * 주모가입경로 (F:페이스북, G:구글, K:카카오, N:이메일, V:네이버)

+ 2 - 3
app/src/main/java/kr/co/zumo/app/lifeplus/zumo/model/module/APIDmcyUserCnclModule.java

@@ -2,12 +2,11 @@ package kr.co.zumo.app.lifeplus.zumo.model.module;
 
 import io.reactivex.Single;
 import kr.co.zumo.app.lifeplus.bean.api.LifeplusAPIBean;
-import kr.co.zumo.app.lifeplus.model.module.LifeplusAPIModule;
+import kr.co.zumo.app.lifeplus.model.module.ZumoAPIModule;
 import kr.co.zumo.app.lifeplus.network.api.LifeplusAPIRepository;
 import kr.co.zumo.app.lifeplus.zumo.bean.api.DmcyUserCnclRequestBean;
-import kr.co.zumo.app.lifeplus.zumo.bean.api.FindPWRequestBean;
 
-public class APIDmcyUserCnclModule extends LifeplusAPIModule<DmcyUserCnclRequestBean, LifeplusAPIBean> {
+public class APIDmcyUserCnclModule extends ZumoAPIModule<DmcyUserCnclRequestBean, LifeplusAPIBean> {
 
     @Override
     protected Single<LifeplusAPIBean> getAPI(DmcyUserCnclRequestBean requestBean) {

+ 2 - 2
app/src/main/java/kr/co/zumo/app/lifeplus/zumo/model/module/APIEmailSocialValidCheckModule.java

@@ -1,12 +1,12 @@
 package kr.co.zumo.app.lifeplus.zumo.model.module;
 
 import io.reactivex.Single;
-import kr.co.zumo.app.lifeplus.model.module.LifeplusAPIModule;
+import kr.co.zumo.app.lifeplus.model.module.ZumoAPIModule;
 import kr.co.zumo.app.lifeplus.network.api.LifeplusAPIRepository;
 import kr.co.zumo.app.lifeplus.zumo.bean.api.IsEmailSocialValidCheckRequestBean;
 import kr.co.zumo.app.lifeplus.zumo.bean.api.IsEmailSocialValidCheckResultBean;
 
-public class APIEmailSocialValidCheckModule extends LifeplusAPIModule<IsEmailSocialValidCheckRequestBean, IsEmailSocialValidCheckResultBean> {
+public class APIEmailSocialValidCheckModule extends ZumoAPIModule<IsEmailSocialValidCheckRequestBean, IsEmailSocialValidCheckResultBean> {
 
     @Override
     protected Single<IsEmailSocialValidCheckResultBean> getAPI(IsEmailSocialValidCheckRequestBean requestBean) {

+ 2 - 2
app/src/main/java/kr/co/zumo/app/lifeplus/zumo/model/module/APIFindIdModule.java

@@ -1,12 +1,12 @@
 package kr.co.zumo.app.lifeplus.zumo.model.module;
 
 import io.reactivex.Single;
-import kr.co.zumo.app.lifeplus.model.module.LifeplusAPIModule;
+import kr.co.zumo.app.lifeplus.model.module.ZumoAPIModule;
 import kr.co.zumo.app.lifeplus.network.api.LifeplusAPIRepository;
 import kr.co.zumo.app.lifeplus.zumo.bean.api.FindIDRequestBean;
 import kr.co.zumo.app.lifeplus.zumo.bean.api.FindIDResultBean;
 
-public class APIFindIdModule extends LifeplusAPIModule<FindIDRequestBean, FindIDResultBean> {
+public class APIFindIdModule extends ZumoAPIModule<FindIDRequestBean, FindIDResultBean> {
 
     @Override
     protected Single<FindIDResultBean> getAPI(FindIDRequestBean requestBean) {

+ 2 - 2
app/src/main/java/kr/co/zumo/app/lifeplus/zumo/model/module/APIFindPasswordModule.java

@@ -2,11 +2,11 @@ package kr.co.zumo.app.lifeplus.zumo.model.module;
 
 import io.reactivex.Single;
 import kr.co.zumo.app.lifeplus.bean.api.LifeplusAPIBean;
-import kr.co.zumo.app.lifeplus.model.module.LifeplusAPIModule;
+import kr.co.zumo.app.lifeplus.model.module.ZumoAPIModule;
 import kr.co.zumo.app.lifeplus.network.api.LifeplusAPIRepository;
 import kr.co.zumo.app.lifeplus.zumo.bean.api.FindPWRequestBean;
 
-public class APIFindPasswordModule extends LifeplusAPIModule<FindPWRequestBean, LifeplusAPIBean> {
+public class APIFindPasswordModule extends ZumoAPIModule<FindPWRequestBean, LifeplusAPIBean> {
 
     @Override
     protected Single<LifeplusAPIBean> getAPI(FindPWRequestBean requestBean) {

+ 2 - 2
app/src/main/java/kr/co/zumo/app/lifeplus/zumo/model/module/APIMemberInfoByUserNoModule.java

@@ -6,14 +6,14 @@ import io.reactivex.Single;
 import kr.co.zumo.app.lifeplus.bean.api.ContentsFlagBean;
 import kr.co.zumo.app.lifeplus.bean.api.ContentsFlagResultBean;
 import kr.co.zumo.app.lifeplus.helper.FirebaseMessagingHelper;
-import kr.co.zumo.app.lifeplus.model.module.LifeplusAPIModule;
+import kr.co.zumo.app.lifeplus.model.module.ZumoAPIModule;
 import kr.co.zumo.app.lifeplus.network.api.LifeplusAPIRepository;
 import kr.co.zumo.app.lifeplus.supervisor.ContentsFlagHelper;
 import kr.co.zumo.app.lifeplus.view.screen.setting.MemberInfoModelHelper;
 import kr.co.zumo.app.lifeplus.zumo.bean.api.MemberInfoByUserNoRequestBean;
 import kr.co.zumo.app.lifeplus.zumo.bean.api.MemberInfoResultBean;
 
-public class APIMemberInfoByUserNoModule extends LifeplusAPIModule<MemberInfoByUserNoRequestBean, MemberInfoResultBean> {
+public class APIMemberInfoByUserNoModule extends ZumoAPIModule<MemberInfoByUserNoRequestBean, MemberInfoResultBean> {
 
   @Override
   protected Single<MemberInfoResultBean> getAPI(MemberInfoByUserNoRequestBean requestBean) {

+ 2 - 4
app/src/main/java/kr/co/zumo/app/lifeplus/zumo/model/module/APIMemberLoginModule.java

@@ -1,14 +1,12 @@
 package kr.co.zumo.app.lifeplus.zumo.model.module;
 
 import io.reactivex.Single;
-import kr.co.zumo.app.lifeplus.model.module.LifeplusAPIModule;
+import kr.co.zumo.app.lifeplus.model.module.ZumoAPIModule;
 import kr.co.zumo.app.lifeplus.network.api.LifeplusAPIRepository;
-import kr.co.zumo.app.lifeplus.zumo.bean.api.MemberInfoByUserNoRequestBean;
-import kr.co.zumo.app.lifeplus.zumo.bean.api.MemberInfoResultBean;
 import kr.co.zumo.app.lifeplus.zumo.bean.api.MemberLoginRequestBean;
 import kr.co.zumo.app.lifeplus.zumo.bean.api.MemberLoginResultBean;
 
-public class APIMemberLoginModule extends LifeplusAPIModule<MemberLoginRequestBean, MemberLoginResultBean> {
+public class APIMemberLoginModule extends ZumoAPIModule<MemberLoginRequestBean, MemberLoginResultBean> {
 
     @Override
     protected Single<MemberLoginResultBean> getAPI(MemberLoginRequestBean requestBean) {

+ 2 - 2
app/src/main/java/kr/co/zumo/app/lifeplus/zumo/model/module/APISetMemberJoinModule.java

@@ -1,12 +1,12 @@
 package kr.co.zumo.app.lifeplus.zumo.model.module;
 
 import io.reactivex.Single;
-import kr.co.zumo.app.lifeplus.model.module.LifeplusAPIModule;
+import kr.co.zumo.app.lifeplus.model.module.ZumoAPIModule;
 import kr.co.zumo.app.lifeplus.network.api.LifeplusAPIRepository;
 import kr.co.zumo.app.lifeplus.zumo.bean.api.MemberJoinRequestBean;
 import kr.co.zumo.app.lifeplus.zumo.bean.api.MemberJoinResultBean;
 
-public class APISetMemberJoinModule extends LifeplusAPIModule<MemberJoinRequestBean, MemberJoinResultBean> {
+public class APISetMemberJoinModule extends ZumoAPIModule<MemberJoinRequestBean, MemberJoinResultBean> {
 
     @Override
     protected Single<MemberJoinResultBean> getAPI(MemberJoinRequestBean requestBean) {