From 5f1807ece119b2337ed71b575292e47a447cd154 Mon Sep 17 00:00:00 2001
From: xufenglei <xufenglei>
Date: Thu, 28 Feb 2019 16:43:09 +0800
Subject: [PATCH] 排放量 报表

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

diff --git a/src/main/java/com/moral/service/impl/DeviceServiceImpl.java b/src/main/java/com/moral/service/impl/DeviceServiceImpl.java
index aa940e3..79afd10 100644
--- a/src/main/java/com/moral/service/impl/DeviceServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/DeviceServiceImpl.java
@@ -532,6 +532,7 @@
 	@Override
 	@Transactional
 	public void saveOrUpdate(Device device, DeviceProperty deviceProperty) {
+		device.setMac(device.getMac().toLowerCase());
 		if (ObjectUtils.isEmpty(device.getId())) {
 			device.setState(Constants.DEVICE_STATE_OFFLINE);
 			device.setIsDelete(Constants.IS_DELETE_FALSE);
@@ -556,4 +557,51 @@
 		return new PageBean(deviceList);
 	}
 
+	@Override
+	public void offLinToMaintenance(Map<String, Object> parameters) {
+		ValidateUtil.notNull(parameters.get("id"), "param.is.null");
+		ValidateUtil.notNull(parameters.get("old_state"), "param.is.null");
+		ValidateUtil.notNull(parameters.get("new_state"), "param.is.null");
+		int count = 0;
+		if ("4".equals(parameters.get("old_state")) && "9".equals(parameters.get("new_state"))) {
+			Device device = new Device();
+			Example example = new Example(ENTITY_CLASS);
+			example.and().andEqualTo("id", new Integer(parameters.get("id").toString())).andEqualTo("state", "4");
+			device.setState("9");
+			count = deviceMapper.updateByExampleSelective(device, example);
+		} 
+		if (count == 0) {
+			throw new BusinessException("������������������");
+		}
+	}
+
+	@Override
+	public void saveOrUpdate4Mobile(Device device, DeviceProperty deviceProperty) {
+		device.setMac(device.getMac().toLowerCase());
+		Device selectDevice = new Device();
+		selectDevice.setMac(device.getMac());
+		selectDevice = deviceMapper.selectOne(selectDevice);
+		if (ObjectUtils.isEmpty(selectDevice)) {
+			device.setState(Constants.DEVICE_STATE_OFFLINE);
+			device.setIsDelete(Constants.IS_DELETE_FALSE);
+			deviceMapper.insertSelective(device);
+			deviceProperty.setId(device.getId());
+			devicePropertyMapper.insertSelective(deviceProperty);
+		} else {
+			device.setId(selectDevice.getId());
+			deviceMapper.updateByPrimaryKeySelective(device);
+			deviceProperty.setId(selectDevice.getId());
+			devicePropertyMapper.selectByPrimaryKey(selectDevice.getId());
+			if (ObjectUtils.isEmpty(devicePropertyMapper.selectByPrimaryKey(deviceProperty.getId()))) {
+				devicePropertyMapper.insertSelective(deviceProperty);
+			} else {
+				devicePropertyMapper.updateByPrimaryKeySelective(deviceProperty);
+			}
+			
+		}
+		refreshDeviceInRedis(device.getMac());
+
+		
+	}
+
 }

--
Gitblit v1.8.0