Browse Source

代码暂存

dev_shibei_match
jianjun 5 years ago
parent
commit
8f33f6dc70
  1. 5
      epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/screencoll/form/UserJoinFormDTO.java
  2. 4
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/evaluationindex/screen/ScreenUserJoinEntity.java
  3. 13
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/extract/toscreen/impl/PublicPartExtractServiceImpl.java
  4. 53
      epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/impl/ShiBeiScreenCollServiceImpl.java
  5. BIN
      epmet-module/data-statistical/data-statistical-server/src/test/java/resources/评价指标体系算法需求-备注.xlsx

5
epmet-module/data-statistical/data-statistical-client/src/main/java/com/epmet/dto/screencoll/form/UserJoinFormDTO.java

@ -3,6 +3,7 @@ package com.epmet.dto.screencoll.form;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
/**
* 11基层治理-公众参与 入参
@ -47,7 +48,7 @@ public class UserJoinFormDTO implements Serializable {
/**
* 人均议题
*/
private Integer avgIssue;
private BigDecimal avgIssue;
/**
* 总的参与次数
@ -57,5 +58,5 @@ public class UserJoinFormDTO implements Serializable {
/**
* 平均参与度
*/
private Integer avgJoin;
private BigDecimal avgJoin;
}

4
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/entity/evaluationindex/screen/ScreenUserJoinEntity.java

