Prechádzať zdrojové kódy

修改:分析结果接口(添加二级显示)
新增:根据风场编号查询分析编号信息

chenhongyan1989 4 mesiacov pred
rodič
commit
f322653f8c

+ 20 - 2
energy-manage-service/src/main/java/com/energy/manage/service/controller/analysis/AnalysisController.java

@@ -2,6 +2,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.po.windfield.WindFieldPO;
 import com.energy.manage.common.reponse.ResultResp;
 import com.energy.manage.service.config.annotations.UserLoginToken;
 import com.energy.manage.service.constant.analysis.AnalysisConstants;
@@ -39,13 +40,30 @@ public class AnalysisController extends BaseServiceController {
     private AnalysisService analysisService;
 
 
+//    @UserLoginToken
+//    @ApiOperation(value = "分析结果列表")
+//    @GetMapping("/analysisResultList")
+//    public ResultResp<Page<AnalysisResultVo>> analysisResultList(AnalysisResultDto analysisResultDto)
+//    {
+//        analysisResultDto.setRoleId(getRoleId());
+//        return pageResult(analysisService.analysisResultList(analysisResultDto),analysisResultDto);
+//    }
+
     @UserLoginToken
     @ApiOperation(value = "分析结果列表")
     @GetMapping("/analysisResultList")
-    public ResultResp<Page<AnalysisResultVo>> analysisResultList(AnalysisResultDto analysisResultDto)
+    public ResultResp<Page<WindFieldPO>> analysisResultList(AnalysisResultDto analysisResultDto)
     {
         analysisResultDto.setRoleId(getRoleId());
-        return pageResult(analysisService.analysisResultList(analysisResultDto),analysisResultDto);
+        return success(analysisService.analysisResultList(analysisResultDto));
+    }
+
+    @UserLoginToken
+    @ApiOperation(value = "风场下所有的分析编号")
+    @GetMapping("/analysisResultListByFieldCode")
+    public ResultResp<List<AnalysisResultVo>> analysisResultListByAnalysisCode(@RequestParam(value = "fieldCode") String fieldCode)
+    {
+        return success(analysisService.analysisResultListByAnalysisCode(fieldCode));
     }
 
 

+ 17 - 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.common.po.windfield.WindFieldPO;
 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.AnalysisInfoVo;
@@ -28,6 +29,14 @@ public interface AnalysisResultMapper extends MyMapper<AnalysisResultPo> {
 
 
     /**
+     * 根据风场编号查询分析结果
+     * @param fieldCode
+     * @return
+     */
+    List<AnalysisResultVo> selectByFieldCode(@Param("fieldCode") String fieldCode);
+
+
+    /**
      * 查询分析中的数据量
      * @return
      */
@@ -42,6 +51,14 @@ public interface AnalysisResultMapper extends MyMapper<AnalysisResultPo> {
 
 
     /**
+     * 分析结果风场列表
+     * @param analysisResultDto
+     * @return
+     */
+    List<WindFieldPO> selectFieldCode(AnalysisResultDto analysisResultDto);
+
+
+    /**
      * 更新自动分析状态
      * @param batchCode
      * @return

+ 19 - 3
energy-manage-service/src/main/java/com/energy/manage/service/service/analysis/AnalysisService.java

@@ -1,14 +1,14 @@
 package com.energy.manage.service.service.analysis;
 
 import com.alibaba.fastjson.JSONArray;
+import com.energy.manage.common.base.Page;
 import com.energy.manage.common.po.analysis.AnalysisResultPo;
+import com.energy.manage.common.po.windfield.WindFieldPO;
 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;
 import com.energy.manage.service.domain.vo.analysis.*;
 import com.energy.manage.service.domain.vo.windenginegroup.WindEngineGroupShortVo;
-import org.apache.ibatis.mapping.ResultMap;
-import org.springframework.web.bind.annotation.RequestParam;
 
 import javax.servlet.http.HttpServletResponse;
 import java.util.List;
@@ -28,7 +28,23 @@ public interface AnalysisService {
      * @param analysisResultDto
      * @return
      */
-    List<AnalysisResultVo> analysisResultList(AnalysisResultDto analysisResultDto);
+//    List<AnalysisResultVo> analysisResultList(AnalysisResultDto analysisResultDto);
+
+
+
+    /**
+     * 分析结果列表
+     * @param analysisResultDto
+     * @return
+     */
+    Page<WindFieldPO> analysisResultList(AnalysisResultDto analysisResultDto);
+
+    /**
+     * 根据风场查询分析结果
+     * @param fieldCode
+     * @return
+     */
+    List<AnalysisResultVo> analysisResultListByAnalysisCode(String fieldCode);
 
     /**
      * 添加分析结果

+ 24 - 2
energy-manage-service/src/main/java/com/energy/manage/service/service/analysis/impl/AnalysisServiceImpl.java

@@ -2,12 +2,15 @@ package com.energy.manage.service.service.analysis.impl;
 
 import cn.hutool.core.io.FileUtil;
 import cn.hutool.core.util.ZipUtil;
+import cn.hutool.db.PageResult;
 import com.alibaba.fastjson.JSONArray;
+import com.energy.manage.common.base.Page;
 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.po.windfield.WindFieldPO;
 import com.energy.manage.common.reponse.ConstVar;
 import com.energy.manage.common.reponse.ResultResp;
 import com.energy.manage.common.util.HttpUtils;
@@ -41,6 +44,8 @@ import com.fasterxml.jackson.databind.JsonNode;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.databind.node.ArrayNode;
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
 import io.minio.GetObjectArgs;
 import io.minio.ListObjectsArgs;
 import io.minio.MinioClient;
@@ -178,9 +183,26 @@ public class AnalysisServiceImpl implements AnalysisService {
      * @param analysisResultDto
      * @return
      */
+//    @Override
+//    public List<AnalysisResultVo> analysisResultList(AnalysisResultDto analysisResultDto) {
+//        List<AnalysisResultVo> resultVos = analysisResultMapper.selectByCondition(analysisResultDto);
+//        resultVos.stream().forEach(item -> item.setReportVos(resultReportMapper.selectByBatchCode(item.getBatchCode())));
+//        return resultVos;
+//    }
+
+    @Override
+    public Page<WindFieldPO> analysisResultList(AnalysisResultDto analysisResultDto){
+        int pageNum = analysisResultDto.getPageNum();
+        int pageSize = analysisResultDto.getPageSize();
+        PageHelper.startPage(pageNum, pageSize);
+        List<WindFieldPO> resultVos = analysisResultMapper.selectFieldCode(analysisResultDto);
+        Long total = org.apache.commons.collections.CollectionUtils.isEmpty(resultVos) ? 0L : new PageInfo<>(resultVos).getTotal();
+        return Page.build(pageNum, pageSize, total, resultVos);
+    }
+
     @Override
-    public List<AnalysisResultVo> analysisResultList(AnalysisResultDto analysisResultDto) {
-        List<AnalysisResultVo> resultVos = analysisResultMapper.selectByCondition(analysisResultDto);
+    public List<AnalysisResultVo> analysisResultListByAnalysisCode(String fieldCode){
+        List<AnalysisResultVo> resultVos = analysisResultMapper.selectByFieldCode(fieldCode);
         resultVos.stream().forEach(item -> item.setReportVos(resultReportMapper.selectByBatchCode(item.getBatchCode())));
         return resultVos;
     }

+ 52 - 0
energy-manage-service/src/main/resources/mybatis/analysis/AnalysisResultMapper.xml

@@ -67,6 +67,34 @@
         order by result.update_time desc
     </select>
 
+    <select id="selectByFieldCode" parameterType="java.lang.String" resultType="com.energy.manage.service.domain.vo.analysis.AnalysisResultVo">
+        select
+        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.analysis_name,
+        result.data_start_time,
+        result.data_end_time,
+        result.sketch,
+        result.data_type_code,
+        result.analysis_start_time,
+        result.analysis_finish_time,
+        type.transfer_type_name as data_type_name
+        from analysis_result result
+        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 result.field_code = #{fieldCode}
+        order by result.update_time desc
+    </select>
+
     <select id="selectAlasisingCount" resultType="int">
         select count(*)
         from analysis_result
@@ -97,6 +125,30 @@
         )
     </select>
 
+
+    <select id="selectFieldCode" parameterType="com.energy.manage.service.domain.dto.analysis.AnalysisResultDto" resultType="com.energy.manage.common.po.windfield.WindFieldPO">
+        select
+        result.field_code,
+        field.field_name
+        from analysis_result result
+        left join wind_field field
+        on result.field_code = field.field_code
+        left join sys_organization_auth auth
+        on result.field_code = auth.code_number
+        where auth.role_id = #{roleId}
+        <if test="analysisName != null and analysisName != ''">
+            and result.analysis_name like concat('%',#{analysisName},'%')
+        </if>
+        <if test="batchCode != null">
+            and result.batch_code = #{batchCode};
+        </if>
+        <if test="fieldName != null and fieldName != ''">
+            and field.field_name like concat('%',#{fieldName},'%')
+        </if>
+        group by result.field_code, field.field_name
+        order by result.update_time desc
+    </select>
+
     <update id="updateOnOffCall">
         update analysis_result
         set on_off_call = #{onOffCall,jdbcType=INTEGER}