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 b1c2df8..6c416aa 100644 --- a/app/src/main/java/com/ckkj/water/network/Request.java +++ b/app/src/main/java/com/ckkj/water/network/Request.java @@ -79,9 +79,11 @@ public interface Request { @PUT("app/v1/updataschedule") Observable> updateSchedule(@HeaderMap Map headMap, @Body RequestBody requestBody); + //查询排程可绑定设备列表 + @GET("app/v1/scheduleDeviceList/{id}") + Observable getPlanBindDeviceList(@HeaderMap Map headMap, @Path("id") String id); + //解绑信息 - // 示例:ids array[string] - //["2052921001527869441"] @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/AddWaterPlanActivity.java b/app/src/main/java/com/ckkj/water/plan/AddWaterPlanActivity.java index 36520de..f0677c4 100644 --- a/app/src/main/java/com/ckkj/water/plan/AddWaterPlanActivity.java +++ b/app/src/main/java/com/ckkj/water/plan/AddWaterPlanActivity.java @@ -135,6 +135,9 @@ public class AddWaterPlanActivity extends BaseActivity weekList = new ArrayList<>(); + private WaterPlanWeekEntity mPlanEntity; // private BindDeviceAdapter mAdapter; @Override public void initData(Bundle state) { String jsonContent = getString(R.string.plan_water_entity_json); - WaterPlanWeekEntity entity = new Gson().fromJson(jsonContent, WaterPlanWeekEntity.class); - weekList.add(entity); +// WaterPlanWeekEntity entity = new Gson().fromJson(jsonContent, WaterPlanWeekEntity.class); +// weekList.add(entity); // mAdapter = new BindDeviceAdapter(mContext,R.layout.plan_bind_device_item,weekList.get(0).getDeviceList()); // viewBinding.rvDevices.setAdapter(mAdapter); // mAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() { -// @Override -// public void onItemClick(BaseQuickAdapter adapter, View view, int position) { -// mAdapter.toggleSelection(position); -// syncSelectedDevices(); -// } -// }); + // @Override + // public void onItemClick(BaseQuickAdapter adapter, View view, int position) { + // mAdapter.toggleSelection(position); + // syncSelectedDevices(); + // } + // }); + // 接收来自AddWaterPlanActivity的WaterPlanWeekEntity对象,并使用传参。 + + } + + @Override + protected void onResumeInitData() { + super.onResumeInitData(); + if (mPlanEntity != null) { + mPresenter.getPlanBindDevices(mPlanEntity); + } + } + + /** + * 设置排程实体,用于关联设备接口请求 + * @param entity 排程实体 + */ + public void setPlanEntity(WaterPlanWeekEntity entity) { + this.mPlanEntity = entity; + if (mPlanEntity != null) { + if(mPresenter != null){ + mPresenter.getPlanBindDevices(mPlanEntity); + } + } } private void syncSelectedDevices() { diff --git a/app/src/main/java/com/ckkj/water/plan/WaterConfigFragment.java b/app/src/main/java/com/ckkj/water/plan/WaterConfigFragment.java index 85559d5..5044a1a 100644 --- a/app/src/main/java/com/ckkj/water/plan/WaterConfigFragment.java +++ b/app/src/main/java/com/ckkj/water/plan/WaterConfigFragment.java @@ -286,9 +286,14 @@ public class WaterConfigFragment extends BaseFragment map,CallBack callBack); //新增排程 void saveConfig(JSONObject json,CallBack callBack); - + //更新排程 void updateConfig(JSONObject json,CallBack callBack); + //查询排程可绑定的设备列表 + void getPlanBindDeviceList(Map map,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 578cf31..6a23eab 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 @@ -133,4 +133,39 @@ public class WaterPlanImpl implements WaterPlanContract.DataModel{ e.printStackTrace(); } } + + /** + * 查询可绑定排程的设备列表 + * @param map + * @param callBack + */ + @Override + public void getPlanBindDeviceList(Map map, WaterPlanContract.CallBack callBack) { + String deviceID = map.get("id"); + NetWorkManager.getRequest().getPlanBindDeviceList(NetWorkManager.getToken(), deviceID) + .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); + } + } + + @Override + public void onError(@NonNull Throwable e) { + callBack.fail(e.getMessage()); + } + + @Override + public void onComplete() { + } + }); + } } 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 51837d2..144312c 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 @@ -5,6 +5,9 @@ import com.ckkj.water.base.BasePresenter; import com.ckkj.water.base.entity.MineUserInfoBean; import com.ckkj.water.device.mvp.DeviceContract; import com.ckkj.water.device.mvp.DeviceImpl; +import com.ckkj.water.device.mvp.DevicePresenter; +import com.ckkj.water.index.entity.IndexDeviceEntity; +import com.ckkj.water.index.mvp.IndexContract; import com.ckkj.water.login.mvp.LoginContract; import com.ckkj.water.login.mvp.LoginPresenter; import com.ckkj.water.mine.mvp.MineContract; @@ -137,5 +140,27 @@ public class WaterPlanPresenter extends BasePresenter map = new HashMap<>(); + map.put("id",entity.getId()); + impl.getPlanBindDeviceList(map, new WaterPlanContract.CallBack() { + @Override + public void success(BaseBean bean, int total) { + if(WaterPlanPresenter.this.getView() != null){ +// WaterPlanPresenter.this.getView().getDeviceDetailInfo(bean); + } + } + @Override + public void fail(String msg) { + if(WaterPlanPresenter.this.getView() != null){ + WaterPlanPresenter.this.getView().showError( msg); + } + } + }); + } }