From f1e25082a58c8cb57dd45d226d3a94f4af4a0677 Mon Sep 17 00:00:00 2001
From: fengxiang <110431245@qq.com>
Date: Mon, 05 Feb 2018 15:07:27 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

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

diff --git a/src/main/java/com/moral/service/impl/DeviceVersionServiceImpl.java b/src/main/java/com/moral/service/impl/DeviceVersionServiceImpl.java
index e5aaa1e..ac912aa 100644
--- a/src/main/java/com/moral/service/impl/DeviceVersionServiceImpl.java
+++ b/src/main/java/com/moral/service/impl/DeviceVersionServiceImpl.java
@@ -4,20 +4,81 @@
 import com.moral.common.util.ExampleUtil;
 import com.moral.common.util.MyBatisBaseMapUtil;
 import com.moral.entity.DeviceVersion;
+import com.moral.entity.DeviceVersionSensor;
 import com.moral.mapper.DeviceVersionMapper;
+import com.moral.mapper.DeviceVersionSensorMapper;
 import com.moral.service.DeviceVersionService;
+import org.springframework.data.mongodb.core.aggregation.ArrayOperators;
 import org.springframework.stereotype.Service;
 import tk.mybatis.mapper.entity.Example;
 
 import javax.annotation.Resource;
 import java.io.UnsupportedEncodingException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
 
 @Service
 public class DeviceVersionServiceImpl implements DeviceVersionService {
       @Resource
       private DeviceVersionMapper deviceVersionMapper;
+      @Resource
+      private DeviceVersionSensorMapper deviceVersionSensorMapper;
       private static Class ENTITY_CLASS = DeviceVersion.class;
       public PageBean queryByPageBean(PageBean pageBean){
            return MyBatisBaseMapUtil.queryPage(deviceVersionMapper,pageBean,ENTITY_CLASS);
       }
+      public void addOrModify(DeviceVersion deviceVersion){
+            try{
+                  if(deviceVersion.getId()==null){
+                        deviceVersionMapper.insertSelective(deviceVersion);
+                  }else{
+                        deviceVersionMapper.updateByPrimaryKeySelective(deviceVersion);
+                  }
+            }
+            catch (Exception ex){
+                  throw  ex;
+            }
+      }
+
+      @Override
+      public void deleteByIds(Integer... ids) {
+            if(ids!=null&&ids.length>0){
+                  if(ids.length==1){
+                        deviceVersionMapper.deleteByPrimaryKey(ids[0]);
+                  }else{
+                        Example example = new Example(ENTITY_CLASS);
+                        example.or().andIn("id", Arrays.asList(ids));
+                        deviceVersionMapper.deleteByExample(example);
+                  }
+
+            }
+      }
+      @Override
+      public void versionSensorConfig(Integer deviceVersionId, Integer[] sensorIds){
+            Example example = new Example(DeviceVersionSensor.class);
+            example.or().andEqualTo("deviceVersionId",deviceVersionId);
+            deviceVersionSensorMapper.deleteByExample(example);
+            if(sensorIds!=null && sensorIds.length >0){
+                  List<DeviceVersionSensor> deviceVersionSensorList = new ArrayList<DeviceVersionSensor>();
+                  for(int sensorId:sensorIds){
+                        DeviceVersionSensor deviceVersionSensor = new DeviceVersionSensor();
+                        deviceVersionSensor.setDeviceVersionId(deviceVersionId);
+                        deviceVersionSensor.setSensorId(sensorId);
+                        deviceVersionSensorList.add(deviceVersionSensor);
+                  }
+                  deviceVersionSensorMapper.insertList(deviceVersionSensorList);
+            }
+      }
+      @Override
+      public List<Integer> getSensorIds(int deviceVersionId){
+            DeviceVersionSensor deviceVersionSensor = new DeviceVersionSensor();
+            deviceVersionSensor.setDeviceVersionId(deviceVersionId);
+            List<DeviceVersionSensor> deviceVersionSensorList = deviceVersionSensorMapper.select(deviceVersionSensor);
+            List<Integer> sensorIds = new ArrayList<>();
+            for(DeviceVersionSensor dvSensor:deviceVersionSensorList ){
+                  sensorIds.add(dvSensor.getSensorId());
+            }
+            return sensorIds;
+      }
 }

--
Gitblit v1.8.0