yinzuomei 4 years ago
parent
commit
10aeedb037
  1. 9
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/AgencyInfoDTO.java
  2. 18
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/ScreenCustomerAgencyCommonDTO.java
  3. 18
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/ScreenCustomerGridCommonDTO.java
  4. 3
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenCustomerAgencyDao.java
  5. 3
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenCustomerGridDao.java
  6. 10
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/plugins/ScreenWorkRecordOrgDailyDao.java
  7. 8
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/AgencyServiceImpl.java
  8. 51
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/plugins/impl/ScreenWorkRecordOrgDailyServiceImpl.java
  9. 13
      epmet-module/data-report/data-report-server/src/main/resources/mapper/plugins/ScreenWorkRecordOrgDailyDao.xml
  10. 5
      epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenCustomerAgencyDao.xml
  11. 5
      epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenCustomerGridDao.xml
  12. 5
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/screen/ScreenCustomerGridDTO.java

9
epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/AgencyInfoDTO.java

@ -13,8 +13,9 @@ import java.util.List;
*/ */
@Data @Data
public class AgencyInfoDTO implements Serializable { public class AgencyInfoDTO implements Serializable {
private String agencyId; private String currentAgencyId;
private String areaCode; private String currentAgencyName;
private List<String> subAgencyIds; private String currentAreaCode;
private List<String> subGridIds; private List<ScreenCustomerAgencyCommonDTO> subAgencies;
private List<ScreenCustomerGridCommonDTO> subGrids;
} }

18
epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/ScreenCustomerAgencyCommonDTO.java

@ -0,0 +1,18 @@
package com.epmet.dto;
import lombok.Data;
import java.io.Serializable;
/**
* screen_customer_agency
*
* @author yinzuomei@elink-cn.com
* @date 2021/7/13 15:31
*/
@Data
public class ScreenCustomerAgencyCommonDTO implements Serializable {
private static final long serialVersionUID = -6222325433226628163L;
private String agencyId;
private String agencyName;
}

18
epmet-module/data-report/data-report-client/src/main/java/com/epmet/dto/ScreenCustomerGridCommonDTO.java

@ -0,0 +1,18 @@
package com.epmet.dto;
import lombok.Data;
import java.io.Serializable;
/**
* screen_customer_grid
*
* @author yinzuomei@elink-cn.com
* @date 2021/7/13 15:32
*/
@Data
public class ScreenCustomerGridCommonDTO implements Serializable {
private static final long serialVersionUID = -4405092094598416917L;
private String gridId;
private String gridName;
}

3
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenCustomerAgencyDao.java

@ -17,6 +17,7 @@
package com.epmet.datareport.dao.evaluationindex.screen; package com.epmet.datareport.dao.evaluationindex.screen;
import com.epmet.dto.ScreenCustomerAgencyCommonDTO;
import com.epmet.dto.result.ScreenCustomerAgencyDTO; import com.epmet.dto.result.ScreenCustomerAgencyDTO;
import com.epmet.dto.result.plugins.AgencyNodeDTO; import com.epmet.dto.result.plugins.AgencyNodeDTO;
import com.epmet.dto.result.plugins.DeptNodeDTO; import com.epmet.dto.result.plugins.DeptNodeDTO;
@ -161,7 +162,7 @@ public interface ScreenCustomerAgencyDao {
**/ **/
List<String> getNextAgencyIds(@Param("areaCode")String areaCode,@Param("agencyId")String agencyId); List<String> getNextAgencyIds(@Param("areaCode")String areaCode,@Param("agencyId")String agencyId);
List<String> selectSubAgencyIds(@Param("areaCode")String areaCode,@Param("agencyId")String agencyId); List<ScreenCustomerAgencyCommonDTO> selectSubAgencyIds(@Param("areaCode")String areaCode, @Param("agencyId")String agencyId);
/** /**
* @Description 根据agencyId查询网格 * @Description 根据agencyId查询网格

3
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenCustomerGridDao.java

@ -17,6 +17,7 @@
package com.epmet.datareport.dao.evaluationindex.screen; package com.epmet.datareport.dao.evaluationindex.screen;
import com.epmet.dto.ScreenCustomerGridCommonDTO;
import com.epmet.evaluationindex.screen.dto.result.*; import com.epmet.evaluationindex.screen.dto.result.*;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
@ -81,5 +82,5 @@ public interface ScreenCustomerGridDao {
*/ */
List<TreeResultDTO> selectGridInfo(@Param("agencyId")String agencyId); List<TreeResultDTO> selectGridInfo(@Param("agencyId")String agencyId);
List<String> selectSubGridIds(@Param("areaCode")String areaCode, @Param("agencyId")String agencyId); List<ScreenCustomerGridCommonDTO> selectSubGridIds(@Param("areaCode")String areaCode, @Param("agencyId")String agencyId);
} }

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

