Browse Source

Merge branch 'dev_analysis' of http://121.42.41.42:7070/r/esua-epdc-cloud into dev_analysis

dev
wanggongfeng 6 years ago
parent
commit
e05cb0aa5b
  1. 33
      esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/item/form/ItemSurveyFormDTO.java
  2. 53
      esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/item/result/ItemSurveyResultDTO.java
  3. 20
      esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/controller/ItemAnalysisController.java
  4. 11
      esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemAnalysisDao.java
  5. 11
      esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemAnalysisService.java
  6. 7
      esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemAnalysisServiceImpl.java
  7. 51
      esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/item/ItemAnalysisDao.xml
  8. 23
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiAnalysisItemController.java
  9. 12
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/AnalysisItemFeignClient.java
  10. 7
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/AnalysisItemFeignClientFallback.java
  11. 13
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/AnalysisItemService.java
  12. 7
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AnalysisItemServiceImpl.java

33
esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/item/form/ItemSurveyFormDTO.java

@ -0,0 +1,33 @@
package com.elink.esua.epdc.dto.item.form;
import lombok.Data;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.util.List;
/**
* @Description 重点项目概况DTO
* @Author zy
* @Date 2020/2/11
*/
@Data
public class ItemSurveyFormDTO implements Serializable {
private static final long serialVersionUID = 6544783947444092507L;
/**
* 主键
*/
private String id;
/**
* 第一页查询发起时的时间
*/
@NotBlank(message = "时间戳不能为空")
private String timestamp;
/**
* 部门ID列表
*/
List<Long> gridIds;
}

53
esua-epdc/epdc-module/epdc-analysis/epdc-analysis-client/src/main/java/com/elink/esua/epdc/dto/item/result/ItemSurveyResultDTO.java

@ -0,0 +1,53 @@
package com.elink.esua.epdc.dto.item.result;
import lombok.Data;
import java.io.Serializable;
/**
* @Description 重点项目概况DTO
* @Author zy
* @Date 2020/2/11
*/
@Data
public class ItemSurveyResultDTO implements Serializable {
// t1.unsolvedCount, -- notCloseNum
// t2.dispatchCount, -- reportGridPlatformNum
// t2.solvingCount, -- solvingNum
// t2.solvedCount -- solvedNum
/**
* 未解决项目数
*/
private Integer unsolvedCount;
/**
* 超时项目数
*/
private Integer timeoutCount;
/**
* 未超时项目数
*/
private Integer noTimeoutCount;
/**
* 区调度项目数
*/
private Integer dispatchCount;
/**
* 解决中项目数
*/
private Integer solvingCount;
/**
* 已解决项目数
*/
private Integer solvedCount;
/**
* 更新时间
*/
private String updateTime;
}

20
esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/controller/ItemAnalysisController.java

@ -19,15 +19,14 @@ package com.elink.esua.epdc.modules.item.controller;
import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.item.form.ItemSurveyFormDTO;
import com.elink.esua.epdc.dto.item.result.DifficultItemResultDTO; import com.elink.esua.epdc.dto.item.result.DifficultItemResultDTO;
import com.elink.esua.epdc.dto.item.result.ItemResultDTO; import com.elink.esua.epdc.dto.item.result.ItemResultDTO;
import com.elink.esua.epdc.dto.item.result.ItemSurveyResultDTO;
import com.elink.esua.epdc.dto.item.result.UnsolvedItemResultDTO; import com.elink.esua.epdc.dto.item.result.UnsolvedItemResultDTO;
import com.elink.esua.epdc.modules.item.service.ItemAnalysisService; import com.elink.esua.epdc.modules.item.service.ItemAnalysisService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.util.Map; import java.util.Map;
@ -84,5 +83,16 @@ public class ItemAnalysisController {
return new Result<PageData<DifficultItemResultDTO>>().ok(page); return new Result<PageData<DifficultItemResultDTO>>().ok(page);
} }
/**
* @Description: 重点项目概况
* @Param: [formDto]
* @return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemSurveyResultDTO>
* @Author: zy
* @Date: 2020-02-11
*/
@GetMapping("getItemSurvey")
public Result<ItemSurveyResultDTO> getItemSurvey(@RequestBody ItemSurveyFormDTO formDTO) {
ItemSurveyResultDTO data = itemAnalysisService.getItemSurvey(formDTO);
return new Result<ItemSurveyResultDTO>().ok(data);
}
} }

11
esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemAnalysisDao.java

