浏览代码

部分字段调整,以及解析增删改查,解析逻辑调整,初版开发完成

tl 7 月之前
父节点
当前提交
9d8777a9c7
共有 37 个文件被更改,包括 1837 次插入1296 次删除
  1. 4 3
      cpp-admin/src/main/java/com/cpp/web/controller/configManager/FtpChannelController.java
  2. 4 2
      cpp-admin/src/main/java/com/cpp/web/controller/configManager/ParsingCdqController.java
  3. 4 2
      cpp-admin/src/main/java/com/cpp/web/controller/configManager/ParsingCftController.java
  4. 4 2
      cpp-admin/src/main/java/com/cpp/web/controller/configManager/ParsingDqController.java
  5. 4 2
      cpp-admin/src/main/java/com/cpp/web/controller/configManager/ParsingFjController.java
  6. 8 0
      cpp-admin/src/main/java/com/cpp/web/controller/configManager/ParsingInfoController.java
  7. 4 2
      cpp-admin/src/main/java/com/cpp/web/controller/configManager/ParsingNbqController.java
  8. 4 2
      cpp-admin/src/main/java/com/cpp/web/controller/configManager/ParsingNwpController.java
  9. 4 2
      cpp-admin/src/main/java/com/cpp/web/controller/configManager/ParsingQxzController.java
  10. 4 2
      cpp-admin/src/main/java/com/cpp/web/controller/configManager/ParsingRpController.java
  11. 59 0
      cpp-admin/src/main/java/com/cpp/web/controller/configManager/ParsingTypeController.java
  12. 1 6
      cpp-admin/src/main/java/com/cpp/web/domain/datafactory/BaseParsing.java
  13. 29 29
      cpp-admin/src/main/java/com/cpp/web/domain/datafactory/ParsingCft.java
  14. 0 8
      cpp-admin/src/main/java/com/cpp/web/domain/datafactory/ParsingDq.java
  15. 8 0
      cpp-admin/src/main/java/com/cpp/web/domain/datafactory/ParsingFj.java
  16. 8 0
      cpp-admin/src/main/java/com/cpp/web/domain/datafactory/ParsingNbq.java
  17. 0 9
      cpp-admin/src/main/java/com/cpp/web/domain/datafactory/ParsingQxz.java
  18. 6 1
      cpp-admin/src/main/java/com/cpp/web/domain/station/InverterStatusData.java
  19. 6 1
      cpp-admin/src/main/java/com/cpp/web/domain/station/WindTurbineStatusData.java
  20. 1 1
      cpp-admin/src/main/java/com/cpp/web/service/datafactory/BaseParsingService.java
  21. 2 3
      cpp-admin/src/main/java/com/cpp/web/service/datafactory/FtpFileParsing.java
  22. 17 12
      cpp-admin/src/main/java/com/cpp/web/service/datafactory/ParsingInterface.java
  23. 3 2
      cpp-admin/src/main/java/com/cpp/web/service/datafactory/impl/BaseParsingServiceImpl.java
  24. 23 23
      cpp-admin/src/main/java/com/cpp/web/service/datafactory/impl/ParsingCftServiceImpl.java
  25. 61 42
      cpp-admin/src/main/java/com/cpp/web/service/datafactory/impl/ParsingFjServiceImpl.java
  26. 47 33
      cpp-admin/src/main/java/com/cpp/web/service/datafactory/impl/ParsingNbqServiceImpl.java
  27. 1 1
      cpp-admin/src/main/java/com/cpp/web/service/datafactory/impl/ParsingRpServiceImpl.java
  28. 25 24
      cpp-ui/src/views/configManager/ftpChannel/index.vue
  29. 102 74
      cpp-ui/src/views/configManager/parsingConf/cdqparsing.vue
  30. 357 370
      cpp-ui/src/views/configManager/parsingConf/cftparsing.vue
  31. 109 66
      cpp-ui/src/views/configManager/parsingConf/dqparsing.vue
  32. 147 136
      cpp-ui/src/views/configManager/parsingConf/fjparsing.vue
  33. 128 108
      cpp-ui/src/views/configManager/parsingConf/nbqparsing.vue
  34. 150 161
      cpp-ui/src/views/configManager/parsingConf/nwpparsing.vue
  35. 108 105
      cpp-ui/src/views/configManager/parsingConf/qxzparsing.vue
  36. 180 62
      cpp-ui/src/views/configManager/parsingConf/rpparsing.vue
  37. 215 0
      cpp-ui/src/views/configManager/parsingType/index.vue

+ 4 - 3
cpp-admin/src/main/java/com/cpp/web/controller/configManager/FtpChannelController.java