@ -55,15 +55,7 @@ public interface ScreenWorkRecordOrgDailyDao extends BaseDao<ScreenWorkRecordOrg
@Param("customerId")String customerId, @Param("customerId")String customerId,
@Param("dateId")String dateId); @Param("dateId")String dateId);
/** WorkRecordSubRank selectCurrentAgency(@Param("agencyId") String agencyId,
* @param customerIds 当前客户+所有子客户 列表
* @author yinzuomei
* @description 查询最近一次上传的日期
* @Date 2021/2/27 19:31
**/
String selectLatestDateId(@Param("customerIds")List<String> customerIds);
List<WorkRecordSubRank> selectCurrentAgency(@Param("agencyId") String agencyId,
@Param("dateId")String dateId, @Param("dateId")String dateId,
@Param("typeCodeList")List<String> typeCodeList); @Param("typeCodeList")List<String> typeCodeList);

8
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/AgencyServiceImpl.java

@ -316,10 +316,10 @@ public class AgencyServiceImpl implements AgencyService {
@Override @Override
public AgencyInfoDTO getAgencyInfoDTO(String areaCode, String agencyId) { public AgencyInfoDTO getAgencyInfoDTO(String areaCode, String agencyId) {
AgencyInfoDTO agencyInfoDTO=new AgencyInfoDTO(); AgencyInfoDTO agencyInfoDTO=new AgencyInfoDTO();
agencyInfoDTO.setAgencyId(agencyId); agencyInfoDTO.setCurrentAgencyId(agencyId);
agencyInfoDTO.setAreaCode(areaCode); agencyInfoDTO.setCurrentAreaCode(areaCode);
agencyInfoDTO.setSubAgencyIds(screenCustomerAgencyDao.selectSubAgencyIds(areaCode,agencyId)); agencyInfoDTO.setSubAgencies(screenCustomerAgencyDao.selectSubAgencyIds(areaCode,agencyId));
agencyInfoDTO.setSubGridIds(screenCustomerGridDao.selectSubGridIds(areaCode,agencyId)); agencyInfoDTO.setSubGrids(screenCustomerGridDao.selectSubGridIds(areaCode,agencyId));
return agencyInfoDTO; return agencyInfoDTO;
} }
} }

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

