diff --git a/app/src/main/java/com/ckkj/water/plan/WaterConfigFragment_copy.java b/app/src/main/java/com/ckkj/water/plan/WaterConfigFragment_copy.java index fff0d49..f9faf70 100644 --- a/app/src/main/java/com/ckkj/water/plan/WaterConfigFragment_copy.java +++ b/app/src/main/java/com/ckkj/water/plan/WaterConfigFragment_copy.java @@ -14,6 +14,7 @@ import com.bigkoo.pickerview.listener.OnTimeSelectListener; import com.bigkoo.pickerview.view.TimePickerView; import com.chad.library.adapter.base.BaseQuickAdapter; import com.ckkj.water.R; +import com.ckkj.water.base.BaseActivity; import com.ckkj.water.base.BaseFragment; import com.ckkj.water.databinding.WaterConfigFragmentLayoutBinding; import com.ckkj.water.databinding.WaterConfigFragmentLayoutCopyBinding; @@ -47,6 +48,7 @@ public class WaterConfigFragment_copy extends BaseFragment timeList = new ArrayList<>(); private WaterPlanWeekAdapter_copy mWeekAdapter; private WaterPlanTimeDataAdapter mTimeAdapter; + private RecyclerView.ItemDecoration itemDecoration; @Override @@ -54,7 +56,7 @@ public class WaterConfigFragment_copy extends BaseFragment list = new ArrayList<>(); @@ -80,6 +82,123 @@ public class WaterConfigFragment_copy extends BaseFragment timeList = weekList.get(position).getTimeData(); + mTimeAdapter.setNewData(timeList); + } + }); + + mTimeAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() { + @Override + public void onItemChildClick(BaseQuickAdapter adapter, View view, int position) { + switch (view.getId()){ + case R.id.tv_select_time: + selectStartTime(position); + break; + + case R.id.tv_plan_duration: + inputDuration(position); + break; + } + } + }); + } + + + private void setClick(View view) { + view.setOnClickListener(this::onClick); + } + + public void onClick(View v){ + switch (v.getId()){ + + case R.id.img_add: + int selPos = mWeekAdapter.getmPos(); + WaterPlanWeekEntity.TimeDataBean timeData = new WaterPlanWeekEntity.TimeDataBean(); + weekList.get(selPos).getTimeData().add(timeData); + mTimeAdapter.notifyItemInserted(weekList.get(selPos).getTimeData().size() - 1); + break; + + case R.id.tv_commit: + break; + } + } + + /** + * 选择开始时间 + * @param position + */ + private void selectStartTime(int position) { + boolean times[] = {false, false, false, true, true, false}; + //时间选择器 + TimePickerView pvTime = new TimePickerBuilder(mContext, new OnTimeSelectListener() { + @Override + public void onTimeSelect(Date date, View v) { + //用于提交接口 + weekList.get(mWeekAdapter.getmPos()).getTimeData().get(position). + setStartTime(ZYTimeUtils.getStrTimeData_H_M(date)); + mTimeAdapter.notifyItemChanged(position); + } + }).setType(times) + .setCancelColor(mContext.getColor(R.color.color_999999)) + .setSubmitColor(mContext.getColor(R.color.color_zhu)) + .setTextColorCenter(mContext.getColor(R.color.color_zhu)) + .build(); + pvTime.show(); + } + + + /** + * 输入浇水时间 + * @param position + */ + private void inputDuration(int position) { + WaterPlanWeekEntity.TimeDataBean timeData = weekList.get(mWeekAdapter.getmPos()).getTimeData().get(position); + showEditDialog(getString(R.string.device_work_times_title), + getString(R.string.input_water_plan_time), + timeData.getDurationMin() == 0 ? "" : timeData.getDurationMin() + "", + true, + getString(R.string.cancel_text), + getString(R.string.confirm_text), + BaseFragment.INPUT_TYPE_NUMBER, + new BaseActivity.OnDialogClick() { + @Override + public void onCancelClick() {} + + @Override + public void onConfirmClisk() {} + + @Override + public void onConfirmClisk(String content) { + if (Integer.parseInt(content) <= 0) { + ToastUtil.showShort(mContext, getString(R.string.input_water_plan_time_error)); + return; + } + timeData.setDurationMin(Integer.parseInt(content)); + mTimeAdapter.notifyItemChanged(position); + } + + @Override + public void onView1Click() { + + } + }); + } + + + /** + * 侧滑相关 + */ // 创建菜单: SwipeMenuCreator mSwipeMenuCreator = new SwipeMenuCreator() { @Override @@ -95,7 +214,6 @@ public class WaterConfigFragment_copy extends BaseFragment timeList = weekList.get(position).getTimeData(); - mTimeAdapter.setNewData(timeList); - } - }); - - mTimeAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() { - @Override - public void onItemChildClick(BaseQuickAdapter adapter, View view, int position) { - switch (view.getId()){ - case R.id.tv_select_time: - selectStartTime(position); - break; - - case R.id.tv_plan_duration: - - break; - } - } - }); - } - - private void selectStartTime(int position) { - boolean times[] = {false, false, false, true, true, false}; - //时间选择器 - TimePickerView pvTime = new TimePickerBuilder(mContext, new OnTimeSelectListener() { - @Override - public void onTimeSelect(Date date, View v) { - //用于提交接口 - weekList.get(mWeekAdapter.getmPos()).getTimeData().get(position). - setStartTime(ZYTimeUtils.getStrTimeData_H_M(date)); - mWeekAdapter.notifyItemChanged(position); - } - }).setType(times) - .setCancelColor(mContext.getColor(R.color.color_999999)) - .setSubmitColor(mContext.getColor(R.color.color_zhu)) - .setTextColorCenter(mContext.getColor(R.color.color_zhu)) - .build(); - pvTime.show(); - } - - private void setClick(View view) { - view.setOnClickListener(this::onClick); - } - - public void onClick(View v){ - switch (v.getId()){ - - case R.id.img_add: - int selPos = mWeekAdapter.getmPos(); - WaterPlanWeekEntity.TimeDataBean timeData = new WaterPlanWeekEntity.TimeDataBean(); - weekList.get(selPos).getTimeData().add(timeData); - mTimeAdapter.notifyItemInserted(weekList.get(selPos).getTimeData().size() - 1); - break; - - case R.id.tv_commit: - break; - } - } - // private List getSelectedDevices() { // if (getActivity() instanceof AddWaterPlanActivity) { @@ -273,4 +303,6 @@ public class WaterConfigFragment_copy extends BaseFragment