@@ -50,8 +50,9 @@ public class FtpChannelController {
 
     @ApiOperation(value = "分页查询", notes = "分页查询")
     @GetMapping("/page")
-    public R page(FtpChannel ftpChannel, Page page) {
-
-        return R.ok(ftpChannelService.page(page, Wrappers.query(ftpChannel)));
+    public R page(Long currentPage,Long pageSize) {
+        Page page = new Page(currentPage, pageSize);
+        page.setMaxLimit((long) -1);
+        return R.ok(ftpChannelService.page(page));
     }
 }

+ 4 - 2
cpp-admin/src/main/java/com/cpp/web/controller/configManager/ParsingCdqController.java

@@ -48,7 +48,9 @@ public class ParsingCdqController {
 
     @ApiOperation(value = "分页查询超短期配置", notes = "分页查询超短期配置")
     @GetMapping("/page")
-    public R page(ParsingCdq parsingCdq, Page page) {
-        return R.ok(parsingCdqService.page(page, Wrappers.query(parsingCdq)));
+    public R page(Long currentPage,Long pageSize) {
+        Page page = new Page(currentPage, pageSize);
+        page.setMaxLimit((long) -1);
+        return R.ok(parsingCdqService.page(page));
     }
 }

+ 4 - 2
cpp-admin/src/main/java/com/cpp/web/controller/configManager/ParsingCftController.java

@@ -49,7 +49,9 @@ public class ParsingCftController {
 
     @ApiOperation(value = "分页查询Cft配置", notes = "分页查询Cft配置")
     @GetMapping("/page")
-    public R page(ParsingCft parsingCft, Page page) {
-        return R.ok(parsingCftService.page(page, Wrappers.query(parsingCft)));
+    public R page(Long currentPage,Long pageSize) {
+        Page page = new Page(currentPage, pageSize);
+        page.setMaxLimit((long) -1);
+        return R.ok(parsingCftService.page(page));
     }
 }

+ 4 - 2
cpp-admin/src/main/java/com/cpp/web/controller/configManager/ParsingDqController.java

@@ -49,7 +49,9 @@ public class ParsingDqController {
 
     @ApiOperation(value = "分页查询短期配置", notes = "分页查询短期配置")
     @GetMapping("/page")
-    public R page(ParsingDq parsingDq, Page page) {
-        return R.ok(parsingDqService.page(page, Wrappers.query(parsingDq)));
+    public R page(Long currentPage,Long pageSize) {
+        Page page = new Page(currentPage, pageSize);
+        page.setMaxLimit((long) -1);
+        return R.ok(parsingDqService.page(page));
     }
 }

+ 4 - 2
cpp-admin/src/main/java/com/cpp/web/controller/configManager/ParsingFjController.java

@@ -48,7 +48,9 @@ public class ParsingFjController {
 
     @ApiOperation(value = "分页查询Fj配置", notes = "分页查询Fj配置")
     @GetMapping("/page")
-    public R page(ParsingFj parsingFj, Page page) {
-        return R.ok(parsingFjService.page(page, Wrappers.query(parsingFj)));
+    public R page(Long currentPage,Long pageSize) {
+        Page page = new Page(currentPage, pageSize);
+        page.setMaxLimit((long) -1);
+        return R.ok(parsingFjService.page(page));
     }
 }

+ 8 - 0
cpp-admin/src/main/java/com/cpp/web/controller/configManager/ParsingInfoController.java

@@ -1,6 +1,8 @@
 package com.cpp.web.controller.configManager;
 
 import com.cpp.common.core.domain.R;
+import com.cpp.web.domain.datafactory.BaseParsing;
+import com.cpp.web.service.datafactory.BaseParsingService;
 import com.cpp.web.service.station.ElectricFieldService;
 import io.swagger.annotations.ApiOperation;
 import lombok.RequiredArgsConstructor;
@@ -16,6 +18,7 @@ public class ParsingInfoController {
 
     private final ElectricFieldService electricFieldService;
 
+    private final BaseParsingService baseParsingService;
 
     @ApiOperation(value = "获取场站", notes = "获取场站")
     @GetMapping("/getElectricField")
@@ -23,4 +26,9 @@ public class ParsingInfoController {
         return R.ok(electricFieldService.list());
     }
 
+    @ApiOperation(value = "获取解析文件类型", notes = "获取解析文件类型")
+    @GetMapping("/getFileTypes")
+    public R getFileTypes(){
+        return R.ok(baseParsingService.getFileTypes());
+    }
 }

+ 4 - 2
cpp-admin/src/main/java/com/cpp/web/controller/configManager/ParsingNbqController.java

@@ -50,7 +50,9 @@ public class ParsingNbqController {
 
     @ApiOperation(value = "分页查询Nbq配置", notes = "分页查询Nbq配置")
     @GetMapping("/page")
-    public R page(ParsingNbq parsingNbq, Page page) {
-        return R.ok(parsingNbqService.page(page, Wrappers.query(parsingNbq)));
+    public R page(Long currentPage,Long pageSize) {
+        Page page = new Page(currentPage, pageSize);
+        page.setMaxLimit((long) -1);
+        return R.ok(parsingNbqService.page(page));
     }
 }

+ 4 - 2
cpp-admin/src/main/java/com/cpp/web/controller/configManager/ParsingNwpController.java

@@ -50,7 +50,9 @@ public class ParsingNwpController {
 
     @ApiOperation(value = "分页查询Nwp配置", notes = "分页查询Nwp配置")
     @GetMapping("/page")
-    public R page(ParsingNwp parsingNwp, Page page) {
-        return R.ok(parsingNwpService.page(page, Wrappers.query(parsingNwp)));
+    public R page(Long currentPage,Long pageSize) {
+        Page page = new Page(currentPage, pageSize);
+        page.setMaxLimit((long) -1);
+        return R.ok(parsingNwpService.page(page));
     }
 }

+ 4 - 2
cpp-admin/src/main/java/com/cpp/web/controller/configManager/ParsingQxzController.java

@@ -50,7 +50,9 @@ public class ParsingQxzController {
 
     @ApiOperation(value = "分页查询Qxz配置", notes = "分页查询Qxz配置")
     @GetMapping("/page")
-    public R page(ParsingQxz parsingQxz, Page page) {
-        return R.ok(parsingQxzService.page(page, Wrappers.query(parsingQxz)));
+    public R page(Long currentPage,Long pageSize) {
+        Page page = new Page(currentPage, pageSize);
+        page.setMaxLimit((long) -1);
+        return R.ok(parsingQxzService.page(page));
     }
 }

+ 4 - 2
cpp-admin/src/main/java/com/cpp/web/controller/configManager/ParsingRpController.java

@@ -50,7 +50,9 @@ public class ParsingRpController {
 
     @ApiOperation(value = "分页查询实际功率配置", notes = "分页查询实际功率配置")
     @GetMapping("/page")
-    public R page(ParsingRp parsingRp, Page page) {
-        return R.ok(parsingRpService.page(page, Wrappers.query(parsingRp)));
+    public R page(Long currentPage,Long pageSize) {
+        Page page = new Page(currentPage, pageSize);
+        page.setMaxLimit((long) -1);
+        return R.ok(parsingRpService.page(page));
     }
 }

+ 59 - 0
cpp-admin/src/main/java/com/cpp/web/controller/configManager/ParsingTypeController.java

@@ -0,0 +1,59 @@
+package com.cpp.web.controller.configManager;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.cpp.common.core.domain.R;
+import com.cpp.web.domain.datafactory.ParsingType;
+import com.cpp.web.service.datafactory.ParsingTypeService;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+@RestController
+@Slf4j
+@RequestMapping("/parsingType")
+@AllArgsConstructor
+public class ParsingTypeController {
+
+    private final ParsingTypeService parsingTypeService;
+
+
+    @ApiOperation(value = "添加ftp通道", notes = "添加ftp通道")
+    @PostMapping()
+    public Boolean add(@RequestBody ParsingType parsingType) {
+        return parsingTypeService.save(parsingType);
+    }
+
+    @ApiOperation(value = "修改ftp通道", notes = "修改ftp通道")
+    @PutMapping()
+    public Boolean update(@RequestBody ParsingType ftpChannel) {
+        return parsingTypeService.updateById(ftpChannel);
+
+    }
+
+
+    @ApiOperation(value = "根据id删除ftp通道", notes = "根据id删除ftp通道")
+    @DeleteMapping("/{id}")
+    public Boolean delete(@PathVariable String id) {
+        return parsingTypeService.removeById(id);
+
+    }
+
+    @ApiOperation(value = "查询所有ftp通道", notes = "查询所有ftp通道")
+    @GetMapping()
+    public List<ParsingType> getAll() {
+         return parsingTypeService.list();
+    }
+
+    @ApiOperation(value = "分页查询", notes = "分页查询")
+    @GetMapping("/page")
+    public R page(Long currentPage,Long pageSize) {
+        Page page = new Page(currentPage, pageSize);
+        page.setMaxLimit((long) -1);
+        return R.ok(parsingTypeService.page(page));
+    }
+
+
+}

+ 1 - 6
cpp-admin/src/main/java/com/cpp/web/domain/datafactory/BaseParsing.java

@@ -21,14 +21,9 @@ public class BaseParsing extends BaseCppEntity {
     /**
      * 数据类型(s:单行,m:多行)
      */
-    @ApiModelProperty(value = "文件名")
+    @ApiModelProperty(value = "数据类型")
     private String dataType;
 
-    /**
-     * 文件名
-     */
-    @ApiModelProperty(value = "文件名")
-    private String fileName;
 
     /**
      * 文件类型

+ 29 - 29
cpp-admin/src/main/java/com/cpp/web/domain/datafactory/ParsingCft.java

@@ -39,14 +39,14 @@ public class ParsingCft extends BaseParsing {
      * 温度瞬时值
      */
     @ApiModelProperty(value = "温度瞬时值")
-    private String tInst;
+    private String t;
 
 
     /**
      * 湿度瞬时值(%)
      */
     @ApiModelProperty(value = "湿度瞬时值(%)")
-    private String rhInst;
+    private String rh;
 
 
 
@@ -55,7 +55,7 @@ public class ParsingCft extends BaseParsing {
      * 气压瞬时值(KPa)
      */
     @ApiModelProperty(value = "气压瞬时值(KPa)")
-    private String paInst;
+    private String pa;
 
 
 
@@ -64,7 +64,7 @@ public class ParsingCft extends BaseParsing {
      * 10米风速瞬时值(m/s)
      */
     @ApiModelProperty(value = "10米风速瞬时值(m/s)")
-    private String wsInst10;
+    private String ws10;
 
 
 
@@ -72,7 +72,7 @@ public class ParsingCft extends BaseParsing {
      * 10米风向瞬时值(°)
      */
     @ApiModelProperty(value = "10米风向瞬时值(°)")
-    private String wdInst10;
+    private String wd10;
 
 
 
@@ -80,28 +80,28 @@ public class ParsingCft extends BaseParsing {
      * 30米风速瞬时值(m/s)
      */
     @ApiModelProperty(value = "30米风速瞬时值(m/s)")
-    private String wsInst30;
+    private String ws30;
 
 
     /**
      * 30米风向瞬时值(°)
      */
     @ApiModelProperty(value = "30米风向瞬时值(°)")
-    private String wdInst30;
+    private String wd30;
 
 
     /**
      * 50米风速瞬时值(m/s)
      */
     @ApiModelProperty(value = "50米风速瞬时值(m/s)")
-    private String wsInst50;
+    private String ws50;
 
 
     /**
      * 50米风向瞬时值(°)
      */
     @ApiModelProperty(value = "50米风向瞬时值(°)")
-    private String wdInst50;
+    private String wd50;
 
 
 
@@ -109,7 +109,7 @@ public class ParsingCft extends BaseParsing {
      * 60米风速瞬时值(m/s)
      */
     @ApiModelProperty(value = "60米风速瞬时值(m/s)")
-    private String wsInst60;
+    private String ws60;
 
 
 
@@ -117,7 +117,7 @@ public class ParsingCft extends BaseParsing {
      * 60米风向瞬时值(°)
      */
     @ApiModelProperty(value = "60米风向瞬时值(°)")
-    private String wdInst60;
+    private String wd60;
 
 
 
@@ -125,7 +125,7 @@ public class ParsingCft extends BaseParsing {
      * 70米风速瞬时值(m/s)
      */
     @ApiModelProperty(value = "70米风速瞬时值(m/s)")
-    private String wsInst70;
+    private String ws70;
 
 
 
@@ -133,21 +133,21 @@ public class ParsingCft extends BaseParsing {
      * 70米风向瞬时值(°)
      */
     @ApiModelProperty(value = "70米风向瞬时值(°)")
-    private String wdInst70;
+    private String wd70;
 
-    public String gettInst() {
-        return tInst;
+    public String gett() {
+        return t;
     }
 
-    public void settInst(String tInst) {
-        this.tInst = tInst;
+    public void sett(String t) {
+        this.t = t;
     }
 
     /**
      * 80米风速瞬时值(m/s)
      */
     @ApiModelProperty(value = "80米风速瞬时值(m/s)")
-    private String wsInst80;
+    private String ws80;
 
 
 
@@ -155,7 +155,7 @@ public class ParsingCft extends BaseParsing {
      * 80米风向瞬时值(°)
      */
     @ApiModelProperty(value = "80米风向瞬时值(°)")
-    private String wdInst80;
+    private String wd80;
 
 
 
@@ -163,7 +163,7 @@ public class ParsingCft extends BaseParsing {
      * 90米风速瞬时值(m/s)
      */
     @ApiModelProperty(value = "90米风速瞬时值(m/s)")
-    private String wsInst90;
+    private String ws90;
 
 
 
@@ -171,7 +171,7 @@ public class ParsingCft extends BaseParsing {
      * 90米风向瞬时值(°)
      */
     @ApiModelProperty(value = "90米风向瞬时值(°)")
-    private String wdInst90;
+    private String wd90;
 
 
 
@@ -179,7 +179,7 @@ public class ParsingCft extends BaseParsing {
      * 100米风速瞬时值(m/s)
      */
     @ApiModelProperty(value = "100米风速瞬时值(m/s)")
-    private String wsInst100;
+    private String ws100;
 
 
 
@@ -187,7 +187,7 @@ public class ParsingCft extends BaseParsing {
      * 100米风向瞬时值(°)
      */
     @ApiModelProperty(value = "100米风向瞬时值(°)")
-    private String wdInst100;
+    private String wd100;
 
 
 
@@ -195,7 +195,7 @@ public class ParsingCft extends BaseParsing {
      * 110米风速瞬时值(m/s)
      */
     @ApiModelProperty(value = "110米风速瞬时值(m/s)")
-    private String wsInst110;
+    private String ws110;
 
 
 
@@ -203,7 +203,7 @@ public class ParsingCft extends BaseParsing {
      * 110米风向瞬时值(°)
      */
     @ApiModelProperty(value = "110米风向瞬时值(°)")
-    private String wdInst110;
+    private String wd110;
 
 
 
@@ -211,7 +211,7 @@ public class ParsingCft extends BaseParsing {
      * 120米风速瞬时值(m/s)
      */
     @ApiModelProperty(value = "120米风速瞬时值(m/s)")
-    private String wsInst120;
+    private String ws120;
 
 
 
@@ -219,21 +219,21 @@ public class ParsingCft extends BaseParsing {
      * 120米风向瞬时值(°)
      */
     @ApiModelProperty(value = "120米风向瞬时值(°)")
-    private String wdInst120;
+    private String wd120;
 
 
     /**
      * 风机轮毂高度风速瞬时值
      */
     @ApiModelProperty(value = "风机轮毂高度风速瞬时值")
-    private String wsInstHubHeight;
+    private String wsHubHeight;
 
 
     /**
      * 风机轮毂高度风向瞬时值(°)
      */
     @ApiModelProperty(value = "风机轮毂高度风向瞬时值(°)")
-    private String wdInstHubHeight;
+    private String wdHubHeight;
 
 
     /**

+ 0 - 8
cpp-admin/src/main/java/com/cpp/web/domain/datafactory/ParsingDq.java

@@ -20,14 +20,6 @@ import java.io.Serializable;
 @ApiModel(value = "cpp_parsing_dq")
 public class ParsingDq extends BaseParsing{
 
-
-    /**
-     * 数据生成日期
-     */
-    @ApiModelProperty(value = "数据生成日期")
-    private String genDate;
-
-
     /**
      * 预测时间
      */

+ 8 - 0
cpp-admin/src/main/java/com/cpp/web/domain/datafactory/ParsingFj.java

@@ -130,4 +130,12 @@ public class ParsingFj extends BaseParsing {
      */
     @ApiModelProperty(value = "累积发电量(MW·h)")
     private String cumulativeGeneratedEnergy;
+
+
+
+    /**
+     * 是否样板机
+     */
+    @ApiModelProperty(value = "是否样板机")
+    private String isSample;
 }

+ 8 - 0
cpp-admin/src/main/java/com/cpp/web/domain/datafactory/ParsingNbq.java

@@ -97,4 +97,12 @@ public class ParsingNbq extends BaseParsing {
     @ApiModelProperty(value = "当日并网小时数")
     private String dayGridConnectedHours;
 
+
+    /**
+     * 是否样板机
+     */
+    @ApiModelProperty(value = "是否样板机")
+    private String isSample;
+
+
 }

+ 0 - 9
cpp-admin/src/main/java/com/cpp/web/domain/datafactory/ParsingQxz.java

@@ -28,15 +28,6 @@ public class ParsingQxz extends BaseParsing {
 
 
     /**
-     * 文件名
-     */
-    @ApiModelProperty(value = "文件名")
-    private String fileName;
-
-
-
-
-    /**
      * 状态值为1代表运行,2代表待机,3代表停用,4代表故障
      */
     @ApiModelProperty(value = "状态值为1代表运行,2代表待机,3代表停用,4代表故障")

+ 6 - 1
cpp-admin/src/main/java/com/cpp/web/domain/station/InverterStatusData.java

@@ -38,7 +38,7 @@ public class InverterStatusData extends BaseCppEntity {
      * 状态值为1代表运行,2代表待机,3代表停用,4代表故障
      */
     @ApiModelProperty(value = "状态值为1代表运行,2代表待机,3代表停用,4代表故障")
-    private String status;
+    private Integer status;
 
 
     /**
@@ -114,4 +114,9 @@ public class InverterStatusData extends BaseCppEntity {
     private BigDecimal dayGridConnectedHours = new BigDecimal(-99);
 
 
+    /**
+     * 是否样板机
+     */
+    @ApiModelProperty(value = "是否样板机:1是,0不是")
+    private Integer isSample;
 }

+ 6 - 1
cpp-admin/src/main/java/com/cpp/web/domain/station/WindTurbineStatusData.java

@@ -37,7 +37,7 @@ public class WindTurbineStatusData extends BaseCppEntity {
      * 状态值为1代表运行,2代表待机,3代表停用,4代表故障
      */
     @ApiModelProperty(value = "状态值为1代表运行,2代表待机,3代表停用,4代表故障")
-    private String status;
+    private Integer status;
 
 
     /**
@@ -139,4 +139,9 @@ public class WindTurbineStatusData extends BaseCppEntity {
     private BigDecimal cumulativeGeneratedEnergy = new BigDecimal(-99);
 
 
+    /**
+     * 是否样板机
+     */
+    @ApiModelProperty(value = "是否样板机:1是,0不是")
+    private Integer isSample;
 }

+ 1 - 1
cpp-admin/src/main/java/com/cpp/web/service/datafactory/BaseParsingService.java

@@ -9,7 +9,7 @@ public interface BaseParsingService {
     List<BaseParsing> getParsingInfos();
 
 
-    List<Map<String,String>> getFileType();
+    List<Map<String,String>> getFileTypes();
 
 
     boolean save(BaseParsing baseParsing);

+ 2 - 3
cpp-admin/src/main/java/com/cpp/web/service/datafactory/FtpFileParsing.java

@@ -23,7 +23,6 @@ import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
 import org.springframework.stereotype.Service;
 
 import java.io.File;
-import java.io.FileInputStream;
 import java.io.IOException;
 import java.nio.charset.Charset;
 import java.util.*;
@@ -208,9 +207,9 @@ public class FtpFileParsing {
 
                 //设置主动模式连接
                 ftp = new Ftp(ftpConfig, FtpMode.Active);
-                log.info("{} :ftp服务器连接成功", ftpConfig.getHost());
+                log.info("ip:{} :ftp服务器连接成功,error:", ftpConfig.getHost());
             } catch (Exception e) {
-                log.error("{} :ftp服务器连接失败", ftpConfig.getHost(), e);
+                log.error("ip:{} :ftp服务器连接失败,error", ftpConfig.getHost(), e);
                 if (ftp != null) {
                     ftp.close();
                 }

+ 17 - 12
cpp-admin/src/main/java/com/cpp/web/service/datafactory/ParsingInterface.java

@@ -11,6 +11,7 @@ import com.cpp.web.utils.ParsingUtil;
 import java.io.File;
 import java.math.BigDecimal;
 import java.text.SimpleDateFormat;
+import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 
@@ -81,8 +82,8 @@ public interface ParsingInterface {
     }
 
 
-    default String parsingStatus(String sign, List<String> fileContent) {
-        String status = null;
+    default Integer parsingStatus(String sign, List<String> fileContent) {
+        Integer status = -1;
         try {
             if (sign != null && !sign.equals("")) {
                 ParsingConfParam config = ParsingFieldUtil.getConfig(sign);
@@ -91,7 +92,7 @@ public interface ParsingInterface {
 
                 String[] strings = ParsingUtil.splitLineWithSpace(s);
                 int rowNumber = Integer.parseInt(config.getRowNumber()) - 1;
-                status = strings[rowNumber];
+                status = Integer.parseInt(strings[rowNumber]);
             }
         } catch (RuntimeException e) {
             e.printStackTrace();
@@ -101,23 +102,27 @@ public interface ParsingInterface {
     }
 
 
-    default String parsingName(String sign, List<String> fileContent) {
+    default List<String> parsingNames(String sign, List<String> fileContent) {
 
-        String name = "";
+        List<String> names = new ArrayList<>();
         try {
-            if (sign != null && !sign.equals("")) {
-                ParsingConfParam config = ParsingFieldUtil.getConfig(sign);
+            ParsingConfParam config = ParsingFieldUtil.getConfig(sign);
 
-                String s = fileContent.get(Integer.parseInt(config.getLineNumber()) - 1);
 
-                String[] strings = ParsingUtil.splitLineWithSpace(s);
-                int rowNumber = Integer.parseInt(config.getRowNumber()) - 1;
-                name = strings[rowNumber];
+            String[] lineNumber = config.getLineNumber().split("-");
+            int startLine = ParsingUtil.noParseInt(lineNumber[0]);
+            int endLine = ParsingUtil.noParseInt(lineNumber[1]);
+
+            for (int i = startLine; i <= endLine; i++) {
+                String[] strings = ParsingUtil.splitLineWithSpace(fileContent.get(i));
+                String result = strings[ParsingUtil.noParseInt(config.getRowNumber())];
+
+                names.add(result);
             }
         } catch (RuntimeException e) {
             e.printStackTrace();
         } finally {
-            return name;
+            return names;
         }
     }
 

+ 3 - 2
cpp-admin/src/main/java/com/cpp/web/service/datafactory/impl/BaseParsingServiceImpl.java

@@ -38,12 +38,13 @@ public class BaseParsingServiceImpl implements BaseParsingService {
     }
 
     @Override
-    public List<Map<String,String>> getFileType() {
+    public List<Map<String,String>> getFileTypes() {
         FileTypeEnum[] values = FileTypeEnum.values();
         List<Map<String,String>> mapList = new ArrayList<>();
         for (FileTypeEnum value : values) {
             Map<String,String> map = new HashMap<>();
-            map.put(value.name(),value.getMessage());
+            map.put("label",value.getMessage());
+            map.put("value",value.name());
             mapList.add(map);
         }
         return mapList;

+ 23 - 23
cpp-admin/src/main/java/com/cpp/web/service/datafactory/impl/ParsingCftServiceImpl.java

@@ -78,29 +78,29 @@ public class ParsingCftServiceImpl extends ServiceImpl<ParsingCftMapper, Parsing
                                 if (time != null) {
                                     WindTowerStatusData windTowerStatusData = new WindTowerStatusData();
                                     windTowerStatusData.setTime(time);
-                                    windTowerStatusData.setT(parsingValue(parsingCft.gettInst(), fileContent));
-                                    windTowerStatusData.setPa(parsingValue(parsingCft.getPaInst(), fileContent));
-                                    windTowerStatusData.setRh(parsingValue(parsingCft.getRhInst(), fileContent));
-
-                                    windTowerStatusData.setWs10(parsingValue(parsingCft.getWsInst10(), fileContent));
-                                    windTowerStatusData.setWs30(parsingValue(parsingCft.getWsInst30(), fileContent));
-                                    windTowerStatusData.setWs50(parsingValue(parsingCft.getWsInst50(), fileContent));
-                                    windTowerStatusData.setWs60(parsingValue(parsingCft.getWsInst60(), fileContent));
-                                    windTowerStatusData.setWs70(parsingValue(parsingCft.getWsInst70(), fileContent));
-                                    windTowerStatusData.setWs80(parsingValue(parsingCft.getWsInst80(), fileContent));
-                                    windTowerStatusData.setWs90(parsingValue(parsingCft.getWsInst90(), fileContent));
-                                    windTowerStatusData.setWs100(parsingValue(parsingCft.getWsInst100(), fileContent));
-                                    windTowerStatusData.setWsHubHeight(parsingValue(parsingCft.getWsInstHubHeight(), fileContent));
-
-                                    windTowerStatusData.setWd10(parsingValue(parsingCft.getWdInst10(), fileContent));
-                                    windTowerStatusData.setWd30(parsingValue(parsingCft.getWdInst30(), fileContent));
-                                    windTowerStatusData.setWd50(parsingValue(parsingCft.getWdInst50(), fileContent));
-                                    windTowerStatusData.setWd60(parsingValue(parsingCft.getWdInst60(), fileContent));
-                                    windTowerStatusData.setWd70(parsingValue(parsingCft.getWdInst70(), fileContent));
-                                    windTowerStatusData.setWd80(parsingValue(parsingCft.getWdInst80(), fileContent));
-                                    windTowerStatusData.setWd90(parsingValue(parsingCft.getWdInst90(), fileContent));
-                                    windTowerStatusData.setWd100(parsingValue(parsingCft.getWdInst100(), fileContent));
-                                    windTowerStatusData.setWdHubHeight(parsingValue(parsingCft.getWdInstHubHeight(), fileContent));
+                                    windTowerStatusData.setT(parsingValue(parsingCft.gett(), fileContent));
+                                    windTowerStatusData.setPa(parsingValue(parsingCft.getPa(), fileContent));
+                                    windTowerStatusData.setRh(parsingValue(parsingCft.getRh(), fileContent));
+
+                                    windTowerStatusData.setWs10(parsingValue(parsingCft.getWs10(), fileContent));
+                                    windTowerStatusData.setWs30(parsingValue(parsingCft.getWs30(), fileContent));
+                                    windTowerStatusData.setWs50(parsingValue(parsingCft.getWs50(), fileContent));
+                                    windTowerStatusData.setWs60(parsingValue(parsingCft.getWs60(), fileContent));
+                                    windTowerStatusData.setWs70(parsingValue(parsingCft.getWs70(), fileContent));
+                                    windTowerStatusData.setWs80(parsingValue(parsingCft.getWs80(), fileContent));
+                                    windTowerStatusData.setWs90(parsingValue(parsingCft.getWs90(), fileContent));
+                                    windTowerStatusData.setWs100(parsingValue(parsingCft.getWs100(), fileContent));
+                                    windTowerStatusData.setWsHubHeight(parsingValue(parsingCft.getWsHubHeight(), fileContent));
+
+                                    windTowerStatusData.setWd10(parsingValue(parsingCft.getWd10(), fileContent));
+                                    windTowerStatusData.setWd30(parsingValue(parsingCft.getWd30(), fileContent));
+                                    windTowerStatusData.setWd50(parsingValue(parsingCft.getWd50(), fileContent));
+                                    windTowerStatusData.setWd60(parsingValue(parsingCft.getWd60(), fileContent));
+                                    windTowerStatusData.setWd70(parsingValue(parsingCft.getWd70(), fileContent));
+                                    windTowerStatusData.setWd80(parsingValue(parsingCft.getWd80(), fileContent));
+                                    windTowerStatusData.setWd90(parsingValue(parsingCft.getWd90(), fileContent));
+                                    windTowerStatusData.setWd100(parsingValue(parsingCft.getWd100(), fileContent));
+                                    windTowerStatusData.setWdHubHeight(parsingValue(parsingCft.getWdHubHeight(), fileContent));
                                     windTowerStatusData.setStationCode(parsingCft.getStationCode());
 
                                     windTowerStatusDataService.save(windTowerStatusData);

+ 61 - 42
cpp-admin/src/main/java/com/cpp/web/service/datafactory/impl/ParsingFjServiceImpl.java

@@ -6,6 +6,8 @@ import com.cpp.web.domain.datafactory.BaseParsing;
 import com.cpp.web.domain.datafactory.ParsingFj;
 import com.cpp.web.domain.datafactory.dto.ParsingResultDto;
 import com.cpp.web.domain.datafactory.enums.FileTypeEnum;
+import com.cpp.web.domain.station.InverterInfo;
+import com.cpp.web.domain.station.InverterStatusData;
 import com.cpp.web.domain.station.WindTurbineInfo;
 import com.cpp.web.domain.station.WindTurbineStatusData;
 import com.cpp.web.mapper.datafactory.ParsingFjMapper;
@@ -64,55 +66,72 @@ public class ParsingFjServiceImpl extends ServiceImpl<ParsingFjMapper, ParsingFj
 
         try {
 
-
             if (!this.parsingFjs.isEmpty()) {
                 List<String> fileContent = ParsingFileUtil.getFileContent(file);
                 ParsingFj parsingFjInfo = this.parsingFjs.get(0);
+
                 if (parsingFjInfo.getDataType().equals(ParsingFieldUtil.SINGLE)) {
-                    String fjName = parsingName(parsingFjInfo.getEquipmentName(), fileContent);
-                    List<WindTurbineInfo> filterWindTurbineInfos = windTurbineInfos.stream().filter(i -> i.getName().equals(fjName)).collect(Collectors.toList());
-
-                    if (filterWindTurbineInfos.size() > 0) {
-                        Long eqId = filterWindTurbineInfos.get(0).getId();
-
-                        Date time = parsingTime(parsingFjInfo.getTime(), fileContent);
-                        if (time != null) {
-                            WindTurbineStatusData windTurbineStatusData = new WindTurbineStatusData();
-                            windTurbineStatusData.setTime(time);
-                            windTurbineStatusData.setEquipmentId(eqId);
-                            windTurbineStatusData.setActivePower(parsingValue(parsingFjInfo.getActivePower(), fileContent));
-                            windTurbineStatusData.setCumulativeGeneratedEnergy(parsingValue(parsingFjInfo.getCumulativeGeneratedEnergy(), fileContent));
-                            windTurbineStatusData.setDayGridConnectedHours(parsingValue(parsingFjInfo.getDayGridConnectedHours(), fileContent));
-                            windTurbineStatusData.setWindWheelRatedSpeed(parsingValue(parsingFjInfo.getWindWheelRatedSpeed(), fileContent));
-                            windTurbineStatusData.setDayElectricQuantity(parsingValue(parsingFjInfo.getDayElectricQuantity(), fileContent));
-                            windTurbineStatusData.setElectricalCurrent(parsingValue(parsingFjInfo.getElectricalCurrent(), fileContent));
-                            windTurbineStatusData.setPitchAngle(parsingValue(parsingFjInfo.getPitchAngle(), fileContent));
-                            windTurbineStatusData.setPowerFactor(parsingValue(parsingFjInfo.getPowerFactor(), fileContent));
-                            windTurbineStatusData.setReactivePower(parsingValue(parsingFjInfo.getReactivePower(), fileContent));
-                            windTurbineStatusData.setVoltage(parsingValue(parsingFjInfo.getVoltage(), fileContent));
-                            windTurbineStatusData.setWd(parsingValue(parsingFjInfo.getWd(), fileContent));
-                            windTurbineStatusData.setWs(parsingValue(parsingFjInfo.getWs(), fileContent));
-                            windTurbineStatusData.setT(parsingValue(parsingFjInfo.getT(), fileContent));
-
-                            windTurbineStatusData.setStatus(parsingStatus(parsingFjInfo.getStatus(), fileContent));
-                            windTurbineStatusData.setStationCode(parsingFjInfo.getStationCode());
-
-                            windTurbineStatusDataService.save(windTurbineStatusData);
-                            log.info("解析FJ文件:" + file.getName() + " 成功! O(∩_∩)O");
-                            parsingResultDto.setStatus("success");
-                        } else {
-                            parsingResultDto.setMessage("解析风机文件时间错误");
-                            log.error("解析FJ文件时间错误");
+                    List<String> fjNames = parsingNames(parsingFjInfo.getEquipmentName(), fileContent);
+                    Date time = parsingTime(parsingFjInfo.getTime(), fileContent);
+                    if (fjNames.size() > 0) {
+                        if (time != null){
+                            int number = Integer.parseInt(parsingFjInfo.getEquipmentName().split("-")[0]);
+                            String replace1 = parsingFjInfo.getActivePower().split("<=>")[0] + "<=>";
+
+                            for (String fjName : fjNames) {
+
+                                List<WindTurbineInfo> filterWindTurbineInfos = windTurbineInfos.stream().filter(i -> i.getName().equals(fjName)).collect(Collectors.toList());
+
+                                if (filterWindTurbineInfos.size() > 0) {
+                                    Long eqId = filterWindTurbineInfos.get(0).getId();
+
+                                    String replace2 = number + "<=>";
+                                    WindTurbineStatusData windTurbineStatusData = new WindTurbineStatusData();
+                                    windTurbineStatusData.setTime(time);
+                                    windTurbineStatusData.setEquipmentId(eqId);
+                                    windTurbineStatusData.setActivePower(parsingValue(parsingFjInfo.getActivePower().replace(replace1, replace2), fileContent));
+                                    windTurbineStatusData.setCumulativeGeneratedEnergy(parsingValue(parsingFjInfo.getCumulativeGeneratedEnergy().replace(replace1, replace2), fileContent));
+                                    windTurbineStatusData.setDayGridConnectedHours(parsingValue(parsingFjInfo.getDayGridConnectedHours().replace(replace1, replace2), fileContent));
+                                    windTurbineStatusData.setWindWheelRatedSpeed(parsingValue(parsingFjInfo.getWindWheelRatedSpeed().replace(replace1, replace2), fileContent));
+                                    windTurbineStatusData.setDayElectricQuantity(parsingValue(parsingFjInfo.getDayElectricQuantity().replace(replace1, replace2), fileContent));
+                                    windTurbineStatusData.setElectricalCurrent(parsingValue(parsingFjInfo.getElectricalCurrent().replace(replace1, replace2), fileContent));
+                                    windTurbineStatusData.setPitchAngle(parsingValue(parsingFjInfo.getPitchAngle().replace(replace1, replace2), fileContent));
+                                    windTurbineStatusData.setPowerFactor(parsingValue(parsingFjInfo.getPowerFactor().replace(replace1, replace2), fileContent));
+                                    windTurbineStatusData.setReactivePower(parsingValue(parsingFjInfo.getReactivePower().replace(replace1, replace2), fileContent));
+                                    windTurbineStatusData.setVoltage(parsingValue(parsingFjInfo.getVoltage().replace(replace1, replace2), fileContent));
+                                    windTurbineStatusData.setWd(parsingValue(parsingFjInfo.getWd().replace(replace1, replace2), fileContent));
+                                    windTurbineStatusData.setWs(parsingValue(parsingFjInfo.getWs().replace(replace1, replace2), fileContent));
+                                    windTurbineStatusData.setT(parsingValue(parsingFjInfo.getT().replace(replace1, replace2), fileContent));
+
+                                    windTurbineStatusData.setStatus(parsingStatus(parsingFjInfo.getStatus().replace(replace1, replace2), fileContent));
+                                    windTurbineStatusData.setIsSample(parsingStatus(parsingFjInfo.getIsSample().replace(replace1, replace2), fileContent));
+                                    windTurbineStatusData.setStationCode(parsingFjInfo.getStationCode());
+
+                                    windTurbineStatusDataService.save(windTurbineStatusData);
+                                    log.info("解析FJ文件:" + file.getName() + " 成功! O(∩_∩)O");
+                                    parsingResultDto.setStatus("success");
+                                } else {
+                                    parsingResultDto.setStatus("0");
+                                    parsingResultDto.setMessage("未找到对应风机:" + fjName);
+                                    log.error("未找到对应风机:{}", fjName);
+                                    break;
+                                }
+                                number++;
+                            }
+                        }else {
+                            parsingResultDto.setStatus("0");
+                            parsingResultDto.setMessage("解析风机数据时间失败:" + file.getName());
+                            log.error("解析风机数据时间失败:" + file.getName());
                         }
-                    } else {
-                        parsingResultDto.setMessage("风机在本地无配置无法解析");
-                        log.error("fj {} 在本地无配置无法解析", fjName);
+                    }else {
+                        parsingResultDto.setStatus("0");
+                        parsingResultDto.setMessage("解析风机名称失败:" + file.getName());
+                        log.error("解析风机名称失败:" + file.getName());
                     }
-                } else {
-                    parsingResultDto.setMessage("风机暂无多行解析方式");
-                    log.error("fj暂无多行解析方式");
                 }
-
+            } else {
+                parsingResultDto.setMessage("风机暂无多行解析方式");
+                log.error("fj暂无多行解析方式");
             }
 
 

+ 47 - 33
cpp-admin/src/main/java/com/cpp/web/service/datafactory/impl/ParsingNbqServiceImpl.java

@@ -69,59 +69,73 @@ public class ParsingNbqServiceImpl extends ServiceImpl<ParsingNbqMapper, Parsing
 
             //查询符合该场站的nbq配置信息
             if (!this.parsingNbqs.isEmpty()) {
-
                 ParsingNbq parsingNbqInfo = this.parsingNbqs.get(0);
                 //解析文件内容以行为单位的 List<String>
                 List<String> fileContent = ParsingFileUtil.getFileContent(file);
-
                 //查询对应该场站路径下的逆变器信息
-                List<InverterInfo> inverterInfoList = inverterInfos.stream().filter(i->i.getStationCode().equals(stationCode)).collect(Collectors.toList());
+                List<InverterInfo> inverterInfoList = inverterInfos.stream().filter(i -> i.getStationCode().equals(stationCode)).collect(Collectors.toList());
                 //因为有可能该场站有多种解析配置,例如多个逆变器数据情况,需要循环解析信息
-                        //判断数据类型是单行还是多行
-                        if (parsingNbqInfo.getDataType().equals(ParsingFieldUtil.SINGLE)) {
-                            /**
-                             * 逆变器和风机id  需要解析名称找出对应设备存入id
-                             *
-                             */
-                            String nbqName = parsingName(parsingNbqInfo.getEquipmentName(), fileContent);
-                            List<InverterInfo> filterInverterInfos = inverterInfoList.stream().filter(i -> i.getName().equals(nbqName)).collect(Collectors.toList());
-                            if (filterInverterInfos.size() > 0) {
-                                Long eqId = filterInverterInfos.get(0).getId();
-                                Date time = parsingTime(parsingNbqInfo.getTime(), fileContent);
-                                if (time != null) {
+                //判断数据类型是单行还是多行
+                if (parsingNbqInfo.getDataType().equals(ParsingFieldUtil.SINGLE)) {
+                    /**
+                     * 逆变器和风机id  需要解析名称找出对应设备存入id
+                     * 单机类文件特殊,需要设备名称配多行,数据配单行即可
+                     */
+                    List<String> nbqNames = parsingNames(parsingNbqInfo.getEquipmentName(), fileContent);
+                    Date time = parsingTime(parsingNbqInfo.getTime(), fileContent);
+                    if (nbqNames.size() > 0) {
+                        if (time != null) {
+                            int number = Integer.parseInt(parsingNbqInfo.getEquipmentName().split("-")[0]);
+                            String replace1 = parsingNbqInfo.getActivePower().split("<=>")[0] + "<=>";
+
+                            for (String nbqName : nbqNames) {
+                                List<InverterInfo> filterInverterInfos = inverterInfoList.stream().filter(i -> i.getName().equals(nbqName)).collect(Collectors.toList());
+                                if (filterInverterInfos.size() > 0) {
+                                    Long eqId = filterInverterInfos.get(0).getId();
+
+                                    String replace2 = number + "<=>";
                                     InverterStatusData inverterStatusData = new InverterStatusData();
                                     inverterStatusData.setTime(time);
 
-                                    inverterStatusData.setActivePower(parsingValue(parsingNbqInfo.getActivePower(), fileContent));
-                                    inverterStatusData.setCumulativeGeneratedEnergy(parsingValue(parsingNbqInfo.getCumulativeGeneratedEnergy(), fileContent));
-                                    inverterStatusData.setDayGridConnectedHours(parsingValue(parsingNbqInfo.getDayGridConnectedHours(), fileContent));
-                                    inverterStatusData.setDayElectricQuantity(parsingValue(parsingNbqInfo.getDayElectricQuantity(), fileContent));
-                                    inverterStatusData.setElectricalCurrent(parsingValue(parsingNbqInfo.getElectricalCurrent(), fileContent));
-                                    inverterStatusData.setReactivePower(parsingValue(parsingNbqInfo.getReactivePower(), fileContent));
-                                    inverterStatusData.setPowerFactor(parsingValue(parsingNbqInfo.getPowerFactor(), fileContent));
-                                    inverterStatusData.setVoltage(parsingValue(parsingNbqInfo.getVoltage(), fileContent));
-                                    inverterStatusData.setStatus(parsingStatus(parsingNbqInfo.getStatus(), fileContent));
+                                    inverterStatusData.setActivePower(parsingValue(parsingNbqInfo.getActivePower().replace(replace1, replace2), fileContent));
+                                    inverterStatusData.setCumulativeGeneratedEnergy(parsingValue(parsingNbqInfo.getCumulativeGeneratedEnergy().replace(replace1, replace2), fileContent));
+                                    inverterStatusData.setDayGridConnectedHours(parsingValue(parsingNbqInfo.getDayGridConnectedHours().replace(replace1, replace2), fileContent));
+                                    inverterStatusData.setDayElectricQuantity(parsingValue(parsingNbqInfo.getDayElectricQuantity().replace(replace1, replace2), fileContent));
+                                    inverterStatusData.setElectricalCurrent(parsingValue(parsingNbqInfo.getElectricalCurrent().replace(replace1, replace2), fileContent));
+                                    inverterStatusData.setReactivePower(parsingValue(parsingNbqInfo.getReactivePower().replace(replace1, replace2), fileContent));
+                                    inverterStatusData.setPowerFactor(parsingValue(parsingNbqInfo.getPowerFactor().replace(replace1, replace2), fileContent));
+                                    inverterStatusData.setVoltage(parsingValue(parsingNbqInfo.getVoltage().replace(replace1, replace2), fileContent));
+                                    inverterStatusData.setStatus(parsingStatus(parsingNbqInfo.getStatus().replace(replace1, replace2), fileContent));
+                                    inverterStatusData.setIsSample(parsingStatus(parsingNbqInfo.getIsSample().replace(replace1, replace2), fileContent));
                                     inverterStatusData.setEquipmentId(eqId);
                                     inverterStatusData.setStationCode(stationCode);
                                     inverterStatusDataService.save(inverterStatusData);
                                     log.info("解析NBQ文件:{} 成功! O(∩_∩)O", file.getName());
                                     parsingResultDto.setStatus("success");
                                 } else {
-                                    parsingResultDto.setMessage("逆变器在本地无配置无法解析");
-                                    log.error("nbq {} 在本地无配置无法解析", nbqName);
+                                    parsingResultDto.setStatus("0");
+                                    parsingResultDto.setMessage("未找到对应逆变器:" + nbqName);
+                                    log.error("未找到对应逆变器:{}", nbqName);
+                                    break;
                                 }
-                            } else {
-                                parsingResultDto.setStatus("0");
-                                parsingResultDto.setMessage("解析逆变器文件时间错误");
-                                log.error("解析NBQ文件时间错误");
+                                number++;
                             }
                         } else {
-                            parsingResultDto.setMessage("逆变器暂无多行解析方式");
-                            log.error("nbq暂无多行解析方式");
+                            parsingResultDto.setStatus("0");
+                            parsingResultDto.setMessage("解析逆变器数据时间失败:" + file.getName());
+                            log.error("解析逆变器数据时间失败:" + file.getName());
                         }
-                    
+                    } else {
+                        parsingResultDto.setStatus("0");
+                        parsingResultDto.setMessage("解析逆变器名称失败:" + file.getName());
+                        log.error("解析逆变器名称失败:" + file.getName());
+                    }
+                } else {
+                    parsingResultDto.setMessage("逆变器暂无多行解析方式");
+                    log.error("nbq暂无多行解析方式");
                 }
 
+            }
         } catch (Exception e) {
             parsingResultDto.setMessage("解析逆变器数据失败!");
             log.error("解析逆变器数据失败! /(ㄒoㄒ)/~~", e);

+ 1 - 1
cpp-admin/src/main/java/com/cpp/web/service/datafactory/impl/ParsingRpServiceImpl.java

@@ -79,7 +79,7 @@ public class ParsingRpServiceImpl extends ServiceImpl<ParsingRpMapper, ParsingRp
                         powerStationStatusData.setOpenCapacity(parsingValue(parsingRpInfo.getOpenCapacity(), fileContent));
                         powerStationStatusData.setCapacity(parsingValue(parsingRpInfo.getCapacity(), fileContent));
                         powerStationStatusData.setBlockedCapacity(parsingValue(parsingRpInfo.getBlockedCapacity(), fileContent));
-
+                        powerStationStatusData.setPowerRationing(parsingStatus(parsingRpInfo.getPowerRationing(), fileContent));
                         powerStationStatusData.setTime(time);
 
                         powerStationStatusDataService.save(powerStationStatusData);

+ 25 - 24
cpp-ui/src/views/configManager/ftpChannel/index.vue

@@ -4,7 +4,8 @@
       <div style="margin-bottom: .5%">
         <el-button-group style="margin-left: 1%">
           <el-button type="primary" icon="el-icon-search" :loading="tableLoading" @click="getList()">刷新</el-button>
-          <el-button type="primary" icon="el-icon-circle-plus-outline" @click="handleAdd()" :loading="tableLoading">添加</el-button>
+          <el-button type="primary" icon="el-icon-circle-plus-outline" @click="handleAdd()" :loading="tableLoading">添加
+          </el-button>
         </el-button-group>
       </div>
 
@@ -13,11 +14,11 @@
         :header-cell-style="{background:'#ECF1FE'}"
         border
         style="width: 100%">
-        <el-table-column align="name" prop="url" label="通道名称"></el-table-column>
-        <el-table-column align="ip" prop="url" label="ip"></el-table-column>
-        <el-table-column align="port" prop="url" label="端口"></el-table-column>
-        <el-table-column align="username" prop="url" label="用户"></el-table-column>
-        <el-table-column align="password" prop="url" label="密码"></el-table-column>
+        <el-table-column align="center" prop="name" label="通道名称"></el-table-column>
+        <el-table-column align="center" prop="ip" label="ip"></el-table-column>
+        <el-table-column align="center" prop="port" label="端口"></el-table-column>
+        <el-table-column align="center" prop="username" label="用户"></el-table-column>
+        <el-table-column align="center" prop="password" label="密码"></el-table-column>
         <el-table-column align="center" label="操作" width="200">
           <template slot-scope="scope">
             <el-button
@@ -92,19 +93,17 @@ export default {
         pageSize: 20 // 每页显示多少条
       },
       tableLoading: false,
-      stationCode:'',
+      // stationCode: '',
       dialogVisible: false,
       dialogType: '',//新增还是编辑
-      title:'',//弹框的文本
+      title: '',//弹框的文本
       rules: {
         // stationCode: {required: true, message: '请选择场站', trigger: 'blur'},
         // url: {required: true, message: '请输入路径', trigger: 'blur'},
       }
     }
   },
-  computed: {
-
-  },
+  computed: {},
   created() {
     this.getList()
   },
@@ -117,18 +116,20 @@ export default {
       // this.form.cId = this.channelId
       // this.searchForm = this.form
       // console.log(this.form)
-      if(this.stationCode !== null && this.stationCode !== undefined && this.stationCode !== ''){
-        this.searchForm ={stationCode:this.stationCode,delFlag:0}
-      }else {
-        this.searchForm = {delFlag:0}
-      }
+      // if (this.stationCode !== null && this.stationCode !== undefined && this.stationCode !== '') {
+      //   this.searchForm = {stationCode: this.stationCode, delFlag: 0}
+      // } else {
+      //   this.searchForm = {delFlag: 0}
+      // }
       this.tableLoading = true
-      this.$axios.get("/ftpChannel", Object.assign({
-        current: page.currentPage,
-        size: page.pageSize
-      }, this.searchForm)).then(response => {
-        this.tableData = response.data.data.records
-        this.page.total = response.data.data.total
+      this.$axios.get("/ftpChannel/page", {
+        params: {
+          currentPage: page.currentPage,
+          pageSize: page.pageSize
+        }
+      }).then(response => {
+        this.tableData = response.data.records
+        this.page.total = response.data.total
         this.tableLoading = false
       }).catch(() => {
         this.tableLoading = false
@@ -169,7 +170,7 @@ export default {
         cancelButtonText: '取消',
         type: 'warning'
       }).then(function () {
-        return this.$axios.delete("/ftpChannel/"+row.id)
+        return this.$axios.delete("/ftpChannel/" + row.id)
       }).then(data => {
         this.$message.success('删除成功')
         this.getList(this.page)
@@ -179,7 +180,7 @@ export default {
       if (this.dialogType === 'add') {
         // row.cid = this.channelId
         // row.stationCode = this.stationCode
-        this.$axios.post("/ftpChannel",this.form).then(data => {
+        this.$axios.post("/ftpChannel", this.form).then(data => {
           this.$message.success('添加成功')
           this.getList()
           this.dialogVisible = false

+ 102 - 74
cpp-ui/src/views/configManager/parsingConf/cdqparsing.vue

@@ -6,11 +6,12 @@
       :data="tableData"
       :header-cell-style="{background:'#ECF1FE',}"
       v-loading="tableLoading" border style="width: 100%">
-      <el-table-column prop="fileName" align="center" label="文件名关键字" width="200px"></el-table-column>
-      <el-table-column prop="forecastTime" align="center" label="预测时间公式"  width="300px"></el-table-column>
-      <el-table-column prop="fpValue" align="center" label="预测数据公式"  width="300px"></el-table-column>
+<!--      <el-table-column prop="fileName" align="center" label="文件名关键字" width="200px"></el-table-column>-->
       <el-table-column prop="dataType" align="center" label="数据类型" width="100px" :formatter="formatDataType"></el-table-column>
-      <el-table-column prop="stationCode" align="center" label="场站编号"></el-table-column>
+      <el-table-column prop="forecastTime" align="center" label="预测时间公式"></el-table-column>
+      <el-table-column prop="fpValue" align="center" label="预测功率公式"></el-table-column>
+      <el-table-column prop="openCapacity" align="center" label="实时开机容量公式"></el-table-column>
+      <!--      <el-table-column prop="stationCode" align="center" label="场站编号"></el-table-column>-->
       <el-table-column label="操作" align="center" width="150px">
         <template slot-scope="scope">
           <el-button type="text" icon="el-icon-edit" @click="handleEdit(scope.row)">编辑</el-button>
@@ -43,14 +44,14 @@
           <div class="grid-content bg-purple">
             <el-form v-model="form" ref="form" :key="timer">
               <el-row :gutter="16">
-                <el-col :span="12">
-                  <el-form-item prop="fileName" label-width="110px">
-                    <span slot="label">
-                      <font color="red">*</font>文件名关键字
-                    </span>
-                    <el-input v-model="form.fileName" @focus="clearformula"></el-input>
-                  </el-form-item>
-                </el-col>
+<!--                <el-col :span="12">-->
+<!--                  <el-form-item prop="fileName" label-width="110px">-->
+<!--                    <span slot="label">-->
+<!--                      <font color="red">*</font>文件名关键字-->
+<!--                    </span>-->
+<!--                    <el-input v-model="form.fileName" @focus="clearformula"></el-input>-->
+<!--                  </el-form-item>-->
+<!--                </el-col>-->
                 <el-col :span="12">
                   <el-form-item prop="dataType" label-width="110px">
                     <span slot="label">
@@ -65,6 +66,17 @@
                     </el-select>
                   </el-form-item>
                 </el-col>
+
+                <el-col :span="12">
+                  <el-form-item prop="forecastTime" label-width="110px"
+                                class="formulaColor">
+                    <span slot="label">
+                      <font color="red">*</font>预测时间公式
+                    </span>
+                    <el-input v-model="form.forecastTime" readonly
+                              @click.native="ftck(form.forecastTime,'form.forecastTime','(预测时间)')"></el-input>
+                  </el-form-item>
+                </el-col>
               </el-row>
               <el-row :gutter="16">
                 <el-col :span="12">
@@ -77,32 +89,32 @@
                   </el-form-item>
                 </el-col>
                 <el-col :span="12">
-                  <el-form-item prop="forecastTime" label-width="110px"
+                  <el-form-item prop="openCapacity" label-width="110px"
                                 class="formulaColor">
                     <span slot="label">
-                      <font color="red">*</font>预测时间公式
-                    </span>
-                    <el-input v-model="form.forecastTime" readonly
-                              @click.native="ftck(form.forecastTime,'form.forecastTime','(预测时间)')"></el-input>
-                  </el-form-item>
-                </el-col>
-              </el-row>
-              <el-row>
-                <el-col :span="24">
-                  <el-form-item prop="stationCode" label-width="110px">
-                    <span slot="label">
-                      <font color="red">*</font>场站编号
+                      <font color="red">*</font>实时开机容量公式
                     </span>
-                    <el-select v-model="form.stationCode" multiple clearable @focus="clearformula" style="width: 100%">
-                      <el-option
-                        v-for="item in this.stationCodeList"
-                        :key="item.stationCode"
-                        :label="item.stationCode"
-                        :value="item.stationCode"/>
-                    </el-select>
+                    <el-input v-model="form.openCapacity" readonly
+                              @click.native="ftck(form.openCapacity,'form.openCapacity','(实时开机容量数据)')"></el-input>
                   </el-form-item>
                 </el-col>
               </el-row>
+<!--              <el-row>-->
+<!--                <el-col :span="24">-->
+<!--                  <el-form-item prop="stationCode" label-width="110px">-->
+<!--                    <span slot="label">-->
+<!--                      <font color="red">*</font>场站编号-->
+<!--                    </span>-->
+<!--                    <el-select v-model="form.stationCode" multiple clearable @focus="clearformula" style="width: 100%">-->
+<!--                      <el-option-->
+<!--                        v-for="item in this.stationCodeList"-->
+<!--                        :key="item.stationCode"-->
+<!--                        :label="item.stationCode"-->
+<!--                        :value="item.stationCode"/>-->
+<!--                    </el-select>-->
+<!--                  </el-form-item>-->
+<!--                </el-col>-->
+<!--              </el-row>-->
             </el-form>
             <div slot="footer" class="dialog-footer">
               <el-button type="primary" @click="handleSave('form')">
@@ -180,7 +192,7 @@ export default {
   name: "index",
   data() {
     return {
-      stationCodeList: [],
+      // stationCodeList: [],
       dataType: [
         {value: 's', label: '时间单行'},
         {value: 'm', label: '时间多行'}
@@ -205,11 +217,12 @@ export default {
       info: '',
       visible: false,
       form: {
-        fileName: '',
+        // fileName: '',
         forecastTime: '',
         fpValue: '',
-        dataType: '',
-        stationCode: ''
+        dataType: 'm',
+        openCapacity: ''
+        // stationCode: ''
       },
       pfform: {
         rownumber: '',
@@ -222,7 +235,7 @@ export default {
     };
   },
   mounted() {
-    this.getElectricFieldList()
+    // this.getElectricFieldList()
     this.getTableList()
   },
   methods: {
@@ -237,27 +250,31 @@ export default {
     },
     getTableList() {
       this.tableLoading = true
+      const page = this.page
+
       // 获取列表
-      this.$axios.get("/parsingCdq/page",Object.assign({
-        current: this.page.currentPage,
-        size: this.page.pageSize
-      })).then(response => {
-        this.tableData = response.data.data.records
-        this.page.total = response.data.data.total
-        this.tableLoading = false
-      }).catch((e) => {
-        this.tableLoading = false
-      })
-    },
-    getElectricFieldList() {
-      // 获取所有场站
-      this.$axios("/parsingInfo/getElectricField").then(response => {
-        this.stationCodeList = response.data.data
+      this.$axios.get("/parsingCdq/page", {
+        params: {
+          currentPage: page.currentPage,
+          pageSize: page.pageSize
+        }
+      }).then(response => {
+        this.tableData = response.data.records
+        this.page.total = response.data.total
         this.tableLoading = false
       }).catch((e) => {
         this.tableLoading = false
       })
     },
+    // getElectricFieldList() {
+    //   // 获取所有场站
+    //   this.$axios("/parsingInfo/getElectricField").then(response => {
+    //     this.stationCodeList = response.data
+    //     this.tableLoading = false
+    //   }).catch((e) => {
+    //     this.tableLoading = false
+    //   })
+    // },
     destoryformula() {
       // 清空公式区字段
       if (this.tempformulasign == 'form.forecastTime') {
@@ -298,7 +315,7 @@ export default {
       this.editinfo = editname
     },
     genformula() {
-      if (this.tempformulasign==''){
+      if (this.tempformulasign == '') {
         this.$message.warning('请先选定左侧公式项')
         return
       }
@@ -329,33 +346,37 @@ export default {
         this.form.forecastTime = resultStr
       } else if (this.tempformulasign == 'form.fpValue') {
         this.form.fpValue = resultStr
+      } else if (this.tempformulasign == 'form.openCapacity') {
+        this.form.openCapacity = resultStr
       }
       this.timer = new Date().getTime()
       this.clearformula()
     },
     /*保存*/
     handleSave(formName) {
-      if (!this.form.fileName || !this.form.forecastTime || !this.form.fpValue || !this.form.dataType || this.form.stationCode=="") {
+      if (!this.form.forecastTime || !this.form.fpValue || !this.form.dataType
+        //!this.form.fileName ||  || this.form.stationCode == ""
+      ) {
         this.$message.warning('填写必填项');
         return false;
       } else {
-        const data = this.form.stationCode
-        let data1 = "";
-        for (let n = 0; n < data.length; n++) {
-          for (let j = 0; j < this.stationCodeList.length; j++) {
-            if (data[n] == this.stationCodeList[j]["stationCode"]) {
-              data1 = data1 + this.stationCodeList[j]["stationCode"] + ","
-            }
-          }
-        }
-        data1 = data1.substr(0, data1.length - 1)
-        this.form.stationCode = data1
+        // const data = this.form.stationCode
+        // let data1 = "";
+        // for (let n = 0; n < data.length; n++) {
+        //   for (let j = 0; j < this.stationCodeList.length; j++) {
+        //     if (data[n] == this.stationCodeList[j]["stationCode"]) {
+        //       data1 = data1 + this.stationCodeList[j]["stationCode"] + ","
+        //     }
+        //   }
+        // }
+        // data1 = data1.substr(0, data1.length - 1)
+        // this.form.stationCode = data1
         if (this.saveFlag === 1) {
-          this.$axios.post("/parsingCdq",this.form).then(response => {
+          this.$axios.post("/parsingCdq", this.form).then(response => {
             this.dialogVisible = false
             this.getTableList()
             this.tableLoading = false
-            this.$message.success(response.data.data)
+            this.$message.success(response.data)
           }).catch(() => {
             this.tableLoading = false
           })
@@ -365,7 +386,7 @@ export default {
             this.dialogVisible = false
             this.getTableList()
             this.tableLoading = false
-            this.$message.success(response.data.data)
+            this.$message.success(response.data)
           }).catch(() => {
             this.tableLoading = false
           })
@@ -377,17 +398,24 @@ export default {
     handleAdd() {
       this.saveFlag = 1
       this.info = ''
-      this.form = {}
+      this.form = {
+        // fileName: '',
+        forecastTime: '',
+        fpValue: '',
+        dataType: 'm',
+        openCapacity: ''
+        // stationCode: ''
+      }
       this.clearformula()
       this.visible = true
     },
     /*上报对象编辑*/
     handleEdit(row) {
       this.saveFlag = 2
-      let newRow = Object.assign({},row)
-      let tempStationCode = newRow.stationCode.split(',')
+      let newRow = Object.assign({}, row)
+      // let tempStationCode = newRow.stationCode.split(',')
       this.form = newRow
-      this.form.stationCode = tempStationCode
+      // this.form.stationCode = tempStationCode
       this.clearformula()
       this.visible = true
     },
@@ -398,9 +426,9 @@ export default {
         cancelButtonText: '取消',
         type: 'warning'
       }).then(() => {
-        this.$axios.delete("/parsingCdq/"+row.id).then(response => {
+        this.$axios.delete("/parsingCdq/" + row.id).then(response => {
           this.getTableList()
-          this.$message.success(response.data.data)
+          this.$message.success(response.data)
         })
       })
     },

+ 357 - 370
cpp-ui/src/views/configManager/parsingConf/cftparsing.vue

@@ -10,56 +10,57 @@
         <template slot-scope="props">
           <table style="width: 100%;text-align: left">
             <tr>
-              <td>温度瞬时公式:{{ props.row.tInst }}</td>
-              <td>湿度瞬时公式:{{ props.row.rhInst }}</td>
-              <td>气压瞬时公式:{{ props.row.paInst }}</td>
+              <td>温度公式:{{ props.row.t }}</td>
+              <td>湿度公式:{{ props.row.rh }}</td>
+              <td>气压公式:{{ props.row.pa }}</td>
             </tr>
             <tr>
             <tr>
-              <td>10米风速瞬时公式:{{ props.row.wsInst10 }}</td>
-              <td>10米风向瞬时公式:{{ props.row.wdInst10 }}</td>
-              <td>30米风速瞬时公式:{{ props.row.wsInst30 }}</td>
+              <td>10米风速公式:{{ props.row.ws10 }}</td>
+              <td>10米风向公式:{{ props.row.wd10 }}</td>
+              <td>30米风速公式:{{ props.row.ws30 }}</td>
             </tr>
             <tr>
-              <td>30米风向瞬时公式:{{ props.row.wdInst30 }}</td>
-              <td>50米风速瞬时公式:{{ props.row.wsInst50 }}</td>
-              <td>50米风向瞬时公式:{{ props.row.wdInst50 }}</td>
+              <td>30米风向公式:{{ props.row.wd30 }}</td>
+              <td>50米风速公式:{{ props.row.ws50 }}</td>
+              <td>50米风向公式:{{ props.row.wd50 }}</td>
             </tr>
             <tr>
-              <td>60米风速瞬时公式:{{ props.row.wsInst60 }}</td>
-              <td>60米风向瞬时公式:{{ props.row.wdInst60 }}</td>
-              <td>70米风速瞬时公式:{{ props.row.wsInst70 }}</td>
+              <td>60米风速公式:{{ props.row.ws60 }}</td>
+              <td>60米风向公式:{{ props.row.wd60 }}</td>
+              <td>70米风速公式:{{ props.row.ws70 }}</td>
             </tr>
             <tr>
-              <td>70米风向瞬时公式:{{ props.row.wdInst70 }}</td>
-              <td>80米风速瞬时公式:{{ props.row.wsInst80 }}</td>
-              <td>80米风向瞬时公式:{{ props.row.wdInst80 }}</td>
+              <td>70米风向公式:{{ props.row.wd70 }}</td>
+              <td>80米风速公式:{{ props.row.ws80 }}</td>
+              <td>80米风向公式:{{ props.row.wd80 }}</td>
             </tr>
             <tr>
-              <td>90米风速瞬时公式:{{ props.row.wsInst90 }}</td>
-              <td>90米风向瞬时公式:{{ props.row.wdInst90 }}</td>
-              <td>100米风速瞬时公式:{{ props.row.wsInst100 }}</td>
+              <td>90米风速公式:{{ props.row.ws90 }}</td>
+              <td>90米风向公式:{{ props.row.wd90 }}</td>
+              <td>100米风速公式:{{ props.row.ws100 }}</td>
             </tr>
             <tr>
-              <td>100米风向瞬时公式:{{ props.row.wdInst100 }}</td>
-              <td>110米风速瞬时公式:{{ props.row.wsInst110 }}</td>
-              <td>110米风向瞬时公式:{{ props.row.wdInst110 }}</td>
+              <td>100米风向公式:{{ props.row.wd100 }}</td>
+              <td>110米风速公式:{{ props.row.ws110 }}</td>
+              <td>110米风向公式:{{ props.row.wd110 }}</td>
             </tr>
             <tr>
-              <td>120米风速瞬时公式:{{ props.row.wsInst120 }}</td>
-              <td>120米风向瞬时公式:{{ props.row.wdInst120 }}</td>
-              <td>轮毂风速瞬时公式:{{ props.row.wsInstHubHeight }}</td>
+              <td>120米风速公式:{{ props.row.ws120 }}</td>
+              <td>120米风向公式:{{ props.row.wd120 }}</td>
+              <td>轮毂风速公式:{{ props.row.wsHubHeight }}</td>
             </tr>
             <tr>
-              <td>轮毂风向瞬时公式:{{ props.row.wdInstHubHeight }}</td>
+              <td>轮毂风向公式:{{ props.row.wdHubHeight }}</td>
             </tr>
           </table>
         </template>
       </el-table-column>
-      <el-table-column prop="fileName" align="center" label="文件名关键字" width="200px"></el-table-column>
-      <el-table-column prop="dataType" align="center" label="数据类型" width="100px" :formatter="formatDataType"></el-table-column>
-      <el-table-column prop="time" align="center" label="预测时间公式"  width="300px"></el-table-column>
-      <el-table-column prop="stationCode" align="center" label="场站编号"></el-table-column>
+<!--      <el-table-column prop="fileName" align="center" label="文件名关键字" width="200px"></el-table-column>-->
+      <el-table-column prop="dataType" align="center" label="数据类型" width="100px"
+                       :formatter="formatDataType"></el-table-column>
+      <el-table-column prop="time" align="center" label="时间公式"></el-table-column>
+<!--      <el-table-column prop="stationCode" align="center" label="场站编号"></el-table-column>-->
       <el-table-column label="操作" align="center" width="150px">
         <template slot-scope="scope">
           <el-button type="text" icon="el-icon-edit" @click="handleEdit(scope.row)">编辑</el-button>
@@ -92,14 +93,14 @@
           <div class="grid-content bg-purple">
             <el-form v-model="form" ref="form" :key="timer">
               <el-row :gutter="16">
-                <el-col :span="8">
-                  <el-form-item prop="fileName" label-width="150px">
-                    <span slot="label">
-                      <font color="red">*</font>文件名关键字
-                    </span>
-                    <el-input v-model="form.fileName" @focus="clearformula"></el-input>
-                  </el-form-item>
-                </el-col>
+<!--                <el-col :span="8">-->
+<!--                  <el-form-item prop="fileName" label-width="150px">-->
+<!--                    <span slot="label">-->
+<!--                      <font color="red">*</font>文件名关键字-->
+<!--                    </span>-->
+<!--                    <el-input v-model="form.fileName" @focus="clearformula"></el-input>-->
+<!--                  </el-form-item>-->
+<!--                </el-col>-->
                 <el-col :span="8">
                   <el-form-item prop="dataType" label-width="150px">
                     <span slot="label">
@@ -115,22 +116,22 @@
                   </el-form-item>
                 </el-col>
               </el-row>
-              <el-row>
-                <el-col :span="24">
-                  <el-form-item prop="stationCode" label-width="150px">
-                    <span slot="label">
-                      <font color="red">*</font>场站编号
-                    </span>
-                    <el-select v-model="form.stationCode" multiple clearable @focus="clearformula" style="width: 100%">
-                      <el-option
-                        v-for="item in this.stationCodeList"
-                        :key="item.stationCode"
-                        :label="item.stationCode"
-                        :value="item.stationCode"/>
-                    </el-select>
-                  </el-form-item>
-                </el-col>
-              </el-row>
+<!--              <el-row>-->
+<!--                <el-col :span="24">-->
+<!--                  <el-form-item prop="stationCode" label-width="150px">-->
+<!--                    <span slot="label">-->
+<!--                      <font color="red">*</font>场站编号-->
+<!--                    </span>-->
+<!--                    <el-select v-model="form.stationCode" multiple clearable @focus="clearformula" style="width: 100%">-->
+<!--                      <el-option-->
+<!--                        v-for="item in this.stationCodeList"-->
+<!--                        :key="item.stationCode"-->
+<!--                        :label="item.stationCode"-->
+<!--                        :value="item.stationCode"/>-->
+<!--                    </el-select>-->
+<!--                  </el-form-item>-->
+<!--                </el-col>-->
+<!--              </el-row>-->
               <el-row :gutter="16">
                 <el-col :span="8">
                   <el-form-item prop="time" label-width="150px" class="formulaColor">
@@ -142,244 +143,244 @@
                   </el-form-item>
                 </el-col>
                 <el-col :span="8">
-                  <el-form-item prop="tInst" label-width="150px" class="formulaColor">
+                  <el-form-item prop="t" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      温度瞬时公式
+                      温度公式
                     </span>
-                    <el-input v-model="form.tInst" readonly
-                              @click.native="ftck(form.tInst,'form.tInst','(温度瞬时)')"></el-input>
+                    <el-input v-model="form.t" readonly
+                              @click.native="ftck(form.t,'form.t','(温度)')"></el-input>
                   </el-form-item>
                 </el-col>
                 <el-col :span="8">
-                  <el-form-item prop="rhInst" label-width="150px" class="formulaColor">
+                  <el-form-item prop="rh" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      湿度瞬时公式
+                      湿度公式
                     </span>
-                    <el-input v-model="form.rhInst" readonly
-                              @click.native="ftck(form.rhInst,'form.rhInst','(湿度瞬时)')"></el-input>
+                    <el-input v-model="form.rh" readonly
+                              @click.native="ftck(form.rh,'form.rh','(湿度)')"></el-input>
                   </el-form-item>
                 </el-col>
               </el-row>
               <el-row :gutter="16">
                 <el-col :span="8">
-                  <el-form-item prop="paInst" label-width="150px" class="formulaColor">
+                  <el-form-item prop="pa" label-width="150px" class="formulaColor">
                     <span slot="label">
-                     气压瞬时公式
+                     气压公式
                     </span>
-                    <el-input v-model="form.paInst" readonly
-                              @click.native="ftck(form.paInst,'form.paInst','(气压瞬时)')"></el-input>
+                    <el-input v-model="form.pa" readonly
+                              @click.native="ftck(form.pa,'form.pa','(气压)')"></el-input>
                   </el-form-item>
                 </el-col>
                 <el-col :span="8">
-                  <el-form-item prop="wsInst10" label-width="150px" class="formulaColor">
+                  <el-form-item prop="ws10" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      10米风速瞬时公式
+                      10米风速公式
                     </span>
-                    <el-input v-model="form.wsInst10" readonly
-                              @click.native="ftck(form.wsInst10,'form.wsInst10','(10米风速瞬时)')"></el-input>
+                    <el-input v-model="form.ws10" readonly
+                              @click.native="ftck(form.ws10,'form.ws10','(10米风速)')"></el-input>
                   </el-form-item>
                 </el-col>
                 <el-col :span="8">
-                  <el-form-item prop="wdInst10" label-width="150px" class="formulaColor">
+                  <el-form-item prop="wd10" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      10米风向瞬时公式
+                      10米风向公式
                     </span>
-                    <el-input v-model="form.wdInst10" readonly
-                              @click.native="ftck(form.wdInst10,'form.wdInst10','(10米风向瞬时)')"></el-input>
+                    <el-input v-model="form.wd10" readonly
+                              @click.native="ftck(form.wd10,'form.wd10','(10米风向)')"></el-input>
                   </el-form-item>
                 </el-col>
               </el-row>
               <el-row :gutter="16">
                 <el-col :span="8">
-                  <el-form-item prop="wsInst30" label-width="150px" class="formulaColor">
+                  <el-form-item prop="ws30" label-width="150px" class="formulaColor">
                     <span slot="label">
-                     30米风速瞬时公式
+                     30米风速公式
                     </span>
-                    <el-input v-model="form.wsInst30" readonly
-                              @click.native="ftck(form.wsInst30,'form.wsInst30','(30米风速瞬时)')"></el-input>
+                    <el-input v-model="form.ws30" readonly
+                              @click.native="ftck(form.ws30,'form.ws30','(30米风速)')"></el-input>
                   </el-form-item>
                 </el-col>
                 <el-col :span="8">
-                  <el-form-item prop="wdInst30" label-width="150px" class="formulaColor">
+                  <el-form-item prop="wd30" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      30米风向瞬时公式
+                      30米风向公式
                     </span>
-                    <el-input v-model="form.wdInst30" readonly
-                              @click.native="ftck(form.wdInst30,'form.wdInst30','(30米风向瞬时)')"></el-input>
+                    <el-input v-model="form.wd30" readonly
+                              @click.native="ftck(form.wd30,'form.wd30','(30米风向)')"></el-input>
                   </el-form-item>
                 </el-col>
                 <el-col :span="8">
-                  <el-form-item prop="wsInst50" label-width="150px" class="formulaColor">
+                  <el-form-item prop="ws50" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      50米风速瞬时公式
+                      50米风速公式
                     </span>
-                    <el-input v-model="form.wsInst50" readonly
-                              @click.native="ftck(form.wsInst50,'form.wsInst50','(50米风速瞬时)')"></el-input>
+                    <el-input v-model="form.ws50" readonly
+                              @click.native="ftck(form.ws50,'form.ws50','(50米风速)')"></el-input>
                   </el-form-item>
                 </el-col>
               </el-row>
               <el-row :gutter="16">
                 <el-col :span="8">
-                  <el-form-item prop="wdInst50" label-width="150px" class="formulaColor">
+                  <el-form-item prop="wd50" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      50米风向瞬时公式
+                      50米风向公式
                     </span>
-                    <el-input v-model="form.wdInst50" readonly
-                              @click.native="ftck(form.wdInst50,'form.wdInst50','(50米风向瞬时)')"></el-input>
+                    <el-input v-model="form.wd50" readonly
+                              @click.native="ftck(form.wd50,'form.wd50','(50米风向)')"></el-input>
                   </el-form-item>
                 </el-col>
                 <el-col :span="8">
-                  <el-form-item prop="wsInst60" label-width="150px" class="formulaColor">
+                  <el-form-item prop="ws60" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      60米风速瞬时公式
+                      60米风速公式
                     </span>
-                    <el-input v-model="form.wsInst60" readonly
-                              @click.native="ftck(form.wsInst60,'form.wsInst60','(60米风速瞬时)')"></el-input>
+                    <el-input v-model="form.ws60" readonly
+                              @click.native="ftck(form.ws60,'form.ws60','(60米风速)')"></el-input>
                   </el-form-item>
                 </el-col>
                 <el-col :span="8">
-                  <el-form-item prop="wdInst60" label-width="150px" class="formulaColor">
+                  <el-form-item prop="wd60" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      60米风向瞬时公式
+                      60米风向公式
                     </span>
-                    <el-input v-model="form.wdInst60" readonly
-                              @click.native="ftck(form.wdInst60,'form.wdInst60','(60米风向瞬时)')"></el-input>
+                    <el-input v-model="form.wd60" readonly
+                              @click.native="ftck(form.wd60,'form.wd60','(60米风向)')"></el-input>
                   </el-form-item>
                 </el-col>
               </el-row>
               <el-row :gutter="16">
                 <el-col :span="8">
-                  <el-form-item prop="wsInst70" label-width="150px" class="formulaColor">
+                  <el-form-item prop="ws70" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      70米风速瞬时公式
+                      70米风速公式
                     </span>
-                    <el-input v-model="form.wsInst70" readonly
-                              @click.native="ftck(form.wsInst70,'form.wsInst70','(70米风速瞬时)')"></el-input>
+                    <el-input v-model="form.ws70" readonly
+                              @click.native="ftck(form.ws70,'form.ws70','(70米风速)')"></el-input>
                   </el-form-item>
                 </el-col>
                 <el-col :span="8">
-                  <el-form-item prop="wdInst70" label-width="150px" class="formulaColor">
+                  <el-form-item prop="wd70" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      70米风向瞬时公式
+                      70米风向公式
                     </span>
-                    <el-input v-model="form.wdInst70" readonly
-                              @click.native="ftck(form.wdInst70,'form.wdInst70','(70米风向瞬时)')"></el-input>
+                    <el-input v-model="form.wd70" readonly
+                              @click.native="ftck(form.wd70,'form.wd70','(70米风向)')"></el-input>
                   </el-form-item>
                 </el-col>
                 <el-col :span="8">
-                  <el-form-item prop="wsInst80" label-width="150px" class="formulaColor">
+                  <el-form-item prop="ws80" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      80米风速瞬时公式
+                      80米风速公式
                     </span>
-                    <el-input v-model="form.wsInst80" readonly
-                              @click.native="ftck(form.wsInst80,'form.wsInst80','(80米风速瞬时)')"></el-input>
+                    <el-input v-model="form.ws80" readonly
+                              @click.native="ftck(form.ws80,'form.ws80','(80米风速)')"></el-input>
                   </el-form-item>
                 </el-col>
               </el-row>
               <el-row :gutter="16">
                 <el-col :span="8">
-                  <el-form-item prop="wdInst80" label-width="150px" class="formulaColor">
+                  <el-form-item prop="wd80" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      80米风向瞬时公式
+                      80米风向公式
                     </span>
-                    <el-input v-model="form.wdInst80" readonly
-                              @click.native="ftck(form.wdInst80,'form.wdInst80','(80米风向瞬时)')"></el-input>
+                    <el-input v-model="form.wd80" readonly
+                              @click.native="ftck(form.wd80,'form.wd80','(80米风向)')"></el-input>
                   </el-form-item>
                 </el-col>
                 <el-col :span="8">
-                  <el-form-item prop="wsInst90" label-width="150px" class="formulaColor">
+                  <el-form-item prop="ws90" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      90米风速瞬时公式
+                      90米风速公式
                     </span>
-                    <el-input v-model="form.wsInst90" readonly
-                              @click.native="ftck(form.wsInst90,'form.wsInst90','(90米风速瞬时)')"></el-input>
+                    <el-input v-model="form.ws90" readonly
+                              @click.native="ftck(form.ws90,'form.ws90','(90米风速)')"></el-input>
                   </el-form-item>
                 </el-col>
                 <el-col :span="8">
-                  <el-form-item prop="wdInst90" label-width="150px" class="formulaColor">
+                  <el-form-item prop="wd90" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      90米风向瞬时公式
+                      90米风向公式
                     </span>
-                    <el-input v-model="form.wdInst90" readonly
-                              @click.native="ftck(form.wdInst90,'form.wdInst90','(90米风向瞬时)')"></el-input>
+                    <el-input v-model="form.wd90" readonly
+                              @click.native="ftck(form.wd90,'form.wd90','(90米风向)')"></el-input>
                   </el-form-item>
                 </el-col>
               </el-row>
               <el-row :gutter="16">
                 <el-col :span="8">
-                  <el-form-item prop="wsInst100" label-width="150px" class="formulaColor">
+                  <el-form-item prop="ws100" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      100米风速瞬时公式
+                      100米风速公式
                     </span>
-                    <el-input v-model="form.wsInst100" readonly
-                              @click.native="ftck(form.wsInst100,'form.wsInst100','(100米风速瞬时)')"></el-input>
+                    <el-input v-model="form.ws100" readonly
+                              @click.native="ftck(form.ws100,'form.ws100','(100米风速)')"></el-input>
                   </el-form-item>
                 </el-col>
                 <el-col :span="8">
-                  <el-form-item prop="wdInst100" label-width="150px" class="formulaColor">
+                  <el-form-item prop="wd100" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      100米风向瞬时公式
+                      100米风向公式
                     </span>
-                    <el-input v-model="form.wdInst100" readonly
-                              @click.native="ftck(form.wdInst100,'form.wdInst100','(100米风向瞬时)')"></el-input>
+                    <el-input v-model="form.wd100" readonly
+                              @click.native="ftck(form.wd100,'form.wd100','(100米风向)')"></el-input>
                   </el-form-item>
                 </el-col>
                 <el-col :span="8">
-                  <el-form-item prop="wsInst110" label-width="150px" class="formulaColor">
+                  <el-form-item prop="ws110" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      110米风速瞬时公式
+                      110米风速公式
                     </span>
-                    <el-input v-model="form.wsInst110" readonly
-                              @click.native="ftck(form.wsInst110,'form.wsInst110','(110米风速瞬时)')"></el-input>
+                    <el-input v-model="form.ws110" readonly
+                              @click.native="ftck(form.ws110,'form.ws110','(110米风速)')"></el-input>
                   </el-form-item>
                 </el-col>
               </el-row>
               <el-row :gutter="16">
                 <el-col :span="8">
-                  <el-form-item prop="wdInst110" label-width="150px" class="formulaColor">
+                  <el-form-item prop="wd110" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      110米风向瞬时公式
+                      110米风向公式
                     </span>
-                    <el-input v-model="form.wdInst110" readonly
-                              @click.native="ftck(form.wdInst110,'form.wdInst110','(110米风向瞬时)')"></el-input>
+                    <el-input v-model="form.wd110" readonly
+                              @click.native="ftck(form.wd110,'form.wd110','(110米风向)')"></el-input>
                   </el-form-item>
                 </el-col>
                 <el-col :span="8">
-                  <el-form-item prop="wsInst120" label-width="150px" class="formulaColor">
+                  <el-form-item prop="ws120" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      120米风速瞬时公式
+                      120米风速公式
                     </span>
-                    <el-input v-model="form.wsInst120" readonly
-                              @click.native="ftck(form.wsInst120,'form.wsInst120','(120米风速瞬时)')"></el-input>
+                    <el-input v-model="form.ws120" readonly
+                              @click.native="ftck(form.ws120,'form.ws120','(120米风速)')"></el-input>
                   </el-form-item>
                 </el-col>
                 <el-col :span="8">
-                  <el-form-item prop="wdInst120" label-width="150px" class="formulaColor">
+                  <el-form-item prop="wd120" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      120米风向瞬时公式
+                      120米风向公式
                     </span>
-                    <el-input v-model="form.wdInst120" readonly
-                              @click.native="ftck(form.wdInst120,'form.wdInst120','(120米风向瞬时)')"></el-input>
+                    <el-input v-model="form.wd120" readonly
+                              @click.native="ftck(form.wd120,'form.wd120','(120米风向)')"></el-input>
                   </el-form-item>
                 </el-col>
               </el-row>
               <el-row :gutter="16">
                 <el-col :span="8">
-                  <el-form-item prop="wsInstHubHeight" label-width="150px" class="formulaColor">
+                  <el-form-item prop="wsHubHeight" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      轮毂风速瞬时公式
+                      轮毂风速公式
                     </span>
-                    <el-input v-model="form.wsInstHubHeight" readonly
-                              @click.native="ftck(form.wsInstHubHeight,'form.wsInstHubHeight','(轮毂风速瞬时)')"></el-input>
+                    <el-input v-model="form.wsHubHeight" readonly
+                              @click.native="ftck(form.wsHubHeight,'form.wsHubHeight','(轮毂风速)')"></el-input>
                   </el-form-item>
                 </el-col>
                 <el-col :span="8">
-                  <el-form-item prop="wdInstHubHeight" label-width="150px" class="formulaColor">
+                  <el-form-item prop="wdHubHeight" label-width="150px" class="formulaColor">
                     <span slot="label">
-                      轮毂风向瞬时公式
+                      轮毂风向公式
                     </span>
-                    <el-input v-model="form.wdInstHubHeight" readonly
-                              @click.native="ftck(form.wdInstHubHeight,'form.wdInstHubHeight','(轮毂风向瞬时)')"></el-input>
+                    <el-input v-model="form.wdHubHeight" readonly
+                              @click.native="ftck(form.wdHubHeight,'form.wdHubHeight','(轮毂风向)')"></el-input>
                   </el-form-item>
                 </el-col>
               </el-row>
@@ -460,7 +461,7 @@ export default {
   name: "index",
   data() {
     return {
-      stationCodeList: [],
+      // stationCodeList: [],
       dataType: [
         {value: 's', label: '时间单行'},
         {value: 'm', label: '时间多行'}
@@ -486,35 +487,35 @@ export default {
       visible: false,
 
       form: {
-        fileName: '',
+        // fileName: '',
         time: '',
-        dataType: '',
-        stationCode: '',
-        tInst: '',
-        rhInst: '',
-        paInst: '',
-        wsInst10: '',
-        wdInst10: '',
-        wsInst30: '',
-        wdInst30: '',
-        wsInst50: '',
-        wdInst50: '',
-        wsInst60: '',
-        wdInst60: '',
-        wsInst70: '',
-        wdInst70: '',
-        wsInst80: '',
-        wdInst80: '',
-        wsInst90: '',
-        wdInst90: '',
-        wsInst100: '',
-        wdInst100: '',
-        wsInst110: '',
-        wdInst110: '',
-        wsInst120: '',
-        wdInst120: '',
-        wsInstHubHeight: '',
-        wdInstHubHeight: ''
+        dataType: 's',
+        // stationCode: '',
+        t: '',
+        rh: '',
+        pa: '',
+        ws10: '',
+        wd10: '',
+        ws30: '',
+        wd30: '',
+        ws50: '',
+        wd50: '',
+        ws60: '',
+        wd60: '',
+        ws70: '',
+        wd70: '',
+        ws80: '',
+        wd80: '',
+        ws90: '',
+        wd90: '',
+        ws100: '',
+        wd100: '',
+        ws110: '',
+        wd110: '',
+        ws120: '',
+        wd120: '',
+        wsHubHeight: '',
+        wdHubHeight: ''
       },
       pfform: {
         rownumber: '',
@@ -527,7 +528,7 @@ export default {
     };
   },
   mounted() {
-    this.getElectricFieldList()
+    // this.getElectricFieldList()
     this.getTableList()
   },
   methods: {
@@ -542,106 +543,85 @@ export default {
     },
     getTableList() {
       this.tableLoading = true
+      const page = this.page
+
       // 获取列表
-      this.$axios.get("/parsingCft/page",Object.assign({
-        current: this.page.currentPage,
-        size: this.page.pageSize
-      })).then(response => {
-        this.tableData = response.data.data.records
-        this.page.total = response.data.data.total
-        this.tableLoading = false
-      }).catch((e) => {
-        this.tableLoading = false
-      })
-    },
-    getElectricFieldList() {
-      // 获取所有场站
-      this.$axios("/parsingInfo/getElectricField").then(response => {
-        this.stationCodeList = response.data.data
+      this.$axios.get("/parsingCft/page", {
+        params: {
+          currentPage: page.currentPage,
+          pageSize: page.pageSize
+        }
+      }).then(response => {
+        this.tableData = response.data.records
+        this.page.total = response.data.total
         this.tableLoading = false
       }).catch((e) => {
         this.tableLoading = false
       })
     },
+    // getElectricFieldList() {
+    //   // 获取所有场站
+    //   this.$axios("/parsingInfo/getElectricField").then(response => {
+    //     this.stationCodeList = response.data
+    //     this.tableLoading = false
+    //   }).catch((e) => {
+    //     this.tableLoading = false
+    //   })
+    // },
     destoryformula() {
       // 清空公式区字段
       if (this.tempformulasign == 'form.time') {
         this.form.time = ''
-      }
-      else if (this.tempformulasign == 'form.tInst') {
-        this.form.tInst = ''
-      }
-      else if (this.tempformulasign == 'form.rhInst') {
-        this.form.rhInst = ''
-      }
-      else if (this.tempformulasign == 'form.paInst') {
-        this.form.paInst = ''
-      }
-      else if (this.tempformulasign == 'form.wsInst10') {
-        this.form.wsInst10 = ''
-      }
-      else if (this.tempformulasign == 'form.wdInst10') {
-        this.form.wdInst10 = ''
-      }
-      else if (this.tempformulasign == 'form.wsInst30') {
-        this.form.wsInst30 = ''
-      }
-      else if (this.tempformulasign == 'form.wdInst30') {
-        this.form.wdInst30 = ''
-      }
-      else if (this.tempformulasign == 'form.wsInst50') {
-        this.form.wsInst50 = ''
-      }
-      else if (this.tempformulasign == 'form.wdInst50') {
-        this.form.wdInst50 = ''
-      }
-      else if (this.tempformulasign == 'form.wsInst60') {
-        this.form.wsInst60 = ''
-      }
-      else if (this.tempformulasign == 'form.wdInst60') {
-        this.form.wdInst60 = ''
-      }
-      else if (this.tempformulasign == 'form.wsInst70') {
-        this.form.wsInst70 = ''
-      }
-      else if (this.tempformulasign == 'form.wdInst70') {
-        this.form.wdInst70 = ''
-      }
-      else if (this.tempformulasign == 'form.wsInst80') {
-        this.form.wsInst80 = ''
-      }
-      else if (this.tempformulasign == 'form.wdInst80') {
-        this.form.wdInst80 = ''
-      }
-      else if (this.tempformulasign == 'form.wsInst90') {
-        this.form.wsInst90 = ''
-      }
-      else if (this.tempformulasign == 'form.wdInst90') {
-        this.form.wdInst90 = ''
-      }
-      else if (this.tempformulasign == 'form.wsInst100') {
-        this.form.wsInst100 = ''
-      }
-      else if (this.tempformulasign == 'form.wdInst100') {
-        this.form.wdInst100 = ''
-      }
-      else if (this.tempformulasign == 'form.wsInst110') {
-        this.form.wsInst110 = ''
-      }
-      else if (this.tempformulasign == 'form.wdInst110') {
-        this.form.wdInst110 = ''
-      }
-      else if (this.tempformulasign == 'form.wsInst120') {
-        this.form.wsInst120 = ''
-      }
-      else if (this.tempformulasign == 'form.wdInst120') {
-        this.form.wdInst120 = ''
-      }
-      else if (this.tempformulasign == 'form.wsInstHubHeight') {
-        this.form.wsInstHubHeight = ''
-      }
-      else if (this.tempformulasign == 'form.wdInstHubHeight') {
-        this.form.wdInstHubHeight = ''
+      } else if (this.tempformulasign == 'form.t') {
+        this.form.t = ''
+      } else if (this.tempformulasign == 'form.rh') {
+        this.form.rh = ''
+      } else if (this.tempformulasign == 'form.pa') {
+        this.form.pa = ''
+      } else if (this.tempformulasign == 'form.ws10') {
+        this.form.ws10 = ''
+      } else if (this.tempformulasign == 'form.wd10') {
+        this.form.wd10 = ''
+      } else if (this.tempformulasign == 'form.ws30') {
+        this.form.ws30 = ''
+      } else if (this.tempformulasign == 'form.wd30') {
+        this.form.wd30 = ''
+      } else if (this.tempformulasign == 'form.ws50') {
+        this.form.ws50 = ''
+      } else if (this.tempformulasign == 'form.wd50') {
+        this.form.wd50 = ''
+      } else if (this.tempformulasign == 'form.ws60') {
+        this.form.ws60 = ''
+      } else if (this.tempformulasign == 'form.wd60') {
+        this.form.wd60 = ''
+      } else if (this.tempformulasign == 'form.ws70') {
+        this.form.ws70 = ''
+      } else if (this.tempformulasign == 'form.wd70') {
+        this.form.wd70 = ''
+      } else if (this.tempformulasign == 'form.ws80') {
+        this.form.ws80 = ''
+      } else if (this.tempformulasign == 'form.wd80') {
+        this.form.wd80 = ''
+      } else if (this.tempformulasign == 'form.ws90') {
+        this.form.ws90 = ''
+      } else if (this.tempformulasign == 'form.wd90') {
+        this.form.wd90 = ''
+      } else if (this.tempformulasign == 'form.ws100') {
+        this.form.ws100 = ''
+      } else if (this.tempformulasign == 'form.wd100') {
+        this.form.wd100 = ''
+      } else if (this.tempformulasign == 'form.ws110') {
+        this.form.ws110 = ''
+      } else if (this.tempformulasign == 'form.wd110') {
+        this.form.wd110 = ''
+      } else if (this.tempformulasign == 'form.ws120') {
+        this.form.ws120 = ''
+      } else if (this.tempformulasign == 'form.wd120') {
+        this.form.wd120 = ''
+      } else if (this.tempformulasign == 'form.wsHubHeight') {
+        this.form.wsHubHeight = ''
+      } else if (this.tempformulasign == 'form.wdHubHeight') {
+        this.form.wdHubHeight = ''
       }
       this.clearformula()
     },
@@ -676,7 +656,7 @@ export default {
       this.editinfo = editname
     },
     genformula() {
-      if (this.tempformulasign==''){
+      if (this.tempformulasign == '') {
         this.$message.warning('请先选定左侧公式项')
         return
       }
@@ -705,108 +685,85 @@ export default {
       // 将生成的公式赋值到左侧表格中
       if (this.tempformulasign == 'form.time') {
         this.form.time = resultStr
-      }
-      else if (this.tempformulasign == 'form.tInst') {
-        this.form.tInst = resultStr
-      }
-      else if (this.tempformulasign == 'form.rhInst') {
-        this.form.rhInst = resultStr
-      }
-      else if (this.tempformulasign == 'form.paInst') {
-        this.form.paInst = resultStr
-      }
-      else if (this.tempformulasign == 'form.wsInst10') {
-        this.form.wsInst10 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wdInst10') {
-        this.form.wdInst10 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wsInst30') {
-        this.form.wsInst30 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wdInst30') {
-        this.form.wdInst30 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wsInst50') {
-        this.form.wsInst50 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wdInst50') {
-        this.form.wdInst50 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wsInst60') {
-        this.form.wsInst60 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wdInst60') {
-        this.form.wdInst60 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wsInst70') {
-        this.form.wsInst70 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wdInst70') {
-        this.form.wdInst70 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wsInst80') {
-        this.form.wsInst80 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wdInst80') {
-        this.form.wdInst80 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wsInst90') {
-        this.form.wsInst90 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wdInst90') {
-        this.form.wdInst90 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wsInst100') {
-        this.form.wsInst100 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wdInst100') {
-        this.form.wdInst100 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wsInst110') {
-        this.form.wsInst110 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wdInst110') {
-        this.form.wdInst110 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wsInst120') {
-        this.form.wsInst120 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wdInst120') {
-        this.form.wdInst120 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wsInstHubHeight') {
-        this.form.wsInstHubHeight = resultStr
-      }
-      else if (this.tempformulasign == 'form.wdInstHubHeight') {
-        this.form.wdInstHubHeight = resultStr
+      } else if (this.tempformulasign == 'form.t') {
+        this.form.t = resultStr
+      } else if (this.tempformulasign == 'form.rh') {
+        this.form.rh = resultStr
+      } else if (this.tempformulasign == 'form.pa') {
+        this.form.pa = resultStr
+      } else if (this.tempformulasign == 'form.ws10') {
+        this.form.ws10 = resultStr
+      } else if (this.tempformulasign == 'form.wd10') {
+        this.form.wd10 = resultStr
+      } else if (this.tempformulasign == 'form.ws30') {
+        this.form.ws30 = resultStr
+      } else if (this.tempformulasign == 'form.wd30') {
+        this.form.wd30 = resultStr
+      } else if (this.tempformulasign == 'form.ws50') {
+        this.form.ws50 = resultStr
+      } else if (this.tempformulasign == 'form.wd50') {
+        this.form.wd50 = resultStr
+      } else if (this.tempformulasign == 'form.ws60') {
+        this.form.ws60 = resultStr
+      } else if (this.tempformulasign == 'form.wd60') {
+        this.form.wd60 = resultStr
+      } else if (this.tempformulasign == 'form.ws70') {
+        this.form.ws70 = resultStr
+      } else if (this.tempformulasign == 'form.wd70') {
+        this.form.wd70 = resultStr
+      } else if (this.tempformulasign == 'form.ws80') {
+        this.form.ws80 = resultStr
+      } else if (this.tempformulasign == 'form.wd80') {
+        this.form.wd80 = resultStr
+      } else if (this.tempformulasign == 'form.ws90') {
+        this.form.ws90 = resultStr
+      } else if (this.tempformulasign == 'form.wd90') {
+        this.form.wd90 = resultStr
+      } else if (this.tempformulasign == 'form.ws100') {
+        this.form.ws100 = resultStr
+      } else if (this.tempformulasign == 'form.wd100') {
+        this.form.wd100 = resultStr
+      } else if (this.tempformulasign == 'form.ws110') {
+        this.form.ws110 = resultStr
+      } else if (this.tempformulasign == 'form.wd110') {
+        this.form.wd110 = resultStr
+      } else if (this.tempformulasign == 'form.ws120') {
+        this.form.ws120 = resultStr
+      } else if (this.tempformulasign == 'form.wd120') {
+        this.form.wd120 = resultStr
+      } else if (this.tempformulasign == 'form.wsHubHeight') {
+        this.form.wsHubHeight = resultStr
+      } else if (this.tempformulasign == 'form.wdHubHeight') {
+        this.form.wdHubHeight = resultStr
       }
       this.timer = new Date().getTime()
       this.clearformula()
     },
     /*保存*/
     handleSave(formName) {
-      if (!this.form.fileName || !this.form.time || !this.form.dataType || this.form.stationCode=="") {
+      if (!this.form.time || !this.form.dataType
+        //!this.form.fileName ||  || this.form.stationCode == ""
+        ) {
         this.$message.warning('填写必填项');
         return false;
       } else {
-        const data = this.form.stationCode
-        let data1 = "";
-        for (let n = 0; n < data.length; n++) {
-          for (let j = 0; j < this.stationCodeList.length; j++) {
-            if (data[n] == this.stationCodeList[j]["stationCode"]) {
-              data1 = data1 + this.stationCodeList[j]["stationCode"] + ","
-            }
-          }
-        }
-        data1 = data1.substr(0, data1.length - 1)
-        this.form.stationCode = data1
+        // const data = this.form.stationCode
+        // let data1 = "";
+        // for (let n = 0; n < data.length; n++) {
+        //   for (let j = 0; j < this.stationCodeList.length; j++) {
+        //     if (data[n] == this.stationCodeList[j]["stationCode"]) {
+        //       data1 = data1 + this.stationCodeList[j]["stationCode"] + ","
+        //     }
+        //   }
+        // }
+        // data1 = data1.substr(0, data1.length - 1)
+        // this.form.stationCode = data1
         if (this.saveFlag === 1) {
-          this.$axios.post("/parsingCft",this.form).then(response => {
+          this.$axios.post("/parsingCft", this.form).then(response => {
             this.dialogVisible = false
             this.getTableList()
             this.tableLoading = false
-            this.$message.success(response.data.data)
+            this.$message.success(response.data)
           }).catch(() => {
             this.tableLoading = false
           })
@@ -815,7 +772,7 @@ export default {
             this.dialogVisible = false
             this.getTableList()
             this.tableLoading = false
-            this.$message.success(response.data.data)
+            this.$message.success(response.data)
           }).catch(() => {
             this.tableLoading = false
           })
@@ -827,17 +784,47 @@ export default {
     handleAdd() {
       this.saveFlag = 1
       this.info = ''
-      this.form = {}
+      this.form = {
+        // fileName: '',
+        time: '',
+        dataType: 's',
+        // stationCode: '',
+        t: '',
+        rh: '',
+        pa: '',
+        ws10: '',
+        wd10: '',
+        ws30: '',
+        wd30: '',
+        ws50: '',
+        wd50: '',
+        ws60: '',
+        wd60: '',
+        ws70: '',
+        wd70: '',
+        ws80: '',
+        wd80: '',
+        ws90: '',
+        wd90: '',
+        ws100: '',
+        wd100: '',
+        ws110: '',
+        wd110: '',
+        ws120: '',
+        wd120: '',
+        wsHubHeight: '',
+        wdHubHeight: ''
+      }
       this.clearformula()
       this.visible = true
     },
     /*上报对象编辑*/
     handleEdit(row) {
       this.saveFlag = 2
-      let newRow = Object.assign({},row)
-      let tempStationCode = newRow.stationCode.split(',')
+      let newRow = Object.assign({}, row)
+      // let tempStationCode = newRow.stationCode.split(',')
       this.form = newRow
-      this.form.stationCode = tempStationCode
+      // this.form.stationCode = tempStationCode
       this.clearformula()
       this.visible = true
     },
@@ -848,9 +835,9 @@ export default {
         cancelButtonText: '取消',
         type: 'warning'
       }).then(() => {
-        this.$axios.delete("/parsingCft/"+row.id).then(response => {
+        this.$axios.delete("/parsingCft/" + row.id).then(response => {
           this.getTableList()
-          this.$message.success(response.data.data)
+          this.$message.success(response.data)
         })
       })
     },

+ 109 - 66
cpp-ui/src/views/configManager/parsingConf/dqparsing.vue

@@ -6,11 +6,13 @@
       :data="tableData"
       :header-cell-style="{background:'#ECF1FE',}"
       v-loading="tableLoading" border style="width: 100%">
-      <el-table-column prop="fileName" align="center" label="文件名关键字" width="200px"></el-table-column>
-      <el-table-column prop="forecastTime" align="center" label="预测时间公式"  width="300px"></el-table-column>
-      <el-table-column prop="fpValue" align="center" label="预测数据公式"  width="300px"></el-table-column>
+<!--      <el-table-column prop="fileName" align="center" label="文件名关键字" width="200px"></el-table-column>-->
       <el-table-column prop="dataType" align="center" label="数据类型" width="100px" :formatter="formatDataType"></el-table-column>
-      <el-table-column prop="stationCode" align="center" label="场站编号"></el-table-column>
+      <el-table-column prop="forecastTime" align="center" label="预测时间公式"></el-table-column>
+      <el-table-column prop="fpValue" align="center" label="预测数据公式"></el-table-column>
+      <el-table-column prop="openCapacity" align="center" label="预计开机容量公式"></el-table-column>
+      <el-table-column prop="capacity" align="center" label="装机容量公式"></el-table-column>
+<!--      <el-table-column prop="stationCode" align="center" label="场站编号"></el-table-column>-->
       <el-table-column label="操作" align="center" width="150px">
         <template slot-scope="scope">
           <el-button type="text" icon="el-icon-edit" @click="handleEdit(scope.row)">编辑</el-button>
@@ -43,14 +45,14 @@
           <div class="grid-content bg-purple">
             <el-form v-model="form" ref="form" :key="timer">
               <el-row :gutter="16">
-                <el-col :span="12">
-                  <el-form-item prop="fileName" label-width="110px">
-                    <span slot="label">
-                      <font color="red">*</font>文件名关键字
-                    </span>
-                    <el-input v-model="form.fileName" @focus="clearformula"></el-input>
-                  </el-form-item>
-                </el-col>
+<!--                <el-col :span="12">-->
+<!--                  <el-form-item prop="fileName" label-width="110px">-->
+<!--                    <span slot="label">-->
+<!--                      <font color="red">*</font>文件名关键字-->
+<!--                    </span>-->
+<!--                    <el-input v-model="form.fileName" @focus="clearformula"></el-input>-->
+<!--                  </el-form-item>-->
+<!--                </el-col>-->
                 <el-col :span="12">
                   <el-form-item prop="dataType" label-width="110px">
                     <span slot="label">
@@ -87,22 +89,43 @@
                   </el-form-item>
                 </el-col>
               </el-row>
-              <el-row>
-                <el-col :span="24">
-                  <el-form-item prop="stationCode" label-width="110px">
+              <el-row :gutter="16">
+                <el-col :span="12">
+                  <el-form-item prop="openCapacity" label-width="110px" class="formulaColor">
                     <span slot="label">
-                      <font color="red">*</font>场站编号
+                      <font color="red">*</font>预计开机容量公式
                     </span>
-                    <el-select v-model="form.stationCode" multiple clearable @focus="clearformula" style="width: 100%">
-                      <el-option
-                        v-for="item in this.stationCodeList"
-                        :key="item.stationCode"
-                        :label="item.stationCode"
-                        :value="item.stationCode"/>
-                    </el-select>
+                    <el-input v-model="form.openCapacity" readonly
+                              @click.native="ftck(form.openCapacity,'form.openCapacity','(预计开机容量)')"></el-input>
+                  </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                  <el-form-item prop="capacity" label-width="110px"
+                                class="formulaColor">
+                    <span slot="label">
+                      <font color="red">*</font>装机容量公式
+                    </span>
+                    <el-input v-model="form.capacity" readonly
+                              @click.native="ftck(form.capacity,'form.capacity','(装机容量)')"></el-input>
                   </el-form-item>
                 </el-col>
               </el-row>
+<!--              <el-row>-->
+<!--                <el-col :span="24">-->
+<!--                  <el-form-item prop="stationCode" label-width="110px">-->
+<!--                    <span slot="label">-->
+<!--                      <font color="red">*</font>场站编号-->
+<!--                    </span>-->
+<!--                    <el-select v-model="form.stationCode" multiple clearable @focus="clearformula" style="width: 100%">-->
+<!--                      <el-option-->
+<!--                        v-for="item in this.stationCodeList"-->
+<!--                        :key="item.stationCode"-->
+<!--                        :label="item.stationCode"-->
+<!--                        :value="item.stationCode"/>-->
+<!--                    </el-select>-->
+<!--                  </el-form-item>-->
+<!--                </el-col>-->
+<!--              </el-row>-->
             </el-form>
             <div slot="footer" class="dialog-footer">
               <el-button type="primary" @click="handleSave('form')">
@@ -180,7 +203,7 @@ export default {
   name: "index",
   data() {
     return {
-      stationCodeList: [],
+      // stationCodeList: [],
       dataType: [
         {value: 's', label: '时间单行'},
         {value: 'm', label: '时间多行'}
@@ -205,11 +228,13 @@ export default {
       info: '',
       visible: false,
       form: {
-        fileName: '',
+        // fileName: '',
         forecastTime: '',
         fpValue: '',
-        dataType: '',
-        stationCode: ''
+        dataType: 'm',
+        // stationCode: ''
+        openCapacity: '',
+        capacity: ''
       },
       pfform: {
         rownumber: '',
@@ -222,7 +247,7 @@ export default {
     };
   },
   mounted() {
-    this.getElectricFieldList()
+    // this.getElectricFieldList()
     this.getTableList()
   },
   methods: {
@@ -237,27 +262,30 @@ export default {
     },
     getTableList() {
       this.tableLoading = true
+      const page = this.page
       // 获取列表
-      this.$axios.get("/parsingDq/page",Object.assign({
-        current: this.page.currentPage,
-        size: this.page.pageSize
-      })).then(response => {
-        this.tableData = response.data.data.records
-        this.page.total = response.data.data.total
-        this.tableLoading = false
-      }).catch((e) => {
-        this.tableLoading = false
-      })
-    },
-    getElectricFieldList() {
-      // 获取所有场站
-      this.$axios("/parsingInfo/getElectricField").then(response => {
-        this.stationCodeList = response.data.data
+      this.$axios.get("/parsingDq/page", {
+        params: {
+          currentPage: page.currentPage,
+          pageSize: page.pageSize
+        }
+      }).then(response => {
+        this.tableData = response.data.records
+        this.page.total = response.data.total
         this.tableLoading = false
       }).catch((e) => {
         this.tableLoading = false
       })
     },
+    // getElectricFieldList() {
+    //   // 获取所有场站
+    //   this.$axios("/parsingInfo/getElectricField").then(response => {
+    //     this.stationCodeList = response.data
+    //     this.tableLoading = false
+    //   }).catch((e) => {
+    //     this.tableLoading = false
+    //   })
+    // },
     destoryformula() {
       // 清空公式区字段
       if (this.tempformulasign == 'form.forecastTime') {
@@ -298,7 +326,7 @@ export default {
       this.editinfo = editname
     },
     genformula() {
-      if (this.tempformulasign==''){
+      if (this.tempformulasign == '') {
         this.$message.warning('请先选定左侧公式项')
         return
       }
@@ -329,43 +357,50 @@ export default {
         this.form.forecastTime = resultStr
       } else if (this.tempformulasign == 'form.fpValue') {
         this.form.fpValue = resultStr
+      } else if (this.tempformulasign == 'form.openCapacity') {
+        this.form.openCapacity = resultStr
+      } else if (this.tempformulasign == 'form.capacity') {
+        this.form.capacity = resultStr
       }
       this.timer = new Date().getTime()
       this.clearformula()
     },
     /*保存*/
     handleSave(formName) {
-      if (!this.form.fileName || !this.form.forecastTime || !this.form.fpValue || !this.form.dataType || this.form.stationCode=="") {
+      if (!this.form.forecastTime || !this.form.fpValue || !this.form.dataType
+        // !this.form.fileName || || this.form.stationCode == ""
+        ) {
         this.$message.warning('填写必填项');
         return false;
       } else {
-        const data = this.form.stationCode
-        let data1 = "";
-        for (let n = 0; n < data.length; n++) {
-          for (let j = 0; j < this.stationCodeList.length; j++) {
-            if (data[n] == this.stationCodeList[j]["stationCode"]) {
-              data1 = data1 + this.stationCodeList[j]["stationCode"] + ","
-            }
-          }
-        }
-        data1 = data1.substr(0, data1.length - 1)
-        this.form.stationCode = data1
+        // const data = this.form.stationCode
+        // let data1 = "";
+        // for (let n = 0; n < data.length; n++) {
+        //   for (let j = 0; j < this.stationCodeList.length; j++) {
+        //     if (data[n] == this.stationCodeList[j]["stationCode"]) {
+        //       data1 = data1 + this.stationCodeList[j]["stationCode"] + ","
+        //     }
+        //   }
+        // }
+        // data1 = data1.substr(0, data1.length - 1)
+        // this.form.stationCode = data1
         if (this.saveFlag === 1) {
-          this.$axios.post("/parsingDq",this.form).then(response => {
+          console.log(this.form)
+          this.$axios.post("/parsingDq", this.form).then(response => {
             this.dialogVisible = false
             this.getTableList()
             this.tableLoading = false
-            this.$message.success(response.data.data)
+            this.$message.success(response.data)
           }).catch(() => {
             this.tableLoading = false
           })
         } else {
-          console.log(this.form)
+
           this.$axios.put("/parsingDq", this.form).then(response => {
             this.dialogVisible = false
             this.getTableList()
             this.tableLoading = false
-            this.$message.success(response.data.data)
+            this.$message.success(response.data)
           }).catch(() => {
             this.tableLoading = false
           })
@@ -377,17 +412,25 @@ export default {
     handleAdd() {
       this.saveFlag = 1
       this.info = ''
-      this.form = {}
+      this.form ={
+        // fileName: '',
+        forecastTime: '',
+        fpValue: '',
+        dataType: 'm',
+        // stationCode: ''
+        openCapacity: '',
+        capacity: ''
+      }
       this.clearformula()
       this.visible = true
     },
     /*上报对象编辑*/
     handleEdit(row) {
       this.saveFlag = 2
-      let newRow = Object.assign({},row)
-      let tempStationCode = newRow.stationCode.split(',')
+      let newRow = Object.assign({}, row)
+      // let tempStationCode = newRow.stationCode.split(',')
       this.form = newRow
-      this.form.stationCode = tempStationCode
+      // this.form.stationCode = tempStationCode
       this.clearformula()
       this.visible = true
     },
@@ -398,9 +441,9 @@ export default {
         cancelButtonText: '取消',
         type: 'warning'
       }).then(() => {
-        this.$axios.delete("/parsingDq/"+row.id).then(response => {
+        this.$axios.delete("/parsingDq/" + row.id).then(response => {
           this.getTableList()
-          this.$message.success(response.data.data)
+          this.$message.success(response.data)
         })
       })
     },

+ 147 - 136
cpp-ui/src/views/configManager/parsingConf/fjparsing.vue

@@ -32,16 +32,17 @@
             <tr>
               <td>温度公式:{{ props.row.t }}</td>
               <td>桨距角公式:{{ props.row.pitchAngle }}</td>
-              <td></td>
+              <td>是否样板机公式:{{ props.row.isSample }}</td>
             </tr>
           </table>
         </template>
       </el-table-column>
-      <el-table-column prop="fileName" align="center" label="文件名关键字" width="200px"></el-table-column>
-      <el-table-column prop="dataType" align="center" label="数据类型" width="100px" :formatter="formatDataType"></el-table-column>
-      <el-table-column prop="time" align="center" label="时间公式"  width="300px"></el-table-column>
-      <el-table-column prop="equipmentName" align="center" label="设备名称公式"  width="300px"></el-table-column>
-      <el-table-column prop="stationCode" align="center" label="场站编号"></el-table-column>
+<!--      <el-table-column prop="fileName" align="center" label="文件名关键字" width="200px"></el-table-column>-->
+      <el-table-column prop="dataType" align="center" label="数据类型" width="100px"
+                       :formatter="formatDataType"></el-table-column>
+      <el-table-column prop="time" align="center" label="时间公式"></el-table-column>
+      <el-table-column prop="equipmentName" align="center" label="设备名称公式"></el-table-column>
+<!--      <el-table-column prop="stationCode" align="center" label="场站编号"></el-table-column>-->
       <el-table-column label="操作" align="center" width="150px">
         <template slot-scope="scope">
           <el-button type="text" icon="el-icon-edit" @click="handleEdit(scope.row)">编辑</el-button>
@@ -76,14 +77,14 @@
           <div class="grid-content bg-purple">
             <el-form v-model="form" ref="form" :key="timer">
               <el-row :gutter="16">
-                <el-col :span="8">
-                  <el-form-item prop="fileName" label-width="110px">
-                    <span slot="label">
-                      <font color="red">*</font>文件名关键字
-                    </span>
-                    <el-input v-model="form.fileName" @focus="clearformula"></el-input>
-                  </el-form-item>
-                </el-col>
+<!--                <el-col :span="8">-->
+<!--                  <el-form-item prop="fileName" label-width="110px">-->
+<!--                    <span slot="label">-->
+<!--                      <font color="red">*</font>文件名关键字-->
+<!--                    </span>-->
+<!--                    <el-input v-model="form.fileName" @focus="clearformula"></el-input>-->
+<!--                  </el-form-item>-->
+<!--                </el-col>-->
                 <el-col :span="8">
                   <el-form-item prop="dataType" label-width="110px">
                     <span slot="label">
@@ -119,22 +120,22 @@
                   </el-form-item>
                 </el-col>
               </el-row>
-              <el-row>
-                <el-col :span="24">
-                  <el-form-item prop="stationCode" label-width="110px">
-                    <span slot="label">
-                      <font color="red">*</font>场站编号
-                    </span>
-                    <el-select v-model="form.stationCode" multiple clearable @focus="clearformula" style="width: 100%">
-                      <el-option
-                        v-for="item in this.stationCodeList"
-                        :key="item.stationCode"
-                        :label="item.stationCode"
-                        :value="item.stationCode"/>
-                    </el-select>
-                  </el-form-item>
-                </el-col>
-              </el-row>
+<!--              <el-row>-->
+<!--                <el-col :span="24">-->
+<!--                  <el-form-item prop="stationCode" label-width="110px">-->
+<!--                    <span slot="label">-->
+<!--                      <font color="red">*</font>场站编号-->
+<!--                    </span>-->
+<!--                    <el-select v-model="form.stationCode" multiple clearable @focus="clearformula" style="width: 100%">-->
+<!--                      <el-option-->
+<!--                        v-for="item in this.stationCodeList"-->
+<!--                        :key="item.stationCode"-->
+<!--                        :label="item.stationCode"-->
+<!--                        :value="item.stationCode"/>-->
+<!--                    </el-select>-->
+<!--                  </el-form-item>-->
+<!--                </el-col>-->
+<!--              </el-row>-->
               <el-row :gutter="16">
                 <el-col :span="8">
                   <el-form-item prop="status" label-width="110px" class="formulaColor">
@@ -270,6 +271,15 @@
                               @click.native="ftck(form.pitchAngle,'form.pitchAngle','(桨距角)')"></el-input>
                   </el-form-item>
                 </el-col>
+                <el-col :span="8">
+                  <el-form-item prop="isSample" label-width="110px" class="formulaColor">
+                    <span slot="label">
+                      是否样板机公式
+                    </span>
+                    <el-input v-model="form.isSample" readonly
+                              @click.native="ftck(form.isSample,'form.isSample','(是否样板机)')"></el-input>
+                  </el-form-item>
+                </el-col>
               </el-row>
             </el-form>
             <div slot="footer" class="dialog-footer">
@@ -348,7 +358,7 @@ export default {
   name: "index",
   data() {
     return {
-      stationCodeList: [],
+      // stationCodeList: [],
       dataType: [
         {value: 's', label: '时间单行'},
         {value: 'm', label: '时间多行'}
@@ -373,10 +383,10 @@ export default {
       info: '',
       visible: false,
       form: {
-        fileName: '',
+        // fileName: '',
         time: '',
-        dataType: '',
-        stationCode: '',
+        dataType: 's',
+        // stationCode: '',
         status: '',
         activePower: '',
         reactivePower: '',
@@ -387,10 +397,12 @@ export default {
         cumulativeGeneratedEnergy: '',
         dayGridConnectedHours: '',
         equipmentName: '',
-        ws:'',
-        wd:'',
-        t:'',
-        pitchAngle:''
+        ws: '',
+        wd: '',
+        t: '',
+        pitchAngle: '',
+        isSample: ''
+
       },
       pfform: {
         rownumber: '',
@@ -403,7 +415,7 @@ export default {
     };
   },
   mounted() {
-    this.getElectricFieldList()
+    // this.getElectricFieldList()
     this.getTableList()
   },
   methods: {
@@ -418,75 +430,64 @@ export default {
     },
     getTableList() {
       this.tableLoading = true
+      const page = this.page
+
       // 获取列表
-      this.$axios.get("/parsingFj/page",Object.assign({
-        current: this.page.currentPage,
-        size: this.page.pageSize
-      })).then(response => {
-        this.tableData = response.data.data.records
-        this.page.total = response.data.data.total
-        this.tableLoading = false
-      }).catch((e) => {
-        this.tableLoading = false
-      })
-    },
-    getElectricFieldList() {
-      // 获取所有场站
-      this.$axios("/parsingInfo/getElectricField").then(response => {
-        this.stationCodeList = response.data.data
+      this.$axios.get("/parsingFj/page", {
+        params: {
+          currentPage: page.currentPage,
+          pageSize: page.pageSize
+        }
+      }).then(response => {
+        this.tableData = response.data.records
+        this.page.total = response.data.total
         this.tableLoading = false
       }).catch((e) => {
         this.tableLoading = false
       })
     },
+    // getElectricFieldList() {
+    //   // 获取所有场站
+    //   this.$axios("/parsingInfo/getElectricField").then(response => {
+    //     this.stationCodeList = response.data
+    //     this.tableLoading = false
+    //   }).catch((e) => {
+    //     this.tableLoading = false
+    //   })
+    // },
     destoryformula() {
       // 清空公式区字段
       if (this.tempformulasign == 'form.time') {
         this.form.time = ''
-      }
-      else if (this.tempformulasign == 'form.equipmentName') {
+      } else if (this.tempformulasign == 'form.equipmentName') {
         this.form.equipmentName = ''
-      }
-      else if (this.tempformulasign == 'form.status') {
+      } else if (this.tempformulasign == 'form.status') {
         this.form.status = ''
-      }
-      else if (this.tempformulasign == 'form.activePower') {
+      } else if (this.tempformulasign == 'form.activePower') {
         this.form.activePower = ''
-      }
-      else if (this.tempformulasign == 'form.reactivePower') {
+      } else if (this.tempformulasign == 'form.reactivePower') {
         this.form.reactivePower = ''
-      }
-      else if (this.tempformulasign == 'form.powerFactor') {
+      } else if (this.tempformulasign == 'form.powerFactor') {
         this.form.powerFactor = ''
-      }
-      else if (this.tempformulasign == 'form.voltage') {
+      } else if (this.tempformulasign == 'form.voltage') {
         this.form.voltage = ''
-      }
-      else if (this.tempformulasign == 'form.electricalCurrent') {
+      } else if (this.tempformulasign == 'form.electricalCurrent') {
         this.form.electricalCurrent = ''
-      }
-      else if (this.tempformulasign == 'form.dayElectricQuantity') {
+      } else if (this.tempformulasign == 'form.dayElectricQuantity') {
         this.form.dayElectricQuantity = ''
-      }
-      else if (this.tempformulasign == 'form.cumulativeGeneratedEnergy') {
+      } else if (this.tempformulasign == 'form.cumulativeGeneratedEnergy') {
         this.form.cumulativeGeneratedEnergy = ''
-      }
-      else if (this.tempformulasign == 'form.dayGridConnectedHours') {
+      } else if (this.tempformulasign == 'form.dayGridConnectedHours') {
         this.form.dayGridConnectedHours = ''
-      }
-      else if (this.tempformulasign == 'form.windWheelRatedSpeed') {
+      } else if (this.tempformulasign == 'form.windWheelRatedSpeed') {
         this.form.windWheelRatedSpeed = ''
-      }
-      else if (this.tempformulasign == 'form.ws') {
+      } else if (this.tempformulasign == 'form.ws') {
         this.form.ws = ''
-      }
-      else if (this.tempformulasign == 'form.wd') {
+      } else if (this.tempformulasign == 'form.wd') {
         this.form.wd = ''
-      }
-      else if (this.tempformulasign == 'form.t') {
+      } else if (this.tempformulasign == 'form.t') {
         this.form.t = ''
-      }
-      else if (this.tempformulasign == 'form.pitchAngle') {
+      } else if (this.tempformulasign == 'form.pitchAngle') {
         this.form.pitchAngle = ''
       }
       this.clearformula()
@@ -522,7 +523,7 @@ export default {
       this.editinfo = editname
     },
     genformula() {
-      if (this.tempformulasign==''){
+      if (this.tempformulasign == '') {
         this.$message.warning('请先选定左侧公式项')
         return
       }
@@ -551,78 +552,67 @@ export default {
       // 将生成的公式赋值到左侧表格中
       if (this.tempformulasign == 'form.time') {
         this.form.time = resultStr
-      }
-      else if (this.tempformulasign == 'form.equipmentName') {
+      } else if (this.tempformulasign == 'form.equipmentName') {
         this.form.equipmentName = resultStr
-      }
-      else if (this.tempformulasign == 'form.status') {
+      } else if (this.tempformulasign == 'form.status') {
         this.form.status = resultStr
-      }
-      else if (this.tempformulasign == 'form.activePower') {
+      } else if (this.tempformulasign == 'form.activePower') {
         this.form.activePower = resultStr
-      }
-      else if (this.tempformulasign == 'form.reactivePower') {
+      } else if (this.tempformulasign == 'form.reactivePower') {
         this.form.reactivePower = resultStr
-      }
-      else if (this.tempformulasign == 'form.powerFactor') {
+      } else if (this.tempformulasign == 'form.powerFactor') {
         this.form.powerFactor = resultStr
-      }
-      else if (this.tempformulasign == 'form.voltage') {
+      } else if (this.tempformulasign == 'form.voltage') {
         this.form.voltage = resultStr
-      }
-      else if (this.tempformulasign == 'form.electricalCurrent') {
+      } else if (this.tempformulasign == 'form.electricalCurrent') {
         this.form.electricalCurrent = resultStr
-      }
-      else if (this.tempformulasign == 'form.dayElectricQuantity') {
+      } else if (this.tempformulasign == 'form.dayElectricQuantity') {
         this.form.dayElectricQuantity = resultStr
-      }
-      else if (this.tempformulasign == 'form.cumulativeGeneratedEnergy') {
+      } else if (this.tempformulasign == 'form.cumulativeGeneratedEnergy') {
         this.form.cumulativeGeneratedEnergy = resultStr
-      }
-      else if (this.tempformulasign == 'form.dayGridConnectedHours') {
+      } else if (this.tempformulasign == 'form.dayGridConnectedHours') {
         this.form.dayGridConnectedHours = resultStr
-      }
-      else if (this.tempformulasign == 'form.windWheelRatedSpeed') {
+      } else if (this.tempformulasign == 'form.windWheelRatedSpeed') {
         this.form.windWheelRatedSpeed = resultStr
-      }
-      else if (this.tempformulasign == 'form.ws') {
+      } else if (this.tempformulasign == 'form.ws') {
         this.form.ws = resultStr
-      }
-      else if (this.tempformulasign == 'form.wd') {
+      } else if (this.tempformulasign == 'form.wd') {
         this.form.wd = resultStr
-      }
-      else if (this.tempformulasign == 'form.t') {
+      } else if (this.tempformulasign == 'form.t') {
         this.form.t = resultStr
-      }
-      else if (this.tempformulasign == 'form.pitchAngle') {
+      } else if (this.tempformulasign == 'form.pitchAngle') {
         this.form.pitchAngle = resultStr
+      }else if (this.tempformulasign == 'form.isSample') {
+        this.form.isSample = resultStr
       }
       this.timer = new Date().getTime()
       this.clearformula()
     },
     /*保存*/
     handleSave(formName) {
-      if (!this.form.fileName || !this.form.time || !this.form.equipmentName || !this.form.dataType || this.form.stationCode=="") {
+      if (!this.form.time || !this.form.equipmentName || !this.form.dataType
+        // !this.form.fileName || || this.form.stationCode == ""
+        ) {
         this.$message.warning('填写必填项');
         return false;
       } else {
-        const data = this.form.stationCode
-        let data1 = "";
-        for (let n = 0; n < data.length; n++) {
-          for (let j = 0; j < this.stationCodeList.length; j++) {
-            if (data[n] == this.stationCodeList[j]["stationCode"]) {
-              data1 = data1 + this.stationCodeList[j]["stationCode"] + ","
-            }
-          }
-        }
-        data1 = data1.substr(0, data1.length - 1)
-        this.form.stationCode = data1
+        // const data = this.form.stationCode
+        // let data1 = "";
+        // for (let n = 0; n < data.length; n++) {
+        //   for (let j = 0; j < this.stationCodeList.length; j++) {
+        //     if (data[n] == this.stationCodeList[j]["stationCode"]) {
+        //       data1 = data1 + this.stationCodeList[j]["stationCode"] + ","
+        //     }
+        //   }
+        // }
+        // data1 = data1.substr(0, data1.length - 1)
+        // this.form.stationCode = data1
         if (this.saveFlag === 1) {
-          this.$axios.post("/parsingFj",this.form).then(response => {
+          this.$axios.post("/parsingFj", this.form).then(response => {
             this.dialogVisible = false
             this.getTableList()
             this.tableLoading = false
-            this.$message.success(response.data.data)
+            this.$message.success(response.data)
           }).catch(() => {
             this.tableLoading = false
           })
@@ -631,7 +621,7 @@ export default {
             this.dialogVisible = false
             this.getTableList()
             this.tableLoading = false
-            this.$message.success(response.data.data)
+            this.$message.success(response.data)
           }).catch(() => {
             this.tableLoading = false
           })
@@ -643,17 +633,38 @@ export default {
     handleAdd() {
       this.saveFlag = 1
       this.info = ''
-      this.form = {}
+      this.form = {
+        // fileName: '',
+        time: '',
+        dataType: 's',
+        // stationCode: '',
+        status: '',
+        activePower: '',
+        reactivePower: '',
+        powerFactor: '',
+        voltage: '',
+        electricalCurrent: '',
+        dayElectricQuantity: '',
+        cumulativeGeneratedEnergy: '',
+        dayGridConnectedHours: '',
+        equipmentName: '',
+        ws: '',
+        wd: '',
+        t: '',
+        pitchAngle: '',
+        isSample: ''
+
+      }
       this.clearformula()
       this.visible = true
     },
     /*上报对象编辑*/
     handleEdit(row) {
       this.saveFlag = 2
-      let newRow = Object.assign({},row)
-      let tempStationCode = newRow.stationCode.split(',')
+      let newRow = Object.assign({}, row)
+      // let tempStationCode = newRow.stationCode.split(',')
       this.form = newRow
-      this.form.stationCode = tempStationCode
+      // this.form.stationCode = tempStationCode
       this.clearformula()
       this.visible = true
     },
@@ -664,9 +675,9 @@ export default {
         cancelButtonText: '取消',
         type: 'warning'
       }).then(() => {
-        this.$axios.delete("/parsingFj/"+row.id).then(response => {
+        this.$axios.delete("/parsingFj/" + row.id).then(response => {
           this.getTableList()
-          this.$message.success(response.data.data)
+          this.$message.success(response.data)
         })
       })
     },

+ 128 - 108
cpp-ui/src/views/configManager/parsingConf/nbqparsing.vue

@@ -24,14 +24,20 @@
               <td>累计发电量公式:{{ props.row.cumulativeGeneratedEnergy }}</td>
               <td>并网小时数公式:{{ props.row.dayGridConnectedHours }}</td>
             </tr>
+            <tr>
+              <td>是否样板机公式:{{ props.row.isSample }}</td>
+              <td></td>
+              <td></td>
+            </tr>
           </table>
         </template>
       </el-table-column>
-      <el-table-column prop="fileName" align="center" label="文件名关键字" width="200px"></el-table-column>
-      <el-table-column prop="dataType" align="center" label="数据类型" width="100px" :formatter="formatDataType"></el-table-column>
-      <el-table-column prop="time" align="center" label="时间公式"  width="300px"></el-table-column>
-      <el-table-column prop="equipmentName" align="center" label="设备名称公式"  width="300px"></el-table-column>
-      <el-table-column prop="stationCode" align="center" label="场站编号"></el-table-column>
+<!--      <el-table-column prop="fileName" align="center" label="文件名关键字" width="200px"></el-table-column>-->
+      <el-table-column prop="dataType" align="center" label="数据类型" width="100px"
+                       :formatter="formatDataType"></el-table-column>
+      <el-table-column prop="time" align="center" label="时间公式"></el-table-column>
+      <el-table-column prop="equipmentName" align="center" label="设备名称公式"></el-table-column>
+<!--      <el-table-column prop="stationCode" align="center" label="场站编号"></el-table-column>-->
       <el-table-column label="操作" align="center" width="150px">
         <template slot-scope="scope">
           <el-button type="text" icon="el-icon-edit" @click="handleEdit(scope.row)">编辑</el-button>
@@ -66,14 +72,14 @@
           <div class="grid-content bg-purple">
             <el-form v-model="form" ref="form" :key="timer">
               <el-row :gutter="16">
-                <el-col :span="8">
-                  <el-form-item prop="fileName" label-width="110px">
-                    <span slot="label">
-                      <font color="red">*</font>文件名关键字
-                    </span>
-                    <el-input v-model="form.fileName" @focus="clearformula"></el-input>
-                  </el-form-item>
-                </el-col>
+<!--                <el-col :span="8">-->
+<!--                  <el-form-item prop="fileName" label-width="110px">-->
+<!--                    <span slot="label">-->
+<!--                      <font color="red">*</font>文件名关键字-->
+<!--                    </span>-->
+<!--                    <el-input v-model="form.fileName" @focus="clearformula"></el-input>-->
+<!--                  </el-form-item>-->
+<!--                </el-col>-->
                 <el-col :span="8">
                   <el-form-item prop="dataType" label-width="110px">
                     <span slot="label">
@@ -108,23 +114,32 @@
                               @click.native="ftck(form.equipmentName,'form.equipmentName','(设备名称)')"></el-input>
                   </el-form-item>
                 </el-col>
-              </el-row>
-              <el-row>
-                <el-col :span="24">
-                  <el-form-item prop="stationCode" label-width="110px">
+                <el-col :span="8">
+                  <el-form-item prop="isSample" label-width="110px" class="formulaColor">
                     <span slot="label">
-                      <font color="red">*</font>场站编号
+                      <font color="red">*</font>是否样板机公式
                     </span>
-                    <el-select v-model="form.stationCode" multiple clearable @focus="clearformula" style="width: 100%">
-                      <el-option
-                        v-for="item in this.stationCodeList"
-                        :key="item.stationCode"
-                        :label="item.stationCode"
-                        :value="item.stationCode"/>
-                    </el-select>
+                    <el-input v-model="form.isSample" readonly
+                              @click.native="ftck(form.isSample,'form.isSample','(是否样板机)')"></el-input>
                   </el-form-item>
                 </el-col>
               </el-row>
+<!--              <el-row>-->
+<!--                <el-col :span="24">-->
+<!--                  <el-form-item prop="stationCode" label-width="110px">-->
+<!--                    <span slot="label">-->
+<!--                      <font color="red">*</font>场站编号-->
+<!--                    </span>-->
+<!--                    <el-select v-model="form.stationCode" multiple clearable @focus="clearformula" style="width: 100%">-->
+<!--                      <el-option-->
+<!--                        v-for="item in this.stationCodeList"-->
+<!--                        :key="item.stationCode"-->
+<!--                        :label="item.stationCode"-->
+<!--                        :value="item.stationCode"/>-->
+<!--                    </el-select>-->
+<!--                  </el-form-item>-->
+<!--                </el-col>-->
+<!--              </el-row>-->
               <el-row :gutter="16">
                 <el-col :span="8">
                   <el-form-item prop="status" label-width="110px" class="formulaColor">
@@ -290,7 +305,7 @@ export default {
   name: "index",
   data() {
     return {
-      stationCodeList: [],
+      // stationCodeList: [],
       dataType: [
         {value: 's', label: '时间单行'},
         {value: 'm', label: '时间多行'}
@@ -315,10 +330,10 @@ export default {
       info: '',
       visible: false,
       form: {
-        fileName: '',
+        // fileName: '',
         time: '',
-        dataType: '',
-        stationCode: '',
+        dataType: 's',
+        // stationCode: '',
         status: '',
         activePower: '',
         reactivePower: '',
@@ -328,7 +343,8 @@ export default {
         dayElectricQuantity: '',
         cumulativeGeneratedEnergy: '',
         dayGridConnectedHours: '',
-        equipmentName: ''
+        equipmentName: '',
+        isSample: ''
       },
       pfform: {
         rownumber: '',
@@ -341,7 +357,7 @@ export default {
     };
   },
   mounted() {
-    this.getElectricFieldList()
+    // this.getElectricFieldList()
     this.getTableList()
   },
   methods: {
@@ -356,60 +372,54 @@ export default {
     },
     getTableList() {
       this.tableLoading = true
+      const page = this.page
+
       // 获取列表
-      this.$axios.get("/parsingNbq/page",Object.assign({
-        current: this.page.currentPage,
-        size: this.page.pageSize
-      })).then(response => {
-        this.tableData = response.data.data.records
-        this.page.total = response.data.data.total
-        this.tableLoading = false
-      }).catch((e) => {
-        this.tableLoading = false
-      })
-    },
-    getElectricFieldList() {
-      // 获取所有场站
-      this.$axios("/parsingInfo/getElectricField").then(response => {
-        this.stationCodeList = response.data.data
+      this.$axios.get("/parsingNbq/page", {
+        params: {
+          currentPage: page.currentPage,
+          pageSize: page.pageSize
+        }
+      }).then(response => {
+        this.tableData = response.data.records
+        this.page.total = response.data.total
         this.tableLoading = false
       }).catch((e) => {
         this.tableLoading = false
       })
     },
+    // getElectricFieldList() {
+    //   // 获取所有场站
+    //   this.$axios("/parsingInfo/getElectricField").then(response => {
+    //     this.stationCodeList = response.data
+    //     this.tableLoading = false
+    //   }).catch((e) => {
+    //     this.tableLoading = false
+    //   })
+    // },
     destoryformula() {
       // 清空公式区字段
       if (this.tempformulasign == 'form.time') {
         this.form.time = ''
-      }
-      else if (this.tempformulasign == 'form.equipmentName') {
+      } else if (this.tempformulasign == 'form.equipmentName') {
         this.form.equipmentName = ''
-      }
-      else if (this.tempformulasign == 'form.status') {
+      } else if (this.tempformulasign == 'form.status') {
         this.form.status = ''
-      }
-      else if (this.tempformulasign == 'form.activePower') {
+      } else if (this.tempformulasign == 'form.activePower') {
         this.form.activePower = ''
-      }
-      else if (this.tempformulasign == 'form.reactivePower') {
+      } else if (this.tempformulasign == 'form.reactivePower') {
         this.form.reactivePower = ''
-      }
-      else if (this.tempformulasign == 'form.powerFactor') {
+      } else if (this.tempformulasign == 'form.powerFactor') {
         this.form.powerFactor = ''
-      }
-      else if (this.tempformulasign == 'form.voltage') {
+      } else if (this.tempformulasign == 'form.voltage') {
         this.form.voltage = ''
-      }
-      else if (this.tempformulasign == 'form.electricalCurrent') {
+      } else if (this.tempformulasign == 'form.electricalCurrent') {
         this.form.electricalCurrent = ''
-      }
-      else if (this.tempformulasign == 'form.dayElectricQuantity') {
+      } else if (this.tempformulasign == 'form.dayElectricQuantity') {
         this.form.dayElectricQuantity = ''
-      }
-      else if (this.tempformulasign == 'form.cumulativeGeneratedEnergy') {
+      } else if (this.tempformulasign == 'form.cumulativeGeneratedEnergy') {
         this.form.cumulativeGeneratedEnergy = ''
-      }
-      else if (this.tempformulasign == 'form.dayGridConnectedHours') {
+      } else if (this.tempformulasign == 'form.dayGridConnectedHours') {
         this.form.dayGridConnectedHours = ''
       }
       this.clearformula()
@@ -445,7 +455,7 @@ export default {
       this.editinfo = editname
     },
     genformula() {
-      if (this.tempformulasign==''){
+      if (this.tempformulasign == '') {
         this.$message.warning('请先选定左侧公式项')
         return
       }
@@ -474,63 +484,57 @@ export default {
       // 将生成的公式赋值到左侧表格中
       if (this.tempformulasign == 'form.time') {
         this.form.time = resultStr
-      }
-      else if (this.tempformulasign == 'form.equipmentName') {
+      } else if (this.tempformulasign == 'form.equipmentName') {
         this.form.equipmentName = resultStr
-      }
-      else if (this.tempformulasign == 'form.status') {
+      } else if (this.tempformulasign == 'form.status') {
         this.form.status = resultStr
-      }
-      else if (this.tempformulasign == 'form.activePower') {
+      } else if (this.tempformulasign == 'form.activePower') {
         this.form.activePower = resultStr
-      }
-      else if (this.tempformulasign == 'form.reactivePower') {
+      } else if (this.tempformulasign == 'form.reactivePower') {
         this.form.reactivePower = resultStr
-      }
-      else if (this.tempformulasign == 'form.powerFactor') {
+      } else if (this.tempformulasign == 'form.powerFactor') {
         this.form.powerFactor = resultStr
-      }
-      else if (this.tempformulasign == 'form.voltage') {
+      } else if (this.tempformulasign == 'form.voltage') {
         this.form.voltage = resultStr
-      }
-      else if (this.tempformulasign == 'form.electricalCurrent') {
+      } else if (this.tempformulasign == 'form.electricalCurrent') {
         this.form.electricalCurrent = resultStr
-      }
-      else if (this.tempformulasign == 'form.dayElectricQuantity') {
+      } else if (this.tempformulasign == 'form.dayElectricQuantity') {
         this.form.dayElectricQuantity = resultStr
-      }
-      else if (this.tempformulasign == 'form.cumulativeGeneratedEnergy') {
+      } else if (this.tempformulasign == 'form.cumulativeGeneratedEnergy') {
         this.form.cumulativeGeneratedEnergy = resultStr
-      }
-      else if (this.tempformulasign == 'form.dayGridConnectedHours') {
+      } else if (this.tempformulasign == 'form.dayGridConnectedHours') {
         this.form.dayGridConnectedHours = resultStr
+      } else if (this.tempformulasign == 'form.isSample') {
+        this.form.isSample = resultStr
       }
       this.timer = new Date().getTime()
       this.clearformula()
     },
     /*保存*/
     handleSave(formName) {
-      if (!this.form.fileName || !this.form.time || !this.form.equipmentName || !this.form.dataType || this.form.stationCode=="") {
+      if (!this.form.time || !this.form.equipmentName || !this.form.dataType
+        // !this.form.fileName || || this.form.stationCode == ""
+        ) {
         this.$message.warning('填写必填项');
         return false;
       } else {
-        const data = this.form.stationCode
-        let data1 = "";
-        for (let n = 0; n < data.length; n++) {
-          for (let j = 0; j < this.stationCodeList.length; j++) {
-            if (data[n] == this.stationCodeList[j]["stationCode"]) {
-              data1 = data1 + this.stationCodeList[j]["stationCode"] + ","
-            }
-          }
-        }
-        data1 = data1.substr(0, data1.length - 1)
-        this.form.stationCode = data1
+        // const data = this.form.stationCode
+        // let data1 = "";
+        // for (let n = 0; n < data.length; n++) {
+        //   for (let j = 0; j < this.stationCodeList.length; j++) {
+        //     if (data[n] == this.stationCodeList[j]["stationCode"]) {
+        //       data1 = data1 + this.stationCodeList[j]["stationCode"] + ","
+        //     }
+        //   }
+        // }
+        // data1 = data1.substr(0, data1.length - 1)
+        // this.form.stationCode = data1
         if (this.saveFlag === 1) {
-          this.$axios.post("/parsingNbq",this.form).then(response => {
+          this.$axios.post("/parsingNbq", this.form).then(response => {
             this.dialogVisible = false
             this.getTableList()
             this.tableLoading = false
-            this.$message.success(response.data.data)
+            this.$message.success(response.data)
           }).catch(() => {
             this.tableLoading = false
           })
@@ -539,7 +543,7 @@ export default {
             this.dialogVisible = false
             this.getTableList()
             this.tableLoading = false
-            this.$message.success(response.data.data)
+            this.$message.success(response.data)
           }).catch(() => {
             this.tableLoading = false
           })
@@ -551,17 +555,33 @@ export default {
     handleAdd() {
       this.saveFlag = 1
       this.info = ''
-      this.form = {}
+      this.form = {
+        // fileName: '',
+        time: '',
+        dataType: 's',
+        // stationCode: '',
+        status: '',
+        activePower: '',
+        reactivePower: '',
+        powerFactor: '',
+        voltage: '',
+        electricalCurrent: '',
+        dayElectricQuantity: '',
+        cumulativeGeneratedEnergy: '',
+        dayGridConnectedHours: '',
+        equipmentName: '',
+        isSample: ''
+      }
       this.clearformula()
       this.visible = true
     },
     /*上报对象编辑*/
     handleEdit(row) {
       this.saveFlag = 2
-      let newRow = Object.assign({},row)
-      let tempStationCode = newRow.stationCode.split(',')
+      let newRow = Object.assign({}, row)
+      // let tempStationCode = newRow.stationCode.split(',')
       this.form = newRow
-      this.form.stationCode = tempStationCode
+      // this.form.stationCode = tempStationCode
       this.clearformula()
       this.visible = true
     },
@@ -572,9 +592,9 @@ export default {
         cancelButtonText: '取消',
         type: 'warning'
       }).then(() => {
-        this.$axios.delete("/parsingNbq/"+row.id).then(response => {
+        this.$axios.delete("/parsingNbq/" + row.id).then(response => {
           this.getTableList()
-          this.$message.success(response.data.data)
+          this.$message.success(response.data)
         })
       })
     },

+ 150 - 161
cpp-ui/src/views/configManager/parsingConf/nwpparsing.vue

@@ -47,10 +47,11 @@
           </table>
         </template>
       </el-table-column>
-      <el-table-column prop="fileName" align="center" label="文件名关键字" width="200px"></el-table-column>
-      <el-table-column prop="dataType" align="center" label="数据类型" width="100px" :formatter="formatDataType"></el-table-column>
-      <el-table-column prop="preTime" align="center" label="预测时间公式"  width="300px"></el-table-column>
-      <el-table-column prop="stationCode" align="center" label="场站编号"></el-table-column>
+<!--      <el-table-column prop="fileName" align="center" label="文件名关键字" width="200px"></el-table-column>-->
+      <el-table-column prop="dataType" align="center" label="数据类型" width="100px"
+                       :formatter="formatDataType"></el-table-column>
+      <el-table-column prop="preTime" align="center" label="预测时间公式"></el-table-column>
+<!--      <el-table-column prop="stationCode" align="center" label="场站编号"></el-table-column>-->
       <el-table-column label="操作" align="center" width="150px">
         <template slot-scope="scope">
           <el-button type="text" icon="el-icon-edit" @click="handleEdit(scope.row)">编辑</el-button>
@@ -85,14 +86,14 @@
           <div class="grid-content bg-purple">
             <el-form v-model="form" ref="form" :key="timer">
               <el-row :gutter="16">
-                <el-col :span="8">
-                  <el-form-item prop="fileName" label-width="110px">
-                    <span slot="label">
-                      <font color="red">*</font>文件名关键字
-                    </span>
-                    <el-input v-model="form.fileName" @focus="clearformula"></el-input>
-                  </el-form-item>
-                </el-col>
+<!--                <el-col :span="8">-->
+<!--                  <el-form-item prop="fileName" label-width="110px">-->
+<!--                    <span slot="label">-->
+<!--                      <font color="red">*</font>文件名关键字-->
+<!--                    </span>-->
+<!--                    <el-input v-model="form.fileName" @focus="clearformula"></el-input>-->
+<!--                  </el-form-item>-->
+<!--                </el-col>-->
                 <el-col :span="8">
                   <el-form-item prop="dataType" label-width="110px">
                     <span slot="label">
@@ -117,22 +118,22 @@
                   </el-form-item>
                 </el-col>
               </el-row>
-              <el-row>
-                <el-col :span="24">
-                  <el-form-item prop="stationCode" label-width="110px">
-                    <span slot="label">
-                      <font color="red">*</font>场站编号
-                    </span>
-                    <el-select v-model="form.stationCode" multiple clearable @focus="clearformula" style="width: 100%">
-                      <el-option
-                        v-for="item in this.stationCodeList"
-                        :key="item.stationCode"
-                        :label="item.stationCode"
-                        :value="item.stationCode"/>
-                    </el-select>
-                  </el-form-item>
-                </el-col>
-              </el-row>
+<!--              <el-row>-->
+<!--                <el-col :span="24">-->
+<!--                  <el-form-item prop="stationCode" label-width="110px">-->
+<!--                    <span slot="label">-->
+<!--                      <font color="red">*</font>场站编号-->
+<!--                    </span>-->
+<!--                    <el-select v-model="form.stationCode" multiple clearable @focus="clearformula" style="width: 100%">-->
+<!--                      <el-option-->
+<!--                        v-for="item in this.stationCodeList"-->
+<!--                        :key="item.stationCode"-->
+<!--                        :label="item.stationCode"-->
+<!--                        :value="item.stationCode"/>-->
+<!--                    </el-select>-->
+<!--                  </el-form-item>-->
+<!--                </el-col>-->
+<!--              </el-row>-->
               <el-row :gutter="16">
                 <el-col :span="8">
                   <el-form-item prop="t" label-width="110px" class="formulaColor">
@@ -434,7 +435,7 @@ export default {
   name: "index",
   data() {
     return {
-      stationCodeList: [],
+      // stationCodeList: [],
       dataType: [
         {value: 's', label: '时间单行'},
         {value: 'm', label: '时间多行'}
@@ -461,8 +462,8 @@ export default {
       form: {
         fileName: '',
         preTime: '',
-        dataType: '',
-        stationCode: '',
+        dataType: 'm',
+        // stationCode: '',
         t: '',
         rh: '',
         pressure: '',
@@ -498,7 +499,7 @@ export default {
     };
   },
   mounted() {
-    this.getElectricFieldList()
+    // this.getElectricFieldList()
     this.getTableList()
   },
   methods: {
@@ -513,99 +514,80 @@ export default {
     },
     getTableList() {
       this.tableLoading = true
+      const page = this.page
+
       // 获取列表
-      this.$axios.get("/parsingNwp/page",Object.assign({
-        current: this.page.currentPage,
-        size: this.page.pageSize
-      })).then(response => {
-        this.tableData = response.data.data.records
-        this.page.total = response.data.data.total
-        this.tableLoading = false
-      }).catch((e) => {
-        this.tableLoading = false
-      })
-    },
-    getElectricFieldList() {
-      // 获取所有场站
-      this.$axios("/parsingInfo/getElectricField").then(response => {
-        this.stationCodeList = response.data.data
+      this.$axios.get("/parsingNwp/page", {
+        params: {
+          currentPage: page.currentPage,
+          pageSize: page.pageSize
+        }
+      }).then(response => {
+        this.tableData = response.data.records
+        this.page.total = response.data.total
         this.tableLoading = false
       }).catch((e) => {
         this.tableLoading = false
       })
     },
+    // getElectricFieldList() {
+    //   // 获取所有场站
+    //   this.$axios("/parsingInfo/getElectricField").then(response => {
+    //     this.stationCodeList = response.data
+    //     this.tableLoading = false
+    //   }).catch((e) => {
+    //     this.tableLoading = false
+    //   })
+    // },
     destoryformula() {
       // 清空公式区字段
       if (this.tempformulasign == 'form.preTime') {
         this.form.preTime = ''
-      }
-      else if (this.tempformulasign == 'form.t') {
+      } else if (this.tempformulasign == 'form.t') {
         this.form.t = ''
-      }
-      else if (this.tempformulasign == 'form.rh') {
+      } else if (this.tempformulasign == 'form.rh') {
         this.form.rh = ''
-      }
-      else if (this.tempformulasign == 'form.pressure') {
+      } else if (this.tempformulasign == 'form.pressure') {
         this.form.pressure = ''
-      }
-      else if (this.tempformulasign == 'form.lwr') {
+      } else if (this.tempformulasign == 'form.lwr') {
         this.form.lwr = ''
-      }
-      else if (this.tempformulasign == 'form.swr') {
+      } else if (this.tempformulasign == 'form.swr') {
         this.form.swr = ''
-      }
-      else if (this.tempformulasign == 'form.directRadiation') {
+      } else if (this.tempformulasign == 'form.directRadiation') {
         this.form.directRadiation = ''
-      }
-      else if (this.tempformulasign == 'form.diffuseRadiation') {
+      } else if (this.tempformulasign == 'form.diffuseRadiation') {
         this.form.diffuseRadiation = ''
-      }
-      else if (this.tempformulasign == 'form.ws10') {
+      } else if (this.tempformulasign == 'form.ws10') {
         this.form.ws10 = ''
-      }
-      else if (this.tempformulasign == 'form.wd10') {
+      } else if (this.tempformulasign == 'form.wd10') {
         this.form.wd10 = ''
-      }
-      else if (this.tempformulasign == 'form.ws30') {
+      } else if (this.tempformulasign == 'form.ws30') {
         this.form.ws30 = ''
-      }
-      else if (this.tempformulasign == 'form.wd30') {
+      } else if (this.tempformulasign == 'form.wd30') {
         this.form.wd30 = ''
-      }
-      else if (this.tempformulasign == 'form.ws50') {
+      } else if (this.tempformulasign == 'form.ws50') {
         this.form.ws50 = ''
-      }
-      else if (this.tempformulasign == 'form.wd50') {
+      } else if (this.tempformulasign == 'form.wd50') {
         this.form.wd50 = ''
-      }
-      else if (this.tempformulasign == 'form.ws70') {
+      } else if (this.tempformulasign == 'form.ws70') {
         this.form.ws70 = ''
-      }
-      else if (this.tempformulasign == 'form.wd70') {
+      } else if (this.tempformulasign == 'form.wd70') {
         this.form.wd70 = ''
-      }
-      else if (this.tempformulasign == 'form.ws80') {
+      } else if (this.tempformulasign == 'form.ws80') {
         this.form.ws80 = ''
-      }
-      else if (this.tempformulasign == 'form.wd80') {
+      } else if (this.tempformulasign == 'form.wd80') {
         this.form.wd80 = ''
-      }
-      else if (this.tempformulasign == 'form.ws90') {
+      } else if (this.tempformulasign == 'form.ws90') {
         this.form.ws90 = ''
-      }
-      else if (this.tempformulasign == 'form.wd90') {
+      } else if (this.tempformulasign == 'form.wd90') {
         this.form.wd90 = ''
-      }
-      else if (this.tempformulasign == 'form.ws100') {
+      } else if (this.tempformulasign == 'form.ws100') {
         this.form.ws100 = ''
-      }
-      else if (this.tempformulasign == 'form.wd100') {
+      } else if (this.tempformulasign == 'form.wd100') {
         this.form.wd100 = ''
-      }
-      else if (this.tempformulasign == 'form.ws170') {
+      } else if (this.tempformulasign == 'form.ws170') {
         this.form.ws170 = ''
-      }
-      else if (this.tempformulasign == 'form.wd170') {
+      } else if (this.tempformulasign == 'form.wd170') {
         this.form.wd170 = ''
       }
       this.clearformula()
@@ -641,7 +623,7 @@ export default {
       this.editinfo = editname
     },
     genformula() {
-      if (this.tempformulasign==''){
+      if (this.tempformulasign == '') {
         this.$message.warning('请先选定左侧公式项')
         return
       }
@@ -670,74 +652,51 @@ export default {
       // 将生成的公式赋值到左侧表格中
       if (this.tempformulasign == 'form.preTime') {
         this.form.preTime = resultStr
-      }
-      else if (this.tempformulasign == 'form.t') {
+      } else if (this.tempformulasign == 'form.t') {
         this.form.t = resultStr
-      }
-      else if (this.tempformulasign == 'form.rh') {
+      } else if (this.tempformulasign == 'form.rh') {
         this.form.rh = resultStr
-      }
-      else if (this.tempformulasign == 'form.pressure') {
+      } else if (this.tempformulasign == 'form.pressure') {
         this.form.pressure = resultStr
-      }
-      else if (this.tempformulasign == 'form.lwr') {
+      } else if (this.tempformulasign == 'form.lwr') {
         this.form.lwr = resultStr
-      }
-      else if (this.tempformulasign == 'form.swr') {
+      } else if (this.tempformulasign == 'form.swr') {
         this.form.swr = resultStr
-      }
-      else if (this.tempformulasign == 'form.directRadiation') {
+      } else if (this.tempformulasign == 'form.directRadiation') {
         this.form.directRadiation = resultStr
-      }
-      else if (this.tempformulasign == 'form.diffuseRadiation') {
+      } else if (this.tempformulasign == 'form.diffuseRadiation') {
         this.form.diffuseRadiation = resultStr
-      }
-      else if (this.tempformulasign == 'form.ws10') {
+      } else if (this.tempformulasign == 'form.ws10') {
         this.form.ws10 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wd10') {
+      } else if (this.tempformulasign == 'form.wd10') {
         this.form.wd10 = resultStr
-      }
-      else if (this.tempformulasign == 'form.ws30') {
+      } else if (this.tempformulasign == 'form.ws30') {
         this.form.ws30 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wd30') {
+      } else if (this.tempformulasign == 'form.wd30') {
         this.form.wd30 = resultStr
-      }
-      else if (this.tempformulasign == 'form.ws50') {
+      } else if (this.tempformulasign == 'form.ws50') {
         this.form.ws50 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wd50') {
+      } else if (this.tempformulasign == 'form.wd50') {
         this.form.wd50 = resultStr
-      }
-      else if (this.tempformulasign == 'form.ws70') {
+      } else if (this.tempformulasign == 'form.ws70') {
         this.form.ws70 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wd70') {
+      } else if (this.tempformulasign == 'form.wd70') {
         this.form.wd70 = resultStr
-      }
-      else if (this.tempformulasign == 'form.ws80') {
+      } else if (this.tempformulasign == 'form.ws80') {
         this.form.ws80 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wd80') {
+      } else if (this.tempformulasign == 'form.wd80') {
         this.form.wd80 = resultStr
-      }
-      else if (this.tempformulasign == 'form.ws90') {
+      } else if (this.tempformulasign == 'form.ws90') {
         this.form.ws90 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wd90') {
+      } else if (this.tempformulasign == 'form.wd90') {
         this.form.wd90 = resultStr
-      }
-      else if (this.tempformulasign == 'form.ws100') {
+      } else if (this.tempformulasign == 'form.ws100') {
         this.form.ws100 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wd100') {
+      } else if (this.tempformulasign == 'form.wd100') {
         this.form.wd100 = resultStr
-      }
-      else if (this.tempformulasign == 'form.ws170') {
+      } else if (this.tempformulasign == 'form.ws170') {
         this.form.ws170 = resultStr
-      }
-      else if (this.tempformulasign == 'form.wd170') {
+      } else if (this.tempformulasign == 'form.wd170') {
         this.form.wd170 = resultStr
       }
       this.timer = new Date().getTime()
@@ -745,27 +704,29 @@ export default {
     },
     /*保存*/
     handleSave(formName) {
-      if (!this.form.fileName || !this.form.preTime || !this.form.dataType || this.form.stationCode=="") {
+      if (!this.form.preTime || !this.form.dataType
+        // !this.form.fileName || || this.form.stationCode == ""
+      ) {
         this.$message.warning('填写必填项');
         return false;
       } else {
-        const data = this.form.stationCode
-        let data1 = "";
-        for (let n = 0; n < data.length; n++) {
-          for (let j = 0; j < this.stationCodeList.length; j++) {
-            if (data[n] == this.stationCodeList[j]["stationCode"]) {
-              data1 = data1 + this.stationCodeList[j]["stationCode"] + ","
-            }
-          }
-        }
-        data1 = data1.substr(0, data1.length - 1)
-        this.form.stationCode = data1
+        // const data = this.form.stationCode
+        // let data1 = "";
+        // for (let n = 0; n < data.length; n++) {
+        //   for (let j = 0; j < this.stationCodeList.length; j++) {
+        //     if (data[n] == this.stationCodeList[j]["stationCode"]) {
+        //       data1 = data1 + this.stationCodeList[j]["stationCode"] + ","
+        //     }
+        //   }
+        // }
+        // data1 = data1.substr(0, data1.length - 1)
+        // this.form.stationCode = data1
         if (this.saveFlag === 1) {
-          this.$axios.post("/parsingNwp",this.form).then(response => {
+          this.$axios.post("/parsingNwp", this.form).then(response => {
             this.dialogVisible = false
             this.getTableList()
             this.tableLoading = false
-            this.$message.success(response.data.data)
+            this.$message.success(response.data)
           }).catch(() => {
             this.tableLoading = false
           })
@@ -774,7 +735,7 @@ export default {
             this.dialogVisible = false
             this.getTableList()
             this.tableLoading = false
-            this.$message.success(response.data.data)
+            this.$message.success(response.data)
           }).catch(() => {
             this.tableLoading = false
           })
@@ -786,17 +747,45 @@ export default {
     handleAdd() {
       this.saveFlag = 1
       this.info = ''
-      this.form = {}
+      this.form = {
+        fileName: '',
+        preTime: '',
+        dataType: 'm',
+        // stationCode: '',
+        t: '',
+        rh: '',
+        pressure: '',
+        lwr: '',
+        swr: '',
+        directRadiation: '',
+        diffuseRadiation: '',
+        ws10: '',
+        wd10: '',
+        ws30: '',
+        wd30: '',
+        ws50: '',
+        wd50: '',
+        ws70: '',
+        wd70: '',
+        ws80: '',
+        wd80: '',
+        ws90: '',
+        wd90: '',
+        ws100: '',
+        wd100: '',
+        ws170: '',
+        wd170: ''
+      }
       this.clearformula()
       this.visible = true
     },
     /*上报对象编辑*/
     handleEdit(row) {
       this.saveFlag = 2
-      let newRow = Object.assign({},row)
-      let tempStationCode = newRow.stationCode.split(',')
+      let newRow = Object.assign({}, row)
+      // let tempStationCode = newRow.stationCode.split(',')
       this.form = newRow
-      this.form.stationCode = tempStationCode
+      // this.form.stationCode = tempStationCode
       this.clearformula()
       this.visible = true
     },
@@ -807,9 +796,9 @@ export default {
         cancelButtonText: '取消',
         type: 'warning'
       }).then(() => {
-        this.$axios.delete("/parsingNwp/"+row.id).then(response => {
+        this.$axios.delete("/parsingNwp/" + row.id).then(response => {
           this.getTableList()
-          this.$message.success(response.data.data)
+          this.$message.success(response.data)
         })
       })
     },

+ 108 - 105
cpp-ui/src/views/configManager/parsingConf/qxzparsing.vue

@@ -28,10 +28,11 @@
           </table>
         </template>
       </el-table-column>
-      <el-table-column prop="fileName" align="center" label="文件名关键字" width="200px"></el-table-column>
-      <el-table-column prop="dataType" align="center" label="数据类型" width="100px" :formatter="formatDataType"></el-table-column>
-      <el-table-column prop="time" align="center" label="预测时间公式"  width="300px"></el-table-column>
-      <el-table-column prop="stationCode" align="center" label="场站编号"></el-table-column>
+<!--      <el-table-column prop="fileName" align="center" label="文件名关键字" width="200px"></el-table-column>-->
+      <el-table-column prop="dataType" align="center" label="数据类型" width="100px"
+                       :formatter="formatDataType"></el-table-column>
+      <el-table-column prop="time" align="center" label="时间公式"></el-table-column>
+<!--      <el-table-column prop="stationCode" align="center" label="场站编号"></el-table-column>-->
       <el-table-column label="操作" align="center" width="150px">
         <template slot-scope="scope">
           <el-button type="text" icon="el-icon-edit" @click="handleEdit(scope.row)">编辑</el-button>
@@ -64,14 +65,14 @@
           <div class="grid-content bg-purple">
             <el-form v-model="form" ref="form" :key="timer">
               <el-row :gutter="16">
-                <el-col :span="8">
-                  <el-form-item prop="fileName" label-width="115px">
-                    <span slot="label">
-                      <font color="red">*</font>文件名关键字
-                    </span>
-                    <el-input v-model="form.fileName" @focus="clearformula"></el-input>
-                  </el-form-item>
-                </el-col>
+<!--                <el-col :span="8">-->
+<!--                  <el-form-item prop="fileName" label-width="115px">-->
+<!--                    <span slot="label">-->
+<!--                      <font color="red">*</font>文件名关键字-->
+<!--                    </span>-->
+<!--                    <el-input v-model="form.fileName" @focus="clearformula"></el-input>-->
+<!--                  </el-form-item>-->
+<!--                </el-col>-->
                 <el-col :span="8">
                   <el-form-item prop="dataType" label-width="115px">
                     <span slot="label">
@@ -87,22 +88,22 @@
                   </el-form-item>
                 </el-col>
               </el-row>
-              <el-row>
-                <el-col :span="24">
-                  <el-form-item prop="stationCode" label-width="115px">
-                    <span slot="label">
-                      <font color="red">*</font>场站编号
-                    </span>
-                    <el-select v-model="form.stationCode" multiple clearable @focus="clearformula" style="width: 100%">
-                      <el-option
-                        v-for="item in this.stationCodeList"
-                        :key="item.stationCode"
-                        :label="item.stationCode"
-                        :value="item.stationCode"/>
-                    </el-select>
-                  </el-form-item>
-                </el-col>
-              </el-row>
+<!--              <el-row>-->
+<!--                <el-col :span="24">-->
+<!--                  <el-form-item prop="stationCode" label-width="115px">-->
+<!--                    <span slot="label">-->
+<!--                      <font color="red">*</font>场站编号-->
+<!--                    </span>-->
+<!--                    <el-select v-model="form.stationCode" multiple clearable @focus="clearformula" style="width: 100%">-->
+<!--                      <el-option-->
+<!--                        v-for="item in this.stationCodeList"-->
+<!--                        :key="item.stationCode"-->
+<!--                        :label="item.stationCode"-->
+<!--                        :value="item.stationCode"/>-->
+<!--                    </el-select>-->
+<!--                  </el-form-item>-->
+<!--                </el-col>-->
+<!--              </el-row>-->
               <el-row :gutter="16">
                 <el-col :span="8">
                   <el-form-item prop="time" label-width="115px" class="formulaColor">
@@ -278,7 +279,7 @@ export default {
   name: "index",
   data() {
     return {
-      stationCodeList: [],
+      // stationCodeList: [],
       dataType: [
         {value: 's', label: '时间单行'},
         {value: 'm', label: '时间多行'}
@@ -305,8 +306,8 @@ export default {
       form: {
         fileName: '',
         time: '',
-        dataType: '',
-        stationCode: '',
+        dataType: 's',
+        // stationCode: '',
         globalR: '',
         directR: '',
         diffuseR: '',
@@ -328,7 +329,7 @@ export default {
     };
   },
   mounted() {
-    this.getElectricFieldList()
+    // this.getElectricFieldList()
     this.getTableList()
   },
   methods: {
@@ -343,57 +344,52 @@ export default {
     },
     getTableList() {
       this.tableLoading = true
+      const page = this.page
+
       // 获取列表
-      this.$axios.get("/parsingQxz/page",Object.assign({
-        current: this.page.currentPage,
-        size: this.page.pageSize
-      })).then(response => {
-        this.tableData = response.data.data.records
-        this.page.total = response.data.data.total
-        this.tableLoading = false
-      }).catch((e) => {
-        this.tableLoading = false
-      })
-    },
-    getElectricFieldList() {
-      // 获取所有场站
-      this.$axios("/parsingInfo/getElectricField").then(response => {
-        this.stationCodeList = response.data.data
+      this.$axios.get("/parsingQxz/page", {
+        params: {
+          currentPage: page.currentPage,
+          pageSize: page.pageSize
+        }
+      }).then(response => {
+        this.tableData = response.data.records
+        this.page.total = response.data.total
         this.tableLoading = false
       }).catch((e) => {
         this.tableLoading = false
       })
     },
+    // getElectricFieldList() {
+    //   // 获取所有场站
+    //   this.$axios("/parsingInfo/getElectricField").then(response => {
+    //     this.stationCodeList = response.data
+    //     this.tableLoading = false
+    //   }).catch((e) => {
+    //     this.tableLoading = false
+    //   })
+    // },
     destoryformula() {
       // 清空公式区字段
       if (this.tempformulasign == 'form.time') {
         this.form.time = ''
-      }
-      else if (this.tempformulasign == 'form.globalR') {
+      } else if (this.tempformulasign == 'form.globalR') {
         this.form.globalR = ''
-      }
-      else if (this.tempformulasign == 'form.directR') {
+      } else if (this.tempformulasign == 'form.directR') {
         this.form.directR = ''
-      }
-      else if (this.tempformulasign == 'form.diffuseR') {
+      } else if (this.tempformulasign == 'form.diffuseR') {
         this.form.diffuseR = ''
-      }
-      else if (this.tempformulasign == 'form.airT') {
+      } else if (this.tempformulasign == 'form.airT') {
         this.form.airT = ''
-      }
-      else if (this.tempformulasign == 'form.cellT') {
+      } else if (this.tempformulasign == 'form.cellT') {
         this.form.cellT = ''
-      }
-      else if (this.tempformulasign == 'form.ws') {
+      } else if (this.tempformulasign == 'form.ws') {
         this.form.ws = ''
-      }
-      else if (this.tempformulasign == 'form.wd') {
+      } else if (this.tempformulasign == 'form.wd') {
         this.form.wd = ''
-      }
-      else if (this.tempformulasign == 'form.p') {
+      } else if (this.tempformulasign == 'form.p') {
         this.form.p = ''
-      }
-      else if (this.tempformulasign == 'form.rh') {
+      } else if (this.tempformulasign == 'form.rh') {
         this.form.rh = ''
       }
       this.clearformula()
@@ -429,7 +425,7 @@ export default {
       this.editinfo = editname
     },
     genformula() {
-      if (this.tempformulasign==''){
+      if (this.tempformulasign == '') {
         this.$message.warning('请先选定左侧公式项')
         return
       }
@@ -458,32 +454,23 @@ export default {
       // 将生成的公式赋值到左侧表格中
       if (this.tempformulasign == 'form.time') {
         this.form.time = resultStr
-      }
-      else if (this.tempformulasign == 'form.globalR') {
+      } else if (this.tempformulasign == 'form.globalR') {
         this.form.globalR = resultStr
-      }
-      else if (this.tempformulasign == 'form.directR') {
+      } else if (this.tempformulasign == 'form.directR') {
         this.form.directR = resultStr
-      }
-      else if (this.tempformulasign == 'form.diffuseR') {
+      } else if (this.tempformulasign == 'form.diffuseR') {
         this.form.diffuseR = resultStr
-      }
-      else if (this.tempformulasign == 'form.airT') {
+      } else if (this.tempformulasign == 'form.airT') {
         this.form.airT = resultStr
-      }
-      else if (this.tempformulasign == 'form.cellT') {
+      } else if (this.tempformulasign == 'form.cellT') {
         this.form.cellT = resultStr
-      }
-      else if (this.tempformulasign == 'form.ws') {
+      } else if (this.tempformulasign == 'form.ws') {
         this.form.ws = resultStr
-      }
-      else if (this.tempformulasign == 'form.wd') {
+      } else if (this.tempformulasign == 'form.wd') {
         this.form.wd = resultStr
-      }
-      else if (this.tempformulasign == 'form.p') {
+      } else if (this.tempformulasign == 'form.p') {
         this.form.p = resultStr
-      }
-      else if (this.tempformulasign == 'form.rh') {
+      } else if (this.tempformulasign == 'form.rh') {
         this.form.rh = resultStr
       }
       this.timer = new Date().getTime()
@@ -491,27 +478,29 @@ export default {
     },
     /*保存*/
     handleSave(formName) {
-      if (!this.form.fileName || !this.form.time || !this.form.dataType || !this.form.globalR ||!this.form.directR ||!this.form.diffuseR ||!this.form.airT ||!this.form.cellT ||!this.form.ws ||!this.form.wd ||!this.form.p||!this.form.rh||this.form.stationCode=="") {
+      if (!this.form.time || !this.form.dataType || !this.form.globalR || !this.form.directR || !this.form.diffuseR || !this.form.airT || !this.form.cellT || !this.form.ws || !this.form.wd || !this.form.p || !this.form.rh
+        //!this.form.fileName ||  || this.form.stationCode == ""
+      ) {
         this.$message.warning('填写必填项');
         return false;
       } else {
-        const data = this.form.stationCode
-        let data1 = "";
-        for (let n = 0; n < data.length; n++) {
-          for (let j = 0; j < this.stationCodeList.length; j++) {
-            if (data[n] == this.stationCodeList[j]["stationCode"]) {
-              data1 = data1 + this.stationCodeList[j]["stationCode"] + ","
-            }
-          }
-        }
-        data1 = data1.substr(0, data1.length - 1)
-        this.form.stationCode = data1
+        // const data = this.form.stationCode
+        // let data1 = "";
+        // for (let n = 0; n < data.length; n++) {
+        //   for (let j = 0; j < this.stationCodeList.length; j++) {
+        //     if (data[n] == this.stationCodeList[j]["stationCode"]) {
+        //       data1 = data1 + this.stationCodeList[j]["stationCode"] + ","
+        //     }
+        //   }
+        // }
+        // data1 = data1.substr(0, data1.length - 1)
+        // this.form.stationCode = data1
         if (this.saveFlag === 1) {
-          this.$axios.post("/parsingQxz",this.form).then(response => {
+          this.$axios.post("/parsingQxz", this.form).then(response => {
             this.dialogVisible = false
             this.getTableList()
             this.tableLoading = false
-            this.$message.success(response.data.data)
+            this.$message.success(response.data)
           }).catch(() => {
             this.tableLoading = false
           })
@@ -520,7 +509,7 @@ export default {
             this.dialogVisible = false
             this.getTableList()
             this.tableLoading = false
-            this.$message.success(response.data.data)
+            this.$message.success(response.data)
           }).catch(() => {
             this.tableLoading = false
           })
@@ -532,17 +521,31 @@ export default {
     handleAdd() {
       this.saveFlag = 1
       this.info = ''
-      this.form = {}
+      this.form =  {
+        fileName: '',
+        time: '',
+        dataType: 's',
+        // stationCode: '',
+        globalR: '',
+        directR: '',
+        diffuseR: '',
+        airT: '',
+        cellT: '',
+        ws: '',
+        wd: '',
+        p: '',
+        rh: ''
+      }
       this.clearformula()
       this.visible = true
     },
     /*上报对象编辑*/
     handleEdit(row) {
       this.saveFlag = 2
-      let newRow = Object.assign({},row)
-      let tempStationCode = newRow.stationCode.split(',')
+      let newRow = Object.assign({}, row)
+      // let tempStationCode = newRow.stationCode.split(',')
       this.form = newRow
-      this.form.stationCode = tempStationCode
+      // this.form.stationCode = tempStationCode
       this.clearformula()
       this.visible = true
     },
@@ -553,9 +556,9 @@ export default {
         cancelButtonText: '取消',
         type: 'warning'
       }).then(() => {
-        this.$axios.delete("/parsingQxz/"+row.id).then(response => {
+        this.$axios.delete("/parsingQxz/" + row.id).then(response => {
           this.getTableList()
-          this.$message.success(response.data.data)
+          this.$message.success(response.data)
         })
       })
     },

+ 180 - 62
cpp-ui/src/views/configManager/parsingConf/rpparsing.vue

@@ -6,11 +6,17 @@
       :data="tableData"
       :header-cell-style="{background:'#ECF1FE',}"
       v-loading="tableLoading" border style="width: 100%">
-      <el-table-column prop="fileName" align="center" label="文件名关键字" width="200px"></el-table-column>
-      <el-table-column prop="time" align="center" label="时间公式"  width="300px"></el-table-column>
-      <el-table-column prop="realValue" align="center" label="实际功率公式"  width="300px"></el-table-column>
+<!--      <el-table-column prop="fileName" align="center" label="文件名关键字" width="200px"></el-table-column>-->
       <el-table-column prop="dataType" align="center" label="数据类型" width="100px" :formatter="formatDataType"></el-table-column>
-      <el-table-column prop="stationCode" align="center" label="场站编号"></el-table-column>
+      <el-table-column prop="time" align="center" label="时间公式"></el-table-column>
+      <el-table-column prop="realValue" align="center" label="实际功率公式"></el-table-column>
+      <el-table-column prop="ableValue" align="center" label="可用功率公式"></el-table-column>
+      <el-table-column prop="theoryValue" align="center" label="理论功率公式"></el-table-column>
+      <el-table-column prop="openCapacity" align="center" label="开机容量公式"></el-table-column>
+      <el-table-column prop="capacity" align="center" label="装机容量公式"></el-table-column>
+      <el-table-column prop="blockedCapacity" align="center" label="站内受阻容量(故障/检修)公式"></el-table-column>
+      <el-table-column prop="powerRationing" align="center" label="限电标记公式"></el-table-column>
+<!--      <el-table-column prop="stationCode" align="center" label="场站编号"></el-table-column>-->
       <el-table-column label="操作" align="center" width="150px">
         <template slot-scope="scope">
           <el-button type="text" icon="el-icon-edit" @click="handleEdit(scope.row)">编辑</el-button>
@@ -43,14 +49,18 @@
           <div class="grid-content bg-purple">
             <el-form v-model="form" ref="form" :key="timer">
               <el-row :gutter="16">
-                <el-col :span="12">
-                  <el-form-item prop="fileName" label-width="110px">
-                    <span slot="label">
-                      <font color="red">*</font>文件名关键字
-                    </span>
-                    <el-input v-model="form.fileName" @focus="clearformula"></el-input>
-                  </el-form-item>
-                </el-col>
+<!--                <el-col :span="12">-->
+<!--                  <el-form-item prop="fileName" label-width="110px">-->
+<!--                    <span slot="label">-->
+<!--                      <font color="red">*</font>文件名关键字-->
+<!--                    </span>-->
+
+                、
+
+
+<!--                    <el-input v-model="form.fileName" @focus="clearformula"></el-input>-->
+<!--                  </el-form-item>-->
+<!--                </el-col>-->
                 <el-col :span="12">
                   <el-form-item prop="dataType" label-width="110px">
                     <span slot="label">
@@ -66,6 +76,14 @@
                   </el-form-item>
                 </el-col>
               </el-row>
+              <el-table-column prop="time" align="center" label="时间公式"></el-table-column>
+              <el-table-column prop="realValue" align="center" label="实际功率公式"></el-table-column>
+              <el-table-column prop="ableValue" align="center" label="可用功率公式"></el-table-column>
+              <el-table-column prop="theoryValue" align="center" label="理论功率公式"></el-table-column>
+              <el-table-column prop="openCapacity" align="center" label="开机容量公式"></el-table-column>
+              <el-table-column prop="capacity" align="center" label="装机容量公式"></el-table-column>
+              <el-table-column prop="blockedCapacity" align="center" label="站内受阻容量(故障/检修)公式"></el-table-column>
+              <el-table-column prop="powerRationing" align="center" label="限电标记公式"></el-table-column>
               <el-row :gutter="16">
                 <el-col :span="12">
                   <el-form-item prop="realValue" label-width="110px" class="formulaColor">
@@ -87,22 +105,85 @@
                   </el-form-item>
                 </el-col>
               </el-row>
-              <el-row>
-                <el-col :span="24">
-                  <el-form-item prop="stationCode" label-width="110px">
+              <el-row :gutter="16">
+                <el-col :span="12">
+                  <el-form-item prop="ableValue" label-width="110px" class="formulaColor">
                     <span slot="label">
-                      <font color="red">*</font>场站编号
+                      <font color="red">*</font>可用功率公式
                     </span>
-                    <el-select v-model="form.stationCode" multiple clearable @focus="clearformula" style="width: 100%">
-                      <el-option
-                        v-for="item in this.stationCodeList"
-                        :key="item.stationCode"
-                        :label="item.stationCode"
-                        :value="item.stationCode"/>
-                    </el-select>
+                    <el-input v-model="form.ableValue" readonly
+                              @click.native="ftck(form.ableValue,'form.ableValue','(可用功率数据)')"></el-input>
+                  </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                  <el-form-item prop="theoryValue" label-width="110px"
+                                class="formulaColor">
+                    <span slot="label">
+                      <font color="red">*</font>理论功率公式
+                    </span>
+                    <el-input v-model="form.theoryValue" readonly
+                              @click.native="ftck(form.theoryValue,'form.theoryValue','(理论功率数据)')"></el-input>
+                  </el-form-item>
+                </el-col>
+              </el-row>
+              <el-row :gutter="16">
+                <el-col :span="12">
+                  <el-form-item prop="openCapacity" label-width="110px" class="formulaColor">
+                    <span slot="label">
+                      <font color="red">*</font>开机容量公式
+                    </span>
+                    <el-input v-model="form.openCapacity" readonly
+                              @click.native="ftck(form.openCapacity,'form.openCapacity','(开机容量数据)')"></el-input>
+                  </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                  <el-form-item prop="capacity" label-width="110px"
+                                class="formulaColor">
+                    <span slot="label">
+                      <font color="red">*</font>装机容量公式
+                    </span>
+                    <el-input v-model="form.capacity" readonly
+                              @click.native="ftck(form.capacity,'form.capacity','(装机容量数据)')"></el-input>
                   </el-form-item>
                 </el-col>
               </el-row>
+              <el-row :gutter="16">
+                <el-col :span="12">
+                  <el-form-item prop="blockedCapacity" label-width="110px" class="formulaColor">
+                    <span slot="label">
+                      <font color="red">*</font>站内受阻容量(故障/检修)公式
+                    </span>
+                    <el-input v-model="form.blockedCapacity" readonly
+                              @click.native="ftck(form.blockedCapacity,'form.blockedCapacity','(站内受阻容量(故障/检修)数据)')"></el-input>
+                  </el-form-item>
+                </el-col>
+                <el-col :span="12">
+                  <el-form-item prop="powerRationing" label-width="110px"
+                                class="formulaColor">
+                    <span slot="label">
+                      <font color="red">*</font>限电标记公式
+                    </span>
+                    <el-input v-model="form.powerRationing" readonly
+                              @click.native="ftck(form.powerRationing,'form.powerRationing','(限电标记)')"></el-input>
+                  </el-form-item>
+                </el-col>
+              </el-row>
+<!--              <el-row>-->
+<!--                <el-col :span="24">-->
+<!--                  <el-form-item prop="stationCode" label-width="110px">-->
+<!--                    <span slot="label">-->
+<!--                      <font color="red">*</font>场站编号-->
+<!--                    </span>-->
+<!--                    <el-select v-model="form.stationCode" multiple clearable @focus="clearformula" style="width: 100%">-->
+<!--                      <el-option-->
+<!--                        v-for="item in this.stationCodeList"-->
+<!--                        :key="item.stationCode"-->
+<!--                        :label="item.stationCode"-->
+<!--                        :value="item.stationCode"/>-->
+<!--                    </el-select>-->
+<!--                  </el-form-item>-->
+<!--                </el-col>-->
+<!--              </el-row>-->
             </el-form>
             <div slot="footer" class="dialog-footer">
               <el-button type="primary" @click="handleSave('form')">
@@ -180,7 +261,7 @@ export default {
   name: "index",
   data() {
     return {
-      stationCodeList: [],
+      // stationCodeList: [],
       dataType: [
         {value: 's', label: '时间单行'},
         {value: 'm', label: '时间多行'}
@@ -205,11 +286,17 @@ export default {
       info: '',
       visible: false,
       form: {
-        fileName: '',
         time: '',
         realValue: '',
-        dataType: '',
-        stationCode: ''
+        dataType: 's',
+        powerRationing: '',
+        ableValue: '',
+        theoryValue: '',
+        openCapacity: '',
+        capacity: '',
+        blockedCapacity: '',
+
+        // stationCode: ''
       },
       pfform: {
         rownumber: '',
@@ -222,7 +309,7 @@ export default {
     };
   },
   mounted() {
-    this.getElectricFieldList()
+    // this.getElectricFieldList()
     this.getTableList()
   },
   methods: {
@@ -237,27 +324,31 @@ export default {
     },
     getTableList() {
       this.tableLoading = true
+      const page = this.page
+
       // 获取列表
-      this.$axios.get("/parsingRp/page",Object.assign({
-        current: this.page.currentPage,
-        size: this.page.pageSize
-      })).then(response => {
-        this.tableData = response.data.data.records
-        this.page.total = response.data.data.total
-        this.tableLoading = false
-      }).catch((e) => {
-        this.tableLoading = false
-      })
-    },
-    getElectricFieldList() {
-      // 获取所有场站
-      this.$axios("/parsingInfo/getElectricField").then(response => {
-        this.stationCodeList = response.data.data
+      this.$axios.get("/parsingRp/page",{
+        params: {
+          currentPage: page.currentPage,
+          pageSize: page.pageSize
+        }
+      }).then(response => {
+        this.tableData = response.data.records
+        this.page.total = response.data.total
         this.tableLoading = false
       }).catch((e) => {
         this.tableLoading = false
       })
     },
+    // getElectricFieldList() {
+    //   // 获取所有场站
+    //   this.$axios("/parsingInfo/getElectricField").then(response => {
+    //     this.stationCodeList = response.data
+    //     this.tableLoading = false
+    //   }).catch((e) => {
+    //     this.tableLoading = false
+    //   })
+    // },
     destoryformula() {
       // 清空公式区字段
       if (this.tempformulasign == 'form.time') {
@@ -329,33 +420,48 @@ export default {
         this.form.time = resultStr
       } else if (this.tempformulasign == 'form.realValue') {
         this.form.realValue = resultStr
+      } else if (this.tempformulasign == 'form.powerRationing') {
+        this.form.powerRationing = resultStr
+      } else if (this.tempformulasign == 'form.ableValue') {
+        this.form.ableValue = resultStr
+      } else if (this.tempformulasign == 'form.theoryValue') {
+        this.form.theoryValue = resultStr
+      } else if (this.tempformulasign == 'form.openCapacity') {
+        this.form.openCapacity = resultStr
+      } else if (this.tempformulasign == 'form.capacity') {
+        this.form.capacity = resultStr
+      } else if (this.tempformulasign == 'form.blockedCapacity') {
+        this.form.blockedCapacity = resultStr
       }
-      this.timer = new Date().getTime()
+
+        this.timer = new Date().getTime()
       this.clearformula()
     },
     /*保存*/
     handleSave(formName) {
-      if (!this.form.fileName || !this.form.time || !this.form.realValue || !this.form.dataType || this.form.stationCode=="") {
+      if (!this.form.time || !this.form.realValue || !this.form.dataType
+        //!this.form.fileName ||  || this.form.stationCode==""
+      ) {
         this.$message.warning('填写必填项');
         return false;
       } else {
-        const data = this.form.stationCode
-        let data1 = "";
-        for (let n = 0; n < data.length; n++) {
-          for (let j = 0; j < this.stationCodeList.length; j++) {
-            if (data[n] == this.stationCodeList[j]["stationCode"]) {
-              data1 = data1 + this.stationCodeList[j]["stationCode"] + ","
-            }
-          }
-        }
-        data1 = data1.substr(0, data1.length - 1)
-        this.form.stationCode = data1
+        // const data = this.form.stationCode
+        // let data1 = "";
+        // for (let n = 0; n < data.length; n++) {
+        //   for (let j = 0; j < this.stationCodeList.length; j++) {
+        //     if (data[n] == this.stationCodeList[j]["stationCode"]) {
+        //       data1 = data1 + this.stationCodeList[j]["stationCode"] + ","
+        //     }
+        //   }
+        // }
+        // data1 = data1.substr(0, data1.length - 1)
+        // this.form.stationCode = data1
         if (this.saveFlag === 1) {
           this.$axios.post("/parsingRp",this.form).then(response => {
             this.dialogVisible = false
             this.getTableList()
             this.tableLoading = false
-            this.$message.success(response.data.data)
+            this.$message.success(response.data)
           }).catch(() => {
             this.tableLoading = false
           })
@@ -365,7 +471,7 @@ export default {
             this.dialogVisible = false
             this.getTableList()
             this.tableLoading = false
-            this.$message.success(response.data.data)
+            this.$message.success(response.data)
           }).catch(() => {
             this.tableLoading = false
           })
@@ -377,7 +483,19 @@ export default {
     handleAdd() {
       this.saveFlag = 1
       this.info = ''
-      this.form = {}
+      this.form = {
+        time: '',
+        realValue: '',
+        dataType: 's',
+        powerRationing: '',
+        ableValue: '',
+        theoryValue: '',
+        openCapacity: '',
+        capacity: '',
+        blockedCapacity: '',
+
+        // stationCode: ''
+      },
       this.clearformula()
       this.visible = true
     },
@@ -385,9 +503,9 @@ export default {
     handleEdit(row) {
       this.saveFlag = 2
       let newRow = Object.assign({},row)
-      let tempStationCode = newRow.stationCode.split(',')
+      // let tempStationCode = newRow.stationCode.split(',')
       this.form = newRow
-      this.form.stationCode = tempStationCode
+      // this.form.stationCode = tempStationCode
       this.clearformula()
       this.visible = true
     },
@@ -400,7 +518,7 @@ export default {
       }).then(() => {
         this.$axios.delete("/parsingRp/"+row.id).then(response => {
           this.getTableList()
-          this.$message.success(response.data.data)
+          this.$message.success(response.data)
         })
       })
     },

+ 215 - 0
cpp-ui/src/views/configManager/parsingType/index.vue

@@ -0,0 +1,215 @@
+<template>
+  <div class="execution">
+    <basic-container>
+      <div style="margin-bottom: .5%">
+        <el-button-group style="margin-left: 1%">
+          <el-button type="primary" icon="el-icon-search" :loading="tableLoading" @click="getList()">刷新</el-button>
+          <el-button type="primary" icon="el-icon-circle-plus-outline" @click="handleAdd()" :loading="tableLoading">添加</el-button>
+        </el-button-group>
+      </div>
+
+      <el-table
+        :data="tableData"
+        :header-cell-style="{background:'#ECF1FE'}"
+        border
+        style="width: 100%">
+        <el-table-column align="center" prop="fileType" :formatter="formatFileType" label="解析文件类型"></el-table-column>
+        <el-table-column align="center" prop="fileName" label="文件名识别标识"></el-table-column>
+        <el-table-column align="center" label="操作" width="200">
+          <template slot-scope="scope">
+            <el-button
+              size="mini"
+              type="warning"
+              :loading="tableLoading"
+              @click="handleEdit(scope.$index, scope.row)">编辑
+            </el-button>
+            <el-button
+              size="mini"
+              type="danger"
+              :loading="tableLoading"
+              @click="handleDelete(scope.$index, scope.row)">删除
+            </el-button>
+          </template>
+        </el-table-column>
+      </el-table>
+      <el-pagination
+        @size-change="handleSizeChange"
+        @current-change="handleCurrentChange"
+        :current-page="this.page.currentPage"
+        :page-sizes="[10, 20, 50, 100]"
+        :page-size="this.page.pageSize"
+        layout="->,total, sizes, prev, pager, next, jumper"
+        :total="this.page.total">
+      </el-pagination>
+
+      <el-dialog
+        :title="title"
+        :visible.sync="dialogVisible"
+        :append-to-body="true"
+        :close-on-click-modal="false"
+        width="30%"
+        :before-close="handleClose">
+        <el-form ref="elform" :model="form" :rules="rules" label-width="120px">
+          <el-form-item prop="fileType" label="解析文件类型">
+            <el-select v-model="form.fileType" clearable>
+              <el-option
+                v-for="item in this.fileTypes"
+                :key="item.value"
+                :label="item.label"
+                :value="item.value"/>
+            </el-select>
+          </el-form-item>
+          <el-form-item prop="fileName" label="文件名识别标识">
+            <el-input v-model="form.fileName"></el-input>
+          </el-form-item>
+        </el-form>
+        <div style="text-align: center">
+          <el-button type="primary" @click="handleUpdate">保存</el-button>
+          <el-button @click="handleCancel">取消</el-button>
+        </div>
+      </el-dialog>
+    </basic-container>
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'parsingType',
+  data() {
+    return {
+      fileTypes:[],
+      form: {},
+      tableData: [],
+      page: {
+        total: 0, // 总页数
+        currentPage: 1, // 当前页数
+        pageSize: 20 // 每页显示多少条
+      },
+      tableLoading: false,
+      dialogVisible: false,
+      dialogType: '',//新增还是编辑
+      title:'',//弹框的文本
+      rules: {
+        // stationCode: {required: true, message: '请选择场站', trigger: 'blur'},
+        // url: {required: true, message: '请输入路径', trigger: 'blur'},
+      }
+    }
+  },
+  computed: {
+
+  },
+  created() {
+    this.init()
+  },
+  methods: {
+    init(){
+      this.$axios.get("/parsingInfo/getFileTypes").then(res=>{
+        this.fileTypes = res.data
+      })
+      this.getList()
+    },
+    getList() {
+      var page = this.page
+      this.tableLoading = true
+      this.$axios.get("/parsingType/page",{params:{
+        currentPage: page.currentPage,
+        pageSize: page.pageSize
+      }}).then(response => {
+        this.tableData = response.data.records
+        this.page.total = response.data.total
+        this.tableLoading = false
+      }).catch(() => {
+        this.tableLoading = false
+      })
+    },
+    handleSizeChange(val) {
+      this.page.pageSize = val
+      this.page.currentPage = 1
+      this.getList();
+    },
+    handleCurrentChange(val) {
+      this.page.currentPage = val
+      this.getList();
+    },
+    handleAdd() {
+      this.form = {}
+      this.dialogType = "add"
+      this.title = '新增&保存'
+      this.form.cid = this.channelId
+      this.dialogVisible = true
+    },
+    // 编辑按钮
+    handleEdit(index, row) {
+      this.form = row
+      this.dialogType = "edit"
+      this.title = '编辑&保存'
+      this.dialogVisible = true
+
+    },
+    // 删除按钮
+    handleDelete(index, row) {
+      this.rowDel(row)
+    },
+
+    rowDel: function (row, index) {
+      this.$confirm('是否确认删除ID为' + row.id, '提示', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        type: 'warning'
+      }).then(function () {
+        return this.$axios.delete("/parsingType/"+row.id)
+      }).then(data => {
+        this.$message.success('删除成功')
+        this.getList(this.page)
+      })
+    },
+    handleUpdate: function () {
+      if (this.dialogType === 'add') {
+        // row.cid = this.channelId
+        // row.stationCode = this.stationCode
+        this.$axios.post("/parsingType",this.form).then(data => {
+          this.$message.success('添加成功')
+          this.getList()
+          this.dialogVisible = false
+        }).catch((e) => {
+          console.log('添加失败:' + e)
+        });
+      } else {
+        this.$axios.put("/parsingType", this.form).then(data => {
+          this.$message.success('修改成功')
+          this.getList()
+          this.dialogVisible = false
+        }).catch(() => {
+          console.log('修改失败:' + e)
+        });
+      }
+
+    },
+    // 弹框的关闭前的回调
+    handleClose(done) {
+      this.form = {}
+      this.$nextTick(() => {
+        this.$refs.elform.resetFields();
+      })
+      done()
+    },
+    handleCancel() {
+      this.$nextTick(() => {
+        this.$refs.elform.resetFields();
+      })
+      this.form = {}
+      this.dialogVisible = false
+    },
+    formatFileType(row, column) {
+      let belongTo = '未知'
+      for (let i = 0; i < this.fileTypes.length; i++) {
+        if (row.fileType === this.fileTypes[i].value) {
+          belongTo = this.fileTypes[i].label
+        }
+      }
+      return belongTo
+    },
+
+  }
+}
+</script>