@ -18,8 +18,10 @@
package com.elink.esua.epdc.modules.item.dao; package com.elink.esua.epdc.modules.item.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao; import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.dto.item.form.ItemSurveyFormDTO;
import com.elink.esua.epdc.dto.item.result.DifficultItemResultDTO; import com.elink.esua.epdc.dto.item.result.DifficultItemResultDTO;
import com.elink.esua.epdc.dto.item.result.ItemResultDTO; import com.elink.esua.epdc.dto.item.result.ItemResultDTO;
import com.elink.esua.epdc.dto.item.result.ItemSurveyResultDTO;
import com.elink.esua.epdc.dto.item.result.UnsolvedItemResultDTO; import com.elink.esua.epdc.dto.item.result.UnsolvedItemResultDTO;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
@ -59,4 +61,13 @@ public interface ItemAnalysisDao extends BaseDao<ItemResultDTO> {
* @Date 2020/2/11 13:14 * @Date 2020/2/11 13:14
**/ **/
List<DifficultItemResultDTO> selectListDifficultItemResultDTO(Map<String, Object> params); List<DifficultItemResultDTO> selectListDifficultItemResultDTO(Map<String, Object> params);
/**
* @Description: 重点项目概况
* @Param: [formDTO]
* @return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemSurveyResultDTO>
* @Author: zy
* @Date: 2020-02-11
*/
ItemSurveyResultDTO selectOneItemSurvey(ItemSurveyFormDTO formDTO);
} }

11
esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemAnalysisService.java

@ -1,8 +1,10 @@
package com.elink.esua.epdc.modules.item.service; package com.elink.esua.epdc.modules.item.service;
import com.elink.esua.epdc.commons.tools.page.PageData; import com.elink.esua.epdc.commons.tools.page.PageData;
import com.elink.esua.epdc.dto.item.form.ItemSurveyFormDTO;
import com.elink.esua.epdc.dto.item.result.DifficultItemResultDTO; import com.elink.esua.epdc.dto.item.result.DifficultItemResultDTO;
import com.elink.esua.epdc.dto.item.result.ItemResultDTO; import com.elink.esua.epdc.dto.item.result.ItemResultDTO;
import com.elink.esua.epdc.dto.item.result.ItemSurveyResultDTO;
import com.elink.esua.epdc.dto.item.result.UnsolvedItemResultDTO; import com.elink.esua.epdc.dto.item.result.UnsolvedItemResultDTO;
import java.util.Map; import java.util.Map;
@ -41,4 +43,13 @@ public interface ItemAnalysisService {
* @Date 2020/2/11 13:13 * @Date 2020/2/11 13:13
**/ **/
PageData<DifficultItemResultDTO> listDifficultItemResultDTO(Map<String, Object> params); PageData<DifficultItemResultDTO> listDifficultItemResultDTO(Map<String, Object> params);
/**
* @Description: 重点项目概况
* @Param: [formDTO]
* @return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemSurveyResultDTO>
* @Author: zy
* @Date: 2020-02-11
*/
ItemSurveyResultDTO getItemSurvey(ItemSurveyFormDTO formDTO);
} }

7
esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemAnalysisServiceImpl.java

@ -7,8 +7,10 @@ import com.elink.esua.epdc.commons.tools.security.user.SecurityUser;
import com.elink.esua.epdc.commons.tools.security.user.UserDetail; import com.elink.esua.epdc.commons.tools.security.user.UserDetail;
import com.elink.esua.epdc.datasources.DataSourceNames; import com.elink.esua.epdc.datasources.DataSourceNames;
import com.elink.esua.epdc.datasources.annotation.DataSource; import com.elink.esua.epdc.datasources.annotation.DataSource;
import com.elink.esua.epdc.dto.item.form.ItemSurveyFormDTO;
import com.elink.esua.epdc.dto.item.result.DifficultItemResultDTO; import com.elink.esua.epdc.dto.item.result.DifficultItemResultDTO;
import com.elink.esua.epdc.dto.item.result.ItemResultDTO; import com.elink.esua.epdc.dto.item.result.ItemResultDTO;
import com.elink.esua.epdc.dto.item.result.ItemSurveyResultDTO;
import com.elink.esua.epdc.dto.item.result.UnsolvedItemResultDTO; import com.elink.esua.epdc.dto.item.result.UnsolvedItemResultDTO;
import com.elink.esua.epdc.modules.item.dao.ItemAnalysisDao; import com.elink.esua.epdc.modules.item.dao.ItemAnalysisDao;
import com.elink.esua.epdc.modules.item.service.ItemAnalysisService; import com.elink.esua.epdc.modules.item.service.ItemAnalysisService;
@ -87,4 +89,9 @@ public class ItemAnalysisServiceImpl extends BaseServiceImpl<ItemAnalysisDao, It
List<DifficultItemResultDTO> list = baseDao.selectListDifficultItemResultDTO(params); List<DifficultItemResultDTO> list = baseDao.selectListDifficultItemResultDTO(params);
return new PageData<>(list, page.getTotal()); return new PageData<>(list, page.getTotal());
} }
@Override
public ItemSurveyResultDTO getItemSurvey(ItemSurveyFormDTO formDTO) {
return baseDao.selectOneItemSurvey(formDTO);
}
} }

