From 950264a579736c1c51f1efe4baf0ac1476d5748c Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期一, 02 十二月 2024 11:06:46 +0800 Subject: [PATCH] bug修改 --- finance-system/src/main/resources/mapper/system/RegionMapper.xml | 17 ++ finance-system/src/main/java/com/finance/system/vo/RegionVo.java | 27 ++++ finance-system/src/main/java/com/finance/system/mapper/RegionMapper.java | 22 +++ finance-system/src/main/java/com/finance/system/service/impl/SysUserServiceImpl.java | 16 ++ finance-system/src/main/java/com/finance/system/service/impl/TbScoreServiceImpl.java | 5 finance-system/src/main/java/com/finance/system/service/TbQuestionService.java | 2 finance-system/src/main/java/com/finance/system/service/impl/TbQuestionServiceImpl.java | 5 finance-system/src/main/java/com/finance/system/service/impl/RegionServiceImpl.java | 24 ++++ finance-system/src/main/java/com/finance/system/service/impl/AsyncServiceImpl.java | 66 ++++++---- finance-system/src/main/java/com/finance/system/vo/ScoreRateDataVO.java | 5 finance-system/src/main/resources/mapper/system/TbScoreMapper.xml | 16 -- finance-admin/src/main/java/com/finance/web/controller/service/ScreenService.java | 31 +++- finance-system/src/main/java/com/finance/system/domain/Region.java | 54 +++++++++ finance-system/src/main/java/com/finance/system/vo/DeptVO.java | 3 finance-system/src/main/java/com/finance/system/service/IRegionService.java | 17 ++ 15 files changed, 253 insertions(+), 57 deletions(-) diff --git a/finance-admin/src/main/java/com/finance/web/controller/service/ScreenService.java b/finance-admin/src/main/java/com/finance/web/controller/service/ScreenService.java index 19e252a..2b63466 100644 --- a/finance-admin/src/main/java/com/finance/web/controller/service/ScreenService.java +++ b/finance-admin/src/main/java/com/finance/web/controller/service/ScreenService.java @@ -121,7 +121,7 @@ ScoreRankVO scoreRankVO = tbScoreService.queryRankAndScoreByAreaCode("510000"); riskAndTransferVO.setScoreRankVO(scoreRankVO); String previousQuarter = DateUtils.getPreviousQuarter(); - // previousQuarter = "2024年一季度"; + // previousQuarter = "2024年二季度"; // 查询转移支付规模总额 List<TbBasicData> list = tbBasicDataService.lambdaQuery() .select(TbBasicData::getTransferPaymentScale) @@ -241,10 +241,10 @@ public List<RiskRankingVO> riskRanking() throws Exception { DataScreenConfigVO riskLevel = tbDataScreenConfigService.getRiskLevel(); List<RiskLevelVO> riskLevelVOList = formatRiskLevel(riskLevel); + String previousQuarter = DateUtils.getPreviousQuarter(); + // previousQuarter = "2024年二季度"; List<RiskRankingVO> voList = tbScoreService.queryRiskRanking( - DateUtils.getPreviousQuarter()); - // List<RiskRankingVO> voList = tbScoreService.queryRiskRanking( - // "2024年一季度"); + previousQuarter); int rank = 1; for (RiskRankingVO riskRankingVO : voList) { riskRankingVO.setRank(rank++); @@ -268,7 +268,7 @@ public List<QuestionVO> queryQuestions() throws Exception { String previousQuarter = DateUtils.getPreviousQuarter(); - // previousQuarter = "2024年一季度"; + // previousQuarter = "2024年二季度"; List<TbQuestion> list = tbQuestionService.lambdaQuery() .eq(TbQuestion::getQuarter, previousQuarter).list(); return BeanUtils.copyList(list, QuestionVO.class); @@ -284,7 +284,7 @@ dataAnalysisVO.setRank(scoreRankVO.getRank()); dataAnalysisVO.setScore(scoreRankVO.getScore()); String previousQuarter = DateUtils.getPreviousQuarter(); - // previousQuarter = "2024年一季度"; + // previousQuarter = "2024年二季度"; // 查询问题 List<TbQuestion> list = tbQuestionService.lambdaQuery() .eq(TbQuestion::getQuarter, previousQuarter) @@ -365,6 +365,7 @@ scoreRateDataVO.setScore(0D); scoreRateDataVO.setSubType(SubTypeEnum.getEnumByCode(i + 1)); scoreRateDataVO.setScoreRate(0D); + scoreRateDataVO.setMaxScore(0D); } else { Double indicatorOne = getLevelThreeIndicators(voList, indicatorList.get(i)).stream() .map(FieldAndScoreDataVO::getScore).reduce(Double::sum) @@ -382,6 +383,9 @@ .divide(BigDecimal.valueOf(voList.get(i).getLevelOneIndicatorMaxScore()), 2, RoundingMode.HALF_UP).multiply(BigDecimal.valueOf(100L)) .doubleValue()); + scoreRateDataVO.setMaxScore( + getLevelThreeIndicators(voList, indicatorList.get(i)).get(0) + .getLevelOneIndicatorMaxScore()); } result.add(scoreRateDataVO); } @@ -425,7 +429,8 @@ .orElse(BigDecimal.ZERO).setScale(2, RoundingMode.HALF_UP).doubleValue(); scoreDataVO.setLastScore(indicatorOneLastYear); scoreDataVO.setScore(indicatorOne); - scoreDataVO.setMaxScore(voList.get(0).getLevelOneIndicatorMaxScore()); + scoreDataVO.setMaxScore(getLevelThreeIndicators(voList, indicatorList.get(i)).get(0) + .getLevelOneIndicatorMaxScore()); scoreDataVO.setSubType(SubTypeEnum.getEnumByCode(i + 1)); } scoreDataVOList.add(scoreDataVO); @@ -549,13 +554,13 @@ public List<DeptCalculateDetailVO> deptCalculateDetail(DeptCalculateDetailQuery query) throws Exception { String previousQuarter = DateUtils.getPreviousQuarter(); - // previousQuarter = "2024年一季度"; + // previousQuarter = "2024年二季度"; return tbScoreService.deptCalculateDetail(query, previousQuarter); } public CurrentFieldsDetailVO viewRawData(String areaCode) throws Exception { String previousQuarter = DateUtils.getPreviousQuarter(); - // previousQuarter = "2024年一季度"; + // previousQuarter = "2024年二季度"; Optional<TbBasicData> basicDataOptional = tbBasicDataService.lambdaQuery() .eq(TbBasicData::getDeptAreaCode, areaCode) .eq(TbBasicData::getQuarter, previousQuarter).oneOpt(); @@ -587,7 +592,13 @@ .likeRight(SysUser::getAreaCode, cityCode).or(cityCode.equals("5101")) .in(cityCode.equals("5101"), SysUser::getAreaCode, "510008", "510015", "510017", "510025") - .orderByAsc(!areaCode.equals("510100"), SysUser::getAreaCode) + .or(cityCode.equals("5106")) + .eq(cityCode.equals("5106"), SysUser::getAreaCode, "510049") + .or(cityCode.equals("5109")) + .eq(cityCode.equals("5109"), SysUser::getAreaCode, "510077") + .orderByAsc(!areaCode.equals("510100") && !areaCode.equals("510600") + && !areaCode.equals("510900"), + SysUser::getAreaCode) .list(); return list; } diff --git a/finance-system/src/main/java/com/finance/system/domain/Region.java b/finance-system/src/main/java/com/finance/system/domain/Region.java new file mode 100644 index 0000000..faa4154 --- /dev/null +++ b/finance-system/src/main/java/com/finance/system/domain/Region.java @@ -0,0 +1,54 @@ +package com.finance.system.domain; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + * <p> + * 省市区三级联动 + * </p> + * + * @author mitao + * @since 2024-05-21 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@Accessors(chain = true) +@TableName("t_region") +@ApiModel(value = "Region对象", description = "省市区三级联动") +public class Region implements Serializable { + + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "主键ID") + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + + @ApiModelProperty(value = "城市名称") + @TableField("name") + private String name; + + @TableField("code") + private String code; + + @TableField("citycode") + private String citycode; + + @ApiModelProperty(value = "父级ID") + @TableField("parent_id") + private Integer parentId; + + @ApiModelProperty(value = "英文名称") + @TableField("english") + private String english; + + +} diff --git a/finance-system/src/main/java/com/finance/system/mapper/RegionMapper.java b/finance-system/src/main/java/com/finance/system/mapper/RegionMapper.java new file mode 100644 index 0000000..f19405f --- /dev/null +++ b/finance-system/src/main/java/com/finance/system/mapper/RegionMapper.java @@ -0,0 +1,22 @@ +package com.finance.system.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.finance.system.domain.Region; +import com.finance.system.vo.RegionVo; +import java.util.List; + +/** + * <p> + * 省市区三级联动 Mapper 接口 + * </p> + * + * @author mitao + * @since 2024-05-21 + */ +public interface RegionMapper extends BaseMapper<Region> { + + List<RegionVo> listRegionVo(); + + Region getRegionByCode(String code); +} diff --git a/finance-system/src/main/java/com/finance/system/service/IRegionService.java b/finance-system/src/main/java/com/finance/system/service/IRegionService.java new file mode 100644 index 0000000..19b606c --- /dev/null +++ b/finance-system/src/main/java/com/finance/system/service/IRegionService.java @@ -0,0 +1,17 @@ +package com.finance.system.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.finance.system.domain.Region; + +/** + * <p> + * 省市区三级联动 服务类 + * </p> + * + * @author mitao + * @since 2024-05-21 + */ +public interface IRegionService extends IService<Region> { + + Region getParentByCode(String code); +} diff --git a/finance-system/src/main/java/com/finance/system/service/TbQuestionService.java b/finance-system/src/main/java/com/finance/system/service/TbQuestionService.java index 6037f7d..06d2570 100644 --- a/finance-system/src/main/java/com/finance/system/service/TbQuestionService.java +++ b/finance-system/src/main/java/com/finance/system/service/TbQuestionService.java @@ -20,7 +20,7 @@ void addQuestion(QuestionDTO dto) throws Exception; - void editQuestion(QuestionUpdDTO dto); + void editQuestion(QuestionUpdDTO dto) throws Exception; PageDTO<QuestionVO> pageQuestion(QuestionQuery dto); diff --git a/finance-system/src/main/java/com/finance/system/service/impl/AsyncServiceImpl.java b/finance-system/src/main/java/com/finance/system/service/impl/AsyncServiceImpl.java index fff6c41..a3c3d15 100644 --- a/finance-system/src/main/java/com/finance/system/service/impl/AsyncServiceImpl.java +++ b/finance-system/src/main/java/com/finance/system/service/impl/AsyncServiceImpl.java @@ -1,5 +1,7 @@ package com.finance.system.service.impl; +import static com.finance.common.enums.IndicatorItemEnum.INDICATOR_ITEM8; + import cn.hutool.core.date.DateUtil; import com.alibaba.fastjson2.JSONArray; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -346,23 +348,29 @@ score = res ? 0 : vo.getMaxScore(); break; case INDICATOR_ITEM9: + // 预算管理方面-“三保”保障情况-“三保”需求占可用财力的比重 BigDecimal au = getBigDecimal(sysUser.getAreaName(), deptFieldsMap, BasicDataFieldEnum.BASIC_DATA_FIELD45); BigDecimal r = getBigDecimal(sysUser.getAreaName(), deptFieldsMap, BasicDataFieldEnum.BASIC_DATA_FIELD13); res1 = validateDivisorValue(r); score = 0D; - if (!res1) { - BigDecimal divided = au.divide(r, 4, RoundingMode.HALF_UP); - if (divided.compareTo(BigDecimal.valueOf(0.6D)) > 0) { - BigDecimal add = BigDecimal.valueOf(0.6D).subtract(divided) - .multiply(BigDecimal.valueOf(100D)) - .divide(BigDecimal.valueOf(4D), 4, RoundingMode.HALF_UP) - .add(BigDecimal.valueOf(8)) - .setScale(2, RoundingMode.HALF_UP); - score = add.compareTo(BigDecimal.ZERO) >= 0 ? add.doubleValue() : 0D; - } else { - score = vo.getMaxScore(); + TbScore tbScore = scoreList.stream().filter(s -> s.getBasicDataConfigId() + .equals(INDICATOR_ITEM8.getCode())).findFirst().orElse(null); + if (tbScore != null) { + if (!res1 && tbScore.getScore() != 0) { + BigDecimal divided = au.divide(r, 4, RoundingMode.HALF_UP); + if (divided.compareTo(BigDecimal.valueOf(0.6D)) > 0) { + BigDecimal add = BigDecimal.valueOf(0.6D).subtract(divided) + .multiply(BigDecimal.valueOf(100D)) + .divide(BigDecimal.valueOf(4D), 4, RoundingMode.HALF_UP) + .add(BigDecimal.valueOf(8)) + .setScale(1, RoundingMode.HALF_UP); + score = add.compareTo(BigDecimal.ZERO) >= 0 ? add.doubleValue() + : 0D; + } else { + score = vo.getMaxScore(); + } } } break; @@ -400,7 +408,7 @@ .divide(BigDecimal.valueOf(0.1D), 4, RoundingMode.HALF_UP) .multiply(BigDecimal.valueOf(0.6D)) .add(BigDecimal.valueOf(3D)) - .setScale(2, RoundingMode.HALF_UP); + .setScale(1, RoundingMode.HALF_UP); part1 = add.compareTo(BigDecimal.ZERO) < 0 ? BigDecimal.ZERO : add; } else { part1 = BigDecimal.valueOf(3D); @@ -433,7 +441,7 @@ .multiply(BigDecimal.valueOf(100D)) .divide(BigDecimal.valueOf(3D), 4, RoundingMode.HALF_UP) .add(BigDecimal.valueOf(vo.getMaxScore())) - .setScale(2, RoundingMode.HALF_UP).doubleValue(); + .setScale(1, RoundingMode.HALF_UP).doubleValue(); } else { score = vo.getMaxScore(); } @@ -462,7 +470,7 @@ BigDecimal add = deptDividendValue.subtract(divided1) .divide(BigDecimal.valueOf(5D), 4, RoundingMode.HALF_UP) .add(BigDecimal.valueOf(vo.getMaxScore())) - .setScale(2, RoundingMode.HALF_UP); + .setScale(1, RoundingMode.HALF_UP); score = add.compareTo(BigDecimal.ZERO) < 0 ? 0D : add.doubleValue(); } else { score = vo.getMaxScore(); @@ -489,9 +497,10 @@ BasicDataFieldEnum.BASIC_DATA_FIELD15);// 696635 BigDecimal ab = getBigDecimal(sysUser.getAreaName(), deptFieldsMap, BasicDataFieldEnum.BASIC_DATA_FIELD23); // 56552 - BigDecimal add = t.add(ab).divide(month.multiply( - BigDecimal.valueOf(12D)).multiply(BigDecimal.valueOf(0.05D)), 2, - RoundingMode.HALF_UP); + BigDecimal add = t.add(ab).divide(month, 4, RoundingMode.HALF_UP) + .multiply(BigDecimal.valueOf(12D)) + .multiply(BigDecimal.valueOf(0.05D)) + .setScale(1, RoundingMode.HALF_UP); score = bk.compareTo(add) > 0 ? 0D : vo.getMaxScore(); break; case INDICATOR_ITEM20: @@ -509,7 +518,7 @@ RoundingMode.HALF_UP); score = d1.compareTo(d2) < 0 ? d1.divide(d2, 4, RoundingMode.HALF_UP) .multiply(BigDecimal.valueOf(vo.getMaxScore())) - .setScale(2, RoundingMode.HALF_UP).doubleValue() + .setScale(1, RoundingMode.HALF_UP).doubleValue() : vo.getMaxScore(); } else { score = vo.getMaxScore(); @@ -641,7 +650,7 @@ score = deptDivided.subtract(provinceDivided) .multiply(BigDecimal.valueOf(100L)) .add(BigDecimal.valueOf(vo.getMaxScore())) - .setScale(2, RoundingMode.HALF_UP); + .setScale(1, RoundingMode.HALF_UP); score = score.compareTo(BigDecimal.ZERO) >= 0 ? score : BigDecimal.ZERO; } else { score = BigDecimal.valueOf(vo.getMaxScore()); @@ -672,7 +681,7 @@ score = provinceDivided.subtract(deptDivided) .multiply(BigDecimal.valueOf(100L)) .add(BigDecimal.valueOf(vo.getMaxScore())) - .setScale(2, RoundingMode.HALF_UP); + .setScale(1, RoundingMode.HALF_UP); score = score.compareTo(BigDecimal.ZERO) >= 0 ? score : BigDecimal.ZERO; } return score.doubleValue(); @@ -744,18 +753,19 @@ private Double getScoreByMonth(BigDecimal deptDividendValue, BigDecimal deptDivisorValue, BigDecimal currentMonth, BasicDataConfigVO vo) { double score; - BigDecimal divided1 = deptDividendValue.divide(deptDivisorValue, 2, + BigDecimal divided1 = deptDividendValue.divide(deptDivisorValue, 4, RoundingMode.HALF_UP); - BigDecimal divided2 = currentMonth.divide(BigDecimal.valueOf(12D), 2, + BigDecimal divided2 = currentMonth.divide(BigDecimal.valueOf(12D), 4, RoundingMode.HALF_UP); if (divided1.compareTo( - currentMonth.divide(BigDecimal.valueOf(12D), 2, RoundingMode.HALF_UP)) + currentMonth.divide(BigDecimal.valueOf(12D), 4, RoundingMode.HALF_UP)) < 0) { BigDecimal add = divided1.subtract(divided2) .multiply(BigDecimal.valueOf(100D)) - .divide(BigDecimal.valueOf(5D), 2, + .divide(BigDecimal.valueOf(5D), 4, RoundingMode.HALF_UP) - .add(BigDecimal.valueOf(vo.getMaxScore())); + .add(BigDecimal.valueOf(vo.getMaxScore())) + .setScale(1, RoundingMode.HALF_UP); score = add.compareTo(BigDecimal.ZERO) < 0 ? 0D : add.doubleValue(); } else { score = vo.getMaxScore(); @@ -783,6 +793,7 @@ @Override public void subtractScoreWithFixedRules(String deptAreaCode) throws Exception { String previousQuarter = DateUtils.getPreviousQuarter(); + // previousQuarter = "2024年二季度"; TbBasicData tbBasicData = tbBasicDataMapper.selectOne( Wrappers.lambdaQuery(TbBasicData.class).eq(TbBasicData::getQuarter, previousQuarter) .eq(TbBasicData::getDeptAreaCode, deptAreaCode)); @@ -829,15 +840,16 @@ // 23:风险防控方面-债务管理-隐性债务化解 questionList = getQuestList(list, deptAreaCode, QuestionTypeEnum.ENUM6); - score = CollUtils.isNotEmpty(questionList) ? vo.getMaxScore() : -3D; + score = CollUtils.isNotEmpty(questionList) ? -3D : vo.getMaxScore(); break; case INDICATOR_ITEM24: // 24:风险防控方面-债务管理-日常监督发现问题 questionList = getQuestList(list, deptAreaCode, QuestionTypeEnum.ENUM7); if (CollUtils.isNotEmpty(questionList)) { - score = -18D + questionList.size() * -1D; + score = questionList.size() * -1D; } + break; case INDICATOR_ITEM25: // 25:风险防控方面-日常监督发现问题 questionList = getQuestList(list, deptAreaCode, diff --git a/finance-system/src/main/java/com/finance/system/service/impl/RegionServiceImpl.java b/finance-system/src/main/java/com/finance/system/service/impl/RegionServiceImpl.java new file mode 100644 index 0000000..f2bcc02 --- /dev/null +++ b/finance-system/src/main/java/com/finance/system/service/impl/RegionServiceImpl.java @@ -0,0 +1,24 @@ +package com.finance.system.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.finance.system.domain.Region; +import com.finance.system.mapper.RegionMapper; +import com.finance.system.service.IRegionService; +import org.springframework.stereotype.Service; + +/** + * <p> + * 省市区三级联动 服务实现类 + * </p> + * + * @author mitao + * @since 2024-05-21 + */ +@Service +public class RegionServiceImpl extends ServiceImpl<RegionMapper, Region> implements IRegionService { + + @Override + public Region getParentByCode(String code) { + return baseMapper.getRegionByCode(code); + } +} diff --git a/finance-system/src/main/java/com/finance/system/service/impl/SysUserServiceImpl.java b/finance-system/src/main/java/com/finance/system/service/impl/SysUserServiceImpl.java index ce57ad9..98c4359 100644 --- a/finance-system/src/main/java/com/finance/system/service/impl/SysUserServiceImpl.java +++ b/finance-system/src/main/java/com/finance/system/service/impl/SysUserServiceImpl.java @@ -7,6 +7,7 @@ import com.finance.common.constant.UserConstants; import com.finance.common.core.domain.entity.SysRole; import com.finance.common.core.domain.entity.SysUser; +import com.finance.common.enums.AreaLevelEnum; import com.finance.common.enums.UserTypeEnum; import com.finance.common.exception.ServiceException; import com.finance.common.utils.BeanUtils; @@ -14,6 +15,7 @@ import com.finance.common.utils.StringUtils; import com.finance.common.utils.bean.BeanValidators; import com.finance.common.utils.spring.SpringUtils; +import com.finance.system.domain.Region; import com.finance.system.domain.SysPost; import com.finance.system.domain.SysUserPost; import com.finance.system.domain.SysUserRole; @@ -23,6 +25,7 @@ import com.finance.system.mapper.SysUserPostMapper; import com.finance.system.mapper.SysUserRoleMapper; import com.finance.system.query.SysUserQuery; +import com.finance.system.service.IRegionService; import com.finance.system.service.ISysConfigService; import com.finance.system.service.ISysUserService; import com.finance.system.vo.DeptVO; @@ -70,6 +73,8 @@ @Autowired protected Validator validator; + @Autowired + private IRegionService regionService; /** * 根据条件分页查询用户列表 @@ -623,6 +628,15 @@ deptName) .orderByDesc(SysUser::getCreateTime) .list(); - return BeanUtils.copyList(list, DeptVO.class); + List<DeptVO> deptVOS = BeanUtils.copyList(list, DeptVO.class); + deptVOS = deptVOS.stream() + .filter(item -> null != item.getAreaLevel() && item.getAreaLevel() + .equals(AreaLevelEnum.COUNTY)).peek(item -> { + Region region = regionService.getParentByCode(item.getAreaCode()); + if (region != null) { + item.setCityName(region.getName()); + } + }).collect(Collectors.toList()); + return deptVOS; } } diff --git a/finance-system/src/main/java/com/finance/system/service/impl/TbQuestionServiceImpl.java b/finance-system/src/main/java/com/finance/system/service/impl/TbQuestionServiceImpl.java index e50f21a..9c1e832 100644 --- a/finance-system/src/main/java/com/finance/system/service/impl/TbQuestionServiceImpl.java +++ b/finance-system/src/main/java/com/finance/system/service/impl/TbQuestionServiceImpl.java @@ -48,17 +48,18 @@ TbQuestion tbQuestion = BeanUtils.copyBean(dto, TbQuestion.class); tbQuestion.setType(dto.getType()); String previousQuarter = DateUtils.getPreviousQuarter(); - // previousQuarter = "2024年一季度"; + // previousQuarter = "2024年二季度"; tbQuestion.setQuarter(previousQuarter); this.save(tbQuestion); asyncService.subtractScoreWithFixedRules(dto.getDeptAreaCode()); } @Override - public void editQuestion(QuestionUpdDTO dto) { + public void editQuestion(QuestionUpdDTO dto) throws Exception { TbQuestion tbQuestion = BeanUtils.copyBean(dto, TbQuestion.class); tbQuestion.setType(dto.getType()); this.updateById(tbQuestion); + asyncService.subtractScoreWithFixedRules(dto.getDeptAreaCode()); } @Override diff --git a/finance-system/src/main/java/com/finance/system/service/impl/TbScoreServiceImpl.java b/finance-system/src/main/java/com/finance/system/service/impl/TbScoreServiceImpl.java index c79ef28..31ee68d 100644 --- a/finance-system/src/main/java/com/finance/system/service/impl/TbScoreServiceImpl.java +++ b/finance-system/src/main/java/com/finance/system/service/impl/TbScoreServiceImpl.java @@ -117,7 +117,7 @@ @Override public ScoreRankVO queryRankAndScoreByAreaCode(String areaCode) throws Exception { String previousQuarter = DateUtils.getPreviousQuarter(); - // previousQuarter = "2024年一季度"; + // previousQuarter = "2024年二季度"; List<ScoreRankVO> voList = baseMapper.queryRankAndScoreByAreaCode(areaCode, previousQuarter); if (CollUtils.isNotEmpty(voList)) { @@ -155,7 +155,8 @@ vo.setCalculateType(config.getCalculateType()); Page<ScoreDetailVO> page = new Page<>(query.getPageNum(), query.getPageSize()); String previousQuarter = DateUtils.getPreviousQuarter(); - previousQuarter = "2023年一季度"; + // previousQuarter = "2024年二季度"; + query.setPreviousQuarter(previousQuarter); Page<ScoreDetailVO> pageVO = baseMapper.fieldsDetail(query, page, areaCodeList); vo.setTotal(pageVO.getTotal()); vo.setPages(pageVO.getPages()); diff --git a/finance-system/src/main/java/com/finance/system/vo/DeptVO.java b/finance-system/src/main/java/com/finance/system/vo/DeptVO.java index 1304bea..af0dd8f 100644 --- a/finance-system/src/main/java/com/finance/system/vo/DeptVO.java +++ b/finance-system/src/main/java/com/finance/system/vo/DeptVO.java @@ -19,6 +19,9 @@ @ApiModelProperty(value = "部门id") private Long userId; + + @ApiModelProperty(value = "所属市") + private String cityName; @ApiModelProperty(value = "部门地区") private String areaName; diff --git a/finance-system/src/main/java/com/finance/system/vo/RegionVo.java b/finance-system/src/main/java/com/finance/system/vo/RegionVo.java new file mode 100644 index 0000000..261c851 --- /dev/null +++ b/finance-system/src/main/java/com/finance/system/vo/RegionVo.java @@ -0,0 +1,27 @@ +package com.finance.system.vo; + +import io.swagger.annotations.ApiModelProperty; +import java.util.List; +import lombok.Data; + +@Data +public class RegionVo { + + @ApiModelProperty(value = "区域代码") + private String value; + + @ApiModelProperty(value = "区域名称") + private String label; + + @ApiModelProperty(value = "子级列表") + private List<RegionVo> children; + + @ApiModelProperty(value = "id") + private Long id; + + @ApiModelProperty(value = "父级id") + private Long parentId; + + @ApiModelProperty(value = "层级") + private Integer level; +} \ No newline at end of file diff --git a/finance-system/src/main/java/com/finance/system/vo/ScoreRateDataVO.java b/finance-system/src/main/java/com/finance/system/vo/ScoreRateDataVO.java index 964dca4..fe74352 100644 --- a/finance-system/src/main/java/com/finance/system/vo/ScoreRateDataVO.java +++ b/finance-system/src/main/java/com/finance/system/vo/ScoreRateDataVO.java @@ -19,9 +19,12 @@ @ApiModelProperty("得分率") private Double scoreRate; + @ApiModelProperty("总分") + private Double maxScore; + @ApiModelProperty(value = "配置类型子类型(1=指标一 2=指标二 3=指标三 4=指标四)") private SubTypeEnum subType; - + @ApiModelProperty("排名") private Integer rank; } diff --git a/finance-system/src/main/resources/mapper/system/RegionMapper.xml b/finance-system/src/main/resources/mapper/system/RegionMapper.xml new file mode 100644 index 0000000..a35b7dd --- /dev/null +++ b/finance-system/src/main/resources/mapper/system/RegionMapper.xml @@ -0,0 +1,17 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.finance.system.mapper.RegionMapper"> + + <select id="listRegionVo" resultType="com.finance.system.vo.RegionVo"> + SELECT tr.id id, tr.parent_id parentId, tr.level level, tr.code value, tr.name label + FROM t_region tr + </select> + <select id="getRegionByCode" resultType="com.finance.system.domain.Region" + parameterType="java.lang.String"> + SELECT t2.* + FROM t_region t1 + JOIN t_region t2 ON t1.parent_id = t2.id + WHERE t1.code = #{code} + </select> +</mapper> diff --git a/finance-system/src/main/resources/mapper/system/TbScoreMapper.xml b/finance-system/src/main/resources/mapper/system/TbScoreMapper.xml index 1ef4e11..244cb56 100644 --- a/finance-system/src/main/resources/mapper/system/TbScoreMapper.xml +++ b/finance-system/src/main/resources/mapper/system/TbScoreMapper.xml @@ -72,19 +72,9 @@ CURDATE()) AND su.user_id in (SELECT user_id FROM sys_user - WHERE ( - ( - #{areaCode} = '510000' - AND area_code LIKE CONCAT( SUBSTRING( #{areaCode}, 1, 2 ), '%' )) - OR ( - #{areaCode} != '510000' - AND area_code LIKE CONCAT( SUBSTRING( #{areaCode}, 1, 4 ), '%' )) - OR ( - #{areaCode}= '510100' - AND area_code IN ( '510008', '510015', '510017', '510025' )) + WHERE user_type = 2 + AND area_level in (1,2,3,4) ) - AND user_type = 2 - AND area_level in (1,2,3,4)) </where> GROUP BY tbc.dept_area_code @@ -127,7 +117,7 @@ AND su.area_code=#{query.areaCode} </if> <if test="query.previousQuarter != null and query.previousQuarter != ''"> - AND tbd.quarter=#{previousQuarter} + AND tbd.quarter=#{query.previousQuarter} </if> group by su.area_code </where> -- Gitblit v1.7.1