소스 검색

Merge remote-tracking branch 'origin/master'

yuanhao 2 년 전
부모
커밋
efcd6fdbab
74개의 변경된 파일2233개의 추가작업 그리고 200개의 파일을 삭제
  1. 56 39
      in-passback/pom.xml
  2. 0 15
      in-passback/src/main/java/com/jiayue/insu/inpassback/InPassbackApplication.java
  3. 0 20
      in-passback/src/main/java/com/jiayue/insu/inpassback/controller/Test.java
  4. 0 22
      in-passback/src/main/java/com/jiayue/insu/inpassback/controller/UserController.java
  5. 0 32
      in-passback/src/main/java/com/jiayue/insu/inpassback/entity/User.java
  6. 0 9
      in-passback/src/main/java/com/jiayue/insu/inpassback/mapper/UserMapper.java
  7. 0 7
      in-passback/src/main/java/com/jiayue/insu/inpassback/service/UserService.java
  8. 0 11
      in-passback/src/main/java/com/jiayue/insu/inpassback/service/impl/UserServiceImpl.java
  9. 17 0
      in-passback/src/main/java/com/jiayue/passback/PassBackApplication.java
  10. 19 0
      in-passback/src/main/java/com/jiayue/passback/entity/AbstractBaseEntity.java
  11. 30 0
      in-passback/src/main/java/com/jiayue/passback/entity/AbstractEquipmentInfo.java
  12. 39 0
      in-passback/src/main/java/com/jiayue/passback/entity/AbstractEquipmentStatusData.java
  13. 38 0
      in-passback/src/main/java/com/jiayue/passback/entity/AbstractForecastPowerBase.java
  14. 37 0
      in-passback/src/main/java/com/jiayue/passback/entity/AbstractForecastPowerHis.java
  15. 58 0
      in-passback/src/main/java/com/jiayue/passback/entity/ElectricField.java
  16. 19 0
      in-passback/src/main/java/com/jiayue/passback/entity/ForecastPowerShortTermHis.java
  17. 19 0
      in-passback/src/main/java/com/jiayue/passback/entity/ForecastPowerUltraShortTermHis.java
  18. 34 0
      in-passback/src/main/java/com/jiayue/passback/entity/PowerStationStatusData.java
  19. 44 0
      in-passback/src/main/java/com/jiayue/passback/entity/UploadFileChannel.java
  20. 63 0
      in-passback/src/main/java/com/jiayue/passback/entity/UploadFileLog.java
  21. 37 0
      in-passback/src/main/java/com/jiayue/passback/entity/UploadObject.java
  22. 23 0
      in-passback/src/main/java/com/jiayue/passback/entity/WeatherStationInfo.java
  23. 79 0
      in-passback/src/main/java/com/jiayue/passback/entity/WeatherStationStatusData.java
  24. 20 0
      in-passback/src/main/java/com/jiayue/passback/entity/WindTowerInfo.java
  25. 58 0
      in-passback/src/main/java/com/jiayue/passback/entity/WindTowerStatusData.java
  26. 20 0
      in-passback/src/main/java/com/jiayue/passback/entity/eunm/ChannelStatusEnum.java
  27. 20 0
      in-passback/src/main/java/com/jiayue/passback/entity/eunm/ElectricFieldTypeEnum.java
  28. 114 0
      in-passback/src/main/java/com/jiayue/passback/entity/eunm/EquipmentTypeEnum.java
  29. 25 0
      in-passback/src/main/java/com/jiayue/passback/entity/eunm/FileStatusEnum.java
  30. 384 0
      in-passback/src/main/java/com/jiayue/passback/entity/eunm/FileTypeEnum.java
  31. 42 0
      in-passback/src/main/java/com/jiayue/passback/job/GenerateService.java
  32. 51 0
      in-passback/src/main/java/com/jiayue/passback/job/job.java
  33. 7 0
      in-passback/src/main/java/com/jiayue/passback/mapper/ElectricFieldMapper.java
  34. 7 0
      in-passback/src/main/java/com/jiayue/passback/mapper/ForecastPowerShortTermHisMapper.java
  35. 7 0
      in-passback/src/main/java/com/jiayue/passback/mapper/ForecastPowerUltraShortTermHisMapper.java
  36. 7 0
      in-passback/src/main/java/com/jiayue/passback/mapper/PowerStationStatusDataMapper.java
  37. 7 0
      in-passback/src/main/java/com/jiayue/passback/mapper/UploadFileChannelMapper.java
  38. 7 0
      in-passback/src/main/java/com/jiayue/passback/mapper/UploadFileLogMapper.java
  39. 7 0
      in-passback/src/main/java/com/jiayue/passback/mapper/UploadObjectMapper.java
  40. 7 0
      in-passback/src/main/java/com/jiayue/passback/mapper/WeatherStationInfoMapper.java
  41. 7 0
      in-passback/src/main/java/com/jiayue/passback/mapper/WeatherStationStatusDataMapper.java
  42. 7 0
      in-passback/src/main/java/com/jiayue/passback/mapper/WindTowerInfoMapper.java
  43. 7 0
      in-passback/src/main/java/com/jiayue/passback/mapper/WindTowerStatusDataMapper.java
  44. 7 0
      in-passback/src/main/java/com/jiayue/passback/service/ElectricFieldService.java
  45. 7 0
      in-passback/src/main/java/com/jiayue/passback/service/ForecastPowerShortTermHisService.java
  46. 7 0
      in-passback/src/main/java/com/jiayue/passback/service/ForecastPowerUltraShortTermHisService.java
  47. 8 0
      in-passback/src/main/java/com/jiayue/passback/service/GenerateDataService.java
  48. 8 0
      in-passback/src/main/java/com/jiayue/passback/service/PowerStationStatusDataService.java
  49. 7 0
      in-passback/src/main/java/com/jiayue/passback/service/UploadFileChannelService.java
  50. 7 0
      in-passback/src/main/java/com/jiayue/passback/service/UploadFileLogService.java
  51. 7 0
      in-passback/src/main/java/com/jiayue/passback/service/UploadObjectService.java
  52. 8 0
      in-passback/src/main/java/com/jiayue/passback/service/WeatherStationInfoService.java
  53. 7 0
      in-passback/src/main/java/com/jiayue/passback/service/WeatherStationStatusDataService.java
  54. 8 0
      in-passback/src/main/java/com/jiayue/passback/service/WindTowerInfoService.java
  55. 7 0
      in-passback/src/main/java/com/jiayue/passback/service/WindTowerStatusDataService.java
  56. 12 0
      in-passback/src/main/java/com/jiayue/passback/service/impl/ElectricFieldServiceImpl.java
  57. 37 0
      in-passback/src/main/java/com/jiayue/passback/service/impl/ForecastPowerShortTermHisServiceImpl.java
  58. 41 0
      in-passback/src/main/java/com/jiayue/passback/service/impl/ForecastPowerUltraShortTermHisServiceImpl.java
  59. 31 0
      in-passback/src/main/java/com/jiayue/passback/service/impl/PowerStationStatusDataServiceImpl.java
  60. 11 0
      in-passback/src/main/java/com/jiayue/passback/service/impl/UploadFileChannelServiceImpl.java
  61. 61 0
      in-passback/src/main/java/com/jiayue/passback/service/impl/UploadFileLogServiceImpl.java
  62. 11 0
      in-passback/src/main/java/com/jiayue/passback/service/impl/UploadObjectServiceImpl.java
  63. 25 0
      in-passback/src/main/java/com/jiayue/passback/service/impl/WeatherStationInfoServiceImpl.java
  64. 34 0
      in-passback/src/main/java/com/jiayue/passback/service/impl/WeatherStationStatusDataServiceImpl.java
  65. 25 0
      in-passback/src/main/java/com/jiayue/passback/service/impl/WindTowerInfoServiceImpl.java
  66. 34 0
      in-passback/src/main/java/com/jiayue/passback/service/impl/WindTowerStatusDataServiceImpl.java
  67. 174 0
      in-passback/src/main/java/com/jiayue/passback/util/DateMomentUtil.java
  68. 39 0
      in-passback/src/main/java/com/jiayue/passback/util/FreemarkerUtil.java
  69. 18 0
      in-passback/src/main/resources/application.properties
  70. 11 0
      in-passback/src/main/resources/banner.txt
  71. 0 32
      in-passback/src/main/resources/bootstrap.yml
  72. 109 0
      in-passback/src/main/resources/logback.xml
  73. 49 0
      in-passback/src/main/resources/template/template.ftl
  74. 0 13
      in-passback/src/test/java/com/jiayue/insu/inpassback/InPassbackApplicationTests.java

+ 56 - 39
in-passback/pom.xml

@@ -1,66 +1,65 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
-
+    <modelVersion>4.0.0</modelVersion>
     <parent>
-        <artifactId>insu</artifactId>
-        <groupId>com.jiayue</groupId>
-        <version>1.0-SNAPSHOT</version>
+        <groupId>org.springframework.boot</groupId>
+        <artifactId>spring-boot-starter-parent</artifactId>
+        <version>2.7.3</version>
+        <relativePath/> <!-- lookup parent from repository -->
     </parent>
-    <modelVersion>4.0.0</modelVersion>
+    <groupId>com.jiayue</groupId>
+    <artifactId>passback</artifactId>
+    <version>0.0.1-SNAPSHOT</version>
+    <name>passback</name>
 
-    <artifactId>in-passback</artifactId>
-    
     <properties>
-        <maven.compiler.source>8</maven.compiler.source>
-        <maven.compiler.target>8</maven.compiler.target>
-        <mybatis.plus.version>3.5.1</mybatis.plus.version>
+        <java.version>1.8</java.version>
     </properties>
-
     <dependencies>
         <dependency>
+            <groupId>org.apache.commons</groupId>
+            <artifactId>commons-lang3</artifactId>
+        </dependency>
+        <dependency>
             <groupId>org.springframework.boot</groupId>
             <artifactId>spring-boot-starter-web</artifactId>
         </dependency>
-
         <dependency>
             <groupId>mysql</groupId>
             <artifactId>mysql-connector-java</artifactId>
-            <scope>runtime</scope>
         </dependency>
         <dependency>
-            <groupId>org.projectlombok</groupId>
-            <artifactId>lombok</artifactId>
-            <optional>true</optional>
+            <groupId>com.baomidou</groupId>
+            <artifactId>mybatis-plus-boot-starter</artifactId>
+            <version>3.5.2</version>
         </dependency>
+
         <dependency>
             <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-test</artifactId>
-            <scope>test</scope>
+            <artifactId>spring-boot-starter</artifactId>
         </dependency>
 
         <dependency>
             <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-undertow</artifactId>
+            <artifactId>spring-boot-starter-test</artifactId>
+            <scope>test</scope>
         </dependency>
-
-
-        <!--必备: 注册中心客户端-->
         <dependency>
-            <groupId>com.alibaba.cloud</groupId>
-            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
+            <groupId>org.freemarker</groupId>
+            <artifactId>freemarker</artifactId>
+            <version>2.3.23</version>
         </dependency>
-        <!--必备: 配置中心客户端-->
         <dependency>
-            <groupId>com.alibaba.cloud</groupId>
-            <artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-undertow</artifactId>
         </dependency>
-
         <dependency>
-            <groupId>com.baomidou</groupId>
-            <artifactId>mybatis-plus-boot-starter</artifactId>
-            <version>${mybatis.plus.version}</version>
+            <groupId>org.projectlombok</groupId>
+            <artifactId>lombok</artifactId>
+            <version>1.18.22</version>
         </dependency>
+
     </dependencies>
 
     <build>
@@ -68,15 +67,33 @@
             <plugin>
                 <groupId>org.springframework.boot</groupId>
                 <artifactId>spring-boot-maven-plugin</artifactId>
