浏览代码

删除gf模块

‘xugp 2 年之前
父节点
当前提交
23809f9a04
共有 69 个文件被更改,包括 35 次插入4159 次删除
  1. 二进制
      .gradle/7.4.2/checksums/checksums.lock
  2. 二进制
      .gradle/7.4.2/executionHistory/executionHistory.bin
  3. 二进制
      .gradle/7.4.2/executionHistory/executionHistory.lock
  4. 二进制
      .gradle/7.4.2/fileHashes/fileHashes.bin
  5. 二进制
      .gradle/7.4.2/fileHashes/fileHashes.lock
  6. 二进制
      .gradle/7.4.2/fileHashes/resourceHashesCache.bin
  7. 二进制
      .gradle/buildOutputCleanup/buildOutputCleanup.lock
  8. 二进制
      .gradle/file-system.probe
  9. 17 3
      .idea/sonarlint/issuestore/index.pb
  10. 9 8
      logs/warn.log
  11. 3 3
      report-fd/src/main/resources/templates/FaultReport.html
  12. 3 3
      report-fd/src/main/resources/templates/PvProReport.html
  13. 3 3
      report-fd/src/main/resources/templates/productionReport.html
  14. 0 16
      report-gf/README.md
  15. 0 52
      report-gf/build.gradle
  16. 0 23
      report-gf/src/main/java/com/gyee/wisdom/report/Bootstrap.java
  17. 0 45
      report-gf/src/main/java/com/gyee/wisdom/report/common/Common.java
  18. 0 69
      report-gf/src/main/java/com/gyee/wisdom/report/config/MyJsonConfig.java
  19. 0 77
      report-gf/src/main/java/com/gyee/wisdom/report/config/MyWebAppConfigurer.java
  20. 0 69
      report-gf/src/main/java/com/gyee/wisdom/report/config/cache/CacheService.java
  21. 0 49
      report-gf/src/main/java/com/gyee/wisdom/report/config/sqlite/Database.java
  22. 0 24
      report-gf/src/main/java/com/gyee/wisdom/report/controller/IndexController.java
  23. 0 63
      report-gf/src/main/java/com/gyee/wisdom/report/controller/ReportController.java
  24. 0 44
      report-gf/src/main/java/com/gyee/wisdom/report/controller/TestController.java
  25. 0 70
      report-gf/src/main/java/com/gyee/wisdom/report/entity/Parameter.java
  26. 0 30
      report-gf/src/main/java/com/gyee/wisdom/report/entity/WindpowerStation.java
  27. 0 45
      report-gf/src/main/java/com/gyee/wisdom/report/service/ReportService.java
  28. 0 603
      report-gf/src/main/java/com/gyee/wisdom/report/service/SeleniumService.java
  29. 0 77
      report-gf/src/main/java/com/gyee/wisdom/report/utils/ExcelClassField.java
  30. 0 28
      report-gf/src/main/java/com/gyee/wisdom/report/utils/ExcelExport.java
  31. 0 32
      report-gf/src/main/java/com/gyee/wisdom/report/utils/ExcelImport.java
  32. 0 229
      report-gf/src/main/java/com/gyee/wisdom/report/utils/ExcelUtil.java
  33. 0 1006
      report-gf/src/main/java/com/gyee/wisdom/report/utils/ExcelUtils.java
  34. 0 56
      report-gf/src/main/java/com/gyee/wisdom/report/utils/MD5Utils.java
  35. 0 91
      report-gf/src/main/java/com/gyee/wisdom/report/utils/ResponseWrapper.java
  36. 0 39
      report-gf/src/main/resources/application.yaml
  37. 0 8
      report-gf/src/main/resources/banner.txt
  38. 0 64
      report-gf/src/main/resources/log4j2.xml
  39. 二进制
      report-gf/src/main/resources/report.db
  40. 0 6
      report-gf/src/main/resources/static/bootstrap.min.css
  41. 0 6
      report-gf/src/main/resources/static/bootstrap.min.js
  42. 0 4
      report-gf/src/main/resources/static/jquery.min.js
  43. 0 3
      report-gf/src/main/resources/static/laydate/laydate.js
  44. 二进制
      report-gf/src/main/resources/static/laydate/theme/default/font/iconfont.eot
  45. 0 45
      report-gf/src/main/resources/static/laydate/theme/default/font/iconfont.svg
  46. 二进制
      report-gf/src/main/resources/static/laydate/theme/default/font/iconfont.ttf
  47. 二进制
      report-gf/src/main/resources/static/laydate/theme/default/font/iconfont.woff
  48. 0 1
      report-gf/src/main/resources/static/laydate/theme/default/laydate.css
  49. 0 1
      report-gf/src/main/resources/static/layui-v2.6.8/layui/css/layui.css
  50. 0 1
      report-gf/src/main/resources/static/layui-v2.6.8/layui/css/modules/code.css
  51. 0 1
      report-gf/src/main/resources/static/layui-v2.6.8/layui/css/modules/laydate/default/laydate.css
  52. 二进制
      report-gf/src/main/resources/static/layui-v2.6.8/layui/css/modules/layer/default/icon-ext.png
  53. 二进制
      report-gf/src/main/resources/static/layui-v2.6.8/layui/css/modules/layer/default/icon.png
  54. 0 1
      report-gf/src/main/resources/static/layui-v2.6.8/layui/css/modules/layer/default/layer.css
  55. 二进制
      report-gf/src/main/resources/static/layui-v2.6.8/layui/css/modules/layer/default/loading-0.gif
  56. 二进制
      report-gf/src/main/resources/static/layui-v2.6.8/layui/css/modules/layer/default/loading-1.gif
  57. 二进制
      report-gf/src/main/resources/static/layui-v2.6.8/layui/css/modules/layer/default/loading-2.gif
  58. 二进制
      report-gf/src/main/resources/static/layui-v2.6.8/layui/font/iconfont.eot
  59. 0 554
      report-gf/src/main/resources/static/layui-v2.6.8/layui/font/iconfont.svg
  60. 二进制
      report-gf/src/main/resources/static/layui-v2.6.8/layui/font/iconfont.ttf
  61. 二进制
      report-gf/src/main/resources/static/layui-v2.6.8/layui/font/iconfont.woff
  62. 二进制
      report-gf/src/main/resources/static/layui-v2.6.8/layui/font/iconfont.woff2
  63. 0 5
      report-gf/src/main/resources/static/layui-v2.6.8/layui/layui.js
  64. 0 102
      report-gf/src/main/resources/static/layui-v2.6.8/test.html
  65. 0 6
      report-gf/src/main/resources/static/layui-v2.6.8/免责声明.url
  66. 0 256
      report-gf/src/main/resources/static/md5.js
  67. 0 142
      report-gf/src/main/resources/templates/FaultReport.html
  68. 0 95
      report-gf/src/main/resources/templates/productionReport.html
  69. 0 1
      settings.gradle

二进制
.gradle/7.4.2/checksums/checksums.lock


二进制
.gradle/7.4.2/executionHistory/executionHistory.bin


二进制
.gradle/7.4.2/executionHistory/executionHistory.lock


二进制
.gradle/7.4.2/fileHashes/fileHashes.bin


二进制
.gradle/7.4.2/fileHashes/fileHashes.lock


二进制
.gradle/7.4.2/fileHashes/resourceHashesCache.bin


二进制
.gradle/buildOutputCleanup/buildOutputCleanup.lock


二进制
.gradle/file-system.probe


+ 17 - 3
.idea/sonarlint/issuestore/index.pb

@@ -23,8 +23,6 @@ A
 
lombok.config,8\2\823fe80d2650ec87c2614800da17ca3a55af96a9
 9
 	README.md,8\e\8ec9a00bfd09b3190ac6b22251dbb1aa95a0579d
-?
-settings.gradle,0\5\05efc8b1657769a27696d478ded1e95f38737233
 F
 report-fd/build.gradle,a\e\ae208822b4f47e3025c3c624e74e92be59da6f17
 C
@@ -90,4 +88,20 @@ Jreport-fd/src/main/java/com/gyee/wisdom/report/config/sqlite/Database.java,b\c
 t
 Dreport-fd/src/main/java/com/gyee/wisdom/report/entity/Parameter.java,3\2\326e62f25bbdaf952a6527b8659c82c8d1e3c00d
 y
