Sfoglia il codice sorgente

新增:1.创建分析接口
2.查询全部分析类型
3.修改分析接口
4.修改分析结构接口

chenhongyan1989 11 mesi fa
parent
commit
e57743e10d
13 ha cambiato i file con 270 aggiunte e 38 eliminazioni
  1. 2 1
      energy-manage-common/src/main/java/com/energy/manage/common/constant/redis/ManagerRedisKeyConstant.java
  2. 34 0
      energy-manage-common/src/main/java/com/energy/manage/common/po/analysis/AnalysisResultPo.java
  3. 26 1
      energy-manage-service/src/main/java/com/energy/manage/service/controller/analysis/AnalysisController.java
  4. 15 0
      energy-manage-service/src/main/java/com/energy/manage/service/domain/dto/analysis/AnalysisResultDto.java
  5. 5 0
      energy-manage-service/src/main/java/com/energy/manage/service/domain/vo/analysis/AnalysisDiagramRelationVo.java
  6. 29 4
      energy-manage-service/src/main/java/com/energy/manage/service/domain/vo/analysis/AnalysisResultVo.java
  7. 1 1
      energy-manage-service/src/main/java/com/energy/manage/service/mappers/analysis/AnalysisDiagramRelationMapper.java
  8. 9 0
      energy-manage-service/src/main/java/com/energy/manage/service/mappers/analysis/AnalysisResultMapper.java
  9. 15 1
      energy-manage-service/src/main/java/com/energy/manage/service/service/analysis/AnalysisService.java
  10. 82 8
      energy-manage-service/src/main/java/com/energy/manage/service/service/analysis/impl/AnalysisServiceImpl.java
  11. 2 3
      energy-manage-service/src/main/java/com/energy/manage/service/util/TreeUtil.java
  12. 16 10
      energy-manage-service/src/main/resources/mybatis/analysis/AnalysisDiagramRelationMapper.xml
  13. 34 9
      energy-manage-service/src/main/resources/mybatis/analysis/AnalysisResultMapper.xml

+ 2 - 1
energy-manage-common/src/main/java/com/energy/manage/common/constant/redis/ManagerRedisKeyConstant.java

