瀏覽代碼

动态属性-下拉框

jichaobo 3 年之前
父節點
當前提交
f00a700288

+ 14 - 0
fiveep-controller/src/main/java/com/bizmatics/controller/web/SiteController.java

@@ -2,6 +2,7 @@ package com.bizmatics.controller.web;
 
 
 import com.bizmatics.common.core.bean.ApiResult;
+import com.bizmatics.model.DeviceAnalogVariableList;
 import com.bizmatics.model.Site;
 import com.bizmatics.model.TemplateData;
 import com.bizmatics.service.SiteService;
@@ -128,5 +129,18 @@ public class SiteController {
     public ApiResult<List<Map<String,Object>>> sitelist(@RequestParam(required = false) String name){
         return ApiResult.success(siteService.sitelist(name));
     }
+
+    /**
+     * 站点管理-基础信息-动态属性下拉框
+     * @param siteId 站点管理
+     * @param dataArea 1.模拟量 2.状态量 3.参数量
+     * @return
+     */
+    @GetMapping("dynamicPropertiesDroplist")
+    public ApiResult<List<DeviceAnalogVariableList>> dynamicPropertiesDroplist(@RequestParam(value = "siteId", required = false, defaultValue = "0") Integer siteId,
+                                                                               @RequestParam(value = "dataArea", required = false, defaultValue = "1") Integer dataArea) {
+        return ApiResult.success(siteService.dynamicPropertiesDroplist(siteId, dataArea));
+    }
+
 }
 

+ 1 - 1
fiveep-model/src/main/java/com/bizmatics/model/vo/DeviceOneVo.java

@@ -46,6 +46,6 @@ public class DeviceOneVo implements Serializable {
     /**
      * 变量列表
      */
-    private List<DeviceAnalogVariableList> deviceAnalogVariableList;
+    private List<DeviceAnalogVariableList> children;
 
 }

+ 3 - 0
fiveep-persistence/src/main/java/com/bizmatics/persistence/mapper/SiteMapper.java

@@ -45,4 +45,7 @@ public interface SiteMapper extends CrudMapper<Site> {
     List<Site> list1(@Param("id") Integer id);
 
     List<SiteDynamicProperties> SiteDynamicPropertieslist(@Param("siteId") Integer siteId);
+
+    List<DeviceAnalogVariableList> deviceAnalogVariableList(@Param("siteId") Integer siteId,
+                                                            @Param("dataArea") Integer dataArea);
 }

+ 18 - 0
fiveep-persistence/src/main/resources/mapper/mysql/SiteMapper.xml

@@ -199,5 +199,23 @@
         </where>
     </select>
 
+    <select id="deviceAnalogVariableList" resultType="com.bizmatics.model.DeviceAnalogVariableList">
+        SELECT
+        a.*
+        FROM
+        device_analog_variable_list AS a
+        JOIN device AS b ON a.communication_equipment = b.id
+        <where>
+            a.status = 1
+            AND b.enable = 1
+            <if test="dataArea != null and dataArea != 0">
+            AND a.data_area = #{dataArea}
+            </if>
+            <if test="siteId != null and siteId != 0">
+                AND b.site_id = #{siteId}
+            </if>
+        </where>
+    </select>
+
 
 </mapper>

+ 3 - 4
fiveep-service/src/main/java/com/bizmatics/service/SiteService.java

@@ -1,10 +1,7 @@
 package com.bizmatics.service;
 
-import com.bizmatics.model.Site;
+import com.bizmatics.model.*;
 import com.bizmatics.common.mvc.base.CrudService;
-import com.bizmatics.model.SiteDynamicProperties;
-import com.bizmatics.model.SiteList;
-import com.bizmatics.model.TemplateData;
 import com.bizmatics.service.vo.DeviceCountVO;
 import com.bizmatics.service.vo.SiteVO;
 import com.bizmatics.service.vo.SiteVOT;
@@ -82,5 +79,7 @@ public interface SiteService extends CrudService<Site> {
      * @return
      */
     List<Map<String, Object>> sitelist(String name);
+
+    List<DeviceAnalogVariableList> dynamicPropertiesDroplist(Integer siteId, Integer dataArea);
 }
 

+ 113 - 2
fiveep-service/src/main/java/com/bizmatics/service/impl/DeviceServiceImpl.java

@@ -121,12 +121,12 @@ public class DeviceServiceImpl extends AbstractCrudService<DeviceMapper, Device>
                 deviceOneVoOne.setDeviceName(deviceList.get(i).getDeviceName());
                 if (deviceAnalogVariableList.size()>0){
                     for (int j = 0; j < deviceAnalogVariableList.size(); j++) {
-                        if (deviceList.get(i).getId()==deviceAnalogVariableList.get(j).getCommunicationEquipment()){
+                        if (deviceList.get(i).getId().equals(deviceAnalogVariableList.get(j).getCommunicationEquipment())) {
                             deviceAnalogVariableListTwo.add(deviceAnalogVariableList.get(j));
                         }
                     }
                 }
-                deviceOneVoOne.setDeviceAnalogVariableList(deviceAnalogVariableListTwo);
+                deviceOneVoOne.setChildren(deviceAnalogVariableListTwo);
                 deviceOneVo.add(deviceOneVoOne);
             }
         }
