Browse Source

下级组织单项指数得分排行接口

dev_shibei_match
jianjun 5 years ago
parent
commit
da79a716d3
  1. 2
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/CommonOperateTypeEnum.java
  2. 37
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/screen/dto/form/SubSingleIndexRankFormDTO.java
  3. 3
      epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/screen/dto/result/PeerComparisonResultDTO.java
  4. 18
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/IndexController.java
  5. 9
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/dao/evaluationindex/screen/ScreenIndexDataMonthlyDao.java
  6. 12
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/IndexService.java
  7. 20
      epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/impl/IndexServiceImpl.java
  8. 47
      epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenIndexDataMonthlyDao.xml

2
epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/enums/CommonOperateTypeEnum.java

@ -11,6 +11,8 @@ public enum CommonOperateTypeEnum {
ADD("add", "添加"),
EDIT("edit", "编辑"),
DEL("del", "删除"),
DESC("DESC", "降序"),
ASC("ASC", "升序"),
;
private String code;

37
epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/screen/dto/form/SubSingleIndexRankFormDTO.java

@ -0,0 +1,37 @@
package com.epmet.evaluationindex.screen.dto.form;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* desc:下级组织单项排行分数 form
*
* @DateTime 2020/8/20 9:54 上午
*/
@Data
public class SubSingleIndexRankFormDTO implements Serializable {
private static final long serialVersionUID = -2920561669035794486L;
@NotBlank(message = "客户ID不能为空")
private String customerId;
/**
* 机关ID
*/
@NotBlank(message = "机关ID不能为空")
private String agencyId;
@NotBlank(message = "指标code不能为空")
private String indexCode;
/**
* 默认查询前几名
*/
private Integer topNum;
private String monthId;
private String orgType;
private String sort;
}

3
epmet-module/data-report/data-report-client/src/main/java/com/epmet/evaluationindex/screen/dto/result/PeerComparisonResultDTO.java

@ -5,7 +5,8 @@ import lombok.Data;
import java.io.Serializable;
/**
* 同级对比各项数据查询--接口返参
* 同级对比(下级单项指数排行)各项数据查询--接口返参
*
* @Author sun
*/
@Data

18
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/controller/screen/IndexController.java

@ -1,7 +1,5 @@
package com.epmet.datareport.controller.screen;
import com.epmet.commons.tools.annotation.LoginUser;
import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.datareport.eum.OrgTypeEnum;
@ -88,6 +86,22 @@ public class IndexController {
return new Result<List<AnNingSubAgencyIndexRankResultDTO>>().ok(indexService.getSubAgencyIndexRank(formDTO));
}
/**
* desc: 下级组织单项指数得分排行
*
* @param customerId
* @param formDTO
* @return com.epmet.commons.tools.utils.Result<java.util.List < com.epmet.evaluationindex.screen.dto.result.PeerComparisonResultDTO>>
* @author LiuJanJun
* @date 2020/10/22 1:49 下午
*/
@PostMapping("subsingleindexrank")
public Result<List<PeerComparisonResultDTO>> getSubSingleIndexRank(@RequestHeader("CustomerId") String customerId, @RequestBody SubSingleIndexRankFormDTO formDTO) {
formDTO.setCustomerId(customerId);
ValidatorUtils.validateEntity(formDTO);
return new Result<List<PeerComparisonResultDTO>>().ok(indexService.getSubSingleIndexRank(formDTO));
}
/**
* @param formDTO
* @Description 4获取该客户下所有网格指标排行

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

@ -91,8 +91,15 @@ public interface ScreenIndexDataMonthlyDao{
/**
* @param formDTO
* @Description 先进排行-先进支部排行
* @Description 先进排行-先进支部排行
* @author sun
*/
List<IndexAdvanceBranchRankResultDTO> selectRankList(AdvancedBranchRankFormDTO formDTO);
/**
* @param formDTO
* @Description 下级单项指标得分排行
* @author sun
*/
List<PeerComparisonResultDTO> getSingleIndexRank(SubSingleIndexRankFormDTO formDTO);
}

12
epmet-module/data-report/data-report-server/src/main/java/com/epmet/datareport/service/evaluationindex/screen/IndexService.java

