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

📄 attendrecorddaoimpl.java

📁 oa办公系统
💻 JAVA
字号:
/**
 * FileName:AttendRecordDaoImpl.java,v 1.0 created in 2008-11-8 上午08:20:50
 * Created by Noel Han
 * Copyright (c) 2008 Ecjtu
 * All Rights Reserved.
 */
package cn.jx.ecjtu.oa.ps.dao.impl;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;

import com.wanczy.dbutil.IResultSetHandler;

import cn.jx.ecjtu.oa.ps.dao.AttendRecordDao;
import cn.jx.ecjtu.oa.ps.dao.BaseDao;
import cn.jx.ecjtu.oa.ps.pojo.AttendRecord;

/**
 * @todo:Description
 * @author Noel Han
 * @version $Revision: 1.22 $
 * @since 1.0
 */
public class AttendRecordDaoImpl extends BaseDao implements AttendRecordDao {

	class ResultSet2AttendRecord implements IResultSetHandler {
		public Object handle(ResultSet rs) throws SQLException {
			return new AttendRecord(rs.getInt("record_id"), rs
					.getInt("user_id"), rs.getInt("status_id"), rs
					.getInt("app_type_id"), rs.getString("destination"), rs
					.getString("reason"), rs.getInt("censor_id"), rs
					.getString("to_leave"), rs.getString("to_return"), rs
					.getString("back_time"), rs.getString("real_name"));
		}
	}

	class ResultSet2String implements IResultSetHandler {
		public String handle(ResultSet rs) throws SQLException {
			return rs.getString("msg_template");
		}
	}

	private ResultSet2String resultSet2String = new ResultSet2String();

	private ResultSet2AttendRecord resultSet2AttendRecord = new ResultSet2AttendRecord();

	public int save(AttendRecord record) {
		return dbAccess
				.executeUpdate(
						"insert into oa_attend_record (user_id,status_id,app_type_id,destination,reason,censor_id,to_leave,to_return,back_time) values (?,?,?,?,?,?,?,?,?)",
						new Object[] { record.getUserId(),
								record.getStatusId(), record.getAppTypeId(),
								record.getDestination(), record.getReason(),
								record.getCensorId(), record.getToLeave(),
								record.getToReturn(), record.getBackTime() });
	}

	public int remove(int recordId) {
		return dbAccess.executeUpdate(
				"delete from oa_attend_record where record_id=?",
				new Object[] { new Integer(recordId) });
	}

	public int update(AttendRecord record) {
		return dbAccess
				.executeUpdate(
						"update oa_attend_record set status_id=?,app_type_id=?,destination=?,reason=?,censor_id=?,to_leave=?,to_return=?,back_time=? where record_id=?",
						new Object[] { record.getStatusId(),
								record.getAppTypeId(), record.getDestination(),
								record.getReason(), record.getCensorId(),
								record.getToLeave(), record.getToReturn(),
								record.getBackTime(), record.getRecordId() });
	}

	public int count(int userId, String toLeave, String toReturn, int appTypeId) {
		return (Integer) dbAccess
				.getSingleValue(
						"select count(*) from oa_attend_record where user_id=? and app_type_id=? and to_leave between ? and ?",
						new Object[] { userId, appTypeId, toLeave, toReturn });
	}

	public List find(int userId, String from, String to, int appTypeId) {
		return dbAccess
				.executeQuery(
						"select * from oa_attend_record a left join oa_login_user b on a.user_id=b.id where user_id=? and app_type_id=? and to_leave between ? and ?",
						new Object[] { userId, appTypeId, from, to },
						resultSet2AttendRecord);
	}

	public AttendRecord findByRecordId(int recordId) {
		List list = dbAccess
				.executeQuery(
						"select * from oa_attend_record a left join oa_login_user b on a.user_id=b.id where record_id=?",
						new Object[] { recordId }, resultSet2AttendRecord);
		if (list.size() > 0) {
			return (AttendRecord) list.get(0);
		} else {
			return null;
		}
	}

	public String getMsgModel(int typeId) {
		List list = dbAccess.executeQuery(
				"select * from oa_attend_app_type where app_type_id=?",
				new Object[] { typeId }, resultSet2String);
		if (list.size() == 0) {
			return null;
		} else {
			return (String) list.get(0);
		}
	}

	public AttendRecord findToSign(int userId) {
		List list = dbAccess
				.executeQuery(
						"select * from oa_attend_record a left join oa_login_user b on a.user_id=b.id where user_id=? and back_time='00000000000000'",
						new Object[] { userId }, resultSet2AttendRecord);
		if (list.size() > 0) {
			return (AttendRecord) list.get(0);
		} else {
			return null;
		}
	}

	public List findByStatusAndType(int statusId, int appTypeId) {
		String sql = "select * from oa_attend_record a left join oa_login_user b on a.user_id=b.id where status_id=? and app_type_id=?";
		Object[] attributes = new Object[]{statusId, appTypeId};
		return dbAccess.executeQuery(sql, attributes, resultSet2AttendRecord);
	}

}

⌨️ 快捷键说明

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