-Ireport-fd/src/main/java/com/gyee/wisdom/report/service/ReportService.java,b\9\b94c05c26d92178520da18bf6952c6cd72a6b006
+Ireport-fd/src/main/java/com/gyee/wisdom/report/service/ReportService.java,b\9\b94c05c26d92178520da18bf6952c6cd72a6b006
+}
+Mreport-fd/src/main/java/com/gyee/wisdom/report/config/cache/CacheService.java,8\c\8cb7901059d035c46d5b7960abd35d6c0a895165
+~
+Nreport-fd/src/main/java/com/gyee/wisdom/report/controller/IndexController.java,f\5\f5d076b45a5df663c375cf9874151d845e0f1337
+o
+?report-fd/src/main/java/com/gyee/wisdom/report/entity/User.java,8\6\86befe70a85785721872430b52a2bee48d12f126
+{
+Kreport-fd/src/main/java/com/gyee/wisdom/report/entity/WindpowerStation.java,a\c\ac7df921dda2077d74dd8480067b6e053f2bc2bc
+{
+Kreport-fd/src/main/java/com/gyee/wisdom/report/service/SeleniumService.java,5\6\569f45308bab5b65986677dd6d12d44ffccb6074
+s
+Creport-fd/src/main/java/com/gyee/wisdom/report/utils/ExcelUtil.java,5\5\55fc1a57b170a7294343d8bbf922f6461ea35be3
+
+Oreport-fd/src/main/java/com/gyee/wisdom/report/controller/ReportController.java,c\6\c6068a7c3af344aa5376c9b5380720dc06eda591
+m
+=report-fd/src/main/java/com/gyee/wisdom/report/Bootstrap.java,8\7\8723d68b0d9c4c16e01b67cbdb7eeeccbf6e9793

+ 9 - 8
logs/warn.log

@@ -1,8 +1,9 @@
-2022-12-26 09:56:21.131  WARN main handleDeployment(Bootstrap.java:68) UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
-2022-12-26 09:59:40.716  WARN main handleDeployment(Bootstrap.java:68) UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
-2022-12-26 10:29:16.187  WARN main handleDeployment(Bootstrap.java:68) UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
-2022-12-26 10:59:47.536  WARN main handleDeployment(Bootstrap.java:68) UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
-2022-12-26 11:01:34.512  WARN main handleDeployment(Bootstrap.java:68) UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
-2022-12-26 13:19:53.108  WARN main handleDeployment(Bootstrap.java:68) UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
-2022-12-26 13:21:04.677  WARN main handleDeployment(Bootstrap.java:68) UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
-2022-12-26 13:22:31.052  WARN main handleDeployment(Bootstrap.java:68) UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
+2022-12-27 13:57:02.198  WARN main handleDeployment(Bootstrap.java:68) UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
+2022-12-27 14:01:50.431  WARN main handleDeployment(Bootstrap.java:68) UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
+2022-12-27 14:02:28.319  WARN main handleDeployment(Bootstrap.java:68) UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
+2022-12-27 14:03:00.805  WARN main handleDeployment(Bootstrap.java:68) UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
+2022-12-27 14:04:29.295  WARN main handleDeployment(Bootstrap.java:68) UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
+2022-12-27 14:04:49.485  WARN main handleDeployment(Bootstrap.java:68) UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
+2022-12-27 14:05:20.978  WARN main handleDeployment(Bootstrap.java:68) UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
+2022-12-27 14:05:45.140  WARN main handleDeployment(Bootstrap.java:68) UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used
+2022-12-27 14:06:58.095  WARN main handleDeployment(Bootstrap.java:68) UT026010: Buffer pool was not set on WebSocketDeploymentInfo, the default pool will be used

+ 3 - 3
report-fd/src/main/resources/templates/FaultReport.html

@@ -11,9 +11,9 @@
 </style>
 
 <body>
-<ul class="layui-nav layui-bg-blue" lay-bar="disabled">
+<ul class="layui-nav layui-bg-blue" lay-bar="disabled" style="height: 70px">
     <li class="layui-nav-item">
-        <a href="javascript:;">风电</a>
+        <a href="javascript:;" style="font-size: 30px">风电</a>
         <dl class="layui-nav-child">
             <dd><a href="http://localhost:8090/indexPro">生产日报</a></dd>
             <dd><a href="http://localhost:8090/indexFault">故障日报</a></dd>
@@ -21,7 +21,7 @@
     </li>
     <li class="layui-nav-item"></li>
     <li class="layui-nav-item">
-        <a href="javascript:;">光伏</a>
+        <a href="javascript:;" style="font-size: 30px">光伏</a>
         <dl class="layui-nav-child">
             <dd><a href="http://localhost:8090/indexPv">生产日报</a></dd>
         </dl>

+ 3 - 3
report-fd/src/main/resources/templates/PvProReport.html

@@ -11,9 +11,9 @@
 </style>
 
 <body>
-<ul class="layui-nav layui-bg-blue" lay-bar="disabled">
+<ul class="layui-nav layui-bg-blue" lay-bar="disabled" style="height: 70px">
     <li class="layui-nav-item">
-        <a href="javascript:;">风电</a>
+        <a href="javascript:;" style="font-size: 30px">风电</a>
         <dl class="layui-nav-child">
             <dd><a href="http://localhost:8090/indexPro">生产日报</a></dd>
             <dd><a href="http://localhost:8090/indexFault">故障日报</a></dd>
@@ -21,7 +21,7 @@
     </li>
     <li class="layui-nav-item"></li>
     <li class="layui-nav-item">
-        <a href="javascript:;">光伏</a>
+        <a href="javascript:;" style="font-size: 30px">光伏</a>
         <dl class="layui-nav-child">
             <dd><a href="http://localhost:8090/indexPv">生产日报</a></dd>
         </dl>

+ 3 - 3
report-fd/src/main/resources/templates/productionReport.html

@@ -11,9 +11,9 @@
 </style>
 
 <body>
-<ul class="layui-nav layui-bg-blue" lay-bar="disabled">
+<ul class="layui-nav layui-bg-blue" lay-bar="disabled" style="height: 70px">
     <li class="layui-nav-item">
-        <a href="javascript:;">风电</a>
+        <a href="javascript:;" style="font-size: 30px">风电</a>
         <dl class="layui-nav-child">
             <dd><a href="http://localhost:8090/indexPro">生产日报</a></dd>
             <dd><a href="http://localhost:8090/indexFault">故障日报</a></dd>
@@ -21,7 +21,7 @@
     </li>
     <li class="layui-nav-item"></li>
     <li class="layui-nav-item">
-        <a href="javascript:;">光伏</a>
+        <a href="javascript:;" style="font-size: 30px">光伏</a>
         <dl class="layui-nav-child">
             <dd><a href="http://localhost:8090/indexPv">生产日报</a></dd>
         </dl>

+ 0 - 16
report-gf/README.md

@@ -1,16 +0,0 @@
-# report
-
-
-## 光伏报表程序开发
-
-
-
-
-
-
-
-
-
-
-
-

+ 0 - 52
report-gf/build.gradle

@@ -1,52 +0,0 @@
-buildscript {
-    repositories {
-        mavenLocal()
-        maven {
-            allowInsecureProtocol = true
-            url "http://maven.aliyun.com/nexus/content/groups/public" }
-        mavenCentral()
-    }
-    dependencies {
-        classpath("$bootGroup:spring-boot-gradle-plugin:$springBootVersion")
-    }
-}
-
-
-version = "2.0.1"
-
-apply plugin: "$bootGroup"
-apply plugin: "io.spring.dependency-management"
-
-
-dependencies {
-
-
-    implementation("org.xerial:sqlite-jdbc:$sqliteJdbc")
-    implementation("org.apache.commons:commons-lang3:$commonsLang3Version")
-    implementation("$bootGroup:spring-boot-starter-web"){
-        exclude group:"org.springframework.boot:spring-boot-starter-json"
-        exclude group:"com.fasterxml.jackson.core:jackson-databind"
-    }
-    implementation("$bootGroup:spring-boot-starter-undertow")
-    implementation("$bootGroup:spring-boot-starter-websocket")
-    implementation("org.apache.logging.log4j:log4j-core:$log4jVersion")
-    implementation("org.apache.logging.log4j:log4j-jul:$log4jVersion")
-    implementation("org.apache.logging.log4j:log4j-api:$log4jVersion")
-    implementation("org.apache.logging.log4j:log4j-slf4j-impl:$log4jVersion")
-    implementation ("com.alibaba:druid:$alibabaDruidVersion")
-    implementation ("com.alibaba:fastjson:$fastjsonVersion")
-    testImplementation("$bootGroup:spring-boot-starter-test")
-
-    implementation group: "io.jsonwebtoken", name: "jjwt", version: "0.9.0"
-    implementation("org.apache.poi:poi-ooxml:$poiVersion")
-    implementation("net.sourceforge.jexcelapi:jxl:2.6.12")
-    implementation("org.apache.poi:poi:$poiVersion")
-    implementation("org.jsoup:jsoup:1.8.3")
-    implementation("org.springframework.boot:spring-boot-starter-thymeleaf")
-    implementation("org.seleniumhq.selenium:selenium-java:3.4.0")
-    implementation("org.dom4j:dom4j:2.1.3")
-    implementation "org.springdoc:springdoc-openapi-ui:1.6.6"
-
-
-}
-

+ 0 - 23
report-gf/src/main/java/com/gyee/wisdom/report/Bootstrap.java

@@ -1,23 +0,0 @@
-
-package com.gyee.wisdom.report;
-
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.web.servlet.ServletComponentScan;
-import org.springframework.cache.annotation.EnableCaching;
-
-
-/**
- * @author xugp
- */
-
-@EnableCaching
-@SpringBootApplication
-@ServletComponentScan
-public class Bootstrap {
-
-    public static void main(String[] args) {
-
-        SpringApplication.run(Bootstrap.class, args);
-    }
-}

+ 0 - 45
report-gf/src/main/java/com/gyee/wisdom/report/common/Common.java

@@ -1,45 +0,0 @@
-package com.gyee.wisdom.report.common;
-
-import org.openqa.selenium.chrome.ChromeOptions;
-
-import java.util.HashMap;
-import java.util.Map;
-
-public class Common {
-
-
-    /**
-     * chrome添加参数
-     * @param options
-     * @return
-     */
-    public static ChromeOptions addArguments(ChromeOptions options){
-        options.addArguments("disable-infobars");
-        // 浏览器不提供可视化页面. linux下如果系统不支持可视化不加这条会启动失败
-        options.addArguments("--headless");
-        // 启动无沙盒模式运行,以最高权限运行
-        options.addArguments("--no-sandbox");
-
-        // 优化参数
-        // 不加载图片, 提升速度
-        options.addArguments("blink-settings=imagesEnabled=false");
-        options.addArguments("--disable-dev-shm-usage");
-        // 禁用gpu渲染
-        options.addArguments("--disable-gpu");
-
-        // 禁用阻止弹出窗口
-        options.addArguments("--disable-popup-blocking");
-        // 禁用扩展
-        options.addArguments("disable-extensions");
-        // 禁用JavaScript
-        options.addArguments("--disable-javascript");
-        // 默认浏览器检查
-        options.addArguments("no-default-browser-check");
-        Map<String, Object> prefs = new HashMap();
-        prefs.put("credentials_enable_service", false);
-        prefs.put("profile.password_manager_enabled", false);
-        // 禁用保存密码提示框
-        options.setExperimentalOption("prefs", prefs);
-        return options;
-    }
-}

+ 0 - 69
report-gf/src/main/java/com/gyee/wisdom/report/config/MyJsonConfig.java

@@ -1,69 +0,0 @@
-package com.gyee.wisdom.report.config;
-
-import com.alibaba.fastjson.serializer.NameFilter;
-import com.alibaba.fastjson.serializer.SerializeConfig;
-import com.alibaba.fastjson.serializer.SerializerFeature;
-import com.alibaba.fastjson.support.config.FastJsonConfig;
-import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.http.MediaType;
-import org.springframework.http.converter.HttpMessageConverter;
-import org.springframework.http.converter.StringHttpMessageConverter;
-import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
-
-import java.nio.charset.Charset;
-import java.util.ArrayList;
-import java.util.List;
-import java.util.TimeZone;
-
-/**
- * @description:
- * @auther: xugp
- * @date: 2022-04-06
- */
-@Configuration
-public class MyJsonConfig implements WebMvcConfigurer {
-    //springboot 默认通过jackson来转化json,@JSONField(....)是fastjson的注解,因此要添加如下配置
-    //Long类型在前端js中会丢失精度
-
-    public FastJsonHttpMessageConverter fastJsonHttpMessageConverters() {
-        TimeZone.setDefault(TimeZone.getTimeZone("GMT+8"));
-        FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessageConverter();
-        FastJsonConfig fastJsonConfig = new FastJsonConfig();
-        NameFilter nameFilter = (object, name, value) -> name;
-        SerializeConfig serializeConfig = fastJsonConfig.getSerializeConfig();
-        // serializeConfig .addFilter(SwaggerWelcomeWebMvc.class, nameFilter);
-        // serializeConfig.put(String.class,MyStringSerializer.instance);
-        fastJsonConfig.setSerializeConfig(serializeConfig);
-
-        fastJsonConfig.setDateFormat("yyyy-MM-dd HH:mm:ss");    //自定义时间格式
-        fastJsonConfig.setSerializerFeatures(
-                SerializerFeature.DisableCircularReferenceDetect
-                ,SerializerFeature.WriteMapNullValue
-                ,SerializerFeature.WriteDateUseDateFormat
-        );  //关闭循环引用,正常转换null值,格式化
-
-        fastConverter.setFastJsonConfig(fastJsonConfig);
-        List<MediaType> fastMediaTypes = new ArrayList<>();
-        fastMediaTypes.add(MediaType.APPLICATION_JSON_UTF8);
-        fastConverter.setSupportedMediaTypes(fastMediaTypes);
-        // HttpMessageConverter<?> converter = fastConverter;
-        return fastConverter;
-    }
-    public HttpMessageConverter<String> stringConverter() {
-        StringHttpMessageConverter converter = new StringHttpMessageConverter(
-                Charset.forName("UTF-8"));
-        return converter;
-    }
-    @Override
-    public void extendMessageConverters(List<HttpMessageConverter<?>> converters) {
-
-        // converters.clear();
-         converters.add(stringConverter());
-//        List<HttpMessageConverter<?>> collect = converters.stream().filter(s ->s instanceof StringHttpMessageConverter).collect(Collectors.toList());
-//        converters.removeAll(collect);
-        converters.add( fastJsonHttpMessageConverters());
-
-    }
-
-}

+ 0 - 77
report-gf/src/main/java/com/gyee/wisdom/report/config/MyWebAppConfigurer.java

@@ -1,77 +0,0 @@
-package com.gyee.wisdom.report.config;
-
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.web.cors.CorsConfiguration;
-import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
-import org.springframework.web.filter.CorsFilter;
-import org.springframework.web.servlet.config.annotation.CorsRegistry;
-import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
-import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
-import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
-
-/**
- * 拦截器
- *
- * @author xugp
- * @ClassName: MyWebAppConfigurer
- * @date 2022年12月01日
- */
-@Configuration
-public class MyWebAppConfigurer implements WebMvcConfigurer {
-
-    private static Logger logger = LoggerFactory.getLogger(WebMvcConfigurationSupport.class);
-
-
-    /**
-     * 解决跨域问题
-     **/
-    @Override
-    public void addCorsMappings(CorsRegistry registry) {
-
-        registry.addMapping("/**")
-                // 设置允许跨域请求的域名
-               // .allowedOrigins("*")
-                .allowedOriginPatterns("*")
-                // 是否允许证书
-                .allowCredentials(true)
-                // 设置允许的方法
-                .allowedMethods("GET", "POST", "DELETE", "PUT")
-                // 设置允许的header属性
-                .allowedHeaders("*")
-                // 跨域允许时间
-                .maxAge(3600);
-        //super.addCorsMappings(registry);
-
-    }
-
-    @Bean
-    public CorsFilter corsFilter() {
-        CorsConfiguration config = new CorsConfiguration();
-        //允许白名单域名进行跨域调用
-        config.addAllowedOriginPattern("*");
-        //允许跨越发送cookie
-        config.setAllowCredentials(true);
-        //放行全部原始头信息
-        config.addAllowedHeader("*");
-        //允许所有请求方法跨域调用
-        config.addAllowedMethod("*");
-        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
-        source.registerCorsConfiguration("/**", config);
-        return new CorsFilter(source);
-    }
-
-
-    @Override
-    public void addResourceHandlers(ResourceHandlerRegistry registry) {
-        registry.addResourceHandler("swagger-ui/")
-                .addResourceLocations("classpath:/META-INF/resources/");
-        registry.addResourceHandler("swagger-ui.html")
-                .addResourceLocations("classpath:/META-INF/resources/");
-
-        registry.addResourceHandler("/webjars/**")
-                .addResourceLocations("classpath:/META-INF/resources/webjars/");
-    }
-}

+ 0 - 69
report-gf/src/main/java/com/gyee/wisdom/report/config/cache/CacheService.java

@@ -1,69 +0,0 @@
-package com.gyee.wisdom.report.config.cache;
-
-
-import com.gyee.wisdom.report.config.sqlite.Database;
-import com.gyee.wisdom.report.entity.WindpowerStation;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-
-import java.sql.Connection;
-import java.sql.PreparedStatement;
-import java.sql.ResultSet;
-import java.util.ArrayList;
-import java.util.List;
-
-
-@Component
-public class CacheService {
-
-    @Autowired
-    private Database db;
-
-    private List<WindpowerStation> windpowerStations;
-
-
-    public List<WindpowerStation> getWindpowerStations() {
-        if (windpowerStations == null) {
-            windpowerStations = loadWindPowerStations();
-        }
-
-        return windpowerStations;
-    }
-
-    public int getSerial(String wname,String areaid){
-
-        List<WindpowerStation> windpowerStations = getWindpowerStations();
-        for (WindpowerStation windpowerStation : windpowerStations){
-            if (windpowerStation.getWname().equals(wname) && windpowerStation.getAreaid().equals(areaid)){
-                return windpowerStation.getSerial();
-            }
-        }
-        return 1;
-    }
-
-
-    private List<WindpowerStation> loadWindPowerStations() {
-        // DONE: 从数据库中加载WindpowerStation
-        List<WindpowerStation> windpowerStationList = new ArrayList<>();
-        try {
-            Connection conn = db.getConnection();
-            String sql = "select * from windpowerstation";
-            PreparedStatement ps = conn.prepareStatement(sql);
-            ResultSet rs = ps.executeQuery();
-            while (rs.next()) {
-                WindpowerStation windpowerStation = new WindpowerStation();
-                windpowerStation.setId(rs.getInt("id"));
-                windpowerStation.setWname(rs.getString("wname"));
-                windpowerStation.setSerial(rs.getInt("serial"));
-                windpowerStation.setArea(rs.getString("area"));
-                windpowerStation.setAreaid(rs.getString("areaid"));
-                windpowerStationList.add(windpowerStation);
-            }
-        } catch (Exception e) {
-            e.printStackTrace();
-        }finally {
-            db.releaseResource();
-        }
-        return windpowerStationList;
-    }
-}

+ 0 - 49
report-gf/src/main/java/com/gyee/wisdom/report/config/sqlite/Database.java

@@ -1,49 +0,0 @@
-package com.gyee.wisdom.report.config.sqlite;
-
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.stereotype.Component;
-
-import java.sql.Connection;
-import java.sql.DriverManager;
-import java.sql.SQLException;
-
-@Component
-public class Database {
-
-    @Value("${spring.datasource.driver-class-name}")
-    private String driver;
-
-    @Value("${spring.datasource.url}")
-    private String url;
-
-    private Connection connection = null;
-
-
-
-    public Connection getConnection() throws Exception {
-//        if (connection == null || connection.isClosed()) {
-//
-//        }
-        try{
-            Class.forName(driver);
-            connection = DriverManager.getConnection(url);
-            System.out.println("数据库连接成功");
-
-        }catch (Exception e){
-            throw new Exception(e.getMessage());
-        }
-
-        return connection;
-    }
-
-    //释放资源
-    public void releaseResource(){
-        if(connection!=null){
-            try{
-                connection.close();
-            }catch (SQLException e){
-                e.printStackTrace();
-            }
-        }
-    }
-}

+ 0 - 24
report-gf/src/main/java/com/gyee/wisdom/report/controller/IndexController.java

@@ -1,24 +0,0 @@
-package com.gyee.wisdom.report.controller;
-
-import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.RequestMapping;
-
-/**
- * @author :xugp
- * @date :Created in 2022/11/16 9:29
- * @description:导入控制器
- * @modified By:
- * @version: $
- */
-
-@Controller
-public class IndexController {
-
-    //miss生产日报
-    @RequestMapping("/indexPro")
-    public String indexPro()
-    {
-        return "productionReport";
-    }
-
-}

+ 0 - 63
report-gf/src/main/java/com/gyee/wisdom/report/controller/ReportController.java

@@ -1,63 +0,0 @@
-package com.gyee.wisdom.report.controller;
-
-
-import com.gyee.wisdom.report.service.SeleniumService;
-import com.gyee.wisdom.report.service.ReportService;
-import com.gyee.wisdom.report.utils.ResponseWrapper;
-import io.swagger.v3.oas.annotations.Operation;
-import io.swagger.v3.oas.annotations.tags.Tag;
-
-import lombok.extern.slf4j.Slf4j;
-import org.apache.poi.ss.formula.functions.T;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-import org.springframework.web.multipart.MultipartFile;
-
-import javax.servlet.http.HttpServletRequest;
-
-import java.util.List;
-import java.util.Map;
-
-
-/**
- * @author :xugp
- * @date :Created in 2022/10/27 15:50
- * @description:报表接口
- * @modified By:
- * @version: $
- */
-@Slf4j
-@RestController
-@RequestMapping("/report")
-@Tag(name = "报表接口")
-public class ReportController {
-
-
-
-    @Autowired
-    private ReportService reportService;
-
-
-    @Autowired
-    private SeleniumService seleniumService;
-
-
-
-    @Operation(description = "生产日报报表导入")
-    @PostMapping(value = "/importPro")
-    @ResponseBody
-    public ResponseWrapper ImportPro(@RequestParam(value = "file", required = false) MultipartFile file,
-                                           HttpServletRequest request, String departId) throws Exception {
-
-        log.info("开始导入");
-        ResponseWrapper<T> wrapper = new ResponseWrapper<T>();
-        if (!file.isEmpty()) {
-            //得到三个sheet页数据
-            Map<Integer, List<String[]>> map = reportService.commonReport(file);
-            seleniumService.loginAndWrite(map,departId);
-            wrapper.setMsg("填报成功");
-        }
-        return wrapper;
-    }
-
-}

+ 0 - 44
report-gf/src/main/java/com/gyee/wisdom/report/controller/TestController.java

@@ -1,44 +0,0 @@
-package com.gyee.wisdom.report.controller;
-
-
-import org.openqa.selenium.By;
-import org.openqa.selenium.WebDriver;
-import org.openqa.selenium.WebElement;
-import org.openqa.selenium.chrome.ChromeDriver;
-
-import java.time.Duration;
-
-public class TestController {
-
-    private final static String driver = "webdriver.chrome.driver";
-    private final static String chromeDriver = "C:\\Program Files\\Google\\Chrome\\Application\\chromedriver.exe";
-
-    public static void main(String[] args) {
-        try {
-            System.out.println("打开浏览器进行操作");
-            System.setProperty(driver,chromeDriver);
-            //获取控制 打开浏览器
-            WebDriver driver = new ChromeDriver();
-            driver.manage().window().maximize();//浏览器最大化
-            //超时等待30秒
-            Duration duration = Duration.ofSeconds(30);
-            driver.manage().timeouts().implicitlyWait(duration);
-            //跳转到百度浏览器
-            driver.get("http://www.baidu.com/");
-            //操作浏览器 获取到输入框
-            WebElement kk = driver.findElement(By.id("kw"));
-            //然后向百度输入框输入selenium java
-            kk.sendKeys("java");
-            //通过元素属性id=su找到百度一下搜索按钮
-            WebElement btn = driver.findElement(By.id("su"));
-            //对按钮进行点击操作
-            btn.click();
-        }catch (Exception e){
-            e.printStackTrace();
-        }
-
-
-    }
-
-
-}

+ 0 - 70
report-gf/src/main/java/com/gyee/wisdom/report/entity/Parameter.java

@@ -1,70 +0,0 @@
-package com.gyee.wisdom.report.entity;
-
-import lombok.Data;
-
-/**
- * @author :xugp
- * @date :Created in 2022/11/8 14:30
- * @description:参数对象
- * @modified By:
- * @version: $
- */
-@Data
-public class Parameter {
-
-    //用户名
-    private String userName;
-
-    //密码
-    private String passWord;
-
-    private String userValidate;
-
-    //部门Id
-    private String departId;
-
-    //时间
-    private String dataDom;
-    //数据
-    private String dataL_ID;
-
-    private String dataL_DATA;
-
-    private String dataRT_ID;
-
-    private String dataRT_DATA;
-
-    private String dataRB_ID;
-
-    private String dataRB_DATA;
-
-    private String PROGRAM_USERVALIDATE;
-
-    private String _PROGRAMNO;
-
-    private String _PKVALUE;
-
-    private String _CURRENTLANGUAGE;
-
-    private String _CURRENTUSERID;
-
-    private String isSYS;
-
-    private String SPRBZBMST__0__CST_ID;
-
-    private String SPRBZBMST__0__RBZB_DAT;
-
-
-
-
-    private String serviceName;
-    private String SPSBGZMST__0__CST_ID;
-    private String SPSBGZMST__0__BEG_DAT;
-    private String SPSBGZMST__0__FSTUSR_ID;
-    private String SPSBGZMST__0__FSTUSR_DTM;
-    private String SPSBGZMST__0__LSTUSR_ID;
-    private String SPSBGZMST__0__LSTUSR_DTM;
-
-
-
-}

+ 0 - 30
report-gf/src/main/java/com/gyee/wisdom/report/entity/WindpowerStation.java

@@ -1,30 +0,0 @@
-package com.gyee.wisdom.report.entity;
-
-import lombok.Data;
-
-/**
- * @author :xugp
- * @date :Created in 2022/12/7 9:40
- * @description:场站
- * @modified By:
- * @version: $
- */
-
-@Data
-public class WindpowerStation {
-
-    //id
-    private int id;
-
-    //场站名称
-    private String wname;
-
-    //序号
-    private int serial;
-
-    //场站区域
-    private String area;
-
-    //场站区域id
-    private String areaid;
-}

+ 0 - 45
report-gf/src/main/java/com/gyee/wisdom/report/service/ReportService.java

@@ -1,45 +0,0 @@
-package com.gyee.wisdom.report.service;
-
-import com.gyee.wisdom.report.utils.ExcelUtil;
-import lombok.extern.slf4j.Slf4j;
-import org.jsoup.Jsoup;
-import org.jsoup.nodes.Document;
-import org.jsoup.nodes.Element;
-import org.jsoup.select.Elements;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.web.multipart.MultipartFile;
-
-import java.io.*;
-import java.net.URLEncoder;
-import java.util.*;
-
-@Service
-@Slf4j
-public class ReportService {
-
-
-
-    public Map<Integer, List<String[]>> commonReport(MultipartFile file) {
-
-        Map<Integer, List<String[]>> map = new HashMap<>();
-        try {
-            //获取原始的文件名
-            String originalFilename = file.getOriginalFilename();
-            //获取文件类型
-            String fileType = originalFilename.substring(originalFilename.lastIndexOf(".") + 1, originalFilename.length());
-            //默认从第一行开始读取
-            Integer startRows = 1;
-            //获取输入流
-            InputStream is = file.getInputStream();
-            //Excel导入导出的单元类
-            map = ExcelUtil.readData(fileType, startRows, true, is);
-        }
-        catch (IOException e) {
-            log.info(e.getMessage(),"获取文件失败");
-        }finally {
-            return map;
-        }
-    }
-
-}

+ 0 - 603
report-gf/src/main/java/com/gyee/wisdom/report/service/SeleniumService.java

@@ -1,603 +0,0 @@
-package com.gyee.wisdom.report.service;
-
-
-import com.gyee.wisdom.report.config.cache.CacheService;
-import org.openqa.selenium.By;
-import org.openqa.selenium.WebDriver;
-import org.openqa.selenium.WebElement;
-import org.openqa.selenium.chrome.ChromeDriver;
-import org.openqa.selenium.interactions.Actions;
-import org.openqa.selenium.support.ui.Select;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.stereotype.Service;
-
-import java.time.Duration;
-import java.util.List;
-import java.util.Map;
-import java.util.stream.Collectors;
-
-@Service
-public class SeleniumService {
-
-    @Value("${chromeDriver}")
-    String chromeDriver;
-
-    @Value("${password}")
-    String password;
-
-    @Autowired
-    private CacheService cacheService;
-
-    private final static String driver1 = "webdriver.chrome.driver";
-    //本地谷歌浏览器地址  C:\Program Files\Google\Chrome\Application\chromedriver.exe
-    //private final static String chromeDriver = "C:\\Users\\戴尔\\AppData\\Local\\Google\\Chrome\\Application\\chromedriver.exe";
-
-    public void loginAndWrite(Map<Integer, List<String[]>> map, String departId) {
-        WebDriver webDriver = null;
-        try {
-            List<String[]> strings = map.get(1);
-            strings.remove(0);
-            //截取excel行
-            List<String[]> list3 = map.get(2);
-            List<String[]> listExcel = list3.subList(5,list3.size()-1);
-            System.out.println("打开浏览器进行操作");
-            System.setProperty(driver1,chromeDriver);
-            WebDriver driver = new ChromeDriver();
-            driver.manage().window().maximize();//浏览器最大化
-            //超时等待30秒
-            Duration duration = Duration.ofSeconds(30);
-            driver.manage().timeouts().implicitlyWait(duration);
-            //跳转到浏览器
-            driver.get("http://10.65.17.158:7001/Liems/");
-            Thread.sleep(2000);
-            //操作浏览器 获取到输入框
-            WebElement kk = driver.findElement(By.id("userName"));
-            //然后向输入框输入selenium java
-            kk.sendKeys(departId);
-            Thread.sleep(1000);
-            //操作浏览器 获取到输入框
-            WebElement kk2 = driver.findElement(By.id("password"));
-            //然后向输入框输入selenium java
-            kk2.sendKeys(password);
-            Thread.sleep(1000);
-            WebElement btn = driver.findElement(By.id("submitBtn"));
-            //对按钮进行点击操作
-            btn.click();
-            Thread.sleep(1000);
-            Actions actions = new Actions(driver);
-            WebElement btn2 = driver.findElement(By.id("topMenuDiv_0_-01100001602"));
-            btn2.click();
-            Thread.sleep(2000);
-            WebElement btn3 = driver.findElement(By.id("tree_NodeLabel_M261"));
-            btn3.click();
-            Thread.sleep(2000);
-            WebElement btn4 = driver.findElement(By.id("tree_NodeLabel_P1627"));
-            btn4.click();
-            Thread.sleep(10000);
-
-
-            //填写frameL表格数据
-            System.out.println("开始填写Left数据");
-            WebElement mainFrame2 = driver.findElement(By.id("mainFrame"));
-            driver.switchTo().frame(mainFrame2);
-            WebElement frameL = driver.findElement(By.id("frameL"));
-            driver.switchTo().frame(frameL);
-            WebElement report2 = driver.findElement(By.id("report1"));
-            System.out.println("取excel的Left数据");
-//            WebElement report1_D3 = report2.findElement(By.id("report1_D3"));
-//            actions.doubleClick(report1_D3).sendKeys(strings.get(0)[1]).perform();
-//
-//            WebElement report1_D4 = report2.findElement(By.id("report1_D4"));
-//            actions.doubleClick(report1_D4).sendKeys(strings.get(1)[1]).perform();
-
-            WebElement report1_D5 = report2.findElement(By.id("report1_D5"));
-            actions.doubleClick(report1_D5).sendKeys(strings.get(2)[1]).perform();
-
-            WebElement report1_D6 = report2.findElement(By.id("report1_D6"));
-            actions.doubleClick(report1_D6).sendKeys(strings.get(3)[1]).perform();
-
-            WebElement report1_D11 = report2.findElement(By.id("report1_D11"));
-            actions.doubleClick(report1_D11).sendKeys(strings.get(4)[1]).perform();
-
-            WebElement report1_D24 = report2.findElement(By.id("report1_D24"));
-            actions.doubleClick(report1_D24).sendKeys(strings.get(5)[1]).perform();
-
-            WebElement report1_D25 = report2.findElement(By.id("report1_D25"));
-            actions.doubleClick(report1_D25).sendKeys(strings.get(6)[1]).perform();
-
-            WebElement report1_D28 = report2.findElement(By.id("report1_D28"));
-            actions.doubleClick(report1_D28).sendKeys(strings.get(7)[1]).perform();
-
-            WebElement report1_D29 = report2.findElement(By.id("report1_D29"));
-            actions.doubleClick(report1_D29).sendKeys(strings.get(8)[1]).perform();
-
-            WebElement report1_D36 = report2.findElement(By.id("report1_D36"));
-            report1_D36.click();
-            WebElement report1_editBox = driver.findElement(By.id("report1_editBox"));
-            report1_editBox.clear();
-            report1_editBox.sendKeys(strings.get(11)[1]);
-
-            WebElement report1_D43 = report2.findElement(By.id("report1_D43"));
-            report1_D43.click();
-            WebElement report1_editBox5 = driver.findElement(By.id("report1_editBox"));
-            report1_editBox5.clear();
-            report1_editBox5.sendKeys(strings.get(12)[1]);
-
-            WebElement report1_D44 = report2.findElement(By.id("report1_D44"));
-            report1_D44.click();
-            WebElement report1_editBox4 = driver.findElement(By.id("report1_editBox"));
-            report1_editBox4.clear();
-            report1_editBox4.sendKeys(strings.get(13)[1]);
-
-            WebElement report1_D45 = report2.findElement(By.id("report1_D45"));
-            actions.doubleClick(report1_D45).sendKeys(strings.get(14)[1]).perform();
-
-            WebElement report1_D46 = report2.findElement(By.id("report1_D46"));
-            actions.doubleClick(report1_D46).sendKeys(strings.get(15)[1]).perform();
-
-            WebElement report1_D48 = report2.findElement(By.id("report1_D48"));
-            report1_D48.click();
-            WebElement report1_editBox6 = driver.findElement(By.id("report1_editBox"));
-            report1_editBox6.clear();
-            report1_editBox6.sendKeys(strings.get(16)[1]);
-            actions.doubleClick(report1_D48).sendKeys(strings.get(16)[1]).perform();
-
-            WebElement report1_D52 = report2.findElement(By.id("report1_D52"));
-            report1_D52.click();
-            WebElement report1_editBox2 = driver.findElement(By.id("report1_editBox"));
-            report1_editBox2.clear();
-            report1_editBox2.sendKeys(strings.get(17)[1]);
-
-            WebElement report1_D56 = report2.findElement(By.id("report1_D56"));
-            report1_D56.click();
-            WebElement report1_editBox7 = driver.findElement(By.id("report1_editBox"));
-            report1_editBox7.clear();
-            report1_editBox7.sendKeys(strings.get(18)[1]);
-
-            WebElement report1_D63 = report2.findElement(By.id("report1_D63"));
-            report1_D63.click();
-            WebElement report1_editBox8 = driver.findElement(By.id("report1_editBox"));
-            report1_editBox8.clear();
-            report1_editBox8.sendKeys(strings.get(19)[1]);
-
-            WebElement report1_D79 = report2.findElement(By.id("report1_D79"));
-            report1_D79.click();
-            WebElement report1_textArea = driver.findElement(By.id("report1_textArea"));
-            report1_textArea.clear();
-            actions.doubleClick(report1_textArea).sendKeys(strings.get(20)[1]).perform();
-            System.out.println("------------leftData表格数据填写完成------------------");
-            // 切出iframe
-            driver.switchTo().defaultContent();
-            //找到frameRB
-            WebElement mainFrame = driver.findElement(By.id("mainFrame"));
-            driver.switchTo().frame(mainFrame);
-            WebElement frameRT = driver.findElement(By.id("frameRT"));
-            driver.switchTo().frame(frameRT);
-            WebElement report4 = driver.findElement(By.id("report1"));
-
-            //DataRT表格数据填写
-            System.out.println("DataRT表格数据填写");
-            for (int i = 4;i < listExcel.size() + 4;i++){
-                WebElement report1_H = report4.findElement(By.id("report1_H"+i));
-                actions.doubleClick(report1_H).sendKeys(listExcel.get(i-4)[6]).perform();
-
-                WebElement report1_I = report4.findElement(By.id("report1_I"+i));
-                actions.doubleClick(report1_I).sendKeys(listExcel.get(i-4)[7]).perform();
-
-                // 切出iframe
-                driver.switchTo().defaultContent();
-                WebElement mainFrame5 = driver.findElement(By.id("mainFrame"));
-                driver.switchTo().frame(mainFrame5);
-                WebElement frameRT1 = driver.findElement(By.id("frameRT"));
-                driver.switchTo().frame(frameRT1);
-                WebElement for1 = driver.findElement(By.id("report1"));
-                WebElement report1_K = for1.findElement(By.id("report1_K"+i));
-                report1_K.click();
-                WebElement odiv_0 = driver.findElement(By.id("odiv_0"));
-                driver.switchTo().frame(odiv_0);
-                int dataictonary = dataictonary(listExcel.get(i - 4)[9]);
-                WebElement div1 = driver.findElement(By.xpath("//html/body/div[1]/table/tbody/tr[" + dataictonary + "]"));
-                actions.moveToElement(div1).click().perform();
-                // 切出iframe
-                driver.switchTo().defaultContent();
-                WebElement mainFrame6 = driver.findElement(By.id("mainFrame"));
-                driver.switchTo().frame(mainFrame6);
-                WebElement frameRT6 = driver.findElement(By.id("frameRT"));
-                driver.switchTo().frame(frameRT6);
-                WebElement report3 = driver.findElement(By.id("report1"));
-
-                WebElement report1_O = report3.findElement(By.id("report1_O"+i));
-                actions.doubleClick(report1_O).sendKeys(listExcel.get(i-4)[11]).perform();
-
-                WebElement report1_R = report3.findElement(By.id("report1_R"+i));
-                actions.doubleClick(report1_R).sendKeys(listExcel.get(i-4)[14]).perform();
-
-                WebElement report1_S = report3.findElement(By.id("report1_S"+i));
-                actions.doubleClick(report1_S).sendKeys(listExcel.get(i-4)[15]).perform();
-
-                WebElement report2Element = report3.findElement(By.id("report1_T"+i));
-                actions.doubleClick(report2Element).sendKeys(listExcel.get(i-4)[16]).perform();
-
-                WebElement report1_T = report3.findElement(By.id("report1_U"+i));
-                actions.doubleClick(report1_T).sendKeys(listExcel.get(i-4)[17]).perform();
-
-                WebElement report1_V = report3.findElement(By.id("report1_V"+i));
-                actions.doubleClick(report1_V).sendKeys(listExcel.get(i-4)[18]).perform();
-
-                WebElement report1_W = report3.findElement(By.id("report1_W"+i));
-                actions.doubleClick(report1_W).sendKeys(listExcel.get(i-4)[19]).perform();
-
-                WebElement report1_AG = report3.findElement(By.id("report1_AG"+i));
-                actions.doubleClick(report1_AG).sendKeys(listExcel.get(i-4)[26]).perform();
-
-                WebElement report1_AH = report3.findElement(By.id("report1_AH"+i));
-                actions.doubleClick(report1_AH).sendKeys(listExcel.get(i-4)[27]).perform();
-
-                WebElement report1_AI = report3.findElement(By.id("report1_AI"+i));
-                actions.doubleClick(report1_AI).sendKeys(listExcel.get(i-4)[28]).perform();
-
-                WebElement report1_AR = report3.findElement(By.id("report1_AR"+i));
-                actions.doubleClick(report1_AR).sendKeys(listExcel.get(i-4)[33]).perform();
-
-                WebElement report1_AU = report3.findElement(By.id("report1_AU"+i));
-                actions.doubleClick(report1_AU).sendKeys(listExcel.get(i-4)[36]).perform();
-
-                WebElement report1_AV = report3.findElement(By.id("report1_AV"+i));
-                actions.doubleClick(report1_AV).sendKeys(listExcel.get(i-4)[37]).perform();
-
-                WebElement report1_AY = report3.findElement(By.id("report1_AY"+i));
-                actions.doubleClick(report1_AY).sendKeys(listExcel.get(i-4)[38]).perform();
-
-                WebElement report1_BB = report3.findElement(By.id("report1_BB"+i));
-                actions.doubleClick(report1_BB).sendKeys(listExcel.get(i-4)[41]).perform();
-
-                WebElement report1_BC = report3.findElement(By.id("report1_BC"+i));
-                actions.doubleClick(report1_BC).sendKeys(listExcel.get(i-4)[42]).perform();
-
-                WebElement report1_BE = report3.findElement(By.id("report1_BE"+i));
-                actions.doubleClick(report1_BE).sendKeys(listExcel.get(i-4)[44]).perform();
-
-                WebElement report1_BF = report3.findElement(By.id("report1_BF"+i));
-                actions.doubleClick(report1_BF).sendKeys(listExcel.get(i-4)[45]).perform();
-
-                WebElement report1_BG = report3.findElement(By.id("report1_BG"+i));
-                actions.doubleClick(report1_BG).sendKeys(listExcel.get(i-4)[46]).perform();
-
-                WebElement report1_BI = report3.findElement(By.id("report1_BI"+i));
-                actions.doubleClick(report1_BI).sendKeys(listExcel.get(i-4)[47]).perform();
-
-                WebElement report1_BM = report3.findElement(By.id("report1_BM"+i));
-                actions.doubleClick(report1_BM).sendKeys(listExcel.get(i-4)[51]).perform();
-
-                WebElement report1_BN = report3.findElement(By.id("report1_BN"+i));
-                actions.doubleClick(report1_BN).sendKeys(listExcel.get(i-4)[52]).perform();
-
-                WebElement report1_BQ = report3.findElement(By.id("report1_BQ"+i));
-                actions.doubleClick(report1_BQ).sendKeys(listExcel.get(i-4)[54]).perform();
-
-                WebElement report1_BR = report3.findElement(By.id("report1_BR"+i));
-                actions.doubleClick(report1_BR).sendKeys(listExcel.get(i-4)[55]).perform();
-
-                WebElement report1_BU = report3.findElement(By.id("report1_BU"+i));
-                actions.doubleClick(report1_BU).sendKeys(listExcel.get(i-4)[58]).perform();
-
-
-                WebElement report1_BV = report3.findElement(By.id("report1_BV"+i));
-                actions.doubleClick(report1_BV).sendKeys(listExcel.get(i-4)[59]).perform();
-
-                WebElement report1_BW = report3.findElement(By.id("report1_BW"+i));
-                actions.doubleClick(report1_BW).sendKeys(listExcel.get(i-4)[60]).perform();
-
-                WebElement report1_CA = report3.findElement(By.id("report1_CA"+i));
-                actions.doubleClick(report1_CA).sendKeys(listExcel.get(i-4)[64]).perform();
-
-                WebElement report1_CB = report3.findElement(By.id("report1_CB"+i));
-                actions.doubleClick(report1_CB).sendKeys(listExcel.get(i-4)[65]).perform();
-
-                WebElement report1_CC = report3.findElement(By.id("report1_CC"+i));
-                actions.doubleClick(report1_CC).sendKeys(listExcel.get(i-4)[66]).perform();
-
-                WebElement report1_CD = report3.findElement(By.id("report1_CD"+i));
-                actions.doubleClick(report1_CD).sendKeys(listExcel.get(i-4)[67]).perform();
-
-                WebElement report1_CE = report3.findElement(By.id("report1_CE"+i));
-                actions.doubleClick(report1_CE).sendKeys(listExcel.get(i-4)[68]).perform();
-
-                WebElement report1_CF = report3.findElement(By.id("report1_CF"+i));
-                actions.doubleClick(report1_CF).sendKeys(listExcel.get(i-4)[69]).perform();
-
-                WebElement report1_CO = report3.findElement(By.id("report1_CO"+i));
-                actions.doubleClick(report1_CO).sendKeys(listExcel.get(i-4)[70]).perform();
-            }
-            // 切出iframe
-            driver.switchTo().defaultContent();
-            //填写frameRB表格数据
-            System.out.println("开始填写RB数据");
-            WebElement mainFrame3 = driver.findElement(By.id("mainFrame"));
-            driver.switchTo().frame(mainFrame3);
-            WebElement frameRB = driver.findElement(By.id("frameRB"));
-            driver.switchTo().frame(frameRB);
-            WebElement report1 = driver.findElement(By.id("report1"));
-            //取第一个表数据
-            List<String[]> list = map.get(0);
-            List<String[]> listMap0 = list.stream().skip(2).collect(Collectors.toList());
-            System.out.println("取excel的RB数据");
-            for (int j = 4; j < listMap0.size() + 4;j++) {
-                WebElement c = report1.findElement(By.id("report1_C" + j));
-                actions.doubleClick(c).sendKeys(listMap0.get(j - 4)[1]).perform();
-                WebElement d = report1.findElement(By.id("report1_D" + j));
-                actions.doubleClick(d).sendKeys(listMap0.get(j - 4)[2]).perform();
-                WebElement e = report1.findElement(By.id("report1_E" + j));
-                actions.doubleClick(e).sendKeys(listMap0.get(j - 4)[3]).perform();
-                WebElement f = report1.findElement(By.id("report1_F" + j));
-                actions.doubleClick(f).sendKeys(listMap0.get(j - 4)[4]).perform();
-            }
-            // 切出iframe
-            driver.switchTo().defaultContent();
-            //todo: 后续添加点击日报保存按钮
-
-            //故障报表填写
-            Thread.sleep(60000);
-            // 切出iframe,重新进入菜单
-            driver.switchTo().defaultContent();
-            WebElement btntop = driver.findElement(By.id("topMenuDiv_0_-01100001602"));
-            btntop.click();
-            Thread.sleep(2000);
-            WebElement btntree = driver.findElement(By.id("tree_NodeLabel_M261"));
-            btntree.click();
-            Thread.sleep(2000);
-            WebElement btntreep = driver.findElement(By.id("tree_NodeLabel_P1627"));
-            btntreep.click();
-            WebElement tree_NodeLabel_P1897 = driver.findElement(By.id("tree_NodeLabel_P1897"));
-            tree_NodeLabel_P1897.click();
-            Thread.sleep(3000);
-            //拿到excel数据
-            List<String[]> listFault = map.get(3);
-            System.out.println("故障日报填写");
-            WebElement main = driver.findElement(By.id("mainFrame"));
-            driver.switchTo().frame(main);
-            WebElement frameRT2 = driver.findElement(By.id("frameRT"));
-            driver.switchTo().frame(frameRT2);
-            //WebElement reports = driver.findElement(By.id("report1"));
-
-            for (int i = 4;i < listFault.size() + 4;i++){
-                //针对下拉框选项,iframe先切出
-                driver.switchTo().defaultContent();
-                WebElement mainFrame5 = driver.findElement(By.id("mainFrame"));
-                driver.switchTo().frame(mainFrame5);
-                WebElement frameRT1 = driver.findElement(By.id("frameRT"));
-                driver.switchTo().frame(frameRT1);
-                WebElement for1 = driver.findElement(By.id("report1"));
-                WebElement report1_B = for1.findElement(By.id("report1_B"+i));
-                report1_B.click();
-                WebElement odiv_0 = driver.findElement(By.id("odiv_0"));
-                driver.switchTo().frame(odiv_0);
-                int s = cacheService.getSerial(listExcel.get(i - 4)[0], departId);
-                WebElement div1 = driver.findElement(By.xpath("//html/body/div[1]/table/tbody/tr[" + s + "]"));
-                actions.moveToElement(div1).click().perform();
-                driver.switchTo().defaultContent();
-                WebElement mainFrame6 = driver.findElement(By.id("mainFrame"));
-                driver.switchTo().frame(mainFrame6);
-                WebElement frameRT6 = driver.findElement(By.id("frameRT"));
-                driver.switchTo().frame(frameRT6);
-                WebElement reports = driver.findElement(By.id("report1"));
-
-                WebElement report1_C = reports.findElement(By.id("report1_C" + i));
-                actions.doubleClick(report1_C).sendKeys(listFault.get(i-4)[1]).perform();
-
-                WebElement report1_D = reports.findElement(By.id("report1_D" + i));
-                actions.doubleClick(report1_D).sendKeys(listFault.get(i-4)[2]).perform();
-
-                WebElement report1_E = reports.findElement(By.id("report1_E" + i));
-                actions.doubleClick(report1_E).sendKeys(listFault.get(i-4)[3]).perform();
-
-                WebElement report1_F = reports.findElement(By.id("report1_F" + i));
-                actions.doubleClick(report1_F).sendKeys(listFault.get(i-4)[4]).perform();
-
-                //针对下拉框选项,iframe先切出
-                driver.switchTo().defaultContent();
-                WebElement mainFrame10 = driver.findElement(By.id("mainFrame"));
-                driver.switchTo().frame(mainFrame10);
-                WebElement frameRT10 = driver.findElement(By.id("frameRT"));
-                driver.switchTo().frame(frameRT10);
-                WebElement for10 = driver.findElement(By.id("report1"));
-                WebElement report1_G = for10.findElement(By.id("report1_G"+i));
-                report1_G.click();
-                WebElement odiv_0_2 = driver.findElement(By.id("odiv_0"));
-                driver.switchTo().frame(odiv_0_2);
-                int s2 = faultType(listFault.get(i - 4)[5]);
-                WebElement div2 = driver.findElement(By.xpath("//html/body/div[1]/table/tbody/tr[" + s2 + "]"));
-                actions.moveToElement(div2).click().perform();
-                driver.switchTo().defaultContent();
-                WebElement mainFrame11 = driver.findElement(By.id("mainFrame"));
-                driver.switchTo().frame(mainFrame11);
-                WebElement frameRT11 = driver.findElement(By.id("frameRT"));
-                driver.switchTo().frame(frameRT11);
-                WebElement report11 = driver.findElement(By.id("report1"));
-
-                if (!listFault.get(i-4)[6].isEmpty()){
-                    WebElement report1_H = report11.findElement(By.id("report1_H" + i));
-                    report1_H.click();
-                    //日期控件
-                    WebElement div11 = driver.findElement(By.xpath("//html/body/div[2]/div/iframe[@name='runqianCalendarIframe']"));
-                    driver.switchTo().frame(div11);
-                    //设置年
-                    WebElement year1 = driver.findElement(By.xpath("//html/body/table/tbody/tr[1]/td/table/tbody/tr/td[2]/input"));
-                    year1.clear();
-                    year1.sendKeys(listFault.get(i-4)[6].substring(0,4));
-                    //设置时
-                    WebElement hour = driver.findElement(By.xpath("//html/body/table/tbody/tr[4]/td/div/table/tbody/tr/td[3]/input"));
-                    hour.clear();
-                    hour.sendKeys(listFault.get(i-4)[6].substring(11,13));
-                    //设置分
-                    WebElement minute = driver.findElement(By.xpath("//html/body/table/tbody/tr[4]/td/div/table/tbody/tr/td[6]/input"));
-                    minute.clear();
-                    minute.sendKeys(listFault.get(i-4)[6].substring(14,16));
-                    //设置秒
-                    WebElement second = driver.findElement(By.xpath("/html/body/table/tbody/tr[4]/td/div/table/tbody/tr/td[9]/input"));
-                    second.clear();
-                    second.sendKeys("0");
-                    //月位置
-                    WebElement month = driver.findElement(By.xpath("/html/body/table/tbody/tr[1]/td/table/tbody/tr/td[6]/span"));
-                    month.click();
-                    WebElement key = driver.findElement(By.xpath("/html/body/table/tbody/tr[1]/td/table/tbody/tr/td[6]/select"));
-                    Select select = new Select(key);
-                    select.selectByValue(listFault.get(i-4)[6].substring(5,7));
-                    String day = listFault.get(i-4)[6].substring(8,10);
-                    int day1 = Integer.parseInt(day) + 1;
-                    WebElement key1 = driver.findElement(By.id("runqianDay"+ day1));
-                    key1.click();
-                }
-
-                driver.switchTo().defaultContent();
-                WebElement mainFrame12 = driver.findElement(By.id("mainFrame"));
-                driver.switchTo().frame(mainFrame12);
-                WebElement frameRT12 = driver.findElement(By.id("frameRT"));
-                driver.switchTo().frame(frameRT12);
-                WebElement report12 = driver.findElement(By.id("report1"));
-
-                if (!listFault.get(i-4)[7].isEmpty()){
-                    WebElement report1_H = report12.findElement(By.id("report1_I" + i));
-                    report1_H.click();
-                    //日期控件
-                    WebElement div11 = driver.findElement(By.xpath("//html/body/div[2]/div/iframe[@name='runqianCalendarIframe']"));
-                    driver.switchTo().frame(div11);
-                    //设置年
-                    WebElement year1 = driver.findElement(By.xpath("//html/body/table/tbody/tr[1]/td/table/tbody/tr/td[2]/input"));
-                    year1.clear();
-                    year1.sendKeys(listFault.get(i-4)[7].substring(0,4));
-                    //设置时
-                    WebElement hour = driver.findElement(By.xpath("//html/body/table/tbody/tr[4]/td/div/table/tbody/tr/td[3]/input"));
-                    hour.clear();
-                    hour.sendKeys(listFault.get(i-4)[7].substring(11,13));
-                    //设置分
-                    WebElement minute = driver.findElement(By.xpath("//html/body/table/tbody/tr[4]/td/div/table/tbody/tr/td[6]/input"));
-                    minute.clear();
-                    minute.sendKeys(listFault.get(i-4)[7].substring(14,16));
-                    //设置秒
-                    WebElement second = driver.findElement(By.xpath("/html/body/table/tbody/tr[4]/td/div/table/tbody/tr/td[9]/input"));
-                    second.clear();
-                    second.sendKeys("0");
-                    //月位置
-                    WebElement month = driver.findElement(By.xpath("/html/body/table/tbody/tr[1]/td/table/tbody/tr/td[6]/span"));
-                    month.click();
-                    WebElement key = driver.findElement(By.xpath("/html/body/table/tbody/tr[1]/td/table/tbody/tr/td[6]/select"));
-                    Select select = new Select(key);
-                    select.selectByValue(listFault.get(i-4)[7].substring(5,7));
-                    String day = listFault.get(i-4)[7].substring(8,10);
-                    int day1 = Integer.parseInt(day) + 1;
-                    WebElement key1 = driver.findElement(By.id("runqianDay"+ day1));
-                    key1.click();
-
-                    // 切出iframe
-                    driver.switchTo().defaultContent();
-                    //todo: 后续添加点击故障日报保存按钮
-                }
-            }
-        } catch (Exception e) {
-            e.printStackTrace();
-        } finally {
-            if (webDriver != null) {
-                webDriver.quit();
-            }
-        }
-    }
-
-    private int faultType(String strings) {
-
-        //故障类型字典装换
-        if(strings.equals("机舱振动故障")){
-            return 2;
-        }else if (strings.equals("变频器故障")){
-            return 3;
-        }else if (strings.equals("发电机故障")){
-            return 4;
-        }else if (strings.equals("齿轮箱故障")){
-            return 5;
-        }else if (strings.equals("箱变故障")){
-            return 6;
-        }else if (strings.equals("偏航系统故障")){
-            return 7;
-        }else if (strings.equals("液压系统故障")){
-            return 8;
-        }else if (strings.equals("电网故障")){
-            return 9;
-        }else if (strings.equals("控制柜制冷故障")){
-            return 10;
-        }else if (strings.equals("控制柜加热故障")){
-            return 11;
-        }else if (strings.equals("UPS故障")){
-            return 12;
-        }else if (strings.equals("FROFIBUS故障")){
-            return 13;
-        }else if (strings.equals("风速风向故障")){
-            return 14;
-        }else if (strings.equals("防雷保护故障")){
-            return 15;
-        }else if (strings.equals("初始化故障")){
-            return 16;
-        }else if (strings.equals("熔丝类故障")){
-            return 17;
-        }else if (strings.equals("CPU故障")){
-            return 18;
-        }else if (strings.equals("机舱冷却类故障")){
-            return 19;
-        }else if (strings.equals("故障停机类故障")){
-            return 20;
-        }else if (strings.equals("故障停机类故障")){
-            return 21;
-        }else if (strings.equals("转子位置类故障")){
-            return 22;
-        }else if (strings.equals("主轴类故障")){
-            return 23;
-        }else if (strings.equals("LUST变桨故障")){
-            return 24;
-        }else if (strings.equals("SSB变桨故障")){
-            return 25;
-        }else if (strings.equals("航灯类故障")){
-            return 26;
-        }else if (strings.equals("转速类故障")){
-            return 27;
-        }else if (strings.equals("安全链故障")){
-            return 28;
-        }else if (strings.equals("结冰类故障")){
-            return 29;
-        }else if (strings.equals("35KV电缆故障")){
-            return 30;
-        }else if (strings.equals("35KV集电线路故障")){
-            return 31;
-        }else if (strings.equals("35KV配电系统故障")){
-            return 32;
-        }else if (strings.equals("35KV以上输配电系统故障")){
-            return 33;
-        }else if (strings.equals("送出线路故障")){
-            return 34;
-        }
-        return 1;
-    }
-
-
-    public int dataictonary(String strings){
-        //状态字段字典装换
-        if(strings.equals("运行")){
-            return 2;
-        }else if (strings.equals("备用")){
-            return 3;
-        }else if (strings.equals("D检")){
-            return 4;
-        }else if (strings.equals("C检")){
-            return 5;
-        }else if (strings.equals("B检")){
-            return 6;
-        }else if (strings.equals("A检")){
-            return 7;
-        }else if (strings.equals("临检")){
-            return 8;
-        }else if (strings.equals("停用")){
-            return 9;
-        }
-        return 1;
-    }
-
-}

+ 0 - 77
report-gf/src/main/java/com/gyee/wisdom/report/utils/ExcelClassField.java

@@ -1,77 +0,0 @@
-package com.gyee.wisdom.report.utils;
-
-import java.util.LinkedHashMap;
-
-/**
- * @author sunnyzyq
- * @date 2021/12/17
- */
-public class ExcelClassField {
-
-    /** 字段名称 */
-    private String fieldName;
-
-    /** 表头名称 */
-    private String name;
-
-    /** 映射关系 */
-    private LinkedHashMap<String, String> kvMap;
-
-    /** 示例值 */
-    private Object example;
-
-    /** 排序 */
-    private int sort;
-
-    /** 是否为注解字段:0-否,1-是 */
-    private int hasAnnotation;
-
-    public String getFieldName() {
-        return fieldName;
-    }
-
-    public void setFieldName(String fieldName) {
-        this.fieldName = fieldName;
-    }
-
-    public String getName() {
-        return name;
-    }
-
-    public void setName(String name) {
-        this.name = name;
-    }
-
-    public LinkedHashMap<String, String> getKvMap() {
-        return kvMap;
-    }
-
-    public void setKvMap(LinkedHashMap<String, String> kvMap) {
-        this.kvMap = kvMap;
-    }
-
-    public Object getExample() {
-        return example;
-    }
-
-    public void setExample(Object example) {
-        this.example = example;
-    }
-
-    public int getSort() {
-        return sort;
-    }
-
-    public void setSort(int sort) {
-        this.sort = sort;
-    }
-
-    public int getHasAnnotation() {
-        return hasAnnotation;
-    }
-
-    public void setHasAnnotation(int hasAnnotation) {
-        this.hasAnnotation = hasAnnotation;
-    }
-
-}

+ 0 - 28
report-gf/src/main/java/com/gyee/wisdom/report/utils/ExcelExport.java

@@ -1,28 +0,0 @@
-package com.gyee.wisdom.report.utils;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * @author xugp
- * @date 2021/12/17
- */
-@Target(ElementType.FIELD)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface ExcelExport {
-
-    /** 字段名称 */
-    String value();
-
-    /** 导出排序先后: 数字越小越靠前(默认按Java类字段顺序导出) */
-    int sort() default 0;
-
-    /** 导出映射,格式如:0-未知;1-男;2-女 */
-    String kv() default "";
-
-    /** 导出模板示例值(有值的话,直接取该值,不做映射) */
-    String example() default "";
-
-}

+ 0 - 32
report-gf/src/main/java/com/gyee/wisdom/report/utils/ExcelImport.java

@@ -1,32 +0,0 @@
-package com.gyee.wisdom.report.utils;
-
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * @author xugp
- * @date 2021/12/17
- */
-@Target(ElementType.FIELD)
-@Retention(RetentionPolicy.RUNTIME)
-public @interface ExcelImport {
-
-    /** 字段名称 */
-    String value();
-
-    /** 导出映射,格式如:0-未知;1-男;2-女 */
-    String kv() default "";
-
-    /** 是否为必填字段(默认为非必填) */
-    boolean required() default false;
-
-    /** 最大长度(默认255) */
-    int maxLength() default 255;
-
-    /** 导入唯一性验证(多个字段则取联合验证) */
-    boolean unique() default false;
-
-}

+ 0 - 229
report-gf/src/main/java/com/gyee/wisdom/report/utils/ExcelUtil.java

@@ -1,229 +0,0 @@
-package com.gyee.wisdom.report.utils;
-import org.apache.poi.hssf.usermodel.*;
-import org.apache.poi.ss.usermodel.Cell;
-import org.apache.poi.ss.usermodel.Row;
-import org.apache.poi.ss.usermodel.Sheet;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.ss.util.CellRangeAddress;
-import org.apache.poi.xssf.usermodel.XSSFWorkbook;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.OutputStream;
-import java.text.SimpleDateFormat;
-import java.util.*;
-
-public class ExcelUtil {
-
-    public static void createExcel(List<String> header, List<String[]> data, OutputStream out) throws IOException {
-        // 创建一个Excel文件
-        HSSFWorkbook workbook = new HSSFWorkbook();
-        // 创建一个工作表
-        HSSFSheet sheet = workbook.createSheet("sheet1");
-        // 添加表头行
-        HSSFRow hssfRow = sheet.createRow(0);
-        // 设置单元格格式居中
-        HSSFCellStyle cellStyle = workbook.createCellStyle();
-        cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);
-
-        // 添加表头内容
-        for (int i = 0; i < header.size(); i++) {
-            HSSFCell headCell = hssfRow.createCell(i);
-            headCell.setCellValue(header.get(i));
-            headCell.setCellStyle(cellStyle);
-        }
-
-        // 添加数据内容
-        for (int i = 0; i < data.size(); i++) {
-            String[] strings = data.get(i);
-            hssfRow = sheet.createRow(i + 1);
-            for (int j = 0; j < strings.length; j++) {
-                HSSFCell cell = hssfRow.createCell(j);
-                cell.setCellValue(strings[j]);
-                cell.setCellStyle(cellStyle);
-            }
-        }
-        //单元格自适应
-        sheet.autoSizeColumn(2,true);
-        // 保存Excel文件
-        workbook.write(out);
-    }
-
-    public static void createExcel(String title,List<String> header, List<String[]> data, OutputStream out) throws IOException {
-        // 创建一个Excel文件
-        HSSFWorkbook workbook = new HSSFWorkbook();
-        // 创建一个工作表
-        HSSFSheet sheet = workbook.createSheet("sheet1");
-        // 添加表头行
-        HSSFRow hssfRow = sheet.createRow(0);
-        HSSFCell cellTitle = hssfRow.createCell(0);
-        // 设置标题外的单元格格式居中
-        HSSFCellStyle cellStyle = workbook.createCellStyle();
-        cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);
-        //设置标题的样式
-        HSSFCellStyle titleCellStyle = workbook.createCellStyle();
-        titleCellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);
-        titleCellStyle.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);
-        //设置标题字体的样式
-        HSSFFont font = workbook.createFont();
-        font.setFontHeightInPoints((short) 12);//设置字体大小
-        titleCellStyle.setFont(font);
-        //标题设置(四个参数分别表示起始行,终止行,起始列,终止列)
-        cellTitle.setCellValue(title);
-        int lastCol = header.size() > 1 ? header.size() : 2;
-        CellRangeAddress region1 = new CellRangeAddress(0, 1, (short) 0, (short) lastCol - 1);
-        sheet.addMergedRegion(region1);
-        hssfRow = sheet.createRow(1);
-        hssfRow = sheet.createRow(2);
-        cellTitle.setCellStyle(titleCellStyle);
-        // 添加表头内容
-        for (int i = 0; i < header.size(); i++) {
-            HSSFCell headCell = hssfRow.createCell(i);
-            headCell.setCellValue(header.get(i));
-            headCell.setCellStyle(cellStyle);
-        }
-
-        // 添加数据内容
-        for (int i = 0; i < data.size(); i++) {
-            String[] strings = data.get(i);
-            hssfRow = sheet.createRow(i + 3);
-            for (int j = 0; j < strings.length; j++) {
-                HSSFCell cell = hssfRow.createCell(j);
-                cell.setCellValue(strings[j]);
-                cell.setCellStyle(cellStyle);
-            }
-        }
-
-        // 保存Excel文件
-        workbook.write(out);
-    }
-
-    /**
-     * 读取Excel的内容
-     *
-     * @param fileType 文件类型,xls或xlsx
-     * @param startRows 开始读取行数,比喻行头不需要读入 忽略的行数为1
-     * @param ignoreRowBlank 是否忽略空行
-     * @param is 文件输入流
-     * @return 读出的Excel中数据的内容
-     * @throws IOException duxxxxx
-     */
-    public static Map<Integer, List<String[]>> readData(String fileType, int startRows, boolean ignoreRowBlank, InputStream is) throws IOException {
-
-        Map<Integer, List<String[]>> map = new HashMap<>();
-
-        Workbook wb = readExcel(fileType, is);
-        for (int sheetIndex = 0; sheetIndex < wb.getNumberOfSheets(); sheetIndex++) {
-            List<String[]> list = new ArrayList<>();
-            Sheet sheet = wb.getSheetAt(sheetIndex);
-
-            for (int rowIndex = startRows, z = sheet.getLastRowNum(); rowIndex <= z; rowIndex++) {
-                Row row = sheet.getRow(rowIndex);
-                if (row == null) {
-                    continue;
-                }
-
-                int rowSize = sheet.getRow(0).getLastCellNum();
-                String[] values = new String[rowSize];
-                boolean hasValue = false;
-                for (int columnIndex = 0; columnIndex < rowSize; columnIndex++) {
-                    String value = "";
-                    Cell cell = row.getCell(columnIndex);
-                    if (cell != null) {
-                        // 注意:一定要设成这个,否则可能会出现乱码,后面版本默认设置
-                        switch (cell.getCellType()) {
-                            case HSSFCell.CELL_TYPE_STRING:
-                                value = cell.getStringCellValue();
-                                break;
-                            case HSSFCell.CELL_TYPE_NUMERIC:
-                                if (HSSFDateUtil.isCellDateFormatted(cell)) {
-                                    Date date = cell.getDateCellValue();
-                                    if (date != null) {
-                                        value = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")
-                                                .format(date);
-                                    } else {
-                                        value = "";
-                                    }
-                                } else {
-                                    //value = new DecimalFormat("0").format(cell.getNumericCellValue());
-                                    if (HSSFDateUtil.isCellDateFormatted(cell)) {
-                                        value = String.valueOf(cell.getDateCellValue());
-                                    } else {
-                                        cell.setCellType(Cell.CELL_TYPE_STRING);
-                                        String temp = cell.getStringCellValue();
-                                        // 判断是否包含小数点,如果不含小数点,则以字符串读取,如果含小数点,则转换为Double类型的字符串
-                                        if (temp.indexOf(".") > -1) {
-                                            value = String.valueOf(new Double(temp)).trim();
-                                        } else {
-                                            value = temp.trim();
-                                        }
-                                    }
-                                }
-                                break;
-                            case HSSFCell.CELL_TYPE_FORMULA:
-                                // 导入时如果为公式生成的数据则无值
-                                if (!cell.getStringCellValue().equals("")) {
-                                    value = cell.getStringCellValue();
-                                } else {
-                                    value = cell.getNumericCellValue() + "";
-                                }
-                                break;
-                            case HSSFCell.CELL_TYPE_BLANK:
-                                break;
-                            case HSSFCell.CELL_TYPE_ERROR:
-                                value = "";
-                                break;
-                            case HSSFCell.CELL_TYPE_BOOLEAN:
-                                value = (cell.getBooleanCellValue() == true ? "Y"
-
-                                        : "N");
-                                break;
-                            default:
-                                value = "";
-                        }
-                    }
-                    values[columnIndex] = value;
-                    if (!value.isEmpty()) {
-                        hasValue = true;
-                    }
-                }
-                if (!ignoreRowBlank || hasValue) {//不为忽略空行模式或不为空行
-                    list.add(values);
-                    map.put(sheetIndex,list);
-                }
-            }
-        }
-        return map;
-    }
-
-    //读取excel
-    private static Workbook readExcel(String fileType, InputStream is) throws IOException {
-        if ("xls".equals(fileType)) {
-            return new HSSFWorkbook(is);
-        } else if ("xlsx".equals(fileType)) {
-            return new XSSFWorkbook(is);
-        } else {
-            throw new IllegalArgumentException("不支持的文件类型,仅支持xls和xlsx");
-        }
-    }
-
-    /**
-     * 去掉字符串右边的空格
-     *
-     * @param str 要处理的字符串
-     * @return 处理后的字符串
-     */
-    private static String rightTrim(String str) {
-        if (str == null) {
-            return "";
-        }
-        int length = str.length();
-        for (int i = length - 1; i >= 0; i--) {
-            if (str.charAt(i) != 0x20) {
-                break;
-            }
-            length--;
-        }
-        return str.substring(0, length);
-    }
-}

