Bläddra i källkod

建筑用能模块:能耗分项优化

sl 1 år sedan
förälder
incheckning
b7534f1a76

+ 0 - 3
module_base/src/main/java/org/jeecg/modules/energyItem/entity/EnergyItem.java

@@ -66,7 +66,4 @@ public class EnergyItem implements Serializable {
     @Dict(dictTable ="base_energy_type",dicText = "name",dicCode = "id")
     private String energytypeid;
 
-    /** 能源分类 */
-    @Excel(name = "能源分类", width = 15)
-    private String energytypename;
 }

+ 22 - 0
module_base/src/main/java/org/jeecg/modules/energyItem/entity/EnergyItemDto.java

@@ -0,0 +1,22 @@
+package org.jeecg.modules.energyItem.entity;
+
+import lombok.Data;
+import org.jeecgframework.poi.excel.annotation.Excel;
+
+/**
+ * ClassName: EneryItemDto
+ * Package: org.jeecg.modules.energyItem.entity
+ * Description:
+ *
+ * @Author sl
+ * @Create 2024/2/26 16:35
+ * @Version 1.0
+ */
+@Data
+public class EnergyItemDto extends EnergyItem{
+
+    /** 能源分类 */
+    @Excel(name = "能源分类", width = 15)
+    private String energytypename;
+
+}

+ 2 - 1
module_base/src/main/java/org/jeecg/modules/energyItem/mapper/EnergyItemMapper.java

@@ -6,6 +6,7 @@ import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 import org.jeecg.modules.energyItem.entity.EnergyItem;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.jeecg.modules.energyItem.entity.EnergyItemDto;
 
 /**
  * @Description: 能耗分项
@@ -22,6 +23,6 @@ public interface EnergyItemMapper extends BaseMapper<EnergyItem> {
      * @param energyItem 能耗分项
      * @return 能耗分项集合
      */
-    public List<EnergyItem> selectEmsEnergyItemList(@Param("energyItem") EnergyItem energyItem);
+    public List<EnergyItemDto> selectEmsEnergyItemList(@Param("energyItem") EnergyItemDto energyItem);
 
 }

+ 1 - 1
module_base/src/main/java/org/jeecg/modules/energyItem/mapper/xml/EnergyItemMapper.xml

@@ -2,7 +2,7 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="org.jeecg.modules.energyItem.mapper.EnergyItemMapper">
 
-    <select id="selectEmsEnergyItemList" parameterType="org.jeecg.modules.energyItem.entity.EnergyItem" resultType="org.jeecg.modules.energyItem.entity.EnergyItem">
+    <select id="selectEmsEnergyItemList" parameterType="org.jeecg.modules.energyItem.entity.EnergyItemDto" resultType="org.jeecg.modules.energyItem.entity.EnergyItemDto">
         select i.id, i.create_by, i.create_time, i.update_by, i.update_time, i.remark, i.energyitemname, i.energytypeid, t.name as energytypename
         from base_energy_item as i
         left join base_energy_type as t on i.energytypeid=t.id

+ 1 - 0
module_ems/src/main/java/org/jeecg/modules/dataElectricity/mapper/xml/DataElectricityMapper.xml

@@ -33,6 +33,7 @@
         order by id asc
     </select>
 
+    <!-- 用电集抄 -->
     <select id="selectEmsElecSta" parameterType="org.jeecg.modules.dataElectricity.entity.DataElectricity" resultMap="DataElectricityResult">
         SELECT a.equipmentid,e.equipmentname,e.equipmentcode,b.tagvalue as beginvalue,c.tagvalue as endvalue,c.tagvalue-b.tagvalue as tagvalue
         FROM tpm_equipment_status as a

+ 23 - 0
module_ems/src/main/java/org/jeecg/modules/emsStatistics/mapper/xml/EmsStatisticsMapper.xml

@@ -159,4 +159,27 @@
             #{item}
         </foreach>
     </select>
