Browse Source

增加建筑信息管理-列表查询、更新、删除接口

james 2 years ago
parent
commit
2f6f13c9ff

+ 2 - 2
service-fire/service-fire-biz/src/main/java/com/usky/fire/controller/MybatisGeneratorUtils.java

@@ -33,7 +33,7 @@ public class MybatisGeneratorUtils {
         projectPath+="/"+model;
         gc.setOutputDir(projectPath+ "/src/main/java");  //生成路径(一般都是生成在此项目的src/main/java下面)
         //修改为自己的名字
-        gc.setAuthor("JCB"); //设置作者
+        gc.setAuthor("ZYJ"); //设置作者
         gc.setOpen(false);
         gc.setFileOverride(true); //第二次生成会把第一次生成的覆盖掉
         gc.setServiceName("%sService"); //生成的service接口名字首字母是否为I,这样设置就没有
@@ -71,7 +71,7 @@ public class MybatisGeneratorUtils {
         // strategy.setTablePrefix("t_"); // 表名前缀
         strategy.setEntityLombokModel(true); //使用lombok
         //修改自己想要生成的表
-        strategy.setInclude("dem_grid_memder_vice");  // 逆向工程使用的表   如果要生成多个,这里可以传入String[]
+        strategy.setInclude("base_build");  // 逆向工程使用的表   如果要生成多个,这里可以传入String[]
         mpg.setStrategy(strategy);
 
         // 关闭默认 xml 生成,调整生成 至 根目录

+ 74 - 0
service-fire/service-fire-biz/src/main/java/com/usky/fire/controller/web/BaseBuildController.java

@@ -0,0 +1,74 @@
+package com.usky.fire.controller.web;
+
+
+import com.usky.common.core.bean.ApiResult;
+import com.usky.common.core.bean.CommonPage;
+import com.usky.common.log.annotation.Log;
+import com.usky.common.log.enums.BusinessType;
+import com.usky.fire.domain.BaseBuild;
+import com.usky.fire.service.BaseBuildService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+/**
+ * <p>
+ * 建筑信息 前端控制器
+ * </p>
+ *
+ * @author JCB
+ * @since 2022-11-22
+ */
+@RestController
+@RequestMapping("/baseBuild")
+public class BaseBuildController {
+
+
+    @Autowired
+    private BaseBuildService baseBuildService;
+
+    /**
+     * 建筑信息-列表查询
+     *
+     * @param buildNum  建筑编号
+     * @param buildName 建筑名称
+     * @param pageNum   当前页
+     * @param pageSize  每页条数
+     * @return
+     */
+    @GetMapping("baseBuildList")
+    public ApiResult<CommonPage<Object>> baseBuildList(@RequestParam(value = "buildNum", required = false) String buildNum,
+                                                       @RequestParam(value = "buildName", required = false) String buildName,
+                                                       @RequestParam(value = "pageNum", required = false, defaultValue = "1") Integer pageNum,
+                                                       @RequestParam(value = "pageSize", required = false, defaultValue = "10") Integer pageSize) {
+        return ApiResult.success(baseBuildService.baseBuildList(buildNum, buildName, pageNum, pageSize));
+    }
+
+    /**
+     * 建筑信息-修改
+     *
+     * @param baseBuild
+     * @return
+     */
+    @Log(title = "建筑信息-修改", businessType = BusinessType.UPDATE)
+    @PutMapping("updateBaseBuild")
+    public ApiResult<Void> updateBaseBuild(@RequestBody BaseBuild baseBuild) {
+        baseBuildService.updateBaseBuild(baseBuild);
+        return ApiResult.success();
+    }
+
+    /**
+     * 建筑信息-删除
+     *
+     * @param id 主键ID
+     * @return
+     */
+    @Log(title = "建筑信息-删除", businessType = BusinessType.DELETE)
+    @DeleteMapping("delBaseBuild")
+    public ApiResult<Void> delBaseBuild(@RequestParam(value = "id") Integer id) {
+        baseBuildService.delBaseBuild(id);
+        return ApiResult.success();
+    }
+
+
+}
+

+ 165 - 0
service-fire/service-fire-biz/src/main/java/com/usky/fire/domain/BaseBuild.java

@@ -0,0 +1,165 @@
+package com.usky.fire.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import java.time.LocalDate;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import java.io.Serializable;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 建筑信息
+ * </p>
+ *
+ * @author JCB
+ * @since 2022-11-22
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+public class BaseBuild implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 建筑编号
+     */
+    private String buildNum;
+
+    /**
+     * 建筑名称
+     */
+    private String buildName;
+
+    /**
+     * 详细地址
+     */
+    private String address;
+
+    /**
+     * 模型地址
+     */
+    private String modelAddress;
+
+    /**
+     * 地上楼层
+     */
+    private Integer aboveFloor;
+
+    /**
+     * 地下楼层
+     */
+    private Integer underFloor;
+
+    /**
+     * 建筑面积
+     */
+    private Double buildArea;
+
+    /**
+     * 占地面积
+     */
+    private Double coverArea;
+
+    /**
+     * 耐火等级
+     */
+    private Integer fireRating;
+
+    /**
+     * 使用性质
+     */
+    private Integer useCharacter;
+
+    /**
+     * 建筑结构
+     */
+    private Integer buildStructure;
+
+    /**
+     * 建筑高度
+     */
+    private Double buildHigh;
+
+    /**
+     * 建筑高度分类
+     */
+    private Integer highType;
+
+    /**
+     * 竣工年份
+     */
+    private LocalDate completeYear;
+
+    /**
+     * 安全责任人
+     */
+    private String safePerson;
+
+    /**
+     * 安全管理人
+     */
+    private String managePerson;
+
+    /**
+     * 火灾危险性
+     */
+    private Integer fireRisk;
+
+    /**
+     * 消防控制室位置
+     */
+    private String fireControlRoom;
+
+    /**
+     * 建筑立面图
+     */
+    private String buildInside;
+
+    /**
+     * 建筑平面图
+     */
+    private String buildPlan;
+
+    /**
+     * 设施ID
+     */
+    private Integer facilityId;
+
+    /**
+     * 所属联网单位ID
+     */
+    private String companyId;
+
+    /**
+     * 创建时间
+     */
+    private LocalDateTime createTime;
+
+    /**
+     * 更新时间
+     */
+    private LocalDateTime updateTime;
+
+    /**
+     * 更新人
+     */
+    private String updatePerson;
+
+    /**
+     * 创建人
+     */
+    private String creator;
+
+    /**
+     * 删除标识
+     */
+    private String deleteFlag;
+}

+ 16 - 0
service-fire/service-fire-biz/src/main/java/com/usky/fire/mapper/BaseBuildMapper.java

@@ -0,0 +1,16 @@
+package com.usky.fire.mapper;
+
+import com.usky.fire.domain.BaseBuild;
+import com.usky.common.mybatis.core.CrudMapper;
+
+/**
+ * <p>
+ * 建筑信息 Mapper 接口
+ * </p>
+ *
+ * @author JCB
+ * @since 2022-11-22
+ */
+public interface BaseBuildMapper extends CrudMapper<BaseBuild> {
+
+}

+ 42 - 0
service-fire/service-fire-biz/src/main/java/com/usky/fire/service/BaseBuildService.java

@@ -0,0 +1,42 @@
+package com.usky.fire.service;
+
+import com.usky.common.core.bean.CommonPage;
+import com.usky.fire.domain.BaseBuild;
+import com.usky.common.mybatis.core.CrudService;
+import com.usky.fire.service.vo.BaseBuildVo;
+
+/**
+ * <p>
+ * 建筑信息 服务类
+ * </p>
+ *
+ * @author JCB
+ * @since 2022-11-22
+ */
+public interface BaseBuildService extends CrudService<BaseBuild> {
+    /**
+     * 建筑信息-列表查询
+     *
+     * @param buildNum 项目编号
+     * @param buildName 单位编号
+     * @param pageNum     当前页
+     * @param pageSize    每页条数
+     * @return
+     */
+    CommonPage<Object> baseBuildList(String buildNum, String buildName, Integer pageNum, Integer pageSize);
+
+    /**
+     * 建筑信息-修改
+     *
+     * @param baseBuild
+     */
+    void updateBaseBuild(BaseBuild baseBuild);
+
+    /**
+     * 建筑信息-删除
+     *
+     * @param id 主键ID
+     */
+    void delBaseBuild(Integer id);
+
+}

+ 89 - 0
service-fire/service-fire-biz/src/main/java/com/usky/fire/service/impl/BaseBuildServiceImpl.java

@@ -0,0 +1,89 @@
+package com.usky.fire.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.usky.common.core.bean.CommonPage;
+import com.usky.common.mybatis.core.AbstractCrudService;
+import com.usky.common.security.utils.SecurityUtils;
+import com.usky.fire.service.BaseBuildService;
+import com.usky.fire.domain.BaseBuild;
+import com.usky.fire.mapper.BaseBuildMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDateTime;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * <p>
+ * 建筑信息 服务实现类
+ * </p>
+ *
+ * @author JCB
+ * @since 2022-11-22
+ */
+@Service
+public class BaseBuildServiceImpl extends AbstractCrudService<BaseBuildMapper, BaseBuild> implements BaseBuildService {
+
+    @Override
+    public CommonPage<Object> baseBuildList(String buildNum, String buildName, Integer pageNum, Integer pageSize) {
+        List<Object> list = new ArrayList<>();
+        IPage<BaseBuild> page = new Page<>(pageNum, pageSize);
+        LambdaQueryWrapper<BaseBuild> queryWrapper = Wrappers.lambdaQuery();
+        queryWrapper.select(BaseBuild::getId, BaseBuild::getBuildNum, BaseBuild::getBuildName, BaseBuild::getAddress, BaseBuild::getBuildArea,
+                BaseBuild::getFireRating, BaseBuild::getUseCharacter, BaseBuild::getBuildStructure, BaseBuild::getBuildHigh,
+                BaseBuild::getCompleteYear, BaseBuild::getSafePerson, BaseBuild::getManagePerson, BaseBuild::getFireRisk, BaseBuild::getBuildPlan)
+                .eq(BaseBuild::getDeleteFlag, 0)
+                .like(StringUtils.isNotBlank(buildNum), BaseBuild::getBuildNum, buildNum)
+                .like(StringUtils.isNotBlank(buildName), BaseBuild::getBuildName, buildName)
+                .orderByDesc(BaseBuild::getId);
+        page = this.page(page, queryWrapper);
+        if (CollectionUtils.isNotEmpty(page.getRecords())) {
+            for (int i = 0; i < page.getRecords().size(); i++) {
+                Map<String, Object> map = new HashMap<>();
+                map.put("id", page.getRecords().get(i).getId());
+                map.put("buildNum", page.getRecords().get(i).getBuildNum());
+                map.put("buildName", page.getRecords().get(i).getBuildName());
+                map.put("address", page.getRecords().get(i).getAddress());
+                map.put("buildArea", page.getRecords().get(i).getBuildArea());
+                map.put("fireRating", page.getRecords().get(i).getFireRating());
+                map.put("useCharacter", page.getRecords().get(i).getUseCharacter());
+                map.put("buildStructure", page.getRecords().get(i).getBuildStructure());
+                map.put("buildHigh", page.getRecords().get(i).getBuildHigh());
+                map.put("completeYear", page.getRecords().get(i).getCompleteYear());
+                map.put("safePerson", page.getRecords().get(i).getSafePerson());
+                map.put("managePerson", page.getRecords().get(i).getManagePerson());
+                map.put("fireRisk", page.getRecords().get(i).getFireRisk());
+                map.put("buildPlan", page.getRecords().get(i).getBuildPlan());
+                list.add(map);
+            }
+        }
+        return new CommonPage<>(list, page.getTotal(), pageSize, pageNum);
+    }
+
+
+    @Override
+    public void updateBaseBuild(BaseBuild baseBuild) {
+        baseBuild.setUpdatePerson(SecurityUtils.getLoginUser().getSysPerson().getFullName());
+        baseBuild.setUpdateTime(LocalDateTime.now());
+        this.updateById(baseBuild);
+    }
+
+    @Override
+    public void delBaseBuild(Integer id) {
+        BaseBuild baseBuild = new BaseBuild();
+        baseBuild.setId(id);
+        baseBuild.setUpdatePerson(SecurityUtils.getLoginUser().getSysPerson().getFullName());
+        baseBuild.setUpdateTime(LocalDateTime.now());
+        baseBuild.setDeleteFlag("1");
+        this.updateById(baseBuild);
+    }
+
+}

+ 20 - 20
service-fire/service-fire-biz/src/main/java/com/usky/fire/service/mqtt/fire/FireStrategy.java

@@ -35,26 +35,26 @@ public class FireStrategy implements MqttStrategy {
 
     @Override
     public String disposeMessage(MqttBaseVO mqttBaseVO) {
-        LambdaQueryWrapper<SpOwnerCompany> queryWrapper = Wrappers.lambdaQuery();
-        queryWrapper.select(SpOwnerCompany::getOwnerId);
-        List<SpOwnerCompany> list = spOwnerCompanyService.list(queryWrapper);
-        String topic = mqttBaseVO.getTopic();
-        topic = topic.split("/")[3];
-        String finalTopic = topic;
-        list.stream().filter(s -> s.getOwnerId().equals(finalTopic))
-                .findAny().ifPresent(s -> {
-            FireAlarmVO fireAlarmVo = JsonUtils.fromJson(mqttBaseVO.getData().toString(), FireAlarmVO.class);
-            TbAlarm tbAlarm = this.enhanceData(fireAlarmVo);
-            if ("ALARM".equals(fireAlarmVo.getType())) {
-                tbAlarmService.save(tbAlarm);
-
-            } else if ("STATE".equals(fireAlarmVo.getType())) {
-//            LambdaUpdateWrapper<DeviceStatus> updateWrapper = Wrappers.lambdaUpdate();
-//            updateWrapper.set(DeviceStatus::getDevicestatus,fireAlarmVo.getDevState())
-//                    .eq(DeviceStatus::getDeviceid,fireAlarmVo.getDevId());
-//            deviceStatusService.update(updateWrapper);
-            }
-        });
+//        LambdaQueryWrapper<SpOwnerCompany> queryWrapper = Wrappers.lambdaQuery();
+//        queryWrapper.select(SpOwnerCompany::getOwnerId);
+//        List<SpOwnerCompany> list = spOwnerCompanyService.list(queryWrapper);
+//        String topic = mqttBaseVO.getTopic();
+//        topic = topic.split("/")[3];
+//        String finalTopic = topic;
+//        list.stream().filter(s -> s.getOwnerId().equals(finalTopic))
+//                .findAny().ifPresent(s -> {
+//            FireAlarmVO fireAlarmVo = JsonUtils.fromJson(mqttBaseVO.getData().toString(), FireAlarmVO.class);
+//            TbAlarm tbAlarm = this.enhanceData(fireAlarmVo);
+//            if ("ALARM".equals(fireAlarmVo.getType())) {
+//                tbAlarmService.save(tbAlarm);
+//
+//            } else if ("STATE".equals(fireAlarmVo.getType())) {
+////            LambdaUpdateWrapper<DeviceStatus> updateWrapper = Wrappers.lambdaUpdate();
+////            updateWrapper.set(DeviceStatus::getDevicestatus,fireAlarmVo.getDevState())
+////                    .eq(DeviceStatus::getDeviceid,fireAlarmVo.getDevId());
+////            deviceStatusService.update(updateWrapper);
+//            }
+//        });
 
         return null;
     }

+ 97 - 0
service-fire/service-fire-biz/src/main/java/com/usky/fire/service/vo/BaseBuildVo.java

@@ -0,0 +1,97 @@
+package com.usky.fire.service.vo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ *
+ * </p>
+ *
+ * @author JCB
+ * @since 2022-07-12
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+public class BaseBuildVo implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 建筑编号
+     */
+    private String buildNum;
+
+    /**
+     * 建筑名称
+     */
+    private String buildName;
+
+    /**
+     * 详细地址
+     */
+    private String address;
+
+    /**
+     * 建筑面积
+     */
+    private Double buildArea;
+
+    /**
+     * 耐火等级
+     */
+    private Integer fireRating;
+
+    /**
+     * 使用性质
+     */
+    private Integer useCharacter;
+
+    /**
+     * 建筑结构
+     */
+    private Integer buildStructure;
+
+    /**
+     * 建筑高度
+     */
+    private Double buildHigh;
+
+    /**
+     * 竣工年份
+     */
+    private LocalDate completeYear;
+
+    /**
+     * 安全责任人
+     */
+    private String safePerson;
+
+    /**
+     * 安全管理人
+     */
+    private String managePerson;
+
+    /**
+     * 火灾危险性
+     */
+    private Integer fireRisk;
+
+    /**
+     * 建筑平面图
+     */
+    private String buildPlan;
+}

+ 2 - 2
service-fire/service-fire-biz/src/main/resources/bootstrap.yml

@@ -14,10 +14,10 @@ spring:
     nacos:
       discovery:
         # 服务注册地址
-        server-addr: usky-cloud-nacos:8848
+        server-addr: 172.16.120.165:8848
       config:
         # 配置中心地址
-        server-addr: usky-cloud-nacos:8848
+        server-addr: 172.16.120.165:8848
         # 配置文件格式
         file-extension: yml
         # 共享配置

+ 36 - 0
service-fire/service-fire-biz/src/main/resources/mapper/fire/BaseBuildMapper.xml

@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.usky.fire.mapper.BaseBuildMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.usky.fire.domain.BaseBuild">
+        <id column="id" property="id" />
+        <result column="build_num" property="buildNum" />
+        <result column="build_name" property="buildName" />
+        <result column="address" property="address" />
+        <result column="model_address" property="modelAddress" />
+        <result column="above_floor" property="aboveFloor" />
+        <result column="under_floor" property="underFloor" />
+        <result column="build_area" property="buildArea" />
+        <result column="cover_area" property="coverArea" />
+        <result column="fire_rating" property="fireRating" />
+        <result column="use_character" property="useCharacter" />
+        <result column="build_structure" property="buildStructure" />
+        <result column="build_high" property="buildHigh" />
+        <result column="high_type" property="highType" />
+        <result column="complete_year" property="completeYear" />
+        <result column="safe_person" property="safePerson" />
+        <result column="manage_person" property="managePerson" />
+        <result column="fire_risk" property="fireRisk" />
+        <result column="fire_control_room" property="fireControlRoom" />
+        <result column="build_inside" property="buildInside" />
+        <result column="build_plan" property="buildPlan" />
+        <result column="facility_id" property="facilityId" />
+        <result column="company_id" property="companyId" />
+        <result column="create_time" property="createTime" />
+        <result column="update_time" property="updateTime" />
+        <result column="update_person" property="updatePerson" />
+        <result column="creator" property="creator" />
+    </resultMap>
+
+</mapper>