文件差异内容过多而无法显示
+ 0 - 1006
report-gf/src/main/java/com/gyee/wisdom/report/utils/ExcelUtils.java


+ 0 - 56
report-gf/src/main/java/com/gyee/wisdom/report/utils/MD5Utils.java

@@ -1,56 +0,0 @@
-package com.gyee.wisdom.report.utils;
-
-import java.math.BigInteger;
-import java.security.MessageDigest;
-import java.security.NoSuchAlgorithmException;
-
-public class MD5Utils {
-    /**
-     * 使用md5的算法进行加密
-     */
-    public static String md5(String plainText) {
-        byte[] secretBytes = null;
-        try {
-            secretBytes = MessageDigest.getInstance("md5").digest(
-                    plainText.getBytes());
-        } catch (NoSuchAlgorithmException e) {
-            throw new RuntimeException("没有md5这个算法!");
-        }
-        String md5code = new BigInteger(1, secretBytes).toString(16);// 16进制数字
-        // 如果生成数字未满32位,需要前面补0
-        for (int i = 0; i < 32 - md5code.length(); i++) {
-            md5code = "0" + md5code;
-        }
-        return md5code;
-    }
-
-    /**
-     * 可逆的的加密解密方法;两次是解密,一次是加密
-     * @param inStr
-     * @return
-     */
-    public static String convertMD5(String inStr){
-
-        char[] a = inStr.toCharArray();
-        for (int i = 0; i < a.length; i++){
-            a[i] = (char) (a[i] ^ 't');
-        }
-        String s = new String(a);
-        return s;
-
-    }
-
-
-
-    public static void main(String[] args) {
-        String s = md5("1234");
-        System.out.println("MD5后:"+s);
-        System.out.println("MD5后再加密:"+convertMD5(s));
-        System.out.println("MD5加密后解密:"+convertMD5(convertMD5(s)));
-        String s2 = convertMD5("12345");
-        System.out.println("可逆的加密解密方法之加密:"+s2);
-        System.out.println("可逆的加密解密方法之解密:"+convertMD5(s2));
-    }
-
-}
-

