Forráskód Böngészése

计量设备绑定关系接口

lv.wenbin 7 hónapja
szülő
commit
ac143765b6
20 módosított fájl, 346 hozzáadás és 10 törlés
  1. 2 0
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/AdmEmsElecPgIndexController.java
  2. 3 0
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/AdmEmsIndexRangeController.java
  3. 2 0
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/AdmOpAlarmController.java
  4. 3 0
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/AdmOpAlarmPolicyController.java
  5. 2 0
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/AdmOpInspectionReportController.java
  6. 2 0
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/AreaController.java
  7. 2 0
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/ElecMeterHController.java
  8. 3 0
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/EmsDeviceRbookController.java
  9. 3 1
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/EmsDisStaCoalController.java
  10. 72 0
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/MeterBoundaryRelController.java
  11. 2 0
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/OpInspectionPlanController.java
  12. 2 0
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/WaterMeterHController.java
  13. 72 0
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/domain/MeterBoundaryRel.java
  14. 41 0
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/mapper/MeterBoundaryRelMapper.java
  15. 39 0
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/service/IMeterBoundaryRelService.java
  16. 36 0
      ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/service/impl/MeterBoundaryRelServiceImpl.java
  17. 1 0
      ems-cloud/ems-modules/ems-server/src/main/resources/mapper/ems/ElecMeterHMapper.xml
  18. 37 0
      ems-cloud/ems-modules/ems-server/src/main/resources/mapper/ems/MeterBoundaryRelMapper.xml
  19. 12 0
      ems-cloud/sql/ems_init_data.sql
  20. 10 9
      ems-cloud/sql/ems_sys.sql

+ 2 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/AdmEmsElecPgIndexController.java

@@ -9,6 +9,7 @@ import com.ruoyi.common.log.enums.BusinessType;
 import com.ruoyi.common.security.annotation.RequiresPermissions;
 import com.ruoyi.ems.domain.AdmEmsElecPgIndex;
 import com.ruoyi.ems.service.IAdmEmsElecPgIndexService;
+import io.swagger.annotations.Api;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.DeleteMapping;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -30,6 +31,7 @@ import java.util.List;
  */
 @RestController
 @RequestMapping("/elecPgIndex")
