package org.ccpit.business.phase; import org.ccpit.base.controller.Page; import org.ccpit.base.controller.PageRequest; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.Phased; import org.springframework.stereotype.Service; import javax.transaction.Transactional; import java.util.List; /** * Date: 2015年11月16日 09:58 * * @author 孙其鹏 * @version 1.0 */ @Service public class PhaseService { @Autowired private PhaseDao phaseDao; @Transactional public boolean add(Phase phase){ return phaseDao.save(phase); } @Transactional public boolean update(Phase phase){ return phaseDao.save(phase); } @Transactional public boolean delete(Phase phase){ if (phase==null){ return false; } if (phase.isWhetherDelete()) return true; phase.setWhetherDelete(true); return phaseDao.save(phase); } @Transactional public boolean deletePhases(List<Long> ids){ boolean success = true; for (long id:ids){ boolean result = delete(queryById(id)); if (!result){ success = false; } } return success; } public Page<Phase> queryByPage(PageRequest pr, String hql, String... params) { return phaseDao.findPage(pr, hql, params); } public List<Phase> queryAll() { return phaseDao.query("from Phase order by time desc"); } public Phase queryById(Long id) { return phaseDao.queryById(id); } /** * 获取状态为active的Phase 只有0或1个 * @return */ public Phase getActivePhase(){ List<Phase> phaseList = phaseDao.query("from Phase where active = ?",true); if (phaseList==null || phaseList.isEmpty()){ return null; } return phaseList.get(0); } }