dcs hai 5 meses
pai
achega
d8aba5e1c5

+ 27 - 0
virgo.api/src/main/java/com/bosshand/virgo/api/test/controller/TestCont.java

@@ -306,6 +306,33 @@ public class TestCont {
         return Response.ok(testService.save(data));
     }
 
+    @ApiOperation("消防层级获取")
+    @RequestMapping(value = "/fireFightingLevel/{projectId}", method = RequestMethod.GET)
+    public Response getFireFightingLevel(@PathVariable long projectId) {
+        return Response.ok(testService.getFireFightingLevel(projectId));
+    }
+
+    @ApiOperation("消防层级新增")
+    @RequestMapping(value = "/fireFightingLevel", method = RequestMethod.POST)
+    public Response saveFireFightingLevel(@RequestBody FireFightingLevel fireFightingLevel) {
+        testService.save(fireFightingLevel);
+        return Response.ok();
+    }
+
+    @ApiOperation("消防层级修改")
+    @RequestMapping(value = "/fireFightingLevel", method = RequestMethod.PUT)
+    public Response updateFireFightingLevel(@RequestBody FireFightingLevel fireFightingLevel) {
+        testService.update(fireFightingLevel);
+        return Response.ok();
+    }
+
+    @ApiOperation("消防层级删除")
+    @RequestMapping(value = "/fireFightingLevel/{id}", method = RequestMethod.DELETE)
+    public Response deleteFireFightingLevel(@PathVariable long id) {
+        testService.deleteFireFightingLevel(id);
+        return Response.ok();
+    }
+
     //-------------------------------------------------------------------------------------------------------------
 
     @ApiOperation("危险品获取")

+ 20 - 0
virgo.api/src/main/java/com/bosshand/virgo/api/test/dao/FireFightingLevelDao.java

@@ -0,0 +1,20 @@
+package com.bosshand.virgo.api.test.dao;
+
+import com.bosshand.virgo.api.test.model.FireFightingLevel;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+@Mapper
+public interface FireFightingLevelDao {
+
+    public List<FireFightingLevel> getList(long projectId);
+
+    public int save(FireFightingLevel fireFightingLevel);
+
+    public int update(FireFightingLevel fireFightingLevel);
+
+    public int delete(long id);
+
+    public List<FireFightingLevel> getRoot(long projectId);
+}

+ 120 - 3
virgo.api/src/main/java/com/bosshand/virgo/api/test/model/Air.java

@@ -2,8 +2,6 @@ package com.bosshand.virgo.api.test.model;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
 
-import java.util.Date;
-
 /**
  * 模拟空气检测
  */
