mirror of
https://e.coding.net/mcontext/mContext/sdu.git
synced 2024-09-18 02:24:54 +08:00
删除宝宝
This commit is contained in:
parent
bcc4879db5
commit
735b8c3924
@ -63,6 +63,14 @@ public interface UpdateService {
|
||||
Call<Result> addBaby(
|
||||
@Body AddBabyParams params
|
||||
);
|
||||
@POST("/editBaby")
|
||||
Call<Result> editBaby(
|
||||
@Body AddBabyParams params
|
||||
);
|
||||
@POST("/deleteBaby")
|
||||
Call<Result> deleteBaby(
|
||||
@Body AddBabyParams params
|
||||
);
|
||||
|
||||
@POST("/getBabyList")
|
||||
Call<Result<BabyInfoModel>> getBabyList(
|
||||
|
@ -26,6 +26,7 @@ import com.yuxihan.sdu.comm.util.DataUtil;
|
||||
import com.yuxihan.sdu.comm.util.GlideEngine;
|
||||
import com.yuxihan.sdu.comm.widget.ActionSheetDialog;
|
||||
import com.yuxihan.sdu.comm.widget.CommonDialog;
|
||||
import com.yuxihan.sdu.ui.baby.model.BabyInfoModel;
|
||||
|
||||
import org.greenrobot.eventbus.EventBus;
|
||||
import org.greenrobot.eventbus.Subscribe;
|
||||
@ -42,9 +43,11 @@ public class AddBabyActivity extends BaseActivity implements View.OnClickListene
|
||||
private TextView tv_birthday;
|
||||
private TextView tv_baby_name;
|
||||
private TextView tv_baby_gender;
|
||||
private TextView tv_activity_title;
|
||||
private ImageView iv_baby_head;
|
||||
private String selectedDate;
|
||||
private AddBabyParams addBabyParams = new AddBabyParams();
|
||||
private BabyInfoModel.BabyBean curBaby = null;
|
||||
|
||||
AddBabyViewModel addBabyViewModel;
|
||||
|
||||
@ -53,9 +56,17 @@ public class AddBabyActivity extends BaseActivity implements View.OnClickListene
|
||||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.activity_add_baby);
|
||||
addBabyViewModel = new ViewModelProvider(this).get(AddBabyViewModel.class);
|
||||
getIntentData();
|
||||
initView();
|
||||
}
|
||||
|
||||
private void getIntentData() {
|
||||
Bundle extras = getIntent().getExtras();
|
||||
if (extras != null) {
|
||||
curBaby = (BabyInfoModel.BabyBean) extras.get("key");
|
||||
}
|
||||
}
|
||||
|
||||
private void initView() {
|
||||
findViewById(R.id.iv_back).setOnClickListener(this);
|
||||
findViewById(R.id.tv_save).setOnClickListener(this);
|
||||
@ -67,6 +78,22 @@ public class AddBabyActivity extends BaseActivity implements View.OnClickListene
|
||||
tv_baby_name = findViewById(R.id.tv_baby_name);
|
||||
tv_baby_gender = findViewById(R.id.tv_baby_gender);
|
||||
iv_baby_head = findViewById(R.id.iv_baby_head);
|
||||
tv_activity_title = findViewById(R.id.tv_activity_title);
|
||||
|
||||
if (null != curBaby) {
|
||||
tv_baby_name.setText(curBaby.getBabyName());
|
||||
tv_birthday.setText(curBaby.getBabyBirthday());
|
||||
String gender = "";
|
||||
if (curBaby.getBabyGender() == 0) {
|
||||
gender = "男";
|
||||
} else if (curBaby.getBabyGender() == 1) {
|
||||
gender = "女";
|
||||
}
|
||||
tv_baby_gender.setText(gender);
|
||||
Glide.with(AddBabyActivity.this).load(curBaby.getBabyHead()).placeholder(R.drawable.ic_baby_head).into(iv_baby_head);
|
||||
addBabyParams.setBabyHead(curBaby.getBabyHead());
|
||||
tv_activity_title.setText("宝宝信息编辑");
|
||||
}
|
||||
|
||||
// addBabyViewModel.getUpdateUserHead().observe(AddBabyActivity.this,
|
||||
// new Observer<UpdateUserHeadState>() {
|
||||
@ -91,11 +118,6 @@ public class AddBabyActivity extends BaseActivity implements View.OnClickListene
|
||||
addBabyParams.setBabyHead(event.getHeadUrl());
|
||||
}
|
||||
}
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void onMessageEvent(AddBabySuccessEvent event) {
|
||||
setResult(0);
|
||||
finish();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
@ -104,7 +126,13 @@ public class AddBabyActivity extends BaseActivity implements View.OnClickListene
|
||||
finish();
|
||||
break;
|
||||
case R.id.tv_save:
|
||||
checkParams();
|
||||
setParams();
|
||||
if (null != curBaby) {
|
||||
editBaby();
|
||||
} else {
|
||||
addBaby();
|
||||
}
|
||||
|
||||
break;
|
||||
case R.id.rl_baby_head:
|
||||
updateUserHead();
|
||||
@ -130,7 +158,24 @@ public class AddBabyActivity extends BaseActivity implements View.OnClickListene
|
||||
}
|
||||
}
|
||||
|
||||
private void checkParams() {
|
||||
private void editBaby() {
|
||||
if (addBabyParams.isValid()) {
|
||||
addBabyParams.setBabyId(curBaby.getBabyId());
|
||||
addBabyViewModel.addBaby(addBabyParams);
|
||||
} else {
|
||||
Toast.makeText(SDUApp.getAppContext(), "信息输入不全~", Toast.LENGTH_LONG).show();
|
||||
}
|
||||
}
|
||||
|
||||
private void addBaby() {
|
||||
if (addBabyParams.isValid()) {
|
||||
addBabyViewModel.addBaby(addBabyParams);
|
||||
} else {
|
||||
Toast.makeText(SDUApp.getAppContext(), "信息输入不全~", Toast.LENGTH_LONG).show();
|
||||
}
|
||||
}
|
||||
|
||||
private void setParams() {
|
||||
addBabyParams.setBabyBirthday(tv_birthday.getText().toString().trim());
|
||||
if ("男".equals(tv_baby_gender.getText().toString())) {
|
||||
addBabyParams.setBabyGender(0);
|
||||
@ -140,11 +185,6 @@ public class AddBabyActivity extends BaseActivity implements View.OnClickListene
|
||||
addBabyParams.setBabyGender(-1);
|
||||
}
|
||||
addBabyParams.setBabyName(tv_baby_name.getText().toString());
|
||||
if (addBabyParams.isValid()) {
|
||||
addBabyViewModel.addBaby(addBabyParams);
|
||||
} else {
|
||||
Toast.makeText(SDUApp.getAppContext(), "信息输入不全~", Toast.LENGTH_LONG).show();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -356,6 +396,12 @@ public class AddBabyActivity extends BaseActivity implements View.OnClickListene
|
||||
}
|
||||
}
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void onMessageEvent(AddBabySuccessEvent event) {
|
||||
setResult(0);
|
||||
finish();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onStart() {
|
||||
super.onStart();
|
||||
|
@ -20,6 +20,15 @@ public class AddBabyParams extends BaseRequestParams {
|
||||
private String babyHead;
|
||||
private int babyGender;
|
||||
private String babyBirthday;
|
||||
private int babyId;
|
||||
|
||||
public int getBabyId() {
|
||||
return babyId;
|
||||
}
|
||||
|
||||
public void setBabyId(int babyId) {
|
||||
this.babyId = babyId;
|
||||
}
|
||||
|
||||
public String getBabyName() {
|
||||
return babyName;
|
||||
|
@ -68,6 +68,39 @@ public class AddBabyViewModel extends ViewModel {
|
||||
}
|
||||
|
||||
|
||||
public void editBaby(AddBabyParams params) {
|
||||
UpdateService updateService = SDUApp.getRetrofit().create(UpdateService.class);
|
||||
Call<Result> call = updateService.editBaby(params);
|
||||
call.enqueue(new Callback<Result>() {
|
||||
@Override
|
||||
public void onResponse(Call<Result> call, Response<Result> response) {
|
||||
//请求成功,返回是一个封装为DataBean的响应
|
||||
if (null == response.body()) {
|
||||
Toast.makeText(SDUApp.getAppContext(), "Internal Server Error",
|
||||
Toast.LENGTH_LONG).show();
|
||||
return;
|
||||
}
|
||||
if (Const.ERROR_CODE_NORMAL.equals(response.body().getErrCode())) {
|
||||
Toast.makeText(SDUApp.getAppContext(), "宝宝信息编辑成功!",
|
||||
Toast.LENGTH_SHORT).show();
|
||||
EventBus.getDefault().post(new AddBabySuccessEvent());
|
||||
} else {
|
||||
Toast.makeText(SDUApp.getAppContext(), response.body().getErrMsg(),
|
||||
Toast.LENGTH_LONG).show();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Call<Result> call, Throwable t) {
|
||||
//请求失败
|
||||
Log.e("TAG", "请求失败:" + t.getMessage());
|
||||
Toast.makeText(SDUApp.getAppContext(), "服务器开小差了!",
|
||||
Toast.LENGTH_LONG).show();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 上传
|
||||
*
|
||||
|
@ -15,6 +15,10 @@ import com.yuxihan.sdu.comm.BaseActivity;
|
||||
import com.yuxihan.sdu.ui.baby.adapter.BabyListAdapter;
|
||||
import com.yuxihan.sdu.ui.baby.model.BabyInfoModel;
|
||||
|
||||
import org.greenrobot.eventbus.EventBus;
|
||||
import org.greenrobot.eventbus.Subscribe;
|
||||
import org.greenrobot.eventbus.ThreadMode;
|
||||
|
||||
public class BabyListActivity extends BaseActivity implements View.OnClickListener {
|
||||
BabyListViewModel babyListViewModel;
|
||||
RecyclerView rv_baby_list;
|
||||
@ -58,6 +62,7 @@ public class BabyListActivity extends BaseActivity implements View.OnClickListen
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
|
||||
super.onActivityResult(requestCode, resultCode, data);
|
||||
@ -65,4 +70,31 @@ public class BabyListActivity extends BaseActivity implements View.OnClickListen
|
||||
babyListViewModel.getBabyList();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void onMessageEvent(RefreshListEvent event) {
|
||||
babyListViewModel.getBabyList();
|
||||
}
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void onMessageEvent(DeleteBabyEvent event) {
|
||||
AddBabyParams addBabyParams = new AddBabyParams();
|
||||
addBabyParams.setBabyId(event.babyBean.getBabyId());
|
||||
babyListViewModel.deleteBaby(addBabyParams);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onStart() {
|
||||
super.onStart();
|
||||
EventBus.getDefault().register(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onStop() {
|
||||
super.onStop();
|
||||
EventBus.getDefault().unregister(this);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
@ -12,6 +12,8 @@ import com.yuxihan.sdu.data.Result;
|
||||
import com.yuxihan.sdu.data.UpdateService;
|
||||
import com.yuxihan.sdu.ui.baby.model.BabyInfoModel;
|
||||
|
||||
import org.greenrobot.eventbus.EventBus;
|
||||
|
||||
import retrofit2.Call;
|
||||
import retrofit2.Callback;
|
||||
import retrofit2.Response;
|
||||
@ -54,4 +56,33 @@ public class BabyListViewModel extends ViewModel {
|
||||
});
|
||||
}
|
||||
|
||||
public void deleteBaby(AddBabyParams params) {
|
||||
UpdateService updateService = SDUApp.getRetrofit().create(UpdateService.class);
|
||||
Call<Result> call = updateService.deleteBaby(params);
|
||||
call.enqueue(new Callback<Result>() {
|
||||
@Override
|
||||
public void onResponse(Call<Result> call, Response<Result> response) {
|
||||
//请求成功,返回是一个封装为DataBean的响应
|
||||
if (null == response.body()) {
|
||||
Toast.makeText(SDUApp.getAppContext(), "Internal Server Error",
|
||||
Toast.LENGTH_LONG).show();
|
||||
return;
|
||||
}
|
||||
if (Const.ERROR_CODE_NORMAL.equals(response.body().getErrCode())) {
|
||||
EventBus.getDefault().post(new RefreshListEvent());
|
||||
} else {
|
||||
Toast.makeText(SDUApp.getAppContext(), response.body().getErrMsg(),
|
||||
Toast.LENGTH_LONG).show();
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onFailure(Call<Result> call, Throwable t) {
|
||||
//请求失败
|
||||
Toast.makeText(SDUApp.getAppContext(), "服务器开小差了!",
|
||||
Toast.LENGTH_LONG).show();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -0,0 +1,19 @@
|
||||
package com.yuxihan.sdu.ui.baby;
|
||||
|
||||
import com.yuxihan.sdu.ui.baby.model.BabyInfoModel;
|
||||
|
||||
public class DeleteBabyEvent {
|
||||
BabyInfoModel.BabyBean babyBean;
|
||||
|
||||
public DeleteBabyEvent(BabyInfoModel.BabyBean babyBean) {
|
||||
this.babyBean = babyBean;
|
||||
}
|
||||
|
||||
public BabyInfoModel.BabyBean getBabyBean() {
|
||||
return babyBean;
|
||||
}
|
||||
|
||||
public void setBabyBean(BabyInfoModel.BabyBean babyBean) {
|
||||
this.babyBean = babyBean;
|
||||
}
|
||||
}
|
@ -0,0 +1,5 @@
|
||||
package com.yuxihan.sdu.ui.baby;
|
||||
|
||||
public class RefreshListEvent {
|
||||
|
||||
}
|
@ -1,6 +1,8 @@
|
||||
package com.yuxihan.sdu.ui.baby.adapter;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
@ -13,9 +15,13 @@ import androidx.recyclerview.widget.RecyclerView;
|
||||
import com.bumptech.glide.Glide;
|
||||
import com.yuxihan.sdu.R;
|
||||
import com.yuxihan.sdu.comm.util.CommViewHolder;
|
||||
import com.yuxihan.sdu.ui.baby.AddBabyActivity;
|
||||
import com.yuxihan.sdu.ui.baby.DeleteBabyEvent;
|
||||
import com.yuxihan.sdu.ui.baby.model.BabyInfoModel;
|
||||
import com.yuxihan.sdu.ui.home.adapter.HomeListAdapter;
|
||||
|
||||
import org.greenrobot.eventbus.EventBus;
|
||||
|
||||
public class BabyListAdapter extends RecyclerView.Adapter {
|
||||
private BabyInfoModel babyInfoModel;
|
||||
private Context mContext;
|
||||
@ -46,13 +52,17 @@ public class BabyListAdapter extends RecyclerView.Adapter {
|
||||
CommViewHolder.get(holder.itemView, R.id.ll_delete_baby).setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
|
||||
EventBus.getDefault().post(new DeleteBabyEvent(curBaby));
|
||||
}
|
||||
});
|
||||
CommViewHolder.get(holder.itemView, R.id.rl_edit_baby).setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
|
||||
Intent intent = new Intent(mContext, AddBabyActivity.class);
|
||||
Bundle bundle = new Bundle();
|
||||
bundle.putSerializable("key", curBaby);
|
||||
intent.putExtras(bundle);
|
||||
mContext.startActivity(intent);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
@ -1,5 +1,6 @@
|
||||
package com.yuxihan.sdu.ui.baby.model;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
|
||||
public class BabyInfoModel {
|
||||
@ -14,7 +15,7 @@ public class BabyInfoModel {
|
||||
this.babyList = babyList;
|
||||
}
|
||||
|
||||
public static class BabyBean {
|
||||
public static class BabyBean implements Serializable {
|
||||
/**
|
||||
* familyId : 8
|
||||
* babyId : 2
|
||||
|
@ -25,6 +25,7 @@
|
||||
android:src="@drawable/ic_arrow_left" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/tv_activity_title"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_centerHorizontal="true"
|
||||
|
Loading…
Reference in New Issue
Block a user