| | |
| | | patSatisfactionDetailEntity.setScriptContent(ivrLibaTemplateScript.getScriptContent()); |
| | | patSatisfactionDetailEntity.setAnswerPerson(CollectionUtils.isEmpty(fillCount) ? 0 : fillCount.size()); |
| | | patSatisfactionDetailEntity.setNoAnswerPerson(CollectionUtils.isNotEmpty(fillCount) && CollectionUtils.isNotEmpty(subids) ? (subids.size() - fillCount.size()) : CollectionUtils.isNotEmpty(subids) ? subids.size() : 0); |
| | | patSatisfactionDetailEntity.setAverageScore(averageScore(fillCount)); |
| | | patSatisfactionDetailEntity.setMaxScore(maxScore(ivrLibaTemplateTargetoptions)); |
| | | patSatisfactionDetailEntity.setMinScore(minScore(ivrLibaTemplateTargetoptions)); |
| | | patSatisfactionDetailEntity.setAverageScore(String.valueOf(averageScore(fillCount))); |
| | | patSatisfactionDetailEntity.setMaxScore(String.valueOf(maxScore(ivrLibaTemplateTargetoptions))); |
| | | patSatisfactionDetailEntity.setMinScore(String.valueOf(minScore(ivrLibaTemplateTargetoptions))); |
| | | patSatisfactionDetailEntity.setAnswerRate(CollectionUtils.isEmpty(subids) ? 0 : CollectionUtils.isEmpty(fillCount) ? 0 : fillCount.size() * 1.0 / subids.size()); |
| | | patSatisfactionDetailEntity.setMatchedtextStats(matchedtextStats); |
| | | patSatisfactionDetailEntities.add(patSatisfactionDetailEntity); |
| | |
| | | patSatisfactionDetailEntity.setScriptContent(svyLibTemplateScript.getScriptContent()); |
| | | patSatisfactionDetailEntity.setAnswerPerson(CollectionUtils.isEmpty(fillCount) ? 0 : fillCount.size()); |
| | | patSatisfactionDetailEntity.setNoAnswerPerson(CollectionUtils.isNotEmpty(fillCount) && CollectionUtils.isNotEmpty(subids) ? (subids.size() - fillCount.size()) : CollectionUtils.isNotEmpty(subids) ? subids.size() : 0); |
| | | patSatisfactionDetailEntity.setAverageScore(averageScore(fillCount)); |
| | | patSatisfactionDetailEntity.setAverageScore(String.valueOf(averageScore(fillCount))); |
| | | |
| | | OptionalDouble maxOpt = svyLibTemplateTargetoptions.stream().filter(dto -> dto.getScore() != null).mapToDouble(dto -> dto.getScore().doubleValue()).max(); |
| | | patSatisfactionDetailEntity.setMaxScore(maxOpt.isPresent() ? new BigDecimal(maxOpt.getAsDouble()).setScale(1, RoundingMode.HALF_UP).doubleValue() : 0.0); |
| | | Double maxScore = svyLibTemplateTargetoptions.stream() |
| | | .map(dto -> dto.getScore()) |
| | | .filter(scoreStr -> scoreStr != null && !scoreStr.isEmpty()) |
| | | .mapToDouble(Double::parseDouble) |
| | | .max() |
| | | .orElse(0.0); |
| | | patSatisfactionDetailEntity.setMaxScore(String.valueOf(maxScore)); |
| | | |
| | | OptionalDouble minOpt = svyLibTemplateTargetoptions.stream().filter(dto -> dto.getScore() != null).mapToDouble(dto -> dto.getScore().doubleValue()).min(); |
| | | patSatisfactionDetailEntity.setMinScore(minOpt.isPresent() ? new BigDecimal(minOpt.getAsDouble()).setScale(1, RoundingMode.HALF_UP).doubleValue() : 0.0); |
| | | Double minScore = svyLibTemplateTargetoptions.stream() |
| | | .map(dto -> dto.getScore()) |
| | | .filter(scoreStr -> scoreStr != null && !scoreStr.isEmpty()) |
| | | .mapToDouble(Double::parseDouble) |
| | | .min() |
| | | .orElse(0.0); |
| | | patSatisfactionDetailEntity.setMinScore(String.valueOf(minScore)); |
| | | |
| | | patSatisfactionDetailEntity.setAnswerRate(CollectionUtils.isEmpty(subids) ? 0 : CollectionUtils.isEmpty(fillCount) ? 0 : fillCount.size() * 1.0 / subids.size()); |
| | | patSatisfactionDetailEntity.setMatchedtextStats(matchedtextStats); |
| | |
| | | patSatisfactionDetailEntity.setScriptContent(ivrLibaTemplateScript.getScriptContent()); |
| | | patSatisfactionDetailEntity.setAnswerPerson(CollectionUtils.isEmpty(fillCount) ? 0 : fillCount.size()); |
| | | patSatisfactionDetailEntity.setNoAnswerPerson(CollectionUtils.isNotEmpty(fillCount) && CollectionUtils.isNotEmpty(subids) ? (subids.size() - fillCount.size()) : CollectionUtils.isNotEmpty(subids) ? subids.size() : 0); |
| | | patSatisfactionDetailEntity.setAverageScore(averageScore(fillCount)); |
| | | patSatisfactionDetailEntity.setMaxScore(maxScore(ivrLibaTemplateTargetoptions)); |
| | | patSatisfactionDetailEntity.setMinScore(minScore(ivrLibaTemplateTargetoptions)); |
| | | patSatisfactionDetailEntity.setAverageScore(String.valueOf(averageScore(fillCount))); |
| | | patSatisfactionDetailEntity.setMaxScore(String.valueOf(maxScore(ivrLibaTemplateTargetoptions))); |
| | | patSatisfactionDetailEntity.setMinScore(String.valueOf(minScore(ivrLibaTemplateTargetoptions))); |
| | | patSatisfactionDetailEntity.setAnswerRate(CollectionUtils.isEmpty(subids) ? 0 : CollectionUtils.isEmpty(fillCount) ? 0 : fillCount.size() * 1.0 / subids.size()); |
| | | patSatisfactionDetailEntity.setMatchedtextStats(matchedtextStats); |
| | | patSatisfactionDetailEntities.add(patSatisfactionDetailEntity); |
| | |
| | | patSatisfactionDetailEntity.setScriptContent(svyLibTemplateScript.getScriptContent()); |
| | | patSatisfactionDetailEntity.setAnswerPerson(CollectionUtils.isEmpty(fillCount) ? 0 : fillCount.size()); |
| | | patSatisfactionDetailEntity.setNoAnswerPerson(CollectionUtils.isNotEmpty(fillCount) && CollectionUtils.isNotEmpty(subids) ? (subids.size() - fillCount.size()) : CollectionUtils.isNotEmpty(subids) ? subids.size() : 0); |
| | | patSatisfactionDetailEntity.setAverageScore(averageScore(fillCount)); |
| | | patSatisfactionDetailEntity.setAverageScore(String.valueOf(averageScore(fillCount))); |
| | | |
| | | OptionalDouble maxOpt = svyLibTemplateTargetoptions.stream().filter(dto -> dto.getScore() != null).mapToDouble(dto -> dto.getScore().doubleValue()).max(); |
| | | patSatisfactionDetailEntity.setMaxScore(maxOpt.isPresent() ? new BigDecimal(maxOpt.getAsDouble()).setScale(1, RoundingMode.HALF_UP).doubleValue() : 0.0); |
| | | Double maxScore = svyLibTemplateTargetoptions.stream() |
| | | .map(dto -> dto.getScore()) |
| | | .filter(scoreStr -> scoreStr != null && !scoreStr.isEmpty()) |
| | | .mapToDouble(Double::parseDouble) |
| | | .max() |
| | | .orElse(0.0); |
| | | patSatisfactionDetailEntity.setMaxScore(String.valueOf(maxScore)); |
| | | |
| | | OptionalDouble minOpt = svyLibTemplateTargetoptions.stream().filter(dto -> dto.getScore() != null).mapToDouble(dto -> dto.getScore().doubleValue()).min(); |
| | | patSatisfactionDetailEntity.setMinScore(minOpt.isPresent() ? new BigDecimal(minOpt.getAsDouble()).setScale(1, RoundingMode.HALF_UP).doubleValue() : 0.0); |
| | | Double minScore = svyLibTemplateTargetoptions.stream() |
| | | .map(dto -> dto.getScore()) |
| | | .filter(scoreStr -> scoreStr != null && !scoreStr.isEmpty()) |
| | | .mapToDouble(Double::parseDouble) |
| | | .min() |
| | | .orElse(0.0); |
| | | patSatisfactionDetailEntity.setMinScore(String.valueOf(minScore)); |
| | | |
| | | patSatisfactionDetailEntity.setAnswerRate(CollectionUtils.isEmpty(subids) ? 0 : CollectionUtils.isEmpty(fillCount) ? 0 : fillCount.size() * 1.0 / subids.size()); |
| | | patSatisfactionDetailEntity.setMatchedtextStats(matchedtextStats); |
| | |
| | | */ |
| | | private Double maxScore(List<IvrLibaTemplateTargetoption> options) { |
| | | if (CollectionUtils.isEmpty(options)) return 0.0; |
| | | OptionalDouble maxOpt = options.stream().filter(dto -> dto.getScore() != null).mapToDouble(dto -> dto.getScore().doubleValue()).max(); |
| | | return maxOpt.isPresent() ? new BigDecimal(maxOpt.getAsDouble()).setScale(1, RoundingMode.HALF_UP).doubleValue() : 0.0; |
| | | Double maxScore = options.stream() |
| | | .map(IvrLibaTemplateTargetoption::getScore) |
| | | .filter(scoreStr -> scoreStr != null && !scoreStr.isEmpty()) |
| | | .mapToDouble(Double::parseDouble) |
| | | .max() |
| | | .orElse(0.0); |
| | | return maxScore; |
| | | } |
| | | |
| | | /** |
| | |
| | | */ |
| | | private Double minScore(List<IvrLibaTemplateTargetoption> options) { |
| | | if (CollectionUtils.isEmpty(options)) return 0.0; |
| | | OptionalDouble minOpt = options.stream().filter(dto -> dto.getScore() != null).mapToDouble(dto -> dto.getScore().doubleValue()).min(); |
| | | return minOpt.isPresent() ? new BigDecimal(minOpt.getAsDouble()).setScale(1, RoundingMode.HALF_UP).doubleValue() : 0.0; |
| | | Double minScore = options.stream() |
| | | .map(IvrLibaTemplateTargetoption::getScore) |
| | | .filter(scoreStr -> scoreStr != null && !scoreStr.isEmpty()) |
| | | .mapToDouble(Double::parseDouble) |
| | | .min() |
| | | .orElse(0.0); |
| | | return minScore; |
| | | } |
| | | |
| | | /** |