+ 0 - 91
report-gf/src/main/java/com/gyee/wisdom/report/utils/ResponseWrapper.java

@@ -1,91 +0,0 @@
-package com.gyee.wisdom.report.utils;
-import lombok.Data;
-
-import java.io.Serializable;
-import java.util.Collection;
-
-
-@Data
-public class ResponseWrapper<T> implements Serializable {
-    private static final long serialVersionUID = 1L;
-    private Boolean success;
-    private Integer status;
-    private Integer count;
-    private String msg;
-    private T data;
-    private static final int STATUS_SUCCESS = 20000;
-    private static final int STATUS_ERROR = 50000;
-    public static final int STATUS_ERROR_SYSTEM = 50100;
-
-    private String token;
-
-    public ResponseWrapper() {
-    }
-
-    private ResponseWrapper(Boolean success, Integer status, Integer count, String msg, Class entityType, T data) {
-        this.success = success;
-        this.status = status;
-        this.count = count;
-        this.msg = msg;
-        this.data = data;
-    }
-
-    private ResponseWrapper(Boolean success, Integer status, Integer count, String msg, T data) {
-        this.success = success;
-        this.status = status;
-        this.count = count;
-        this.msg = msg;
-        this.data = data;
-    }
-
-    public static ResponseWrapper success(int count, String msg, Object data) {
-        if (data != null) {
-            return data instanceof Collection ? new ResponseWrapper(true, 20000, ((Collection)data).size(), msg, data) : new ResponseWrapper(true, 20000, count, msg, data);
-        } else {
-            return count == -1 ? new ResponseWrapper(true, 20000, -1, msg, msg) : new ResponseWrapper(true, 20000, count, msg, count);
-        }
-    }
-
-    public static ResponseWrapper success(String msg, int count, Object data) {
-        return new ResponseWrapper(true, 20000, count, msg, data);
-    }
-
-    public static ResponseWrapper success(int count, String msg) {
-        return success(count, msg, (Object)null);
-    }
-
-    public static ResponseWrapper success(int count) {
-        return success(count, "count");
-    }
-
-    public static ResponseWrapper success(String msg) {
-        return success(-1, msg);
-    }
-
-    public ResponseWrapper<T> success(T data) {
-        this.data = data;
-        return this;
-    }
-
-    public static ResponseWrapper success(String msg, Object data) {
-        return success(1, msg, data);
-    }
-
-    public static ResponseWrapper error(String msg, Object data, int status) {
-        return new ResponseWrapper(false, status, 0, msg, data.getClass(), data);
-    }
-
-    public static ResponseWrapper error(String msg, Object data) {
-        return new ResponseWrapper(false, 50000, 0, msg, data.getClass(), data);
-    }
-
-    public static ResponseWrapper error(String msg, int status) {
-        return new ResponseWrapper(false, status, -1, msg, String.class, msg);
-    }
-
-    public static ResponseWrapper error(String msg) {
-        return error(msg, 50000);
-    }
-
-
-}

