Explorar o código

修改获取用户详情

316044749 %!s(int64=7) %!d(string=hai) anos
pai
achega
c5ff7dd63e

+ 51 - 0
app/src/main/java/com/ynstkz/shitu/android/activity/CourseDetailActivity.java

@@ -2,9 +2,15 @@ package com.ynstkz.shitu.android.activity;
 
 import android.os.Bundle;
 import android.support.annotation.Nullable;
+import android.text.TextUtils;
 
+import com.common.library.okhttp.callback.Callback;
 import com.ynstkz.shitu.android.R;
 import com.ynstkz.shitu.android.base.TitleBarActivity;
+import com.ynstkz.shitu.android.data.RequestGroup;
+
+import okhttp3.Call;
+import okhttp3.Response;
 
 /**
  * 作者:fuchangle on 2018/2/27 10:45
@@ -12,9 +18,14 @@ import com.ynstkz.shitu.android.base.TitleBarActivity;
 
 public class CourseDetailActivity extends TitleBarActivity{
 
+    private String courseId;
+
     @Override
     protected void onCreate(@Nullable Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
+        initView();
+        initData();
+        setListener();
     }
 
     @Override
@@ -23,4 +34,44 @@ public class CourseDetailActivity extends TitleBarActivity{
     }
 
 
+    private void initView(){
+
+    }
+
+    private void initData(){
+        courseId = getIntent().getStringExtra("courseId");
+        if(TextUtils.isEmpty(courseId)){
+            finish();
+            return;
+        }
+        getCourseDetail(courseId);
+    }
+
+    private void setListener(){
+
+    }
+
+    /**
+     * 课程详情
+     * @param courseId
+     */
+    private void getCourseDetail(String courseId){
+
+        RequestGroup.getCourseDetail(courseId, new Callback() {
+            @Override
+            public Object parseNetworkResponse(Response response, int id) throws Exception {
+                return null;
+            }
+
+            @Override
+            public void onError(Call call, Exception e, int id) {
+
+            }
+
+            @Override
+            public void onResponse(Object response, int id) {
+
+            }
+        });
+    }
 }

+ 5 - 1
app/src/main/java/com/ynstkz/shitu/android/activity/HomeActivity.java

@@ -63,6 +63,7 @@ public class HomeActivity extends TitleBarActivity implements AMapLocationListen
 
     private Fragment[] mFragments;
     private int tabIndex;
+    private boolean isLocationSuccess;
 
     //定位
     public AMapLocationClient mlocationClient;
