package com.nis.web.service.configuration; import java.util.Date; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.google.common.collect.Lists; import com.nis.domain.Page; import com.nis.domain.SysUser; import com.nis.domain.configuration.SysDictInfo; import com.nis.util.StringUtil; import com.nis.web.dao.configuration.SysDictInfoDao; import com.nis.web.security.UserUtils; import com.nis.web.service.BaseService; @Service public class SysDictInfoService extends BaseService{ @Autowired private SysDictInfoDao sysDictInfoDao; /** * 查询生效范围字典分页 * @param page * @param sysDictInfo * @return */ public Page findDictList(Page page, SysDictInfo sysDictInfo) { // 设置分页参数 sysDictInfo.setPage(page); // 执行分页查询 List list = Lists.newArrayList(); List sourcelist = sysDictInfoDao.findDictList(sysDictInfo); SysDictInfo.sortList(list, sourcelist, 0, true); page.setList(sourcelist); return page; } /** * 根据主键查询生效范围字典详细信息 * @param sysDictId * @return */ public SysDictInfo getDictById(Integer sysDictId) { return sysDictInfoDao.getDictById(sysDictId); } /** * 新增或修改生效范围字典表 * @param sysDictInfo */ public void saveOrUpdate(SysDictInfo sysDictInfo) { SysUser user = UserUtils.getUser(); if(StringUtil.isEmpty(sysDictInfo.getSysDictId())) {//新增 sysDictInfo.setIsValid(1); sysDictInfo.setSysDictCreator(user); sysDictInfo.setCreateTime(new Date()); sysDictInfo.setSysDictEditor(user); sysDictInfo.setEditTime(sysDictInfo.getCreateTime()); if(sysDictInfo.getParent()==null||(sysDictInfo.getParent()!=null&&sysDictInfo.getParent().getSysDictId()==null)){ SysDictInfo parent = new SysDictInfo(); parent.setSysDictId(0); sysDictInfo.setParent(parent); } sysDictInfoDao.insertDict(sysDictInfo); } else {//修改 sysDictInfo.setSysDictEditor(user); sysDictInfo.setEditTime(new Date()); sysDictInfoDao.update(sysDictInfo); } } /** * 查询所有非叶子节点生效范围字典配置信息 * @return */ public List findAllDict() { return sysDictInfoDao.findAllDict(); } /** * 删除 * @param sysDictInfo */ public void deleteDict(SysDictInfo sysDictInfo) { sysDictInfo.setIsValid(0); sysDictInfoDao.delete(sysDictInfo); } }