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

📄 userdaoimpl.java

📁 基于Java的地图数据管理软件。使用MySQL数据库管理系统。
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
/*
 * 创建日期 2006-12-9
 * 
 * TODO 要更改此生成的文件的模板,请转至 窗口 - 首选项 - Java - 代码样式 - 代码模板
 */
package com.tongtu.Dao.user.userDao;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import com.tongtu.Dao.DAOFactory;
import com.tongtu.Dao.role.RoleDAO;
import com.tongtu.Dao.user.UserDAO;
import com.tongtu.comm.Decode;
import com.tongtu.comm.sql.DBConnectionManager;
import com.tongtu.comm.sql.DBOperator;
import com.tongtu.util.City;
import com.tongtu.util.County;
import com.tongtu.util.CurrentUser;
import com.tongtu.util.LogInfo;
import com.tongtu.util.Page;
import com.tongtu.util.UserInfo;

/**
 * @author 朱闰
 * 
 * TODO 要更改此生成的类型注释的模板,请转至 窗口 - 首选项 - Java - 代码样式 - 代码模板
 */
public class UserDAOImpl implements UserDAO {
	static DAOFactory daoFactory = DAOFactory.getDAOFactory();
	  protected static RoleDAO getRoleHelper(){
	        return daoFactory.getRoleDAO();
	         
	       }
	/**
	 * 用户登录
	 */
	public UserInfo SystemLogin(String userName, String passWord) {
		DBOperator dbo = new DBOperator();
		try {
			String sqlStr = "select * from tt_user where userName = '"
					+ userName + "' and passWord ='" + passWord + "'";
			System.out.println(sqlStr);
			dbo.setPrepareStatement(sqlStr);
			ResultSet rs = dbo.executeQuery();
			while (rs.next()) {
				UserInfo ui = new UserInfo();
				ui.setCity(rs.getString("city"));
				ui.setCounty(rs.getString("county"));
				ui.setCityName(City.getCityNameByNum(rs.getString("city")));
				ui.setCountyName(City.getCountyName(rs.getString("county")));
				ui.setDepartment(rs.getString("department"));
				ui.setHeadShip(rs.getString("headship"));
				ui.setPassWord(Decode.decodeBase64(rs.getString("password")));
				ui.setUserId(rs.getInt("userId"));
				ui.setUserName(rs.getString("username"));
				ui.setPersonName(rs.getString("personname"));
				ui.setTelephone(rs.getString("telephone"));
				ui.setFax(rs.getString("fax"));
				ui.setRecorder(rs.getString("recorder"));
				ui.setCreateTime(CurrentUser.getDateToString(rs.getDate("createTime")));
				ui.setPrivilege(getRoleHelper().getPrivileById(rs.getInt("userId")));//获取用户权限
				ui.setMemo(rs.getString("memo"));
				return ui;
			}
			rs.close();
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			dbo.close();
		}
		return null;
	}

	/**
	 * 添加用户
	 */
	public boolean addUserInfo(UserInfo ui) {
		DBOperator dbo = new DBOperator();
		String query = "insert into tt_user(username,password,personname,headship,department,"
				+ "city,county,telephone,recorder,fax,memo,createtime) values('";
		query += ui.getUserName() + "','";
		query += ui.getPassWord() + "','";
		query += ui.getPersonName() + "','";
		query += ui.getHeadShip() + "','";
		query += ui.getDepartment() + "','";
		query += ui.getCity() + "','";
		query += ui.getCounty() + "','";
		query += ui.getTelephone() + "','";
		query += ui.getRecorder() + "','";
		query += ui.getFax() + "','";
		query += ui.getMemo() + "',curdate())";
		try {
			System.out.println(query);
			dbo.setPrepareStatement(query);
			dbo.executeUpdate();
			return true;
		} catch (Exception e) {
		} finally {
			dbo.close();
		}
		return false;
	}

	/**
	 * 根据用户ID删除指定用户
	 * 
	 * @param userId
	 * @return
	 */
	public boolean delUser(int userId) {
		DBOperator dbo = new DBOperator();
		String table = "delete from tt_user where userid=" + userId;
		try {
			dbo.setPrepareStatement(table);
			dbo.executeUpdate();
			return true;
		} catch (Exception e) {

		} finally {
			dbo.close();
		}
		return false;
	}

	/**
	 * 获取所有用户信息
	 */
	public List getAllUserList() {
		DBOperator dbo = new DBOperator();
		List userList = new ArrayList();
		try {
			String sqlStr = "select * from tt_user ";
			System.out.println(sqlStr);
			dbo.setPrepareStatement(sqlStr);
			ResultSet rs = dbo.executeQuery();
			while (rs.next()) {
				UserInfo ui = new UserInfo();
				ui.setCity(rs.getString("city"));
				ui.setCounty(rs.getString("county"));
				ui.setDepartment(rs.getString("department"));
				ui.setHeadShip(rs.getString("headship"));
				ui.setPassWord(rs.getString("password"));
				ui.setUserId(rs.getInt("userId"));
				ui.setUserName(rs.getString("username"));
				ui.setPersonName(rs.getString("personname"));
				ui.setTelephone(rs.getString("telephone"));

				userList.add(ui);
			}
			rs.close();
			CurrentUser.saveLog(sqlStr); //保存当前用户操作记录
			return userList;
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			dbo.close();
		}
		return null;
	}

	/**
	 * 分页显示用户列表
	 */
	public Page getUserList(int start, int count,UserInfo user) {
		Connection conn = null;
		DBConnectionManager dbmanager = DBConnectionManager.getInstance();
		Page page = null;
		try {
			conn = dbmanager.getConnection("DB");
			String queryStr = "select * from tt_user ";
		
			queryStr += " order by " ;
		 
		    if (user.getTypeId() == 1) {
		    	 if (user.getLoginName() == 1)
		 	    	queryStr += " userName asc ";
		 	    else 
		 	    	queryStr += " userName desc ";
		    }
		    if (user.getTypeId() == 2) {
		        if (user.getLoginCity() == 1)
			    	queryStr += " city asc ";
			    else 
			    	queryStr += " city desc "; 
		    }
		    if (user.getTypeId() == 3) {
		    	  if (user.getLoginCounty() == 1)
		  	    	queryStr += " county asc ";
		  	    else 
		  	    	queryStr += " county desc ";
		    }
		    if (user.getTypeId() == 4) {
		    	  if (user.getLoginBegin() == 1)
		  	    	queryStr += " createTime asc ";
		  	    else 
		  	    	queryStr += " createTime desc ";
		    }
		   
			System.out.println(queryStr);
			PreparedStatement pstmt = conn.prepareStatement(queryStr,
					ResultSet.TYPE_SCROLL_INSENSITIVE,
					ResultSet.CONCUR_READ_ONLY);
			ResultSet rs = pstmt.executeQuery();
			if (start >= 0 && rs.absolute(start + 1)) {
				boolean hasNext = false;
				List userList = new ArrayList();
				do {
					UserInfo ui = new UserInfo();
					ui.setCity(rs.getString("city"));
					ui.setCounty(rs.getString("county"));
					ui.setCityName(City.getCityNameByNum(rs.getString("city")));
					ui.setCountyName(City.getCountyName(rs.getString("county")));
					ui.setDepartment(rs.getString("department"));
					ui.setHeadShip(rs.getString("headship"));
					ui.setPassWord(rs.getString("password"));
					ui.setUserId(rs.getInt("userId"));
					ui.setUserName(rs.getString("username"));
					ui.setPersonName(rs.getString("personname"));
					ui.setTelephone(rs.getString("telephone"));
					ui.setFax(rs.getString("fax"));
					ui.setRecorder(rs.getString("recorder"));
					ui.setCreateTime(CurrentUser.getDateToString(rs.getDate("createTime")));
					ui.setPrivilege(getRoleHelper().getPrivileById(rs.getInt("userId")));  //获取用户权限
					userList.add(ui);

				} while ((hasNext = rs.next()) && (--count > 0));
				page = new Page(userList, start, hasNext);
			} else {
				page = Page.EMPTY_PAGE;
			}
			rs.close();
			pstmt.close();
		} catch (SQLException ex) {
			ex.printStackTrace();
		} finally {
			dbmanager.freeConnection(conn, "DB");
			// dbo.close();
		}

		return page;
	}

	/**
	 * 根据用户ID更新用户信息
	 */
	public boolean updateUserInfo(UserInfo ui, int userId) {
		DBOperator dbo = new DBOperator();
		String query = "update tt_user set username = '";
		      query += ui.getUserName() + "',password = '";
		      query += ui.getPassWord() + "',personname = '";
		      query += ui.getPersonName() + "',headship = '";
		      query += ui.getHeadShip() + "',department = '";
		      query += ui.getDepartment() + "',city = '";
		      query += ui.getCity() + "',county = '";
		      query += ui.getCounty() + "',telephone = '";
		      query += ui.getTelephone() + "',memo='";
		      query += ui.getMemo() + "',recorder='";
		      query += ui.getRecorder() +"',fax='";
		      query += ui.getFax() + "',";
		      query += " modifiedTime = curdate() where userId = " + userId;
	
		try {
			System.out.println(query);
			dbo.setPrepareStatement(query);
			dbo.executeUpdate();
			return true;
		} catch (Exception e) {
		} finally {
			dbo.close();
		}
		return false;
	}
    /**
     * 添加用户操作记录
     */
	public boolean addLogInfo(LogInfo log) {
		DBOperator dbo = new DBOperator();
		String query = "insert into tt_log(userId,operator,createTime) values(";

⌨️ 快捷键说明

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