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

📄 appealoperate.java

📁 JAVA实现的酒店管理系统
💻 JAVA
字号:
package file1;

/*
 * 功能描述:实现对客户投诉的增删改查处理
 * @Author:黄顺武
 * Create Time:2007-12-8
 * Last Modified:2007-12-15
 * Modify Reason:数据库连接类DBConnection 的内部结构设计得到优化
 */
import java.sql.SQLException;
import java.util.*;

import javax.swing.JOptionPane;

import sun.jdbc.rowset.*;

public class AppealOperate implements Operate {

	public AppealOperate() {
	}

	public void insertToDB(Object object) {// 增加客户投诉记录时调用的方法
		try {
			DBConnection con = new DBConnection();
			Appeal appeal = (Appeal) object;
			StringBuffer sqlSB = new StringBuffer("");
			if (appeal.getID() == -1) {
				sqlSB.append("insert into Appeal values(");
				sqlSB.append(appeal.getApplerID()).append(",'").append(
						appeal.getAppealContent()).append("',");
				sqlSB.append(appeal.getAppealToID()).append(",'").append(
						appeal.getAppealToState()).append("','");
				sqlSB.append(appeal.getAppealTime()).append("','").append(
						appeal.getProcessTime()).append("')");
			}
			con.addSql(sqlSB.toString());
			con.doDML();
		} catch (ClassNotFoundException cnfe) {
			cnfe.printStackTrace();
		} catch (SQLException sqle) {
			sqle.printStackTrace();
		}
	}

	public void deleteFromDB(Object object) {// 删除客户投诉记录时调用的方法
		Appeal appeal = (Appeal) object;
		StringBuffer sqlSB = new StringBuffer("");
		if (appeal.getID() != -1) {
			sqlSB.append("select* from Appeal where id=")
					.append(appeal.getID());
		}
		if (!(sqlSB.toString().equals(""))) {
			try {
				DBConnection con = new DBConnection();
				CachedRowSet crs = con.getResultSet(sqlSB.toString());
				if (crs.next()) {
					StringBuffer sql = new StringBuffer(
							"delete from Appeal where id=");
					sql.append(appeal.getID());
					con.addSql(sql.toString());
					con.doDML();
				}
			} catch (ClassNotFoundException cnfe) {
				cnfe.printStackTrace();
			} catch (SQLException sqle) {
				sqle.printStackTrace();
			}
		}
	}

	public void modifyToDB(Object object) {// 修改客户的投诉记录的方法
		Appeal appeal = (Appeal) object;
		StringBuffer sqlsb = new StringBuffer("");
		if (appeal.getID() != -1) {
			try {
				DBConnection con = new DBConnection();
				sqlsb.append("update Appeal set ");
				if (appeal.getApplerID() != -1) {// 如果投诉者的id修改则反映到sql中,以下一系列if
					// 语句完成的功能类似
					sqlsb.append("appealerID=").append(appeal.getApplerID())
							.append(",");
				}
				if (appeal.getAppealContent() != null) {
					sqlsb.append("appealContent='").append(
							appeal.getAppealContent()).append("',");
				}
				if (appeal.getAppealToID() != -1) {
					sqlsb.append("appealToID=").append(appeal.getAppealToID())
							.append(",");
				}
				if (appeal.getAppealToState() != null
						&& !appeal.getAppealToState().trim().equals("")) {
					sqlsb.append("appealToState='").append(
							appeal.getAppealToState()).append("',");
				}
				if (appeal.getAppealTime() != null) {
					sqlsb.append("appealTime='").append(appeal.getAppealTime())
							.append("',");
				}
				if (appeal.getProcessTime() != null) {
					sqlsb.append("processTime='").append(
							appeal.getProcessTime()).append("'");
				}

				String sql = sqlsb.toString();
				if (sql.lastIndexOf(",") == (sql.length() - 1)) {
					sql = sql.substring(0, sql.length() - 1);
				}
				if (!sql.equals("update Appeal set ")) {// 表明有要更新的字段,执行更新操作
					StringBuffer sqlSB = new StringBuffer(sql);
					sqlSB.append(" where id=").append(appeal.getID());
					con.addSql(sqlSB.toString());
					con.doDML();
				}
			} catch (SQLException sqle) {
				sqle.printStackTrace();
			} catch (ClassNotFoundException cnfe) {
				cnfe.printStackTrace();
			}
		}
	}

	public ArrayList selectFromDB(Object object) {// 查询客户投诉记录时调用的方法
		Appeal appeal = (Appeal) object;
		ArrayList valuesList = new ArrayList();
		StringBuffer sqlsb = new StringBuffer("");
		CachedRowSet crs = null;
		if (appeal.getID() == -1) {
			JOptionPane.showMessageDialog(null, "要查询的申诉记录id不能为空!", "",
					JOptionPane.INFORMATION_MESSAGE);
			return null;
		}
		if (appeal.getID() == 0) {// 表示查询数据库中的全部客户投诉记录,传参数的时候一定要注意
			sqlsb.append("select* from Appeal");
		}
		if (appeal.getID() != -1 && appeal.getID() != 0) {// 表示查询数据库中的某一客户投诉记录,传参数的时候一定要注意
			sqlsb.append("select* from Appeal where id=" + appeal.getID());
		}

		try {
			DBConnection con = new DBConnection();
			crs = con.getResultSet(sqlsb.toString());
			while (crs.next()) {
				Appeal newAppealInstance = new Appeal();
				newAppealInstance.setID(crs.getInt(1));
				newAppealInstance.setApplerID(crs.getInt(2));
				newAppealInstance.setAppealContent(crs.getString(3).trim());
				newAppealInstance.setAppealToID(crs.getInt(4));
				newAppealInstance.setAppealToState(crs.getString(5).trim());
				newAppealInstance.setAppealTime(crs.getString(6).trim());
				newAppealInstance.setProcessTime(crs.getString(7).trim());
				valuesList.add(newAppealInstance);
			}
		} catch (SQLException sqle) {
			sqle.printStackTrace();
		} catch (ClassNotFoundException cnfe) {
			cnfe.printStackTrace();
		}
		return valuesList;
	}
}

⌨️ 快捷键说明

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