-                <configuration>
-                    <excludes>
-                        <exclude>
-                            <groupId>org.projectlombok</groupId>
-                            <artifactId>lombok</artifactId>
-                        </exclude>
-                    </excludes>
-                </configuration>
             </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-resources-plugin</artifactId>
+                <version>3.1.0</version>
+                <executions>
+                <execution>
+                    <id>copy config</id>
+                    <phase>package</phase>
+                    <goals>
+                        <goal>copy-resources</goal>
+                    </goals>
+                    <configuration>
+                        <resources>
+                            <resource>
+                                <directory>src/main/resources</directory>
+                                <includes>
+                                    <include>application.properties</include>
+                                </includes>
+                            </resource>
+                        </resources>
+                        <outputDirectory>../</outputDirectory>
+                    </configuration>
+                </execution>
+                </executions>
+            </plugin>
+
         </plugins>
     </build>
 

+ 0 - 15
in-passback/src/main/java/com/jiayue/insu/inpassback/InPassbackApplication.java

@@ -1,15 +0,0 @@
-package com.jiayue.insu.inpassback;
-
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
-
-@SpringBootApplication
-@EnableDiscoveryClient
-public class InPassbackApplication {
-
-    public static void main(String[] args) {
-        SpringApplication.run(InPassbackApplication.class, args);
-    }
-
-}

+ 0 - 20
in-passback/src/main/java/com/jiayue/insu/inpassback/controller/Test.java

@@ -1,20 +0,0 @@
-package com.jiayue.insu.inpassback.controller;
-
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.cloud.context.config.annotation.RefreshScope;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-@RestController
-@RefreshScope
-@RequestMapping("/insu")
-public class Test {
-    @Value(value = "${test:bbb}")
-    private String test;
-
-    @GetMapping("/test")
-    public String test(){
-        return this.test;
-    }
-}

+ 0 - 22
in-passback/src/main/java/com/jiayue/insu/inpassback/controller/UserController.java

@@ -1,22 +0,0 @@
-package com.jiayue.insu.inpassback.controller;
-
-import com.jiayue.insu.inpassback.entity.User;
-import com.jiayue.insu.inpassback.service.UserService;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-@RestController
-@RequestMapping("/user")
-public class UserController {
-    @Autowired
-    private UserService userService;
-
-    @GetMapping("/info")
-    public String  info(){
-        User byId = userService.getById(1);
-        System.out.println(byId);
-        return  "ok";
-    }
-}

+ 0 - 32
in-passback/src/main/java/com/jiayue/insu/inpassback/entity/User.java

@@ -1,32 +0,0 @@
-package com.jiayue.insu.inpassback.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-
-import java.io.Serializable;
-
-@TableName(value = "user")
-public class User implements Serializable {
-    /**
-     * Id
-     */
-    @TableId(type = IdType.AUTO)
-    Long id;
-
-    String name;
-
-    Integer age;
-
-    String email;
-
-    @Override
-    public String toString() {
-        return "User{" +
-                "id=" + id +
-                ", name='" + name + '\'' +
-                ", age=" + age +
-                ", email='" + email + '\'' +
-                '}';
-    }
-}

+ 0 - 9
in-passback/src/main/java/com/jiayue/insu/inpassback/mapper/UserMapper.java

@@ -1,9 +0,0 @@
-package com.jiayue.insu.inpassback.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.jiayue.insu.inpassback.entity.User;
-import org.apache.ibatis.annotations.Mapper;
-
-@Mapper
-public interface UserMapper extends BaseMapper<User> {
-}

+ 0 - 7
in-passback/src/main/java/com/jiayue/insu/inpassback/service/UserService.java

@@ -1,7 +0,0 @@
-package com.jiayue.insu.inpassback.service;
-
-import com.baomidou.mybatisplus.extension.service.IService;
-import com.jiayue.insu.inpassback.entity.User;
-
-public interface UserService extends IService<User> {
-}

+ 0 - 11
in-passback/src/main/java/com/jiayue/insu/inpassback/service/impl/UserServiceImpl.java

@@ -1,11 +0,0 @@
-package com.jiayue.insu.inpassback.service.impl;
-
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.jiayue.insu.inpassback.entity.User;
-import com.jiayue.insu.inpassback.mapper.UserMapper;
-import com.jiayue.insu.inpassback.service.UserService;
-import org.springframework.stereotype.Service;
-
-@Service
-public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {
-}

+ 17 - 0
in-passback/src/main/java/com/jiayue/passback/PassBackApplication.java

@@ -0,0 +1,17 @@
+package com.jiayue.passback;
+
+import org.mybatis.spring.annotation.MapperScan;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.scheduling.annotation.EnableScheduling;
+
+@SpringBootApplication
+@EnableScheduling
+@MapperScan("com.jiayue.passback.mapper")
+public class PassBackApplication {
+
+    public static void main(String[] args) {
+        SpringApplication.run(PassBackApplication.class, args);
+    }
+
+}

+ 19 - 0
in-passback/src/main/java/com/jiayue/passback/entity/AbstractBaseEntity.java

@@ -0,0 +1,19 @@
+package com.jiayue.passback.entity;
+
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * 所有实体的基类
+ *
+ * @author zzy
+ * @version 2.0
+ * @since 2018/10/11 11:08
+ */
+@Data
+public class AbstractBaseEntity implements Serializable {
+
+	private static final long serialVersionUID = 1L;
+
+}

+ 30 - 0
in-passback/src/main/java/com/jiayue/passback/entity/AbstractEquipmentInfo.java

@@ -0,0 +1,30 @@
+package com.jiayue.passback.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 设备
+ *
+ * @author zzy
+ * @version 1.0
+ * @since 2019/8/19 14:21
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class AbstractEquipmentInfo extends AbstractBaseEntity {
+
+
+    @TableId("C_ID")
+    private Integer id;
+
+    /**
+     * 是否上报
+     */
+    @TableField("C_REPORT")
+    private Boolean report;
+
+
+}

+ 39 - 0
in-passback/src/main/java/com/jiayue/passback/entity/AbstractEquipmentStatusData.java

@@ -0,0 +1,39 @@
+package com.jiayue.passback.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 设备数据
+ *
+ * @author zzy
+ * @version 1.0
+ * @since 2019/8/19 14:28
+ */
+
+@Data
+public class AbstractEquipmentStatusData implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+
+    @TableId("C_ID")
+    private Integer id;
+
+    /**
+     * 设备编号
+     */
+    @TableField("C_EQUIPMENT_NO")
+    private Integer equipmentNo;
+
+    /**
+     * 时间
+     */
+    @TableField("C_TIME")
+    private Date time;
+
+
+}

+ 38 - 0
in-passback/src/main/java/com/jiayue/passback/entity/AbstractForecastPowerBase.java

@@ -0,0 +1,38 @@
+package com.jiayue.passback.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * 预测功率抽象实体
+ *
+ * @author zzy
+ * @version 1.0
+ * @since 2018/11/2 12:23
+ */
+@Data
+public class AbstractForecastPowerBase implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("C_ID")
+    private Integer id;
+
+    /**
+     * 生成日期
+     */
+    @TableField("C_GEN_DATE")
+    private Date genDate;
+
+    /**
+     * 预测时间
+     */
+    @TableField("C_FORECAST_TIME")
+    private Long forecastTime;
+
+
+
+}

+ 37 - 0
in-passback/src/main/java/com/jiayue/passback/entity/AbstractForecastPowerHis.java

@@ -0,0 +1,37 @@
+package com.jiayue.passback.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.math.BigDecimal;
+
+/**
+ * 上报预测功率抽象实体
+ *
+ * @author zzy
+ * @version 1.0
+ * @since 2019/11/28 16:05
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class AbstractForecastPowerHis extends AbstractForecastPowerBase {
+
+	/**
+	 * 可用预测功率(MW)
+	 */
+	@TableField("C_ABLE_VALUE")
+	private BigDecimal ableValue;
+
+
+	/**
+	 * 开机容量(MW)
+	 */
+	@TableField("C_SU_CAPACITY")
+	private BigDecimal suCapacity;
+
+	/*提前多久预测*/
+	@TableField("C_FORECAST_HOW_LONG_AGO")
+	private Integer forecastHowLongAgo;
+
+}

+ 58 - 0
in-passback/src/main/java/com/jiayue/passback/entity/ElectricField.java

@@ -0,0 +1,58 @@
+package com.jiayue.passback.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.jiayue.passback.entity.eunm.ElectricFieldTypeEnum;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.math.BigDecimal;
+
+/**
+ * 场站实体
+ *
+ * @author yh
+ * @version 1.0
+ * @since 2019/7/22 11:16
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@TableName("t_electric_field")
+public class ElectricField extends AbstractBaseEntity {
+    /**
+     * 备用字段A(用于所属地调字段)
+     */
+    /**
+     * 备用字段B(站内受阻容量,不需要页面显示)
+     */
+    /**
+     * 备用字段C(合同结束日期)
+     */
+    /**
+     * 场站编号(运维标识,主键)
+     */
+    @TableId("C_STATION_CODE")
+    private String stationCode;
+
+    /**
+     * 电站名称
+     */
+    @TableField("C_NAME")
+    private String name;
+
+    /**
+     * 场站装机容量(MW)
+     */
+    @TableField("C_CAPACITY")
+    private BigDecimal capacity;
+
+    /**
+     * 场站类型
+     */
+    @TableField("C_ELECTRIC_FIELD_TYPE_ENUM")
+    private ElectricFieldTypeEnum electricFieldTypeEnum;
+
+
+
+
+}

+ 19 - 0
in-passback/src/main/java/com/jiayue/passback/entity/ForecastPowerShortTermHis.java

@@ -0,0 +1,19 @@
+package com.jiayue.passback.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 短期预测功率实体
+ *
+ * @author zzy
+ * @version 1.0
+ * @since 2018/10/23 9:17
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@TableName("t_forecast_power_short_term_his")
+public class ForecastPowerShortTermHis extends AbstractForecastPowerHis {
+
+}

+ 19 - 0
in-passback/src/main/java/com/jiayue/passback/entity/ForecastPowerUltraShortTermHis.java

@@ -0,0 +1,19 @@
+package com.jiayue.passback.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 超短期预测功率实体
+ *
+ * @author zzy
+ * @version 1.0
+ * @since 2019/8/1 10:56
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@TableName("t_forecast_power_ultra_short_term_his")
+public class ForecastPowerUltraShortTermHis extends AbstractForecastPowerHis {
+
+}

+ 34 - 0
in-passback/src/main/java/com/jiayue/passback/entity/PowerStationStatusData.java

@@ -0,0 +1,34 @@
+package com.jiayue.passback.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * 场站功率状态抽象实体
+ *
+ * @author zzy
+ * @version 1.0
+ * @since 2019/8/2 9:34
+ */
+@Data
+@TableName("t_power_station_status_data")
+public class PowerStationStatusData extends AbstractEquipmentStatusData {
+
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 实际功率(MW)
+	 */
+	@TableField("C_REAL_VALUE")
+	private BigDecimal realValue;
+	/**
+	 * 可用功率(MW)
+	 */
+	@TableField("C_THEORY_VALUE")
+	private BigDecimal ableValue;
+
+
+}

+ 44 - 0
in-passback/src/main/java/com/jiayue/passback/entity/UploadFileChannel.java

@@ -0,0 +1,44 @@
+package com.jiayue.passback.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.jiayue.passback.entity.eunm.*;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 上报文件通道
+ *
+ * @author xsl
+ * @version 3.0
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@TableName("t_upload_file_channel")
+public class UploadFileChannel extends AbstractBaseEntity {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("C_ID")
+    private Integer id;
+
+    /**
+     * 上报对象ID
+     */
+    @TableField("C_UPLOAD_OBJECT_ID")
+    private Integer uploadObjectId;
+
+    /**
+     * 通道名称
+     */
+    @TableField("C_CHANNEL_NAME")
+    private String channelName;
+
+    /**
+     * 通道使用状态
+     */
+    @TableField("C_CHANNEL_STATUS_ENUM")
+    private ChannelStatusEnum channelStatusEnum;
+
+}

