package com.cabletech.business.workflow.fault.service.impl; import java.util.Date; import javax.annotation.Resource; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.cabletech.baseinfo.business.entity.UserInfo; import com.cabletech.business.resource.service.ResourceService; import com.cabletech.business.workflow.fault.condition.parameter.FaultQueryParameter; import com.cabletech.business.workflow.fault.dao.FaultBaseDao; import com.cabletech.business.workflow.fault.model.FaultAlert; import com.cabletech.business.workflow.fault.service.FaultAlertService; import com.cabletech.common.util.Page; /** * 故障告警业务操作 * * @author 杨隽 2011-10-26 创建 * @author 杨隽 2011-10-27 添加“查看故障告警单”业务方法、“忽略故障告警单”业务方法 * @author 杨隽 2012-02-07 添加getList()方法和getUnDispatchedList()方法 * @author 杨隽 2012-02-08 修改getBaseDao()方法实现为getFaultBaseDao ()方法实现 * @author 杨隽 2012-02-08 提取获取故障业务单列表的公共方法 * @author 杨隽 2012-07-12 修改viewFaultAlert()方法(添加获取资源名称业务处理) * */ @Service public class FaultAlertServiceImpl extends FaultBaseServiceImpl<FaultAlert, String> implements FaultAlertService { // 故障告警单Dao操作 @Resource(name = "faultAlertDao") private FaultBaseDao<FaultAlert, String> faultAlertDao; // 资源服务类 @Resource(name = "resourceServiceImpl") private ResourceService resourceService; @Override protected FaultBaseDao<FaultAlert, String> getFaultBaseDao() { // TODO Auto-generated method stub return faultAlertDao; } /** * 根据故障告警单编号查看故障告警单信息 * * @param id * String 故障告警单编号 * @return FaultAlert 故障告警单信息 */ @Transactional(readOnly = true) public FaultAlert viewFaultAlert(String id) { // TODO Auto-generated method stub FaultAlert faultAlert = faultAlertDao.get(id); if (faultAlert != null) { String stationName = resourceService.getResourceName( faultAlert.getBusinessType(), faultAlert.getStationId(), faultAlert.getStationType()); faultAlert.setStationName(stationName); } return faultAlert; } /** * 忽略故障告警单 * * @param id * String 故障告警单编号 * @param userInfo * UserInfo 当前登录用户信息 */ @Transactional public void ignore(String id, UserInfo userInfo) { // TODO Auto-generated method stub FaultAlert faultAlert = faultAlertDao.get(id); faultAlert.setState(FaultAlert.IGNORED_STATE); faultAlert.setIgnoreTime(new Date()); faultAlert.setHandler(userInfo.getPersonId()); faultAlertDao.save(faultAlert); } /** * 根据查询条件获取故障告警单分页列表 * * @param faultQueryParameter * FaultQueryParameter 查询条件参数 * @param userInfo * UserInfo 当前登录用户信息 * @return Page 故障告警单分页列表 */ @SuppressWarnings("rawtypes") @Transactional(readOnly = true) public Page getList(FaultQueryParameter faultQueryParameter, UserInfo userInfo) { // TODO Auto-generated method stub faultQueryParameter.setUser(userInfo); Page page = super.getFaultList(faultQueryParameter, FAULT_LIST_CONDITION_GENERATE_KEY); return page; } /** * 根据查询条件获取未派单故障告警单分页列表 * * @param faultQueryParameter * FaultQueryParameter 查询条件参数 * @param userInfo * UserInfo 当前登录用户信息 * @return Page 未派单故障告警单分页列表 */ @SuppressWarnings("rawtypes") @Transactional(readOnly = true) public Page getUnDispatchedList(FaultQueryParameter faultQueryParameter, UserInfo userInfo) { // TODO Auto-generated method stub faultQueryParameter.setUser(userInfo); Page page = super.getFaultList(faultQueryParameter, UNDISPATCHED_FAULT_LIST_CONDITION_GENERATE_KEY); return page; } }