chen.cheng 3 сар өмнө
parent
commit
afad641bf1

+ 106 - 0
ems/ems-cloud/ems-server/src/main/java/com/ruoyi/ems/controller/AdmEmsEcoDController.java

@@ -0,0 +1,106 @@
+package com.ruoyi.ems.controller;
+
+import java.util.List;
+import java.io.IOException;
+import javax.servlet.http.HttpServletResponse;
+
+import com.huashe.common.domain.AjaxResult;
+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.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.AdmEmsEcoD;
+import com.ruoyi.ems.service.IAdmEmsEcoDService;
+import com.ruoyi.common.core.web.controller.BaseController;
+import com.ruoyi.common.core.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.web.page.TableDataInfo;
+
+/**
+ * 节能计量日Controller
+ * 
+ * @author ruoyi
+ * @date 2025-04-22
+ */
+@RestController
+@RequestMapping("/EmsEcoD")
+public class AdmEmsEcoDController extends BaseController
+{
+    @Autowired
+    private IAdmEmsEcoDService admEmsEcoDService;
+
+    /**
+     * 查询节能计量日列表
+     */
+    @RequiresPermissions("ems:EmsEcoD:list")
+    @GetMapping("/list")
+    public TableDataInfo list(AdmEmsEcoD admEmsEcoD)
+    {
+        startPage();
+        List<AdmEmsEcoD> list = admEmsEcoDService.selectAdmEmsEcoDList(admEmsEcoD);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出节能计量日列表
+     */
+    @RequiresPermissions("ems:EmsEcoD:export")
+    @Log(title = "节能计量日", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, AdmEmsEcoD admEmsEcoD)
+    {
+        List<AdmEmsEcoD> list = admEmsEcoDService.selectAdmEmsEcoDList(admEmsEcoD);
+        ExcelUtil<AdmEmsEcoD> util = new ExcelUtil<AdmEmsEcoD>(AdmEmsEcoD.class);
+        util.exportExcel(response, list, "节能计量日数据");
+    }
+
+    /**
+     * 获取节能计量日详细信息
+     */
+    @RequiresPermissions("ems:EmsEcoD:query")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id)
+    {
+        return success(admEmsEcoDService.selectAdmEmsEcoDById(id));
+    }
+
+    /**
+     * 新增节能计量日
+     */
+    @RequiresPermissions("ems:EmsEcoD:add")
+    @Log(title = "节能计量日", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody AdmEmsEcoD admEmsEcoD)
+    {
+        return toAjax(admEmsEcoDService.insertAdmEmsEcoD(admEmsEcoD));
+    }
+
+    /**
+     * 修改节能计量日
+     */
+    @RequiresPermissions("ems:EmsEcoD:edit")
+    @Log(title = "节能计量日", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody AdmEmsEcoD admEmsEcoD)
+    {
+        return toAjax(admEmsEcoDService.updateAdmEmsEcoD(admEmsEcoD));
+    }
+
+    /**
+     * 删除节能计量日
+     */
+    @RequiresPermissions("ems:EmsEcoD:remove")
+    @Log(title = "节能计量日", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids)
+    {
+        return toAjax(admEmsEcoDService.deleteAdmEmsEcoDByIds(ids));
+    }
+}

+ 82 - 0
ems/ems-core/src/main/java/com/ruoyi/ems/domain/AdmEmsEcoD.java

@@ -0,0 +1,82 @@
+package com.ruoyi.ems.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.huashe.common.annotation.Excel;
+import com.huashe.common.domain.BaseEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+
+import java.util.Date;
+
+/**
+ * 节能计量日对象 adm_ems_eco_d
+ *
+ * @author ruoyi
+ * @date 2025-04-22
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class AdmEmsEcoD extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 序号
+     */
+    private Long id;
+
+    /**
+     * 园区代码
+     */
+    @Excel(name = "园区代码")
+    private String areaCode;
+
+    @Excel(name = "园区名称")
+    private String areaName;
+
+    /**
+     * 日期
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date date;
+
+    /**
+     * 节(千瓦时)
+     */
+    @Excel(name = "节", readConverterExp = "千=瓦时")
+    private Long elecEcoQuantity;
+
+    /**
+     * 节电金额(元)
+     */
+    @Excel(name = "节电金额", readConverterExp = "元=")
+    private Long elecEcoCost;
+
+    /**
+     * 节水量 (吨)
+     */
+    @Excel(name = "节水量 ", readConverterExp = "吨=")
+    private Long waterEcoQuantity;
+
+    /**
+     * 节水金额(元)
+     */
+    @Excel(name = "节水金额", readConverterExp = "元=")
+    private Long waterEcoCost;
+
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
+                .append("id", getId())
+                .append("areaCode", getAreaCode())
+                .append("date", getDate())
+                .append("elecEcoQuantity", getElecEcoQuantity())
+                .append("elecEcoCost", getElecEcoCost())
+                .append("waterEcoQuantity", getWaterEcoQuantity())
+                .append("waterEcoCost", getWaterEcoCost())
+                .toString();
+    }
+}

+ 32 - 61
ems/ems-core/src/main/java/com/ruoyi/ems/domain/CaMeterD.java

@@ -3,6 +3,8 @@ package com.ruoyi.ems.domain;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.huashe.common.annotation.Excel;
 import com.huashe.common.domain.BaseEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
 import org.apache.commons.lang3.builder.ToStringBuilder;
 import org.apache.commons.lang3.builder.ToStringStyle;
 
@@ -10,88 +12,57 @@ import java.util.Date;
 
 /**
  * 碳计量日对象 adm_ems_ca_meter_d
- * 
+ *
  * @author ruoyi
  * @date 2024-08-12
  */
-public class CaMeterD extends BaseEntity
-{
+@EqualsAndHashCode(callSuper = true)
+@Data
+
+public class CaMeterD extends BaseEntity {
     private static final long serialVersionUID = 1L;
 
-    /** 序号 */
+    /**
+     * 序号
+     */
     private Long id;
 
-    /** 园区代码 */
+    /**
+     * 园区代码
+     */
     @Excel(name = "园区代码")
     private String areaCode;
 
-    /** 日期 */
+    @Excel(name = "园区名称")
+    private String areaName;
+
+    /**
+     * 日期
+     */
     @JsonFormat(pattern = "yyyy-MM-dd")
     @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM-dd")
     private Date date;
 
-    /** 碳排放量 (千克) */
+    /**
+     * 碳排放量 (千克)
+     */
     @Excel(name = "碳排放量 ", readConverterExp = "千=克")
     private Double caEmissionQuantity;
 
-    /** 碳汇量(千克) */
+    /**
+     * 碳汇量(千克)
+     */
     @Excel(name = "碳汇量", readConverterExp = "千=克")
     private Double caSinkQuantity;
 
-    public void setId(Long id) 
-    {
-        this.id = id;
-    }
-
-    public Long getId() 
-    {
-        return id;
-    }
-    public void setAreaCode(String areaCode) 
-    {
-        this.areaCode = areaCode;
-    }
-
-    public String getAreaCode() 
-    {
-        return areaCode;
-    }
-    public void setDate(Date date) 
-    {
-        this.date = date;
-    }
-
-    public Date getDate() 
-    {
-        return date;
-    }
-    public void setCaEmissionQuantity(Double caEmissionQuantity) 
-    {
-        this.caEmissionQuantity = caEmissionQuantity;
-    }
-
-    public Double getCaEmissionQuantity() 
-    {
-        return caEmissionQuantity;
-    }
-    public void setCaSinkQuantity(Double caSinkQuantity) 
-    {
-        this.caSinkQuantity = caSinkQuantity;
-    }
-
-    public Double getCaSinkQuantity() 
-    {
-        return caSinkQuantity;
-    }
-
     @Override
     public String toString() {
-        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
-            .append("id", getId())
-            .append("areaCode", getAreaCode())
-            .append("date", getDate())
-            .append("caEmissionQuantity", getCaEmissionQuantity())
-            .append("caSinkQuantity", getCaSinkQuantity())
-            .toString();
+        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
+                .append("id", getId())
+                .append("areaCode", getAreaCode())
+                .append("date", getDate())
+                .append("caEmissionQuantity", getCaEmissionQuantity())
+                .append("caSinkQuantity", getCaSinkQuantity())
+                .toString();
     }
 }

+ 61 - 0
ems/ems-core/src/main/java/com/ruoyi/ems/mapper/AdmEmsEcoDMapper.java

@@ -0,0 +1,61 @@
+package com.ruoyi.ems.mapper;
+
+import java.util.List;
+import com.ruoyi.ems.domain.AdmEmsEcoD;
+
+/**
+ * 节能计量日Mapper接口
+ * 
+ * @author ruoyi
+ * @date 2025-04-22
+ */
+public interface AdmEmsEcoDMapper 
+{
+    /**
+     * 查询节能计量日
+     * 
+     * @param id 节能计量日主键
+     * @return 节能计量日
+     */
+    public AdmEmsEcoD selectAdmEmsEcoDById(Long id);
+
+    /**
+     * 查询节能计量日列表
+     * 
+     * @param admEmsEcoD 节能计量日
+     * @return 节能计量日集合
+     */
+    public List<AdmEmsEcoD> selectAdmEmsEcoDList(AdmEmsEcoD admEmsEcoD);
+
+    /**
+     * 新增节能计量日
+     * 
+     * @param admEmsEcoD 节能计量日
+     * @return 结果
+     */
+    public int insertAdmEmsEcoD(AdmEmsEcoD admEmsEcoD);
+
+    /**
+     * 修改节能计量日
+     * 
+     * @param admEmsEcoD 节能计量日
+     * @return 结果
+     */
+    public int updateAdmEmsEcoD(AdmEmsEcoD admEmsEcoD);
+
+    /**
+     * 删除节能计量日
+     * 
+     * @param id 节能计量日主键
+     * @return 结果
+     */
+    public int deleteAdmEmsEcoDById(Long id);
+
+    /**
+     * 批量删除节能计量日
+     * 
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteAdmEmsEcoDByIds(Long[] ids);
+}

+ 61 - 0
ems/ems-core/src/main/java/com/ruoyi/ems/service/IAdmEmsEcoDService.java

@@ -0,0 +1,61 @@
+package com.ruoyi.ems.service;
+
+import java.util.List;
+import com.ruoyi.ems.domain.AdmEmsEcoD;
+
+/**
+ * 节能计量日Service接口
+ * 
+ * @author ruoyi
+ * @date 2025-04-22
+ */
+public interface IAdmEmsEcoDService 
+{
+    /**
+     * 查询节能计量日
+     * 
+     * @param id 节能计量日主键
+     * @return 节能计量日
+     */
+    public AdmEmsEcoD selectAdmEmsEcoDById(Long id);
+
+    /**
+     * 查询节能计量日列表
+     * 
+     * @param admEmsEcoD 节能计量日
+     * @return 节能计量日集合
+     */
+    public List<AdmEmsEcoD> selectAdmEmsEcoDList(AdmEmsEcoD admEmsEcoD);
+
+    /**
+     * 新增节能计量日
+     * 
+     * @param admEmsEcoD 节能计量日
+     * @return 结果
+     */
+    public int insertAdmEmsEcoD(AdmEmsEcoD admEmsEcoD);
+
+    /**
+     * 修改节能计量日
+     * 
+     * @param admEmsEcoD 节能计量日
+     * @return 结果
+     */
+    public int updateAdmEmsEcoD(AdmEmsEcoD admEmsEcoD);
+
+    /**
+     * 批量删除节能计量日
+     * 
+     * @param ids 需要删除的节能计量日主键集合
+     * @return 结果
+     */
+    public int deleteAdmEmsEcoDByIds(Long[] ids);
+
+    /**
+     * 删除节能计量日信息
+     * 
+     * @param id 节能计量日主键
+     * @return 结果
+     */
+    public int deleteAdmEmsEcoDById(Long id);
+}

+ 93 - 0
ems/ems-core/src/main/java/com/ruoyi/ems/service/impl/AdmEmsEcoDServiceImpl.java

@@ -0,0 +1,93 @@
+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.AdmEmsEcoDMapper;
+import com.ruoyi.ems.domain.AdmEmsEcoD;
+import com.ruoyi.ems.service.IAdmEmsEcoDService;
+
+/**
+ * 节能计量日Service业务层处理
+ * 
+ * @author ruoyi
+ * @date 2025-04-22
+ */
+@Service
+public class AdmEmsEcoDServiceImpl implements IAdmEmsEcoDService 
+{
+    @Autowired
+    private AdmEmsEcoDMapper admEmsEcoDMapper;
+
+    /**
+     * 查询节能计量日
+     * 
+     * @param id 节能计量日主键
+     * @return 节能计量日
+     */
+    @Override
+    public AdmEmsEcoD selectAdmEmsEcoDById(Long id)
+    {
+        return admEmsEcoDMapper.selectAdmEmsEcoDById(id);
+    }
+
+    /**
+     * 查询节能计量日列表
+     * 
+     * @param admEmsEcoD 节能计量日
+     * @return 节能计量日
+     */
+    @Override
+    public List<AdmEmsEcoD> selectAdmEmsEcoDList(AdmEmsEcoD admEmsEcoD)
+    {
+        return admEmsEcoDMapper.selectAdmEmsEcoDList(admEmsEcoD);
+    }
+
+    /**
+     * 新增节能计量日
+     * 
+     * @param admEmsEcoD 节能计量日
+     * @return 结果
+     */
+    @Override
+    public int insertAdmEmsEcoD(AdmEmsEcoD admEmsEcoD)
+    {
+        return admEmsEcoDMapper.insertAdmEmsEcoD(admEmsEcoD);
+    }
+
+    /**
+     * 修改节能计量日
+     * 
+     * @param admEmsEcoD 节能计量日
+     * @return 结果
+     */
+    @Override
+    public int updateAdmEmsEcoD(AdmEmsEcoD admEmsEcoD)
+    {
+        return admEmsEcoDMapper.updateAdmEmsEcoD(admEmsEcoD);
+    }
+
+    /**
+     * 批量删除节能计量日
+     * 
+     * @param ids 需要删除的节能计量日主键
+     * @return 结果
+     */
+    @Override
+    public int deleteAdmEmsEcoDByIds(Long[] ids)
+    {
+        return admEmsEcoDMapper.deleteAdmEmsEcoDByIds(ids);
+    }
+
+    /**
+     * 删除节能计量日信息
+     * 
+     * @param id 节能计量日主键
+     * @return 结果
+     */
+    @Override
+    public int deleteAdmEmsEcoDById(Long id)
+    {
+        return admEmsEcoDMapper.deleteAdmEmsEcoDById(id);
+    }
+}

+ 80 - 0
ems/ems-core/src/main/resources/mapper/ems/AdmEmsEcoDMapper.xml

@@ -0,0 +1,80 @@
+<?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.AdmEmsEcoDMapper">
+    
+    <resultMap type="AdmEmsEcoD" id="AdmEmsEcoDResult">
+        <result property="id"    column="id"    />
+        <result property="areaCode"    column="area_code"    />
+        <result property="date"    column="date"    />
+        <result property="elecEcoQuantity"    column="elec_eco_quantity"    />
+        <result property="elecEcoCost"    column="elec_eco_cost"    />
+        <result property="waterEcoQuantity"    column="water_eco_quantity"    />
+        <result property="waterEcoCost"    column="water_eco_cost"    />
+    </resultMap>
+
+    <sql id="selectAdmEmsEcoDVo">
+        select id, area_code, date, elec_eco_quantity, elec_eco_cost, water_eco_quantity, water_eco_cost from adm_ems_eco_d
+    </sql>
+
+    <select id="selectAdmEmsEcoDList" parameterType="AdmEmsEcoD" resultMap="AdmEmsEcoDResult">
+        select d.id, area.area_code, area.area_name ,date, elec_eco_quantity, elec_eco_cost, water_eco_quantity,
+        water_eco_cost from adm_ems_eco_d d
+        inner join adm_area area on area.area_code = d.area_code and area.parent_code = '0'
+        <where>
+            <if test="areaName != null  and areaName != ''">and area_name like concat('%', #{areaName}, '%')</if>
+            <if test="date != null ">and date = #{date}</if>
+        </where>
+        order by date desc
+    </select>
+    
+    <select id="selectAdmEmsEcoDById" parameterType="Long" resultMap="AdmEmsEcoDResult">
+        <include refid="selectAdmEmsEcoDVo"/>
+        where id = #{id}
+    </select>
+        
+    <insert id="insertAdmEmsEcoD" parameterType="AdmEmsEcoD" useGeneratedKeys="true" keyProperty="id">
+        insert into adm_ems_eco_d
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="areaCode != null and areaCode != ''">area_code,</if>
+            <if test="date != null">date,</if>
+            <if test="elecEcoQuantity != null">elec_eco_quantity,</if>
+            <if test="elecEcoCost != null">elec_eco_cost,</if>
+            <if test="waterEcoQuantity != null">water_eco_quantity,</if>
+            <if test="waterEcoCost != null">water_eco_cost,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="areaCode != null and areaCode != ''">#{areaCode},</if>
+            <if test="date != null">#{date},</if>
+            <if test="elecEcoQuantity != null">#{elecEcoQuantity},</if>
+            <if test="elecEcoCost != null">#{elecEcoCost},</if>
+            <if test="waterEcoQuantity != null">#{waterEcoQuantity},</if>
+            <if test="waterEcoCost != null">#{waterEcoCost},</if>
+         </trim>
+    </insert>
+
+    <update id="updateAdmEmsEcoD" parameterType="AdmEmsEcoD">
+        update adm_ems_eco_d
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="areaCode != null and areaCode != ''">area_code = #{areaCode},</if>
+            <if test="date != null">date = #{date},</if>
+            <if test="elecEcoQuantity != null">elec_eco_quantity = #{elecEcoQuantity},</if>
+            <if test="elecEcoCost != null">elec_eco_cost = #{elecEcoCost},</if>
+            <if test="waterEcoQuantity != null">water_eco_quantity = #{waterEcoQuantity},</if>
+            <if test="waterEcoCost != null">water_eco_cost = #{waterEcoCost},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteAdmEmsEcoDById" parameterType="Long">
+        delete from adm_ems_eco_d where id = #{id}
+    </delete>
+
+    <delete id="deleteAdmEmsEcoDByIds" parameterType="String">
+        delete from adm_ems_eco_d where id in 
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>

+ 5 - 2
ems/ems-core/src/main/resources/mapper/ems/CaMeterDMapper.xml

@@ -17,13 +17,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     </sql>
 
     <select id="selectCaMeterDList" parameterType="com.ruoyi.ems.domain.CaMeterD" resultMap="CaMeterDResult">
-        <include refid="selectCaMeterDVo"/>
+        select d.id, d.area_code,area.area_name, date, ca_emission_quantity, ca_sink_quantity from adm_ems_ca_meter_d d
+        inner join adm_area area on area.area_code = d.area_code and area.parent_code = '0'
         <where>
-            <if test="areaCode != null  and areaCode != ''"> and area_code = #{areaCode}</if>
+            <if test="areaName != null  and areaName != ''">and area.area_name like concat('%', #{areaName}, '%')</if>
+            <if test="areaCode != null  and areaCode != ''"> and d.area_code = #{areaCode}</if>
             <if test="date != null "> and date = #{date}</if>
             <if test="caEmissionQuantity != null "> and ca_emission_quantity = #{caEmissionQuantity}</if>
             <if test="caSinkQuantity != null "> and ca_sink_quantity = #{caSinkQuantity}</if>
         </where>
+        order by date desc
     </select>
 
     <select id="selectCaMeterDById" parameterType="Long" resultMap="CaMeterDResult">

+ 17 - 2
ems/sql/ems_sys_data.sql

@@ -50,12 +50,12 @@ insert into sys_menu values ('117',  '策略',            '2',    '7',  'strateg
 insert into sys_menu values ('126',  '产能分析',       '3',    '1',  'power-prod',         'analysis/power/prod',       '', 1, 0, 'C', '0', '0',    'analysis:power:prod',    'energyprod',     'admin', sysdate(), '', null, '产能分析');
 insert into sys_menu values ('127',  '储能分析',       '3',    '2',  'power-store',        'analysis/power/store',      '', 1, 0, 'C', '0', '0',    'analysis:power:store',   'energystore',    'admin', sysdate(), '', null, '储能分析');
 insert into sys_menu values ('128',  '用能分析',       '3',    '3',  'power-consume',      'analysis/power/consume',    '', 1, 0, 'C', '0', '0',    'analysis:power:consume', 'energyconsume',  'admin', sysdate(), '', null, '用能分析');
-insert into sys_menu values ('129',  '节能分析',       '3',    '4',  'power-save',         'analysis/power/save',       '', 1, 0, 'C', '0', '0',    'analysis:power:save',    'energysave',     'admin', sysdate(), '', null, '节能分析');
+insert into sys_menu values ('129',  '节能分析',       '3',    '4',  'EmsEcoD', 'ems/EmsEcoD/index', 1, 0, 'C', '0', '0', 'ems:EmsEcoD:list',    'energysave',     'admin', sysdate(), '', null, '节能分析');
 insert into sys_menu values ('120',  '趋势预测',       '3',    '5',  'prediction',         '',                          '', 1, 0, 'M', '0', '0',    '',                       'prediction',     'admin', sysdate(), '', null, '趋势预测');
 insert into sys_menu values ('121',  '数据报表',       '3',    '6',  'analysis-statement', '',                          '', 1, 0, 'M', '0', '0',    'analysis:statement',     'statement',      'admin', sysdate(), '', null, '数据报表');
 
 insert into sys_menu values ('131',  '碳排计量',       '4',    '1',  'ca-emission',        'ca/emission',            '', 1, 0, 'C', '0', '0',   'ca-analysis:emission',   'caemission',     'admin', sysdate(), '', null, '碳排分析');
-insert into sys_menu values ('132',  '碳汇测算',       '4',    '2',  'ca-sink',            'ca/sink',                '', 1, 0, 'C', '0', '0',   'ca-analysis:sink',       'casink',         'admin', sysdate(), '', null, '碳汇分析');
+insert into sys_menu values ('132',  '碳汇测算',       '4',    '2',  'ca-sink',            'ca/emissionCalc',                '', 1, 0, 'C', '0', '0',   'ca-analysis:sink',       'casink',         'admin', sysdate(), '', null, '碳汇分析');
 
 insert into sys_menu values ('141',  '设备列表',       '5',    '1',  'device-attr',         'devmgr/attr',           '', 1, 0, 'C', '0', '0',    'ems:device:list',        'deviceattr',     'admin', sysdate(), '', null, '设备属性');
 insert into sys_menu values ('142',  '设备台账',       '5',    '2',  'device-el',           'devmgr/el',              '', 1, 0, 'C', '0', '0',   'device:el',              'excel',          'admin', sysdate(), '', null, '设备台账');
@@ -286,6 +286,21 @@ INSERT INTO `sys_menu` VALUES (12022,'query',1202, 1, '', NULL, NULL, 1, 0, 'F',
 INSERT INTO `sys_menu` VALUES (12023,'add',1202, 1, '', NULL, NULL, 1, 0, 'F', '0', '0', 'prediction:ca:add', '#', 'admin', sysdate(), '', NULL, '');
 INSERT INTO `sys_menu` VALUES (12024,'edit',1202, 1, '', NULL, NULL, 1, 0, 'F', '0', '0', 'prediction:ca:edit', '#', 'admin', sysdate(), '', NULL, '');
 INSERT INTO `sys_menu` VALUES (12025,'remove',1202, 1, '', NULL, NULL, 1, 0, 'F', '0', '0', 'prediction:ca:remove', '#', 'admin', sysdate(), '', NULL, '');
+-- 节能分析
+insert into sys_menu (menu_id,menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
+values(12901,'节能计量日查询', 129, '1',  '#', '', 1, 0, 'F', '0', '0', 'ems:EmsEcoD:query',        '#', 'admin', sysdate(), '', null, '');
+
+insert into sys_menu (menu_id,menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
+values(12902,'节能计量日新增', 129, '2',  '#', '', 1, 0, 'F', '0', '0', 'ems:EmsEcoD:add',          '#', 'admin', sysdate(), '', null, '');
+
+insert into sys_menu (menu_id,menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
+values(12903,'节能计量日修改', 129, '3',  '#', '', 1, 0, 'F', '0', '0', 'ems:EmsEcoD:edit',         '#', 'admin', sysdate(), '', null, '');
+
+insert into sys_menu (menu_id,menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
+values(12904,'节能计量日删除', 129, '4',  '#', '', 1, 0, 'F', '0', '0', 'ems:EmsEcoD:remove',       '#', 'admin', sysdate(), '', null, '');
+
+insert into sys_menu (menu_id,menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
+values(12905,'节能计量日导出', 129, '5',  '#', '', 1, 0, 'F', '0', '0', 'ems:EmsEcoD:export',       '#', 'admin', sysdate(), '', null, '');
 
 -- 碳排计量
 INSERT INTO `sys_menu` VALUES (1310,'list',131, 1, '', NULL, NULL, 1, 0, 'F', '0', '0', 'ca-analysis:emission:list', '#', 'admin', sysdate(), '', NULL, '');