@@ -51,7 +51,8 @@ public class ManagerRedisKeyConstant {
         StringBuffer keyBuffer = new StringBuffer(key);
         //数组转换为list,为了使用stream和获取下标
         List<Serializable> idList = Arrays.asList(ids);
-        idList.stream().forEachOrdered(id -> {
+
+        idList.stream().filter(id -> id != null).forEachOrdered(id -> {
             //首个id进行替换 后面的累加
             if(idList.indexOf(id) == 0){
                 int start = keyBuffer.indexOf(PLACE_HOLDER);

+ 34 - 0
energy-manage-common/src/main/java/com/energy/manage/common/po/analysis/AnalysisResultPo.java

@@ -2,6 +2,7 @@ package com.energy.manage.common.po.analysis;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
+import lombok.experimental.Accessors;
 
 import javax.persistence.Table;
 import java.math.BigDecimal;
@@ -15,6 +16,7 @@ import java.util.Date;
  */
 @Table(name = "analysis_result")
 @Data
+@Accessors(chain = true)
 public class AnalysisResultPo {
 
     /**
@@ -84,4 +86,36 @@ public class AnalysisResultPo {
      */
     private Integer onOffCall;
 
+    /**
+     * 风场标号
+     */
+    private String fieldCode;
+
+    /**
+     * 分析名称
+     */
+    private String analysisName;
+
+    /**
+     * 数据开始时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private Date dataStartTime;
+
+    /**
+     * 数据结束时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private Date dataEndTime;
+
+    /**
+     * 分析简述
+     */
+    private String sketch;
+
+    /**
+     * 数据类型code
+     */
+    private String dataTypeCode;
+
 }

+ 26 - 1
energy-manage-service/src/main/java/com/energy/manage/service/controller/analysis/AnalysisController.java

@@ -1,6 +1,7 @@
 package com.energy.manage.service.controller.analysis;
 
 import com.energy.manage.common.base.Page;
+import com.energy.manage.common.po.analysis.AnalysisResultPo;
 import com.energy.manage.common.reponse.ResultResp;
 import com.energy.manage.service.config.annotations.UserLoginToken;
 import com.energy.manage.service.constant.analysis.AnalysisConstants;
@@ -14,6 +15,8 @@ import com.energy.manage.service.util.NetUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
+import net.sf.cglib.beans.BeanCopier;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
@@ -46,6 +49,20 @@ public class AnalysisController extends BaseServiceController {
         return pageResult(analysisService.analysisResultList(analysisResultDto),analysisResultDto);
     }
 
+
+    @UserLoginToken
+    @ApiOperation(value = "增加分析")
+    @PostMapping("/addAnalysisResult")
+//    public ResultResp addAnalysisResult(@RequestBody AnalysisResultDto analysisResultDto)
+    public ResultResp addAnalysisResult(@RequestBody AnalysisResultPo analysisResultPo)
+    {
+//        AnalysisResultPo analysisResultPo = new AnalysisResultPo();
+//        BeanUtils.copyProperties(analysisResultDto,analysisResultPo);
+        Integer loginUserId = getUserId();
+        analysisResultPo.setCreateBy(loginUserId).setUpdateBy(loginUserId);
+        return success(analysisService.addAnalysisResult(analysisResultPo));
+    }
+
     @UserLoginToken
     @ApiOperation(value = "手动分析触发")
     @PostMapping("/analysis")
@@ -69,7 +86,7 @@ public class AnalysisController extends BaseServiceController {
     @PostMapping("/analysisDetail")
     public ResultResp analysisDetail(@RequestParam("batchCode") String batchCode,
                                      @RequestParam("analysisTypeCode") String analysisTypeCode,
-                                     @RequestParam("fieldEngineCode") String fieldEngineCode,
+                                     @RequestParam(value = "fieldEngineCode",required = false) List<String> fieldEngineCode,
                                      HttpServletRequest request)
     {
         //判断是否是内网
@@ -95,6 +112,14 @@ public class AnalysisController extends BaseServiceController {
     }
 
     @UserLoginToken
+    @ApiOperation(value = "查询所有分析类型")
+    @GetMapping("/queryAllAnalysisType")
+    public ResultResp queryAllAnalysisType()
+    {
+        return success(analysisService.queryAllAnalysisType());
+    }
+
+    @UserLoginToken
     @ApiOperation(value = "根据批次与分析类型查询已有分析结果的风机")
     @GetMapping("/queryAnalysisedEngine")
     public ResultResp queryAnalysisedEngine(@RequestParam(value = "batchCode") String batchCode,

+ 15 - 0
energy-manage-service/src/main/java/com/energy/manage/service/domain/dto/analysis/AnalysisResultDto.java

@@ -22,6 +22,21 @@ public class AnalysisResultDto extends BaseDto {
     private String fieldName ;
 
     /**
+     * 风场编号
+     */
+    private String fieldCode ;
+
+    /**
+     * 分析名称
+     */
+    private String analysisName ;
+
+    /**
+     * 分析简述
+     */
+    private String sketch ;
+
+    /**
      * 批次编号
      */
     private String batchCode ;

+ 5 - 0
energy-manage-service/src/main/java/com/energy/manage/service/domain/vo/analysis/AnalysisDiagramRelationVo.java

@@ -27,6 +27,11 @@ public class AnalysisDiagramRelationVo {
     private String fieldEngineCode ;
 
     /**
+     * 风机名称
+     */
+    private String fieldEngineName ;
+
+    /**
      * 分析类型编号
      */
     private String analysisTypeCode ;

+ 29 - 4
energy-manage-service/src/main/java/com/energy/manage/service/domain/vo/analysis/AnalysisResultVo.java

@@ -17,6 +17,9 @@ import java.util.List;
 @Data
 public class AnalysisResultVo {
 
+
+    private String batchCode;
+
     /**
      * 风场名称
      */
@@ -28,14 +31,36 @@ public class AnalysisResultVo {
     private String fieldCode;
 
     /**
-     * 批次编号
+     * 分析名称
+     */
+    private String analysisName;
+
+    /**
+     * 数据开始时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private Date dataStartTime;
+
+    /**
+     * 数据结束时间
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    private Date dataEndTime;
+
+    /**
+     * 分析简述
+     */
+    private String sketch;
+
+    /**
+     * 数据转换类型代码
      */
-    private String batchCode ;
+    private String dataTypeCode;
 
     /**
-     * 批次名称
+     * 数据转换类型名称
      */
-    private String batchName;
+    private String dataTypeName;
 
     /**
      * 分析状态 -1:未分析 10:排队中  20:分析中 30:分析完成

+ 1 - 1
energy-manage-service/src/main/java/com/energy/manage/service/mappers/analysis/AnalysisDiagramRelationMapper.java

@@ -21,7 +21,7 @@ public interface AnalysisDiagramRelationMapper extends MyMapper<AnalysisDiagramR
 
     List<AnalysisDiagramRelationVo> selectByCondition(@Param("batchCode") String batchCode,
                                                       @Param("analysisTypeCode") String analysisTypeCode,
-                                                      @Param("fieldEngineCode") String fieldEngineCode);
+                                                      @Param("fieldEngineCode") List<String> fieldEngineCode);
 
 
     List<AnalysisDiagramRelationVo> selectByBatchCode(@Param("batchCode") String batchCode);

+ 9 - 0
energy-manage-service/src/main/java/com/energy/manage/service/mappers/analysis/AnalysisResultMapper.java

@@ -2,6 +2,7 @@ package com.energy.manage.service.mappers.analysis;
 
 import com.energy.manage.common.mapper.MyMapper;
 import com.energy.manage.common.po.analysis.AnalysisResultPo;
+import com.energy.manage.service.domain.dto.analysis.AnalysisDto;
 import com.energy.manage.service.domain.dto.analysis.AnalysisResultDto;
 import com.energy.manage.service.domain.vo.analysis.AnalysisResultVo;
 import org.apache.ibatis.annotations.Param;
@@ -38,6 +39,7 @@ public interface AnalysisResultMapper extends MyMapper<AnalysisResultPo> {
      */
     List<AnalysisResultVo> selectLastBatchResultByFieldCode(@Param("fieldCodes") List<String> fieldCodes);
 
+
     /**
      * 更新自动分析状态
      * @param batchCode
@@ -59,4 +61,11 @@ public interface AnalysisResultMapper extends MyMapper<AnalysisResultPo> {
      */
     int updateAnalysisState(@Param("batchCode") String batchCode);
 
+    /**
+     * 数据筛选更新
+     * @param analysisDto
+     * @return
+     */
+    int updateByBatchCode(AnalysisDto analysisDto);
+
 }

+ 15 - 1
energy-manage-service/src/main/java/com/energy/manage/service/service/analysis/AnalysisService.java

@@ -1,6 +1,7 @@
 package com.energy.manage.service.service.analysis;
 
 import com.alibaba.fastjson.JSONArray;
+import com.energy.manage.common.po.analysis.AnalysisResultPo;
 import com.energy.manage.common.reponse.ResultResp;
 import com.energy.manage.service.domain.dto.analysis.AnalysisDto;
 import com.energy.manage.service.domain.dto.analysis.AnalysisResultDto;
@@ -14,6 +15,7 @@ import org.springframework.web.bind.annotation.RequestParam;
 
 import javax.servlet.http.HttpServletResponse;
 import java.util.List;
+import java.util.Map;
 import java.util.Set;
 
 /**
@@ -31,6 +33,13 @@ public interface AnalysisService {
      */
     List<AnalysisResultVo> analysisResultList(AnalysisResultDto analysisResultDto);
 
+    /**
+     * 添加分析结果
+     * @param analysisResultPo
+     * @return
+     */
+    int addAnalysisResult(AnalysisResultPo analysisResultPo);
+
 
     /**
      * 分析
@@ -55,6 +64,11 @@ public interface AnalysisService {
     Set<AnalysisTypeShortVo> queryAnalysisedType(String batchCode);
 
     /**
+     * 查询所有的分析类型
+     */
+    List<Map<String, Object>> queryAllAnalysisType();
+
+    /**
      * 查询已经分析的风机信息
      * @param batchCode
      * @param analysisTypeCode
@@ -70,7 +84,7 @@ public interface AnalysisService {
      * @param isIntranet
      * @return
      */
-    List<AnalysisDetailVo> analysisDetail(String batchCode, String analysisTypeCode, String fieldEngineCode, boolean isIntranet);
+    List<AnalysisDetailVo> analysisDetail(String batchCode, String analysisTypeCode, List<String> fieldEngineCode, boolean isIntranet);
 
 
     /**

+ 82 - 8
energy-manage-service/src/main/java/com/energy/manage/service/service/analysis/impl/AnalysisServiceImpl.java

@@ -3,8 +3,12 @@ package com.energy.manage.service.service.analysis.impl;
 import cn.hutool.core.io.FileUtil;
 import cn.hutool.core.util.ZipUtil;
 import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.energy.manage.common.constant.redis.ManagerRedisKeyConstant;
 import com.energy.manage.common.enums.IdPrefixEnum;
 import com.energy.manage.common.po.analysis.AnalysisOptionRecordsPo;
+import com.energy.manage.common.po.analysis.AnalysisResultPo;
+import com.energy.manage.common.po.analysis.AnalysisTypePo;
 import com.energy.manage.common.reponse.ConstVar;
 import com.energy.manage.common.reponse.ResultResp;
 import com.energy.manage.common.util.HttpUtils;
@@ -16,18 +20,19 @@ import com.energy.manage.service.domain.dto.analysis.AnalysisResultDto;
 import com.energy.manage.service.domain.vo.analysis.*;
 import com.energy.manage.service.domain.vo.windenginegroup.WindEngineGroupShortVo;
 import com.energy.manage.service.domain.vo.windenginegroup.WindEngineGroupVo;
+import com.energy.manage.service.domain.vo.windfield.WindFieldVo;
 import com.energy.manage.service.domain.vo.windfieldbatch.WindFieldBatchVo;
 import com.energy.manage.service.filter.LoginUser;
 import com.energy.manage.service.filter.LoginUserContextHolder;
 import com.energy.manage.service.mappers.analysis.*;
 import com.energy.manage.service.mappers.windenginegroup.WindEngineGroupMapper;
+import com.energy.manage.service.mappers.windfield.WindFieldMapper;
 import com.energy.manage.service.mappers.windfieldbatch.WindFieldBatchMapper;
 import com.energy.manage.service.property.analysis.AlgorithmProperties;
 import com.energy.manage.service.service.analysis.AnalysisResultReportService;
 import com.energy.manage.service.service.analysis.AnalysisService;
-import com.energy.manage.service.util.BatchDownloadUtil;
-import com.energy.manage.service.util.BeanMapUtils;
-import com.energy.manage.service.util.NetUtils;
+import com.energy.manage.service.service.cache.CacheService;
+import com.energy.manage.service.util.*;
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.JsonNode;
 import com.fasterxml.jackson.databind.ObjectMapper;
@@ -41,6 +46,7 @@ import io.minio.messages.Item;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -103,6 +109,9 @@ public class AnalysisServiceImpl implements AnalysisService {
     private AnalysisResultReportMapper resultReportMapper;
 
     @Autowired
+    private WindFieldMapper windFieldMapper;
+
+    @Autowired
     private AlgorithmProperties algorithmProperties;
 
     @Autowired
@@ -114,6 +123,9 @@ public class AnalysisServiceImpl implements AnalysisService {
     @Autowired
     private BatchDownloadUtil batchDownloadUtil;
 
+    @Autowired
+    private CacheService cacheService;
+
 
     private static AnalysisOptionRecordsMapper optionRecordsMapper;
 
@@ -131,6 +143,11 @@ public class AnalysisServiceImpl implements AnalysisService {
     private static final String FILE_ADDR_FREFIX = "http://";
 
     /**
+     * 分析编号分隔符
+     */
+    private final static String SEPARATOR = "-";
+
+    /**
      * 风机编号正则
      */
     private static final String ENGINE_CODE_PATTEN = IdPrefixEnum.WIND_EILL_NUMBER.getCode() + "\\d{3," + IdGeneratorUtil.DEC_INIT_LENGTH + "}";
@@ -152,6 +169,24 @@ public class AnalysisServiceImpl implements AnalysisService {
     }
 
     /**
+     * 添加分析结果
+     *
+     * @param analysisResultPo
+     * @return
+     */
+    @Override
+    public int addAnalysisResult(AnalysisResultPo analysisResultPo) {
+        String fieldCode = analysisResultPo.getFieldCode();
+        String batchCode = createWindFieldBatchCode(fieldCode);
+        analysisResultPo.setBatchCode(batchCode);
+        if(StringUtils.isBlank(analysisResultPo.getAnalysisName())){
+            WindFieldVo  windFieldVo = windFieldMapper.selectByCodeNumber(fieldCode);
+            analysisResultPo.setAnalysisName(createBatchName(windFieldVo.getFieldName()));
+        }
+        return analysisResultMapper.insertSelective(analysisResultPo);
+    }
+
+    /**
      * 分析
      * @param analysisDto
      * @return
@@ -178,8 +213,9 @@ public class AnalysisServiceImpl implements AnalysisService {
             //调用算法
             String result = HttpUtils.doPost(algorithmProperties.getAnalysisUrl(),mapper.writeValueAsString(rootNode));
             log.info("调用算法分析返回结果:{}",result);
-            //调用分析算法接口后直接更新分析状态为排队中
-            analysisResultMapper.updateAnalysisState(analysisDto.getDataBatchNum());
+            //调用分析算法接口后更新数据筛选记录
+            updateAnalysisByBatchCode(analysisDto);
+//            analysisResultMapper.updateAnalysisState(analysisDto.getDataBatchNum());
             //手动操作进行操作记录添加
             if(analysisDto.getAutoOrManual().equals(AnalysisConstants.MANUAL_ANALYSIS)){
                 addOptionRecords(analysisDto.getPowerFarmID(),null,OPTION_CONTENT);
@@ -192,6 +228,15 @@ public class AnalysisServiceImpl implements AnalysisService {
     }
 
     /**
+     * 更新数据筛选记录
+     * @param analysisDto
+     */
+    public void updateAnalysisByBatchCode(AnalysisDto analysisDto){
+        analysisResultMapper.updateByBatchCode(analysisDto);
+    }
+
+
+    /**
      * 分析编辑查询(查询分析类型、风机组)
      * @param batchCode
      * @return
@@ -223,6 +268,15 @@ public class AnalysisServiceImpl implements AnalysisService {
     }
 
     /**
+     * 查询所有的分析类型
+     */
+    @Override
+    public List<Map<String, Object>> queryAllAnalysisType() {
+        List<AnalysisTypePo> analysisTypePos = analysisTypeMapper.selectAll();
+        return TreeUtil.getJava8ResultTree(BeanMapUtils.listBeanToListMap(analysisTypePos), "parentId", "id");
+    }
+
+    /**
      * 查询已经分析的风机信息
      * @param batchCode
      * @param analysisTypeCode
@@ -245,7 +299,7 @@ public class AnalysisServiceImpl implements AnalysisService {
      * @return
      */
     @Override
-    public List<AnalysisDetailVo> analysisDetail(String batchCode, String analysisTypeCode, String fieldEngineCode, boolean isIntranet) {
+    public List<AnalysisDetailVo> analysisDetail(String batchCode, String analysisTypeCode, List<String> fieldEngineCode, boolean isIntranet) {
         List<AnalysisDetailVo> analysisDetailVos = new ArrayList<>();
         //获取所有的分析类型
         List<AnalysisTypeVo> analysisTypeVos = analysisTypeMapper.selectByTypeCode(analysisTypeCode);
@@ -550,7 +604,7 @@ public class AnalysisServiceImpl implements AnalysisService {
      * @param fieldEngineCode
      * @return
      */
-    private List<AnalysisDiagramRelationVo> getNewDiagramRelations(String batchCode,String analysisTypeCode,String fieldEngineCode, boolean intranet){
+    private List<AnalysisDiagramRelationVo> getNewDiagramRelations(String batchCode,String analysisTypeCode,List<String> fieldEngineCode, boolean intranet){
         //获取当前批次、当前分析类型的所有分析结果文件
         List<AnalysisDiagramRelationVo> diagramRelationVos = diagramRelationMapper.selectByCondition(batchCode,analysisTypeCode,fieldEngineCode);
         if(CollectionUtils.isEmpty(diagramRelationVos)){
@@ -558,7 +612,7 @@ public class AnalysisServiceImpl implements AnalysisService {
         }
         diagramRelationVos.forEach(item -> item.setFileAddr(getFilePath(intranet,item.getFileAddr())));
         //如果风机编号不为空的话则不对风机编号进行排序
-        if (StringUtils.isNotBlank(fieldEngineCode)) {
+        if (CollectionUtils.isNotEmpty(fieldEngineCode)) {
             diagramRelationVos.sort(Comparator.comparing(AnalysisDiagramRelationVo::getCreateTime, Comparator.reverseOrder()));
         } else {
             diagramRelationVos.sort(Comparator.comparing(AnalysisDiagramRelationVo::getFieldEngineCode)
@@ -905,6 +959,26 @@ public class AnalysisServiceImpl implements AnalysisService {
         return minIoIpPort + fileAddr;
     }
 
+    /**
+     * 生成风场批次号
+     * @param fieldCode
+     * @return
+     */
+    public String createWindFieldBatchCode(String fieldCode){
+        String sequece = IdPrefixEnum.WIND_ENGINE_BATCH_NUMBER.getCode().concat(IdGeneratorUtil.zeroFillUtil(cacheService.incr(ManagerRedisKeyConstant.build(ManagerRedisKeyConstant.IDGENERATOR_CONSTANTS_KEY, fieldCode,IdPrefixEnum.WIND_ENGINE_BATCH_NUMBER.getCode())),6));
+        return fieldCode + SEPARATOR + sequece;
+    }
+
+    /**
+     * 创建分析名称
+     * @param fieldName
+     * @return
+     */
+    public String createBatchName(String fieldName){
+        String fieldPYHeader = PinYinUtils.getPinYinHeadChar(fieldName);
+        return fieldPYHeader.concat(IdGeneratorUtil.zeroFillUtil(cacheService.incr(ManagerRedisKeyConstant.build(ManagerRedisKeyConstant.IDGENERATOR_CONSTANTS_KEY, fieldPYHeader)),6));
+    }
+
 
     /**
      * 测试排序去重

+ 2 - 3
energy-manage-service/src/main/java/com/energy/manage/service/util/TreeUtil.java

@@ -111,7 +111,6 @@ public class TreeUtil {
     if (org.springframework.util.CollectionUtils.isEmpty(mapList)) {
       return Lists.newArrayList();
     }
-    //filter过滤出所有的一级节点
     return mapList.stream().filter(m ->m.get(parentKeyName).toString().equals("0"))
             .peek(m -> m.put("children", sortJava8Map(getJava8Children(m, mapList,parentKeyName,keyName)))).collect(Collectors.toList());
   }
@@ -128,8 +127,8 @@ public class TreeUtil {
                                                            String parentKeyName,
                                                            String keyName) {
     return allList.stream()
-            .filter(curNode ->curNode.get(parentKeyName)!=null && curNode.get(parentKeyName).equals(parentNode.get(keyName)))
-            .peek(m -> m.put("children", getJava8Children(m, allList))).collect(Collectors.toList());
+            .filter(curNode ->curNode.get(parentKeyName)!=null && curNode.get(parentKeyName).toString().equals(parentNode.get(keyName).toString()))
+            .peek(m -> m.put("children", getJava8Children(m, allList,parentKeyName,keyName))).collect(Collectors.toList());
   }
 
   /**

+ 16 - 10
energy-manage-service/src/main/resources/mybatis/analysis/AnalysisDiagramRelationMapper.xml

@@ -14,18 +14,24 @@
 
     <select id="selectByCondition" parameterType="java.lang.String" resultType="com.energy.manage.service.domain.vo.analysis.AnalysisDiagramRelationVo">
         select
-            batch_code,
-            field_engine_code,
-            analysis_type_code,
-            file_addr,
-            create_time
-        from analysis_diagram_relation
-        where batch_code = #{batchCode,jdbcType=VARCHAR}
+            adr.batch_code,
+            adr.field_engine_code,
+            weg.engine_name as field_engine_name,
+            adr.analysis_type_code,
+            adr.file_addr,
+            adr.create_time
+        from analysis_diagram_relation adr
+        left join wind_engine_group weg
+        on adr.field_engine_code = weg.engine_code
+        where adr.batch_code = #{batchCode,jdbcType=VARCHAR}
         <if test="analysisTypeCode != null and analysisTypeCode != ''">
-              and analysis_type_code = #{analysisTypeCode,jdbcType=VARCHAR}
+              and adr.analysis_type_code = #{analysisTypeCode,jdbcType=VARCHAR}
         </if>
-        <if test="fieldEngineCode != null and fieldEngineCode != ''">
-            and field_engine_code = #{fieldEngineCode,jdbcType=VARCHAR}
+        <if test="fieldEngineCode != null and fieldEngineCode.size != 0">
+            and adr.field_engine_code in
+          <foreach collection="fieldEngineCode" item="item" separator="," open="("  close=")">
+             #{item,jdbcType=VARCHAR}
+          </foreach>
         </if>
     </select>
     <select id="selectByBatchCode" parameterType="java.lang.String" resultType="com.energy.manage.service.domain.vo.analysis.AnalysisDiagramRelationVo">

+ 34 - 9
energy-manage-service/src/main/resources/mybatis/analysis/AnalysisResultMapper.xml

@@ -16,29 +16,44 @@
         <result column="analysis_progress" property="analysisProgress" jdbcType="DECIMAL"/>
         <result column="call_status" property="callStatus" jdbcType="INTEGER"/>
         <result column="on_off_call" property="onOffCall" jdbcType="INTEGER"/>
+
+        <result column="field_code" property="fieldCode" jdbcType="VARCHAR"/>
+        <result column="analysis_name" property="analysisName" jdbcType="VARCHAR"/>
+        <result column="data_start_time" property="dataStartTime" jdbcType="DATE"/>
+        <result column="data_end_time" property="dataEndTime" jdbcType="DATE"/>
+        <result column="sketch" property="sketch" jdbcType="VARCHAR"/>
+        <result column="data_type_code" property="dataTypeCode" jdbcType="VARCHAR"/>
+
+
     </resultMap>
 
     <select id="selectByCondition" parameterType="com.energy.manage.service.domain.dto.analysis.AnalysisResultDto" resultType="com.energy.manage.service.domain.vo.analysis.AnalysisResultVo">
         select
-            batch.field_name,
-            batch.field_code,
-            batch.batch_name,
+            field.field_name,
+            result.field_code,
             result.batch_code,
             result.analysis_state,
             result.err_state,
             result.err_info,
             result.create_time,
             result.analysis_progress,
-            result.on_off_call
+            result.on_off_call,
+            result.analysis_name,
+            result.data_start_time,
+            result.data_end_time,
+            result.sketch,
+            result.data_type_code,
+            type.transfer_type_name as data_type_name
         from analysis_result result
-        left join wind_field_batch batch
-        on result.batch_code = batch.batch_code
         left join sys_organization_auth auth
-        on batch.field_code = auth.code_number
+        on result.field_code = auth.code_number
+        left join wind_field field
+        on result.field_code = field.field_code
+        left join data_transfer_type type
+        on result.data_type_code = type.transfer_type
         where auth.role_id = #{roleId,jdbcType=INTEGER}
-        and batch.is_delete = 0
         <if test="fieldName != null and fieldName != ''">
-            and batch.field_name like concat('%', #{fieldName,jdbcType=VARCHAR}, '%')
+            and field.field_name like concat('%', #{fieldName,jdbcType=VARCHAR}, '%')
         </if>
         <if test="analysisState != null">
             and result.analysis_state = #{analysisState}
@@ -90,4 +105,14 @@
         set analysis_state = 10
         where batch_code = #{batchCode,jdbcType=VARCHAR}
     </update>
+
+    <update id="updateByBatchCode" parameterType="com.energy.manage.service.domain.dto.analysis.AnalysisDto">
+        update analysis_result
+        set analysis_state = 10,
+            data_start_time = #{beginTime,jdbcType=INTEGER},
+            data_end_time = #{endTime,jdbcType=VARCHAR},
+            data_type_code = #{scada,jdbcType=VARCHAR},
+            update_time = now()
+        where batch_code = #{dataBatchNum,jdbcType=VARCHAR}
+    </update>
 </mapper>