package com.dayu.recharge.acitivity; import static com.dayu.recharge.view.TitleBar.ClickType_RIGHT_TEXT; import android.os.Bundle; import android.view.LayoutInflater; import android.view.View; import com.dayu.recharge.adapter.RechargeAdapter; import com.dayu.recharge.databinding.ActivityRechargeListBinding; import com.dayu.recharge.dbBean.RechargeBean; import com.dayu.recharge.utils.ArithUtil; import com.dayu.recharge.view.datepicker.CustomDatePicker; import com.dayu.recharge.view.datepicker.DateFormatUtils; import java.util.List; /** * Copyright (C), 2023, * Author: zuo * Date: 2023-11-5 09:52 * Description: 充值记录 */ public class RechargeListActivity extends BaseActivity { ActivityRechargeListBinding rechargeListBinding; RechargeAdapter adapter; List rechargeList; private CustomDatePicker beginDatePicker; private CustomDatePicker endDatePicker; long beginTime; long endTime; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); rechargeListBinding = ActivityRechargeListBinding.inflate(LayoutInflater.from(this)); setContentView(rechargeListBinding.getRoot()); setRightButton(); setData(); initDatePicker(); getTotal(); } private void setData() { // try { // rechargeList = SqLite_DB_Utile.getInit(this).findAll(RechargeBean.class); // } catch (DbException e) { // e.printStackTrace(); // } adapter = new RechargeAdapter(this, rechargeList); rechargeListBinding.rechargeList.setAdapter(adapter); } private void getTotal() { if (rechargeList != null) { double total = 0; for (int i = 0; i < rechargeList.size(); i++) { double b = Double.parseDouble(rechargeList.get(i).getMorny()); total = ArithUtil.add(total, b); } rechargeListBinding.rechargeTotal.setText("累计充值:" + String.valueOf(total) + "元"); } } private void setRightButton() { titleBar.setOnItemclickListner(ClickType_RIGHT_TEXT, new View.OnClickListener() { @Override public void onClick(View v) { beginDatePicker.show(System.currentTimeMillis()); } }); } private void initDatePicker() { long beginTimestamp = DateFormatUtils.str2Long("2009-05-01", false); final long endTimestamp = System.currentTimeMillis(); // 通过时间戳初始化日期,毫秒级别 beginDatePicker = new CustomDatePicker(this, "选择开始时间", new CustomDatePicker.Callback() { @Override public void onTimeSelected(long timestamp) { beginTime = timestamp; endDatePicker.show(timestamp); } }, beginTimestamp, endTimestamp); // 不允许点击屏幕或物理返回键关闭 beginDatePicker.setCancelable(false); // 不显示时和分 beginDatePicker.setCanShowPreciseTime(false); // 不允许循环滚动 beginDatePicker.setScrollLoop(false); // 不允许滚动动画 beginDatePicker.setCanShowAnim(false); endDatePicker = new CustomDatePicker(this, "选择结束时间", new CustomDatePicker.Callback() { @Override public void onTimeSelected(long timestamp) { // endTime = timestamp; // if ((endTime < beginTime) && endTime != beginTime) { // ToastUtil.show(RechargeListActivity.this, "结束时间不能晚于开始时间"); // } else { // try { // endTime = endTime + (1000 * 60 * 60 * 24) - 1; // List userList = SqLite_DB_Utile.getInit(RechargeListActivity.this).selector(RechargeBean.class).where("date", ">=", beginTime).and("date", "<=", endTime).findAll(); // rechargeList.clear(); // rechargeList.addAll(userList); // adapter.notifyDataSetChanged(); // getTotal(); // } catch (DbException e) { // e.printStackTrace(); // } // } } }, beginTimestamp, endTimestamp); // 不允许点击屏幕或物理返回键关闭 endDatePicker.setCancelable(false); // 不显示时和分 endDatePicker.setCanShowPreciseTime(false); // 不允许循环滚动 endDatePicker.setScrollLoop(false); // 不允许滚动动画 endDatePicker.setCanShowAnim(false); } }