@@ -173,6 +174,7 @@ public class HomeActivity extends TitleBarActivity implements AMapLocationListen
     public void onLocationChanged(AMapLocation amapLocation) {
         if (amapLocation != null) {
             if (amapLocation.getErrorCode() == 0) {
+                isLocationSuccess = true;
                 EventBus.getDefault().post(new LocationChangedEvent(amapLocation));
                 SharedPreferencesUtils.setLocation(amapLocation.getDistrict());
             } else {
@@ -190,7 +192,9 @@ public class HomeActivity extends TitleBarActivity implements AMapLocationListen
         if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION)
                 == PackageManager.PERMISSION_GRANTED) {
             //启动定位
-            mlocationClient.startLocation();
+            if(!isLocationSuccess){
+                mlocationClient.startLocation();
+            }
         } else if (ActivityCompat.shouldShowRequestPermissionRationale(this,
                 Manifest.permission.ACCESS_COARSE_LOCATION)) {
             ConfirmationDialogFragment

+ 7 - 1
app/src/main/java/com/ynstkz/shitu/android/activity/UserInfoActivity.java

@@ -11,7 +11,9 @@ import android.widget.TextView;
 import com.common.library.cache.Cache;
 import com.common.library.view.materialdialog.MaterialDialog;
 import com.ynstkz.shitu.android.R;
+import com.ynstkz.shitu.android.application.STSign;
 import com.ynstkz.shitu.android.base.TitleBarActivity;
+import com.ynstkz.shitu.android.bean.UserInfoBean;
 import com.ynstkz.shitu.android.data.SharedPreferencesUtils;
 import com.ynstkz.shitu.android.event.LogoutEvent;
 
@@ -69,7 +71,11 @@ public class UserInfoActivity extends TitleBarActivity {
     }
 
     private void initData(){
-
+        UserInfoBean userInfoBean = STSign.getInstance().getUserInfo();
+        if(userInfoBean != null && userInfoBean.getData() != null){
+            tvUsername.setText(userInfoBean.getData().getUserName());
+            tvPhoneNumber.setText(userInfoBean.getData().getMobile());
+        }
     }
 
     private void setListener(){

+ 1 - 1
app/src/main/java/com/ynstkz/shitu/android/adapter/HomeBannerAdapter.java

@@ -62,7 +62,7 @@ public class HomeBannerAdapter extends PagerAdapter{
         imageView.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View view) {
-                context.startActivity(new Intent(context, CourseDetailActivity.class));
+                context.startActivity(new Intent(context, CourseDetailActivity.class).putExtra("courseId", "1"));
             }
         });
         return imageView;

+ 19 - 0
app/src/main/java/com/ynstkz/shitu/android/application/STSign.java

@@ -1,6 +1,9 @@
 package com.ynstkz.shitu.android.application;
 
+import com.common.library.cache.Cache;
 import com.common.library.okhttp.callback.Callback;
+import com.ynstkz.shitu.android.bean.UserInfoBean;
+import com.ynstkz.shitu.android.common.Constants;
 import com.ynstkz.shitu.android.data.RequestGroup;
 import com.ynstkz.shitu.android.listener.CheckVerifyCodeCallback;
 import com.ynstkz.shitu.android.listener.VerifyCodeCallback;
@@ -20,9 +23,25 @@ public class STSign {
         return ourInstance;
     }
 
+    private UserInfoBean userInfoBean;
+
     private STSign() {
     }
 
+    public UserInfoBean getUserInfo(){
+        if(userInfoBean != null){
+            return userInfoBean;
+        }
+        Cache<UserInfoBean> cache = new Cache();
+        userInfoBean = cache.get(Constants.CACHE_USER_KEY);
+        return userInfoBean;
+    }
+
+    public void setUserInfo(UserInfoBean userInfo){
+        this.userInfoBean = userInfo;
+        Cache.put(Constants.CACHE_USER_KEY, userInfo);
+    }
+
     /**
      * 获取验证码
      * 1-注册;2-登录;3-重置密码;4-修改手机号

+ 5 - 4
app/src/main/java/com/ynstkz/shitu/android/bean/UserInfoBean.java

@@ -1,9 +1,9 @@
 package com.ynstkz.shitu.android.bean;
 
+import com.google.gson.annotations.SerializedName;
 import com.ynstkz.shitu.android.base.BaseBean;
 
 import java.io.Serializable;
-import java.util.List;
 
 /**
  * 作者:fuchangle on 2018/2/28 16:11
@@ -11,13 +11,14 @@ import java.util.List;
 
 public class UserInfoBean extends BaseBean{
 
-    private List<DataBean> data;
 
-    public List<DataBean> getData() {
+    private DataBean data;
+
+    public DataBean getData() {
         return data;
     }
 
-    public void setData(List<DataBean> data) {
+    public void setData(DataBean data) {
         this.data = data;
     }
 

+ 18 - 1
app/src/main/java/com/ynstkz/shitu/android/data/RequestGroup.java

@@ -1,5 +1,8 @@
 package com.ynstkz.shitu.android.data;
 
+import android.text.TextUtils;
+
+import com.common.library.cache.Cache;
 import com.common.library.okhttp.OkHttpUtils;
 import com.common.library.okhttp.callback.Callback;
 import com.google.gson.Gson;
@@ -251,7 +254,7 @@ public class RequestGroup {
     }
 
     /**
-     * 获取附近机构列表
+     * 获取机构列表
      * @param pageNumber
      * @param pageSize
      * @param callback
@@ -260,6 +263,10 @@ public class RequestGroup {
         Map<String, String> params = getSystemParams();
         params.put("pageNumber",pageNumber);
         params.put("pageSize", pageSize);
+        if(!TextUtils.isEmpty(location)){
+            params.put("location", location);
+        }
+
         OkHttpUtils.get().url(UrlCat.URL_AGENCY_LIST).params(params).build().execute(callback);
     }
 
@@ -294,4 +301,14 @@ public class RequestGroup {
         params.put("memberId", memberId);
         OkHttpUtils.get().url(UrlCat.URL_AGENCY_DETAIL).params(params).build().execute(callback);
     }
+
+    /**
+     * 课程详情
+     * @param courseId
+     */
+    public static void getCourseDetail(String courseId, Callback callback){
+        Map<String, String> params = getSystemParams();
+        params.put("courseId", courseId);
+        OkHttpUtils.get().url(UrlCat.URL_COURSE_DETAIL).params(params).build().execute(callback);
+    }
 }

+ 5 - 0
app/src/main/java/com/ynstkz/shitu/android/data/UrlCat.java

