Browse Source

工作日志采集接口添加orgName

master
yinzuomei 5 years ago
parent
commit
c799f07949
  1. 5
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/plugins/ScreenWorkRecordOrgDailyDTO.java
  2. 5
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/plugins/ScreenWorkRecordOrgMonthlyDTO.java
  3. 2
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/plugins/result/WorkRecordRankResultDTO.java
  4. 3
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/plugins/WorkRecordController.java
  5. 6
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/plugins/ScreenWorkRecordOrgDailyDao.java
  6. 5
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/entity/plugins/ScreenWorkRecordOrgDailyEntity.java
  7. 5
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/entity/plugins/ScreenWorkRecordOrgMonthlyEntity.java
  8. 25
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/plugins/impl/ScreenWorkRecordOrgDailyServiceImpl.java
  9. 41
      epmet-module/data-report/data-report-server/src/main/resources/mapper/plugins/ScreenWorkRecordOrgDailyDao.xml
  10. 7
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/plugins/ScreenWorkRecordCommonFormDTO.java
  11. 1
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateServiceImpl.java
  12. 2
      epmet-module/data-statistical/data-statistical-server/src/main/resources/db/migration/V0.0.8__add_plugins_table.sql
  13. 2
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/plugins/ScreenWorkRecordOrgDailyDao.xml
  14. 3
      epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/plugins/ScreenWorkRecordOrgMonthlyDao.xml

5
epmet-module/data-report/data-report-client/src/main/java/com/epmet/plugins/ScreenWorkRecordOrgDailyDTO.java

