Explorar el Código

1. Profile API 변경

aaron hace 7 años
padre
commit
8cd7a35130

+ 1 - 1
.idea/misc.xml

@@ -25,5 +25,5 @@
       </value>
     </option>
   </component>
-  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_7" project-jdk-name="1.8" project-jdk-type="JavaSDK" />
+  <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK" />
 </project>

+ 0 - 6
app/app.iml

@@ -32,7 +32,6 @@
       <sourceFolder url="file://$MODULE_DIR$/build/generated/source/aidl/debug" isTestSource="false" generated="true" />
       <sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/debug" isTestSource="false" generated="true" />
       <sourceFolder url="file://$MODULE_DIR$/build/generated/source/rs/debug" isTestSource="false" generated="true" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/fabric/res/debug" type="java-resource" />
       <sourceFolder url="file://$MODULE_DIR$/build/generated/res/google-services/debug" type="java-resource" />
       <sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/debug" type="java-resource" />
       <sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/debug" type="java-resource" />
@@ -127,7 +126,6 @@
     <orderEntry type="library" name="Gradle: com.android.support:support-media-compat-27.1.1" level="project" />
     <orderEntry type="library" name="Gradle: com.android.support:support-core-ui-27.1.1" level="project" />
     <orderEntry type="library" name="Gradle: com.google.android.gms:play-services-tasks-license-11.8.0" level="project" />
-    <orderEntry type="library" name="Gradle: io.fabric.sdk.android:fabric-1.4.0-SNAPSHOT" level="project" />
     <orderEntry type="library" name="Gradle: com.google.firebase:firebase-messaging-license-11.8.0" level="project" />
     <orderEntry type="library" scope="TEST" name="Gradle: com.android.support.test:rules-1.0.1" level="project" />
     <orderEntry type="library" scope="TEST" name="Gradle: javax.inject:javax.inject:1@jar" level="project" />
@@ -144,7 +142,6 @@
     <orderEntry type="library" name="Gradle: android.arch.lifecycle:runtime-1.1.0" level="project" />
     <orderEntry type="library" scope="TEST" name="Gradle: com.android.support.test:runner-1.0.1" level="project" />
     <orderEntry type="library" name="Gradle: com.android.support:transition-27.1.1" level="project" />
-    <orderEntry type="library" name="Gradle: com.crashlytics.sdk.android:crashlytics-2.7.0-SNAPSHOT" level="project" />
     <orderEntry type="library" name="Gradle: com.google.firebase:firebase-common-11.8.0" level="project" />
     <orderEntry type="library" name="Gradle: com.android.support:support-annotations:27.1.1@jar" level="project" />
     <orderEntry type="library" name="Gradle: com.google.firebase:firebase-analytics-impl-license-11.8.0" level="project" />
@@ -162,18 +159,15 @@
     <orderEntry type="library" name="Gradle: com.github.bumptech.glide:disklrucache:4.7.1@jar" level="project" />
     <orderEntry type="library" scope="TEST" name="Gradle: com.google.code.findbugs:jsr305:2.0.1@jar" level="project" />
     <orderEntry type="library" scope="TEST" name="Gradle: com.android.support.test.espresso:espresso-core-3.0.1" level="project" />
-    <orderEntry type="library" name="Gradle: com.crashlytics.sdk.android:answers-1.4.0-SNAPSHOT" level="project" />
     <orderEntry type="library" name="Gradle: com.android.support.constraint:constraint-layout-1.0.2" level="project" />
     <orderEntry type="library" scope="TEST" name="Gradle: junit:junit:4.12@jar" level="project" />
     <orderEntry type="library" scope="TEST" name="Gradle: org.hamcrest:hamcrest-core:1.3@jar" level="project" />