@@ -127,6 +127,11 @@ public class UrlCat {
      * 机构详情
      */
     public static final String URL_AGENCY_DETAIL = HOST + "api/agency/detail";
+
+    /**
+     * 课程详情
+     */
+    public static final String URL_COURSE_DETAIL = HOST + "api/course/detail";
 }
 
 

+ 20 - 1
app/src/main/java/com/ynstkz/shitu/android/fragment/UserCenterFragment.java

@@ -9,6 +9,8 @@ import android.widget.AdapterView;
 import android.widget.ImageView;
 import android.widget.TextView;
 
+import com.bumptech.glide.Glide;
+import com.common.library.cache.Cache;
 import com.common.library.okhttp.callback.Callback;
 import com.google.gson.Gson;
 import com.ynstkz.shitu.android.R;
@@ -20,11 +22,18 @@ import com.ynstkz.shitu.android.activity.SettingActivity;
 import com.ynstkz.shitu.android.activity.StudentInfoActivity;
 import com.ynstkz.shitu.android.activity.UserInfoActivity;
 import com.ynstkz.shitu.android.adapter.UserCenterOptionGridAdapter;
+import com.ynstkz.shitu.android.application.STSign;
 import com.ynstkz.shitu.android.base.BaseFragment;
 import com.ynstkz.shitu.android.bean.UserInfoBean;
+import com.ynstkz.shitu.android.common.Constants;
 import com.ynstkz.shitu.android.data.RequestGroup;
+import com.ynstkz.shitu.android.event.LoginEvent;
 import com.ynstkz.shitu.android.view.ScrollViewWithGridView;
 
+import org.greenrobot.eventbus.EventBus;
+import org.greenrobot.eventbus.Subscribe;
+import org.greenrobot.eventbus.ThreadMode;
+
 import java.util.Arrays;
 import java.util.List;
 
@@ -70,6 +79,7 @@ public class UserCenterFragment extends BaseFragment {
 
 
     private void initData() {
+        EventBus.getDefault().register(this);
         List<String> listUserOption = Arrays.asList(getResources().getStringArray(R.array.usercenter_option));
         UserCenterOptionGridAdapter userCenterOptionGridAdapter = new UserCenterOptionGridAdapter(getActivity(), listUserOption);
         gvMine.setAdapter(userCenterOptionGridAdapter);
@@ -156,7 +166,8 @@ public class UserCenterFragment extends BaseFragment {
                 UserInfoBean userInfoBean = (UserInfoBean)response;
                 if(userInfoBean != null){
                     if("200".equals(userInfoBean.getCode())){
-
+                        initUserInfo(userInfoBean);
+                        STSign.getInstance().setUserInfo(userInfoBean);
                     }
                 }
             }
@@ -170,11 +181,19 @@ public class UserCenterFragment extends BaseFragment {
         if(userInfoBean == null){
             return;
         }
+        tvUsername.setText(userInfoBean.getData().getUserName());
+        Glide.with(getActivity()).load(userInfoBean.getData().getHeadPic()).into(ivHead);
+    }
+
+    @Subscribe(threadMode = ThreadMode.MAIN)
+    public void onMessageEvent(LoginEvent event) {
+        getUserInfo();
     }
 
     @Override
     public void onDestroyView() {
         super.onDestroyView();
         ButterKnife.unbind(this);
+        EventBus.getDefault().unregister(this);
     }
 }

+ 3 - 3
app/src/main/res/layout/activity_org_detail.xml

@@ -72,10 +72,10 @@
 
                     <TextView
                         android:id="@+id/tv_address"
-                        android:layout_width="wrap_content"
+                        android:layout_width="@dimen/company_200dp"
                         android:layout_height="wrap_content"
                         android:layout_alignParentRight="true"
-                        android:text="昆明市盘龙区XX街道某某大厦20号" />
+                        android:maxLines="1"/>
 
                 </RelativeLayout>
 
@@ -102,7 +102,7 @@
                     android:layout_width="wrap_content"
                     android:layout_height="wrap_content"
                     android:layout_marginTop="@dimen/company_5dp"
-                    android:text="新东方创办于1993年,23年专注教育培训,累积培训学员超过2000万,从早教到成人,业务涵盖早教、学前、小学、中学、四六级、考研、出国考试、留学咨询、英语能力提升、国际游学、国际教育、图书、网络课堂等60多所学校,30000多名教职员工,旨在为学员提供一站式终身学习服务"
+                    android:ellipsize="end"
                     android:textColor="@color/color_666"
                     android:textSize="@dimen/company_14sp" />