+@Api(value = "AdmEmsElecPgIndexController", description = "电网设施指标")
 public class AdmEmsElecPgIndexController extends BaseController
 {
     @Autowired

+ 3 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/AdmEmsIndexRangeController.java

@@ -3,6 +3,8 @@ package com.ruoyi.ems.controller;
 import java.util.List;
 import java.io.IOException;
 import javax.servlet.http.HttpServletResponse;
+
+import io.swagger.annotations.Api;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -30,6 +32,7 @@ import com.ruoyi.common.core.web.page.TableDataInfo;
  */
 @RestController
 @RequestMapping("/indexRange")
+@Api(value = "AdmEmsIndexRangeController", description = "能源指标范围")
 public class AdmEmsIndexRangeController extends BaseController
 {
     @Autowired

+ 2 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/AdmOpAlarmController.java

@@ -4,6 +4,7 @@ import java.util.List;
 
 import javax.servlet.http.HttpServletResponse;
 
+import io.swagger.annotations.Api;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.DeleteMapping;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -33,6 +34,7 @@ import com.ruoyi.ems.service.IAdmOpAlarmService;
  */
 @RestController
 @RequestMapping("/alarm-info")
+@Api(value = "AdmOpAlarmController", description = "能源设施告警")
 public class AdmOpAlarmController extends BaseController {
     @Autowired
     private IAdmOpAlarmService opAlarmService;

+ 3 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/AdmOpAlarmPolicyController.java

@@ -3,6 +3,8 @@ package com.ruoyi.ems.controller;
 import java.util.List;
 import java.io.IOException;
 import javax.servlet.http.HttpServletResponse;
+
+import io.swagger.annotations.Api;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -30,6 +32,7 @@ import com.ruoyi.common.core.web.page.TableDataInfo;
  */
 @RestController
 @RequestMapping("/alarm")
+@Api(value = "AdmOpAlarmPolicyController", description = "能源设施告警策略")
 public class AdmOpAlarmPolicyController extends BaseController
 {
     @Autowired

+ 2 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/AdmOpInspectionReportController.java

@@ -4,6 +4,7 @@ import java.util.List;
 
 import javax.servlet.http.HttpServletResponse;
 
+import io.swagger.annotations.Api;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.DeleteMapping;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -34,6 +35,7 @@ import com.ruoyi.ems.service.IAdmOpInspectionReportService;
  */
 @RestController
 @RequestMapping("/inspectionReport")
+@Api(value = "AdmOpInspectionReportController", description = "巡检报告")
 public class AdmOpInspectionReportController extends BaseController {
     @Autowired
     private IAdmOpInspectionReportService inspectionReportService;

+ 2 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/AreaController.java

@@ -14,6 +14,7 @@ import com.ruoyi.ems.service.IAreaService;
 import com.ruoyi.ems.service.IEmsFacsService;
 import com.ruoyi.ems.service.IObjTagRelService;
 import com.ruoyi.ems.util.AreaUtils;
+import io.swagger.annotations.Api;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.DeleteMapping;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -38,6 +39,7 @@ import java.util.stream.Collectors;
  */
 @RestController
 @RequestMapping("/basecfg/area")
+@Api(value = "AreaController", description = "区域管理")
 public class AreaController extends BaseController {
     @Autowired
     private IAreaService areaService;

+ 2 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/ElecMeterHController.java

@@ -10,6 +10,7 @@ import com.ruoyi.common.security.annotation.RequiresPermissions;
 import com.ruoyi.ems.domain.ElecMeterH;
 import com.ruoyi.ems.model.QueryMeter;
 import com.ruoyi.ems.service.IElecMeterHService;
+import io.swagger.annotations.Api;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.DeleteMapping;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -31,6 +32,7 @@ import java.util.List;
  */
 @RestController
 @RequestMapping("/elecMeterH")
+@Api(value = "ElecMeterHController", description = "用电计量-小时")
 public class ElecMeterHController extends BaseController {
     @Autowired
     private IElecMeterHService elecMeterHService;

+ 3 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/EmsDeviceRbookController.java

@@ -2,6 +2,8 @@ package com.ruoyi.ems.controller;
 
 import java.util.List;
 import javax.servlet.http.HttpServletResponse;
+
+import io.swagger.annotations.Api;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -29,6 +31,7 @@ import com.ruoyi.common.core.web.page.TableDataInfo;
  */
 @RestController
 @RequestMapping("/device/rbook")
+@Api(value = "EmsDeviceRbookController", description = "设备台账")
 public class EmsDeviceRbookController extends BaseController
 {
     @Autowired

+ 3 - 1
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/EmsDisStaCoalController.java

@@ -8,6 +8,7 @@ import com.ruoyi.common.log.enums.BusinessType;
 import com.ruoyi.common.security.annotation.RequiresPermissions;
 import com.ruoyi.ems.domain.EmsDisStaCoal;
 import com.ruoyi.ems.service.IEmsDisStaCoalService;
+import io.swagger.annotations.Api;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.DeleteMapping;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -21,13 +22,14 @@ import org.springframework.web.bind.annotation.RestController;
 import java.util.List;
 
 /**
- * 能源折标准煤维Controller
+ * 能源折标准煤维Controller
  * 
  * @author ruoyi
  * @date 2024-12-02
  */
 @RestController
 @RequestMapping("/disStaCoal")
+@Api(value = "EmsDisStaCoalController", description = "能源折标准煤维表")
 public class EmsDisStaCoalController extends BaseController
 {
     @Autowired

+ 72 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/MeterBoundaryRelController.java

@@ -0,0 +1,72 @@
+package com.ruoyi.ems.controller;
+
+import java.util.List;
+import java.io.IOException;
+import javax.servlet.http.HttpServletResponse;
+
+import io.swagger.annotations.Api;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import com.ruoyi.common.log.annotation.Log;
+import com.ruoyi.common.log.enums.BusinessType;
+import com.ruoyi.common.security.annotation.RequiresPermissions;
+import com.ruoyi.ems.domain.MeterBoundaryRel;
+import com.ruoyi.ems.service.IMeterBoundaryRelService;
+import com.ruoyi.common.core.web.controller.BaseController;
+import com.ruoyi.common.core.web.domain.AjaxResult;
+import com.ruoyi.common.core.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.web.page.TableDataInfo;
+
+/**
+ * 计量设备绑定边界对象关系Controller
+ *
+ * @author ruoyi
+ * @date 2024-12-09
+ */
+@RestController
+@RequestMapping("/meterBoundaryRel")
+@Api(value = "MeterBoundaryRelController", description = "计量设备绑定边界对象关系")
+public class MeterBoundaryRelController extends BaseController {
+    @Autowired
+    private IMeterBoundaryRelService relService;
+
+    /**
+     * 查询计量设备绑定边界对象关系列表
+     */
+    @RequiresPermissions("ems:meterBoundaryRel:list")
+    @GetMapping("/listByObj")
+    public AjaxResult list(@RequestParam(value = "objType") Integer objType,
+        @RequestParam(value = "boundaryObj") String boundaryObj) {
+        List<MeterBoundaryRel> list = relService.selectRelByObj(objType, boundaryObj);
+        return success(list);
+    }
+
+    /**
+     * 新增计量设备绑定边界对象关系
+     */
+    @RequiresPermissions("ems:meterBoundaryRel:add")
+    @Log(title = "计量设备绑定边界对象关系", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody List<MeterBoundaryRel> list) {
+        return toAjax(relService.insertRelBatch(list));
+    }
+
+    /**
+     * 删除计量设备绑定边界对象关系
+     */
+    @RequiresPermissions("ems:meterBoundaryRel:remove")
+    @Log(title = "计量设备绑定边界对象关系", businessType = BusinessType.DELETE)
+    @DeleteMapping("/delByObj")
+    public AjaxResult delByObj(@RequestParam(value = "objType") Integer objType,
+        @RequestParam(value = "boundaryObj") String boundaryObj) {
+        return toAjax(relService.deleteRelByObj(objType, boundaryObj));
+    }
+}

+ 2 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/OpInspectionPlanController.java

@@ -4,6 +4,7 @@ import java.util.List;
 
 import javax.servlet.http.HttpServletResponse;
 
+import io.swagger.annotations.Api;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.DeleteMapping;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -33,6 +34,7 @@ import com.ruoyi.ems.service.IOpInspectionPlanService;
  */
 @RestController
 @RequestMapping("/inspectionPlan")
+@Api(value = "OpInspectionPlanController", description = "巡检计划")
 public class OpInspectionPlanController extends BaseController {
     @Autowired
     private IOpInspectionPlanService inspectionTaskService;

+ 2 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/WaterMeterHController.java

@@ -5,6 +5,7 @@ import java.io.IOException;
 import javax.servlet.http.HttpServletResponse;
 
 import com.ruoyi.ems.model.QueryMeter;
+import io.swagger.annotations.Api;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -33,6 +34,7 @@ import com.ruoyi.common.core.web.page.TableDataInfo;
  */
 @RestController
 @RequestMapping("/waterMeterH")
+@Api(value = "WaterMeterHController", description = "用水计量-小时")
 public class WaterMeterHController extends BaseController
 {
     @Autowired

+ 72 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/domain/MeterBoundaryRel.java

@@ -0,0 +1,72 @@
+package com.ruoyi.ems.domain;
+
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+/**
+ * 计量设备绑定边界对象关系对象 adm_meter_boundary_rel
+ * 
+ * @author ruoyi
+ * @date 2024-12-09
+ */
+public class MeterBoundaryRel
+{
+    /** 序号 */
+    private Long id;
+
+    /** 计量设备 */
+    private String meterDevice;
+
+    /** 边界对象 */
+    private String boundaryObj;
+
+    /** 设备类型 */
+    private Integer objType;
+
+    public void setId(Long id) 
+    {
+        this.id = id;
+    }
+
+    public Long getId() 
+    {
+        return id;
+    }
+    public void setMeterDevice(String meterDevice) 
+    {
+        this.meterDevice = meterDevice;
+    }
+
+    public String getMeterDevice() 
+    {
+        return meterDevice;
+    }
+    public void setBoundaryObj(String boundaryObj) 
+    {
+        this.boundaryObj = boundaryObj;
+    }
+
+    public String getBoundaryObj() 
+    {
+        return boundaryObj;
+    }
+    public void setObjType(Integer objType)
+    {
+        this.objType = objType;
+    }
+
+    public Integer getObjType()
+    {
+        return objType;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("id", getId())
+            .append("meterDevice", getMeterDevice())
+            .append("boundaryObj", getBoundaryObj())
+            .append("objType", getObjType())
+            .toString();
+    }
+}

+ 41 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/mapper/MeterBoundaryRelMapper.java

@@ -0,0 +1,41 @@
+package com.ruoyi.ems.mapper;
+
+import java.util.List;
+
+import com.ruoyi.ems.domain.MeterBoundaryRel;
+import org.apache.ibatis.annotations.Param;
+
+/**
+ * 计量设备绑定边界对象关系Mapper接口
+ *
+ * @author ruoyi
+ * @date 2024-12-09
+ */
+public interface MeterBoundaryRelMapper {
+    /**
+     * 查询计量设备绑定边界对象关系列表
+     *
+     * @param objType     计量对象类型
+     * @param boundaryObj 计量对象编号
+     *
+     * @return 计量设备绑定边界对象关系集合
+     */
+    List<MeterBoundaryRel> selectByObj(@Param("objType") Integer objType, @Param("boundaryObj") String boundaryObj);
+
+    /**
+     * 删除计量设备绑定边界对象关系
+     *
+     * @param objType     计量对象类型
+     * @param boundaryObj 计量对象编号
+     * @return 结果
+     */
+    int deleteByObj(@Param("objType") Integer objType, @Param("boundaryObj") String boundaryObj);
+
+    /**
+     * 新增计量设备绑定边界对象关系
+     *
+     * @param list 计量绑定关系集合
+     * @return 结果
+     */
+    int insertBatch(List<MeterBoundaryRel> list);
+}

+ 39 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/service/IMeterBoundaryRelService.java

@@ -0,0 +1,39 @@
+package com.ruoyi.ems.service;
+
+import java.util.List;
+
+import com.ruoyi.ems.domain.MeterBoundaryRel;
+
+/**
+ * 计量设备绑定边界对象关系Service接口
+ *
+ * @author ruoyi
+ * @date 2024-12-09
+ */
+public interface IMeterBoundaryRelService {
+    /**
+     * 查询计量设备绑定边界对象关系列表
+     *
+     * @param boundaryObj 计量对象编号
+     * @param objType     计量对象类型
+     * @return 计量设备绑定边界对象关系集合
+     */
+    List<MeterBoundaryRel> selectRelByObj(Integer objType, String boundaryObj);
+
+    /**
+     * 删除计量设备绑定边界对象关系信息
+     *
+     * @param objType     计量对象类型
+     * @param boundaryObj 计量对象编号
+     * @return 结果
+     */
+    int deleteRelByObj(Integer objType, String boundaryObj);
+
+    /**
+     * 新增计量设备绑定边界对象关系
+     *
+     * @param list 计量绑定关系列表
+     * @return 结果
+     */
+    int insertRelBatch(List<MeterBoundaryRel> list);
+}

+ 36 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/service/impl/MeterBoundaryRelServiceImpl.java

@@ -0,0 +1,36 @@
+package com.ruoyi.ems.service.impl;
+
+import java.util.List;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.ruoyi.ems.mapper.MeterBoundaryRelMapper;
+import com.ruoyi.ems.domain.MeterBoundaryRel;
+import com.ruoyi.ems.service.IMeterBoundaryRelService;
+
+/**
+ * 计量设备绑定边界对象关系Service业务层处理
+ *
+ * @author ruoyi
+ * @date 2024-12-09
+ */
+@Service
+public class MeterBoundaryRelServiceImpl implements IMeterBoundaryRelService {
+    @Autowired
+    private MeterBoundaryRelMapper relMapper;
+
+    @Override
+    public List<MeterBoundaryRel> selectRelByObj(Integer objType, String boundaryObj) {
+        return relMapper.selectByObj(objType, boundaryObj);
+    }
+
+    @Override
+    public int deleteRelByObj(Integer objType, String boundaryObj) {
+        return relMapper.deleteByObj(objType, boundaryObj);
+    }
+
+    @Override
+    public int insertRelBatch(List<MeterBoundaryRel> list) {
+        return relMapper.insertBatch(list);
+    }
+}

+ 1 - 0
ems-cloud/ems-modules/ems-server/src/main/resources/mapper/ems/ElecMeterHMapper.xml

@@ -34,6 +34,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="deviceCode != null  and deviceCode != ''"> and m.device_code = #{deviceCode}</if>
             <if test="startTime != null and startTime != '' and endTime != null and endTime != ''"> and m.record_time between #{startTime} and #{endTime}</if>
         </where>
+        order by m.record_time ${orderFlag}
     </select>
         
     <insert id="insertElecMeterH" parameterType="com.ruoyi.ems.domain.ElecMeterH" useGeneratedKeys="true" keyProperty="id">

+ 37 - 0
ems-cloud/ems-modules/ems-server/src/main/resources/mapper/ems/MeterBoundaryRelMapper.xml

@@ -0,0 +1,37 @@
+<?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.ruoyi.ems.mapper.MeterBoundaryRelMapper">
+    
+    <resultMap type="com.ruoyi.ems.domain.MeterBoundaryRel" id="relResult">
+        <result property="id"    column="id"    />
+        <result property="meterDevice"    column="meter_device"    />
+        <result property="boundaryObj"    column="boundary_obj"    />
+        <result property="objType"    column="obj_type"    />
+    </resultMap>
+
+    <sql id="selectMeterBoundaryRelVo">
+        select id, meter_device, boundary_obj, obj_type from adm_meter_boundary_rel
+    </sql>
+
+    <select id="selectByObj"  resultMap="relResult">
+        <include refid="selectMeterBoundaryRelVo"/>
+        <where>
+            <if test="boundaryObj != null  and boundaryObj != ''"> and boundary_obj = #{boundaryObj}</if>
+            <if test="objType != null "> and obj_type = #{objType}</if>
+        </where>
+    </select>
+
+    <insert id="insertBatch" parameterType="java.util.List" useGeneratedKeys="true" keyProperty="id">
+        insert into adm_meter_boundary_rel (meter_device, boundary_obj, obj_type)
+        values
+        <foreach collection="list" item="item" index="index" separator=",">
+            (#{item.meterDevice}, #{item.boundaryObj}, #{item.objType})
+        </foreach>
+    </insert>
+
+    <delete id="deleteByObj" >
+        delete from adm_meter_boundary_rel where boundary_obj = #{boundaryObj} and obj_type = #{objType}
+    </delete>
+</mapper>

+ 12 - 0
ems-cloud/sql/ems_init_data.sql

@@ -527,6 +527,7 @@ INSERT INTO `adm_meter_device` (`area_code`, `device_code`, `device_name`, `devi
 INSERT INTO `adm_meter_device` (`area_code`, `device_code`, `device_name`, `device_location`, `meter_cls`, `obj_tag`, `col_cycle`, `col_mode`, `magnification`, `spec_desc`) VALUES ('321283124S3001', 'J-D-B-110', '北区/综合楼B-110', '北区综合楼一楼设备间', 45, 1, 4, 1, 1, '直采表');
 INSERT INTO `adm_meter_device` (`area_code`, `device_code`, `device_name`, `device_location`, `meter_cls`, `obj_tag`, `col_cycle`, `col_mode`, `magnification`, `spec_desc`) VALUES ('321283124S3001', 'J-D-B-Z101', '北区/综合楼照明(Z101)', '北区综合楼一楼设备间', 45, 0, 4, 1, 1, '直采表');
 INSERT INTO `adm_meter_device` (`area_code`, `device_code`, `device_name`, `device_location`, `meter_cls`, `obj_tag`, `col_cycle`, `col_mode`, `magnification`, `spec_desc`) VALUES ('321283124S3001', 'J-D-B-Z120', '北区/综合楼空调(Z120)', '北区综合楼一楼设备间', 45, 0, 4, 1, 50, '互感器表');
+INSERT INTO `adm_meter_device` (`area_code`, `device_code`, `device_name`, `device_location`, `meter_cls`, `obj_tag`, `col_cycle`, `col_mode`, `magnification`, `spec_desc`) VALUES ('321283124S3001', 'J-D-B-G001', '北区/广场照明', '北区广场1#配电柜', 45, 0, 4, 0, 1, '智能断路器表');
 
 INSERT INTO `adm_meter_device` (`area_code`, `device_code`, `device_name`, `device_location`, `meter_cls`, `obj_tag`, `col_cycle`, `col_mode`, `magnification`, `spec_desc`) VALUES ('321283124S3002', 'J-D-N-101', '南区/综合楼N-101', '南区综合楼一楼设备间', 45, 1, 4, 1, 1, '直采表');
 INSERT INTO `adm_meter_device` (`area_code`, `device_code`, `device_name`, `device_location`, `meter_cls`, `obj_tag`, `col_cycle`, `col_mode`, `magnification`, `spec_desc`) VALUES ('321283124S3002', 'J-D-N-102', '南区/综合楼N-103', '南区综合楼一楼设备间', 45, 1, 4, 1, 1, '直采表');
@@ -538,9 +539,12 @@ INSERT INTO `adm_meter_device` (`area_code`, `device_code`, `device_name`, `devi
 INSERT INTO `adm_meter_device` (`area_code`, `device_code`, `device_name`, `device_location`, `meter_cls`, `obj_tag`, `col_cycle`, `col_mode`, `magnification`, `spec_desc`) VALUES ('321283124S3002', 'J-D-N-108', '南区/综合楼N-113', '南区综合楼一楼设备间', 45, 1, 4, 1, 1, '直采表');
 INSERT INTO `adm_meter_device` (`area_code`, `device_code`, `device_name`, `device_location`, `meter_cls`, `obj_tag`, `col_cycle`, `col_mode`, `magnification`, `spec_desc`) VALUES ('321283124S3002', 'J-D-N-109', '南区/综合楼N-114', '南区综合楼一楼设备间', 45, 1, 4, 1, 1, '直采表');
 INSERT INTO `adm_meter_device` (`area_code`, `device_code`, `device_name`, `device_location`, `meter_cls`, `obj_tag`, `col_cycle`, `col_mode`, `magnification`, `spec_desc`) VALUES ('321283124S3002', 'J-D-N-110', '南区/综合楼N-115', '南区综合楼一楼设备间', 45, 0, 4, 1, 1, '直采表');
+INSERT INTO `adm_meter_device` (`area_code`, `device_code`, `device_name`, `device_location`, `meter_cls`, `obj_tag`, `col_cycle`, `col_mode`, `magnification`, `spec_desc`) VALUES ('321283124S3002', 'J-D-N-G001', '南区/广场照明', '南区广场1#配电柜', 45, 0, 4, 1, 1, '智能断路器表');
 
 -- 水表
 INSERT INTO `adm_meter_device` (`area_code`, `device_code`, `device_name`, `device_location`, `meter_cls`, `obj_tag`, `col_cycle`, `col_mode`, `magnification`, `spec_desc`) VALUES ('321283124S3001', 'J-D-B-01', '北区/综合楼B-102', '北区综合楼后院1号井', 70, 0, 4, 1, 1, '直采表');
+INSERT INTO `adm_meter_device` (`area_code`, `device_code`, `device_name`, `device_location`, `meter_cls`, `obj_tag`, `col_cycle`, `col_mode`, `magnification`, `spec_desc`) VALUES ('321283124S3001', 'J-D-N-02', '北区/综合楼盥洗室', '北区综合楼后院1号井', 70, 0, 4, 0, 1, '直采表');
+INSERT INTO `adm_meter_device` (`area_code`, `device_code`, `device_name`, `device_location`, `meter_cls`, `obj_tag`, `col_cycle`, `col_mode`, `magnification`, `spec_desc`) VALUES ('321283124S3002', 'J-D-N-03', '南区/综合楼盥洗室', '南区综合楼后院1号井', 70, 0, 4, 0, 1, '直采表');
 
 -- 表计绑定关系
 INSERT INTO `adm_meter_boundary_rel` (`meter_device`, `boundary_obj`, `obj_type`) VALUES ('J-D-B-102', 'B-102', 1);
@@ -700,6 +704,14 @@ INSERT INTO adm_meter_reading (`device_code`, `area_code`, `year`, `meter_month`
 INSERT INTO adm_meter_reading (`device_code`, `area_code`, `year`, `meter_month`, `last_reading`, `last_time`, `meter_reading`, `meter_time`, `increase`, `create_time`, `update_time`) VALUES ('J-D-B-Z120', '321283124S3001', '2024', '202410', 612, '2024-08-31', 758, '2024-09-30', 7300, NULL, NULL);
 INSERT INTO adm_meter_reading (`device_code`, `area_code`, `year`, `meter_month`, `last_reading`, `last_time`, `meter_reading`, `meter_time`, `increase`, `create_time`, `update_time`) VALUES ('J-D-B-Z120', '321283124S3001', '2024', '202411', 758, '2024-10-31', 948, '2024-11-30', 9500, NULL, NULL);
 
+-- 自动抄表数据
+-- INSERT INTO `adm_elec_meter_h` (`area_code`, `device_code`, `record_time`, `date`, `time`, `time_index`, `elec_quantity`, `meter_type`, `meter_unit_price`, `use_elec_cost`) VALUES ('321283124S3001', 'J-D-B-G001', CONCAT(CURDATE(), ' ', LPAD(HOUR(NOW()), 2, '0'), ':00:00'), CURDATE(), CONCAT(LPAD(HOUR(NOW()), 2, '0'), ':00:00'), HOUR(NOW()) + 1, FLOOR(50 + (RAND() * (150 - 50 + 1))), 0, 0.538, FLOOR(100 + (RAND() * (150 - 50 + 1))))
+-- INSERT INTO `adm_elec_meter_h` (`area_code`, `device_code`, `record_time`, `date`, `time`, `time_index`, `elec_quantity`, `meter_type`, `meter_unit_price`, `use_elec_cost`) VALUES ('321283124S3002', 'J-D-N-G001', CONCAT(CURDATE(), ' ', LPAD(HOUR(NOW()), 2, '0'), ':00:00'), CURDATE(), CONCAT(LPAD(HOUR(NOW()), 2, '0'), ':00:00'), HOUR(NOW()) + 1, FLOOR(50 + (RAND() * (150 - 50 + 1))), 0, 0.538, FLOOR(100 + (RAND() * (150 - 50 + 1))))
+
+-- INSERT INTO `adm_water_meter_h` (`area_code`, `device_code`, `record_time`, `date`, `time`, `time_index`, `water_quantity`, `meter_unit_price`, `use_water_cost`) VALUES ('321283124S3001', 'J-D-N-02', CONCAT(CURDATE(), ' ', LPAD(HOUR(NOW()), 2, '0'), ':00:00'), CURDATE(), CONCAT(LPAD(HOUR(NOW()), 2, '0'), ':00:00'), HOUR(NOW()) + 1, FLOOR(RAND() * 100), 3.2, FLOOR(RAND() * 300))
+-- INSERT INTO `adm_water_meter_h` (`area_code`, `device_code`, `record_time`, `date`, `time`, `time_index`, `water_quantity`, `meter_unit_price`, `use_water_cost`) VALUES ('321283124S3002', 'J-D-N-03', CONCAT(CURDATE(), ' ', LPAD(HOUR(NOW()), 2, '0'), ':00:00'), CURDATE(), CONCAT(LPAD(HOUR(NOW()), 2, '0'), ':00:00'), HOUR(NOW()) + 1, FLOOR(RAND() * 100), 3.2, FLOOR(RAND() * 300))
+
+
 -- 电网计量指标数据 Mock
 -- INSERT INTO adm_ems_pg_supply_h (area_code, facs_code, record_time, `date`, `time`, time_index, meter_type, meter_unit_price, use_elec_quantity, use_elec_cost) VALUES ('321283124S3001', 'W201', CONCAT(CURDATE(), ' ', LPAD(HOUR(NOW()), 2, '0'), ':00:00'), CURDATE(), CONCAT(LPAD(HOUR(NOW()), 2, '0'), ':00:00'), HOUR(NOW()) + 1, 0, 0.75, FLOOR(50 + (RAND() * (150 - 50 + 1))), FLOOR(RAND() * (100 - 1 + 1)) + 1);
 

+ 10 - 9
ems-cloud/sql/ems_sys.sql

@@ -248,15 +248,16 @@ insert into sys_menu values ('1440',  '手动抄表',   '144', '1',  'meterRead-
 insert into sys_menu values ('1441',  '自动抄表',   '144', '2',  'meterRead-auto',      'devmgr/meterData',       '', 1, 0, 'C', '0', '0',   'ems:meterData:list',  'meterReadAuto',   'admin', sysdate(), '', null, '抄表数据');
 
 -- 业务配置菜单
-insert into sys_menu values ('1620',  '设备模型',   '162', '1',  'basecfg-devmode',        'basecfg/device/model',      '', 1, 0, 'C', '0', '0',   'ems:devmode:list',             'cfgwrite',   'admin', sysdate(), '', null, '设备模型');
-insert into sys_menu values ('1621',  '设施分类',   '162', '2',  'basecfg-facscategory',   'basecfg/facscategory/index', '', 1, 0, 'C', '0', '0',   'basecfg:facscategory:list',    'cfgwrite',   'admin', sysdate(), '', null, '设施配置');
-insert into sys_menu values ('1622',  '能流关系',   '162', '3',  'basecfg-flowrel',        'basecfg/flowrel/index',      '', 1, 0, 'C', '0', '0',   'basecfg:flowrel:list',         'cfgwrite',   'admin', sysdate(), '', null, '设备配置');
-insert into sys_menu values ('1623',  '能源设施',   '162', '4',  'basecfg-facscfg',        'basecfg/emsfacs/index',      '', 1, 0, 'C', '0', '0',   'basecfg:emsfacs:list',         'cfgwrite',   'admin', sysdate(), '', null, '设施配置');
-insert into sys_menu values ('1624',  '能源设备',   '162', '5',  'basecfg-devccfg',        'basecfg/device/index',       '', 1, 0, 'C', '0', '0',   'basecfg:device:list',          'cfgwrite',   'admin', sysdate(), '', null, '设备配置');
-insert into sys_menu values ('1630',  '价格策略',   '163', '1',  'basecfg-electricity',    'basecfg/price/index',        '', 1, 0, 'C', '0', '0',   'basecfg:price:list',           'cfgwrite',   'admin', sysdate(), '', null, '价格策略');
-insert into sys_menu values ('1631',  '计量设备',   '163', '2',  'basecfg-meterdevc',      'basecfg/meterdevc/index',    '', 1, 0, 'C', '0', '0',  'ems:meterdevc:list',            'cfgwrite',   'admin', sysdate(), '', null, '计量设备');
-insert into sys_menu values ('1632',  '碳排因子',   '163', '3',  'basecfg-cacfg',          'basecfg/cacfg/index',        '', 1, 0, 'C', '0', '0',   'basecfg:cacfg:list',           'cfgwrite',   'admin', sysdate(), '', null, '碳排因子');
-insert into sys_menu values ('1633',  '折煤系数',   '163', '4',  'basecfg-dsccfg',         'basecfg/dsccfg/index',       '', 1, 0, 'C', '0', '0',   'basecfg:dsccfg:list',           'cfgwrite',   'admin', sysdate(), '', null, '折煤系数');
+insert into sys_menu values ('1620',  '设备模型',   '162', '1',  'basecfg-devmode',        'basecfg/device/model',       '', 1, 0, 'C', '0', '0',   'ems:devmode:list',              'cfgwrite',   'admin', sysdate(), '', null, '设备模型');
+insert into sys_menu values ('1621',  '设施分类',   '162', '2',  'basecfg-facscategory',   'basecfg/facscategory/index', '', 1, 0, 'C', '0', '0',   'basecfg:facscategory:list',     'cfgwrite',   'admin', sysdate(), '', null, '设施配置');
+insert into sys_menu values ('1622',  '能流关系',   '162', '3',  'basecfg-flowrel',        'basecfg/flowrel/index',      '', 1, 0, 'C', '0', '0',   'basecfg:flowrel:list',          'cfgwrite',   'admin', sysdate(), '', null, '设备配置');
+insert into sys_menu values ('1623',  '能源设施',   '162', '4',  'basecfg-facscfg',        'basecfg/emsfacs/index',      '', 1, 0, 'C', '0', '0',   'basecfg:emsfacs:list',          'cfgwrite',   'admin', sysdate(), '', null, '设施配置');
+insert into sys_menu values ('1624',  '能源设备',   '162', '5',  'basecfg-devccfg',        'basecfg/device/index',       '', 1, 0, 'C', '0', '0',   'basecfg:device:list',           'cfgwrite',   'admin', sysdate(), '', null, '设备配置');
+insert into sys_menu values ('1630',  '计量设备',   '163', '1',  'basecfg-meterdevc',      'basecfg/meterdevc/index',    '', 1, 0, 'C', '0', '0',   'ems:meterdevc:list',            'cfgwrite',   'admin', sysdate(), '', null, '计量设备');
+insert into sys_menu values ('1631',  '边界划分',   '163', '2',  'basecfg-boundaryRel',    'basecfg/boundaryRel/index',  '', 1, 0, 'C', '0', '0',   'ems:meterBoundaryRel:list',     'cfgwrite',   'admin', sysdate(), '', null, '边界划分');
+insert into sys_menu values ('1632',  '价格策略',   '163', '3',  'basecfg-electricity',    'basecfg/price/index',        '', 1, 0, 'C', '0', '0',   'basecfg:price:list',            'cfgwrite',   'admin', sysdate(), '', null, '价格策略');
+insert into sys_menu values ('1633',  '碳排因子',   '163', '4',  'basecfg-cacfg',          'basecfg/cacfg/index',        '', 1, 0, 'C', '0', '0',   'basecfg:cacfg:list',            'cfgwrite',   'admin', sysdate(), '', null, '碳排因子');
+insert into sys_menu values ('1634',  '折煤系数',   '163', '5',  'basecfg-dsccfg',         'basecfg/dsccfg/index',       '', 1, 0, 'C', '0', '0',   'basecfg:dsccfg:list',           'cfgwrite',   'admin', sysdate(), '', null, '折煤系数');
 
 -- 用户管理按钮
 insert into sys_menu values ('1700', '用户查询', '170', '1',  '', '', '', 1, 0, 'F', '0', '0', 'system:user:query',          '#', 'admin', sysdate(), '', null, '');