package com.cabletech.business.workflow.fault.action; import java.util.List; 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.common.model.CommonWorkflowResult; import com.cabletech.business.workflow.fault.model.FaultAlert; import com.cabletech.business.workflow.fault.model.FaultAudit; 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.FaultAuditService; import com.cabletech.business.workflow.fault.service.FaultDispatchService; import com.cabletech.business.workflow.fault.service.FaultReplyService; import com.cabletech.business.workflow.fault.service.FaultWorkflowService; import com.cabletech.common.base.SysConstant; /** * 故障回单审核处理Action * * @author 杨隽 2011-10-26 创建 * @author 杨隽 2011-10-27 修改“故障回单审核页面跳转”方法和“故障回单审核操作”方法 * @author 杨隽 2011-10-31 添加“故障回单审核历史信息查看操作”方法 * @author 杨隽 2012-02-15 修改showAuditHistoryList()方法 * @author 杨隽 2012-07-18 添加系统定义的“是否选择”Map * */ @Namespace("/workflow") @Results({ @Result(name = "input", location = "/workflow/fault/fault_audit_input.jsp"), @Result(name = "show_audit_history_list", location = "/workflow/fault/fault_show_audit_history_list.jsp") }) @Action("/faultAuditAction") public class FaultAuditAction extends FaultBaseAction<FaultAudit, String> { // 序列化编号 private static final long serialVersionUID = 1L; // 故障派单回复验证历史列表跳转页面名称 private static final String SHOW_AUDIT_HISTORY_LIST = "show_audit_history_list"; // 流程处理历史key public static final String PROCESS_HISTORY_MAP = "FAULT_AUDIT_HISTORY_MAP"; // 故障审核结果实体 private FaultAudit faultAudit; // 故障告警单业务处理服务 @Resource(name = "faultAlertServiceImpl") private FaultAlertService faultAlertManager; // 故障派单业务处理服务 @Resource(name = "faultDispatchServiceImpl") private FaultDispatchService faultDispatchManager; // 故障派单回复业务处理服务 @Resource(name = "faultReplyServiceImpl") private FaultReplyService faultReplyManager; // 故障派单回复验证业务处理服务 @Resource(name = "faultAuditServiceImpl") private FaultAuditService faultAuditManager; // 故障派单工作流业务处理服务 @Resource(name = "faultWorkflowService") private FaultWorkflowService faultWorkflowService; @Override public String input() throws Exception { FaultDispatch faultDispatch = faultDispatchManager .viewFaultDispatch(super.parameter.getId()); FaultAlert faultAlert = faultAlertManager.viewFaultAlert(faultDispatch .getAlarmId()); FaultReply faultReply = faultReplyManager.getFaultReply(super.parameter .getId()); // 获取故障告警单的资源名称 String resourceName = super.faultResourceManager.viewResourceInfo( faultAlert.getStationId()).getResourceName(); faultAlert.setStationName(resourceName); Map<String, String> whetherMap = SysConstant.getWhetherMap(); super.getRequest().setAttribute("whetherMap", whetherMap); super.getRequest().setAttribute("fault_alert", faultAlert); super.getRequest().setAttribute("fault_dispatch", faultDispatch); super.getRequest().setAttribute("fault_reply", faultReply); return INPUT; } /** * 故障回单审核操作 * * @return String */ public String audit() { UserInfo userInfo = super.getUser(); faultAuditManager.audit(faultAudit, userInfo); super.addMessage("提示:故障回单审核成功!", WAIT_HANDLED_PAGE_URL, SysConstant.SUCCESS); return SUCCESS; } /** * 故障回单审核历史信息查看操作 * * @return String */ public String showAuditHistoryList() { Map<String, List<CommonWorkflowResult>> map = faultWorkflowService .getProcessHistoryList(super.parameter.getId()); super.getRequest().setAttribute(PROCESS_HISTORY_MAP, map); return SHOW_AUDIT_HISTORY_LIST; } @Override public FaultAudit getModel() { return null; } public FaultAudit getFaultAudit() { return faultAudit; } public void setFaultAudit(FaultAudit faultAudit) { this.faultAudit = faultAudit; } @Override protected void prepareViewModel() throws Exception { } @Override protected void prepareSaveModel() throws Exception { } }