⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vipconsumeaction.java

📁 一个优秀的干洗店管理系统
💻 JAVA
字号:
package control.vipconsumeaction;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Iterator;
import java.util.Vector;

import javax.swing.JOptionPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;

import view.dialog.countmanage.VipConsumeCountDialog;
import vo.OrderVo;
import vo.VipChargeVo;
import vo.VipConsumeVo;
import vo.VipVo;

import common.LogWriter;
import control.common.CheckTimeUtil;

import dao.commomdao.CommonDao;
import dao.commomdao.impl.CommonDaoImpl;
import dao.common.DbException;
import dao.export.ExportDao;
import dao.export.head.TableHead;
import dao.vipconsumedao.VipConsumeDao;
import dao.vipconsumedao.impl.VipConsumeDaoImpl;

public class VipConsumeAction implements ActionListener {

	private VipConsumeCountDialog dialog;
	private LogWriter log;
	private ExportDao edao;
	public VipConsumeAction(VipConsumeCountDialog dialog,LogWriter log) {
		this.dialog = dialog;
		this.log  = log;
	}

	public void actionPerformed(ActionEvent e) {
		String name = e.getActionCommand();
		if (name.equals("查询")) {
			String fromDate = dialog.buildFromDateComboBox().getSelectedItem()
					.toString();
			String toDate = dialog.buildToDateComboBox().getSelectedItem()
					.toString();
			String vipName = dialog.buildNameTxt().getText().trim();
			if (CheckTimeUtil.CheckTime(fromDate, toDate)) {
				buildTableData(fromDate, toDate,vipName);
			} else {
				JOptionPane.showMessageDialog(null, "查找的开始日期不能大于结束日期!");
			}			
		} else if (name.equals("打印报表")) {
			int index = dialog.buildTabbedPane().getSelectedIndex();
			if(index == 0){
			JTable table = dialog.buildVipConsumeTable();
			String headTitle = "会员消费记录";			
			String[] head = TableHead.VIP_CONSUME;
			edao = new ExportDao(dialog);
			edao.export(table, headTitle, head);
			}else if(index == 1){
				JTable table = dialog.buildVipChargeTable();
				String headTitle = "会员充值记录";
				String[] head = TableHead.VIP_CHARGE;
				edao = new ExportDao(dialog);
				edao.export(table, headTitle, head);
			}
		} else if (name.equals("退出")) {
			dialog.dispose();
		}
	}

	private void buildTableData(String fromDate, String toDate,String vipName) {
		VipConsumeDao dao = new VipConsumeDaoImpl(log);
		CommonDao cdao = new CommonDaoImpl(log);
		try {
			VipConsumeVo value = null;
			VipChargeVo value1 = null;
			Iterator iter = null;
			Vector v = null;
			int index = dialog.buildTabbedPane().getSelectedIndex();
			if (index == 0) {
				 v = dao.findVipConsume(fromDate, toDate,vipName);
				iter = v.iterator();
				JTable table = dialog.buildVipConsumeTable();
				DefaultTableModel model = (DefaultTableModel) table.getModel();
				int rows = table.getRowCount();
				for (int i = rows - 1; i >= 0; i--) {
					model.removeRow(i);
				}
				while (iter.hasNext()) {
					value = (VipConsumeVo) iter.next();
					OrderVo vo = cdao.getOrderInfoByOrderId(value.getOrderId());
					VipVo vipVo = cdao.getVipInfoByVipId(value.getVipId());
					Object[] data = { new Long(value.getOrderId()),
							vo.getTakeClothesDate(), vo.getTakeClothesDate(),
							new Double(value.getNeededAmount()),
							new Double(value.getReceivedAmount()),
							new Double(value.getReducedAmount()),
							new Integer(value.getVipId()), vipVo.getVipName(),
							vipVo.getVipPhone(), vo.isTakeOrNot()?"是":"否",
							new Double(value.getReceivedAmount()) };
					model.addRow(data);
				}
			} else if (index == 1) {				
				v = dao.findVipCharge(fromDate, toDate,vipName);				
				if (iter == null)
					iter = v.iterator();
				JTable table = dialog.buildVipChargeTable();
				DefaultTableModel model = (DefaultTableModel) table.getModel();
				int rows = table.getRowCount();
				for (int i = rows - 1; i >= 0; i--) {
					model.removeRow(i);
				}
				while (iter.hasNext()) {
					value1 = (VipChargeVo) iter.next();
					VipVo vipVo = cdao.getVipInfoByVipId(value1.getVipId());
					Object[] data = { value1.getChargeDate(),
							value1.getChargeAmount(),
							value1.getReceiveAmount(), value1.getVipId(),
							vipVo.getVipName(), vipVo.getVipPhone(),
							value1.getOperatorName() };
					model.addRow(data);
				}
			}
		} catch (DbException e) {
			JOptionPane.showMessageDialog(null, e.getMessage());
		}

	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -