From 912bb09b925da66515129beec98c207a199c3c52 Mon Sep 17 00:00:00 2001 From: fengxiang <110431245@qq.com> Date: Mon, 05 Feb 2018 14:41:10 +0800 Subject: [PATCH] jwt_token_version 功能 --- src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java | 71 ++++++++++++++++++++++++++++++++--- 1 files changed, 64 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java b/src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java index 6712510..79cf204 100644 --- a/src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java +++ b/src/main/java/com/moral/service/impl/MonitorPointServiceImpl.java @@ -6,36 +6,79 @@ import javax.annotation.Resource; +import com.github.pagehelper.PageHelper; +import com.moral.common.bean.Constants; import com.moral.common.bean.PageBean; -import com.moral.common.util.MyBatisBaseMapUtil; +import com.moral.common.util.*; import org.springframework.stereotype.Service; -import com.moral.common.util.ValidateUtil; import com.moral.entity.MonitorPoint; import com.moral.mapper.MonitorPointMapper; import com.moral.service.MonitorPointService; import tk.mybatis.mapper.entity.Example; +import tk.mybatis.mapper.entity.Example.Criteria; @Service public class MonitorPointServiceImpl implements MonitorPointService { @Resource private MonitorPointMapper monitorPointMapper; + @Resource + RedisUtils redisUtils; private static Class ENTITY_CLASS = MonitorPoint.class; @Override public List<MonitorPoint> getMonitorPointsByAreaName(Map<String, Object> parameters) { ValidateUtil.notNull(parameters.get("areaName"), "param.is.null"); return monitorPointMapper.getMonitorPointsByAreaName(parameters); } - + @Override + public List<MonitorPoint> queryWithStateByMap(Map<String, Object> params){ + List<MonitorPoint> monitorPointList = monitorPointMapper.selectByMap(params); + for(MonitorPoint monitorPoint:monitorPointList){ + loadStateFromRedis(monitorPoint); + } + return monitorPointList; + } + private void loadStateFromRedis(MonitorPoint monitorPoint){ + StringBuilder key = new StringBuilder(); + key.append("*_").append(monitorPoint.getId()).append("_*"); + List<Map> stateList = redisUtils.getList(key.toString(),Map.class); + int state = -1; + if(stateList!=null){ + for (Map deviceState:stateList){ + int s = Integer.parseInt(deviceState.get("state").toString()); + state = s>state&&s<4?s:state; + } + } + state = state==-1?4:state; + monitorPoint.setState(state); + } @Override public PageBean queryByPageBean(PageBean pageBean) { - return MyBatisBaseMapUtil.queryPage(monitorPointMapper,pageBean,ENTITY_CLASS); + Example example = ExampleUtil.generateExample(ENTITY_CLASS,pageBean); + List<Example.Criteria> criteriaList = example.getOredCriteria(); + if(criteriaList!=null&&criteriaList.size()>0){ + for(Example.Criteria cri : criteriaList){ + cri.andNotEqualTo("isDelete", Constants.IS_DELETE_TRUE); + } + }else { + example.or().andNotEqualTo("isDelete",Constants.IS_DELETE_TRUE); + } + PageHelper.startPage(pageBean.getPageIndex(),pageBean.getPageSize()); + List<MonitorPoint> monitorPointList = monitorPointMapper.selectWithAreaNameByExample(example); + return new PageBean(monitorPointList); } - + @Override + public MonitorPoint queryWithRelationById(Integer id){ + Example example = new Example(ENTITY_CLASS); + example.or().andEqualTo("id",id); + List<MonitorPoint> monitorPointList = monitorPointMapper.selectWithAreaNameByExample(example); + return monitorPointList!=null&&monitorPointList.size()>0?monitorPointList.get(0):null; + } @Override public void addOrModify(MonitorPoint monitorPoint) { try{ if(monitorPoint.getId()==null){ + monitorPoint.setIsDelete(Constants.IS_DELETE_FALSE); monitorPointMapper.insertSelective(monitorPoint); }else{ monitorPointMapper.updateByPrimaryKeySelective(monitorPoint); @@ -48,16 +91,30 @@ @Override public void deleteByIds(Integer... ids) { + MonitorPoint monitorPoint = new MonitorPoint(); + monitorPoint.setIsDelete(Constants.IS_DELETE_TRUE); if(ids!=null&&ids.length>0){ if(ids.length==1){ - monitorPointMapper.deleteByPrimaryKey(ids[0]); + monitorPoint.setId(ids[0]); + monitorPointMapper.updateByPrimaryKeySelective(monitorPoint); }else{ Example example = new Example(ENTITY_CLASS); example.or().andIn("id", Arrays.asList(ids)); - monitorPointMapper.deleteByExample(example); + monitorPointMapper.updateByExampleSelective(monitorPoint,example); } } } + @Override + public List<MonitorPoint> getMonitorPointsByName(String name) { + Example example = new Example(MonitorPoint.class); + Criteria criteria = example.createCriteria(); + + criteria.andEqualTo("isDelete", Constants.IS_DELETE_FALSE).andLike("name", "%" + name + "%"); + example.or().andEqualTo("isDelete", Constants.IS_DELETE_FALSE).andCondition("getPY(name) like ", "%" + name + "%"); + + List<MonitorPoint> monitorPoints = monitorPointMapper.selectByExample(example); + return monitorPoints; + } } -- Gitblit v1.8.0