+ 63 - 0
in-passback/src/main/java/com/jiayue/passback/entity/UploadFileLog.java

@@ -0,0 +1,63 @@
+package com.jiayue.passback.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.jiayue.passback.entity.eunm.FileStatusEnum;
+import com.jiayue.passback.entity.eunm.FileTypeEnum;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.util.Date;
+
+/**
+ * 上报文件日志
+ *
+ * @author xsl
+ * @version 3.0
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@TableName("t_upload_file_log")
+public class UploadFileLog extends AbstractBaseEntity {
+
+    /**
+     * BACKUPA存生成文件所属时刻
+     */
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("C_ID")
+    private Integer id;
+
+    /**
+     * 上报对象主键ID
+     */
+    @TableField("C_UPLOAD_OBJECT_ID")
+    private Integer uploadObjectId;
+
+    /**
+     * 文件名称
+     */
+    @TableField("C_FILE_NAME")
+    private String fileName;
+
+    /**
+     * 文件类型
+     */
+    @TableField("C_FILE_TYPE_ENUM")
+    private FileTypeEnum fileTypeEnum;
+
+    /**
+     * 文件状态
+     */
+    @TableField("C_FILE_STATUS_ENUM")
+    private FileStatusEnum fileStatusEnum;
+
+    /**
+     * 文件状态
+     */
+    @TableField("C_CREATE_TIME")
+    private Date creatTime;
+
+}

+ 37 - 0
in-passback/src/main/java/com/jiayue/passback/entity/UploadObject.java

@@ -0,0 +1,37 @@
+package com.jiayue.passback.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 上报对象
+ *
+ * @author xsl
+ * @version 3.0
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@TableName("t_upload_object")
+public class UploadObject extends AbstractBaseEntity {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("C_ID")
+    private Integer id;
+
+    /**
+     * 上报对象名称
+     */
+    @TableField("C_UPLOAD_OBJECT_NAME")
+    private String uploadObjectName;
+
+    /**
+     * 上报对象编号
+     */
+    @TableField("C_OBJECT_NO")
+    private String objectNo;
+
+}

+ 23 - 0
in-passback/src/main/java/com/jiayue/passback/entity/WeatherStationInfo.java

@@ -0,0 +1,23 @@
+package com.jiayue.passback.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+
+/**
+ * 环境监测仪实体
+ * modifyInfo
+ * 修唯	2020.3.26		修改类名为 WeatherStationInfo
+ *
+ * @author zzy
+ * @version 1.0
+ * @since 2019/7/22 11:21
+ * modifyInfo
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@TableName("t_weather_station_info")
+public class WeatherStationInfo extends AbstractEquipmentInfo {
+
+}

+ 79 - 0
in-passback/src/main/java/com/jiayue/passback/entity/WeatherStationStatusData.java

@@ -0,0 +1,79 @@
+package com.jiayue.passback.entity;
+
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import java.math.BigDecimal;
+
+/**
+ * 气象站
+ * 环境监测仪数据抽象实体
+ *
+ * @author zzy
+ * @version 1.0
+ * @since 2019/8/2 9:27
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@TableName("t_weather_station_status_data")
+public class WeatherStationStatusData extends AbstractEquipmentStatusData {
+
+	/**
+	 * 总辐射(W/㎡)
+	 */
+	@TableField("C_EQUIPMENT_NO")
+	private BigDecimal globalR;
+
+	/**
+	 * 直接辐射(W/㎡)
+	 */
+	@TableField("C_DIRECTR")
+	private BigDecimal directR;
+
+	/**
+	 * 散射辐射(W/㎡)
+	 */
+	@TableField("C_DIFFUSER")
+	private BigDecimal diffuseR;
+
+	/**
+	 * 环境温度(℃)
+	 */
+	@TableField("C_AIRT")
+	private BigDecimal airT;
+
+	/**
+	 * 气压(KPa)
+	 */
+	@TableField("C_P")
+	private BigDecimal p;
+
+	/**
+	 * 湿度(%)
+	 */
+	@TableField("C_RH")
+	private BigDecimal rh;
+
+
+	/**
+	 * 光伏电池板温度(℃)
+	 */
+	@TableField("C_CELLT")
+	private BigDecimal cellT;
+
+	/**
+	 * 风速(m/s)
+	 */
+	@TableField("C_WS")
+	private BigDecimal ws;
+
+	/**
+	 * 风向(°)
+	 */
+	@TableField("C_WD")
+	private BigDecimal wd;
+	
+
+}

+ 20 - 0
in-passback/src/main/java/com/jiayue/passback/entity/WindTowerInfo.java

@@ -0,0 +1,20 @@
+package com.jiayue.passback.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+
+/**
+ * 测风塔实体
+ *
+ * @author zzy
+ * @version 1.0
+ * @since 2019/7/22 11:18
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@TableName("t_wind_tower_info")
+public class WindTowerInfo extends AbstractEquipmentInfo {
+
+}

+ 58 - 0
in-passback/src/main/java/com/jiayue/passback/entity/WindTowerStatusData.java

@@ -0,0 +1,58 @@
+package com.jiayue.passback.entity;
+
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.extern.slf4j.Slf4j;
+
+import java.math.BigDecimal;
+
+/**
+ * 测风塔数据实体
+ *
+ * @author zzy
+ * @version 1.0
+ * @since 2019/8/2 9:28
+ */
+@EqualsAndHashCode(callSuper = true)
+@Data
+@Slf4j
+@TableName("t_wind_tower_status_data")
+public class WindTowerStatusData extends AbstractEquipmentStatusData {
+
+
+    /**
+     * 温度瞬时值(℃)
+     */
+    @TableField("C_T_INST")
+    private BigDecimal tinst;
+
+
+    /**
+     * 湿度瞬时值(%)
+     */
+    @TableField("C_RH_INST")
+    private BigDecimal rhInst;
+
+    /**
+     * 气压瞬时值(KPa)
+     */
+    @TableField("C_PA_INST")
+    private BigDecimal paInst;
+
+    /**
+     * 风机轮毂高度风速瞬时值
+     */
+    @TableField("C_WS_INST_HUB_HEIGHT")
+    private BigDecimal wsInstHubHeight;
+
+    /**
+     * 风机轮毂高度风向瞬时值(°)
+     */
+    @TableField("C_WD_INST_HUB_HEIGHT")
+    private BigDecimal wdInstHubHeight;
+
+
+}

+ 20 - 0
in-passback/src/main/java/com/jiayue/passback/entity/eunm/ChannelStatusEnum.java

@@ -0,0 +1,20 @@
+package com.jiayue.passback.entity.eunm;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * 通道状态枚举类
+ *
+ * @author xsl
+ * @version 3.0
+ * @since 2020/4/15 19:30
+ */
+@Getter
+@AllArgsConstructor
+public enum ChannelStatusEnum {
+	E1(1, "使用"),
+	E2(2, "停用");
+	private Integer code;
+	private String message;
+}

+ 20 - 0
in-passback/src/main/java/com/jiayue/passback/entity/eunm/ElectricFieldTypeEnum.java

@@ -0,0 +1,20 @@
+package com.jiayue.passback.entity.eunm;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * 场站类型枚举
+ *
+ * @author zzy
+ * @version 1.0
+ * @since 2019/8/2 11:33
+ */
+@Getter
+@AllArgsConstructor
+public enum ElectricFieldTypeEnum {
+	E1(1, "光伏电站"),
+	E2(2, "风力电站");
+	private Integer code;
+	private String message;
+}

+ 114 - 0
in-passback/src/main/java/com/jiayue/passback/entity/eunm/EquipmentTypeEnum.java

@@ -0,0 +1,114 @@
+package com.jiayue.passback.entity.eunm;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * 设备数据对象类型枚举
+ * lastModify
+ * 2020.3.26  修唯   枚举名修改,新增发电站类型,删除各种功率,设备数,开机容量等类型
+ *
+ * @author zzy
+ * @version 1.0
+ * @since 2019/8/19 8:59
+ */
+@Getter
+@AllArgsConstructor
+public enum EquipmentTypeEnum {
+
+    /**
+     * 场站也视为设备类型的一种
+     */
+    POWERSTATION(0, "发电站"),
+    WEATHERSTATION(1, "气象站"),
+    INVERTER(2, "逆变器"),
+    WINDTOWER(3, "测风塔"),
+    WINDTURBINE(4, "风机"),
+    FORECASTDATA(5, "预测数据"),
+    BOOSTERSTATION(6, "升压站"),
+    AGC_AVC(7, "AGC_AVC"),
+    BWD(8, "并网点"),
+    CYB(9, "厂用变"),
+    JDX(10, "集电线"),
+    SYZMX(11, "升压站母线"),
+    WGBC(12, "无功补偿"),
+    DLQ(13, "断路器"),
+    DZ(14, "刀闸"),
+    JDDZ(15, "接地刀闸"),
+    DXFDJ(16, "等效发电机"),
+    QBB(17, "启备变"),
+    LLB(18, "联络变"),
+    FZ(19, "方阵");
+
+    private Integer code;
+    private String message;
+
+
+    /**
+     * 附属设备
+     */
+    public static final List<EquipmentTypeEnum> SUBSIDIARY_EQUIPMENT_TYPE = Arrays.asList(
+            EquipmentTypeEnum.JDX,//并网点
+            EquipmentTypeEnum.BWD,//并网点
+            EquipmentTypeEnum.CYB,//厂用变
+            EquipmentTypeEnum.SYZMX,//升压站母线
+            EquipmentTypeEnum.WGBC,//"无功补偿
+            EquipmentTypeEnum.DLQ,//"断路器
+            EquipmentTypeEnum.DZ,//"刀闸
+            EquipmentTypeEnum.JDDZ,//"接地刀闸
+            EquipmentTypeEnum.DXFDJ,//"等效发电机
+            EquipmentTypeEnum.QBB,//"启备变
+            EquipmentTypeEnum.LLB,//"联络变
+            EquipmentTypeEnum.FZ//方阵
+    );
+
+
+    public static EquipmentTypeEnum valueOf(Integer code) {
+        switch (code) {
+            case 0:
+                return POWERSTATION;
+            case 1:
+                return WEATHERSTATION;
+            case 2:
+                return INVERTER;
+            case 3:
+                return WINDTOWER;
+            case 4:
+                return WINDTURBINE;
+            case 5:
+                return FORECASTDATA;
+            case 6:
+                return BOOSTERSTATION;
+            case 7:
+                return AGC_AVC;
+            case 8:
+                return BWD;
+            case 9:
+                return CYB;
+            case 10:
+                return JDX;
+            case 11:
+                return SYZMX;
+            case 12:
+                return WGBC;
+            case 13:
+                return DLQ;
+            case 14:
+                return DZ;
+            case 15:
+                return JDDZ;
+            case 16:
+                return DXFDJ;
+            case 17:
+                return QBB;
+            case 18:
+                return LLB;
+            case 19:
+                return FZ;
+        }
+        return null;
+    }
+}

+ 25 - 0
in-passback/src/main/java/com/jiayue/passback/entity/eunm/FileStatusEnum.java

@@ -0,0 +1,25 @@
+package com.jiayue.passback.entity.eunm;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * 文件状态枚举类
+ *
+ * @author xsl
+ * @version 3.0
+ * @since 2020/4/15 19:30
+ */
+@Getter
+@AllArgsConstructor
+public enum FileStatusEnum {
+    E1(1,"文件生成"),
+    E2(2,"上报成功"),
+    E3(3,"上报失败"),
+    E4(4,"文件未生成"),
+    E5(5,"上传D5000成功"),
+    E6(6,"上传D5000失败"),
+    E7(7,"文件过期");
+    private Integer code;
+    private String message;
+}