+ 0 - 39
report-gf/src/main/resources/application.yaml

@@ -1,39 +0,0 @@
-server:
-  port: 8090
-
-spring:
-  application:
-  name: report
-  mvc:
-    pathmatch:
-      matching-strategy: ANT_PATH_MATCHER
-  http:
-    encoding:
-      force: true
-      charset: UTF-8
-      enabled: true
-  datasource:
-    driver-class-name: org.sqlite.JDBC
-    url: jdbc:sqlite::resource:report.db
-    username:
-    password:
-  jackson:
-    date-format: yyyy-MM-dd HH:mm:ss
-    time-zone: GMT+8
-    default-property-inclusion: always
-
-logging:
-  level:
-    com:
-      gyee:
-        wisdom:
-          alarm:
-            sharding:
-              mapper: debug
-              service: info
-
-#  山西谷歌浏览器地址:C:\Users\戴尔\AppData\Local\Google\Chrome\Application\chromedriver.exe
-#  宁夏谷歌浏览器地址:
-chromeDriver: C:\Users\戴尔\AppData\Local\Google\Chrome\Application\chromedriver.exe
-#   海子井光伏miss系统登录密码   AHbl***2020
-password: AHbl***2020

+ 0 - 8
report-gf/src/main/resources/banner.txt

