From 4447110e052c82124dfb04eb21b15bd832361227 Mon Sep 17 00:00:00 2001
From: xufenglei <xufenglei>
Date: Wed, 20 Feb 2019 13:56:40 +0800
Subject: [PATCH] 更新

---
 src/main/java/com/moral/service/impl/DeviceServiceImpl.java |   75 ++++++++++++++++++++++++++++++-------
 1 files changed, 61 insertions(+), 14 deletions(-)

diff --git a/src/main/java/com/moral/service/impl/DeviceServiceImpl.java b/src/main/java/com/moral/service/impl/DeviceServiceImpl.java
index c9d390f..aa940e3 100644
--- a/src/main/java/com/moral/service/impl/DeviceServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/DeviceServiceImpl.java
@@ -1,21 +1,16 @@
 package com.moral.service.impl;
 
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 import java.util.stream.Collectors;
 
 import javax.annotation.Resource;
 import javax.validation.constraints.NotNull;
 
-import com.alibaba.fastjson.TypeReference;
-import com.github.pagehelper.Page;
-import com.moral.common.bean.Constants;
-import com.moral.common.bean.PageBean;
-import com.moral.common.bean.PageResult;
-import com.moral.common.exception.BusinessException;
-import com.moral.common.util.ExampleUtil;
-import com.moral.common.util.RedisUtils;
-import com.moral.entity.DeviceVersion;
-import com.moral.mapper.*;
 import org.apache.commons.collections.MapUtils;
 import org.apache.commons.lang3.BooleanUtils;
 import org.apache.commons.lang3.StringUtils;
@@ -24,11 +19,27 @@
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.ObjectUtils;
 
+import com.alibaba.fastjson.TypeReference;
+import com.github.pagehelper.Page;
 import com.github.pagehelper.PageHelper;
+import com.moral.common.bean.Constants;
+import com.moral.common.bean.PageBean;
+import com.moral.common.bean.PageResult;
+import com.moral.common.exception.BusinessException;
+import com.moral.common.util.ExampleUtil;
+import com.moral.common.util.RedisUtils;
 import com.moral.common.util.ValidateUtil;
 import com.moral.entity.Device;
+import com.moral.entity.DeviceProperty;
+import com.moral.mapper.DeviceMapper;
+import com.moral.mapper.DevicePropertyMapper;
+import com.moral.mapper.DeviceVersionMapper;
+import com.moral.mapper.DictionaryDataMapper;
+import com.moral.mapper.MonitorPointMapper;
+import com.moral.mapper.OrganizationMapper;
 import com.moral.service.AccountService;
 import com.moral.service.DeviceService;
+
 import tk.mybatis.mapper.entity.Example;
 
 @Service
@@ -314,8 +325,7 @@
 	 */
 	private void refreshDeviceInRedis(String mac){
 	     if(!StringUtils.isBlank(mac)){
-	     	 Device device = deviceMapper.selectWithOrgIdsByMac(mac);
-	     	 String key = getDeviceKey(device.getMac());
+	     	 String key = getDeviceKey(mac);
 	     	 redisUtils.remove(key);
          }else
 		 {
@@ -422,12 +432,18 @@
 		}
 		return  deviceMapper.countByTimes(start, end, format);
 	}
+	
 	@Override
 	public List<Device> getDevicesByMonitorPointId(Integer monitorPointId) {
 		Device device = new Device();
 		device.setMonitorPointId(monitorPointId);
 		device.setIsDelete(Constants.IS_DELETE_FALSE);
-		return deviceMapper.select(device);
+		List<Device> devices = deviceMapper.select(device);
+		for (Device device2 : devices) {
+			DeviceProperty deviceProperty = devicePropertyMapper.selectByPrimaryKey(device2.getId());
+			device2.setDeviceProperty(deviceProperty);
+		}
+		return devices;
 	}
 
 	/**
@@ -509,4 +525,35 @@
 		result.put("stop", stop);
 		return result;
 	}
+
+	@Resource
+	private DevicePropertyMapper devicePropertyMapper;
+	
+	@Override
+	@Transactional
+	public void saveOrUpdate(Device device, DeviceProperty deviceProperty) {
+		if (ObjectUtils.isEmpty(device.getId())) {
+			device.setState(Constants.DEVICE_STATE_OFFLINE);
+			device.setIsDelete(Constants.IS_DELETE_FALSE);
+			deviceMapper.insertSelective(device);
+			deviceProperty.setId(device.getId());
+		} else {
+			deviceMapper.updateByPrimaryKeySelective(device);
+			devicePropertyMapper.deleteByPrimaryKey(deviceProperty);
+		}
+		devicePropertyMapper.insertSelective(deviceProperty);
+		refreshDeviceInRedis(device.getMac());
+
+	}
+	
+	@Override
+	public PageBean getDeviceList(PageBean pageBean) {
+		Example example = ExampleUtil.generateExample(ENTITY_CLASS,pageBean);
+		if(pageBean.getPageSize()>0){
+			PageHelper.startPage(pageBean.getPageIndex(),pageBean.getPageSize());
+		}
+		List<Device> deviceList = deviceMapper.getDeviceList(example);
+		return new PageBean(deviceList);
+	}
+
 }

--
Gitblit v1.8.0