diff --git a/app/src/main/java/com/ckkj/water/network/Request.java b/app/src/main/java/com/ckkj/water/network/Request.java index 5bf702a..593daee 100644 --- a/app/src/main/java/com/ckkj/water/network/Request.java +++ b/app/src/main/java/com/ckkj/water/network/Request.java @@ -89,6 +89,10 @@ public interface Request { @GET("app/v1/schedule/{id}") Observable> getPlanDetailInfo(@HeaderMap Map headMap, @Path("id") String id); + //排程绑定设备 + @POST("app/v1/addScheduleDevice") + Observable planBindDevice(@HeaderMap Map headMap, @Body RequestBody requestBody); + //解绑信息 @DELETE("app/v1/deleteDevice/{ids}") Observable unBindDevice(@HeaderMap Map headMap, @Path("ids") String id); diff --git a/app/src/main/java/com/ckkj/water/plan/BindDeviceFragment.java b/app/src/main/java/com/ckkj/water/plan/BindDeviceFragment.java index 38758a9..95a9f49 100644 --- a/app/src/main/java/com/ckkj/water/plan/BindDeviceFragment.java +++ b/app/src/main/java/com/ckkj/water/plan/BindDeviceFragment.java @@ -15,6 +15,7 @@ import com.ckkj.water.plan.entity.WaterPlanWeekEntity; import com.ckkj.water.plan.mvp.WaterPlanContract; import com.ckkj.water.plan.mvp.WaterPlanImpl; import com.ckkj.water.plan.mvp.WaterPlanPresenter; +import com.ckkj.water.utils.show.ToastUtil; import java.util.ArrayList; import java.util.List; @@ -33,9 +34,7 @@ public class BindDeviceFragment extends BaseFragment selected = new ArrayList<>(); + for(WaterDeviceEntity.DeviceListBean bean : mDeviceList){ + if(bean.getStatus().equals("1")){ + isSelected = true; + selected.add(bean.getId()); + } + } + if(!isSelected){ + ToastUtil.showShort(mContext, getString(R.string.select_the_device_to_link)); + return; + } + String selDevice = ""; + for(String id : selected){ + selDevice += id + ","; + } + selDevice = selDevice.substring(0,selDevice.length()-1); + mPresenter.planBindWithDevices(mPlanEntity,selDevice); + break; + } } @Override diff --git a/app/src/main/java/com/ckkj/water/plan/mvp/WaterPlanContract.java b/app/src/main/java/com/ckkj/water/plan/mvp/WaterPlanContract.java index a619843..f54128f 100644 --- a/app/src/main/java/com/ckkj/water/plan/mvp/WaterPlanContract.java +++ b/app/src/main/java/com/ckkj/water/plan/mvp/WaterPlanContract.java @@ -25,6 +25,8 @@ public class WaterPlanContract { void getPlanBindDeviceList(Map map,CallBack callBack); //查询排程详情 void getPlanDetailInfo(Map map,CallBack callBack); + //排程绑定设备 + void planBindDevice(JSONObject json,CallBack callBack); } public interface WaterPlanView extends IView { diff --git a/app/src/main/java/com/ckkj/water/plan/mvp/WaterPlanImpl.java b/app/src/main/java/com/ckkj/water/plan/mvp/WaterPlanImpl.java index f3a003f..e949c9a 100644 --- a/app/src/main/java/com/ckkj/water/plan/mvp/WaterPlanImpl.java +++ b/app/src/main/java/com/ckkj/water/plan/mvp/WaterPlanImpl.java @@ -196,4 +196,39 @@ public class WaterPlanImpl implements WaterPlanContract.DataModel{ } }); } + + @Override + public void planBindDevice(JSONObject json, WaterPlanContract.CallBack callBack) { + try { + NetWorkManager.getRequest().planBindDevice(NetWorkManager.getToken(),NetWorkManager.toRequestBody(json)) + .subscribeOn(Schedulers.io()) + .unsubscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(new Observer() { + @Override + public void onSubscribe(@NonNull Disposable d) { + } + + @Override + public void onNext(@NonNull BaseBean bean) { + if (bean.getCode() == 200) { + callBack.success(bean.getData(),0); + } else { + callBack.fail(bean.getMessage()); + } + } + + @Override + public void onError(@NonNull Throwable e) { + callBack.fail(e.getMessage()); + } + + @Override + public void onComplete() { + } + }); + } catch (Exception e) { + e.printStackTrace(); + } + } } diff --git a/app/src/main/java/com/ckkj/water/plan/mvp/WaterPlanPresenter.java b/app/src/main/java/com/ckkj/water/plan/mvp/WaterPlanPresenter.java index 87fc180..55ce2ce 100644 --- a/app/src/main/java/com/ckkj/water/plan/mvp/WaterPlanPresenter.java +++ b/app/src/main/java/com/ckkj/water/plan/mvp/WaterPlanPresenter.java @@ -178,4 +178,34 @@ public class WaterPlanPresenter extends BasePresenter() { + @Override + public void success(WaterPlanWeekEntity msg, int total) { + if(WaterPlanPresenter.this.getView() != null){ + + } + } + + @Override + public void fail(String msg) { + if(WaterPlanPresenter.this.getView() != null){ + WaterPlanPresenter.this.getView().showError( msg); + } + } + }); + } catch (JSONException e) { + throw new RuntimeException(e); + } + } } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 6f1e5c6..72e3170 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -96,6 +96,7 @@ 排程名称 排程名称不能为空 请选择排程日期 + 请选择要关联的设备 浇水周期 浇水时长 开始时间