+ 384 - 0
in-passback/src/main/java/com/jiayue/passback/entity/eunm/FileTypeEnum.java

@@ -0,0 +1,384 @@
+package com.jiayue.passback.entity.eunm;
+
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 文件类型枚举类
+ *
+ * @author xsl
+ * @version 2.0
+ * @since 2018/11/16 11:18
+ */
+@Getter
+@AllArgsConstructor
+public enum FileTypeEnum {
+	E1(1,"短期"),
+	E2(2,"超短期"),
+	E3(3,"理论功率"),
+	E4(4,"24NWP"),
+	E5(5,"72NWP"),
+	E6(6,"气象站"),
+	E7(7,"测风塔"),
+	E8(8,"逆变器"),
+	E9(9,"风机信息"),
+	E10(10,"光伏组件信息"),
+	E11(11,"检修计划"),
+	E12(12,"昨日开机容量"),
+	E13(13,"短期发电计划"),
+	E14(14,"超短期发电计划"),
+	E15(15,"日前预测"),
+	E16(16,"日前预测14"),
+	E17(17,"短期168"),
+	E18(18,"限电计划"),
+	E19(19,"弃电计划"),
+	E20(20,"场站信息"),
+	E21(21,"短期_集控"),
+	E22(22,"超短期_集控"),
+	E23(23,"测风塔_集控"),
+	E24(24,"72NWP_集控"),
+	E25(25,"短期_D5000"),
+	// 青海
+	E26(26,"可用短期"),
+	// 青海
+	E27(27,"可用超短期"),
+	// 宁夏
+	E28(28,"理论超短期"),
+	// 以下是青海新增
+	E29(29,"短期预测风速风向"),
+	E30(30,"实测功率"),
+	E31(31,"短期预测辐照度"),
+	E32(32,"短期日志"),
+	E33(33,"超短期日志"),
+	E34(34,"短期可用日志"),
+	E35(35,"超短期可用日志"),
+	E36(36,"气象站日志"),
+	E37(37,"理论功率日志"),
+	E38(38,"逆变器日志"),
+	E39(39,"风机信息日志"),
+	E40(40,"测风塔日志"),
+	E41(41,"指标数据"),
+	//贵州
+	E42(42,"电网上报状态"),
+	E43(43,"预测准确率"),
+	//海南
+	E44(44,"升压变"),
+	//青海
+	E45(45,"超短期预测风速风向"),
+	//广西
+	E46(46,"超短期SFTP"),
+	//青海
+	E47(47,"超短期预测辐照度"),
+	E48(48,"单机"),
+	//广西TODO
+	E49(49,"短期SFTP"),
+	//海南,广西(南方电网)
+	E50(50,"升压站信息"),
+	E51(51,"AGC_AVC信息"),
+	E52(52,"风电总体信息"),
+	E53(53,"光伏总体信息"),
+	E54(54,"统计信息"),
+	E55(55,"逆变器/汇流箱信息"),
+	E56(56,"南网短期预测"),
+	E57(57,"南网超短期预测"),
+	E58(58,"D5000样板机"),
+	E59(59,"短期02"),
+	E60(60,"离线理论功率"),
+	E61(61,"在线理论功率"),
+	//湖北康桥旧文件和湖北其他站的地调
+	E62(62,"湖北短期"),
+	E63(63,"湖北超短期"),
+	E64(64,"湖北72nwp"),
+	E65(65,"湖北气象站"),
+	E66(66,"湖北测风塔"),
+	E67(67,"湖北单机"),
+	//湖北康桥地调
+	E68(68,"荆门地调短期"),
+	E69(69,"荆门地调超短期"),
+	E70(70,"荆门地调72nwp"),
+	E71(71,"荆门地调气象站"),
+	E72(72,"荆门地调测风塔"),
+	E73(73,"荆门地调单机"),
+	E74(74,"荆门地调风机信息"),
+	E75(75,"荆门地调逆变器"),
+	E76(76,"南网风电机组"),
+	//新疆网调光伏
+	E77(77,"新疆网调逆变器"),
+	E78(78,"新疆网调气象站"),
+	E79(79,"新疆网调超短期"),
+	E80(80,"新疆网调短期"),
+	E81(81,"新疆网调实时量测"),
+	E82(82,"新疆网调集电线"),
+
+	E83(83,"南网压缩包"),
+	E84(84,"湖北逆变器"),
+	E85(85,"青海理论功率(风)"),
+	E86(86,"短期_辽宁龙源集控"),
+	E87(87,"超短期_辽宁龙源集控"),
+	E88(88,"测风塔_辽宁龙源集控"),
+	E89(89,"风机_辽宁龙源集控"),
+	//浙江省调上报文件
+	E90(90,"省调短期"),
+	E91(91,"省调昨日开机容量"),
+
+	E92(92,"湖北逆变器信息"),
+
+	E93(93,"黄冈地调短期"),
+	E94(94,"黄冈地调超短期"),
+	E95(95,"黄冈地调72nwp"),
+	E96(96,"黄冈地调气象站"),
+	E97(97,"黄冈地调测风塔"),
+	E98(98,"黄冈地调风机"),
+	E99(99,"黄冈地调逆变器"),
+
+	E100(100,"随州地调短期"),
+	E101(101,"随州地调超短期"),
+	E102(102,"随州地调72nwp"),
+	E103(103,"随州地调气象站"),
+	E104(104,"随州地调逆变器"),
+
+	E105(105,"广东中调短期WPD"),
+	E106(106,"广东中调超短期WPD"),
+	E107(107,"广东中调气象站WPD"),
+	E108(108,"广东中调逆变器WPD"),
+	E109(109,"广东中调短期dat"),
+	E110(110,"广东中调超短期dat"),
+	E111(111,"广东中调气象站dat"),
+	E112(112,"广东中调逆变器dat"),
+
+	E113(113,"NWP_辽宁龙源集控"),
+
+	E114(114,"蒙东南瑞集控测风塔"),
+	E115(115,"龙源南瑞集控测风塔"),
+
+	E116(116,"贵州总调短期"),
+	E117(117,"贵州总调超短期"),
+	E118(118,"贵州总调气象站"),
+	E119(119,"贵州总调逆变器"),
+
+	E120(120,"孝感地调测风塔"),
+	E121(121,"孝感地调风机"),
+
+	E122(122,"贵州新短期"),
+	E123(123,"贵州新超短期"),
+	E124(124,"贵州新气象站"),
+	E125(125,"贵州新测风塔"),
+	E126(126,"贵州新逆变器"),
+	E127(127,"贵州新风机"),
+	E128(128,"贵州新理论功率"),
+	E129(129,"贵州新逆变器信息"),
+	E130(130,"贵州新风机信息"),
+
+	E131(131,"山东新上午短期"),
+	E132(132,"山东新下午短期"),
+	E133(133,"山东新超短期"),
+	E134(134,"山东新气象站"),
+	E135(135,"山东新测风塔"),
+	E136(136,"山东新逆变器"),
+	E137(137,"山东新风机"),
+	E138(138,"山东新理论功率"),
+	E139(139,"山东新逆变器信息"),
+	E140(140,"山东新风机信息"),
+	E141(141,"孝感地调短期"),
+	E142(142,"孝感地调超短期"),
+	E143(143,"孝感地调nwp"),
+	E144(144,"日内预测短期"),
+	E145(145,"内蒙古新上午短期"),
+	E146(146,"内蒙古新下午短期"),
+	E147(147,"内蒙古新超短期"),
+
+	E148(148,"贵州中转短期"),
+	E149(149,"贵州中转超短期"),
+	E150(150,"贵州中转气象站"),
+	E151(151,"贵州中转统计信息"),
+	E152(152,"贵州中转方阵信息"),
+	E153(153,"甘肃新短期"),
+	E154(154,"甘肃12个月电量预测"),
+
+	E155(155,"吉林新上午短期"),
+	E156(156,"吉林新电量预测"),
+	E157(157,"吉林新下午短期"),
+
+	E158(158,"青海新电量预测"),
+	E159(159,"广西升压站信息"),
+	E160(160,"广西AGC-AVC信息"),
+	E161(161,"广西风电场总体信息"),
+	E162(162,"广西气象环境监视信息"),
+	E163(163,"广西风/光统计信息"),
+	E164(164,"广西逆变器/汇流箱信息"),
+	E165(165,"广西短期预测"),
+	E166(166,"广西超短期预测"),
+	E167(167,"广西风力发电机组信息"),
+	// 新疆用的短期下午
+	E168(168,"短期下午"),
+
+	E169(169,"河南漯河地调气象站"),
+	//江苏省调短期
+	E170(170,"省调短期"),
+	//江苏省调超短期
+	E171(171,"省调超短期"),
+	//江苏省调短期
+	E172(172,"省调旧短期"),
+	//江苏省调旧超短期
+	E173(173,"省调旧超短期"),
+
+
+	E174(174,"湖北咸宁地调短期"),
+	E175(175,"湖北咸宁地调超短期"),
+	E176(176,"湖北咸宁地调气象站"),
+	E177(177,"湖北咸宁地调逆变器"),
+	E178(178,"湖北咸宁地调NWP"),
+	E179(179,"湖北上午短期"),
+	E180(180,"湖北下午短期"),
+	E181(181,"湖北原短期下午"),
+
+	E182(182,"湖北上午短期(老系统)"),
+	E183(183,"湖北下午短期(老系统)"),
+	E184(184,"湖北原短期下午(老系统)"),
+
+	E185(185,"湖北荆州地调短期"),
+	E186(186,"湖北荆州地调超短期"),
+	E187(187,"湖北荆州地调nwp"),
+	E188(188,"湖北荆州地调测风塔"),
+	E189(189,"湖北荆州地调风机"),
+
+	E190(190,"江西萍乡地调短期"),
+	E191(191,"江西萍乡地调超短期"),
+	E192(192,"江西萍乡地调气象站"),
+
+	//黑龙江综合通信日志
+	E193(193,"72nwp日志(黑)"),
+	E194(194,"测风塔日志(黑)"),
+	E195(195,"风机日志(黑)"),
+	E196(196,"检修计划日志(黑)"),
+	E197(197,"短期日志(黑)"),
+	E198(198,"超短期日志(黑)"),
+	E199(199,"气象站日志(黑)"),
+	E200(200,"逆变器日志(黑)"),
+
+	E201(201,"黑龙江新电量预测"),
+
+	//华北直调
+	E202(202,"中短期功率预测"),
+
+	E203(203,"华北新可用超短期"),
+	E204(204,"华北新上午可用短期"),
+	E205(205,"华北新下午可用短期"),
+
+	E206(206,"冀北短期"),
+	E207(207,"冀北气象"),
+
+	E208(208,"(黑)三峡新能集控短期"),
+	E209(209,"(黑)三峡新能集控超短期"),
+	E210(210,"(黑)三峡新能集控nwp"),
+	E211(211,"(黑)三峡新能集控理论功率"),
+	E212(212,"(黑)三峡新能集控功率预测系统状态"),
+
+	E213(213,"广东升压站信息"),
+	E214(214,"广东AGC-AVC信息"),
+	E215(215,"广东风电场总体信息"),
+	E216(216,"广东气象环境监视信息"),
+	E217(217,"广东风/光统计信息"),
+	E218(218,"广东逆变器/汇流箱信息"),
+	E219(219,"广东短期预测"),
+	E220(220,"广东超短期预测"),
+	E221(221,"广东风力发电机组信息"),
+	E222(222,"广东箱变/方阵信息"),
+
+	E223(223,"辽宁三峡新能源短期"),
+	E224(224,"辽宁三峡新能源超短期"),
+
+	E225(225,"宜昌地调短期"),
+	E226(226,"宜昌地调超短期"),
+	E227(227,"宜昌地调NWP"),
+	E228(228,"宜昌地调测风塔"),
+	E229(229,"宜昌地调单机"),
+	E230(230,"宜昌地调气象站"),
+	E231(231,"宜昌地调逆变器"),
+	E232(232,"宜昌地调风机信息"),
+	E233(233,"宜昌地调逆变器信息"),
+
+	E234(234,"孝感地调气象站"),
+	E235(235,"孝感地调逆变器"),
+
+	E236(236,"开机容量(未来)"),
+
+	//湖北康桥地调
+	E237(237,"荆门地调72nwp(下午)"),
+	E238(238,"荆门地调短期(下午)"),
+
+	//河南地调文件
+	E239(239,"河南地调短期"),
+	E240(240,"河南地调超短期"),
+	E241(241,"河南地调24nwp"),
+	E242(242,"河南地调72nwp"),
+	E243(243,"河南地调测风塔"),
+	E244(244,"河南地调风机"),
+	E245(245,"河南地调昨日开机容量"),
+
+	E400(400,"新疆备调短期"),
+	E401(401,"新疆备调下午短期"),
+
+	E402(402,"单机转发上送"),
+
+	E500(500,"一体化短期"),
+	E501(501,"一体化短期(预测10天)");
+	/*
+	添加了超短期类型别忘了在下面getCDQ()方法中也加上
+	⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇
+	⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇
+	⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇
+	⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇
+	⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇
+	 */
+	private Integer code;
+	private String message;
+
+
+	//封装黑龙江类型的返回值
+	public static List<FileTypeEnum> getHLJ(){
+		List<FileTypeEnum> fileTypeEnums = new ArrayList<>();
+		fileTypeEnums.add(FileTypeEnum.E194);
+		fileTypeEnums.add(FileTypeEnum.E195);
+		fileTypeEnums.add(FileTypeEnum.E198);
+		fileTypeEnums.add(FileTypeEnum.E199);
+		fileTypeEnums.add(FileTypeEnum.E200);
+		return fileTypeEnums;
+	}
+
+
+	//封装所有使用超短期提前参数的超短期类型的返回值
+	public static List<FileTypeEnum> getCDQ(){
+		List<FileTypeEnum> fileTypeEnums = new ArrayList<>();
+		fileTypeEnums.add(FileTypeEnum.E2);
+		fileTypeEnums.add(FileTypeEnum.E27);
+		fileTypeEnums.add(FileTypeEnum.E63);
+		fileTypeEnums.add(FileTypeEnum.E69);
+		fileTypeEnums.add(FileTypeEnum.E79);
+		fileTypeEnums.add(FileTypeEnum.E94);
+		fileTypeEnums.add(FileTypeEnum.E101);
+		fileTypeEnums.add(FileTypeEnum.E106);
+		fileTypeEnums.add(FileTypeEnum.E110);
+		fileTypeEnums.add(FileTypeEnum.E117);
+		fileTypeEnums.add(FileTypeEnum.E123);
+		fileTypeEnums.add(FileTypeEnum.E133);
+		fileTypeEnums.add(FileTypeEnum.E147);
+		fileTypeEnums.add(FileTypeEnum.E149);
+		fileTypeEnums.add(FileTypeEnum.E166);
+		fileTypeEnums.add(FileTypeEnum.E171);
+		fileTypeEnums.add(FileTypeEnum.E173);
+		fileTypeEnums.add(FileTypeEnum.E175);
+		fileTypeEnums.add(FileTypeEnum.E186);
+		fileTypeEnums.add(FileTypeEnum.E191);
+		fileTypeEnums.add(FileTypeEnum.E203);
+		fileTypeEnums.add(FileTypeEnum.E220);
+		fileTypeEnums.add(FileTypeEnum.E224);
+		fileTypeEnums.add(FileTypeEnum.E226);
+		fileTypeEnums.add(FileTypeEnum.E240);
+		return fileTypeEnums;
+	}
+
+}

