📄 employeeaction.java
字号:
/**
*
*/
package com.qrsx.qrsxcrm.action;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.commons.beanutils.BeanUtils;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.hibernate.ObjectDeletedException;
import com.qrsx.qrsxcrm.dao.DutyDAO;
import com.qrsx.qrsxcrm.dao.EmployeeDAO;
import com.qrsx.qrsxcrm.dao.HibernateUtil;
import com.qrsx.qrsxcrm.form.EmployeeForm;
import com.qrsx.qrsxcrm.model.Dept;
import com.qrsx.qrsxcrm.model.Duty;
import com.qrsx.qrsxcrm.model.Employee;
import com.qrsx.qrsxcrm.web.Pager;
/**
* @author Administrator
*
*/
public class EmployeeAction extends BaseDispatchAction
{
@SuppressWarnings("unchecked")
public ActionForward save(ActionMapping mapping,ActionForm form ,HttpServletRequest request,HttpServletResponse response)throws Exception{
ActionErrors errors=form.validate(mapping,request);
if(!errors.isEmpty()){
saveErrors(request,errors);
return edit(mapping,form,request,response);
}
EmployeeDAO employeeDAO=new EmployeeDAO(Employee.class);
EmployeeForm employeeForm = (EmployeeForm)form;
String dutyId=employeeForm.getDutyId();
Duty duty = (Duty) employeeDAO.findById(Duty.class, dutyId);
String deptId=employeeForm.getDeptId();
Dept dept = (Dept)employeeDAO.findById(Dept.class, deptId);
Employee employee=new Employee();
BeanUtils.copyProperties(employee,form);
employee.setDept(dept);
employee.setDuty(duty);
if( employee.getId()==null||employee.getId().trim().length()==0 ){
employeeDAO.create(employee);
saveMessage(request,"addressForm.added" ,employee.getEmployeeName());
}
else{
employeeDAO.updates(employee);
saveMessage(request,"addressForm.updated",employee.getEmployeeName());
}
return mapping.findForward("success");
}
@SuppressWarnings("unchecked")
public ActionForward list(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response) throws Exception{
HttpSession session = request.getSession();
String flag = (String) session.getAttribute("wrong");
if( flag != null && ! flag.equals(""))
{
request.setAttribute("sorry", "数据已被使用,请释放后再删除!");
}
session.setAttribute("wrong", "");
Employee employee=new Employee();
BeanUtils.copyProperties(employee,form);
EmployeeDAO employeeDAO=new EmployeeDAO(Employee.class);
EmployeeForm employeeForm = (EmployeeForm)form;
String dutyId=employeeForm.getDutyId();
String deptId=employeeForm.getDeptId();
if( dutyId != null )
{
Duty duty = (Duty) employeeDAO.findById(Duty.class, dutyId);
employee.setDuty(duty);
}
if( deptId!=null)
{
Dept dept = (Dept)employeeDAO.findById(Dept.class, deptId);
employee.setDept(dept);
}
List<Duty> dutys = employeeDAO.findAll("from Duty");
List<Dept> depts = employeeDAO.findAll("from Dept");
request.setAttribute("dutys",dutys);
request.setAttribute("depts",depts);
try {
Pager pager = null;
List results = employeeDAO.findAll("from Employee");//得到总数据
pager = new Pager(); // 构造分页对象
int totalRows = results.size(); // 得到总数据量
pager.init(totalRows);
if (request.getParameter("action") != null) {
pager.doAction(request.getParameter("action").toString());
}
// 使用分页标签的方法
List list = employeeDAO.findAllByPage(employee, (pager.getCurrentPage() - 1)* pager.getPageSize(),pager.getPageSize());
request.getSession().setAttribute("pagerstruts", pager);
request.setAttribute("employees", list);
} catch (Exception e) {
e.printStackTrace();
}
return mapping.findForward("list");
}
@SuppressWarnings("unchecked")
public ActionForward edit(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response) throws Exception{
EmployeeDAO employeeDAO=new EmployeeDAO(Employee.class);
String id=request.getParameter("id");
List<Duty> dutys = employeeDAO.findAll("from Duty");
List<Dept> depts = employeeDAO.findAll("from Dept");
request.setAttribute("dutys",dutys);
request.setAttribute("depts",depts);
if(id!=null&&id.trim().length()>0){
Employee employee =(Employee) employeeDAO.findById( Employee.class, id);
if( employee.getDept() != null )
{
employee.setDeptId(employee.getDept().getId());
}
if( employee.getDuty() != null )
{
employee.setDutyId(employee.getDuty().getId());
}
if (employee!=null){
BeanUtils.copyProperties(form,employee);
}
}
return mapping.findForward("edit");
}
@SuppressWarnings({ "unchecked", "finally" })
public ActionForward delete(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response) throws Exception{
String id=request.getParameter("id");
EmployeeDAO employeeDAO=new EmployeeDAO(Employee.class);
Employee employee =(Employee) employeeDAO.findById( Employee.class, id);
try{
employeeDAO.delete(employee);
HibernateUtil.getSession().flush();
}catch( ObjectDeletedException e )
{
e.printStackTrace();
request.getSession().setAttribute("wrong", "错误信息");
}
finally
{
saveMessage(request,"addressForm.deleted",employee.getEmployeeName());
return mapping.findForward("success");
}
}
public ActionForward info(ActionMapping mapping,ActionForm form,HttpServletRequest request,HttpServletResponse response) throws Exception{
String id=request.getParameter("id");
if(id!=null&&id.trim().length()>0){
EmployeeDAO employeeDAO=new EmployeeDAO(Employee.class);
Employee employee =(Employee) employeeDAO.findById( Employee.class, id);
request.setAttribute("employee",employee);
}
return mapping.findForward("info");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -