package com.fgkj.dao.impl; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import com.fgkj.dao.BaseDAO; import com.fgkj.dao.CallBack; import com.fgkj.dao.DAOHelper; import com.fgkj.dao.UinfDaoFactory; import com.fgkj.db.DBUtil; import com.fgkj.db.IDatabaseName; import com.fgkj.dto.User_inf; import com.fgkj.dto.User_log; import com.fgkj.dto.User_permitgroup; import com.fgkj.services.User_logService; public class User_permitgroupImpl implements BaseDAO,CallBack{ public List getResults(ResultSet rs) { List list=new ArrayList(); try { while(rs.next()){ User_permitgroup ugroup=new User_permitgroup(); ugroup.setNum(rs.getInt("num")); ugroup.setPermit_group_id(rs.getInt("permit_group_id")); ugroup.setPermit_group_name(rs.getString("permit_group_name")); ugroup.setPermit_item_name(rs.getString("permit_item_name")); ugroup.setPermit_item_value(rs.getInt("permit_item_value")); list.add(ugroup); } } catch (SQLException e) { e.printStackTrace(); } return list; } //5.2添加(新增权限组并将所有权限都添加) public boolean add(Object obj) { User_permitgroup ugroup=(User_permitgroup) obj; String sql="insert into db_user.tb_user_permitgroup(permit_group_id,permit_group_name,permit_item_name,permit_item_value) values(?,?,?,?)"; Boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{ugroup.getPermit_group_id(),ugroup.getPermit_group_name(), ugroup.getPermit_item_name(),ugroup.getPermit_item_value()}); return bl; } //5.2添加(新增权限组并将所有权限都添加) public boolean addPro(Object obj) { List list=(List) obj; ArrayList sql_strs=new ArrayList(); if(list!=null&&list.size()>0){ for (User_permitgroup ugroup : list) { String sql="insert into db_user.tb_user_permitgroup(permit_group_id,permit_group_name,permit_item_name,permit_item_value) values("+ugroup.getPermit_group_id()+",'"+ugroup.getPermit_group_name()+"','"+ugroup.getPermit_item_name()+"',"+ugroup.getPermit_item_value()+")"; sql_strs.add(sql); } } boolean bl=DAOHelper.makeManualCommit(DBUtil.getConn(), sql_strs); return bl; } //5.2编辑(修改权限值) public boolean update(Object obj) { List list=(List) obj; ArrayList sql_strs=new ArrayList(); if(list!=null&&list.size()>0){ for (User_permitgroup ugroup : list) { String sql="update db_user.tb_user_permitgroup set permit_item_value='"+ugroup.getPermit_item_value()+"' where num="+ugroup.getNum(); sql_strs.add(sql); } } boolean bl=DAOHelper.makeManualCommit(DBUtil.getConn(), sql_strs); return bl; } //5.2编辑(修改权限值) public boolean updatePro(Object obj) { User_permitgroup ugroup=(User_permitgroup) obj; String sql="update db_user.tb_user_permitgroup set permit_item_value=? where num=? "; Boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{ ugroup.getPermit_item_value(),ugroup.getNum()}); return bl; } //5.2重命名(修改权限名) public boolean updateName(Object obj) { User_permitgroup ugroup=(User_permitgroup) obj; String sql="update db_user.tb_user_permitgroup set permit_group_name=? where permit_group_id=?"; Boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{ ugroup.getPermit_group_name(),ugroup.getPermit_group_id()}); return bl; } //5.2删除(删除所有该权限组) public boolean del(Object obj) { User_permitgroup ugroup=(User_permitgroup) obj; String sql="delete from db_user.tb_user_permitgroup where tb_user_permitgroup.permit_group_id=? "; Boolean bl=DAOHelper.executeUpdate(DBUtil.getConn(), sql, new Object[]{ugroup.getPermit_group_id()}); return bl; } //5.1根据uid查权限 public List serchByCondition(Object obj) { User_inf uinf=(User_inf) obj; String sql="select distinct(permit_group_name),tb_user_permitgroup.permit_group_id from db_user.tb_user_permitgroup,db_user.tb_user_permitgroup_data where tb_user_permitgroup.permit_group_id=tb_user_permitgroup_data.permit_group_id" + " and tb_user_permitgroup_data.uid=?"; List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{uinf.getUId()}, new CallBack() { public List getResults(ResultSet rs) { List list=new ArrayList(); try { while(rs.next()){ User_permitgroup upgroup=new User_permitgroup(); upgroup.setPermit_group_name(rs.getString("permit_group_name")); upgroup.setPermit_group_id(rs.getInt("permit_group_id")); list.add(upgroup); } } catch (SQLException e) { e.printStackTrace(); } return list; } }); return list; } //5.2查所有的权限id和权限名称 public List searchAll() { String sql="select distinct(permit_group_id),permit_group_name from db_user.tb_user_permitgroup"; List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), null, new CallBack() { public List getResults(ResultSet rs) { List list=new ArrayList(); try { while(rs.next()){ User_permitgroup ugroup=new User_permitgroup(); ugroup.setPermit_group_id(rs.getInt("permit_group_id")); ugroup.setPermit_group_name(rs.getString("permit_group_name")); list.add(ugroup); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return list; } }); return list; } //5.2根据权限id查用户 public List serchByPermit(Object obj){ User_permitgroup ugroup=(User_permitgroup) obj; String sql="select distinct(uname),tb_user_inf.uid,tb_user_permitgroup_data.num from db_user.tb_user_inf,db_user.tb_user_permitgroup,db_user.tb_user_permitgroup_data " + "where tb_user_permitgroup.permit_group_id=tb_user_permitgroup_data.permit_group_id " + "and tb_user_inf.uid=tb_user_permitgroup_data.uid " + "and tb_user_permitgroup.permit_group_id=?"; List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{ugroup.getPermit_group_id()}, new CallBack() { public List getResults(ResultSet rs) { List list = new ArrayList(); try { while(rs.next()){ User_inf uinf=new User_inf(); uinf.setUId(rs.getInt("uId")); uinf.setUName(rs.getString("uName")); list.add(uinf); } } catch (SQLException e) { e.printStackTrace(); } return list; } }); return list; } //5.2根据权限组id查对应的所有权限 public List serchByInfo(Object obj) { User_permitgroup ugroup=(User_permitgroup) obj; String sql="select num,permit_group_id,permit_group_name,permit_item_name,permit_item_value from db_user.tb_user_permitgroup " + "where permit_group_id=? order by permit_group_id"; List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{ugroup.getPermit_group_id()}, new User_permitgroupImpl()); return list; } //5.2查所有具体的权限 public List serchRole() { String sql="select distinct(permit_item_name) from db_user.tb_user_permitgroup "; List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), null, new CallBack() { public List getResults(ResultSet rs) { List list=new ArrayList(); try { while(rs.next()){ User_permitgroup ugroup=new User_permitgroup(); ugroup.setPermit_item_name(rs.getString("permit_item_name")); list.add(ugroup); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return list; } }); return list; } //5.2查最大的权限Id public List serchMaxRoleId() { String sql="select max(permit_group_id)as permit_group_id from db_user.tb_user_permitgroup "; List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), null, new CallBack() { public List getResults(ResultSet rs) { List list=new ArrayList(); try { while(rs.next()){ User_permitgroup ugroup=new User_permitgroup(); ugroup.setPermit_group_id(rs.getInt("permit_group_id")); list.add(ugroup); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return list; } }); return list; } //5.2根据用户id查对应的权限值为1的所有权限 public List serchItem(Object obj){ User_inf uinf=(User_inf) obj; String sql="select tb_user_permitgroup.num,permit_group_name,permit_item_name,permit_item_value " + "from db_user.tb_user_permitgroup,db_user.tb_user_permitgroup_data " + "where tb_user_permitgroup.permit_group_id=tb_user_permitgroup_data.permit_group_id " + "and tb_user_permitgroup_data.uId=? " + "and tb_user_permitgroup.permit_item_value=1 "; List list=DAOHelper.executeQuery(sql, DBUtil.getConn(), new Object[]{uinf.getUId()}, new CallBack() { public List getResults(ResultSet rs) { List list=new ArrayList(); try { while(rs.next()){ User_permitgroup ugroup=new User_permitgroup(); ugroup.setNum(rs.getInt("num")); ugroup.setPermit_group_name(rs.getString("permit_group_name")); ugroup.setPermit_item_name(rs.getString("permit_item_name")); ugroup.setPermit_item_value(rs.getInt("permit_item_value")); list.add(ugroup); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return list; } }); return list; } public static void main(String[] args) { User_permitgroupImpl uimpl=new User_permitgroupImpl(); /*List list=up.searchAll(); for(User_permitgroup u:list){ System.out.println(u); }*/ /*User_permitgroup u=new User_permitgroup(); u.setNum(144); List list=up.serchByCondition(u); for(User_permitgroup uu:list){ System.out.println(uu); }*/ /*User_inf uinf=new User_inf(); uinf.setUId(1002); List list=uimpl.serchByCondition(uinf); System.out.println(list.size());*/ User_permitgroup ugroup=new User_permitgroup(); ugroup.setPermit_group_id(100002); //List list=uimpl.serchByInfo(ugroup); List list=uimpl.serchByPermit(ugroup); for(User_inf uu:list){ System.out.println(uu); } } }