+ 42 - 0
in-passback/src/main/java/com/jiayue/passback/job/GenerateService.java

@@ -0,0 +1,42 @@
+package com.jiayue.passback.job;
+
+import com.jiayue.passback.util.FreemarkerUtil;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.time.DateFormatUtils;
+import org.springframework.beans.factory.annotation.Value;
+
+import java.io.File;
+import java.util.*;
+
+@Slf4j
+public abstract class GenerateService {
+
+    @Value("${zxgl.path}")
+    private String sxglPath;
+
+    public abstract void GenerateData();
+
+    public void generateFile(Map<String, Object> map, Date date) {
+        log.info("====开始生成数据文件====");
+
+        map.put("date",DateFormatUtils.format(date,"yyyyMMddHHmmss"));
+        File filePath = new File(sxglPath);
+        String fileName = "";
+        if (filePath.exists()) {
+            try {
+                fileName = "BACK_DATA_FILE_"+DateFormatUtils.format(date,"yyyyMMddHHmmss") + ".CIME";
+                FreemarkerUtil.genFile(map, sxglPath, fileName);
+
+                log.info("{}目录下,{}文件生成成功!!!", sxglPath, fileName);
+            } catch (Exception e) {
+                log.info("{}目录下,{}文件生成时发生错误,文件生成失败", sxglPath, fileName);
+                log.info(e.getMessage());
+            }
+        } else {
+            log.info("{}正向隔离目录不存在,无法生成文件", sxglPath);
+        }
+        log.info("====生成数据文件结束====");
+
+    }
+
+}

+ 51 - 0
in-passback/src/main/java/com/jiayue/passback/job/job.java

@@ -0,0 +1,51 @@
+package com.jiayue.passback.job;
+import com.jiayue.passback.entity.ElectricField;
+import com.jiayue.passback.service.*;
+import com.jiayue.passback.util.DateMomentUtil;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.time.DateFormatUtils;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+
+import java.util.*;
+
+@Component
+@RequiredArgsConstructor
+@Slf4j
+public class job extends GenerateService {
+
+    private final List<GenerateDataService> generateDataServiceList;
+
+    private final ElectricFieldService electricFieldService;
+
+    @Scheduled(cron = "${job.cdqjob}")
+    @Override
+    public void GenerateData() {
+        try {
+
+            Date date = new Date(DateMomentUtil.getMomentTime(new Date().getTime(), 1, 15 * 60 * 1000L));
+            Map<String,Object> map = new HashMap();
+            ElectricField electricField = electricFieldService.list().get(0);
+
+            map.put("elType",electricField.getElectricFieldTypeEnum().name());
+            log.info("====开始启动数据生成业务,时间:{}====",DateFormatUtils.format(date,"yyyy-MM-dd HH:mm:ss"));
+            generateDataServiceList.forEach(g -> {
+
+                map.putAll(g.GenerateData(date));
+            });
+
+            log.info("====数据生成业务结束====");
+            generateFile(map,date);
+        } catch (Exception e) {
+            log.info("数据生成业务发生错误  /(ㄒoㄒ)/~~");
+            e.printStackTrace();
+        }
+
+    }
+
+
+
+
+
+}

+ 7 - 0
in-passback/src/main/java/com/jiayue/passback/mapper/ElectricFieldMapper.java

@@ -0,0 +1,7 @@
+package com.jiayue.passback.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.passback.entity.ElectricField;
+
+public interface ElectricFieldMapper extends BaseMapper<ElectricField> {
+}

+ 7 - 0
in-passback/src/main/java/com/jiayue/passback/mapper/ForecastPowerShortTermHisMapper.java

@@ -0,0 +1,7 @@
+package com.jiayue.passback.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.passback.entity.ForecastPowerShortTermHis;
+
+public interface ForecastPowerShortTermHisMapper extends BaseMapper<ForecastPowerShortTermHis> {
+}

+ 7 - 0
in-passback/src/main/java/com/jiayue/passback/mapper/ForecastPowerUltraShortTermHisMapper.java

@@ -0,0 +1,7 @@
+package com.jiayue.passback.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.passback.entity.ForecastPowerUltraShortTermHis;
+
+public interface ForecastPowerUltraShortTermHisMapper extends BaseMapper<ForecastPowerUltraShortTermHis> {
+}

+ 7 - 0
in-passback/src/main/java/com/jiayue/passback/mapper/PowerStationStatusDataMapper.java

@@ -0,0 +1,7 @@
+package com.jiayue.passback.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.passback.entity.PowerStationStatusData;
+
+public interface PowerStationStatusDataMapper extends BaseMapper<PowerStationStatusData> {
+}

+ 7 - 0
in-passback/src/main/java/com/jiayue/passback/mapper/UploadFileChannelMapper.java

@@ -0,0 +1,7 @@
+package com.jiayue.passback.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.passback.entity.UploadFileChannel;
+
+public interface UploadFileChannelMapper extends BaseMapper<UploadFileChannel> {
+}

+ 7 - 0
in-passback/src/main/java/com/jiayue/passback/mapper/UploadFileLogMapper.java

@@ -0,0 +1,7 @@
+package com.jiayue.passback.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.passback.entity.UploadFileLog;
+
+public interface UploadFileLogMapper extends BaseMapper<UploadFileLog> {
+}

+ 7 - 0
in-passback/src/main/java/com/jiayue/passback/mapper/UploadObjectMapper.java

@@ -0,0 +1,7 @@
+package com.jiayue.passback.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.passback.entity.UploadObject;
+
+public interface UploadObjectMapper extends BaseMapper<UploadObject> {
+}

+ 7 - 0
in-passback/src/main/java/com/jiayue/passback/mapper/WeatherStationInfoMapper.java

@@ -0,0 +1,7 @@
+package com.jiayue.passback.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.passback.entity.WeatherStationInfo;
+
+public interface WeatherStationInfoMapper extends BaseMapper<WeatherStationInfo> {
+}

+ 7 - 0
in-passback/src/main/java/com/jiayue/passback/mapper/WeatherStationStatusDataMapper.java

@@ -0,0 +1,7 @@
+package com.jiayue.passback.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.passback.entity.WeatherStationStatusData;
+
+public interface WeatherStationStatusDataMapper extends BaseMapper<WeatherStationStatusData> {
+}

+ 7 - 0
in-passback/src/main/java/com/jiayue/passback/mapper/WindTowerInfoMapper.java

@@ -0,0 +1,7 @@
+package com.jiayue.passback.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.passback.entity.WindTowerInfo;
+
+public interface WindTowerInfoMapper extends BaseMapper<WindTowerInfo> {
+}

+ 7 - 0
in-passback/src/main/java/com/jiayue/passback/mapper/WindTowerStatusDataMapper.java

@@ -0,0 +1,7 @@
+package com.jiayue.passback.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.jiayue.passback.entity.WindTowerStatusData;
+
+public interface WindTowerStatusDataMapper extends BaseMapper<WindTowerStatusData> {
+}

+ 7 - 0
in-passback/src/main/java/com/jiayue/passback/service/ElectricFieldService.java

@@ -0,0 +1,7 @@
+package com.jiayue.passback.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.passback.entity.ElectricField;
+
+public interface ElectricFieldService extends IService<ElectricField> {
+}

+ 7 - 0
in-passback/src/main/java/com/jiayue/passback/service/ForecastPowerShortTermHisService.java

@@ -0,0 +1,7 @@
+package com.jiayue.passback.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.passback.entity.ForecastPowerShortTermHis;
+
+public interface ForecastPowerShortTermHisService extends IService<ForecastPowerShortTermHis>,GenerateDataService {
+}

+ 7 - 0
in-passback/src/main/java/com/jiayue/passback/service/ForecastPowerUltraShortTermHisService.java

