From 8ae7ed4dd97a8114eb58255e890437a81ae1203a Mon Sep 17 00:00:00 2001 From: "zhaokaiyao@91isoft.com" <6922339zky> Date: Sun, 5 Dec 2021 20:23:21 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=81=E6=A0=87=E8=AF=84=E5=88=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../QualityEvaluationController.java | 28 +++++-- .../dao/QualityEvaluationDao.java | 10 +++ .../entity/EvaluationIndex.java | 4 + .../entity/FormVO.java | 3 + .../service/IQualityEvaluationService.java | 4 + .../impl/QualityEvaluationServiceImpl.java | 76 ++++++++++++++++--- .../QualityEvaluationMapper.xml | 19 +++++ 7 files changed, 125 insertions(+), 19 deletions(-) diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/controller/QualityEvaluationController.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/controller/QualityEvaluationController.java index b6a16ccb..f887166c 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/controller/QualityEvaluationController.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/controller/QualityEvaluationController.java @@ -5,6 +5,7 @@ import com.adc.da.http.ResponseMessage; import com.adc.da.http.Result; import com.adc.da.slrs.sarEnterpriseStandardEvaluation.entity.FormVO; import com.adc.da.slrs.sarEnterpriseStandardEvaluation.service.IQualityEvaluationService; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import io.swagger.annotations.ApiOperation; @@ -16,6 +17,7 @@ import io.swagger.annotations.Api; import com.adc.da.base.web.BaseController; import java.util.List; +import java.util.Map; import java.util.Optional; /** @@ -47,14 +49,17 @@ public class QualityEvaluationController extends BaseController> getScore(String lawId){ + Map score = iQualityEvaluationService.getScore(lawId); + + return Result.success(score); + } } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/dao/QualityEvaluationDao.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/dao/QualityEvaluationDao.java index 1a1aedd5..9432145d 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/dao/QualityEvaluationDao.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/dao/QualityEvaluationDao.java @@ -1,7 +1,14 @@ package com.adc.da.slrs.sarEnterpriseStandardEvaluation.dao; import com.adc.da.slrs.sarEnterpriseStandardEvaluation.entity.QualityEvaluation; +import com.adc.da.slrs.sarStandUnqualified.entity.BusinessDeptIssue; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Constants; +import org.apache.ibatis.annotations.Param; + +import java.util.List; /** *

@@ -13,4 +20,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; */ public interface QualityEvaluationDao extends BaseMapper { + + + public IPage getHistory(IPage page,@Param(Constants.WRAPPER) QueryWrapper queryWrapper); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/entity/EvaluationIndex.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/entity/EvaluationIndex.java index d6f7cd00..c48813fc 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/entity/EvaluationIndex.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/entity/EvaluationIndex.java @@ -51,5 +51,9 @@ public class EvaluationIndex extends BaseEntity { @TableField("three_index_title") private String threeIndexTitle; + @ApiModelProperty(value = "指标值类型") + @TableField("value_type") + private String valueType; + } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/entity/FormVO.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/entity/FormVO.java index f441095b..16dd75db 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/entity/FormVO.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/entity/FormVO.java @@ -12,4 +12,7 @@ public class FormVO { private String standId; private String userId; + + + private String formData; } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/service/IQualityEvaluationService.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/service/IQualityEvaluationService.java index bc120b4d..cc78ae4f 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/service/IQualityEvaluationService.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/service/IQualityEvaluationService.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; +import java.util.Map; /** *

@@ -22,4 +23,7 @@ public interface IQualityEvaluationService extends IService { public List getEvaluationForm(QualityEvaluation query); + + + Map getScore(String lawId); } diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/service/impl/QualityEvaluationServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/service/impl/QualityEvaluationServiceImpl.java index 376231ab..60e3b745 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/service/impl/QualityEvaluationServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarEnterpriseStandardEvaluation/service/impl/QualityEvaluationServiceImpl.java @@ -1,7 +1,9 @@ package com.adc.da.slrs.sarEnterpriseStandardEvaluation.service.impl; +import com.adc.da.slrs.sarEnterpriseStandardEvaluation.entity.EvaluationIndex; import com.adc.da.slrs.sarEnterpriseStandardEvaluation.entity.QualityEvaluation; import com.adc.da.slrs.sarEnterpriseStandardEvaluation.dao.QualityEvaluationDao; +import com.adc.da.slrs.sarEnterpriseStandardEvaluation.service.IEvaluationIndexService; import com.adc.da.slrs.sarEnterpriseStandardEvaluation.service.IQualityEvaluationService; import com.adc.da.util.UUIDUtils; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -11,6 +13,8 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.io.PipedReader; +import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.UUID; @@ -35,6 +39,11 @@ public class QualityEvaluationServiceImpl extends ServiceImpl form) { + QueryWrapper queryWrapper = new QueryWrapper<>(); +// +// queryWrapper.eq("user_id",form.get) +// .eq("evaluation_type","dynamic"); + this.remove(queryWrapper); form.forEach(item->item.setId( UUIDUtils.randomUUID20())); return this.saveBatch(form); } @@ -44,9 +53,31 @@ public class QualityEvaluationServiceImpl extends ServiceImpl queryWrapper = new QueryWrapper<>(); Page page = new Page<>(query.getPage(), query.getPageSize()); + + if (query.getUserId()!=null){ //指定用户 + queryWrapper.eq("user_id", query.getUserId()) + .orderBy(true,true, "crate_time","modify_time"); + } + + if (query.getEvaluationType()!=null){ //指定评价指标 + queryWrapper.eq("evaluation_type",query.getEvaluationType()); + } + + return qualityEvaluationDao.getHistory(page,queryWrapper); + + + } + + + + @Override + public List getEvaluationForm(QualityEvaluation query) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + Page page = new Page<>(query.getPage(), query.getPageSize()); + queryWrapper.select("UNAME as userName","score","reason","create_time","modify_time") - .eq("law_id",query.getLawId()) //企标id - .last("JOIN ts_user user ON quality_evaluation.user_id = user.USID"); + .eq("law_id",query.getLawId()) //企标id + .last("JOIN ts_user user ON quality_evaluation.user_id = user.USID"); if (query.getUserId()!=null){ //指定用户 @@ -59,23 +90,44 @@ public class QualityEvaluationServiceImpl extends ServiceImpl getEvaluationForm(QualityEvaluation query) { + public Map getScore(String lawId) { + + QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("law_id",query.getLawId()); + queryWrapper.eq("law_id",lawId); + List list = this.list(queryWrapper); - List qualityEvaluations = this.baseMapper.selectList(queryWrapper); - Map> collect = qualityEvaluations.stream() - .collect(Collectors.groupingBy(QualityEvaluation::getEvaluationType)); - - return null; + return list.stream() + .collect(Collectors.groupingBy(QualityEvaluation::getEvaluationType, + Collectors.averagingDouble(item -> getScoreSingle(item)))); } + private Double getScoreSingle(QualityEvaluation item){ + + QueryWrapper indexQuery = new QueryWrapper<>(); + indexQuery.select("code","weight"); + + List indexList = iEvaluationIndexService.list(indexQuery); + + Map weightMap = indexList.stream() + .collect(Collectors.toMap(EvaluationIndex::getCode, obj -> Float.valueOf(obj.getWeight()))); + + + + String score = item.getScore(); + return ((score == null || (Float.valueOf(item.getScore()) < 0.0)) ? 0.0 : Float.valueOf(score) * weightMap.get(item.getEvaluationIndex())); + } + + + } diff --git a/adc-da-slrs/src/main/resources/mybatis/mapper/sarEnterpriseStandardEvalution/QualityEvaluationMapper.xml b/adc-da-slrs/src/main/resources/mybatis/mapper/sarEnterpriseStandardEvalution/QualityEvaluationMapper.xml index 5f003c2f..c166cfe4 100644 --- a/adc-da-slrs/src/main/resources/mybatis/mapper/sarEnterpriseStandardEvalution/QualityEvaluationMapper.xml +++ b/adc-da-slrs/src/main/resources/mybatis/mapper/sarEnterpriseStandardEvalution/QualityEvaluationMapper.xml @@ -2,4 +2,23 @@ +