Browse Source

项目实时抽取 添加参数projectId

dev_shibei_match
zhaoqifeng 4 years ago
parent
commit
876c967e07
  1. 2
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/screen/form/ScreenCentralZoneDataFormDTO.java
  2. 2
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginProjectMainDailyDao.java
  3. 3
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/project/ProjectProcessDao.java
  4. 2
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/mq/ProjectChangedCustomListener.java
  5. 2
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/FactOriginProjectMainDailyService.java
  6. 4
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/FactOriginProjectMainDailyServiceImpl.java
  7. 2
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/ScreenExtractService.java
  8. 5
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/ScreenExtractServiceImpl.java
  9. 6
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/ScreenProjectSettleServiceImpl.java
  10. 2
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/ProjectProcessService.java
  11. 4
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/impl/ProjectProcessServiceImpl.java
  12. 3
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml
  13. 3
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenProjectDataDao.xml
  14. 3
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectProcessDao.xml

2
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/screen/form/ScreenCentralZoneDataFormDTO.java

@ -27,4 +27,6 @@ public class ScreenCentralZoneDataFormDTO implements Serializable {
private String startDate; private String startDate;
private String endDate; private String endDate;
private String projectId;
} }

2
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/evaluationindex/extract/FactOriginProjectMainDailyDao.java

@ -387,7 +387,7 @@ public interface FactOriginProjectMainDailyDao extends BaseDao<FactOriginProject
* @author wangc * @author wangc
* @date 2021.03.04 22:56 * @date 2021.03.04 22:56
*/ */
List<ScreenProjectDataDTO> initNewScreenProjectData(@Param("customerId")String customerId,@Param("dateId") String dateId,@Param("dataEndTime")String dataEndTime); List<ScreenProjectDataDTO> initNewScreenProjectData(@Param("customerId")String customerId,@Param("dateId") String dateId,@Param("dataEndTime")String dataEndTime, @Param("projectId") String projectId);
/** /**
* desc: 获取难点堵点项目数据 * desc: 获取难点堵点项目数据

3
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/dao/project/ProjectProcessDao.java

@ -182,7 +182,8 @@ public interface ProjectProcessDao extends BaseDao<ProjectProcessEntity> {
* @author wangc * @author wangc
* @date 2021.03.09 16:25 * @date 2021.03.09 16:25
*/ */
List<ScreenProjectProcessDTO> selectProjectProcessAndDirection(@Param("customerId") String customerId, @Param("dateId") String dateId, @Param("dataEndTime")String dataEndTime ); List<ScreenProjectProcessDTO> selectProjectProcessAndDirection(@Param("customerId") String customerId, @Param("dateId") String dateId,
@Param("dataEndTime")String dataEndTime, @Param("projectId") String projectId );
List<ScreenProjectProcessAttachmentDTO> selectProcessAttachment(@Param("list")List<String> list); List<ScreenProjectProcessAttachmentDTO> selectProcessAttachment(@Param("list")List<String> list);
} }

2
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/mq/ProjectChangedCustomListener.java

@ -142,7 +142,7 @@ public class ProjectChangedCustomListener implements MessageListenerConcurrently
// 【screen_project_process_attachment】 // 【screen_project_process_attachment】
// 【screen_project_img_data】 // 【screen_project_img_data】
// 【screen_project_process】这四个表 // 【screen_project_process】这四个表
SpringContextUtils.getBean(ScreenExtractService.class).extractPartData(customerId,dateId); SpringContextUtils.getBean(ScreenExtractService.class).extractPartData(customerId, dateId, msgObj.getProjectId());
} }
logger.info("consumer projectChanged msg success,{}",aBoolean); logger.info("consumer projectChanged msg success,{}",aBoolean);

2
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/FactOriginProjectMainDailyService.java

@ -369,7 +369,7 @@ public interface FactOriginProjectMainDailyService extends BaseService<FactOrigi
* @author wangc * @author wangc
* @date 2021.03.04 22:56 * @date 2021.03.04 22:56
*/ */
List<ScreenProjectDataDTO> initNewScreenProjectData(String customerId,Integer rows ,String dateId); List<ScreenProjectDataDTO> initNewScreenProjectData(String customerId,Integer rows ,String dateId, String projectId);
void computerIfExceed(List<ScreenProjectDataDTO> list,Integer exceedLimit,Integer about2exceedLimit); void computerIfExceed(List<ScreenProjectDataDTO> list,Integer exceedLimit,Integer about2exceedLimit);

4
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/todata/impl/FactOriginProjectMainDailyServiceImpl.java