@@ -1,8 +0,0 @@
-                                          ██
-                ██████                   ░██
- ██████  █████ ░██░░░██  ██████  ██████ ██████
-░░██░░█ ██░░░██░██  ░██ ██░░░░██░░██░░█░░░██░
- ░██ ░ ░███████░██████ ░██   ░██ ░██ ░   ░██
- ░██   ░██░░░░ ░██░░░  ░██   ░██ ░██     ░██
-░███   ░░██████░██     ░░██████ ░███     ░░██
-░░░     ░░░░░░ ░░       ░░░░░░  ░░░       ░░

+ 0 - 64
report-gf/src/main/resources/log4j2.xml

@@ -1,64 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<Configuration status="WARN">
-    <Properties>
-        <Property name="Pattern">%d{yyyy-MM-dd HH:mm:ss.SSS} %5p %t %M(%F:%L) %m%n</Property>
-    </Properties>
-    <Filter type="ThresholdFilter" level="INFO"/>
-
-    <Appenders>
-        <Console name="Console" target="SYSTEM_OUT">
-            <PatternLayout pattern="${Pattern}"/>
-        </Console>
-        <RollingFile name="RollingFileInfo" fileName="logs/info.log"
-                     filePattern="logs/%d{yyyy-MM}/info-%d{yyyy-MM-dd}.%i.log">
-            <PatternLayout pattern="${Pattern}"/>
-            <ThresholdFilter level="INFO" onMatch="ACCEPT" onMismatch="DENY"/>
-            <Policies>
-                <TimeBasedTriggeringPolicy/>
-                <SizeBasedTriggeringPolicy size="100 MB"/>
-            </Policies>
-        </RollingFile>
-        <RollingFile name="RollingFileWarn" fileName="logs/warn.log"
-                     filePattern="logs/%d{yyyy-MM}/warn-%d{yyyy-MM-dd}.%i.log">
-            <PatternLayout charset="utf8" pattern="${Pattern}"/>
-            <ThresholdFilter level="WARN" onMatch="ACCEPT" onMismatch="DENY"/>
-            <Policies>
-                <TimeBasedTriggeringPolicy/>
-                <SizeBasedTriggeringPolicy size="100 MB"/>
-            </Policies>
-        </RollingFile>
-        <RollingFile name="RollingFileError" fileName="logs/error.log"
-                     filePattern="logs/%d{yyyy-MM}/error-%d{yyyy-MM-dd}.%i.log">
-            <PatternLayout charset="utf8" pattern="${Pattern}"/>
-            <ThresholdFilter level="ERROR" onMatch="ACCEPT" onMismatch="DENY"/>
-            <Policies>
-                <TimeBasedTriggeringPolicy/>
-                <SizeBasedTriggeringPolicy size="100 MB"/>
-            </Policies>
-        </RollingFile>
-        <RollingFile name="dataChangeRollingFile" fileName="datalogs/dataChange.log" append="true"
-                     filePattern="logs/%d{yyyy-MM}/error-%d{yyyy-MM-dd}.%i.log">
-            <PatternLayout charset="utf8" pattern="${Pattern}"/>
-            <ThresholdFilter level="INFO" onMatch="ACCEPT" onMismatch="DENY"/>
-            <Policies>
-                <TimeBasedTriggeringPolicy/>
-                <SizeBasedTriggeringPolicy size="100 MB"/>
-            </Policies>
-        </RollingFile>
-    </Appenders>
-
-    <Loggers>
-        <Root level="INFO">
-            <AppenderRef ref="Console"/>
-            <!--<appender-ref ref="RollingFileInfo"/>-->
-            <appender-ref ref="RollingFileWarn"/>
-            <appender-ref ref="RollingFileError"/>
-        </Root>
-        <!--自定义日志-->
-        <!--将logger中的 additivity 属性配置为 false,则这个logger不会将日志流反馈到root中。-->
-        <Logger name="dataChangeLogger" additivity="false" level="INFO">
-            <appender-ref ref="dataChangeRollingFile" level="INFO"/>
-        </Logger>
-        <!--自定义日志-->
-    </Loggers>
-</Configuration>