@ -72,8 +72,18 @@ public interface IndexService {
/**
* @param formDTO
* @Description 先进排行-先进支部排行
* @Description 先进排行-先进支部排行
* @author sun
*/
List<IndexAdvanceBranchRankResultDTO> advancedBranchRank(AdvancedBranchRankFormDTO formDTO);
/**
* desc:下级单项指数排行
*
* @param formDTO
* @return java.util.List<com.epmet.evaluationindex.screen.dto.result.PeerComparisonResultDTO>
* @author LiuJanJun
* @date 2020/10/22 10:58 上午
*/
List<PeerComparisonResultDTO> getSubSingleIndexRank(SubSingleIndexRankFormDTO formDTO);
}

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

@ -2,6 +2,7 @@ package com.epmet.datareport.service.evaluationindex.screen.impl;
import com.epmet.commons.dynamic.datasource.annotation.DataSource;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.enums.CommonOperateTypeEnum;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.constant.DataSourceConstant;
import com.epmet.datareport.dao.evaluationindex.screen.ScreenIndexDataMonthlyDao;
@ -11,18 +12,15 @@ import com.epmet.evaluationindex.screen.constant.ScreenConstant;
import com.epmet.evaluationindex.screen.dto.form.*;
import com.epmet.evaluationindex.screen.dto.result.*;
import org.apache.commons.lang3.StringUtils;
import org.jsoup.helper.DataUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import org.springframework.util.unit.DataUnit;
import java.math.BigDecimal;
import java.text.NumberFormat;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
@ -328,4 +326,20 @@ public class IndexServiceImpl implements IndexService {
return list;
}
@Override
@DataSource(value = DataSourceConstant.EVALUATION_INDEX, datasourceNameFromArg = true)
public List<PeerComparisonResultDTO> getSubSingleIndexRank(SubSingleIndexRankFormDTO formDTO) {
if (StringUtils.isBlank(formDTO.getMonthId())) {
formDTO.setMonthId(DateUtils.getBeforeNMonth(1));
}
if (StringUtils.isBlank(formDTO.getSort())) {
formDTO.setSort(CommonOperateTypeEnum.DESC.getCode());
}
if (formDTO.getTopNum() == null) {
formDTO.setTopNum(NumConstant.FIVE);
}
List<PeerComparisonResultDTO> list = screenIndexDataMonthlyDao.getSingleIndexRank(formDTO);
return list;
}
}

47
epmet-module/data-report/data-report-server/src/main/resources/mapper/screen/ScreenIndexDataMonthlyDao.xml

@ -205,4 +205,51 @@
LIMIT #{topNum}
</select>
<select id="getSingleIndexRank" resultType="com.epmet.evaluationindex.screen.dto.result.PeerComparisonResultDTO">
SELECT
ORG_ID,
ORG_NAME,
<choose>
<when test="indexCode == 'dangjiannengli'">
round(party_dev_ablity,1) as score
</when>
<when test="indexCode == 'zhilinengli'">
round(govern_ablity,1) as score
</when>
<when test="indexCode == 'fuwunengli'">
round(service_ablity,1) as score
</when>
</choose>
FROM
screen_index_data_monthly
WHERE
del_flag = '0'
<if test="customerId != null and customerId != ''">
AND CUSTOMER_ID = #{customerId,jdbcType=VARCHAR}
</if>
AND PARENT_ID = #{agencyId,jdbcType=VARCHAR}
AND MONTH_ID = #{monthId,jdbcType=VARCHAR}
<choose>
<when test="orgType != null and orgType != ''">
AND ORG_TYPE = #{orgType,jdbcType=VARCHAR}
</when>
<otherwise>
AND ORG_TYPE != 'department'
</otherwise>
</choose>
ORDER BY
<choose>
<when test="indexCode == 'dangjiannengli'">
party_dev_ablity
</when>
<when test="indexCode == 'zhilinengli'">
govern_ablity
</when>
<when test="indexCode == 'fuwunengli'">
service_ablity
</when>
</choose>
${sort}
LIMIT #{topNum}
</select>
</mapper>

Loading…
Cancel
Save