@@ -15,11 +13,14 @@ public class Air {
     private long projectItemId;
     private long projectItemTargetId;
     private long projectItemTargetRoomId;
+
+    private String name;
+
     /**
      * 时间
      */
     @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
-    private Date date;
+    private String date;
 
     /**
      * 设备id
@@ -58,7 +59,123 @@ public class Air {
      */
     private String pm10;
 
+    public long getId() {
+        return id;
+    }
+
+    public void setId(long id) {
+        this.id = id;
+    }
+
+    public long getOrganizationId() {
+        return organizationId;
+    }
+
+    public void setOrganizationId(long organizationId) {
+        this.organizationId = organizationId;
+    }
+
+    public long getProjectId() {
+        return projectId;
+    }
+
+    public void setProjectId(long projectId) {
+        this.projectId = projectId;
+    }
+
+    public long getProjectItemId() {
+        return projectItemId;
+    }
+
+    public void setProjectItemId(long projectItemId) {
+        this.projectItemId = projectItemId;
+    }
+
+    public long getProjectItemTargetId() {
+        return projectItemTargetId;
+    }
+
+    public void setProjectItemTargetId(long projectItemTargetId) {
+        this.projectItemTargetId = projectItemTargetId;
+    }
+
+    public long getProjectItemTargetRoomId() {
+        return projectItemTargetRoomId;
+    }
+
+    public void setProjectItemTargetRoomId(long projectItemTargetRoomId) {
+        this.projectItemTargetRoomId = projectItemTargetRoomId;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getDate() {
+        return date;
+    }
+
+    public void setDate(String date) {
+        this.date = date;
+    }
+
+    public long getDeviceId() {
+        return deviceId;
+    }
+
+    public void setDeviceId(long deviceId) {
+        this.deviceId = deviceId;
+    }
+
+    public String getTemperature() {
+        return temperature;
+    }
+
+    public void setTemperature(String temperature) {
+        this.temperature = temperature;
+    }
+
+    public String getHumidity() {
+        return humidity;
+    }
+
+    public void setHumidity(String humidity) {
+        this.humidity = humidity;
+    }
+
+    public String getCo2() {
+        return co2;
+    }
+
+    public void setCo2(String co2) {
+        this.co2 = co2;
+    }
+
+    public String gettVoc() {
+        return tVoc;
+    }
+
+    public void settVoc(String tVoc) {
+        this.tVoc = tVoc;
+    }
+
+    public String getPm25() {
+        return pm25;
+    }
 
+    public void setPm25(String pm25) {
+        this.pm25 = pm25;
+    }
 
+    public String getPm10() {
+        return pm10;
+    }
 
+    public void setPm10(String pm10) {
+        this.pm10 = pm10;
+    }
 }

+ 51 - 9
virgo.api/src/main/java/com/bosshand/virgo/api/test/model/FireFighting.java

@@ -1,17 +1,28 @@
 package com.bosshand.virgo.api.test.model;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
+
 /**
  *模拟消防
  */
 public class FireFighting {
 
     private long id;
-    private String name;
     private long projectId;
     private long projectItemId;
+    private long projectItemTargetId;
+    private long projectItemTargetRoomId;
+    private int type;
+
+    private String name;
+
+    @JsonFormat(shape=JsonFormat.Shape.STRING,pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
     private String date;
+
     private String content;
 
+    private String remark;
+
     public long getId() {
         return id;
     }
@@ -20,14 +31,6 @@ public class FireFighting {
         this.id = id;
     }
 
-    public String getName() {
-        return name;
-    }
-
-    public void setName(String name) {
-        this.name = name;
-    }
-
     public long getProjectId() {
         return projectId;
     }
@@ -44,6 +47,38 @@ public class FireFighting {
         this.projectItemId = projectItemId;
     }
 
+    public long getProjectItemTargetId() {
+        return projectItemTargetId;
+    }
+
+    public void setProjectItemTargetId(long projectItemTargetId) {
+        this.projectItemTargetId = projectItemTargetId;
+    }
+
+    public long getProjectItemTargetRoomId() {
+        return projectItemTargetRoomId;
+    }
+
+    public void setProjectItemTargetRoomId(long projectItemTargetRoomId) {
+        this.projectItemTargetRoomId = projectItemTargetRoomId;
+    }
+
+    public int getType() {
+        return type;
+    }
+
+    public void setType(int type) {
+        this.type = type;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
     public String getDate() {
         return date;
     }
@@ -60,4 +95,11 @@ public class FireFighting {
         this.content = content;
     }
 
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
 }

+ 79 - 0
virgo.api/src/main/java/com/bosshand/virgo/api/test/model/FireFightingLevel.java

@@ -0,0 +1,79 @@
+package com.bosshand.virgo.api.test.model;
+
+import java.util.List;
+
+/**
+ * 模拟消防层级列表
+ */
+public class FireFightingLevel {
+
+    private long id;
+
+    private String name;
+
+    private long parentId;
+
+    private long projectId;
+
+    private String title;
+
+    private String content;
+
+    private List<FireFightingLevel> children;
+
+    public long getId() {
+        return id;
+    }
+
+    public void setId(long id) {
+        this.id = id;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public long getParentId() {
+        return parentId;
+    }
+
+    public void setParentId(long parentId) {
+        this.parentId = parentId;
+    }
+
+    public long getProjectId() {
+        return projectId;
+    }
+
+    public void setProjectId(long projectId) {
+        this.projectId = projectId;
+    }
+
+    public String getTitle() {
+        return title;
+    }
+
+    public void setTitle(String title) {
+        this.title = title;
+    }
+
+    public String getContent() {
+        return content;
+    }
+
+    public void setContent(String content) {
+        this.content = content;
+    }
+
+    public List<FireFightingLevel> getChildren() {
+        return children;
+    }
+
+    public void setChildren(List<FireFightingLevel> children) {
+        this.children = children;
+    }
+}

+ 63 - 0
virgo.api/src/main/java/com/bosshand/virgo/api/test/service/TestService.java

@@ -73,6 +73,9 @@ public class TestService {
     @Autowired
     DeviceLevelCountDao deviceLevelCountDao;
 
+    @Autowired
+    FireFightingLevelDao fireFightingLevelDao;
+
     private static Logger logger = LoggerFactory.getLogger(TestService.class);
 
     public List<AccessControl> get(AccessControl data) {
@@ -415,6 +418,8 @@ public class TestService {
         return data;
     }
 
+    //===============================================消防=============================================================
+
     public List<FireFighting> get(FireFighting data) {
         return fireFightingDao.get(data);
     }
@@ -424,6 +429,64 @@ public class TestService {
         return data;
     }
 
+    public List<FireFightingLevel> getFireFightingLevel(long projectId) {
+        List<FireFightingLevel> rootList = fireFightingLevelDao.getRoot(projectId);
+        List<FireFightingLevel> ls = fireFightingLevelDao.getList(projectId);
+        List<FireFightingLevel> list = new ArrayList<>();
+        if (rootList != null && rootList.size() > 0) {
+            for (FireFightingLevel d : rootList) {
+                list.add(this.getNodeTreeById1(d.getId(), ls));
+            }
+        }
+        return list;
+    }
+
+    public int save(FireFightingLevel fireFightingLevel) {
+        return fireFightingLevelDao.save(fireFightingLevel);
+    }
+
+    public int update(FireFightingLevel fireFightingLevel) {
+        return fireFightingLevelDao.update(fireFightingLevel);
+    }
+
+    public int deleteFireFightingLevel(long id) {
+        return fireFightingLevelDao.delete(id);
+    }
+
+    private FireFightingLevel getNodeTreeById1(long id, List<FireFightingLevel> list) {
+        FireFightingLevel node = null;
+        List<FireFightingLevel> fireFightingLevelList = list;
+        for (FireFightingLevel data : fireFightingLevelList) {
+            if (data.getId() == id) {
+                node = data;
+                break;
+            }
+        }
+        if (node != null) {
+            node.setChildren(getChildNode1(node.getId(), fireFightingLevelList));
+        }
+        return node;
+    }
+
+    private List<FireFightingLevel> getChildNode1(long parentId, List<FireFightingLevel> list) {
+        List<FireFightingLevel> nodeList = new ArrayList<>();
+        nodeList.clear();
+        for (FireFightingLevel data : list) {
+            if (data.getParentId() == parentId) {
+                nodeList.add(data);
+            }
+        }
+        if (nodeList.size() > 0) {
+            for (FireFightingLevel data : nodeList) {
+                List<FireFightingLevel> childList = getChildNode1(data.getId(), list);
+                data.setChildren(childList);
+            }
+        }
+        return nodeList;
+    }
+
+    //===============================================================================================================
+
     public List<EnergyAnalysis> get(EnergyAnalysis data) {
         return energyAnalysisDao.get(data);
     }

+ 5 - 2
virgo.api/src/main/resources/mapper/AirMapper.xml

@@ -11,6 +11,7 @@
         <result column="projectItemId" property="projectItemId"/>
         <result column="projectItemTargetId" property="projectItemTargetId"/>
         <result column="projectItemTargetRoomId" property="projectItemTargetRoomId"/>
+        <result column="name" property="name"/>
         <result column="date" property="date"/>
         <result column="deviceId" property="deviceId"/>
         <result column="temperature" property="temperature"/>
@@ -35,6 +36,7 @@
             <if test="projectItemTargetId!=0">and projectItemTargetId=#{projectItemTargetId}</if>
             <if test="projectItemTargetRoomId!=0">and projectItemTargetRoomId=#{projectItemTargetRoomId}</if>
             <if test="deviceId!=0">and deviceId=#{deviceId}</if>
+            <if test="date!=null">and date like concat('%',#{date},'%')</if>
         </where>
     </select>
 
@@ -48,14 +50,15 @@
             <if test="od.projectItemTargetId!=0">and projectItemTargetId=#{od.projectItemTargetId}</if>
             <if test="od.projectItemTargetRoomId!=0">and projectItemTargetRoomId=#{od.projectItemTargetRoomId}</if>
             <if test="od.deviceId!=0">and deviceId=#{od.deviceId}</if>
+            <if test="od.date!=null">and date like concat('%',#{od.date},'%')</if>
         </where>
         limit #{currIndex} , #{pageSize}
     </select>
 
     <insert id="save" parameterType="com.bosshand.virgo.api.test.model.Air" useGeneratedKeys="true" keyProperty="id">
-        INSERT into test_l(`organizationId`, `projectId`, `projectItemId`, `projectItemTargetId`, `projectItemTargetRoomId`,`date`,
+        INSERT into test_l(`organizationId`, `projectId`, `projectItemId`, `projectItemTargetId`, `projectItemTargetRoomId`, `name`, `date`,
                                    `deviceId`, `temperature`, `humidity`, `co2`, `tVoc`, `pm25`, `pm10`)
-        values(#{organizationId}, #{projectId}, #{projectItemId}, #{projectItemTargetId}, #{projectItemTargetRoomId},now(),
+        values(#{organizationId}, #{projectId}, #{projectItemId}, #{projectItemTargetId}, #{projectItemTargetRoomId}, #{name}, now(),
                #{deviceId}, #{temperature}, #{humidity},#{assetNumber}, #{co2}, #{pm25}, #{pm10})
     </insert>
 

+ 44 - 0
virgo.api/src/main/resources/mapper/FireFightingLevelMapper.xml

@@ -0,0 +1,44 @@
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+<mapper namespace="com.bosshand.virgo.api.test.dao.FireFightingLevelDao">
+
+    <resultMap type="com.bosshand.virgo.api.test.model.FireFightingLevel" id="result" >
+        <id column="id" property="id"/>
+        <result column="name" property="name"/>
+        <result column="parentId" property="parentId"/>
+        <result column="projectId" property="projectId"/>
+        <result column="title" property="title"/>
+        <result column="content" property="content"/>
+    </resultMap>
+
+    <select id="getRoot" resultMap="result">
+        select * from test_r where projectId = #{projectId} and parentId = -1
+    </select>
+
+    <select id="getList" resultMap="result">
+        select * from test_r where projectId = #{projectId}
+    </select>
+
+    <insert id="save" parameterType="com.bosshand.virgo.api.test.model.FireFightingLevel" useGeneratedKeys="true" keyProperty="id">
+        INSERT into test_r(name, parentId, projectId, title, content)
+        values(#{name}, #{parentId}, #{projectId}, #{title}, #{content})
+    </insert>
+
+    <update id="update" parameterType="com.bosshand.virgo.api.test.model.FireFightingLevel">
+        UPDATE test_r
+        <trim prefix="set" suffixOverrides=",">
+            <if test="name!=null">name=#{name},</if>
+            <if test="projectId!=0">projectId=#{projectId},</if>
+            <if test="title!=null">title=#{title},</if>
+            <if test="content!=null">content=#{content},</if>
+        </trim>
+        WHERE id=#{id}
+    </update>
+
+    <delete id="delete">
+        DELETE FROM test_r where id = #{id}
+    </delete>
+
+</mapper>

+ 20 - 4
virgo.api/src/main/resources/mapper/FireFightingMapper.xml

@@ -8,9 +8,13 @@
         <id column="id" property="id"/>
         <result column="projectId" property="projectId"/>
         <result column="projectItemId" property="projectItemId"/>
+        <result column="projectItemTargetId" property="projectItemTargetId"/>
+        <result column="projectItemTargetRoomId" property="projectItemTargetRoomId"/>
+        <result column="type" property="type"/>
         <result column="name" property="name"/>
         <result column="date" property="date"/>
         <result column="content" property="content"/>
+        <result column="remark" property="remark"/>
     </resultMap>
 
     <select id="get" resultMap="KResult">
@@ -22,22 +26,34 @@
             <if test="projectItemId != 0">
                 and projectItemId = #{projectItemId}
             </if>
-            <if test="date != null">
-                and date = #{date}
+            <if test="projectItemTargetId != 0">
+                and projectItemTargetId = #{projectItemTargetId}
+            </if>
+            <if test="projectItemTargetRoomId != 0">
+                and projectItemTargetRoomId = #{projectItemTargetRoomId}
+            </if>
+            <if test="type != 0">
+                and type = #{type}
             </if>
             <if test="name != null">
                 and name = #{name}
             </if>
+            <if test="date != null">
+                and date like concat('%',#{date},'%')
+            </if>
             <if test="content != null">
                 and content = #{content}
             </if>
+            <if test="remark != null">
+                and remark = #{remark}
+            </if>
         </where>
         order by date desc
     </select>
 
     <insert id="save" parameterType="com.bosshand.virgo.api.test.model.FireFighting" useGeneratedKeys="true" keyProperty="id">
-        INSERT into test_k(projectId, projectItemId, date, name, content)
-        values (#{projectId}, #{projectItemId}, now(), #{name}, #{content})
+        INSERT into test_k(projectId, projectItemId, projectItemTargetId, projectItemTargetRoomId, date, type, name, content, remark)
+        values (#{projectId}, #{projectItemId}, #{projectItemTargetId},#{projectItemTargetRoomId}, now(), #{type}, #{name},#{content}, #{remark})
     </insert>
 
 </mapper>