mitao
2025-05-13 0aab25aa0834d45c4c6dac409a947d6fd7f61cbf
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/ComplaintServiceImpl.java
@@ -563,8 +563,6 @@
//        }
//        //已办结,显示评价按钮
//        int count = complaintCommentService.count(new LambdaQueryWrapper<ComplaintComment>().eq(ComplaintComment::getComplaintId, detail.getId()).eq(ComplaintComment::getDelFlag, 0));
//        if(detail.getStatus() == 3 && 0 == count){
@@ -1517,7 +1515,7 @@
            if(lastMonthAverageTimeComplaints.size()>0){
                double lastMonthAverageTime = lastMonthAverageTimeComplaints.stream().mapToDouble(v -> v.getHandlingDay() == null ? 0 : v.getHandlingDay()).average().getAsDouble();
                lastMonthAverageTime = BigDecimal.valueOf(lastMonthAverageTime).setScale(2, RoundingMode.HALF_UP).doubleValue();
                vo.setAverageTime(vo.getThisMonthAverageTime() - lastMonthAverageTime);
                vo.setLastMonthCompareAverageTime(vo.getThisMonthAverageTime() - lastMonthAverageTime);
            }
        }
@@ -1539,7 +1537,7 @@
                vo.setThisMonthSatisfactionRate(multiply1.doubleValue());
            }
            List<Complaint> lastMonth = commentRateComplaints.stream().filter(e -> simpleDateFormat.format(e.getCreateTime()).contains(nowYearMonth)).collect(Collectors.toList());
            List<Complaint> lastMonth = commentRateComplaints.stream().filter(e -> simpleDateFormat.format(e.getCreateTime()).contains(lastYearMonth)).collect(Collectors.toList());
            // 当月满意
            long count2 = lastMonth.stream().filter(e -> e.getCommentRate() > 1).count();
            // 当月的评价数
@@ -1562,6 +1560,7 @@
                Date parse1 = simpleDateFormat.parse(split[1] + " 23:59:59");
                complaints = complaints.stream().filter(e -> e.getCreateTime().getTime() <= parse1.getTime() && e.getCreateTime().getTime() >= parse.getTime()).collect(Collectors.toList());
                int day = DateUtils.getDay(parse, parse1);
                if(day>30){
                    throw new ServiceException("时间范围不能超过30天");
                }
@@ -1642,11 +1641,12 @@
        long count1 = complaints.stream().filter(e -> e.getCommentRate() != null && e.getCommentRate() == 1).count();
        long count2 = complaints.stream().filter(e -> e.getCommentRate() != null && e.getCommentRate() == 2).count();
        long count3 = complaints.stream().filter(e -> e.getCommentRate() != null && e.getCommentRate() == 3).count();
        if (complaints.size() > 0) {
        vo.setDissatisfactionRate(BigDecimal.valueOf(count).divide(BigDecimal.valueOf(complaints.size()), 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")).doubleValue());
        vo.setGeneralSatisfactionRate(BigDecimal.valueOf(count1).divide(BigDecimal.valueOf(complaints.size()), 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")).doubleValue());
        vo.setSatisfactionRate(BigDecimal.valueOf(count2).divide(BigDecimal.valueOf(complaints.size()), 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")).doubleValue());
        vo.setGreatSatisfactionRate(BigDecimal.valueOf(count3).divide(BigDecimal.valueOf(complaints.size()), 2, RoundingMode.HALF_UP).multiply(new BigDecimal("100")).doubleValue());
        }
        return vo;
    }