@@ -0,0 +1,7 @@
+package com.jiayue.passback.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.passback.entity.ForecastPowerUltraShortTermHis;
+
+public interface ForecastPowerUltraShortTermHisService extends IService<ForecastPowerUltraShortTermHis>,GenerateDataService {
+}

+ 8 - 0
in-passback/src/main/java/com/jiayue/passback/service/GenerateDataService.java

@@ -0,0 +1,8 @@
+package com.jiayue.passback.service;
+
+import java.util.Date;
+import java.util.Map;
+
+public interface GenerateDataService {
+    public Map<String,Object> GenerateData(Date date);
+}

+ 8 - 0
in-passback/src/main/java/com/jiayue/passback/service/PowerStationStatusDataService.java

@@ -0,0 +1,8 @@
+package com.jiayue.passback.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.passback.entity.PowerStationStatusData;
+
+public interface PowerStationStatusDataService extends IService<PowerStationStatusData>,GenerateDataService {
+
+}

+ 7 - 0
in-passback/src/main/java/com/jiayue/passback/service/UploadFileChannelService.java

@@ -0,0 +1,7 @@
+package com.jiayue.passback.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.passback.entity.UploadFileChannel;
+
+public interface UploadFileChannelService extends IService<UploadFileChannel> {
+}

+ 7 - 0
in-passback/src/main/java/com/jiayue/passback/service/UploadFileLogService.java

@@ -0,0 +1,7 @@
+package com.jiayue.passback.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.passback.entity.UploadFileLog;
+
+public interface UploadFileLogService extends IService<UploadFileLog>,GenerateDataService {
+}

+ 7 - 0
in-passback/src/main/java/com/jiayue/passback/service/UploadObjectService.java

@@ -0,0 +1,7 @@
+package com.jiayue.passback.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.passback.entity.UploadObject;
+
+public interface UploadObjectService extends IService<UploadObject> {
+}

+ 8 - 0
in-passback/src/main/java/com/jiayue/passback/service/WeatherStationInfoService.java

@@ -0,0 +1,8 @@
+package com.jiayue.passback.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.passback.entity.WeatherStationInfo;
+
+public interface WeatherStationInfoService extends IService<WeatherStationInfo> {
+    public int weatherStationInfoId();
+}

+ 7 - 0
in-passback/src/main/java/com/jiayue/passback/service/WeatherStationStatusDataService.java

@@ -0,0 +1,7 @@
+package com.jiayue.passback.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.passback.entity.WeatherStationStatusData;
+
+public interface WeatherStationStatusDataService extends IService<WeatherStationStatusData>,GenerateDataService {
+}

+ 8 - 0
in-passback/src/main/java/com/jiayue/passback/service/WindTowerInfoService.java

@@ -0,0 +1,8 @@
+package com.jiayue.passback.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.passback.entity.WindTowerInfo;
+
+public interface WindTowerInfoService extends IService<WindTowerInfo> {
+    public int WindTowerInfoInfoId();
+}

+ 7 - 0
in-passback/src/main/java/com/jiayue/passback/service/WindTowerStatusDataService.java

@@ -0,0 +1,7 @@
+package com.jiayue.passback.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.jiayue.passback.entity.WindTowerStatusData;
+
+public interface WindTowerStatusDataService extends IService<WindTowerStatusData>,GenerateDataService {
+}

+ 12 - 0
in-passback/src/main/java/com/jiayue/passback/service/impl/ElectricFieldServiceImpl.java

@@ -0,0 +1,12 @@
+package com.jiayue.passback.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.passback.entity.ElectricField;
+import com.jiayue.passback.mapper.ElectricFieldMapper;
+import com.jiayue.passback.service.ElectricFieldService;
+import org.springframework.stereotype.Service;
+
+@Service
+public class ElectricFieldServiceImpl extends ServiceImpl<ElectricFieldMapper, ElectricField> implements ElectricFieldService {
+
+}

+ 37 - 0
in-passback/src/main/java/com/jiayue/passback/service/impl/ForecastPowerShortTermHisServiceImpl.java

@@ -0,0 +1,37 @@
+package com.jiayue.passback.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.passback.entity.ForecastPowerShortTermHis;
+import com.jiayue.passback.mapper.ForecastPowerShortTermHisMapper;
+import com.jiayue.passback.service.ForecastPowerShortTermHisService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+import java.util.*;
+import java.util.stream.Collectors;
+
+@Service
+@Slf4j
+public class ForecastPowerShortTermHisServiceImpl extends ServiceImpl<ForecastPowerShortTermHisMapper, ForecastPowerShortTermHis> implements ForecastPowerShortTermHisService {
+    @Override
+    public Map<String, Object> GenerateData(Date date) {
+        Map<String, Object> map = new HashMap<>();
+        Date endTime = date;
+
+        Date startTime = new Date(date.getTime() - 15 * 60 * 1000);
+        //获取短期数据
+        List<ForecastPowerShortTermHis> forecastPowerShortTermHisList = list(lambdaQuery().between(ForecastPowerShortTermHis::getGenDate, startTime,endTime).getWrapper());
+
+        List<ForecastPowerShortTermHis> list = forecastPowerShortTermHisList.stream().collect(Collectors.collectingAndThen(
+                Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(ForecastPowerShortTermHis::getForecastTime))), ArrayList::new
+        ));
+
+        list.sort((a,b)->{
+            return (int) (a.getForecastTime() - b.getForecastTime());
+        });
+        map.put(ForecastPowerShortTermHis.class.getSimpleName(), list);
+
+        log.info("获取短期记录数{}", list.size());
+        return map;
+    }
+}

+ 41 - 0
in-passback/src/main/java/com/jiayue/passback/service/impl/ForecastPowerUltraShortTermHisServiceImpl.java

@@ -0,0 +1,41 @@
+package com.jiayue.passback.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.passback.entity.ForecastPowerUltraShortTermHis;
+import com.jiayue.passback.mapper.ForecastPowerUltraShortTermHisMapper;
+import com.jiayue.passback.service.ForecastPowerUltraShortTermHisService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Service;
+
+import java.util.*;
+import java.util.stream.Collectors;
+
+@Service
+@Slf4j
+public class ForecastPowerUltraShortTermHisServiceImpl extends ServiceImpl<ForecastPowerUltraShortTermHisMapper, ForecastPowerUltraShortTermHis> implements ForecastPowerUltraShortTermHisService {
+    @Value("${cdqUpMin}")
+    private int cdqUpMin;
+
+    @Override
+    public Map<String, Object> GenerateData(Date date) {
+        Map<String, Object> map = new HashMap<>();
+
+        Date startTime = new Date(date.getTime() - cdqUpMin * 15 * 60 * 1000);
+
+        Date endTime = new Date(date.getTime() + 15 * 60 * 1000 - 1);
+
+        List<ForecastPowerUltraShortTermHis> forecastPowerUltraShortTermHisList = list(lambdaQuery().between(ForecastPowerUltraShortTermHis::getGenDate, startTime, endTime).getWrapper());
+
+        List<ForecastPowerUltraShortTermHis> list = forecastPowerUltraShortTermHisList.stream().collect(Collectors.collectingAndThen(
+                Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(ForecastPowerUltraShortTermHis::getForecastTime))), ArrayList::new
+        ));
+        list.sort((a, b) -> {
+            return (int) (a.getForecastTime() - b.getForecastTime());
+        });
+
+        map.put(ForecastPowerUltraShortTermHis.class.getSimpleName(), list);
+        log.info("获取超短期记录数{}", list.size());
+        return map;
+    }
+}

+ 31 - 0
in-passback/src/main/java/com/jiayue/passback/service/impl/PowerStationStatusDataServiceImpl.java

@@ -0,0 +1,31 @@
+package com.jiayue.passback.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.passback.entity.PowerStationStatusData;
+import com.jiayue.passback.mapper.PowerStationStatusDataMapper;
+import com.jiayue.passback.service.PowerStationStatusDataService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+
+import java.util.*;
+
+@Service
+@Slf4j
+public class PowerStationStatusDataServiceImpl extends ServiceImpl<PowerStationStatusDataMapper, PowerStationStatusData> implements PowerStationStatusDataService {
+
+    @Override
+    public Map<String, Object> GenerateData(Date date) {
+        Map<String, Object> map = new HashMap<>();
+        List<PowerStationStatusData> list = new ArrayList<>();
+
+        List<PowerStationStatusData> powerStationStatusDataList = list(lambdaQuery().eq(PowerStationStatusData::getTime, date).getWrapper());
+
+        if(powerStationStatusDataList.size()>0){
+            list.add(powerStationStatusDataList.get(0));
+        }
+
+        map.put(PowerStationStatusData.class.getSimpleName(),list);
+        log.info("获取实际功率记录数{}", list.size());
+        return map;
+    }
+}

+ 11 - 0
in-passback/src/main/java/com/jiayue/passback/service/impl/UploadFileChannelServiceImpl.java

@@ -0,0 +1,11 @@
+package com.jiayue.passback.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.passback.entity.UploadFileChannel;
+import com.jiayue.passback.mapper.UploadFileChannelMapper;
+import com.jiayue.passback.service.UploadFileChannelService;
+import org.springframework.stereotype.Service;
+
+@Service
+public class UploadFileChannelServiceImpl extends ServiceImpl<UploadFileChannelMapper, UploadFileChannel> implements UploadFileChannelService {
+}

+ 61 - 0
in-passback/src/main/java/com/jiayue/passback/service/impl/UploadFileLogServiceImpl.java

@@ -0,0 +1,61 @@
+package com.jiayue.passback.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.passback.entity.UploadFileLog;
+import com.jiayue.passback.entity.eunm.FileStatusEnum;
+import com.jiayue.passback.mapper.UploadFileLogMapper;
+import com.jiayue.passback.service.UploadFileLogService;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang3.time.DateFormatUtils;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
+
+@Service
+@Slf4j
+public class UploadFileLogServiceImpl extends ServiceImpl<UploadFileLogMapper, UploadFileLog> implements UploadFileLogService {
+    @Value("${tunnelName}")
+    private String tunnelName;
+
+    @Value("${dqType}")
+    private String dqType;
+
+    @Value("${cdqType}")
+    private String cdqType;
+
+    @Override
+    public Map<String, Object> GenerateData(Date date) {
+
+        Date startTime = date;
+
+        Date endTime = new Date(date.getTime() + 15 * 60 * 1000);
+
+        Map<String, Object> map = new HashMap<>();
+
+
+        if (list(lambdaQuery()
+                .between(UploadFileLog::getCreatTime, startTime, endTime)
+                .eq(UploadFileLog::getFileTypeEnum, cdqType)
+                .eq(UploadFileLog::getFileStatusEnum, FileStatusEnum.E2).getWrapper()).size() > 0) {
+            map.put("cdqStatus", 1);
+        }else {
+            map.put("cdqStatus", 0);
+        }
+
+        if (list(lambdaQuery()
+                .between(UploadFileLog::getCreatTime, startTime, endTime)
+                .eq(UploadFileLog::getFileTypeEnum, dqType)
+                .eq(UploadFileLog::getFileStatusEnum, FileStatusEnum.E2).getWrapper()).size() > 0) {
+            map.put("dqStatus", 1);
+        }else {
+            map.put("dqStatus", 0);
+        }
+
+        log.info("获取短期上报状态:{},获取超短期上报状态:{}",map.get("dqStatus"),map.get("cdqStatus"));
+
+        return map;
+    }
+}

+ 11 - 0
in-passback/src/main/java/com/jiayue/passback/service/impl/UploadObjectServiceImpl.java

@@ -0,0 +1,11 @@
+package com.jiayue.passback.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.passback.entity.UploadObject;
+import com.jiayue.passback.mapper.UploadObjectMapper;
+import com.jiayue.passback.service.UploadObjectService;
+import org.springframework.stereotype.Service;
+
+@Service
+public class UploadObjectServiceImpl extends ServiceImpl<UploadObjectMapper, UploadObject> implements UploadObjectService {
+}