51
esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/item/ItemAnalysisDao.xml

@ -191,4 +191,55 @@
AND reportFlag = #{reportFlag} AND reportFlag = #{reportFlag}
</if> </if>
</select> </select>
<select id="selectOneItemSurvey" resultType="com.elink.esua.epdc.dto.item.result.ItemSurveyResultDTO">
SELECT
t1.unsolvedCount,
t2.dispatchCount,
t2.solvingCount,
t2.solvedCount
FROM
(
SELECT
COUNT( ei.ID ) AS unsolvedCount
FROM
esua_epdc_events.epdc_item ei
LEFT JOIN esua_epdc_events.epdc_item_dept eid ON eid.ITEM_ID = ei.ID
AND eid.DEL_FLAG = '0'
WHERE
ei.ITEM_STATE = 0
AND ei.DEL_FLAG = '0'
<if test="gridIds!=null and gridIds.size()>0">
and eid.DEPT_ID in
<foreach collection="gridIds" index="index" item="deptId" open="(" separator="," close=")">
#{deptId}
</foreach>
</if>
) t1,
(
SELECT
COUNT( DISTINCT eihp.ITEM_ID ) AS dispatchCount,
COUNT( DISTINCT ei1.ID ) AS solvingCount,
COUNT( DISTINCT ei2.ID ) AS solvedCount
FROM
esua_epdc_events.epdc_item_handle_process eihp
LEFT JOIN esua_epdc_events.epdc_item ei1 ON eihp.ITEM_ID = ei1.ID
AND ei1.DEL_FLAG = 0
AND ei1.ITEM_STATE = 0
LEFT JOIN esua_epdc_events.epdc_item ei2 ON eihp.ITEM_ID = ei2.ID
AND ei2.DEL_FLAG = 0
AND ( ei2.ITEM_STATE = 5 OR ei2.ITEM_STATE = 10 )
LEFT JOIN esua_epdc_events.epdc_item_dept eid ON eid.ITEM_ID = eihp.ITEM_ID
AND eid.DEL_FLAG = '0'
WHERE
eihp.STATE = 15
AND eihp.DEL_FLAG = '0'
<if test="gridIds!=null and gridIds.size()>0">
and eid.DEPT_ID in
<foreach collection="gridIds" index="index" item="deptId" open="(" separator="," close=")">
#{deptId}
</foreach>
</if>
) t2;
</select>
</mapper> </mapper>

23
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiAnalysisItemController.java

@ -2,13 +2,21 @@ package com.elink.esua.epdc.controller;
import com.elink.esua.epdc.common.token.dto.TokenDto; import com.elink.esua.epdc.common.token.dto.TokenDto;
import com.elink.esua.epdc.commons.tools.annotation.LoginUser; import com.elink.esua.epdc.commons.tools.annotation.LoginUser;
import com.elink.esua.epdc.commons.tools.security.user.SecurityUser;
import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.commons.tools.validator.ValidatorUtils;
import com.elink.esua.epdc.dto.item.form.ItemSurveyFormDTO;
import com.elink.esua.epdc.dto.item.result.ItemSurveyResultDTO;
import com.elink.esua.epdc.service.AnalysisItemService; import com.elink.esua.epdc.service.AnalysisItemService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.List;
/** /**
* 移动端接口-数据分析模块(项目) * 移动端接口-数据分析模块(项目)
* @Author LPF * @Author LPF
@ -33,4 +41,19 @@ public class ApiAnalysisItemController {
public Result test(@LoginUser TokenDto tokenDto) { public Result test(@LoginUser TokenDto tokenDto) {
return analysisItemService.test(); return analysisItemService.test();
} }
/**
* @Description: 重点项目概况
* @Param: [formDto]
* @return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemSurveyResultDTO>
* @Author: zy
* @Date: 2020-02-11
*/
@GetMapping("getItemSurvey")
public Result<ItemSurveyResultDTO> getItemSurvey(@RequestBody ItemSurveyFormDTO formDto) {
//效验数据
ValidatorUtils.validateEntity(formDto);
formDto.setGridIds(SecurityUser.getUser().getDeptIdList());
return analysisItemService.getItemSurvey(formDto);
}
} }