@ -476,8 +476,8 @@ public class FactOriginProjectMainDailyServiceImpl extends BaseServiceImpl<FactO
* @date 2021.03.04 22:56 * @date 2021.03.04 22:56
*/ */
@Override @Override
public List<ScreenProjectDataDTO> initNewScreenProjectData(String customerId,Integer rows , String dateId) { public List<ScreenProjectDataDTO> initNewScreenProjectData(String customerId,Integer rows , String dateId, String projectId) {
List<ScreenProjectDataDTO> projects = baseDao.initNewScreenProjectData(customerId, rows <= NumConstant.ZERO ? "" : dateId, dateId); List<ScreenProjectDataDTO> projects = baseDao.initNewScreenProjectData(customerId, rows <= NumConstant.ZERO ? "" : dateId, dateId, projectId);
projects.forEach(project -> { projects.forEach(project -> {
if (ProjectConstant.CLOSED_CASE.equals(project.getProjectStatusCode())) { if (ProjectConstant.CLOSED_CASE.equals(project.getProjectStatusCode())) {
//绿灯事件-结案项目 //绿灯事件-结案项目

2
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/ScreenExtractService.java

@ -34,6 +34,6 @@ public interface ScreenExtractService {
* @author LiuJanJun * @author LiuJanJun
* @date 2021/4/27 6:12 下午 * @date 2021/4/27 6:12 下午
*/ */
void extractPartData(String customerId, String dateId); void extractPartData(String customerId, String dateId, String projectId);
} }

5
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/ScreenExtractServiceImpl.java

@ -333,7 +333,7 @@ public class ScreenExtractServiceImpl implements ScreenExtractService {
} catch (Exception e) { } catch (Exception e) {
log.error("网格员数据统计fact_grid_member_statistics_daily抽取失败,customerId为:" + customerId + "dateId为:" + dateId, e); log.error("网格员数据统计fact_grid_member_statistics_daily抽取失败,customerId为:" + customerId + "dateId为:" + dateId, e);
} }
extractPartData(customerId, dateId); extractPartData(customerId, dateId, null);
} finally { } finally {
latch.countDown(); latch.countDown();
log.info("extractDaily 4 thread run end ========= dateId:{},customerId:{}", dateId, customerId); log.info("extractDaily 4 thread run end ========= dateId:{},customerId:{}", dateId, customerId);
@ -354,10 +354,11 @@ public class ScreenExtractServiceImpl implements ScreenExtractService {
} }
@Override @Override
public void extractPartData(String customerId, String dateId) { public void extractPartData(String customerId, String dateId, String projectId) {
ScreenCentralZoneDataFormDTO param = new ScreenCentralZoneDataFormDTO(); ScreenCentralZoneDataFormDTO param = new ScreenCentralZoneDataFormDTO();
param.setCustomerId(customerId); param.setCustomerId(customerId);
param.setDateId(dateId); param.setDateId(dateId);
param.setProjectId(projectId);
try { try {
//大屏项目数据抽取_按天抽取 //大屏项目数据抽取_按天抽取

6
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/ScreenProjectSettleServiceImpl.java

@ -74,7 +74,7 @@ public class ScreenProjectSettleServiceImpl implements ScreenProjectSettleServic
int rows = screenProjectDataService.checkIfExisted(param.getCustomerId()); int rows = screenProjectDataService.checkIfExisted(param.getCustomerId());
List<ScreenProjectDataDTO> metaData = List<ScreenProjectDataDTO> metaData =
originMainService.initNewScreenProjectData(param.getCustomerId(), rows , param.getDateId()); originMainService.initNewScreenProjectData(param.getCustomerId(), rows , param.getDateId(), param.getProjectId());
if(!CollectionUtils.isEmpty(metaData)) { if(!CollectionUtils.isEmpty(metaData)) {
// 查询项目信息 // 查询项目信息
@ -135,6 +135,7 @@ public class ScreenProjectSettleServiceImpl implements ScreenProjectSettleServic
ScreenProjectDataDTO orientCase = new ScreenProjectDataDTO(); ScreenProjectDataDTO orientCase = new ScreenProjectDataDTO();
orientCase.setCustomerId(param.getCustomerId()); orientCase.setCustomerId(param.getCustomerId());
orientCase.setProjectId( param.getProjectId());
//待更新的数据 需要检测更新的字段为:①projectStatusCode ②closeCaseTime ③allCategoryName ④projectLevel //待更新的数据 需要检测更新的字段为:①projectStatusCode ②closeCaseTime ③allCategoryName ④projectLevel
List<ScreenProjectDataDTO> orientData = List<ScreenProjectDataDTO> orientData =
screenProjectDataService.getPending(orientCase,param.getDateId()); screenProjectDataService.getPending(orientCase,param.getDateId());
@ -188,7 +189,8 @@ public class ScreenProjectSettleServiceImpl implements ScreenProjectSettleServic
} }
// //
List<ScreenProjectProcessDTO> processes = processService.buildNewScreenProjectProcessData(param.getCustomerId(), param.getDateId(),!screenProjectProcessService.checkIfHistoricalDataExists(param.getCustomerId())); List<ScreenProjectProcessDTO> processes = processService.buildNewScreenProjectProcessData(param.getCustomerId(), param.getDateId(),
!screenProjectProcessService.checkIfHistoricalDataExists(param.getCustomerId()), param.getProjectId());
if(!CollectionUtils.isEmpty(processes)){ if(!CollectionUtils.isEmpty(processes)){
screenProjectProcessService.insertBatch(processes,param.getCustomerId(),param.getDateId()); screenProjectProcessService.insertBatch(processes,param.getCustomerId(),param.getDateId());
List<ScreenProjectProcessAttachmentDTO> attachments = processService.buildProcessAttachmentData(processes.stream().map(ScreenProjectProcessDTO::getProcessId).distinct().collect(Collectors.toList())); List<ScreenProjectProcessAttachmentDTO> attachments = processService.buildProcessAttachmentData(processes.stream().map(ScreenProjectProcessDTO::getProcessId).distinct().collect(Collectors.toList()));

2
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/ProjectProcessService.java

@ -162,7 +162,7 @@ public interface ProjectProcessService extends BaseService<ProjectProcessEntity>
* @author wangc * @author wangc
* @date 2021.03.09 14:49 * @date 2021.03.09 14:49
*/ */
List<ScreenProjectProcessDTO> buildNewScreenProjectProcessData(String customerId,String dateId,boolean ifRanged); List<ScreenProjectProcessDTO> buildNewScreenProjectProcessData(String customerId,String dateId,boolean ifRanged, String projectId);
/** /**
* @Description 构建节点附件数据 * @Description 构建节点附件数据

4
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/project/impl/ProjectProcessServiceImpl.java

@ -183,8 +183,8 @@ public class ProjectProcessServiceImpl extends BaseServiceImpl<ProjectProcessDao
* @date 2021.03.09 14:49 * @date 2021.03.09 14:49
*/ */
@Override @Override
public List<ScreenProjectProcessDTO> buildNewScreenProjectProcessData(String customerId, String dateId, boolean ifRanged) { public List<ScreenProjectProcessDTO> buildNewScreenProjectProcessData(String customerId, String dateId, boolean ifRanged, String projectId) {
List<ScreenProjectProcessDTO> processes = baseDao.selectProjectProcessAndDirection(customerId, ifRanged ? null : dateId, dateId); List<ScreenProjectProcessDTO> processes = baseDao.selectProjectProcessAndDirection(customerId, ifRanged ? null : dateId, dateId, projectId);
if(CollectionUtils.isEmpty(processes)) return null; if(CollectionUtils.isEmpty(processes)) return null;
return processes.stream().map(target -> { return processes.stream().map(target -> {
List<ProjectStaffDTO> points = target.getPoints(); List<ProjectStaffDTO> points = target.getPoints();

3
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/extract/FactOriginProjectMainDailyDao.xml

@ -651,6 +651,9 @@
data.DEL_FLAG = '0' data.DEL_FLAG = '0'
AND AND
data.CUSTOMER_ID = #{customerId} data.CUSTOMER_ID = #{customerId}
<if test="projectId != null and projectId != ''">
AND data.ID = #{projectId}
</if>
<choose> <choose>
<when test='null != dateId and "" != dateId'> <when test='null != dateId and "" != dateId'>
AND data.DATE_ID = #{dateId} AND data.DATE_ID = #{dateId}

3
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/evaluationindex/screen/ScreenProjectDataDao.xml

@ -76,6 +76,9 @@
<if test='null != projectLevel and "" != projectLevel'> <if test='null != projectLevel and "" != projectLevel'>
and project_level = #{projectLevel} and project_level = #{projectLevel}
</if> </if>
<if test='null != projectId and "" != projectId'>
and project_id = #{projectId}
</if>
and data_end_time <![CDATA[<>]]> #{dataEndTime} and data_end_time <![CDATA[<>]]> #{dataEndTime}
</select> </select>

3
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/project/ProjectProcessDao.xml

@ -404,6 +404,9 @@
left join `project_staff` staff on staff.PROCESS_ID = process.ID and staff.DEL_FLAG = '0' left join `project_staff` staff on staff.PROCESS_ID = process.ID and staff.DEL_FLAG = '0'
where process.del_flag = '0' and process.customer_id = #{customerId} where process.del_flag = '0' and process.customer_id = #{customerId}
<if test="projectId != null and projectId != ''">
AND process.project_id = #{projectId}
</if>
<choose> <choose>
<when test='null != dateId and "" != dateId'> <when test='null != dateId and "" != dateId'>
AND DATE_FORMAT(process.created_time, '%Y%m%d') = #{dateId} AND DATE_FORMAT(process.created_time, '%Y%m%d') = #{dateId}

Loading…
Cancel
Save