+
+    <!--依据多个设备的ID、能耗分项ID、开始结束日期获取能耗分项-->
+    <select id="selectElecByEquipAndItem" resultType="org.jeecg.modules.emsStatistics.entity.EmsStatistics">
+        select e.equipmentid,concat(te.equipmentname,'[',te.equipmentcode,']') as equipmentname,ifnull(sum(e.electricityvalue),0) as howManyValue
+        from ems_data_electricity_day as e
+        left join tpm_tag as t
+        on e.tagid=t.id
+        left join tpm_equipment as te
+        on e.equipmentid=te.id
+        where e.day &gt;= #{beginTime} and e.day &lt;= #{endTime}
+        <if test="energyitemid != null"> and t.energyitemid=#{energyitemid} </if>
+        and e.equipmentid in (
+        select equipmentid
+        from tpm_equipment_status
+        )
+        and e.equipmentid in
+        <foreach collection="ids" item="item" open="(" close=")" separator=",">
+            #{item}
+        </foreach>
+        group by e.equipmentid
+        order by e.equipmentid asc
+    </select>
+
 </mapper>

+ 7 - 6
module_ems/src/main/java/org/jeecg/modules/emsStatistics/service/impl/EmsStatisticsServiceImpl.java

@@ -21,6 +21,7 @@ import org.jeecg.modules.emsStatistics.entity.EmsStatistics;
 import org.jeecg.modules.emsStatistics.mapper.EmsStatisticsMapper;
 import org.jeecg.modules.emsStatistics.service.IEmsStatisticsService;
 import org.jeecg.modules.energyItem.entity.EnergyItem;
+import org.jeecg.modules.energyItem.entity.EnergyItemDto;
 import org.jeecg.modules.energyItem.mapper.EnergyItemMapper;
 import org.jeecg.modules.equipmentStatus.entity.EquipmentStatus;
 import org.jeecg.modules.equipmentStatus.mapper.EquipmentStatusMapper;
@@ -802,9 +803,9 @@ public class EmsStatisticsServiceImpl implements IEmsStatisticsService {
         }
 
         // 能耗分项
-        EnergyItem energyItemParams = new EnergyItem();
+        EnergyItemDto energyItemParams = new EnergyItemDto();
         energyItemParams.setEnergytypename("电");
-        List<EnergyItem> itemList = energyItemMapper.selectEmsEnergyItemList(energyItemParams);
+        List<EnergyItemDto> itemList = energyItemMapper.selectEmsEnergyItemList(energyItemParams);
         if (itemList != null && itemList.size() > 0) {
             for (int i = 0; i < itemList.size(); i++) {
                 List<EmsStatistics> emsStatisticsList = new ArrayList<>();
@@ -868,9 +869,9 @@ public class EmsStatisticsServiceImpl implements IEmsStatisticsService {
         }
 
         // 能耗分项
-        EnergyItem energyItemParams = new EnergyItem();
+        EnergyItemDto energyItemParams = new EnergyItemDto();
         energyItemParams.setEnergytypename("电");
-        List<EnergyItem> itemList = energyItemMapper.selectEmsEnergyItemList(energyItemParams);
+        List<EnergyItemDto> itemList = energyItemMapper.selectEmsEnergyItemList(energyItemParams);
         if (itemList != null && itemList.size() > 0) {
             for (int i = 0; i < itemList.size(); i++) {
                 List<EmsStatistics> emsStatisticsList = new ArrayList<>();
@@ -1035,9 +1036,9 @@ public class EmsStatisticsServiceImpl implements IEmsStatisticsService {
     private List<String> getEnergyItem(String energytypename) {
         List<String> rtn = new ArrayList<>();
 
-        EnergyItem energyItem = new EnergyItem();
+        EnergyItemDto energyItem = new EnergyItemDto();
         energyItem.setEnergytypename(energytypename);
-        List<EnergyItem> itemList = energyItemMapper.selectEmsEnergyItemList(energyItem);
+        List<EnergyItemDto> itemList = energyItemMapper.selectEmsEnergyItemList(energyItem);
         System.out.println(itemList);
         if (itemList != null && itemList.size() > 0) {
             for (int i = 0; i < itemList.size(); i++) {