12
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/AnalysisItemFeignClient.java

@ -3,6 +3,8 @@ package com.elink.esua.epdc.feign;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant; import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.config.FeignRequestInterceptor; import com.elink.esua.epdc.config.FeignRequestInterceptor;
import com.elink.esua.epdc.dto.item.form.ItemSurveyFormDTO;
import com.elink.esua.epdc.dto.item.result.ItemSurveyResultDTO;
import com.elink.esua.epdc.feign.fallback.AnalysisItemFeignClientFallback; import com.elink.esua.epdc.feign.fallback.AnalysisItemFeignClientFallback;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.http.MediaType; import org.springframework.http.MediaType;
@ -27,6 +29,14 @@ public interface AnalysisItemFeignClient {
@GetMapping(value = "analysis/item/test", consumes = MediaType.APPLICATION_JSON_VALUE) @GetMapping(value = "analysis/item/test", consumes = MediaType.APPLICATION_JSON_VALUE)
Result test(); Result test();
/**
* @Description: 重点项目概况
* @Param: [formDTO]
* @return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemSurveyResultDTO>
* @Author: zy
* @Date: 2020-02-11
*/
@GetMapping(value = "analysis/item/getItemSurvey")
Result<ItemSurveyResultDTO> getItemSurvey(ItemSurveyFormDTO formDto);
} }

7
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/AnalysisItemFeignClientFallback.java

@ -3,6 +3,8 @@ package com.elink.esua.epdc.feign.fallback;
import com.elink.esua.epdc.commons.tools.constant.ServiceConstant; import com.elink.esua.epdc.commons.tools.constant.ServiceConstant;
import com.elink.esua.epdc.commons.tools.utils.ModuleUtils; import com.elink.esua.epdc.commons.tools.utils.ModuleUtils;
import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.item.form.ItemSurveyFormDTO;
import com.elink.esua.epdc.dto.item.result.ItemSurveyResultDTO;
import com.elink.esua.epdc.feign.AnalysisItemFeignClient; import com.elink.esua.epdc.feign.AnalysisItemFeignClient;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
@ -19,4 +21,9 @@ public class AnalysisItemFeignClientFallback implements AnalysisItemFeignClient
return ModuleUtils.feignConError(ServiceConstant.EPDC_ANALYSIS_SERVER, "test"); return ModuleUtils.feignConError(ServiceConstant.EPDC_ANALYSIS_SERVER, "test");
} }
@Override
public Result<ItemSurveyResultDTO> getItemSurvey(ItemSurveyFormDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_ANALYSIS_SERVER, "getItemSurvey", formDto);
}
} }

13
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/AnalysisItemService.java

@ -1,8 +1,8 @@
package com.elink.esua.epdc.service; package com.elink.esua.epdc.service;
import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.item.form.ItemSurveyFormDTO;
import java.util.List; import com.elink.esua.epdc.dto.item.result.ItemSurveyResultDTO;
/** /**
* 项目模块-数据分析移动端 * 项目模块-数据分析移动端
@ -20,5 +20,12 @@ public interface AnalysisItemService {
*/ */
Result test(); Result test();
/**
* @Description: 重点项目概况
* @Param: [formDTO]
* @return: com.elink.esua.epdc.commons.tools.utils.Result<com.elink.esua.epdc.dto.item.result.ItemSurveyResultDTO>
* @Author: zy
* @Date: 2020-02-11
*/
Result<ItemSurveyResultDTO> getItemSurvey(ItemSurveyFormDTO formDTO);
} }

7
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/AnalysisItemServiceImpl.java

@ -2,6 +2,8 @@ package com.elink.esua.epdc.service.impl;
import com.elink.esua.epdc.commons.tools.utils.Result; import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.item.form.ItemSurveyFormDTO;
import com.elink.esua.epdc.dto.item.result.ItemSurveyResultDTO;
import com.elink.esua.epdc.feign.AnalysisItemFeignClient; import com.elink.esua.epdc.feign.AnalysisItemFeignClient;
import com.elink.esua.epdc.service.AnalysisItemService; import com.elink.esua.epdc.service.AnalysisItemService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -24,4 +26,9 @@ public class AnalysisItemServiceImpl implements AnalysisItemService {
public Result test() { public Result test() {
return analysisItemFeignClient.test(); return analysisItemFeignClient.test();
} }
@Override
public Result<ItemSurveyResultDTO> getItemSurvey(ItemSurveyFormDTO formDTO) {
return analysisItemFeignClient.getItemSurvey(formDTO);
}
} }

Loading…
Cancel
Save