@ -33,6 +33,8 @@ import com.epmet.datareport.service.evaluationindex.screen.AgencyService;
import com.epmet.datareport.service.plugins.ScreenWorkRecordOrgDailyService; import com.epmet.datareport.service.plugins.ScreenWorkRecordOrgDailyService;
import com.epmet.datareport.utils.DateUtils; import com.epmet.datareport.utils.DateUtils;
import com.epmet.dto.AgencyInfoDTO; import com.epmet.dto.AgencyInfoDTO;
import com.epmet.dto.ScreenCustomerAgencyCommonDTO;
import com.epmet.dto.ScreenCustomerGridCommonDTO;
import com.epmet.evaluationindex.screen.constant.ScreenConstant; import com.epmet.evaluationindex.screen.constant.ScreenConstant;
import com.epmet.plugins.ScreenWorkRecordOrgDailyDTO; import com.epmet.plugins.ScreenWorkRecordOrgDailyDTO;
import com.epmet.plugins.form.VoluntaryServiceTrendFormDTO; import com.epmet.plugins.form.VoluntaryServiceTrendFormDTO;
@ -107,21 +109,40 @@ public class ScreenWorkRecordOrgDailyServiceImpl extends BaseServiceImpl<ScreenW
List<String> typeCodeList=baseDao.selectCustomerTypeCode(formDTO.getDataType(),formDTO.getCustomerId()); List<String> typeCodeList=baseDao.selectCustomerTypeCode(formDTO.getDataType(),formDTO.getCustomerId());
if(CollectionUtils.isEmpty(typeCodeList)){ if(CollectionUtils.isEmpty(typeCodeList)){
log.warn(String.format("当前customerId=%s,screen_customer_work_record_dict 为空")); log.warn(String.format("当前customerId=%s,screen_customer_work_record_dict 为空"));
return returnDto;
} }
//1)、当前组织的自身的数据 //1)、当前组织的自身的数据
List<WorkRecordSubRank> currentAgency = baseDao.selectCurrentAgency(formDTO.getAgencyId(),dateId,typeCodeList); WorkRecordSubRank currentAgency = baseDao.selectCurrentAgency(formDTO.getAgencyId(),dateId,typeCodeList);
//2)、下级所有组织 //2)、下级所有组织
List<WorkRecordSubRank> subAgencyRankList = new ArrayList<>(); List<WorkRecordSubRank> subAgencyRankList = new ArrayList<>();
for(String agencyId:agencyInfoDTO.getSubAgencyIds()){ for(ScreenCustomerAgencyCommonDTO agencyCommonDTO:agencyInfoDTO.getSubAgencies()){
WorkRecordSubRank agencyRes= baseDao.selectUpToCalAgency(agencyId,dateId,typeCodeList); WorkRecordSubRank agencyRes= baseDao.selectUpToCalAgency(agencyCommonDTO.getAgencyId(),dateId,typeCodeList);
subAgencyRankList.add(agencyRes); if(null !=agencyRes){
subAgencyRankList.add(agencyRes);
}else{
WorkRecordSubRank agencyDefault=new WorkRecordSubRank();
agencyDefault.setOrgId(agencyCommonDTO.getAgencyId());
agencyDefault.setName(agencyCommonDTO.getAgencyName());
agencyDefault.setParticipateTotal(0);
agencyDefault.setParticipateUserTotal(0);
subAgencyRankList.add(agencyDefault);
}
} }
//3)、直属网格 //3)、直属网格
List<WorkRecordSubRank> subGridList=new ArrayList<>(); List<WorkRecordSubRank> subGridList=new ArrayList<>();
for(String gridId:agencyInfoDTO.getSubGridIds()){ for(ScreenCustomerGridCommonDTO gridCommonDTO:agencyInfoDTO.getSubGrids()){
WorkRecordSubRank gridRes=baseDao.selectUpToCalGrid(gridId,dateId,typeCodeList); WorkRecordSubRank gridRes=baseDao.selectUpToCalGrid(gridCommonDTO.getGridId(),dateId,typeCodeList);
subGridList.add(gridRes); if (null != gridRes) {
subGridList.add(gridRes);
} else {
WorkRecordSubRank gridResDefault = new WorkRecordSubRank();
gridResDefault.setOrgId(gridCommonDTO.getGridId());
gridResDefault.setName(gridCommonDTO.getGridName());
gridResDefault.setParticipateTotal(0);
gridResDefault.setParticipateUserTotal(0);
subAgencyRankList.add(gridResDefault);
}
} }
if(CollectionUtils.isNotEmpty(subAgencyRankList)){ if(CollectionUtils.isNotEmpty(subAgencyRankList)){
@ -138,11 +159,9 @@ public class ScreenWorkRecordOrgDailyServiceImpl extends BaseServiceImpl<ScreenW
participateUserTotal += subAgency.getParticipateUserTotal(); participateUserTotal += subAgency.getParticipateUserTotal();
participateTotal += subAgency.getParticipateTotal(); participateTotal += subAgency.getParticipateTotal();
} }
if (CollectionUtils.isNotEmpty(currentAgency)) { if (null != currentAgency) {
for (WorkRecordSubRank m : currentAgency) { participateUserTotal += currentAgency.getParticipateUserTotal();
participateUserTotal += m.getParticipateUserTotal(); participateTotal += currentAgency.getParticipateTotal();
participateTotal += m.getParticipateTotal();
}
} }
returnDto.setParticipateTotal(participateTotal); returnDto.setParticipateTotal(participateTotal);
returnDto.setParticipateUserTotal(participateUserTotal); returnDto.setParticipateUserTotal(participateUserTotal);
@ -226,9 +245,9 @@ public class ScreenWorkRecordOrgDailyServiceImpl extends BaseServiceImpl<ScreenW
AgencyInfoDTO agencyInfoDTO = agencyService.getAgencyInfoDTO(formDTO.getAreaCode(), formDTO.getAgencyId()); AgencyInfoDTO agencyInfoDTO = agencyService.getAgencyInfoDTO(formDTO.getAreaCode(), formDTO.getAgencyId());
List<String> orgIds = new ArrayList<>(); List<String> orgIds = new ArrayList<>();
orgIds.addAll(agencyInfoDTO.getSubAgencyIds()); orgIds.addAll(agencyInfoDTO.getSubAgencies().stream().map(agency->agency.getAgencyId()).collect(Collectors.toSet()));
orgIds.add(agencyInfoDTO.getAgencyId()); orgIds.add(agencyInfoDTO.getCurrentAgencyId());
orgIds.addAll(agencyInfoDTO.getSubGridIds()); orgIds.addAll(agencyInfoDTO.getSubGrids().stream().map(grid->grid.getGridId()).collect(Collectors.toSet()));
List<VoluntaryServiceTrendDTO> list = screenWorkRecordOrgMonthlyDao.selectVoluntaryServiceTrendDTO(formDTO.getCustomerId(), List<VoluntaryServiceTrendDTO> list = screenWorkRecordOrgMonthlyDao.selectVoluntaryServiceTrendDTO(formDTO.getCustomerId(),
orgIds, orgIds,
monthIdList.get(NumConstant.ZERO), monthIdList.get(NumConstant.ZERO),

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

@ -3,19 +3,6 @@
<mapper namespace="com.epmet.datareport.dao.plugins.ScreenWorkRecordOrgDailyDao"> <mapper namespace="com.epmet.datareport.dao.plugins.ScreenWorkRecordOrgDailyDao">
<select id="selectLatestDateId" resultType="java.lang.String" parameterType="map">
SELECT
max( m.DATE_ID ) AS maxDateId
FROM
screen_work_record_org_daily m
WHERE
m.DEL_FLAG = '0'
AND m.CUSTOMER_ID in
<foreach item="customerId" collection="customerIds" open="(" separator="," close=")">
#{customerId}
</foreach>
</select>
<select id="selectSubList" parameterType="map" resultType="com.epmet.plugins.result.WorkRecordSubRank"> <select id="selectSubList" parameterType="map" resultType="com.epmet.plugins.result.WorkRecordSubRank">
SELECT SELECT
sca.AGENCY_ID AS orgId, sca.AGENCY_ID AS orgId,

5
epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenCustomerAgencyDao.xml

@ -304,9 +304,10 @@
</choose> </choose>
</select> </select>
<select id="selectSubAgencyIds" parameterType="map" resultType="java.lang.String"> <select id="selectSubAgencyIds" parameterType="map" resultType="com.epmet.dto.ScreenCustomerAgencyCommonDTO">
SELECT SELECT
sca.AGENCY_ID as orgId sca.AGENCY_ID as agencyId,
sca.AGENCY_NAME as agencyName
FROM FROM
screen_customer_agency sca screen_customer_agency sca
WHERE WHERE

5
epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenCustomerGridDao.xml

@ -122,9 +122,10 @@
GROUP BY scg.PARENT_AGENCY_ID GROUP BY scg.PARENT_AGENCY_ID
</select> </select>
<select id="selectSubGridIds" parameterType="map" resultType="java.lang.String"> <select id="selectSubGridIds" parameterType="map" resultType="com.epmet.dto.ScreenCustomerGridCommonDTO">
SELECT SELECT
m.GRID_ID as orgId m.GRID_ID as gridId,
m.grid_name as gridName
FROM FROM
screen_customer_grid m screen_customer_grid m
where m.DEL_FLAG = '0' where m.DEL_FLAG = '0'

5
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/screen/ScreenCustomerGridDTO.java

@ -15,11 +15,12 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>. * along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
package com.epmet.dto; package com.epmet.dto.screen;
import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import lombok.Data;
/** /**

Loading…
Cancel
Save