diff --git a/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/constants/CommonConstants.java b/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/constants/CommonConstants.java index db3ada85a7b73d8a064e2aabff74af1d10e21a15..db80025fa27a89c8719a0eb331615654e5f3183c 100644 --- a/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/constants/CommonConstants.java +++ b/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/constants/CommonConstants.java @@ -14,6 +14,10 @@ public interface CommonConstants { String TWO = "2"; + String THREE = "3"; + + String FOUR = "4"; + //类型枚举 String TAG = "1"; @@ -30,4 +34,11 @@ public interface CommonConstants { String DIMENSIONMAIN = "11"; + //指标类型 + String ALL = "ALL"; + String STATISTICS = "STATISTICS"; + String SATISFACTIONSURVEY = "SATISFACTIONSURVEY"; + String ONLINESITEINSPECTION = "ONLINESITEINSPECTION"; + String BIGDATAANALYTICAL = "BIGDATAANALYTICAL"; + } diff --git a/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/constants/QuotaType.java b/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/constants/QuotaType.java index ac84f96126806635964122cd2cb913eac021d0c6..1fab763747c454736e22d7558c13ca0509e70423 100644 --- a/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/constants/QuotaType.java +++ b/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/constants/QuotaType.java @@ -7,12 +7,16 @@ package com.hncy.zhpj.web.biz.constants; */ public interface QuotaType { + //数据统计型 String STATISTICS= "1"; + //现场检查型 String ON_SITE_INSPECTION = "2"; + //调查度满意型 String SATISFACTION_SURVEY = "3"; + //大数据分析型 String BIG_DATA_ANALYTICAL = "4"; } diff --git a/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/controller/QuotaMainController.java b/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/controller/QuotaMainController.java index b0667bd9acc8fac076cdbf4f0c4863112b3947d4..f58b96d3adbec33f64e767b9246e9f0d38212744 100644 --- a/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/controller/QuotaMainController.java +++ b/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/controller/QuotaMainController.java @@ -2,6 +2,9 @@ package com.hncy.zhpj.web.biz.controller; import com.hncy.zhpj.web.biz.entity.QuotaMain; import com.hncy.zhpj.web.biz.service.QuotaMainService; +import com.hncy.zhpj.web.biz.vo.DataSourceMainVo; +import com.hncy.zhpj.web.biz.vo.QuotaMainVo; +import com.hncy.zhpj.web.biz.vo.QuotaTypeSumsVo; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; import com.hncy.common.dto.ResultBean; @@ -76,4 +79,19 @@ public class QuotaMainController { return quotaMainService.delQuotaMain(id); } + @ApiOperation(value = "获取不同类型的指标及数量") + @PostMapping(value = "/selectTypeOfQuotaAndSum") + public ResultBean> selectTypeOfQuotaAndSum(@ApiParam(name = "userId", value = "当前人员id", required = true)@RequestParam("userId") String userId) { + return quotaMainService.selectTypeOfQuotaAndSum(userId); + } + + @ApiOperation(value = "获取指标详情") + @PostMapping(value = "/selectQuotaMainDetail") + public ResultBean selectQuotaMainDetail(@ApiParam(name = "id", value = "指标id", required = true)@RequestParam("id") String id){ + return quotaMainService.selectQuotaMainDetail(id); + } + + + + } diff --git a/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/mapper/QuotaMainMapper.java b/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/mapper/QuotaMainMapper.java index 11186bcfe5dc89c1d8ef94a9e7a4e59c9ef1431c..7189e6cc136dcf91ca31a82d01fe9a022a76bb03 100644 --- a/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/mapper/QuotaMainMapper.java +++ b/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/mapper/QuotaMainMapper.java @@ -21,4 +21,16 @@ public interface QuotaMainMapper extends BaseMapper { List searchQuotaMainlist(@Param("nameKeyword") String nameKeyword, @Param("orderType") String orderType, @Param("tagId") String tagId); int updateInspectionByQuotaId(@Param("id") String quotaId, @Param("inspection") String inspection); + + String selectQuotaSum(@Param("createBy") String userId); + + String selectStatisticsQuotaSum(@Param("createBy") String userId); + + String selectOnlineSiteInspectionQuotaSum(@Param("createBy") String userId); + + String selectSatisfactionSurveyQuotaSum(@Param("createBy") String userId); + + String selectBigDataAnalyticalQuotaSum(@Param("createBy") String userId); + + List selectQuotaMain(@Param("createBy") String userId); } diff --git a/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/service/QuotaMainService.java b/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/service/QuotaMainService.java index 7c02da889fafe35acb69d4d3f8b1da261d5612df..abee5b7993959dbb8570ffaecde14439418dfff7 100644 --- a/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/service/QuotaMainService.java +++ b/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/service/QuotaMainService.java @@ -3,6 +3,8 @@ package com.hncy.zhpj.web.biz.service; import com.hncy.common.dto.ResultBean; import com.hncy.zhpj.web.biz.entity.QuotaMain; import com.baomidou.mybatisplus.extension.service.IService; +import com.hncy.zhpj.web.biz.vo.QuotaMainVo; +import com.hncy.zhpj.web.biz.vo.QuotaTypeSumsVo; import java.util.List; @@ -69,4 +71,19 @@ public interface QuotaMainService extends IService { ResultBean delQuotaMain(String id); + /** + * @Description 获取不同类型的指标及数量 + * @Date 2022/2/14 15:54 + * @param userId + * @return + */ + ResultBean> selectTypeOfQuotaAndSum(String userId); + + /** + * @Description 获取指标详情 + * @Date 2022/2/14 16:40 + * @param id + * @return + */ + ResultBean selectQuotaMainDetail(String id); } diff --git a/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/service/impl/LiabilityOrganRelationServiceImpl.java b/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/service/impl/LiabilityOrganRelationServiceImpl.java index 6fe2be684f4522e51f0a1fb1442cc4dd93adf094..f5d4148e86eb5209ac33dd9b2215e2196038f668 100644 --- a/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/service/impl/LiabilityOrganRelationServiceImpl.java +++ b/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/service/impl/LiabilityOrganRelationServiceImpl.java @@ -11,6 +11,7 @@ import com.hncy.zhpj.web.biz.service.LiabilityOrganRelationService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.hncy.zhpj.web.biz.vo.LiabilityRelationVo; import com.hncy.zhpj.web.biz.vo.RelationIds; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -26,6 +27,7 @@ import java.util.List; * @since 2021-09-10 */ @Service +@Slf4j public class LiabilityOrganRelationServiceImpl extends ServiceImpl implements LiabilityOrganRelationService { @Autowired @@ -33,6 +35,7 @@ public class LiabilityOrganRelationServiceImpl extends ServiceImpl editRelationOfLiability(List liabilityOrganMainIds, String quotaId, String dataSourceId, String evaluationObjectMainId, String type) { + log.info("当前获取到的权责部门id为: {}",liabilityOrganMainIds); RelationIds relationIds = new RelationIds(); switch (type) { case CommonConstants.TAG: diff --git a/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/service/impl/QuotaMainServiceImpl.java b/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/service/impl/QuotaMainServiceImpl.java index 0f72dae687570b7ecdc352917330b6d3b8051421..13b40af0d07b444da6160820afe205abe5a29088 100644 --- a/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/service/impl/QuotaMainServiceImpl.java +++ b/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/service/impl/QuotaMainServiceImpl.java @@ -6,16 +6,23 @@ import cn.hutool.core.util.StrUtil; import com.hncy.common.dto.ResultBean; import com.hncy.common.exception.custom.BusinessException; import com.hncy.pageable.spring.boot.starter.core.Page; +import com.hncy.zhpj.web.biz.constants.CommonConstants; import com.hncy.zhpj.web.biz.constants.QuotaType; import com.hncy.zhpj.web.biz.entity.*; import com.hncy.zhpj.web.biz.mapper.*; import com.hncy.zhpj.web.biz.service.QuotaMainService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.hncy.zhpj.web.biz.vo.QuotaMainVo; +import com.hncy.zhpj.web.biz.vo.QuotaTypeSumsVo; +import org.springframework.beans.BeanUtils; 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.List; +import java.util.Map; +import java.util.stream.Collectors; /** *

@@ -38,6 +45,8 @@ public class QuotaMainServiceImpl extends ServiceImpl> selectTypeOfQuotaAndSum(String userId) { + List quotaTypeSumsVos = new ArrayList<>(); + List quotaMainList = quotaMainMapper.selectQuotaMain(userId); + if(CollectionUtil.isNotEmpty(quotaMainList)) { + QuotaTypeSumsVo quotaTypeSumsVo = new QuotaTypeSumsVo(); + String quotaSum = quotaMainMapper.selectQuotaSum(userId); + quotaTypeSumsVo.setQuotaMainName(CommonConstants.ALL); + quotaTypeSumsVo.setQuotaMainSum(quotaSum); + quotaTypeSumsVos.add(quotaTypeSumsVo); + Map> mainMap = quotaMainList.stream().collect(Collectors.groupingBy(QuotaMain::getType)); + for (String type : mainMap.keySet()) { + switch (type) { + case CommonConstants.ONE : + QuotaTypeSumsVo quotaTypeSumsVoInStatistics = new QuotaTypeSumsVo(); + String statisticsQuotaSum = quotaMainMapper.selectStatisticsQuotaSum(userId); + quotaTypeSumsVoInStatistics.setQuotaMainName(CommonConstants.STATISTICS); + quotaTypeSumsVoInStatistics.setQuotaMainSum(statisticsQuotaSum); + quotaTypeSumsVos.add(quotaTypeSumsVoInStatistics); + break; + case CommonConstants.TWO : + QuotaTypeSumsVo quotaTypeSumsVoInOnlineSiteInspection = new QuotaTypeSumsVo(); + String onlineSiteInspectionQuotaSum = quotaMainMapper.selectOnlineSiteInspectionQuotaSum(userId); + quotaTypeSumsVoInOnlineSiteInspection.setQuotaMainName(CommonConstants.ONLINESITEINSPECTION); + quotaTypeSumsVoInOnlineSiteInspection.setQuotaMainSum(onlineSiteInspectionQuotaSum); + quotaTypeSumsVos.add(quotaTypeSumsVoInOnlineSiteInspection); + break; + case CommonConstants.THREE : + QuotaTypeSumsVo quotaTypeSumsVoInSatisfactionSurvey = new QuotaTypeSumsVo(); + String satisfactionSurveyQuotaSum = quotaMainMapper.selectSatisfactionSurveyQuotaSum(userId); + quotaTypeSumsVoInSatisfactionSurvey.setQuotaMainName(CommonConstants.SATISFACTIONSURVEY); + quotaTypeSumsVoInSatisfactionSurvey.setQuotaMainSum(satisfactionSurveyQuotaSum); + quotaTypeSumsVos.add(quotaTypeSumsVoInSatisfactionSurvey); + break; + case CommonConstants.FOUR : + QuotaTypeSumsVo quotaTypeSumsVoInBigDataAnalytical = new QuotaTypeSumsVo(); + String bigDataAnalyticalQuotaSum = quotaMainMapper.selectBigDataAnalyticalQuotaSum(userId); + quotaTypeSumsVoInBigDataAnalytical.setQuotaMainName(CommonConstants.BIGDATAANALYTICAL); + quotaTypeSumsVoInBigDataAnalytical.setQuotaMainSum(bigDataAnalyticalQuotaSum); + quotaTypeSumsVos.add(quotaTypeSumsVoInBigDataAnalytical); + break; + } + } + } + return ResultBean.success(quotaTypeSumsVos); + } + + @Override + public ResultBean selectQuotaMainDetail(String id) { + List relationPolicy = new ArrayList<>(); + List relationLiabilityIds = new ArrayList<>(); + QuotaMainVo quotaMainVo = new QuotaMainVo(); + QuotaMain quotaMain = quotaMainMapper.selectById(id); + BeanUtils.copyProperties(quotaMain,quotaMainVo); + List policyRelations = policyRelationMapper.selectPolicyRelationsByQuotaId(id); + if(CollectionUtil.isNotEmpty(policyRelations)) { + policyRelations.stream().forEach(policyRelation -> { + PolicyMain policyMain = policyMainMapper.selectById(policyRelation.getPolicyId()); + relationPolicy.add(policyMain); + }); + quotaMainVo.setRelationPolicys(relationPolicy); + } + List liabilityOrganRelations = liabilityOrganRelationMapper.selectLiabilityOrganRelationsByQuotaId(id); + if(CollectionUtil.isNotEmpty(liabilityOrganRelations)) { + liabilityOrganRelations.stream().forEach(liabilityOrganRelation -> { + relationLiabilityIds.add(liabilityOrganRelation.getLiabilityOrganId()); + }); + quotaMainVo.setRelationLiabilityIds(relationLiabilityIds); + } + return ResultBean.success(quotaMainVo); + } + } diff --git a/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/vo/QuotaMainVo.java b/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/vo/QuotaMainVo.java new file mode 100644 index 0000000000000000000000000000000000000000..2b75eda2d5a2faeeb26138f9a5a2766121940baf --- /dev/null +++ b/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/vo/QuotaMainVo.java @@ -0,0 +1,77 @@ +package com.hncy.zhpj.web.biz.vo; + +import com.hncy.common.base.BaseEntity; +import com.hncy.zhpj.web.biz.entity.PolicyMain; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import java.util.List; + +/** + * @Author: cs + * @Date: 2022/2/14 16:31 + * 指标详情vo + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode +public class QuotaMainVo extends BaseEntity { + + @ApiModelProperty(value = "指标名称") + private String quotaName; + + @ApiModelProperty(value = "类型:1、统计型;2、现场检查型;3、满意度调查型、4、大数据分析型") + private String type; + + @ApiModelProperty(value = "单位类型:1:% 2:其他,单位不参与公式运算,如果是%返回的值需要做一个百分比转换") + private String unitType; + + @ApiModelProperty(value = "单位:类型为2时无效;单位不参与公式运算") + private String unit; + + @ApiModelProperty(value = "指标标签id") + private String tagId; + + @ApiModelProperty(value = "指标解释") + private String interpretation; + + @ApiModelProperty(value = "指标图标:url") + private String icon; + + @ApiModelProperty(value = "数据详情") + private String detail; + + @ApiModelProperty(value = "是否单指标:0:false; 1:true") + private String isSingle; + + @ApiModelProperty(value = "父亲指标id:本身为父亲,此字段不填") + private String parentId; + + @ApiModelProperty(value = "小数位数:保留小数的位数") + private String decimalDigit; + + @ApiModelProperty(value = "取整策略:0:默认;四舍五入;1:向上取整;2:向下取整") + private String roundStrategy; + + @ApiModelProperty(value = "公式-带数据源id;文本;统计型独有;需要检查公式有效性;使用文本存储,其他符号和数字用字符串;数据源要换成数据源id;数据源用小写大括号{}来应用") + private String formulaWithId; + + @ApiModelProperty(value = "公式-带数据源名称;文本;统计型独有;需要检查公式有效性;使用文本存储,其他符号和数字用字符串;数据源要换成数据源id;数据源用小写大括号{}来应用") + private String formulaWithName; + + @ApiModelProperty(value = "检查要求") + private String inspection; + + @ApiModelProperty(value = "数据源关联的政策") + private List relationPolicys; + + @ApiModelProperty(value = "数据源关联的权责部门ids") + private List relationLiabilityIds; + + + +} diff --git a/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/vo/QuotaTypeSumsVo.java b/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/vo/QuotaTypeSumsVo.java new file mode 100644 index 0000000000000000000000000000000000000000..1190b6bd2cd3dbe02c90d9e1c392f54a0c1698fb --- /dev/null +++ b/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/java/com/hncy/zhpj/web/biz/vo/QuotaTypeSumsVo.java @@ -0,0 +1,31 @@ +package com.hncy.zhpj.web.biz.vo; + +import com.hncy.common.base.BaseEntity; +import com.hncy.zhpj.web.biz.entity.PolicyMain; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import java.util.List; + +/** + * @Author: cs + * @Date: 2022/2/14 15:46 + * 不同指标类型及数量vo + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@EqualsAndHashCode +public class QuotaTypeSumsVo { + + @ApiModelProperty(value = "指标类型名称:全部-ALL,数据统计型指标-STATISTICS,满意度调查型-SATISFACTIONSURVEY,现场检查型-ONLINESITEINSPECTION,大数据分析型-BIGDATAANALYTICAL") + private String quotaMainName; + + @ApiModelProperty(value = "指标数量") + private String quotaMainSum; + + +} diff --git a/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/resources/mapper/LiabilityOrganRelationMapper.xml b/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/resources/mapper/LiabilityOrganRelationMapper.xml index 5a88a06eec9baac93ca4bb6073c9afd6a6e26e54..5cc8f20327562a615027e8216fd76a1304fdf688 100644 --- a/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/resources/mapper/LiabilityOrganRelationMapper.xml +++ b/service-biz/service-zhpj-web/service-zhpj-web-biz/src/main/resources/mapper/LiabilityOrganRelationMapper.xml @@ -32,6 +32,7 @@ WHERE data_source_main_id = #{dataSourceMainId} AND quota_id IS NULL AND evaluation_object_main_id IS NULL + AND deleted = 0 + + + + + +