二进制
report-gf/src/main/resources/report.db


文件差异内容过多而无法显示
+ 0 - 6
report-gf/src/main/resources/static/bootstrap.min.css


文件差异内容过多而无法显示
+ 0 - 6
report-gf/src/main/resources/static/bootstrap.min.js


文件差异内容过多而无法显示
+ 0 - 4
report-gf/src/main/resources/static/jquery.min.js


文件差异内容过多而无法显示
+ 0 - 3
report-gf/src/main/resources/static/laydate/laydate.js


二进制
report-gf/src/main/resources/static/laydate/theme/default/font/iconfont.eot


文件差异内容过多而无法显示
+ 0 - 45
report-gf/src/main/resources/static/laydate/theme/default/font/iconfont.svg


二进制
report-gf/src/main/resources/static/laydate/theme/default/font/iconfont.ttf


二进制
report-gf/src/main/resources/static/laydate/theme/default/font/iconfont.woff


文件差异内容过多而无法显示
+ 0 - 1
report-gf/src/main/resources/static/laydate/theme/default/laydate.css


文件差异内容过多而无法显示
+ 0 - 1
report-gf/src/main/resources/static/layui-v2.6.8/layui/css/layui.css


文件差异内容过多而无法显示
+ 0 - 1
report-gf/src/main/resources/static/layui-v2.6.8/layui/css/modules/code.css


文件差异内容过多而无法显示
+ 0 - 1
report-gf/src/main/resources/static/layui-v2.6.8/layui/css/modules/laydate/default/laydate.css


二进制
report-gf/src/main/resources/static/layui-v2.6.8/layui/css/modules/layer/default/icon-ext.png


二进制
report-gf/src/main/resources/static/layui-v2.6.8/layui/css/modules/layer/default/icon.png


文件差异内容过多而无法显示
+ 0 - 1
report-gf/src/main/resources/static/layui-v2.6.8/layui/css/modules/layer/default/layer.css


二进制
report-gf/src/main/resources/static/layui-v2.6.8/layui/css/modules/layer/default/loading-0.gif


二进制
report-gf/src/main/resources/static/layui-v2.6.8/layui/css/modules/layer/default/loading-1.gif


二进制
report-gf/src/main/resources/static/layui-v2.6.8/layui/css/modules/layer/default/loading-2.gif


二进制
report-gf/src/main/resources/static/layui-v2.6.8/layui/font/iconfont.eot


文件差异内容过多而无法显示
+ 0 - 554
report-gf/src/main/resources/static/layui-v2.6.8/layui/font/iconfont.svg


二进制
report-gf/src/main/resources/static/layui-v2.6.8/layui/font/iconfont.ttf


二进制
report-gf/src/main/resources/static/layui-v2.6.8/layui/font/iconfont.woff


二进制
report-gf/src/main/resources/static/layui-v2.6.8/layui/font/iconfont.woff2


文件差异内容过多而无法显示
+ 0 - 5
report-gf/src/main/resources/static/layui-v2.6.8/layui/layui.js


+ 0 - 102
report-gf/src/main/resources/static/layui-v2.6.8/test.html

@@ -1,102 +0,0 @@
-
-<!DOCTYPE html>
-<html>
-<head>
-  <meta charset="utf-8">
-  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
-  <title>测试 - layui</title>
-  <link rel="stylesheet" href="layui/css/layui.css">
-</head>
-<body>
-
-<div class="layui-container">
-  <div class="layui-progress" style="margin: 15px 0 30px;">
-    <div class="layui-progress-bar" lay-percent="100%"></div>
-  </div>
-  
-  
-  <div class="layui-btn-container">
-    <button class="layui-btn" test-active="test-form">一个按钮</button>
-    <button class="layui-btn layui-btn-normal" id="test2">当前日期</button>
-  </div>
-  
-  <blockquote class="layui-elem-quote" style="margin-top: 30px;">
-    <div class="layui-text">
-      <ul>
-        <li>你当前预览的是:<span>layui-v<span id="version"></span></span></li>
-        <li>layui 是一套开源的 Web UI(界面)组件库。这是一个极其简洁的演示页面</li>
-      </ul>
-    </div>
-  </blockquote>
-</div>
-
-
-
-<!-- 引入 layui.js 的 <script> 标签最好放置在 html 末尾 -->
-<script src="layui/layui.js"></script>
-<script>
-layui.use(function(){
-  var layer = layui.layer
-  ,form = layui.form
-  ,laypage = layui.laypage
-  ,element = layui.element
-  ,laydate = layui.laydate
-  ,util = layui.util;
-  
-  //欢迎信息
-  layer.msg('Hello World');
-  
-  //输出版本号
-  lay('#version').html(layui.v);
-  
-  //日期
-  laydate.render({
-    elem: '#test2'
-    ,value: new Date()
-    ,isInitValue: true
-  });
-  
-  //触发事件
-  util.event('test-active', {
-    'test-form': function(){
-      layer.open({
-        type: 1
-        ,resize: false
-        ,shadeClose: true
-        ,area: '350px'
-        ,title: 'layer + form'
-        ,content: ['<ul class="layui-form layui-form-pane" style="margin: 15px;">'
-          ,'<li class="layui-form-item">'
-            ,'<label class="layui-form-label">输入框</label>'
-            ,'<div class="layui-input-block">'
-              ,'<input class="layui-input" lay-verify="required" name="field1">'
-            ,'</div>'
-          ,'</li>'
-          ,'<li class="layui-form-item">'
-            ,'<label class="layui-form-label">选择框</label>'
-            ,'<div class="layui-input-block">'
-              ,'<select name="field2">'
-                ,'<option value="A">A</option>'
-                ,'<option value="B">B</option>'
-              ,'<select>'
-            ,'</div>'
-          ,'</li>'
-          ,'<li class="layui-form-item" style="text-align:center;">'
-            ,'<button type="submit" lay-submit lay-filter="*" class="layui-btn">提交</button>'
-          ,'</li>'
-        ,'</ul>'].join('')
-        ,success: function(layero, index){
-          layero.find('.layui-layer-content').css('overflow', 'visible');
-          
-          form.render().on('submit(*)', function(data){
-            layer.msg(JSON.stringify(data.field), {icon: 1});
-            //layer.close(index); //关闭层
-          });
-        }
-      });
-    }
-  });
-});
-</script>
-</body>
-</html>

+ 0 - 6
report-gf/src/main/resources/static/layui-v2.6.8/免责声明.url

@@ -1,6 +0,0 @@
-[{000214A0-0000-0000-C000-000000000046}]
-Prop3=19,11
-[InternetShortcut]
-URL=https://www.layui.com/about/disclaimer.html
-IDList=
-HotKey=0

+ 0 - 256
report-gf/src/main/resources/static/md5.js

