From a97b79d9eb095f4b143457b4cd79940003f870bc Mon Sep 17 00:00:00 2001 From: 姚旭斌 <15805828761@163.com> Date: Fri, 16 Mar 2018 13:42:44 +0800 Subject: [PATCH] no message --- app/src/main/AndroidManifest.xml | 3 +++ app/src/main/java/com/shunzhi/parent/adapter/ChildAdapter.java | 33 ++++++++++++++++++++++----------- app/src/main/java/com/shunzhi/parent/api/MineApi.java | 4 ++++ app/src/main/java/com/shunzhi/parent/bean/ChildBean.java | 28 +++++++++++++++++++++++++--- app/src/main/java/com/shunzhi/parent/contract/mine/MyChildContract.java | 5 ++++- app/src/main/java/com/shunzhi/parent/model/mine/MyChildModel.java | 5 +++++ app/src/main/java/com/shunzhi/parent/presenter/mine/MyChildPresenter.java | 37 +++++++++++++++++++++++++++++++++---- app/src/main/java/com/shunzhi/parent/ui/activity/ChildDetialActivity.java | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ app/src/main/java/com/shunzhi/parent/ui/activity/MyChildActivity.java | 31 ++++++++++++++++++------------- app/src/main/java/com/shunzhi/parent/ui/activity/binding/CheckInfoActivity.java | 8 +++++++- app/src/main/java/com/shunzhi/parent/ui/activity/binding/CreateChildInfoActivity.java | 8 +++++++- app/src/main/java/com/shunzhi/parent/ui/activity/binding/SelectSchoolActivity.java | 6 ++++++ app/src/main/java/com/shunzhi/parent/ui/fragment/loginandregistfragment/LoginAndRegistFragment.java | 96 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++------------------------- app/src/main/res/drawable-xhdpi/arrow_left.png | Bin 578 -> 0 bytes app/src/main/res/drawable-xhdpi/arrow_right.png | Bin 506 -> 0 bytes app/src/main/res/layout/activity_child_detail.xml | 23 ++++++----------------- app/src/main/res/layout/fragment_login_and_regist.xml | 15 ++++++++++++++- app/src/main/res/layout/fragment_mine.xml | 4 ++-- app/src/main/res/layout/item_childlist.xml | 1 + 19 files changed, 284 insertions(+), 79 deletions(-) create mode 100644 app/src/main/java/com/shunzhi/parent/ui/activity/ChildDetialActivity.java diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 48d7a43..e2a8148 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -84,6 +84,9 @@ android:name=".ui.activity.StartActivity" android:screenOrientation="portrait" /> + diff --git a/app/src/main/java/com/shunzhi/parent/adapter/ChildAdapter.java b/app/src/main/java/com/shunzhi/parent/adapter/ChildAdapter.java index 56a1fff..0437ddd 100644 --- a/app/src/main/java/com/shunzhi/parent/adapter/ChildAdapter.java +++ b/app/src/main/java/com/shunzhi/parent/adapter/ChildAdapter.java @@ -2,50 +2,61 @@ package com.shunzhi.parent.adapter; import android.content.Context; +import android.content.Intent; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; +import com.google.gson.Gson; import com.share.mvpsdk.base.adapter.BaseRecyclerViewAdapter; import com.share.mvpsdk.base.adapter.BaseRecyclerViewHolder; import com.shunzhi.parent.R; import com.shunzhi.parent.bean.ChildBean; +import com.shunzhi.parent.ui.activity.ChildDetialActivity; /** * Created by Administrator on 2018/3/9 0009. */ -public class ChildAdapter extends BaseRecyclerViewAdapter{ +public class ChildAdapter extends BaseRecyclerViewAdapter { Context context; - public ChildAdapter(Context context){ - this.context=context; + + public ChildAdapter(Context context) { + this.context = context; } @Override public BaseRecyclerViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { - View view= LayoutInflater.from(context).inflate(R.layout.item_childlist,null); + View view = LayoutInflater.from(context).inflate(R.layout.item_childlist, null); return new MyViewHolder(view); } - private class MyViewHolder extends BaseRecyclerViewHolder{ + private class MyViewHolder extends BaseRecyclerViewHolder { - TextView txt_childname,txt_childclass; + TextView txt_childname, txt_childclass; public MyViewHolder(View view) { super(view); - txt_childname=view.findViewById(R.id.txt_childname); - txt_childclass=view.findViewById(R.id.txt_childclass); + txt_childname = view.findViewById(R.id.txt_childname); + txt_childclass = view.findViewById(R.id.txt_childclass); } @Override - public void onBindViewHolder(ChildBean object, int position) { + public void onBindViewHolder(final ChildBean object, int position) { txt_childname.setText(object.getStudentName()); - txt_childclass.setText(object.getSchoolName()+" "+object.getClassName()); - + txt_childclass.setText(object.getSchoolName() + " " + object.getClassName()); + itemView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + Gson g = new Gson(); + String jsonString = g.toJson(object, ChildBean.class).toString(); + context.startActivity(new Intent().putExtra("childJson", jsonString).setClass(context, ChildDetialActivity.class)); + } + }); } } diff --git a/app/src/main/java/com/shunzhi/parent/api/MineApi.java b/app/src/main/java/com/shunzhi/parent/api/MineApi.java index 3187ba0..e8b7304 100644 --- a/app/src/main/java/com/shunzhi/parent/api/MineApi.java +++ b/app/src/main/java/com/shunzhi/parent/api/MineApi.java @@ -36,5 +36,9 @@ public interface MineApi { @GET("/api/ParentHelper/GetClassOrGrade") ObservablegetGradeAndClass(@Query("state") int state,@Query("schoolid") int schoolId,@Query("gradeid") int gradeId); + + + @GET("/api/ParentHelper/UnBindStudent") + ObservableunBinding(@Query("parentId") int parentId,@Query("studentId") int studentId); } diff --git a/app/src/main/java/com/shunzhi/parent/bean/ChildBean.java b/app/src/main/java/com/shunzhi/parent/bean/ChildBean.java index 93358d9..567b2c8 100644 --- a/app/src/main/java/com/shunzhi/parent/bean/ChildBean.java +++ b/app/src/main/java/com/shunzhi/parent/bean/ChildBean.java @@ -6,8 +6,8 @@ import java.io.Serializable; * Created by Administrator on 2018/3/9 0009. */ -public class ChildBean implements Serializable{ - private String studentUserId; +public class ChildBean implements Serializable { + private String studentUserId; private int parentMobile; private int parentId; private boolean mobileFlag; @@ -17,13 +17,33 @@ public class ChildBean implements Serializable{ private String schoolName; private int grade; private String gradename; + private String areaName; + private String studentCode; private int classId; private String className; private int studentId; private String studentName; private String photo; + private String cityName; private int sex; + + public String getAreaName() { + return areaName; + } + + public void setAreaName(String areaName) { + this.areaName = areaName; + } + + public String getStudentCode() { + return studentCode; + } + + public void setStudentCode(String studentCode) { + this.studentCode = studentCode; + } + public String getStudentName() { return studentName; } @@ -128,7 +148,7 @@ public class ChildBean implements Serializable{ this.studentId = studentId; } - public String getStudentUserId() { + public String getStudentUserId() { return studentUserId; } @@ -170,6 +190,8 @@ public class ChildBean implements Serializable{ ",studentName='" + studentName + '\'' + ",studentUserId='" + studentUserId + '\'' + ",photo='" + photo + '\'' + + ",studentCode='" + studentCode + '\'' + + ",areaName='" + areaName + '\'' + ", sex=" + sex + "}"; } diff --git a/app/src/main/java/com/shunzhi/parent/contract/mine/MyChildContract.java b/app/src/main/java/com/shunzhi/parent/contract/mine/MyChildContract.java index 5f78082..3883c58 100644 --- a/app/src/main/java/com/shunzhi/parent/contract/mine/MyChildContract.java +++ b/app/src/main/java/com/shunzhi/parent/contract/mine/MyChildContract.java @@ -25,6 +25,8 @@ public interface MyChildContract { , int schoolId,int classId,int studentId,String studentUserId); public abstract void gradeAndClassResult(int state, int schooId,int gradeId); + public abstract void unBinndingResult(int parentId,int studentId); + } interface IMyChildModel extends IBaseModel { @@ -32,12 +34,13 @@ public interface MyChildContract { Observable addChildResult(int parentId, boolean mobileFlag,boolean cooperateFlag , int schoolId,int classId,int studentId,String studentUserId); Observable getGradeAndClass(int state, int schooId,int gradeId); + ObservableunBinnding(int parentId,int studentId); } interface IMyChildView extends IBaseActivity { - void updateChilsList(CurrentBean currentBean); + void updateChildList(CurrentBean currentBean); void addChildSuccess(); void showClass(Listlist); void showError(String error); diff --git a/app/src/main/java/com/shunzhi/parent/model/mine/MyChildModel.java b/app/src/main/java/com/shunzhi/parent/model/mine/MyChildModel.java index 6fa10dc..2bbab02 100644 --- a/app/src/main/java/com/shunzhi/parent/model/mine/MyChildModel.java +++ b/app/src/main/java/com/shunzhi/parent/model/mine/MyChildModel.java @@ -40,4 +40,9 @@ public class MyChildModel extends BaseModel implements MyChildContract.IMyChildM public Observable getGradeAndClass(int state, int schooId, int gradeId) { return RetrofitCreateHelper.getInstance().createApi(MineApi.class,MineApi.url).getGradeAndClass(state,schooId,gradeId).compose(RxHelper.rxSchedulerHelper()); } + + @Override + public Observable unBinnding(int parentId, int studentId) { + return RetrofitCreateHelper.getInstance().createApi(MineApi.class,MineApi.url).unBinding(parentId,studentId).compose(RxHelper.rxSchedulerHelper()); + } } diff --git a/app/src/main/java/com/shunzhi/parent/presenter/mine/MyChildPresenter.java b/app/src/main/java/com/shunzhi/parent/presenter/mine/MyChildPresenter.java index 8556b5e..c53477c 100644 --- a/app/src/main/java/com/shunzhi/parent/presenter/mine/MyChildPresenter.java +++ b/app/src/main/java/com/shunzhi/parent/presenter/mine/MyChildPresenter.java @@ -10,10 +10,14 @@ import com.shunzhi.parent.bean.UserInfo; import com.shunzhi.parent.contract.mine.MyChildContract; import com.shunzhi.parent.model.mine.MyChildModel; +import org.json.JSONObject; + import java.util.List; import io.reactivex.functions.Consumer; +import okhttp3.ResponseBody; import retrofit2.HttpException; +import retrofit2.Response; /** * Created by Administrator on 2018/3/8 0008. @@ -38,13 +42,22 @@ public class MyChildPresenter extends MyChildContract.MyChildPresenter { public void accept(UserInfo userInfo) throws Exception { CurrentBean currentBean = userInfo.getData(); // List list = currentBean.getStudentClass(); - mIView.updateChilsList(currentBean); + mIView.updateChildList(currentBean); } }, new Consumer() { @Override public void accept(Throwable throwable) throws Exception { - OkHttpExceptionUtil.handOkHttpException((HttpException) throwable); - mIView.showError("邀请码错误"); + Response response = ((HttpException)throwable).response(); + if (response==null)return; + ResponseBody responseBody = response.errorBody(); + if (responseBody==null)return; + try { + JSONObject json = new JSONObject(responseBody.string()); + mIView.showError(json.optString("message")); + } catch (Exception e1) { + e1.printStackTrace(); + } + } })); @@ -73,7 +86,7 @@ public class MyChildPresenter extends MyChildContract.MyChildPresenter { mRxManager.register(mIModel.getGradeAndClass(state, schooId, gradeId).subscribe(new Consumer() { @Override public void accept(GradeBean gradeBean) throws Exception { - List list=gradeBean.getData(); + List list = gradeBean.getData(); mIView.showClass(list); } }, new Consumer() { @@ -84,4 +97,20 @@ public class MyChildPresenter extends MyChildContract.MyChildPresenter { })); } + @Override + public void unBinndingResult(int parentId, int studentId) { + mRxManager.register(mIModel.unBinnding(parentId, studentId).subscribe(new Consumer() { + @Override + public void accept(JsonObject jsonObject) throws Exception { + ToastUtils.showToast(jsonObject.toString()); + mIView.showError("123"); + } + }, new Consumer() { + @Override + public void accept(Throwable throwable) throws Exception { + OkHttpExceptionUtil.handOkHttpException((HttpException) throwable); + } + })); + } + } diff --git a/app/src/main/java/com/shunzhi/parent/ui/activity/ChildDetialActivity.java b/app/src/main/java/com/shunzhi/parent/ui/activity/ChildDetialActivity.java new file mode 100644 index 0000000..64cb121 --- /dev/null +++ b/app/src/main/java/com/shunzhi/parent/ui/activity/ChildDetialActivity.java @@ -0,0 +1,56 @@ +package com.shunzhi.parent.ui.activity; + +import android.os.Bundle; +import android.text.TextUtils; +import android.view.View; +import android.widget.TextView; + +import com.google.gson.Gson; +import com.share.mvpsdk.base.activity.BaseCompatActivity; +import com.shunzhi.parent.R; +import com.shunzhi.parent.bean.ChildBean; + +/** + * Created by Administrator on 2018/3/16 0016. + */ + +public class ChildDetialActivity extends BaseCompatActivity { + TextView child_name, child_school, child_class, school_area, student_code,center_title,back; + + @Override + protected void initView(Bundle savedInstanceState) { + String childJson=getIntent().getStringExtra("childJson"); + child_name = findViewById(R.id.child_name); + child_school = findViewById(R.id.child_school); + child_class = findViewById(R.id.child_class); + school_area = findViewById(R.id.school_area); + student_code = findViewById(R.id.student_code); + center_title = findViewById(R.id.center_title); + center_title.setText("我的孩子"); + back = findViewById(R.id.back_top); + back.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + finish(); + } + }); + if(!TextUtils.isEmpty(childJson)) + initChild(childJson); + } + + private void initChild(String childJson) { + Gson g=new Gson(); + ChildBean childBean=g.fromJson(childJson, ChildBean.class); + child_name.setText(childBean.getStudentName()); + child_school.setText(childBean.getSchoolName()); + child_class.setText(childBean.getClassName()); + school_area.setText(childBean.getAreaName()); + student_code.setText(childBean.getStudentCode()); + + } + + @Override + protected int getLayoutId() { + return R.layout.activity_child_detail; + } +} diff --git a/app/src/main/java/com/shunzhi/parent/ui/activity/MyChildActivity.java b/app/src/main/java/com/shunzhi/parent/ui/activity/MyChildActivity.java index 1d74e91..883616b 100644 --- a/app/src/main/java/com/shunzhi/parent/ui/activity/MyChildActivity.java +++ b/app/src/main/java/com/shunzhi/parent/ui/activity/MyChildActivity.java @@ -25,7 +25,6 @@ import com.shunzhi.parent.bean.ChildClass; import com.shunzhi.parent.bean.CurrentBean; import com.shunzhi.parent.contract.mine.MyChildContract; import com.shunzhi.parent.presenter.mine.MyChildPresenter; -import com.shunzhi.parent.ui.MainActivity; import com.shunzhi.parent.ui.activity.binding.SelectSchoolActivity; import com.yanzhenjie.recyclerview.swipe.SwipeMenu; import com.yanzhenjie.recyclerview.swipe.SwipeMenuBridge; @@ -34,6 +33,7 @@ import com.yanzhenjie.recyclerview.swipe.SwipeMenuItem; import com.yanzhenjie.recyclerview.swipe.SwipeMenuItemClickListener; import com.yanzhenjie.recyclerview.swipe.SwipeMenuRecyclerView; +import java.util.ArrayList; import java.util.List; /** @@ -45,6 +45,7 @@ public class MyChildActivity extends BaseMVPCompatActivity currlist = new ArrayList<>(); @NonNull @Override @@ -72,7 +73,7 @@ public class MyChildActivity extends BaseMVPCompatActivitylist=currentBean.getStudentClass(); - childAdapter = new ChildAdapter(this); + public void updateChildList(CurrentBean currentBean) { + List list = currentBean.getStudentClass(); + currlist.addAll(list); + if (childAdapter == null) { + childAdapter = new ChildAdapter(this); + } childAdapter.addAll(list); child_recycle.setAdapter(childAdapter); @@ -139,7 +145,8 @@ public class MyChildActivity extends BaseMVPCompatActivity list = currentBean.getStudentClass(); isNew = currentBean.isNew(); user_mobile.setText(AppConfig.getAppConfig(AppContext.getInstance()).get(AppConfig.LOGIN_NAME)); diff --git a/app/src/main/java/com/shunzhi/parent/ui/activity/binding/CreateChildInfoActivity.java b/app/src/main/java/com/shunzhi/parent/ui/activity/binding/CreateChildInfoActivity.java index 0b5e5ad..4ad17d4 100644 --- a/app/src/main/java/com/shunzhi/parent/ui/activity/binding/CreateChildInfoActivity.java +++ b/app/src/main/java/com/shunzhi/parent/ui/activity/binding/CreateChildInfoActivity.java @@ -55,6 +55,12 @@ public class CreateChildInfoActivity extends BaseMVPCompatActivity implements LoginAndRegisterContract.ILoginView, View.OnClickListener { public RoundedImageView roundedImageView; - public EditText phoneNumber, idCode, password; - public TextView get_idCode, loginAndRegister, tv_info, tv_goto; - public LinearLayout phoneLayout, idCodeLayout, passwordLayout, main_login; - public ImageView img_eye; + public EditText phoneNumber, idCode, password, et_password_new; + public TextView get_idCode, loginAndRegister, tv_info, tv_goto, tv_goto_zhuce, tv_goto_mima; + public LinearLayout phoneLayout, idCodeLayout, passwordLayout, main_login, passwordLayout_new; + public ImageView img_eye, img_eye_new, back_login; public static String typepage; public boolean open = false; + public boolean opennew = false; public static MyProcessDialog progressDialog; + LinearLayout denglu, zhuce; public static LoginAndRegistFragment getInstance(String type) { @@ -70,6 +66,11 @@ public class LoginAndRegistFragment extends BaseMVPCompatFragment - - + diff --git a/app/src/main/res/layout/fragment_login_and_regist.xml b/app/src/main/res/layout/fragment_login_and_regist.xml index 728dea6..fd41fb9 100644 --- a/app/src/main/res/layout/fragment_login_and_regist.xml +++ b/app/src/main/res/layout/fragment_login_and_regist.xml @@ -11,6 +11,18 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"> + + + diff --git a/app/src/main/res/layout/item_childlist.xml b/app/src/main/res/layout/item_childlist.xml index 5b900a2..ce653fd 100644 --- a/app/src/main/res/layout/item_childlist.xml +++ b/app/src/main/res/layout/item_childlist.xml @@ -4,6 +4,7 @@ android:layout_height="wrap_content"> -- libgit2 0.21.0