package com.cabletech.business.workflow.fault.action; import java.util.Map; import javax.annotation.Resource; import org.apache.struts2.convention.annotation.Action; import org.apache.struts2.convention.annotation.Namespace; import org.apache.struts2.convention.annotation.Result; import org.apache.struts2.convention.annotation.Results; import com.cabletech.baseinfo.business.entity.UserInfo; import com.cabletech.business.workflow.fault.model.FaultAlert; import com.cabletech.business.workflow.fault.model.FaultDispatch; import com.cabletech.business.workflow.fault.model.FaultReply; import com.cabletech.business.workflow.fault.service.FaultAlertService; import com.cabletech.business.workflow.fault.service.FaultDispatchService; import com.cabletech.business.workflow.fault.service.FaultReplyService; import com.cabletech.common.base.SysConstant; /** * 故障回单处理Action * * @author 杨隽 2011-10-26 创建 * @author 杨隽 2011-10-27 修改“故障回单填写页面跳转”方法和“故障回单操作”方法 * @author 杨隽 2012-07-18 添加系统定义的“是否选择”Map * */ @Namespace("/workflow") @Results({ @Result(name = "input", location = "/workflow/fault/fault_reply_input.jsp"), @Result(name = "show", location = "/workflow/fault/fault_reply_show.jsp") }) @Action("/faultReplyAction") public class FaultReplyAction extends FaultBaseAction<FaultReply, String> { // 序列化编号 private static final long serialVersionUID = 1L; // 故障回单实体 private FaultReply faultReply; // 故障告警单业务处理服务 @Resource(name = "faultAlertServiceImpl") private FaultAlertService faultAlertManager; // 故障派单业务处理服务 @Resource(name = "faultDispatchServiceImpl") private FaultDispatchService faultDispatchManager; // 故障派单回复业务处理服务 @Resource(name = "faultReplyServiceImpl") private FaultReplyService faultReplyManager; /** * 故障回单填写页面 * * @return String */ public String input() { FaultDispatch faultDispatch = faultDispatchManager .viewFaultDispatch(super.parameter.getId()); FaultAlert faultAlert = faultAlertManager.viewFaultAlert(faultDispatch .getAlarmId()); // 获取故障告警单的资源名称 String resourceName = super.faultResourceManager.viewResourceInfo( faultAlert.getStationId()).getResourceName(); faultAlert.setStationName(resourceName); String workflowTaskId = faultReply.getWorkflowTaskId(); faultReply = faultReplyManager.getFaultReply(faultDispatch.getId()); faultReply.setWorkflowTaskId(workflowTaskId); Map<String, String> whetherMap = SysConstant.getWhetherMap(); super.getRequest().setAttribute("whetherMap", whetherMap); super.getRequest().setAttribute("fault_alert", faultAlert); super.getRequest().setAttribute("fault_dispatch", faultDispatch); return INPUT; } /** * 故障回单操作 * * @return String */ public String reply() { UserInfo userInfo = super.getUser(); FaultDispatch faultDispatch = faultDispatchManager .viewFaultDispatch(faultReply.getTaskId()); FaultAlert faultAlert = faultAlertManager.viewFaultAlert(faultDispatch .getAlarmId()); faultReplyManager.reply(faultReply, userInfo); faultReplyManager.doEomsReply(faultReply, faultAlert); super.addMessage("提示:故障回单成功!", WAIT_HANDLED_PAGE_URL, SysConstant.SUCCESS); return SUCCESS; } @Override public FaultReply getModel() { // TODO Auto-generated method stub return null; } public FaultReply getFaultReply() { return faultReply; } public void setFaultReply(FaultReply faultReply) { this.faultReply = faultReply; } @Override protected void prepareViewModel() throws Exception { // TODO Auto-generated method stub } @Override protected void prepareSaveModel() throws Exception { // TODO Auto-generated method stub } }