@ -90,7 +90,7 @@ public class ScreenUserJoinEntity extends BaseEpmetEntity {
/**
* 人均议题
*/
private Integer avgIssue;
private BigDecimal avgIssue;
/**
* 人均议题较上月增长率(采集的时候后台自己计算)
@ -105,7 +105,7 @@ public class ScreenUserJoinEntity extends BaseEpmetEntity {
/**
* 平均参与度
*/
private Integer avgJoin;
private BigDecimal avgJoin;
/**
* 平均参与度较上月增长率(采集的时候后台自己计算)

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

@ -53,7 +53,7 @@ public class PublicPartExtractServiceImpl implements PublicPartExtractService {
/**
* desc: 抽取公众参与 人均议题 总次数和平均参与度
* targetscreen_user_join
* 总参与统计周期内议题表决的人数
* 总参与统计周期内议题表决(虽然可以评价 但是只有表决的人可以评价 所以按表决人数算)的人数
* 百人人均议题统计周期内总的议题数/注册用户数/100
* 百人平均参与度每个议题的实际参与数/应参与数 的平均值每个议题的实际参与数/应参与数的和/被表决的议题数
* 不考虑市北人均议题统计周期内议题总数/发过议题的人数 参与度各个行为(表决)的总数/发生行为的人数
@ -102,7 +102,12 @@ public class PublicPartExtractServiceImpl implements PublicPartExtractService {
//百人人均议题:统计周期内总的议题数/(注册用户数/100)
BigDecimal avgIssueCount = new BigDecimal(issue.getIssueIncr()).divide(new BigDecimal(user.getUserCount()).divide(new BigDecimal(NumConstant.ONE_HUNDRED)));
// 需要修改字段类型
//entity.setAvgIssue(avgIssueCount);
entity.setAvgIssue(avgIssueCount);
//百人平均参与度:每个议题的实际参与数/应参与数 的平均值:(每个议题的实际参与数/应参与数)的和)/被表决的议题数
entity.setAvgJoin(new BigDecimal(0));
});
@ -144,10 +149,10 @@ public class PublicPartExtractServiceImpl implements PublicPartExtractService {
entity.setJoinTotal(0);
entity.setJoinTotalUpRate(new BigDecimal("0"));
entity.setJoinTotalUpFlag("");
entity.setAvgIssue(0);
entity.setAvgIssue(new BigDecimal(0));
entity.setAvgIssueUpRate(new BigDecimal("0"));
entity.setAvgIssueUpFlag("");
entity.setAvgJoin(0);
entity.setAvgJoin(new BigDecimal(0));
entity.setAgvgJoinUpRate(new BigDecimal("0"));
entity.setAgvgJoinUpFlag("");
result.put(entity.getOrgId(), entity);

53
epmet-module/data-statistical/data-statistical-server/src/main/java/com/epmet/service/evaluationindex/screen/impl/ShiBeiScreenCollServiceImpl.java

@ -413,15 +413,54 @@ public class ShiBeiScreenCollServiceImpl implements ShiBeiScreenCollService {
* @Author zhangyong
* @Date 15:38 2020-08-21
**/
private BigDecimal calculateGrowthRateNumber(Integer old, Integer now){
if (NumConstant.ZERO == old){
private BigDecimal calculateGrowthRateNumber(Integer old, Integer now) {
if (NumConstant.ZERO == old) {
return new BigDecimal(now * NumConstant.ONE_HUNDRED);
}
BigDecimal bignum1 = new BigDecimal((now - old) * NumConstant.ONE_HUNDRED);
BigDecimal bignum2 = bignum1.divide(new BigDecimal(old),2,BigDecimal.ROUND_HALF_UP);
BigDecimal bignum2 = bignum1.divide(new BigDecimal(old), 2, BigDecimal.ROUND_HALF_UP);
return bignum2;
}
/**
* 计算 本月数值 相较于 上月数值的增长率
*
* @param old 上月数值
* @param now 本月数值
* @return java.math.BigDecimal
* @Author zhangyong
* @Date 15:38 2020-08-21
**/
private BigDecimal calculateGrowthRateNumber(BigDecimal old, BigDecimal now) {
BigDecimal oneHundred = new BigDecimal(NumConstant.ONE_HUNDRED);
if (old.compareTo(new BigDecimal(NumConstant.ZERO)) == NumConstant.ZERO) {
return now.multiply(oneHundred);
}
BigDecimal bignum1 = now.subtract(old).multiply(oneHundred);
BigDecimal bignum2 = bignum1.divide(old, 2, BigDecimal.ROUND_HALF_UP);
return bignum2;
}
/**
* 计算 本月数值 相较于 上月数值的增长率 得出标识
*
* @param old 上月数值
* @param now 本月数值
* @return java.util.String
* @Author zhangyong
* @Date 15:38 2020-08-21
**/
private String calculateGrowthRateFlag(Integer old, Integer now) {
if (old > now) {
return CompareConstant.DECR_STR;
} else if (old < now) {
return CompareConstant.INCR_STR;
} else {
return CompareConstant.EQ_STR;
}
}
/**
* 计算 本月数值 相较于 上月数值的增长率 得出标识
*
@ -431,10 +470,10 @@ public class ShiBeiScreenCollServiceImpl implements ShiBeiScreenCollService {
* @Author zhangyong
* @Date 15:38 2020-08-21
**/
private String calculateGrowthRateFlag(Integer old, Integer now){
if (old > now){
private String calculateGrowthRateFlag(BigDecimal old, BigDecimal now) {
if (old.compareTo(now) == 1) {
return CompareConstant.DECR_STR;
} else if (old < now){
} else if (old.compareTo(now) == -1) {
return CompareConstant.INCR_STR;
} else {
return CompareConstant.EQ_STR;
@ -448,7 +487,7 @@ public class ShiBeiScreenCollServiceImpl implements ShiBeiScreenCollService {
if (formDTO.getIsFirst()) {
int deleteNum;
do {
deleteNum = screenPioneerDataDao.deletePioneerDataByCustomerId(customerId,IndexCalConstant.DELETE_SIZE);
deleteNum = screenPioneerDataDao.deletePioneerDataByCustomerId(customerId, IndexCalConstant.DELETE_SIZE);
} while (deleteNum != NumConstant.ZERO);
}
if (!CollectionUtils.isEmpty(formDTO.getDataList())) {

BIN
epmet-module/data-statistical/data-statistical-server/src/test/java/resources/评价指标体系算法需求-备注.xlsx

Binary file not shown.
Loading…
Cancel
Save