+ 25 - 0
in-passback/src/main/java/com/jiayue/passback/service/impl/WeatherStationInfoServiceImpl.java

@@ -0,0 +1,25 @@
+package com.jiayue.passback.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.passback.entity.WeatherStationInfo;
+import com.jiayue.passback.mapper.WeatherStationInfoMapper;
+import com.jiayue.passback.service.WeatherStationInfoService;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public class WeatherStationInfoServiceImpl extends ServiceImpl<WeatherStationInfoMapper, WeatherStationInfo> implements WeatherStationInfoService {
+    @Override
+    public int weatherStationInfoId() {
+        int id = 0;
+
+        List<WeatherStationInfo> weatherStationInfoList = list(lambdaQuery().eq(WeatherStationInfo::getReport, true).getWrapper());
+
+        if (weatherStationInfoList.size() > 0) {
+            id = weatherStationInfoList.get(0).getId();
+        }
+
+        return id;
+    }
+}

+ 34 - 0
in-passback/src/main/java/com/jiayue/passback/service/impl/WeatherStationStatusDataServiceImpl.java

@@ -0,0 +1,34 @@
+package com.jiayue.passback.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.passback.entity.WeatherStationStatusData;
+import com.jiayue.passback.mapper.WeatherStationStatusDataMapper;
+import com.jiayue.passback.service.WeatherStationInfoService;
+import com.jiayue.passback.service.WeatherStationStatusDataService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.*;
+
+@Service
+@Slf4j
+public class WeatherStationStatusDataServiceImpl extends ServiceImpl<WeatherStationStatusDataMapper, WeatherStationStatusData> implements WeatherStationStatusDataService {
+    @Autowired
+    private WeatherStationInfoService weatherStationInfoService;
+    @Override
+    public Map<String, Object> GenerateData(Date date) {
+        Map<String, Object> map = new HashMap<>();
+        List<WeatherStationStatusData> list = new ArrayList<>();
+
+        List<WeatherStationStatusData> weatherStationStatusDataList = list(lambdaQuery().eq(WeatherStationStatusData::getTime, date).eq(WeatherStationStatusData::getEquipmentNo,weatherStationInfoService.weatherStationInfoId()).getWrapper());
+
+            if (weatherStationStatusDataList.size() > 0) {
+            list.add(weatherStationStatusDataList.get(0));
+        }
+
+        map.put(WeatherStationStatusData.class.getSimpleName(), list);
+        log.info("获取气象站记录数{}", list.size());
+        return map;
+    }
+}

+ 25 - 0
in-passback/src/main/java/com/jiayue/passback/service/impl/WindTowerInfoServiceImpl.java

@@ -0,0 +1,25 @@
+package com.jiayue.passback.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.passback.entity.WindTowerInfo;
+import com.jiayue.passback.mapper.WindTowerInfoMapper;
+import com.jiayue.passback.service.WindTowerInfoService;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public class WindTowerInfoServiceImpl extends ServiceImpl<WindTowerInfoMapper, WindTowerInfo> implements WindTowerInfoService {
+    @Override
+    public int WindTowerInfoInfoId() {
+        int id = 0;
+
+        List<WindTowerInfo> WindTowerInfoList = list(lambdaQuery().eq(WindTowerInfo::getReport, true).getWrapper());
+
+        if (WindTowerInfoList.size() > 0) {
+            id = WindTowerInfoList.get(0).getId();
+        }
+
+        return id;
+    }
+}

+ 34 - 0
in-passback/src/main/java/com/jiayue/passback/service/impl/WindTowerStatusDataServiceImpl.java

@@ -0,0 +1,34 @@
+package com.jiayue.passback.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.jiayue.passback.entity.WindTowerStatusData;
+import com.jiayue.passback.mapper.WindTowerStatusDataMapper;
+import com.jiayue.passback.service.WindTowerInfoService;
+import com.jiayue.passback.service.WindTowerStatusDataService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.*;
+
+@Service
+@Slf4j
+public class WindTowerStatusDataServiceImpl extends ServiceImpl<WindTowerStatusDataMapper, WindTowerStatusData> implements WindTowerStatusDataService {
+    @Autowired
+    private WindTowerInfoService windTowerInfoService;
+    @Override
+    public Map<String, Object> GenerateData(Date date) {
+        Map<String, Object> map = new HashMap<>();
+        List<WindTowerStatusData> list = new ArrayList<>();
+
+        List<WindTowerStatusData> windTowerStatusDataList = list(lambdaQuery().eq(WindTowerStatusData::getTime, date).eq(WindTowerStatusData::getEquipmentNo,windTowerInfoService.WindTowerInfoInfoId()).getWrapper());
+
+        if (windTowerStatusDataList.size() > 0) {
+            list.add(windTowerStatusDataList.get(0));
+        }
+
+        map.put(WindTowerStatusData.class.getSimpleName(), list);
+        log.info("获取测风塔记录数{}", list.size());
+        return map;
+    }
+}

+ 174 - 0
in-passback/src/main/java/com/jiayue/passback/util/DateMomentUtil.java

@@ -0,0 +1,174 @@
+package com.jiayue.passback.util;
+
+
+import java.util.Calendar;
+
+/**
+ * 时刻工具类
+ *
+ * @author zzy
+ * @version 2.0
+ * @since 2018/11/2 11:31
+ */
+public abstract class DateMomentUtil {
+
+
+    /**
+     * 获取月份
+     *
+     * @param dateTime 时间,单位毫秒
+     * @return 月份
+     */
+    public static Integer getMonth(final Long dateTime) {
+        Calendar calendar = Calendar.getInstance();
+        calendar.setTimeInMillis(dateTime);
+        return calendar.get(Calendar.MONTH) + 1;
+    }
+
+    /**
+     * 获取指定时间在当天所处于的时刻
+     * 例如:dateTime:2018-10-22 16:44:00 momentLength: 15分钟,既 15*60*1000毫秒
+     * 从0点0分开始计算,0点0分-0点15为第一个时刻,依次类推该时间的时刻数为67
+     *
+     * @param dateTime     时间毫秒
+     * @param momentLength 时刻长度,单位毫秒
+     * @return 时刻
+     */
+    public static int getMoment(final Long dateTime, final Long momentLength) {
+        return (int) ((dateTime - DateMomentUtil.getDayStartTime(dateTime)) / momentLength) + 1;
+    }
+
+    /**
+     * 获取指定时间所在时刻的标记时间 <br>
+     * 例如:dateTime:2018-10-22 16:44:00 momentLength: 15*60*1000 <br>
+     * 当前标记signType:1 那么该时刻的标记时间为2018-10-22 16:30:00
+     * 当后标记singType:2 那么该时刻的标记时间为2018-10-22 16:45:00
+     *
+     * @param dateTime     时间毫秒
+     * @param signType     标记方式:1前标记 2后标记
+     * @param momentLength 时刻长度,单位:毫秒
+     * @return 指定时间所在时刻的标记时间,单位:毫秒
+     */
+    public static long getMomentTime(final Long dateTime, final int signType, final Long momentLength) throws Exception {
+        if (24 * 3600 * 1000L % momentLength != 0)
+            throw new Exception("时刻长度非法,时刻长度需要能够被一天整除");
+        int moment = DateMomentUtil.getMoment(dateTime, momentLength);// 获取指定时间所在时刻数
+        long differentTime = moment * momentLength;// 获取从0分0秒开始到现在的时间间隔,单位:毫秒
+        long dayStartTime = DateMomentUtil.getDayStartTime(dateTime);
+        switch (signType) {
+            case 2:
+                return dayStartTime + differentTime;
+            default:
+                return dayStartTime + differentTime - momentLength;
+        }
+    }
+
+    /**
+     * 获取指定时间所在天第一个时刻的标记时间 <br>
+     * 例如:dateTime:2018-10-22 16:44:00 momentLength: 15*60*1000 <br>
+     * 当前标记signType:1 那么第一个时刻的标记时间为2018-10-22 00:00:00
+     * 当后标记singType:2 那么第一个时刻的标记时间为2018-10-22 00:15:00
+     *
+     * @param dateTime     时间毫秒
+     * @param signType     标记方式:1前标记 2后标记
+     * @param momentLength 时刻长度,单位:毫秒
+     * @return 一天第一个时刻的标记时间,单位:毫秒
+     */
+    public static long getDayFirstMomentTime(final Long dateTime, final int signType, final Long momentLength) throws Exception {
+        if (24 * 3600 * 1000L % momentLength != 0)
+            throw new Exception("时刻长度非法,时刻长度需要能够被一天整除");
+        long dayStartTime = DateMomentUtil.getDayStartTime(dateTime);
+        switch (signType) {
+            case 2:
+                return dayStartTime + momentLength;
+            default:
+                return dayStartTime;
+        }
+    }
+
+    /**
+     * 获取指定时间所在天的最后一个时刻的标记时间 <br>
+     * 例如:dateTime:2018-10-22 16:44:00 momentLength: 15*60*1000 <br>
+     * 当前标记signType:1 那么最后一个时刻的标记时间为2018-10-22 23:45:00
+     * 当后标记singType:2 那么最后一个时刻的标记时间为2018-10-23 00:00:00
+     *
+     * @param dateTime     时间毫秒
+     * @param signType     标记方式:1前标记 2后标记, 当null时按照前标记1处理
+     * @param momentLength 时刻长度,单位:毫秒
+     * @return 一天第一个时刻的标记时间,单位:毫秒
+     */
+    public static long getDayLastMomentTime(final Long dateTime, final int signType, final Long momentLength) throws Exception {
+        if (24 * 3600 * 1000L % momentLength != 0)
+            throw new Exception("时刻长度非法,时刻长度需要能够被一天整除");
+        Calendar date = Calendar.getInstance();
+        date.setTimeInMillis(dateTime);
+        date.add(Calendar.DATE, 1);
+        date.set(Calendar.HOUR_OF_DAY, 0);
+        date.set(Calendar.MINUTE, 0);
+        date.set(Calendar.SECOND, 0);
+        date.set(Calendar.MILLISECOND, 0);
+        switch (signType) {
+            case 2:
+                return date.getTimeInMillis();
+            default:
+                return date.getTimeInMillis() - momentLength;
+        }
+    }
+
+    /**
+     * 获取指定时间所在天的0点0分
+     *
+     * @param dateTime 时间毫秒
+     * @return 0点0分的毫秒
+     */
+    public static long getDayStartTime(final Long dateTime) {
+        Calendar date = Calendar.getInstance();
+        date.setTimeInMillis(dateTime);
+        date.set(Calendar.HOUR_OF_DAY, 0);
+        date.set(Calendar.MINUTE, 0);
+        date.set(Calendar.SECOND, 0);
+        date.set(Calendar.MILLISECOND, 0);
+        return date.getTimeInMillis();
+    }
+
+    /**
+     * 获取指定时间所在天的23点59分59秒
+     *
+     * @param dateTime 时间毫秒
+     * @return 23点59分59秒的毫秒
+     */
+    public static long getDayLastTime(final Long dateTime) {
+        Calendar date = Calendar.getInstance();
+        date.setTimeInMillis(dateTime);
+        date.set(Calendar.HOUR_OF_DAY, 23);
+        date.set(Calendar.MINUTE, 59);
+        date.set(Calendar.SECOND, 59);
+        date.set(Calendar.MILLISECOND, 999);
+        return date.getTimeInMillis();
+    }
+
+    /**
+     * 获取两个时间间的间隔天数(自然天)
+     * @param dateFrom 开始时间
+     * @param dateTo 结束时间
+     * @return 自然天数
+     */
+    public static Integer getDaysBetweenTwoDate(Long dateFrom, Long dateTo) {
+        return (int) ((DateMomentUtil.getDayStartTime(dateTo) - DateMomentUtil.getDayStartTime(dateFrom)) / (1000 * 60 * 60 * 24L));
+    }
+
+
+
+    /**
+     * 获取指定时间段有多少时刻
+     * 例如:dateTime:2018-10-22 16:44:00 momentLength: 15分钟,既 15*60*1000毫秒
+     * 从0点0分开始计算,0点0分-0点15为第一个时刻,依次类推该时间的时刻数为67
+     *
+     * @param momentLength 时刻长度,单位毫秒
+     * @return 时刻
+     */
+    public static int getIntervalMoment(final Long startTime,final Long endTime, final Long momentLength) {
+        return (int) ((endTime - startTime) / momentLength) + 1;
+    }
+
+}

