DataDictionaryManagerImpl.java 3.62 KB
package com.diligrp.website.manager.impl;

import java.sql.Timestamp;
import java.util.List;

import javax.annotation.Resource;

import org.springframework.stereotype.Component;

import com.diligrp.website.dao.DataDictionaryDao;
import com.diligrp.website.domain.DataDictionary;
import com.diligrp.website.domain.DataDictionaryValue;
import com.diligrp.website.domain.SysConfig;
import com.diligrp.website.manager.DataDictionaryManager;
import com.diligrp.website.manager.cache.DataDictionaryCache;
import com.diligrp.website.util.dao.BaseQuery;
import com.diligrp.website.util.web.PageTemplate;

@Component("dataDictionaryManager")
public class DataDictionaryManagerImpl implements DataDictionaryManager {

    @Resource
    private DataDictionaryDao dataDictionaryDao;
    
    @Resource
    private DataDictionaryCache dataDictionaryCache;

    @Override
    public DataDictionary getDataDictionaryByCode(String code) {
        return dataDictionaryCache.getDataDictionary(code);
    }

    @Override
    public List<DataDictionaryValue> getDataDictionaryValue(Long id) {
        return dataDictionaryCache.getDataDictionaryValue(id);
    }

    @Override
    public PageTemplate query(BaseQuery query) {
        Integer totalSize = dataDictionaryDao.getDataDicListCount(query);
        List<SysConfig> list = dataDictionaryDao.getDataDicList(query);
        return PageTemplate.create(query, totalSize, list);
    }

    @Override
    public boolean deleteValue(Long id) {
        return dataDictionaryDao.deleteValue(id);
    }

    @Override
    public boolean delete(Long id) {
        return dataDictionaryDao.delete(id);
    }

    @Override
    public boolean save(DataDictionary dic) {
        dic.setCreated(new Timestamp(System.currentTimeMillis()));
        dic.setModified(dic.getCreated());
        dic.setYn(1);
        return dataDictionaryDao.save(dic);
    }
    
    @Override
    public boolean saveValue(DataDictionaryValue dicv) {
        dicv.setCreated(new Timestamp(System.currentTimeMillis()));
        dicv.setModified(dicv.getCreated());
        dicv.setYn(1);
        // 清除缓存
        dataDictionaryCache.clearDataDictionaryCache(Long.valueOf(dicv.getDdId()));
        return dataDictionaryDao.saveValue(dicv);
    }

    @Override
    public boolean edit(DataDictionary dic) {
        dic.setModified(new Timestamp(System.currentTimeMillis()));
        // 清除缓存
        dataDictionaryCache.clearDataDictionaryCache(dic.getId());
        return dataDictionaryDao.update(dic);
    }

    @Override
    public boolean editValue(DataDictionaryValue dicv) {
        dicv.setModified(new Timestamp(System.currentTimeMillis()));
        // 清除缓存
        DataDictionaryValue ddv = dataDictionaryDao.getDataDicValById(dicv.getId());
        dataDictionaryCache.clearDataDictionaryCache(Long.valueOf(ddv.getDdId()));
        return dataDictionaryDao.editValue(dicv);
    }
    
    @Override
    public DataDictionary getDataDictionaryById(Long id) {
        return dataDictionaryDao.getDataDictionaryById(id);
    }

    @Override
    public DataDictionaryValue getDataDicValById(Long id) {
        return dataDictionaryDao.getDataDicValById(id);
    }

    @Override
    public DataDictionaryValue getDataDicValByCode(String code, Integer ddId) {
        return dataDictionaryDao.getDataDicValByCode(code , ddId);
    }

    @Override
    public DataDictionaryValue getDataDicValByName(String name, Integer ddId) {
        return dataDictionaryDao.getDataDicValByName(name, ddId);
    }

    @Override
    public DataDictionaryValue getDataDicValBySort(Integer sort, Integer ddId) {
        return dataDictionaryDao.getDataDicValBySort(sort,ddId);
    }

}