Browse Source

+ 用能预测表

chen.cheng 1 year ago
parent
commit
3a1e384351

+ 105 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/controller/AdmEmsElecProdForecastController.java

@@ -0,0 +1,105 @@
+package com.ruoyi.ems.controller;
+
+import java.util.List;
+import java.io.IOException;
+import javax.servlet.http.HttpServletResponse;
+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.AdmEmsElecProdForecast;
+import com.ruoyi.ems.service.IAdmEmsElecProdForecastService;
+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-08-12
+ */
+@RestController
+@RequestMapping("/predictionProd")
+public class AdmEmsElecProdForecastController extends BaseController
+{
+    @Autowired
+    private IAdmEmsElecProdForecastService admEmsElecProdForecastService;
+
+    /**
+     * 查询电力产能预测列表
+     */
+    @RequiresPermissions("ems:predictionProd:list")
+    @GetMapping("/list")
+    public TableDataInfo list(AdmEmsElecProdForecast admEmsElecProdForecast)
+    {
+        startPage();
+        List<AdmEmsElecProdForecast> list = admEmsElecProdForecastService.selectAdmEmsElecProdForecastList(admEmsElecProdForecast);
+        return getDataTable(list);
+    }
+
+    /**
+     * 导出电力产能预测列表
+     */
+    @RequiresPermissions("ems:predictionProd:export")
+    @Log(title = "电力产能预测", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, AdmEmsElecProdForecast admEmsElecProdForecast)
+    {
+        List<AdmEmsElecProdForecast> list = admEmsElecProdForecastService.selectAdmEmsElecProdForecastList(admEmsElecProdForecast);
+        ExcelUtil<AdmEmsElecProdForecast> util = new ExcelUtil<AdmEmsElecProdForecast>(AdmEmsElecProdForecast.class);
+        util.exportExcel(response, list, "电力产能预测数据");
+    }
+
+    /**
+     * 获取电力产能预测详细信息
+     */
+    @RequiresPermissions("ems:predictionProd:query")
+    @GetMapping(value = "/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id)
+    {
+        return success(admEmsElecProdForecastService.selectAdmEmsElecProdForecastById(id));
+    }
+
+    /**
+     * 新增电力产能预测
+     */
+    @RequiresPermissions("ems:predictionProd:add")
+    @Log(title = "电力产能预测", businessType = BusinessType.INSERT)
+    @PostMapping
+    public AjaxResult add(@RequestBody AdmEmsElecProdForecast admEmsElecProdForecast)
+    {
+        return toAjax(admEmsElecProdForecastService.insertAdmEmsElecProdForecast(admEmsElecProdForecast));
+    }
+
+    /**
+     * 修改电力产能预测
+     */
+    @RequiresPermissions("ems:predictionProd:edit")
+    @Log(title = "电力产能预测", businessType = BusinessType.UPDATE)
+    @PutMapping
+    public AjaxResult edit(@RequestBody AdmEmsElecProdForecast admEmsElecProdForecast)
+    {
+        return toAjax(admEmsElecProdForecastService.updateAdmEmsElecProdForecast(admEmsElecProdForecast));
+    }
+
+    /**
+     * 删除电力产能预测
+     */
+    @RequiresPermissions("ems:predictionProd:remove")
+    @Log(title = "电力产能预测", businessType = BusinessType.DELETE)
+	@DeleteMapping("/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids)
+    {
+        return toAjax(admEmsElecProdForecastService.deleteAdmEmsElecProdForecastByIds(ids));
+    }
+}

+ 132 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/domain/AdmEmsElecProdForecast.java

@@ -0,0 +1,132 @@
+package com.ruoyi.ems.domain;
+
+import java.util.Date;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.ruoyi.common.core.annotation.Excel;
+import com.ruoyi.common.core.web.domain.BaseEntity;
+
+/**
+ * 电力产能预测对象 adm_ems_elec_prod_forecast
+ *
+ * @author ruoyi
+ * @date 2024-08-12
+ */
+public class AdmEmsElecProdForecast extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 序号 */
+    private Long id;
+
+    /** 园区代码 */
+    @Excel(name = "园区代码")
+    private String areaCode;
+
+    /** 设施代码 */
+    @Excel(name = "设施代码")
+    private String facsCode;
+
+    @Excel(name = "园区名称")
+    private String areaName;
+
+    @Excel(name = "设施名称")
+    private String facsName;
+
+    /** 日期 */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date date;
+
+    /** 发电量(千瓦·时) */
+    @Excel(name = "发电量", readConverterExp = "千=瓦·时")
+    private Double elecProdQuantity;
+
+    /** 功率(千瓦) */
+    @Excel(name = "功率", readConverterExp = "千=瓦")
+    private Double avgPower;
+
+    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 setFacsCode(String facsCode)
+    {
+        this.facsCode = facsCode;
+    }
+
+    public String getFacsCode()
+    {
+        return facsCode;
+    }
+    public void setDate(Date date)
+    {
+        this.date = date;
+    }
+
+    public Date getDate()
+    {
+        return date;
+    }
+    public void setElecProdQuantity(Double elecProdQuantity)
+    {
+        this.elecProdQuantity = elecProdQuantity;
+    }
+
+    public Double getElecProdQuantity()
+    {
+        return elecProdQuantity;
+    }
+    public void setAvgPower(Double avgPower)
+    {
+        this.avgPower = avgPower;
+    }
+
+    public Double getAvgPower()
+    {
+        return avgPower;
+    }
+
+    public String getAreaName() {
+        return areaName;
+    }
+
+    public void setAreaName(String areaName) {
+        this.areaName = areaName;
+    }
+
+    public String getFacsName() {
+        return facsName;
+    }
+
+    public void setFacsName(String facsName) {
+        this.facsName = facsName;
+    }
+
+    @Override
+    public String toString() {
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+            .append("id", getId())
+            .append("areaCode", getAreaCode())
+            .append("facsCode", getFacsCode())
+            .append("date", getDate())
+            .append("elecProdQuantity", getElecProdQuantity())
+            .append("avgPower", getAvgPower())
+            .toString();
+    }
+}

+ 61 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/mapper/AdmEmsElecProdForecastMapper.java

@@ -0,0 +1,61 @@
+package com.ruoyi.ems.mapper;
+
+import java.util.List;
+import com.ruoyi.ems.domain.AdmEmsElecProdForecast;
+
+/**
+ * 电力产能预测Mapper接口
+ * 
+ * @author ruoyi
+ * @date 2024-08-12
+ */
+public interface AdmEmsElecProdForecastMapper 
+{
+    /**
+     * 查询电力产能预测
+     * 
+     * @param id 电力产能预测主键
+     * @return 电力产能预测
+     */
+    public AdmEmsElecProdForecast selectAdmEmsElecProdForecastById(Long id);
+
+    /**
+     * 查询电力产能预测列表
+     * 
+     * @param admEmsElecProdForecast 电力产能预测
+     * @return 电力产能预测集合
+     */
+    public List<AdmEmsElecProdForecast> selectAdmEmsElecProdForecastList(AdmEmsElecProdForecast admEmsElecProdForecast);
+
+    /**
+     * 新增电力产能预测
+     * 
+     * @param admEmsElecProdForecast 电力产能预测
+     * @return 结果
+     */
+    public int insertAdmEmsElecProdForecast(AdmEmsElecProdForecast admEmsElecProdForecast);
+
+    /**
+     * 修改电力产能预测
+     * 
+     * @param admEmsElecProdForecast 电力产能预测
+     * @return 结果
+     */
+    public int updateAdmEmsElecProdForecast(AdmEmsElecProdForecast admEmsElecProdForecast);
+
+    /**
+     * 删除电力产能预测
+     * 
+     * @param id 电力产能预测主键
+     * @return 结果
+     */
+    public int deleteAdmEmsElecProdForecastById(Long id);
+
+    /**
+     * 批量删除电力产能预测
+     * 
+     * @param ids 需要删除的数据主键集合
+     * @return 结果
+     */
+    public int deleteAdmEmsElecProdForecastByIds(Long[] ids);
+}

+ 61 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/service/IAdmEmsElecProdForecastService.java

@@ -0,0 +1,61 @@
+package com.ruoyi.ems.service;
+
+import java.util.List;
+import com.ruoyi.ems.domain.AdmEmsElecProdForecast;
+
+/**
+ * 电力产能预测Service接口
+ * 
+ * @author ruoyi
+ * @date 2024-08-12
+ */
+public interface IAdmEmsElecProdForecastService 
+{
+    /**
+     * 查询电力产能预测
+     * 
+     * @param id 电力产能预测主键
+     * @return 电力产能预测
+     */
+    public AdmEmsElecProdForecast selectAdmEmsElecProdForecastById(Long id);
+
+    /**
+     * 查询电力产能预测列表
+     * 
+     * @param admEmsElecProdForecast 电力产能预测
+     * @return 电力产能预测集合
+     */
+    public List<AdmEmsElecProdForecast> selectAdmEmsElecProdForecastList(AdmEmsElecProdForecast admEmsElecProdForecast);
+
+    /**
+     * 新增电力产能预测
+     * 
+     * @param admEmsElecProdForecast 电力产能预测
+     * @return 结果
+     */
+    public int insertAdmEmsElecProdForecast(AdmEmsElecProdForecast admEmsElecProdForecast);
+
+    /**
+     * 修改电力产能预测
+     * 
+     * @param admEmsElecProdForecast 电力产能预测
+     * @return 结果
+     */
+    public int updateAdmEmsElecProdForecast(AdmEmsElecProdForecast admEmsElecProdForecast);
+
+    /**
+     * 批量删除电力产能预测
+     * 
+     * @param ids 需要删除的电力产能预测主键集合
+     * @return 结果
+     */
+    public int deleteAdmEmsElecProdForecastByIds(Long[] ids);
+
+    /**
+     * 删除电力产能预测信息
+     * 
+     * @param id 电力产能预测主键
+     * @return 结果
+     */
+    public int deleteAdmEmsElecProdForecastById(Long id);
+}

+ 93 - 0
ems-cloud/ems-modules/ems-server/src/main/java/com/ruoyi/ems/service/impl/AdmEmsElecProdForecastServiceImpl.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.AdmEmsElecProdForecastMapper;
+import com.ruoyi.ems.domain.AdmEmsElecProdForecast;
+import com.ruoyi.ems.service.IAdmEmsElecProdForecastService;
+
+/**
+ * 电力产能预测Service业务层处理
+ * 
+ * @author ruoyi
+ * @date 2024-08-12
+ */
+@Service
+public class AdmEmsElecProdForecastServiceImpl implements IAdmEmsElecProdForecastService 
+{
+    @Autowired
+    private AdmEmsElecProdForecastMapper admEmsElecProdForecastMapper;
+
+    /**
+     * 查询电力产能预测
+     * 
+     * @param id 电力产能预测主键
+     * @return 电力产能预测
+     */
+    @Override
+    public AdmEmsElecProdForecast selectAdmEmsElecProdForecastById(Long id)
+    {
+        return admEmsElecProdForecastMapper.selectAdmEmsElecProdForecastById(id);
+    }
+
+    /**
+     * 查询电力产能预测列表
+     * 
+     * @param admEmsElecProdForecast 电力产能预测
+     * @return 电力产能预测
+     */
+    @Override
+    public List<AdmEmsElecProdForecast> selectAdmEmsElecProdForecastList(AdmEmsElecProdForecast admEmsElecProdForecast)
+    {
+        return admEmsElecProdForecastMapper.selectAdmEmsElecProdForecastList(admEmsElecProdForecast);
+    }
+
+    /**
+     * 新增电力产能预测
+     * 
+     * @param admEmsElecProdForecast 电力产能预测
+     * @return 结果
+     */
+    @Override
+    public int insertAdmEmsElecProdForecast(AdmEmsElecProdForecast admEmsElecProdForecast)
+    {
+        return admEmsElecProdForecastMapper.insertAdmEmsElecProdForecast(admEmsElecProdForecast);
+    }
+
+    /**
+     * 修改电力产能预测
+     * 
+     * @param admEmsElecProdForecast 电力产能预测
+     * @return 结果
+     */
+    @Override
+    public int updateAdmEmsElecProdForecast(AdmEmsElecProdForecast admEmsElecProdForecast)
+    {
+        return admEmsElecProdForecastMapper.updateAdmEmsElecProdForecast(admEmsElecProdForecast);
+    }
+
+    /**
+     * 批量删除电力产能预测
+     * 
+     * @param ids 需要删除的电力产能预测主键
+     * @return 结果
+     */
+    @Override
+    public int deleteAdmEmsElecProdForecastByIds(Long[] ids)
+    {
+        return admEmsElecProdForecastMapper.deleteAdmEmsElecProdForecastByIds(ids);
+    }
+
+    /**
+     * 删除电力产能预测信息
+     * 
+     * @param id 电力产能预测主键
+     * @return 结果
+     */
+    @Override
+    public int deleteAdmEmsElecProdForecastById(Long id)
+    {
+        return admEmsElecProdForecastMapper.deleteAdmEmsElecProdForecastById(id);
+    }
+}

+ 90 - 0
ems-cloud/ems-modules/ems-server/src/main/resources/mapper/ems/AdmEmsElecProdForecastMapper.xml

@@ -0,0 +1,90 @@
+<?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.AdmEmsElecProdForecastMapper">
+
+    <resultMap type="com.ruoyi.ems.domain.AdmEmsElecProdForecast" id="AdmEmsElecProdForecastResult">
+        <result property="id" column="id"/>
+        <result property="areaCode" column="area_code"/>
+        <result property="facsCode" column="facs_code"/>
+        <result property="date" column="date"/>
+        <result property="elecProdQuantity" column="elec_prod_quantity"/>
+        <result property="avgPower" column="avg_power"/>
+    </resultMap>
+
+    <sql id="selectAdmEmsElecProdForecastVo">
+        SELECT forecast.id,
+               forecast.area_code,
+               forecast.facs_code,
+               area.area_name,
+               facs.facs_name, date, elec_prod_quantity, avg_power
+        FROM
+            adm_ems_elec_prod_forecast forecast
+            INNER JOIN adm_ems_facs facs
+        ON forecast.facs_code = facs.facs_code
+            INNER JOIN adm_service_area area ON forecast.area_code = area.area_code
+    </sql>
+
+    <select id="selectAdmEmsElecProdForecastList" parameterType="com.ruoyi.ems.domain.AdmEmsElecProdForecast"
+            resultType="com.ruoyi.ems.domain.AdmEmsElecProdForecast">
+        <include refid="selectAdmEmsElecProdForecastVo"/>
+        <where>
+            <if test="areaCode != null  and areaCode != ''">and area_code = #{areaCode}</if>
+            <if test="facsCode != null  and facsCode != ''">and facs_code = #{facsCode}</if>
+            <if test="date != null ">and date = #{date}</if>
+            <if test="elecProdQuantity != null ">and elec_prod_quantity = #{elecProdQuantity}</if>
+            <if test="avgPower != null ">and avg_power = #{avgPower}</if>
+        </where>
+    </select>
+
+    <select id="selectAdmEmsElecProdForecastById" parameterType="Long"
+            resultType="com.ruoyi.ems.domain.AdmEmsElecProdForecast">
+        <include refid="selectAdmEmsElecProdForecastVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertAdmEmsElecProdForecast" parameterType="com.ruoyi.ems.domain.AdmEmsElecProdForecast"
+            useGeneratedKeys="true" keyProperty="id">
+        insert into adm_ems_elec_prod_forecast
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="areaCode != null and areaCode != ''">area_code,</if>
+            <if test="facsCode != null and facsCode != ''">facs_code,</if>
+            <if test="date != null">date,</if>
+            <if test="elecProdQuantity != null">elec_prod_quantity,</if>
+            <if test="avgPower != null">avg_power,</if>
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="areaCode != null and areaCode != ''">#{areaCode},</if>
+            <if test="facsCode != null and facsCode != ''">#{facsCode},</if>
+            <if test="date != null">#{date},</if>
+            <if test="elecProdQuantity != null">#{elecProdQuantity},</if>
+            <if test="avgPower != null">#{avgPower},</if>
+        </trim>
+    </insert>
+
+    <update id="updateAdmEmsElecProdForecast" parameterType="com.ruoyi.ems.domain.AdmEmsElecProdForecast">
+        update adm_ems_elec_prod_forecast
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="areaCode != null and areaCode != ''">area_code = #{areaCode},</if>
+            <if test="facsCode != null and facsCode != ''">facs_code = #{facsCode},</if>
+            <if test="date != null">date = #{date},</if>
+            <if test="elecProdQuantity != null">elec_prod_quantity = #{elecProdQuantity},</if>
+            <if test="avgPower != null">avg_power = #{avgPower},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deleteAdmEmsElecProdForecastById" parameterType="Long">
+        delete
+        from adm_ems_elec_prod_forecast
+        where id = #{id}
+    </delete>
+
+    <delete id="deleteAdmEmsElecProdForecastByIds" parameterType="String">
+        delete from adm_ems_elec_prod_forecast where id in
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>