编辑排程状态

This commit is contained in:
fengjignqi
2026-05-27 15:47:23 +08:00
parent 20aaf98235
commit f7bee61a56
14 changed files with 360 additions and 32 deletions

View File

@@ -1,15 +1,18 @@
package com.ckkj.water.plan;
import android.os.Bundle;
import android.os.Handler;
import android.view.View;
import com.ckkj.water.R;
import com.ckkj.water.base.BaseActivity;
import com.ckkj.water.base.BaseFragment;
import com.ckkj.water.databinding.WaterPlanDetailLayoutBinding;
import com.ckkj.water.index.entity.WaterDeviceEntity;
import com.ckkj.water.network.BaseBean;
//import com.ckkj.water.plan.adapter.PlanDetailDeviceAdapter;
//import com.ckkj.water.plan.adapter.PlanDetailTimeAdapter;
import com.ckkj.water.plan.adapter.PlanDetailDeviceAdapter;
import com.ckkj.water.plan.adapter.PlanDetailTimeAdapter;
import com.ckkj.water.plan.entity.WaterPlanWeekEntity;
import com.ckkj.water.plan.mvp.WaterPlanContract;
@@ -32,6 +35,7 @@ public class PlanDetailActivity extends BaseActivity<WaterPlanDetailLayoutBindin
//查询到的排程详情
private WaterPlanWeekEntity mDetailEntity;
private PlanDetailTimeAdapter mAdapter;
private PlanDetailDeviceAdapter deviceAdapter;
private List<WaterPlanWeekEntity.DetailsBean> mList = new ArrayList<>();
@Override
@@ -59,14 +63,16 @@ public class PlanDetailActivity extends BaseActivity<WaterPlanDetailLayoutBindin
initListener();
mAdapter = new PlanDetailTimeAdapter(R.layout.plan_detail_time_item,mList);
viewBinding.rvPlanTime.setAdapter(mAdapter);
// PlanDetailDeviceAdapter deviceAdapter = new PlanDetailDeviceAdapter(R.layout.plan_detail_bind_device_item,entity.getDeviceList());
// viewBinding.rvBindDevices.setAdapter(deviceAdapter);
List<WaterDeviceEntity> deviceList = new ArrayList<>();
deviceAdapter = new PlanDetailDeviceAdapter(R.layout.plan_detail_bind_device_item,deviceList);
viewBinding.rvBindDevices.setAdapter(deviceAdapter);
}
private void initListener() {
setClick(viewBinding.includedTitle.imgBack);
setClick(viewBinding.btnEdit);
setClick(viewBinding.btnDelete);
setClick(viewBinding.switchButton);
}
private void setClick(View view) {
@@ -79,7 +85,7 @@ public class PlanDetailActivity extends BaseActivity<WaterPlanDetailLayoutBindin
finish();
break;
case R.id.btn_edit:
case R.id.btn_edit://编辑
if(mDetailEntity != null){
Bundle bundle = new Bundle();
bundle.putSerializable("plan_entity", mDetailEntity);
@@ -88,7 +94,45 @@ public class PlanDetailActivity extends BaseActivity<WaterPlanDetailLayoutBindin
}
break;
case R.id.btn_delete://删除
showDialogtext(null, false, false, true,
getString(R.string.tip_text), getString(R.string.delete_plan_tip),
getString(R.string.cancel_text), getString(R.string.confirm_text), new BaseFragment.OnDialogClick() {
@Override
public void onCancelClick() {
}
@Override
public void onConfirmClick() {
mPresenter.deletePlan(mDetailEntity);
}
});
break;
case R.id.switch_button://切换状态
// 先恢复 Switch 到原始状态,避免点击时立即改变
viewBinding.switchButton.setChecked(mDetailEntity.getStatus().equals("1"));
if(mDetailEntity.getStatus().equals("1")){
showDialogtext(null, false, false, true,
getString(R.string.tip_text), getString(R.string.close_plan_dialog_tip),
getString(R.string.cancel_text), getString(R.string.confirm_text), new BaseFragment.OnDialogClick() {
@Override
public void onCancelClick() {
// 取消操作,恢复 Switch 状态
viewBinding.switchButton.setChecked(true);
}
@Override
public void onConfirmClick() {
// 确认关闭任务,调用接口后再更新 Switch
showLoadingDialog();
mPresenter.updatePlanStatus(mDetailEntity, "0");
}
});
}else{
// 开启任务,调用接口后再更新 Switch
mPresenter.updatePlanStatus(mDetailEntity, "1");
}
break;
}
}
@@ -113,9 +157,48 @@ public class PlanDetailActivity extends BaseActivity<WaterPlanDetailLayoutBindin
list.add(bean);
}
}
//日期显示
if(mAdapter != null){
mAdapter.setNewData(list);
}
//设备显示
if(deviceAdapter != null){
deviceAdapter.setNewData(entity.getDeviceIds());
}
}
/**
* 删除排程成功
* @param bean
*/
@Override
public void deletePlanSuccess(BaseBean bean) {
hideDialogLoading();
ToastUtil.showShort(mContext,getString(R.string.delete_plan_success));
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
finish();
}
},500);
}
/**
* 更新排程状态成功
*
* @param bean
* @param status
*/
@Override
public void updatePlanStatusSuccess(BaseBean bean, String status) {
hideDialogLoading();
mDetailEntity.setStatus(status);
if(status.equals("1")){
showCenterTipDialog(R.mipmap.icon_dialog_success,"任务已开启");
viewBinding.switchButton.setChecked(true);
}else{
viewBinding.switchButton.setChecked(false);
}
}
@Override
@@ -123,6 +206,13 @@ public class PlanDetailActivity extends BaseActivity<WaterPlanDetailLayoutBindin
}
@Override
public void planBindDeviceSuccess(BaseBean bean) {
}
@Override
public WaterPlanPresenter createPresenter() {