-    <orderEntry type="library" name="Gradle: com.crashlytics.sdk.android:beta-1.2.6-SNAPSHOT" level="project" />
     <orderEntry type="library" scope="TEST" name="Gradle: com.android.support.test.espresso:espresso-idling-resource-3.0.1" level="project" />
     <orderEntry type="library" name="Gradle: android.arch.lifecycle:livedata-core-1.1.0" level="project" />
     <orderEntry type="library" name="Gradle: com.github.bumptech.glide:gifdecoder-4.7.1" level="project" />
     <orderEntry type="library" name="Gradle: com.google.android.gms:play-services-tasks-11.8.0" level="project" />
     <orderEntry type="library" scope="TEST" name="Gradle: org.hamcrest:hamcrest-integration:1.3@jar" level="project" />
     <orderEntry type="library" scope="TEST" name="Gradle: org.hamcrest:hamcrest-library:1.3@jar" level="project" />
-    <orderEntry type="library" name="Gradle: com.crashlytics.sdk.android:crashlytics-core-2.4.0-SNAPSHOT" level="project" />
     <orderEntry type="library" name="Gradle: com.github.bumptech.glide:annotations:4.7.1@jar" level="project" />
     <orderEntry type="library" name="Gradle: android.arch.core:common:1.1.0@jar" level="project" />
     <orderEntry type="library" name="Gradle: com.squareup.okio:okio:1.12.0@jar" level="project" />

+ 7 - 0
app/src/main/java/kr/co/hanwha/hifive/adapter/contract/TaskDetailListContract.java