@@ -1,256 +0,0 @@
-/*
- * A JavaScript implementation of the RSA Data Security, Inc. MD5 Message
- * Digest Algorithm, as defined in RFC 1321.
- * Version 2.1 Copyright (C) Paul Johnston 1999 - 2002.
- * Other contributors: Greg Holt, Andrew Kepert, Ydnar, Lostinet
- * Distributed under the BSD License
- * See http://pajhome.org.uk/crypt/md5 for more info.
- */
-
-/*
- * Configurable variables. You may need to tweak these to be compatible with
- * the server-side, but the defaults work in most cases.
- */
-var hexcase = 0;  /* hex output format. 0 - lowercase; 1 - uppercase        */
-var b64pad  = ""; /* base-64 pad character. "=" for strict RFC compliance   */
-var chrsz   = 8;  /* bits per input character. 8 - ASCII; 16 - Unicode      */
-
-/*
- * These are the functions you'll usually want to call
- * They take string arguments and return either hex or base-64 encoded strings
- */
-function hex_md5(s){ return binl2hex(core_md5(str2binl(s), s.length * chrsz));}
-function b64_md5(s){ return binl2b64(core_md5(str2binl(s), s.length * chrsz));}
-function str_md5(s){ return binl2str(core_md5(str2binl(s), s.length * chrsz));}
-function hex_hmac_md5(key, data) { return binl2hex(core_hmac_md5(key, data)); }
-function b64_hmac_md5(key, data) { return binl2b64(core_hmac_md5(key, data)); }
-function str_hmac_md5(key, data) { return binl2str(core_hmac_md5(key, data)); }
-
-/*
- * Perform a simple self-test to see if the VM is working
- */
-function md5_vm_test()
-{
-  return hex_md5("abc") == "900150983cd24fb0d6963f7d28e17f72";
-}
-
-/*
- * Calculate the MD5 of an array of little-endian words, and a bit length
- */
-function core_md5(x, len)
-{
-  /* append padding */
-  x[len >> 5] |= 0x80 << ((len) % 32);
-  x[(((len + 64) >>> 9) << 4) + 14] = len;
-
-  var a =  1732584193;
-  var b = -271733879;
-  var c = -1732584194;
-  var d =  271733878;
-
-  for(var i = 0; i < x.length; i += 16)
-  {
-    var olda = a;
-    var oldb = b;
-    var oldc = c;
-    var oldd = d;
-
-    a = md5_ff(a, b, c, d, x[i+ 0], 7 , -680876936);
-    d = md5_ff(d, a, b, c, x[i+ 1], 12, -389564586);
-    c = md5_ff(c, d, a, b, x[i+ 2], 17,  606105819);
-    b = md5_ff(b, c, d, a, x[i+ 3], 22, -1044525330);
-    a = md5_ff(a, b, c, d, x[i+ 4], 7 , -176418897);
-    d = md5_ff(d, a, b, c, x[i+ 5], 12,  1200080426);
-    c = md5_ff(c, d, a, b, x[i+ 6], 17, -1473231341);
-    b = md5_ff(b, c, d, a, x[i+ 7], 22, -45705983);
-    a = md5_ff(a, b, c, d, x[i+ 8], 7 ,  1770035416);
-    d = md5_ff(d, a, b, c, x[i+ 9], 12, -1958414417);
-    c = md5_ff(c, d, a, b, x[i+10], 17, -42063);
-    b = md5_ff(b, c, d, a, x[i+11], 22, -1990404162);
-    a = md5_ff(a, b, c, d, x[i+12], 7 ,  1804603682);
-    d = md5_ff(d, a, b, c, x[i+13], 12, -40341101);
-    c = md5_ff(c, d, a, b, x[i+14], 17, -1502002290);
-    b = md5_ff(b, c, d, a, x[i+15], 22,  1236535329);
-
-    a = md5_gg(a, b, c, d, x[i+ 1], 5 , -165796510);
-    d = md5_gg(d, a, b, c, x[i+ 6], 9 , -1069501632);
-    c = md5_gg(c, d, a, b, x[i+11], 14,  643717713);
-    b = md5_gg(b, c, d, a, x[i+ 0], 20, -373897302);
-    a = md5_gg(a, b, c, d, x[i+ 5], 5 , -701558691);
-    d = md5_gg(d, a, b, c, x[i+10], 9 ,  38016083);
-    c = md5_gg(c, d, a, b, x[i+15], 14, -660478335);
-    b = md5_gg(b, c, d, a, x[i+ 4], 20, -405537848);
-    a = md5_gg(a, b, c, d, x[i+ 9], 5 ,  568446438);
-    d = md5_gg(d, a, b, c, x[i+14], 9 , -1019803690);
-    c = md5_gg(c, d, a, b, x[i+ 3], 14, -187363961);
-    b = md5_gg(b, c, d, a, x[i+ 8], 20,  1163531501);
-    a = md5_gg(a, b, c, d, x[i+13], 5 , -1444681467);
-    d = md5_gg(d, a, b, c, x[i+ 2], 9 , -51403784);
-    c = md5_gg(c, d, a, b, x[i+ 7], 14,  1735328473);
-    b = md5_gg(b, c, d, a, x[i+12], 20, -1926607734);
-
-    a = md5_hh(a, b, c, d, x[i+ 5], 4 , -378558);
-    d = md5_hh(d, a, b, c, x[i+ 8], 11, -2022574463);
-    c = md5_hh(c, d, a, b, x[i+11], 16,  1839030562);
-    b = md5_hh(b, c, d, a, x[i+14], 23, -35309556);
-    a = md5_hh(a, b, c, d, x[i+ 1], 4 , -1530992060);
-    d = md5_hh(d, a, b, c, x[i+ 4], 11,  1272893353);
-    c = md5_hh(c, d, a, b, x[i+ 7], 16, -155497632);
-    b = md5_hh(b, c, d, a, x[i+10], 23, -1094730640);
-    a = md5_hh(a, b, c, d, x[i+13], 4 ,  681279174);
-    d = md5_hh(d, a, b, c, x[i+ 0], 11, -358537222);
-    c = md5_hh(c, d, a, b, x[i+ 3], 16, -722521979);
-    b = md5_hh(b, c, d, a, x[i+ 6], 23,  76029189);
-    a = md5_hh(a, b, c, d, x[i+ 9], 4 , -640364487);
-    d = md5_hh(d, a, b, c, x[i+12], 11, -421815835);
-    c = md5_hh(c, d, a, b, x[i+15], 16,  530742520);
-    b = md5_hh(b, c, d, a, x[i+ 2], 23, -995338651);
-
-    a = md5_ii(a, b, c, d, x[i+ 0], 6 , -198630844);
-    d = md5_ii(d, a, b, c, x[i+ 7], 10,  1126891415);
-    c = md5_ii(c, d, a, b, x[i+14], 15, -1416354905);
-    b = md5_ii(b, c, d, a, x[i+ 5], 21, -57434055);
-    a = md5_ii(a, b, c, d, x[i+12], 6 ,  1700485571);
-    d = md5_ii(d, a, b, c, x[i+ 3], 10, -1894986606);
-    c = md5_ii(c, d, a, b, x[i+10], 15, -1051523);
-    b = md5_ii(b, c, d, a, x[i+ 1], 21, -2054922799);
-    a = md5_ii(a, b, c, d, x[i+ 8], 6 ,  1873313359);
-    d = md5_ii(d, a, b, c, x[i+15], 10, -30611744);
-    c = md5_ii(c, d, a, b, x[i+ 6], 15, -1560198380);
-    b = md5_ii(b, c, d, a, x[i+13], 21,  1309151649);
-    a = md5_ii(a, b, c, d, x[i+ 4], 6 , -145523070);
-    d = md5_ii(d, a, b, c, x[i+11], 10, -1120210379);
-    c = md5_ii(c, d, a, b, x[i+ 2], 15,  718787259);
-    b = md5_ii(b, c, d, a, x[i+ 9], 21, -343485551);
-
-    a = safe_add(a, olda);
-    b = safe_add(b, oldb);
-    c = safe_add(c, oldc);
-    d = safe_add(d, oldd);
-  }
-  return Array(a, b, c, d);
-
-}
-
-/*
- * These functions implement the four basic operations the algorithm uses.
- */
-function md5_cmn(q, a, b, x, s, t)
-{
-  return safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s),b);
-}
-function md5_ff(a, b, c, d, x, s, t)
-{
-  return md5_cmn((b & c) | ((~b) & d), a, b, x, s, t);
-}
-function md5_gg(a, b, c, d, x, s, t)
-{
-  return md5_cmn((b & d) | (c & (~d)), a, b, x, s, t);
-}
-function md5_hh(a, b, c, d, x, s, t)
-{
-  return md5_cmn(b ^ c ^ d, a, b, x, s, t);
-}
-function md5_ii(a, b, c, d, x, s, t)
-{
-  return md5_cmn(c ^ (b | (~d)), a, b, x, s, t);
-}
-
-/*
- * Calculate the HMAC-MD5, of a key and some data
- */
-function core_hmac_md5(key, data)
-{
-  var bkey = str2binl(key);
-  if(bkey.length > 16) bkey = core_md5(bkey, key.length * chrsz);
-
-  var ipad = Array(16), opad = Array(16);
-  for(var i = 0; i < 16; i++)
-  {
-    ipad[i] = bkey[i] ^ 0x36363636;
-    opad[i] = bkey[i] ^ 0x5C5C5C5C;
-  }
-
-  var hash = core_md5(ipad.concat(str2binl(data)), 512 + data.length * chrsz);
-  return core_md5(opad.concat(hash), 512 + 128);
-}
-
-/*
- * Add integers, wrapping at 2^32. This uses 16-bit operations internally
- * to work around bugs in some JS interpreters.
- */
-function safe_add(x, y)
-{
-  var lsw = (x & 0xFFFF) + (y & 0xFFFF);
-  var msw = (x >> 16) + (y >> 16) + (lsw >> 16);
-  return (msw << 16) | (lsw & 0xFFFF);
-}
-
-/*
- * Bitwise rotate a 32-bit number to the left.
- */
-function bit_rol(num, cnt)
-{
-  return (num << cnt) | (num >>> (32 - cnt));
-}
-
-/*
- * Convert a string to an array of little-endian words
- * If chrsz is ASCII, characters >255 have their hi-byte silently ignored.
- */
-function str2binl(str)
-{
-  var bin = Array();
-  var mask = (1 << chrsz) - 1;
-  for(var i = 0; i < str.length * chrsz; i += chrsz)
-    bin[i>>5] |= (str.charCodeAt(i / chrsz) & mask) << (i%32);
-  return bin;
-}
-
-/*
- * Convert an array of little-endian words to a string
- */
-function binl2str(bin)
-{
-  var str = "";
-  var mask = (1 << chrsz) - 1;
-  for(var i = 0; i < bin.length * 32; i += chrsz)
-    str += String.fromCharCode((bin[i>>5] >>> (i % 32)) & mask);
-  return str;
-}
-
-/*
- * Convert an array of little-endian words to a hex string.
- */
-function binl2hex(binarray)
-{
-  var hex_tab = hexcase ? "0123456789ABCDEF" : "0123456789abcdef";
-  var str = "";
-  for(var i = 0; i < binarray.length * 4; i++)
-  {
-    str += hex_tab.charAt((binarray[i>>2] >> ((i%4)*8+4)) & 0xF) +
-           hex_tab.charAt((binarray[i>>2] >> ((i%4)*8  )) & 0xF);
-  }
-  return str;
-}
-
-/*
- * Convert an array of little-endian words to a base-64 string
- */
-function binl2b64(binarray)
-{
-  var tab = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
-  var str = "";
-  for(var i = 0; i < binarray.length * 4; i += 3)
-  {
-    var triplet = (((binarray[i   >> 2] >> 8 * ( i   %4)) & 0xFF) << 16)
-                | (((binarray[i+1 >> 2] >> 8 * ((i+1)%4)) & 0xFF) << 8 )
-                |  ((binarray[i+2 >> 2] >> 8 * ((i+2)%4)) & 0xFF);
-    for(var j = 0; j < 4; j++)
-    {
-      if(i * 8 + j * 6 > binarray.length * 32) str += b64pad;
-      else str += tab.charAt((triplet >> 6*(3-j)) & 0x3F);
-    }
-  }
-  return str;
-}

+ 0 - 142
report-gf/src/main/resources/templates/FaultReport.html

@@ -1,142 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head lang="en">
-    <meta charset="UTF-8">
-    <script src="https://cdn.bootcss.com/jquery/1.10.2/jquery.min.js"></script>
-    <title></title>
-    <link rel="stylesheet" href="../layui-v2.6.8/layui/css/layui.css" media="all">
-</head>
-<style>
-
-</style>
-
-<body>
-<ul class="layui-nav layui-bg-blue" lay-bar="disabled">
-    <li class="layui-nav-item"><a href="http://localhost:8090/indexPro">报表导入</a></li>
-    <li class="layui-nav-item"><a href=""></a></li>
-<!--
-    <li class="layui-nav-item layui-this"><a href="http://localhost:8090/indexFault">故障日报导入</a></li>
--->
-
-</ul>
-<div class="layui-form-item" style="height: 30px"></div>
-<form id="uploadForm" enctype="multipart/form-data" class="layui-form" >
-
-
-    <div class="layui-form-item">
-        <div class="layui-inline">
-            <label class="layui-form-label">区域</label>
-            <div class="layui-input-block">
-                <select name="interest" lay-filter="aihao" id = "departId">
-                    <option value="185SC">山西</option>
-                    <option value="131SC">太旗</option>
-                </select>
-            </div>
-        </div>
-        <!--<div class="layui-inline">
-            <label class="layui-form-label">日期</label>
-            <div class="layui-input-inline">
-                <input type="text"  name="date" id="demoTest" required  lay-verify="required"  placeholder="yyyy-MM-dd" autocomplete="off" class="layui-input">
-            </div>
-        </div>-->
-        <div class="layui-inline">
-            <label class="layui-form-label">文件选择</label>
-            <div class="layui-input-inline">
-                <input id="file" type="file" name="file"  required  lay-verify="required" autocomplete="off" class="layui-input">
-            </div>
-        </div>
-
-    </div>
-    <div class="layui-form-item">
-        <div class="layui-input-block">
-            <button id="upload" type="button" class="layui-btn layui-btn-lg layui-btn-normal" lay-submit lay-filter="uploadForm">提交</button>
-        </div>
-    </div>
-
-</form>
-<br>
-
-<script src="../laydate/laydate.js"></script> <!-- 改成你的路径 -->
-<script src="../layui-v2.6.8/layui/layui.js"></script>
-<script src="../md5.js"></script><!-- 改成你的路径 -->
-<script>
-
-    layui.use(['layer','form'], function(){
-        var form = layui.form;
-
-        //监听提交
-        form.on('submit(uploadForm)', function(data){
-            var departId=$("#departId").val();
-            var files = document.getElementById("file").files;
-            //创建FormData对象
-            var formdata = new FormData();
-            for(var i=0;i<files.length;i++){
-                console.info(files[i].name);
-                formdata.append("file", files[i]);
-            }
-            formdata.append("departId",departId);
-            //var data = new FormData($('#uploadForm')[0]);
-            console.log(file)
-            $.ajax({
-                type: 'post',
-                url: "http://localhost:8090/report/importFault",
-                data: formdata,
-                cache: false,
-                processData: false,
-                contentType: false,
-                success:function(data){
-                    layer.msg(data.msg,{icon: 5})
-                    location.reload();
-                },
-                error:function (data){
-                    layer.msg("程序error",{icon: 5})
-                    location.reload();
-                }
-        });
-
-    });
-        })
-
-</script>
-</body>
-<script src="../js/jquery-3.6.0.min.js"></script>
-<!--<script type="text/javascript">
-
-    $(function () {
-        $("#upload").click(function () {
-            var departId=$("#departId").val();
-            var format=$("#demoTest").val();
-            if (format.values == ''){
-                alert("日期不能空")
-            }
-            console.log(departId)
-            var files = document.getElementById("file").files;
-            if (files.values == ''){
-                alert("文件不能空")
-            }
-            //创建FormData对象
-            var formdata = new FormData();
-            for(var i=0;i<files.length;i++){
-                console.info(files[i].name);
-                formdata.append("file", files[i]);
-            }
-            formdata.append("departId",departId);
-            formdata.append("format",format);
-            //var data = new FormData($('#uploadForm')[0]);
-            console.log(file)
-            $.ajax({
-                type: 'post',
-                url: "http://localhost:8090/report/import",
-                data: formdata,
-                cache: false,
-                processData: false,
-                contentType: false,
-            }).success(function (data) {
-                alert("上传成功");
-            }).error(function () {
-                alert("上传失败");
-            });
-        });
-    });
-</script>-->
-</html>

+ 0 - 95
report-gf/src/main/resources/templates/productionReport.html

@@ -1,95 +0,0 @@
-<!DOCTYPE html>
-<html>
-<head lang="en">
-    <meta charset="UTF-8">
-    <script src="https://cdn.bootcss.com/jquery/1.10.2/jquery.min.js"></script>
-    <title></title>
-    <link rel="stylesheet" href="../layui-v2.6.8/layui/css/layui.css" media="all">
-</head>
-<style>
-
-</style>
-
-<body>
-<ul class="layui-nav layui-bg-blue" lay-bar="disabled">
-    <li class="layui-nav-item layui-this" ><a href="http://localhost:8090/indexPro" >光伏报表导入</a></li>
-    <li class="layui-nav-item"><a href=""></a></li>
-<!--
-    <li class="layui-nav-item"><a href="http://localhost:8090/indexFault" >故障日报导入</a></li>
--->
-
-</ul>
-<div class="layui-form-item" style="height: 30px"></div>
-<form id="uploadForm" enctype="multipart/form-data" class="layui-form" >
-
-
-    <div class="layui-form-item">
-        <div class="layui-inline">
-            <label class="layui-form-label">区域</label>
-            <div class="layui-input-block">
-                <select name="departId" lay-filter="aihao" id = "departId">
-                    <option value="317sc">海子井光伏</option>
-                </select>
-            </div>
-        </div>
-        <div class="layui-inline">
-            <label class="layui-form-label">文件选择</label>
-            <div class="layui-input-inline">
-                <input id="file" type="file" name="file"  required  lay-verify="required" autocomplete="off" class="layui-input">
-            </div>
-        </div>
-
-    </div>
-    <div class="layui-form-item">
-        <div class="layui-input-block">
-            <button id="upload" type="button" class="layui-btn layui-btn-lg layui-btn-normal" lay-submit lay-filter="uploadForm">提交</button>
-        </div>
-    </div>
-
-</form>
-<br>
-
-<script src="../laydate/laydate.js"></script> <!-- 改成你的路径 -->
-<script src="../layui-v2.6.8/layui/layui.js"></script>
-<script src="../md5.js"></script><!-- 改成你的路径 -->
-<script type="text/javascript">
-
-    layui.use('form', function(){
-        var form = layui.form;
-
-        //监听提交
-        form.on('submit(uploadForm)', function(data){
-            console.log(data)
-            var departId=$("#departId").val();
-            var files = document.getElementById("file").files;
-            //创建FormData对象
-            var formdata = new FormData();
-            for(var i=0;i<files.length;i++){
-                console.info(files[i].name);
-                formdata.append("file", files[i]);
-            }
-            formdata.append("departId",departId);
-            console.log(file)
-            $.ajax({
-                type: 'post',
-                url: "http://localhost:8090/report/importPro",
-                data: formdata,
-                cache: false,
-                processData: false,
-                contentType: false,
-                success:function(data){
-                    layer.msg(data.msg,{icon: 5})
-                    location.reload();
-                },
-                error:function (data){
-                    layer.msg("程序error",{icon: 5})
-                    location.reload();
-                },
-            })
-        });
-    });
-
-</script>
-</body>
-<script src="../js/jquery-3.6.0.min.js"></script>
-</html>

+ 0 - 1
settings.gradle

@@ -1,3 +1,2 @@
 rootProject.name = "report-import"
 include 'report-fd'
-include 'report-gf'