package com.mvc.dao.impl; import java.util.List; import javax.persistence.EntityManager; import javax.persistence.EntityManagerFactory; import javax.persistence.Query; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.stereotype.Repository; import com.mvc.dao.RoleDao; import com.mvc.entity.Role; import com.mvc.repository.UserRepository; /** * 角色,职位 * * @author wanghuimin * @date 2016年9月9日 */ @Repository("roleDaoImpl") public class RoleDaoImpl implements RoleDao { @Autowired @Qualifier("entityManagerFactory") EntityManagerFactory emf; @Autowired UserRepository userRepository; // 删除,修改角色状态列表 public boolean updateState(Integer role_id) { EntityManager em = emf.createEntityManager(); em.getTransaction().begin(); Long count = userRepository.countUserByroleid(role_id); String count1=count.toString(); int count2=Integer.parseInt(count1); if (count2 < 1) { String selectSql = " update role set `role_state` = 1 where role_id =:role_id "; Query query = em.createNativeQuery(selectSql); query.setParameter("role_id", role_id); query.executeUpdate(); em.flush(); em.getTransaction().commit(); em.close(); return true; } else { return false; } } // 根据页数筛选用户列表 @SuppressWarnings("unchecked") @Override public List<Role> findRoleAllByPage(Integer offset, Integer end) { EntityManager em = emf.createEntityManager(); String selectSql="select * from role where role_state=0"; selectSql +=" order by role_id desc limit :offset,:end "; Query query=em.createNativeQuery(selectSql,Role.class); query.setParameter("offset",offset); query.setParameter("end", end); List<Role> list=query.getResultList(); em.close(); return list; } }