@@ -41,6 +41,13 @@ public interface TaskDetailListContract {
          * 댓글 삭제 선택
          */
         void onDeleteCommentClicked(MessageListData data);
+
+        /**
+         * 댓글 작성자 이미지 클릭
+         *
+         * @param selectedMemberId 댓글 작성자 멤버 ID
+         */
+        void onCommentAuthorImageClicked(int selectedMemberId);
     }
 
     interface View {

+ 7 - 0
app/src/main/java/kr/co/hanwha/hifive/adapter/viewholder/CommentListViewHolder.java

@@ -82,6 +82,13 @@ public class CommentListViewHolder extends BaseViewHolder {
             else
                 GlideUtil.getInstance().loadImageCircle(getContext(), data.getProfile_url(), mImageViewAuthor);
 
+            mImageViewAuthor.setOnClickListener(new View.OnClickListener() {
+                @Override
+                public void onClick(View view) {
+                    mOnTaskDetailListener.onCommentAuthorImageClicked(data.getMember_id());
+                }
+            });
+
             mImageViewDot.setVisibility(HFDateUtil.checkIsToday(data.getCreated_at(), HFDateUtil.FORMAT_COMMON_SERVER) ? View.VISIBLE : View.GONE);
 
             mTextViewAuthor.setText(data.getMember_name());

+ 2 - 2
app/src/main/java/kr/co/hanwha/hifive/data/source/MyHomeDataRepository.java

@@ -23,11 +23,11 @@ public class MyHomeDataRepository implements MyHomeDataSource {
     }
 
     @Override
-    public void requestMyHomeGetProfile(@NonNull Context context, @NonNull final HanwhaNetworkCallback<ProfileRoot> callback) {
+    public void requestMyHomeGetProfile(@NonNull Context context, int memberId, @NonNull final HanwhaNetworkCallback<ProfileRoot> callback) {
         String encryption_member_id = MemberDataRepository.getInstance().getEncryptionMemberId();
 
         HFNetworkUtil networkUtil = new HFNetworkUtil();
-        networkUtil.requestMyHomeGetProfile(context, encryption_member_id, new HanwhaNetworkCallback<ProfileRoot>() {
+        networkUtil.requestMyHomeGetProfile(context, encryption_member_id, memberId, new HanwhaNetworkCallback<ProfileRoot>() {
             @Override
             public void onSuccess(ProfileRoot response) {
                 callback.onSuccess(response);

+ 1 - 1
app/src/main/java/kr/co/hanwha/hifive/data/source/contract/MyHomeDataSource.java

@@ -15,5 +15,5 @@ public interface MyHomeDataSource extends BaseDataSource {
      * @param context  Context
      * @param callback 콜백
      */
-    void requestMyHomeGetProfile(@NonNull Context context, @NonNull HanwhaNetworkCallback<ProfileRoot> callback);
+    void requestMyHomeGetProfile(@NonNull Context context, int memberId, @NonNull HanwhaNetworkCallback<ProfileRoot> callback);
 }

+ 1 - 0
app/src/main/java/kr/co/hanwha/hifive/network/HFNetworkContract.java

@@ -785,6 +785,7 @@ public interface HFNetworkContract {
      */
     void requestMyHomeGetProfile(@NonNull Context context,
                                  @NonNull String encryption_member_id,
+                                 int memberId,
                                  @Nullable HanwhaNetworkCallback callback);
 
 }

+ 7 - 1
app/src/main/java/kr/co/hanwha/hifive/network/HFNetworkUtil.java

@@ -953,7 +953,7 @@ public class HFNetworkUtil extends HanwhaNetworkUtil implements HFNetworkContrac
     }
 
     @Override
-    public void requestMyHomeGetProfile(@NonNull Context context, @NonNull String encryption_member_id, @Nullable HanwhaNetworkCallback callback) {
+    public void requestMyHomeGetProfile(@NonNull Context context, @NonNull String encryption_member_id, int memberId, @Nullable HanwhaNetworkCallback callback) {
         HanwhaNetworkClient.REST rest = HanwhaNetworkClient.REST.POST;
 
         String url = MEMBERS_GET_PROFILE;
@@ -961,6 +961,12 @@ public class HFNetworkUtil extends HanwhaNetworkUtil implements HFNetworkContrac
         HashMap<String, Object> map = new HashMap<>();
         map.put(PARAM_ENCRYPTION_MEMBER_ID, encryption_member_id);
 
+        if (memberId != 0) {
+            ArrayList memberIds = new ArrayList<>();
+            memberIds.add(memberId);
+            map.put(PARAM_LIST_MEMBER_INFO, memberIds);
+        }
+
         mHanwhaNetworkCallback = callback;
 
         HanwhaNetworkClient client = new HanwhaNetworkClient();

+ 4 - 9
app/src/main/java/kr/co/hanwha/hifive/screen/main/setting/MainSettingPresenter.java

@@ -36,8 +36,6 @@ public class MainSettingPresenter implements MainSettingContract.Presenter {
     private MainSettingContract.View mView;
     private boolean mLastChecked = false;
     private String mDownloadUrl = BuildConfig.DOWNLOAD_URL;
-    private String mMemberName;
-    private String mLoginId;
 
     public MainSettingPresenter(@NonNull Activity activity, @NonNull Context context, MainSettingContract.View view) {
         mActivity = activity;
@@ -64,17 +62,14 @@ public class MainSettingPresenter implements MainSettingContract.Presenter {
 
     @Override
     public void initMemberHrInfo(final boolean needNotification) {
-        mMemberName = MemberDataRepository.getInstance().getLoginData().getName();
-//        String login = MemberDataRepository.getInstance().getLoginData().getLogin();
-//        mView.setMemberInfo(name, login, "");
-
         MemberDataRepository.getInstance().getMemberHrInfo(getContext(), new HanwhaNetworkCallback<MemberHrDataRoot>() {
             @Override
             public void onSuccess(MemberHrDataRoot response) {
                 if (response != null) {
-                    mLoginId = response.getLogin();
+                    String loginId = response.getLogin();
+                    String memberName = MemberDataRepository.getInstance().getLoginData().getName();
                     String rank = response.getRank();
-                    mView.setMemberInfo(mMemberName, mLoginId, rank);
+                    mView.setMemberInfo(memberName, loginId, rank);
                 }
             }
 
@@ -280,7 +275,7 @@ public class MainSettingPresenter implements MainSettingContract.Presenter {
 
         @Override
         public void onMyHomeClicked() {
-            HFActivityUtil.startMyHomeActivity(getActivity(), mMemberName, mLoginId);
+            HFActivityUtil.startMyHomeActivity(getActivity(), MemberDataRepository.getInstance().getLoginData().getMember_id());
         }
     };
 

+ 15 - 10
app/src/main/java/kr/co/hanwha/hifive/screen/main/setting/myhome/MyHomeActivity.java

@@ -18,6 +18,7 @@ import java.util.List;
 import kr.co.hanwha.hifive.R;
 import kr.co.hanwha.hifive.adapter.SettingMyHomeTodoListAdapter;
 import kr.co.hanwha.hifive.base.BaseActivity;
+import kr.co.hanwha.hifive.data.model.ProfileData;
 import kr.co.hanwha.hifive.data.model.ProjectInfoData;
 import kr.co.hanwha.hifive.data.model.TaskData;
 import kr.co.hanwha.hifive.enums.BaseAnimationType;
@@ -54,6 +55,7 @@ public class MyHomeActivity extends BaseActivity implements MyHomeContract.View
     public static final int INDEX_PROFILE = 2;
 
     private int mTabIndex = 0;
+    private int mMemberId = 0;
 
     @Override
     protected int getContentViewResource() {
@@ -74,11 +76,13 @@ public class MyHomeActivity extends BaseActivity implements MyHomeContract.View
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
 
+        if (getIntent() != null) mMemberId = getIntent().getIntExtra(HFActivityUtil.INTENT_MEMBER_ID, 0);
+
         initLayout();
 
         initPresenter();
 
-        mPresenter.initDataProfile(true);
+        mPresenter.initDataProfile(mMemberId, true);
 
         if (mTabIndex >= 0 && mTabIndex <= 2)
             mViewPager.setCurrentItem(mTabIndex);
@@ -93,11 +97,11 @@ public class MyHomeActivity extends BaseActivity implements MyHomeContract.View
     private void initLayout() {
         setToolbarBackgroundColor(R.color.hf_grey19);
 
-        String memberName = getIntent().getStringExtra(HFActivityUtil.INTENT_MEMBER_NAME);
-        String loginId = getIntent().getStringExtra(HFActivityUtil.INTENT_MEMBER_LOGIN_ID);
+//        String memberName = getIntent().getStringExtra(HFActivityUtil.INTENT_MEMBER_NAME);
+//        String loginId = getIntent().getStringExtra(HFActivityUtil.INTENT_MEMBER_LOGIN_ID);
 
         mMyHomeHeaderView = (HFMyHomeHeaderView) findViewById(R.id.myHomeHeaderView);
-        mMyHomeHeaderView.setMemberInfo(memberName, loginId);
+//        mMyHomeHeaderView.setMemberInfo(memberName, loginId);
         mMyHomeHeaderView.setOnMyHomeClickListener(onMyHomeClickListener);
 
         mViewOkr = LayoutInflater.from(this).inflate(R.layout.fragment_setting_my_home_okr, null);
@@ -230,11 +234,12 @@ public class MyHomeActivity extends BaseActivity implements MyHomeContract.View
     }
 
     @Override
-    public void setProfile(String company, String rank, String phone) {
-        mTextViewCompany.setText(company);
-        mTextViewPosition.setText(rank);
-        if (phone != null && phone.isEmpty() == false)
-            mTextViewCellphone.setText(phone);
+    public void setProfile(@NonNull ProfileData profileData) {
+        mMyHomeHeaderView.setMemberInfo(profileData.getMember_name(), profileData.getLogin_id());
+        mTextViewCompany.setText(profileData.getCompany());
+        mTextViewPosition.setText(profileData.getRank_title());
+        if (profileData.getPhone_mobile() != null && profileData.getPhone_mobile().isEmpty() == false)
+            mTextViewCellphone.setText(profileData.getPhone_mobile());
         else
             mTextViewCellphone.setText(getString(R.string.setting_my_home_profile_empty_phone));
     }
@@ -263,7 +268,7 @@ public class MyHomeActivity extends BaseActivity implements MyHomeContract.View
     SwipeRefreshLayout.OnRefreshListener onProfileRefreshListener = new SwipeRefreshLayout.OnRefreshListener() {
         @Override
         public void onRefresh() {
-            mPresenter.initDataProfile(false);
+            mPresenter.initDataProfile(mMemberId, false);
         }
     };
 

+ 3 - 3
app/src/main/java/kr/co/hanwha/hifive/screen/main/setting/myhome/MyHomePresenter.java

@@ -88,12 +88,12 @@ class MyHomePresenter implements MyHomeContract.Presenter {
     }
 
     @Override
-    public void initDataProfile(@NonNull final boolean needLoading) {
-        MyHomeDataRepository.getInstance().requestMyHomeGetProfile(getContext(), new HanwhaNetworkCallback<ProfileRoot>() {
+    public void initDataProfile(int memberId, @NonNull final boolean needLoading) {
+        MyHomeDataRepository.getInstance().requestMyHomeGetProfile(getContext(), memberId, new HanwhaNetworkCallback<ProfileRoot>() {
             @Override
             public void onSuccess(ProfileRoot response) {
                 ProfileData data = response.getMemberProfile();
-                mView.setProfile(data.getCompany(), data.getRank_title(), data.getPhone_mobile());
+                mView.setProfile(data);
                 mView.setProfileUnit(data.getListMemberProjects());
             }
 

+ 3 - 2
app/src/main/java/kr/co/hanwha/hifive/screen/main/setting/myhome/contract/MyHomeContract.java

@@ -7,6 +7,7 @@ import java.util.List;
 import kr.co.hanwha.hifive.base.BasePresenter;
 import kr.co.hanwha.hifive.base.BaseView;
 import kr.co.hanwha.hifive.data.model.MemberHrData;
+import kr.co.hanwha.hifive.data.model.ProfileData;
 import kr.co.hanwha.hifive.data.model.ProjectInfoData;
 import kr.co.hanwha.hifive.data.model.TaskData;
 
@@ -44,7 +45,7 @@ public interface MyHomeContract {
 
         void setTabIndex(int index);
 
-        void setProfile(String company, String rank, String phone);
+        void setProfile(@NonNull ProfileData profileData);
 
         void setProfileUnit(List<ProjectInfoData> projects);
     }
@@ -82,7 +83,7 @@ public interface MyHomeContract {
          *
          * @param needLoading 프로그래스 바 노출
          */
-        void initDataProfile(@NonNull boolean needLoading);
+        void initDataProfile(int memberId, @NonNull boolean needLoading);
 
     }
 }

+ 5 - 0
app/src/main/java/kr/co/hanwha/hifive/screen/task/TaskDetailActivity.java

@@ -405,6 +405,11 @@ public class TaskDetailActivity extends BaseActivity implements TaskDetailContra
                     });
 
         }
+
+        @Override
+        public void onCommentAuthorImageClicked(int selectedMemberId) {
+            HFActivityUtil.startMyHomeActivity(TaskDetailActivity.this, selectedMemberId);
+        }
     };
 
     /**************************************************

+ 2 - 3
app/src/main/java/kr/co/hanwha/hifive/util/HFActivityUtil.java

@@ -580,13 +580,12 @@ public class HFActivityUtil {
      *
      * @param activity Activity
      */
-    public static void startMyHomeActivity(@NonNull Activity activity, @NonNull String name, @NonNull String loginId) {
+    public static void startMyHomeActivity(@NonNull Activity activity, int memberId) {
         if (MyHomeActivity.class.getSimpleName().equals(LAST_TAG)) return;
         LAST_TAG = MyHomeActivity.class.getSimpleName();
 
         Intent intent = new Intent(activity, MyHomeActivity.class);
-        intent.putExtra(INTENT_MEMBER_NAME, name);
-        intent.putExtra(INTENT_MEMBER_LOGIN_ID, loginId);
+        intent.putExtra(INTENT_MEMBER_ID, memberId);
         intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
         activity.startActivity(intent);
     }