@ -54,6 +54,11 @@ public class ScreenWorkRecordOrgDailyDTO implements Serializable {
*/
private String orgId;
/**
* 组织名称或者网格名
*/
private String orgName;
/**
* 会议类型编码对应screen_customer_work_record_dict的资源编码
*/

5
epmet-module/data-report/data-report-client/src/main/java/com/epmet/plugins/ScreenWorkRecordOrgMonthlyDTO.java

@ -54,6 +54,11 @@ public class ScreenWorkRecordOrgMonthlyDTO implements Serializable {
*/
private String orgId;
/**
* 组织名称或者网格名
*/
private String orgName;
/**
* 会议类型编码对应screen_customer_work_record_dict的资源编码
*/

2
epmet-module/data-report/data-report-client/src/main/java/com/epmet/plugins/result/WorkRecordRankResultDTO.java

@ -1,5 +1,6 @@
package com.epmet.plugins.result;
import lombok.AllArgsConstructor;
import lombok.Data;
import java.io.Serializable;
@ -11,6 +12,7 @@ import java.util.List;
* @author yinzuomei@elink-cn.com
* @date 2021/2/23 23:11
*/
@AllArgsConstructor
@Data
public class WorkRecordRankResultDTO implements Serializable {
/**

3
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/plugins/WorkRecordController.java

@ -19,7 +19,7 @@ import org.springframework.web.bind.annotation.*;
public class WorkRecordController {
@Autowired
private ScreenWorkRecordOrgDailyService screenWorkRecordOrgDailyService;
//todo
//todo 工作日志是否要添加area_code、parent_area_code、orgType;插件是否可以提供;也可以采集的时候赋值
//5、【工作日志】本机及下级排名
//NEI接口地址:https://nei.netease.com/interface/detail/?pid=57068&id=348966
//返参中的当前组织的参与人数、组织次数 直接sum所有下级的值;
@ -36,4 +36,5 @@ public class WorkRecordController {
//6、【工作日志】近12月趋势图
//NEI接口地址:https://nei.netease.com/interface/detail/?pid=57068&id=348967
//可以下级组织+下级网格 orgId 直接 in
}

6
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/plugins/ScreenWorkRecordOrgDailyDao.java

@ -19,6 +19,7 @@ package com.epmet.datareport.dao.plugins;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.datareport.entity.plugins.ScreenWorkRecordOrgDailyEntity;
import com.epmet.plugins.result.WorkRecordRankResultDTO;
import com.epmet.plugins.result.WorkRecordSubRank;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -43,9 +44,14 @@ public interface ScreenWorkRecordOrgDailyDao extends BaseDao<ScreenWorkRecordOrg
* @Date 2021/2/23 23:37
**/
List<WorkRecordSubRank> selectSubList(@Param("areaCode") String areaCode,
@Param("agencyId") String agencyId,
@Param("dataType") String dataType,
@Param("topRow") Integer topRow,
@Param("dateId")String dateId);
String selectLatestDateId(String customerId);
WorkRecordRankResultDTO selectCurrentAgency(@Param("areaCode") String areaCode,
@Param("dataType") String dataType,
@Param("dateId")String dateId);
}

5
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/entity/plugins/ScreenWorkRecordOrgDailyEntity.java

@ -50,6 +50,11 @@ public class ScreenWorkRecordOrgDailyEntity extends BaseEpmetEntity {
*/
private String orgId;
/**
* 组织名称或者网格名
*/
private String orgName;
/**
* 会议类型编码对应screen_customer_work_record_dict的资源编码
*/

5
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/entity/plugins/ScreenWorkRecordOrgMonthlyEntity.java

@ -50,6 +50,11 @@ public class ScreenWorkRecordOrgMonthlyEntity extends BaseEpmetEntity {
*/
private String orgId;
/**
* 组织名称或者网格名
*/
private String orgName;
/**
* 会议类型编码对应screen_customer_work_record_dict的资源编码
*/

25
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/plugins/impl/ScreenWorkRecordOrgDailyServiceImpl.java

@ -38,6 +38,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
@ -108,15 +109,23 @@ public class ScreenWorkRecordOrgDailyServiceImpl extends BaseServiceImpl<ScreenW
@Override
public WorkRecordRankResultDTO rankList(WorkRecordRankFormDTO formDTO) {
ScreenCustomerAgencyDTO agencyDTO=agencyService.queryAgencyInfo(formDTO.getAgencyId());
if(null==agencyDTO){
throw new RenException(String.format("获取组织信息异常,agencyId:%s",formDTO.getAgencyId()));
////todo 待完善 直属网格是否显示?
ScreenCustomerAgencyDTO agencyDTO = agencyService.queryAgencyInfo(formDTO.getAgencyId());
if (null == agencyDTO) {
throw new RenException(String.format("获取组织信息异常,agencyId:%s", formDTO.getAgencyId()));
}
String dateId = baseDao.selectLatestDateId(formDTO.getCustomerId());
log.info(String.format("最近一次上传dateId:%s", dateId));
if (agencyDTO.getLevel().equals("community")) {
log.warn("【工作日志】本机及下级排名接口待完善");
//todo
return new WorkRecordRankResultDTO(0, 0, new ArrayList<>());
} else {
//非社区的
WorkRecordRankResultDTO resultDTO = baseDao.selectCurrentAgency(agencyDTO.getAreaCode(), formDTO.getDataType(), dateId);
resultDTO.setSubRankList(baseDao.selectSubList(agencyDTO.getAreaCode(), agencyDTO.getAgencyId(), formDTO.getDataType(), formDTO.getTopRow(), dateId));
return resultDTO;
}
WorkRecordRankResultDTO resultDTO=new WorkRecordRankResultDTO();
String dateId=baseDao.selectLatestDateId(formDTO.getCustomerId());
resultDTO.setSubRankList(baseDao.selectSubList(agencyDTO.getAreaCode(),formDTO.getDataType(),formDTO.getTopRow(),dateId));
//todo 待完善
return resultDTO;
}
}

41
epmet-module/data-report/data-report-server/src/main/resources/mapper/plugins/ScreenWorkRecordOrgDailyDao.xml

@ -12,21 +12,42 @@
m.DEL_FLAG = '0'
AND m.CUSTOMER_ID = #{customerId}
</select>
<!-- 按照area_code查询当前组织的下级对应的数值,不包含本级 -->
<select id="selectSubList" parameterType="map" resultType="com.epmet.plugins.result.WorkRecordSubRank">
SELECT
sca.AGENCY_ID as orgId,
sca.AGENCY_NAME as `NAME`,
IFNULL(sum(m.PARTICIPATE_USER_TOTAL),0) as participateUserTotal,
IFNULL(sum(m.ORGANIZE_TOTAL) ,0)as participateTotal
sca.AGENCY_ID AS orgId,
sca.AGENCY_NAME AS `NAME`,
IFNULL( sum( m.PARTICIPATE_USER_TOTAL ), 0 ) AS participateUserTotal,
IFNULL( sum( m.ORGANIZE_TOTAL ), 0 ) AS participateTotal
FROM
screen_customer_agency sca
LEFT JOIN screen_work_record_org_daily m ON ( sca.AGENCY_ID = m.ORG_ID AND m.DEL_FLAG = '0' and m.DATE_ID=#{dateId})
left join screen_customer_work_record_dict dict on(m.TYPE_CODE=dict.RESOURCE_CODE and dict.DEL_FLAG='0')
LEFT JOIN screen_work_record_org_daily m ON ( sca.AGENCY_ID = m.ORG_ID AND m.DEL_FLAG = '0' AND m.DATE_ID = #{dateId} )
LEFT JOIN screen_customer_work_record_dict dict ON ( m.TYPE_CODE = dict.RESOURCE_CODE AND dict.DEL_FLAG = '0' AND dict.DATA_TYPE = #{dataType} )
WHERE
sca.DEL_FLAG = '0'
AND sca.PARENT_AREA_CODE = #{areaCode}
and dict.DATA_TYPE=#{dataType}
group by sca.AGENCY_ID,sca.AGENCY_NAME
order by participateUserTotal desc,participateTotal desc limit #{topRow}
AND sca.PARENT_AREA_CODE like concat( #{areaCode},'%')
and sca.AGENCY_ID !=#{agencyId}
GROUP BY
sca.AGENCY_ID,
sca.AGENCY_NAME
ORDER BY
participateUserTotal DESC,
participateTotal DESC
LIMIT #{topRow}
</select>
<select id="selectCurrentAgency" parameterType="map" resultType="com.epmet.plugins.result.WorkRecordRankResultDTO">
SELECT
IFNULL( sum( m.PARTICIPATE_USER_TOTAL ), 0 ) AS participateUserTotal,
IFNULL( sum( m.ORGANIZE_TOTAL ), 0 ) AS participateTotal
FROM
screen_customer_agency sca
inner JOIN screen_work_record_org_daily m ON ( sca.AGENCY_ID = m.ORG_ID AND m.DEL_FLAG = '0' AND m.DATE_ID = #{dateId} )
inner JOIN screen_customer_work_record_dict dict ON ( m.TYPE_CODE = dict.RESOURCE_CODE AND dict.DEL_FLAG = '0' AND dict.DATA_TYPE = #{dataType} )
WHERE
sca.DEL_FLAG = '0'
AND sca.PARENT_AREA_CODE like concat( #{areaCode},'%')
</select>
</mapper>

7
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/plugins/ScreenWorkRecordCommonFormDTO.java

@ -15,10 +15,15 @@ public class ScreenWorkRecordCommonFormDTO implements Serializable {
private static final long serialVersionUID = 819322082786098071L;
/**
* 组织Id
* 组织Id或者网格id
*/
private String orgId;
/**
* 组织名称或者网格名
*/
private String orgName;
/**
* 会议类型编码对应screen_customer_work_record_dict的资源编码
*/

1
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/indexcal/impl/IndexCalculateServiceImpl.java

@ -94,6 +94,7 @@ public class IndexCalculateServiceImpl implements IndexCalculateService {
return flag;
} catch (Exception e) {
e.printStackTrace();
log.warn("indexCalculate exception:{}",e);
log.error("indexCalculate exception,param:{}", JSON.toJSONString(formDTO));
} finally {
//清除缓存

2
epmet-module/data-statistical/data-statistical-server/src/main/resources/db/migration/V0.0.8__add_plugins_table.sql

@ -94,6 +94,7 @@ CREATE TABLE `screen_work_record_org_monthly` (
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户Id',
`MONTH_ID` varchar(32) NOT NULL COMMENT '月份Id:yyyyMM',
`ORG_ID` varchar(64) NOT NULL COMMENT '组织Idor网格id',
`ORG_NAME` varchar(255) DEFAULT NULL COMMENT '组织名或网格名',
`MEETING_CODE` varchar(255) DEFAULT NULL COMMENT '会议类型编码;对应screen_customer_work_record_dict的资源编码',
`TYPE_CODE` varchar(255) NOT NULL COMMENT '随手记类型编码;对应screen_customer_work_record_dict的资源编码',
`ORGANIZE_TOTAL` int(11) NOT NULL COMMENT '组织次数',
@ -115,6 +116,7 @@ CREATE TABLE `screen_work_record_org_daily` (
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户Id',
`DATE_ID` varchar(8) NOT NULL COMMENT '日期Id:yyyyMMdd',
`ORG_ID` varchar(64) NOT NULL COMMENT '组织Idor网格id',
`ORG_NAME` varchar(255) DEFAULT NULL COMMENT '组织名或网格名',
`MEETING_CODE` varchar(255) DEFAULT NULL COMMENT '会议类型编码;对应screen_customer_work_record_dict的资源编码',
`TYPE_CODE` varchar(255) NOT NULL COMMENT '随手记类型编码;对应screen_customer_work_record_dict的资源编码',
`ORGANIZE_TOTAL` int(11) NOT NULL COMMENT '组织次数',

2
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/plugins/ScreenWorkRecordOrgDailyDao.xml

@ -17,6 +17,7 @@
customer_id,
DATE_ID,
org_id,
org_name,
meeting_code,
type_code,
organize_total,
@ -35,6 +36,7 @@
#{customerId},
#{dateId},
#{item.orgId},
#{item.orgName},
#{item.meetingCode},
#{item.typeCode},
#{item.organizeTotal},

3
epmet-module/data-statistical/data-statistical-server/src/main/resources/mapper/plugins/ScreenWorkRecordOrgMonthlyDao.xml

@ -29,6 +29,7 @@
customer_id,
month_id,
org_id,
org_name,
meeting_code,
type_code,
organize_total,
@ -50,7 +51,7 @@
#{monthId},
#{item.orgId},
#{item.orgName},
#{item.meetingCode},
#{item.typeCode},

Loading…
Cancel
Save