📄 userproxy.java
字号:
package com.tb.log.model.proxy;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
import com.tb.log.factory.OracleDAOFactory;
import com.tb.log.model.bo.vo.user.EditInfoVo;
import com.tb.log.model.bo.vo.user.LoginVo;
import com.tb.log.model.bo.vo.user.ShowUserVo;
import com.tb.log.model.bo.vo.user.UserVo;
import com.tb.log.model.dao.DAOFactory;
import com.tb.log.model.dao.idao.IDeptDAO;
import com.tb.log.model.dao.idao.IProDAO;
import com.tb.log.model.dao.idao.IRoleDAO;
import com.tb.log.model.dao.idao.IUserDAO;
import com.tb.log.model.po.Dept;
import com.tb.log.model.po.User;
import com.tb.log.system.SystemException;
import com.tb.log.util.pages.PageBean;
import com.tb.log.util.tools.GetUserInfoSql;
import com.tb.log.util.tools.ToolKit;
public class UserProxy extends Proxy{
@Override
public boolean add(Object obj){
return true;
}
public UserVo save(UserVo userVo) {
//UserVo userVo = (UserVo)obj;
UserVo uv = null;
IUserDAO iuser = DAOFactory.getDAOFactory(DAOFactory.ORACLE).getUserDAO();
IRoleDAO iRole = DAOFactory.getDAOFactory(DAOFactory.ORACLE).getRoleDAO();
User user1 = new User(userVo.getUser_id(),userVo.getUser_name(), userVo.getStu_id() ,userVo.getSex(),
userVo.getBirthday(), userVo.getTelephone() ,userVo.getAddress() , userVo.getEmail() ,
userVo.getQq(),userVo.getMsn(), userVo.getDeptid() ,userVo.getGrade() ,
userVo.getLoginname() ,userVo.getPsw() ,userVo.getQuestion(),userVo.getGrade() ,
userVo.getStartdate(), userVo.getIntodate(),userVo.getRegdate(), userVo.getUser_state());
Connection conn = OracleDAOFactory.getConnection();
try {
try {
conn.setAutoCommit(false);
iuser.save(user1);
User user = iuser.findByNamePsw(userVo.getLoginname(), userVo.getPsw());
uv = new UserVo(user.getUser_id(),user.getUser_name(), user.getStu_id() ,user.getSex(),
user.getBirthday(), user.getTelephone() ,user.getAddress() , user.getEmail() ,
user.getQq(),user.getMsn(), user.getDeptid() ,user.getGrade() ,
user.getLoginname() ,user.getPsw() ,user.getQuestion(),user.getGrade() ,
user.getStartdate(), user.getIntodate(),user.getRegdate(), user.getUser_state());
//赋初值组员角色
iRole.addUserRoleByRoleList(userVo.getUser_id(), new ToolKit().StringToArray("4"));
conn.commit();
conn.setAutoCommit(true);
} catch (SQLException e) {
try {
conn.rollback();
} catch (SQLException e1) {
e1.printStackTrace();
}
e.printStackTrace();
}
} catch (SystemException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return uv;
}
@Override
public Object get(int id) {
DAOFactory daoFactory = DAOFactory.getDAOFactory(DAOFactory.ORACLE);
IUserDAO iUserDAO = daoFactory.getUserDAO();
IRoleDAO iRoleDAO = daoFactory.getRoleDAO();
UserVo userVo = null;
try {
User user = (User)iUserDAO.findById(Integer.toString(id));
if(user != null){
userVo = new UserVo(user.getUser_id(),user.getUser_name(), user.getStu_id() ,user.getSex(),
user.getBirthday(), user.getTelephone() ,user.getAddress() , user.getEmail() ,
user.getQq(),user.getMsn(), user.getDeptid() ,user.getGrade() ,
user.getLoginname() ,user.getPsw() ,user.getQuestion(),user.getGrade() ,
user.getStartdate(), user.getIntodate(),user.getRegdate(), user.getUser_state());
}
// String id = Integer.toString(userVo.getUser_id());
//userVo.setRoles((Set)iRoleDAO.findById(id));
} catch (SystemException e) {
System.err.println(e);
}
return userVo;
}
@Override
public Object load(int id) {
// TODO Auto-generated method stub
return null;
}
@Override
public boolean modify(Object obj) {
boolean b = false;
UserVo userVo = (UserVo)obj;
UserVo uv = null;
IUserDAO iuser = DAOFactory.getDAOFactory(DAOFactory.ORACLE).getUserDAO();
User user1 = new User(userVo.getUser_id(),userVo.getUser_name(), userVo.getStu_id() ,userVo.getSex(),
userVo.getBirthday(), userVo.getTelephone() ,userVo.getAddress() , userVo.getEmail() ,
userVo.getQq(),userVo.getMsn(), userVo.getDeptid() ,userVo.getGrade() ,
userVo.getLoginname() ,userVo.getPsw() ,userVo.getQuestion(),userVo.getGrade() ,
userVo.getStartdate(), userVo.getIntodate(),userVo.getRegdate(), userVo.getUser_state());
Connection conn = OracleDAOFactory.getConnection();
try {
try {
conn.setAutoCommit(false);
iuser.update(user1);
conn.commit();
conn.setAutoCommit(true);
b = true;
} catch (SQLException e) {
try {
conn.rollback();
} catch (SQLException e1) {
e1.printStackTrace();
}
e.printStackTrace();
}
} catch (SystemException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return b;
}
@Override
public boolean remove(Object obj) {
// TODO Auto-generated method stub
return false;
}
public Map findByNamePsw(LoginVo loginVo) throws SystemException{
Map map = new HashMap();
List roleList = new ArrayList();
DAOFactory daoFactory = DAOFactory.getDAOFactory(DAOFactory.ORACLE);
IUserDAO iUserDAO = daoFactory.getUserDAO();
IRoleDAO iRoleDAO = daoFactory.getRoleDAO();
UserVo userVo = null;
try {
User user = iUserDAO.findByNamePsw(loginVo.getLoginname(), loginVo.getPsw());
if(user != null){
userVo = new UserVo(user.getUser_id(),user.getUser_name(), user.getStu_id() ,user.getSex(),
user.getBirthday(), user.getTelephone() ,user.getAddress() , user.getEmail() ,
user.getQq(),user.getMsn(), user.getDeptid() ,user.getGrade() ,
user.getLoginname() ,user.getPsw() ,user.getQuestion(),user.getGrade() ,
user.getStartdate(), user.getIntodate(),user.getRegdate(), user.getUser_state());
roleList = iRoleDAO.findById("roleid", "userid", user.getUser_id());
}
map.put(1, userVo);
map.put(2, roleList);
// String id = Integer.toString(userVo.getUser_id());
//userVo.setRoles((Set)iRoleDAO.findById(id));
} catch (SystemException e) {
String err = "用户名或密码错误!";
throw new SystemException(err);
}
return map;
}
public Map showUserInfo(ShowUserVo showUserVo){
Map map = new HashMap();
DAOFactory daoFactory = DAOFactory.getDAOFactory(DAOFactory.ORACLE);
IUserDAO iUserDAO = daoFactory.getUserDAO();
IDeptDAO iDeptDAO = daoFactory.getDeptDAO();
IProDAO iProDAO = daoFactory.getProDAO();
//IDeptDAO idept = daoFactory.getDeptDAO();
try {
User user = iUserDAO.findById(Integer.toString(showUserVo.getUser_id()));
String deptid = user.getDeptid();
String supper_id ="11";
if(user.getGrade().equals("班长")){
supper_id = iDeptDAO.findById(deptid).getSupper_id();
}else if(user.getGrade().equals("组长")){
supper_id = deptid;
}
List deptlist = null;
if(user.getGrade().equals("管理员")){
deptlist = iDeptDAO.findIdByGrade("3");
}else{
deptlist = iDeptDAO.findSubidById(Integer.parseInt(supper_id));
}
//权限集合组串
String str = ToolKit.ListToString(deptlist);
String pageSql = new GetUserInfoSql().getPageSql(showUserVo.getSupper_id(),showUserVo.getDept_name(),showUserVo.getPro_name(),showUserVo.getGrade(),showUserVo.getUser_name(),str);
String countSql = new GetUserInfoSql().getCountSql(showUserVo.getSupper_id(),showUserVo.getDept_name(),showUserVo.getPro_name(),showUserVo.getGrade(),showUserVo.getUser_name(),str);
System.out.println(pageSql);
List userInfoList= iUserDAO.findUserInfoList(showUserVo.getCurrentPage(),pageSql);
PageBean page = iUserDAO.getTotalResults(countSql);
List sdeptName = iDeptDAO.findByGrade("2");
List deptName = iDeptDAO.findByGrade("3");
List deptList = iDeptDAO.findAll();
List proList = iProDAO.findProName();
map.put(1, userInfoList);
map.put(2, page);
map.put(3, sdeptName);
map.put(4, deptName);
map.put(5, deptList);
map.put(6, proList);
} catch (SystemException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return map;
}
public Map getUserInfo(UserVo userVo){
Map map = new HashMap();
IUserDAO iuser = DAOFactory.getDAOFactory(DAOFactory.ORACLE).getUserDAO();
IDeptDAO idept = DAOFactory.getDAOFactory(DAOFactory.ORACLE).getDeptDAO();
IProDAO ipro = DAOFactory.getDAOFactory(DAOFactory.ORACLE).getProDAO();
try {
User user = iuser.findById(Integer.toString(userVo.getUser_id()));
Dept dept = idept.findById(userVo.getDeptid());
List proidList = ipro.findById("pro_id", "user_id", userVo.getUser_id());
List proList = ipro.findById(proidList);
List deptNameList = idept.findByGrade("2");
map.put(1, user);
map.put(2, dept);
map.put(3, proList);
map.put(4, deptNameList);
} catch (SystemException e) {
e.printStackTrace();
}
return map;
}
public Map getProList(int user_id){
Map map = new HashMap();
IProDAO ipro = DAOFactory.getDAOFactory(DAOFactory.ORACLE).getProDAO();
try {
// List proidList= ipro.findById("pro_id", "user_id", user_id);
// List proList = ipro.findById(proidList);
List proList = ipro.findProName();
map.put(1, proList);
} catch (SystemException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return map;
}
public void editUserInfo(EditInfoVo editInfoVo){
String str = "";
if(editInfoVo.getGrade().equals("班长")){
str = "2";
}else if(editInfoVo.getGrade().equals("组长")){
str = "3";
}else{
str = "4";
}
IUserDAO iuser = DAOFactory.getDAOFactory(DAOFactory.ORACLE).getUserDAO();
IProDAO ipro = DAOFactory.getDAOFactory(DAOFactory.ORACLE).getProDAO();
IRoleDAO iRole = DAOFactory.getDAOFactory(DAOFactory.ORACLE).getRoleDAO();
Connection conn = OracleDAOFactory.getConnection();
try {
try {
conn.setAutoCommit(false);
User user = iuser.findById(Integer.toString(editInfoVo.getUser_id()));
user.setGrade(editInfoVo.getGrade());
user.setDeptid(editInfoVo.getDept_id());
iuser.editUserInfo(user);
ipro.addUserProByProList(editInfoVo.getUser_id(), ToolKit.StringToArray(editInfoVo.getProsid()));
iRole.addUserRoleByRoleList(editInfoVo.getUser_id(), new ToolKit().StringToArray(str));
conn.commit();
conn.setAutoCommit(true);
} catch (SQLException e) {
try {
conn.rollback();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
e.printStackTrace();
}
} catch (SystemException e) {
e.printStackTrace();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -