package com.objecteye.service.impl; import com.github.pagehelper.Page; import com.github.pagehelper.PageHelper; import com.objecteye.entity.PageResult; import com.objecteye.entity.SyDeployFeature; import com.objecteye.entity.SyDeployFeatureExample; import com.objecteye.mapper.SyDeployFeatureMapper; import com.objecteye.service.DeployFeatureService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.List; /** * 服务实现层 * * @author Administrator */ @Service public class DeployFeatureServiceImpl implements DeployFeatureService { @Autowired private SyDeployFeatureMapper deployFeatureMapper; @Autowired private RedisTemplate redisTemplate; /** * 查询全部 */ @Override public List findAll() { return deployFeatureMapper.selectByExample(null); } /** * 按分页查询 */ @Override public PageResult findPage(int pageNum, int pageSize) { PageHelper.startPage(pageNum, pageSize); Page page = (Page) deployFeatureMapper.selectByExample(null); return new PageResult(page.getTotal(), page.getResult()); } /** * 增加 */ @Override public void add(SyDeployFeature deployFeature) { deployFeature.setIsDelete(0); deployFeatureMapper.insert(deployFeature); } /** * 修改 */ @Override public void update(SyDeployFeature deployFeature) { deployFeatureMapper.updateByPrimaryKey(deployFeature); } /** * 根据ID获取实体 * * @param id * @return */ @Override public SyDeployFeature findOne(int id) { return deployFeatureMapper.selectByPrimaryKey(id); } /** * 批量删除 */ @Override public void delete(int[] ids) { for (int id : ids) { deployFeatureMapper.deleteByPrimaryKey(id); } } @Override public void deleteByDeployId(int id) { SyDeployFeatureExample syDeployFeatureExample = new SyDeployFeatureExample(); SyDeployFeatureExample.Criteria criteria1 = syDeployFeatureExample.createCriteria(); criteria1.andDidEqualTo(id); List syDeployFeatures = deployFeatureMapper.selectByExample(syDeployFeatureExample); if (syDeployFeatures != null) { int size = syDeployFeatures.size(); for (int i = 0; i < size; i++) { Integer fid = syDeployFeatures.get(i).getFid(); String key = id + "|" + fid; redisTemplate.delete(key); } } deployFeatureMapper.deleteByExample(syDeployFeatureExample); } @Override public List selectByFeatureId(int fid) { SyDeployFeatureExample syDeployFeatureExample = new SyDeployFeatureExample(); SyDeployFeatureExample.Criteria criteria = syDeployFeatureExample.createCriteria(); criteria.andFidEqualTo(fid); ArrayList strings = new ArrayList<>(); List syDeployFeatures = deployFeatureMapper.selectByExample(syDeployFeatureExample); if (syDeployFeatures != null && syDeployFeatures.size() > 0) { int size = syDeployFeatures.size(); for (int i = 0; i < size; i++) { SyDeployFeature syDeployFeature = syDeployFeatures.get(i); strings.add(syDeployFeature.getDid()); } return strings; } return null; } @Override public List selectByDid(int did) { SyDeployFeatureExample syDeployFeatureExample = new SyDeployFeatureExample(); SyDeployFeatureExample.Criteria criteria = syDeployFeatureExample.createCriteria(); criteria.andDidEqualTo(did); return deployFeatureMapper.selectByExample(syDeployFeatureExample); } @Override public PageResult findPage(SyDeployFeature deployFeature, int pageNum, int pageSize) { PageHelper.startPage(pageNum, pageSize); SyDeployFeatureExample example = new SyDeployFeatureExample(); SyDeployFeatureExample.Criteria criteria = example.createCriteria(); Page page = (Page) deployFeatureMapper.selectByExample(example); return new PageResult(page.getTotal(), page.getResult()); } }