package com.lanyotech.pps.mvc; import com.easyjf.container.annonation.Action; import com.easyjf.container.annonation.Inject; import com.easyjf.core.support.query.QueryObject; import com.easyjf.util.CommUtil; import com.easyjf.web.Module; import com.easyjf.web.Page; import com.easyjf.web.WebForm; import com.easyjf.web.core.AbstractPageCmdAction; import com.easyjf.web.tools.IPageList; import com.lanyotech.pps.domain.Employee; import com.lanyotech.pps.service.IEmployeeService; import com.lanyotech.pps.service.LogicException; /** * EmployeeAction * @author EasyJWeb 1.0-m2 * $Id: EmployeeAction.java,v 0.0.1 2010-6-6 18:34:50 EasyJWeb 1.0-m3 with ExtJS Exp $ */ @Action public class EmployeeAction extends AbstractPageCmdAction { @Inject private IEmployeeService service; /* * set the current service * return service */ public void setService(IEmployeeService service) { this.service = service; } public Page doIndex(WebForm f, Module m) { return page("list"); } public Page doList(WebForm form) { QueryObject qo = form.toPo(QueryObject.class); IPageList pageList = service.getEmployeeBy(qo); form.jsonResult(pageList); return Page.JSONPage; } public Page doRemove(WebForm form) { Long id = new Long(CommUtil.null2String(form.get("id"))); //service.delEmployee(id); this.addError("msg","不能删除用户!"); return pageForExtForm(form); } public Page doChangePassword(WebForm form) { String password=CommUtil.null2String(form.get("oldPassword")); String newPassword=CommUtil.null2String(form.get("password")); try{ service.changePassword(password,newPassword); } catch(LogicException e){ this.addError("oldPassword", e.getMessage()); this.addError("msg", e.getMessage()); } return pageForExtForm(form); } public Page doSave(WebForm form) { Employee object = form.toPo(Employee.class); if (!hasErrors()) service.addEmployee(object); return pageForExtForm(form); } public Page doUpdate(WebForm form) { Long id = new Long(CommUtil.null2String(form.get("id"))); Employee object = service.getEmployee(id); String password=object.getPassword(); form.toPo(object, true); object.setPassword(password); if (!hasErrors()) service.updateEmployee(id, object); return pageForExtForm(form); } }