+ 39 - 0
in-passback/src/main/java/com/jiayue/passback/util/FreemarkerUtil.java

@@ -0,0 +1,39 @@
+package com.jiayue.passback.util;
+
+import freemarker.template.Configuration;
+import freemarker.template.Template;
+import org.springframework.util.ResourceUtils;
+
+import java.io.File;
+import java.io.FileWriter;
+import java.io.Writer;
+
+
+public class FreemarkerUtil {
+
+   public static void genFile(Object data,String outPath,String fileName) throws Exception {
+       //1.创建freemarker的配置对象
+       Configuration configuration = new Configuration(Configuration.getVersion());
+       //2.设置模板文件所在目录
+       String templateFilePath = ResourceUtils.getURL("classpath:").getPath() +File.separator+ "template";
+
+       configuration.setDirectoryForTemplateLoading(new File(templateFilePath));
+       //3.设置字符集
+       configuration.setDefaultEncoding("utf-8");
+       //4数字格式去除逗号
+       configuration.setNumberFormat("#");
+       //5.加载模板
+       Template template = configuration.getTemplate("template.ftl");
+       //6.准备模板文件中所需的数据,一般通过map构造
+//       Map<String,String> map = new HashMap<>();
+//       map.put("name","panghl");
+//       map.put("message","你好啊!!!freemarker");
+       //7.创建Writer对象,用于输出静态文件
+       Writer out = new FileWriter(new File(outPath+File.separator+fileName));
+       //8.输出文件
+       template.process(data,out);
+       //9.关闭流
+       out.close();
+   }
+
+}

+ 18 - 0
in-passback/src/main/resources/application.properties

@@ -0,0 +1,18 @@
+job.cdqjob = 0 5,20,35,50 * * * ?
+#job.cdqjob = 0 0/1 * * * ?
+zxgl.path = \\\\YH\\backFile
+tunnelName = ¸ÊËàÉϱ¨
+dqType = E1
+cdqType = E2
+cdqUpMin = 0
+
+server.port = 9008
+
+spring.datasource.driver-class-name = com.mysql.cj.jdbc.Driver
+spring.datasource.url = jdbc:mysql://192.168.1.77:3306/ipfcst-v3?useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8&autoReconnect=true&rewriteBatchedStatements=true&serverTimezone=Asia/Shanghai
+spring.datasource.username = root
+spring.datasource.password = !QAZ2root
+
+logging.config = classpath:logback.xml
+
+spring.freemarker.cache=true

+ 11 - 0
in-passback/src/main/resources/banner.txt

@@ -0,0 +1,11 @@
+                           ___.                  __
+___________    ______ _____\_ |__ _____    ____ |  | __
+\____ \__  \  /  ___//  ___/| __ \\__  \ _/ ___\|  |/ /
+|  |_> > __ \_\___ \ \___ \ | \_\ \/ __ \\  \___|    <
+|   __(____  /____  >____  >|___  (____  /\___  >__|_ \
+|__|       \/     \/     \/     \/     \/     \/     \/
+
+
+********************************************************
+               启动【一体化内网回传数据生成系统】
+========================================================

+ 0 - 32
in-passback/src/main/resources/bootstrap.yml

@@ -1,32 +0,0 @@
-spring:
-  application:
-    name: in-passback
-  profiles:
-    active: local
-
-server:
-  port: 8800
----
-spring:
-
-  config:
-    activate:
-      on-profile: local
-
-
-  cloud:
-    nacos:
-      discovery:
-        server-addr: 127.0.0.1:8848
-        namespace: local
-
-      config:
-        server-addr: ${spring.cloud.nacos.discovery.server-addr}
-        file-extension: yml
-        namespace: local
-
-management:
-  endpoint:
-    web:
-      exposure:
-        include: '*'

+ 109 - 0
in-passback/src/main/resources/logback.xml

@@ -0,0 +1,109 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<configuration scan="false" scanPeriod="60 seconds" debug="false"><!-- 这个是根配置文件,一定要有的
+                            scan:
+                                是当配置文件被修改后会被重新加载
+                            scanPeriod:
+                                设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,
+                                默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。
+                            debug:
+                                当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。
+                                默认值为false。
+                             -->
+  <!-- 日志存放路径
+      下面的标签可以自己定义
+      name:相当于Map的key
+      value:就是map的value
+      ${catalina.base}是tomcat的当前路径
+      /logs:就是tomcat下的日志路径,
+      /ehrlog:如果没有目录会默认创建
+  -->
+  <property name="logbase" value="./logs/"/>
+  <!-- 时间戳:这个时间戳可以作为每日日志的名称 -->
+  <timestamp key="bySecond" datePattern="yyyy-MM-dd"/>
+  <!-- appender:
+      name相当于一个名称
+      class:确定要加载哪个类
+      encoder:一定要加 encoder ,
+      默认配置为PatternLayoutEncoder
+      patter:必填
+      ConsoleAppender:也明白是什么意思,就是输出在控制台上-->
+  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
+    <encoder>
+      <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
+      <charset>UTF-8</charset>
+    </encoder>
+  </appender>
+  <!-- 把日志存储
+      encoding:日志的编码
+      file:指定当前生成的日志文件名称
+      rollingPolicy:滚动策略
+      FileNamePattern:移动文件最后的名称,跟file标签结合使用,
+      比如file里面的内容是  1.txt
+      那么,FileNamePattern里面写的是2.txt,那么最后文件名就为2.txt
+      如果最后结尾是gz或者zip,那么,就会自动打成压缩包
+      -->
+  <appender name="logFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
+    <!-- 编码 -->
+    <!--<Encoding>UTF-8</Encoding>-->
+    <!-- 按照时间来 -->
+    <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+      <!--日志文件输出的文件名-->
+      <FileNamePattern>${logbase}/%d{yyyy-MM-dd}/inin.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
+      <!--日志文件保留天数-->
+      <MaxHistory>180</MaxHistory>
+      <maxFileSize>10MB</maxFileSize>
+      <totalSizeCap>1024MB</totalSizeCap>
+      <cleanHistoryOnStart>true</cleanHistoryOnStart>
+    </rollingPolicy>
+    <!-- 布局 -->
+    <encoder>
+      <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
+      <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
+      <charset>UTF-8</charset>
+    </encoder>
+    <append>false</append>
+  </appender>
+
+
+  <!-- <appender name="TunnelLogFile" class="ch.qos.logback.core.rolling.RollingFileAppender">
+     &lt;!&ndash; 编码 &ndash;&gt;
+     &lt;!&ndash;<Encoding>UTF-8</Encoding>&ndash;&gt;
+     &lt;!&ndash; 按照时间来 &ndash;&gt;
+     <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+       &lt;!&ndash;日志文件输出的文件名&ndash;&gt;
+       <FileNamePattern>D://testlog//#TunnelName#.%d{yyyy-MM-dd}.%i.log</FileNamePattern>
+       &lt;!&ndash;日志文件保留天数&ndash;&gt;
+       <MaxHistory>180</MaxHistory>
+       <maxFileSize>10MB</maxFileSize>
+       <totalSizeCap>1024MB</totalSizeCap>
+       <cleanHistoryOnStart>true</cleanHistoryOnStart>
+     </rollingPolicy>
+     &lt;!&ndash; 布局 &ndash;&gt;
+     <encoder>
+       &lt;!&ndash;格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符&ndash;&gt;
+       <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
+       <charset>UTF-8</charset>
+     </encoder>
+     <append>false</append>
+   </appender>
+
+   <logger name="TunnelLogger" level="debug" additivity="true">
+     <appender-ref ref="TunnelLogFile"/>
+   </logger>-->
+
+  <logger name="com.jiayue" level="info" additivity="true">
+    <appender-ref ref="logFile"/>
+  </logger>
+  <logger name="com.alibaba.druid.filter.stat.StatFilter" level="info" additivity="true">
+    <appender-ref ref="logFile"/>
+  </logger>
+
+  <logger name="org" level="info" additivity="true">
+    <appender-ref ref="logFile"/>
+  </logger>
+
+  <root level="info">
+    <appender-ref ref="STDOUT"/>
+  </root>
+</configuration>

+ 49 - 0
in-passback/src/main/resources/template/template.ftl

@@ -0,0 +1,49 @@
+<! type='backdata' time='${date}' !>
+
+<RealPower>
+@ 序号  实发功率值
+<#list PowerStationStatusData as p>
+# ${p_index+1}  ${p.realValue?string("0.00")}
+</#list>
+</RealPower>
+
+<#if elType == 'E2'>
+<RealWeather>
+@ 序号    风速    风向   温度    湿度    气压
+<#list WindTowerStatusData as w>
+# ${w_index+1}    ${w.wsInstHubHeight?string("0.00")}    ${w.wdInstHubHeight?string("0.00")}    ${w.tinst?string("0.00")}    ${w.rhInst?string("0.00")}    ${w.paInst?string("0.00")}
+</#list>
+</RealWeather>
+
+<#else>
+<RealWeather>
+@ 序号 总辐照度   直射辐照度   散射辐照度    温度    光伏板温度    湿度    气压    风速    风向
+<#list WeatherStationStatusData as ws>
+# ${ws_index+1}    ${ws.globalR?string("0.00")}    ${ws.directR?string("0.00")}    ${ws.diffuseR?string("0.00")}    ${ws.airT?string("0.00")}    ${ws.cellT?string("0.00")}    ${ws.rh}    ${ws.p}    ${ws.ws}     ${ws.wd}
+</#list>
+</RealWeather>
+
+</#if>
+<ForecastPowerReport>
+@ 序号   上报
+# 1    ${dqStatus}
+</ForecastPowerReport>
+
+<UltraShortTermForecastReport>
+@ 序号   上报
+# 1    ${cdqStatus}
+</UltraShortTermForecastReport>
+
+<UltraShortTermForecast>
+@ 序号    时间    功率预测    预计开机容量
+<#list ForecastPowerUltraShortTermHis as f>
+# ${f_index+1}    ${f.forecastTime?number_to_datetime?string("yyyyMMddHHmmss")!""}   ${f.ableValue?string("0.00")}    ${f.suCapacity?string("0.00")}
+</#list>
+</UltraShortTermForecast>
+
+<ForecastPower>
+@ 序号    时间    功率预测    预计开机容量
+<#list ForecastPowerShortTermHis as fp>
+# ${fp_index+1}    ${fp.forecastTime?number_to_datetime?string("yyyyMMddHHmmss")!""}   ${fp.ableValue?string("0.00")}    ${fp.suCapacity?string("0.00")}
+</#list>
+</ForecastPower>

+ 0 - 13
in-passback/src/test/java/com/jiayue/insu/inpassback/InPassbackApplicationTests.java

@@ -1,13 +0,0 @@
-package com.jiayue.insu.inpassback;
-
-import org.junit.jupiter.api.Test;
-import org.springframework.boot.test.context.SpringBootTest;
-
-@SpringBootTest
-class InPassbackApplicationTests {
-
-    @Test
-    void contextLoads() {
-    }
-
-}