@@ -211,5 +211,116 @@ public class DeviceServiceImpl extends AbstractCrudService<DeviceMapper, Device>
         return new CommonPage<>(page.getRecords(), page.getTotal(), page.getCurrent(), page.getSize());
     }
 
+    public void variableCloning(Integer type,String newDeviceCode,String oldDeviceCode,String deviceName){
+        SysUser user = SecurityUtils.getLoginUser().getUser();
+
+        if (type==1){
+            //查询出旧设备配置
+            LambdaQueryWrapper<Device> queryWrapper = Wrappers.lambdaQuery();
+            queryWrapper.eq(Device::getEnable, 1).eq(Device::getDeviceCode, oldDeviceCode);
+            List<Device> deviceList = this.list(queryWrapper);
+
+            //设备表新增
+            Device device = new Device();
+            device.setEnable(1);
+            device.setInstallTime(new Date());
+            device.setCreator(user.getUserName());
+            device.setDeviceCode(newDeviceCode);
+            device.setDeviceName(deviceName);
+            device.setFloor(deviceList.get(0).getFloor());
+            device.setSiteId(deviceList.get(0).getSiteId());
+            device.setDeviceAddress(deviceList.get(0).getDeviceAddress());
+            device.setDeviceType(deviceList.get(0).getDeviceType());
+            device.setSim(deviceList.get(0).getSim());
+            this.save(device);
+            Integer deviceId = device.getId();
+            String deviceCode = device.getDeviceCode();
+            Integer siteId = device.getSiteId();
+            //设备状态表新增
+            DeviceStatus deviceStatus = new DeviceStatus();
+            deviceStatus.setDeviceStatus(1);
+            deviceStatus.setDeviceCode(deviceCode);
+            deviceStatus.setStatusTime(new Date());
+            deviceStatus.setSiteId(siteId);
+            deviceStatusService.save(deviceStatus);
+            //变量配置查询
+            LambdaQueryWrapper<DeviceAnalogVariableList> queryWrapperOne = Wrappers.lambdaQuery();
+            queryWrapperOne.eq(DeviceAnalogVariableList::getStatus, 1).eq(DeviceAnalogVariableList::getCommunicationEquipment, deviceId);
+            List<DeviceAnalogVariableList> deviceAnalogVariableList = deviceAnalogVariableListService.list(queryWrapperOne);
+            if (deviceAnalogVariableList.size()>0){
+                for (int i = 0; i < deviceAnalogVariableList.size(); i++) {
+                    DeviceAnalogVariableList deviceAnalogVariableListOne = new DeviceAnalogVariableList();
+                    deviceAnalogVariableListOne.setDeviceCode(newDeviceCode);
+                    deviceAnalogVariableListOne.setVariableName(deviceAnalogVariableList.get(i).getVariableName());
+                    deviceAnalogVariableListOne.setVariableCoding(deviceAnalogVariableList.get(i).getVariableCoding());
+                    deviceAnalogVariableListOne.setMonitoringEquipment(deviceAnalogVariableList.get(i).getMonitoringEquipment());
+                    deviceAnalogVariableListOne.setCommunicationEquipment(deviceAnalogVariableList.get(i).getCommunicationEquipment());
+                    deviceAnalogVariableListOne.setDataAddress(deviceAnalogVariableList.get(i).getDataAddress());
+                    deviceAnalogVariableListOne.setDataType(deviceAnalogVariableList.get(i).getDataType());
+                    deviceAnalogVariableListOne.setCoefficient(deviceAnalogVariableList.get(i).getCoefficient());
+                    deviceAnalogVariableListOne.setSaveCycle(deviceAnalogVariableList.get(i).getSaveCycle());
+                    deviceAnalogVariableListOne.setDataArea(deviceAnalogVariableList.get(i).getDataArea());
+                    deviceAnalogVariableListOne.setCreator(user.getUserName());
+                    deviceAnalogVariableListOne.setCreateTime(new Date());
+                    deviceAnalogVariableListOne.setStatus(1);
+                    deviceAnalogVariableListService.save(deviceAnalogVariableListOne);
+                }
+            }
+        }else{
+            //被克隆设备查询是否存在
+            LambdaQueryWrapper<Device> queryWrapperOne = Wrappers.lambdaQuery();
+            queryWrapperOne.eq(Device::getEnable, 1).eq(Device::getDeviceCode, oldDeviceCode);
+            List<Device> deviceListOne = this.list(queryWrapperOne);
+            LambdaQueryWrapper<DeviceAnalogVariableList> queryWrapperOneA = Wrappers.lambdaQuery();
+            queryWrapperOneA.eq(DeviceAnalogVariableList::getStatus, 1).eq(DeviceAnalogVariableList::getCommunicationEquipment, deviceListOne.get(0).getId());
+            List<DeviceAnalogVariableList> deviceAnalogVariableListOne = deviceAnalogVariableListService.list(queryWrapperOneA);
+
+            //克隆设备查询是否存在
+            LambdaQueryWrapper<Device> queryWrapperTwo = Wrappers.lambdaQuery();
+            queryWrapperTwo.eq(Device::getEnable, 1).eq(Device::getDeviceCode, newDeviceCode);
+            List<Device> deviceListTwo = this.list(queryWrapperTwo);
+            LambdaQueryWrapper<DeviceAnalogVariableList> queryWrapperTwoA = Wrappers.lambdaQuery();
+            queryWrapperTwoA.eq(DeviceAnalogVariableList::getStatus, 1).eq(DeviceAnalogVariableList::getCommunicationEquipment, deviceListTwo.get(0).getId());
+            List<DeviceAnalogVariableList> deviceAnalogVariableListTwo = deviceAnalogVariableListService.list(queryWrapperTwoA);
+
+            if (deviceAnalogVariableListTwo.size()>0){
+                for (int i = 0; i < deviceAnalogVariableListTwo.size(); i++) {
+                    DeviceAnalogVariableList deviceAnalogVariableList = new DeviceAnalogVariableList();
+                    deviceAnalogVariableList.setStatus(0);
+                    deviceAnalogVariableList.setId(deviceAnalogVariableListTwo.get(i).getId());
+                    deviceAnalogVariableListService.updateById(deviceAnalogVariableList);
+                }
+            }
+
+            if (deviceAnalogVariableListOne.size()>0){
+                for (int i = 0; i < deviceAnalogVariableListOne.size(); i++) {
+                    DeviceAnalogVariableList deviceAnalogVariableList = new DeviceAnalogVariableList();
+
+//                    deviceAnalogVariableList.setDeviceCode(newDeviceCode);
+//                    deviceAnalogVariableList.setVariableName(deviceAnalogVariableList.get(i).getVariableName());
+//                    deviceAnalogVariableList.setVariableCoding(deviceAnalogVariableList.get(i).getVariableCoding());
+//                    deviceAnalogVariableList.setMonitoringEquipment(deviceAnalogVariableList.get(i).getMonitoringEquipment());
+//                    deviceAnalogVariableList.setCommunicationEquipment(deviceAnalogVariableList.get(i).getCommunicationEquipment());
+//                    deviceAnalogVariableList.setDataAddress(deviceAnalogVariableList.get(i).getDataAddress());
+//                    deviceAnalogVariableList.setDataType(deviceAnalogVariableList.get(i).getDataType());
+//                    deviceAnalogVariableList.setCoefficient(deviceAnalogVariableList.get(i).getCoefficient());
+//                    deviceAnalogVariableList.setSaveCycle(deviceAnalogVariableList.get(i).getSaveCycle());
+//                    deviceAnalogVariableList.setDataArea(deviceAnalogVariableList.get(i).getDataArea());
+//                    deviceAnalogVariableList.setCreator(user.getUserName());
+//                    deviceAnalogVariableList.setCreateTime(new Date());
+//                    deviceAnalogVariableList.setStatus(1);
+
+
+                    deviceAnalogVariableList.setStatus(0);
+                    deviceAnalogVariableListService.updateById(deviceAnalogVariableList);
+                }
+            }
+
+
+
+        }
+    }
+
+
 
 }

+ 11 - 0
fiveep-service/src/main/java/com/bizmatics/service/impl/SiteServiceImpl.java

@@ -8,6 +8,7 @@ import com.bizmatics.common.core.util.BeanMapperUtils;
 import com.bizmatics.common.mvc.base.AbstractCrudService;
 import com.bizmatics.model.*;
 import com.bizmatics.model.system.SysUser;
+import com.bizmatics.model.vo.DeviceOneVo;
 import com.bizmatics.persistence.mapper.AlarmPowerMapper;
 import com.bizmatics.persistence.mapper.DeviceMapper;
 import com.bizmatics.persistence.mapper.SiteMapper;
@@ -237,4 +238,14 @@ public class SiteServiceImpl extends AbstractCrudService<SiteMapper, Site> imple
         }
         return list1;
     }
+
+
+    @Override
+    public List<DeviceAnalogVariableList> dynamicPropertiesDroplist(Integer siteId, Integer dataArea) {
+        List<DeviceAnalogVariableList> deviceAnalogVariableList = new ArrayList<>();
+        if (siteId==0){
+            deviceAnalogVariableList = baseMapper.deviceAnalogVariableList(siteId,dataArea);
+        }
+        return deviceAnalogVariableList;
+    }
 }