|
@@ -1,14 +1,22 @@
|
|
|
package com.ims.eval.service.impl;
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
+import com.ims.common.utils.StringUtils;
|
|
|
import com.ims.eval.dao.OrganizationRatingMapper;
|
|
|
+import com.ims.eval.entity.OrganizationEvaluationRule;
|
|
|
import com.ims.eval.entity.OrganizationRating;
|
|
|
import com.ims.eval.entity.OrganizationRatingRule;
|
|
|
+import com.ims.eval.service.IOrganizationEvaluationRuleService;
|
|
|
import com.ims.eval.service.IOrganizationRatingService;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.List;
|
|
|
+import java.util.stream.Collectors;
|
|
|
+
|
|
|
/**
|
|
|
* <p>
|
|
|
* 年度评级 服务实现类
|
|
@@ -20,6 +28,9 @@ import org.springframework.stereotype.Service;
|
|
|
@Service
|
|
|
public class OrganizationRatingServiceImpl extends ServiceImpl<OrganizationRatingMapper, OrganizationRating> implements IOrganizationRatingService {
|
|
|
|
|
|
+
|
|
|
+
|
|
|
+ private IOrganizationEvaluationRuleService organizationEvaluationRuleService;
|
|
|
@Override
|
|
|
public IPage<OrganizationRating> list(Integer pageNum, Integer pageSize, String id,String organizationYearRatingId, String binSection, String year,String organizationShortName,String organizationId) {
|
|
|
Page<OrganizationRatingRule> page = new Page<>(pageNum, pageSize);
|
|
@@ -29,4 +40,48 @@ public class OrganizationRatingServiceImpl extends ServiceImpl<OrganizationRatin
|
|
|
IPage<OrganizationRating> list = baseMapper.selectList(page,id,organizationYearRatingId,binSection,year,organizationShortName,organizationId);
|
|
|
return list;
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public boolean generateRating(String organizationYearRatingId, String year) {
|
|
|
+ List<OrganizationRating> ratings = list( organizationYearRatingId, year, "");
|
|
|
+ List<String> collect = ratings.stream().map(OrganizationRating::getOrganizationId).collect(Collectors.toList());
|
|
|
+ List<OrganizationEvaluationRule> evaluationRules = organizationEvaluationRuleService.listByIsCheck("","NDKP",year,true,false);
|
|
|
+
|
|
|
+ List<OrganizationRating> addRatings = new ArrayList<>();
|
|
|
+ for (OrganizationEvaluationRule rule : evaluationRules){
|
|
|
+ if(null != collect && collect.size()>0 && collect.contains(rule.getOrganizationId())){
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ OrganizationRating rating = new OrganizationRating();
|
|
|
+ rating.setOrganizationYearRatingId(organizationYearRatingId);
|
|
|
+ rating.setOrganizationShortName(rule.getOrganizationShortName());
|
|
|
+ rating.setOrganizationId(rule.getOrganizationId());
|
|
|
+ rating.setYearRate(year);
|
|
|
+ rating.setBinSection(rule.getBinSection());
|
|
|
+ addRatings.add(rating);
|
|
|
+ }
|
|
|
+
|
|
|
+ boolean b = this.saveOrUpdateBatch(addRatings);
|
|
|
+ return b;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<OrganizationRating> list(String organizationYearRatingId, String year, String organizationId) {
|
|
|
+ QueryWrapper<OrganizationRating> qw = new QueryWrapper<>();
|
|
|
+
|
|
|
+ if (StringUtils.isNotEmpty(organizationYearRatingId)) {
|
|
|
+ qw.lambda().eq(OrganizationRating::getOrganizationYearRatingId, organizationYearRatingId);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (StringUtils.isNotEmpty(year)) {
|
|
|
+ qw.lambda().eq(OrganizationRating::getYear, year);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (StringUtils.isNotEmpty(organizationId)) {
|
|
|
+ qw.lambda().eq(OrganizationRating::getOrganizationId, organizationId);
|
|
|
+ }
|
|
|
+
|
|
|
+ List<OrganizationRating> list = baseMapper.selectList(qw);
|
|
|
+ return list;
|
|
|
+ }
|
|
|
}
|