lidongdong
2022-10-20 9b601b29f82fe6c307b1032b23d445e7f04c42a8
修改因状态改变统计数据  bug
6个文件已修改
91 ■■■■ 已修改文件
flower_city/src/main/java/com/dg/core/controller/GuideRepairOrderController.java 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/HomeStatisticsController.java 54 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/db/gen/mapper/GuideRepairOrderMapper.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/IGuideRepairOrderService.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/service/impl/GuideRepairOrderServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/resources/mapper/GuideRepairOrderMapper.xml 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
flower_city/src/main/java/com/dg/core/controller/GuideRepairOrderController.java
@@ -387,20 +387,20 @@
        WorkOrder workOrder=new WorkOrder();
        List<String> ids=iOrganizationChartService.getIds(sysUser.getDepartmentId());
        //状态(1待分配  2 待办结 3 已办结 4 待评价 5 已取消  )
        workOrder.setAllNum(iGuideRepairOrderService.countStatisticsNum("",ids,null,null,null,null));
        workOrder.setWaitDistribution(iGuideRepairOrderService.countStatisticsNum("1",ids,null,null,null,null));
        workOrder.setWaitDealWith(iGuideRepairOrderService.countStatisticsNum("2",ids,null,null,null,null));
        workOrder.setHaveDealWith(iGuideRepairOrderService.countStatisticsNum("3",ids,null,null,null,null));
        workOrder.setRemainEvaluated(iGuideRepairOrderService.countStatisticsNum("4",ids,null,null,null,null));
        workOrder.setCanceled(iGuideRepairOrderService.countStatisticsNum("5",ids,null,null,null,null));
        //8未解决  9已解决
        workOrder.setUnsolved(iGuideRepairOrderService.countStatisticsNum("6",ids,null,null,null,null));
        workOrder.setResolved(iGuideRepairOrderService.countStatisticsNum("7",ids,null,null,null,null));
        workOrder.setAllNum(iGuideRepairOrderService.countStatisticsNum("",ids,null,null,null,null,null));
        workOrder.setWaitDistribution(iGuideRepairOrderService.countStatisticsNum("1",ids,null,null,null,null,null));
        workOrder.setWaitDealWith(iGuideRepairOrderService.countStatisticsNum("2",ids,null,null,null,null,null));
        workOrder.setHaveDealWith(iGuideRepairOrderService.countStatisticsNum("3",ids,null,null,null,null,null));
        workOrder.setRemainEvaluated(iGuideRepairOrderService.countStatisticsNum("4",ids,null,null,null,null,null));
        workOrder.setCanceled(iGuideRepairOrderService.countStatisticsNum("5",ids,null,null,null,null,null));
        //服务状态(1.已解决 2.未解决)
        workOrder.setUnsolved(iGuideRepairOrderService.countStatisticsNum(null,ids,null,null,null,null,"2"));
        workOrder.setResolved(iGuideRepairOrderService.countStatisticsNum(null,ids,null,null,null,null,"1"));
        //是否超时 (1 未超时   2已超时) 超时未办结
        workOrder.setOvertime(iGuideRepairOrderService.countStatisticsNum(null,ids,null,"2",null,null));
        workOrder.setOvertimeWaitDealWith(iGuideRepairOrderService.countStatisticsNum("2",ids,null,"2",null,null));
        workOrder.setOvertime(iGuideRepairOrderService.countStatisticsNum(null,ids,null,"2",null,null,null));
        workOrder.setOvertimeWaitDealWith(iGuideRepairOrderService.countStatisticsNum("2",ids,null,"2",null,null,null));
        return ResultData.success(workOrder);
    }
flower_city/src/main/java/com/dg/core/controller/HomeStatisticsController.java
@@ -55,20 +55,20 @@
    {
        WorkOrder workOrder=new WorkOrder();
        //状态(1待分配  2 待办结 3 已办结 4 待评价 5 已取消)
        workOrder.setAllNum(iGuideRepairOrderService.countStatisticsNum("",null,null,null,null,null));
        workOrder.setWaitDistribution(iGuideRepairOrderService.countStatisticsNum("1",null,null,null,null,null));
        workOrder.setWaitDealWith(iGuideRepairOrderService.countStatisticsNum("2",null,null,null,null,null));
        workOrder.setHaveDealWith(iGuideRepairOrderService.countStatisticsNum("3",null,null,null,null,null));
        workOrder.setRemainEvaluated(iGuideRepairOrderService.countStatisticsNum("4",null,null,null,null,null));
        workOrder.setCanceled(iGuideRepairOrderService.countStatisticsNum("5",null,null,null,null,null));
        //
        workOrder.setUnsolved(iGuideRepairOrderService.countStatisticsNum("6",null,null,null,null,null));
        workOrder.setResolved(iGuideRepairOrderService.countStatisticsNum("7",null,null,null,null,null));
        workOrder.setAllNum(iGuideRepairOrderService.countStatisticsNum("",null,null,null,null,null,null));
        workOrder.setWaitDistribution(iGuideRepairOrderService.countStatisticsNum("1",null,null,null,null,null,null));
        workOrder.setWaitDealWith(iGuideRepairOrderService.countStatisticsNum("2",null,null,null,null,null,null));
        workOrder.setHaveDealWith(iGuideRepairOrderService.countStatisticsNum("3",null,null,null,null,null,null));
        workOrder.setRemainEvaluated(iGuideRepairOrderService.countStatisticsNum("4",null,null,null,null,null,null));
        workOrder.setCanceled(iGuideRepairOrderService.countStatisticsNum("5",null,null,null,null,null,null));
        // //服务状态(1.已解决 2.未解决)
        workOrder.setUnsolved(iGuideRepairOrderService.countStatisticsNum(null,null,null,null,null,null,"2"));
        workOrder.setResolved(iGuideRepairOrderService.countStatisticsNum(null,null,null,null,null,null,"1"));
        //是否超时 (1 未超时   2已超时) 超时未办结
        workOrder.setOvertime(iGuideRepairOrderService.countStatisticsNum(null,null,null,"2",null,null));
        workOrder.setOvertime(iGuideRepairOrderService.countStatisticsNum(null,null,null,"2",null,null,null));
//        超时未办结
        workOrder.setOvertimeWaitDealWith(iGuideRepairOrderService.countStatisticsNum("2",null,null,"2",null,null));
        workOrder.setOvertimeWaitDealWith(iGuideRepairOrderService.countStatisticsNum("2",null,null,"2",null,null,null));
        return ResultData.success(workOrder);
    }
@@ -80,11 +80,11 @@
        //1 今天   2昨天   3本月   4本年度
        //累计全部 本年 本月 今日 昨日
        TimeWorkOrder timeWorkOrder=new TimeWorkOrder();
        timeWorkOrder.setAllNum(iGuideRepairOrderService.countStatisticsNum(null,null,null,null,null,null));
        timeWorkOrder.setYearNum(iGuideRepairOrderService.countStatisticsNum(null,null,"4",null,null,null));
        timeWorkOrder.setMonthNum(iGuideRepairOrderService.countStatisticsNum(null,null,"3",null,null,null));
        timeWorkOrder.setTodayNum(iGuideRepairOrderService.countStatisticsNum(null,null,"1",null,null,null));
        timeWorkOrder.setYesterdayNum(iGuideRepairOrderService.countStatisticsNum(null,null,"2",null,null,null));
        timeWorkOrder.setAllNum(iGuideRepairOrderService.countStatisticsNum(null,null,null,null,null,null,null));
        timeWorkOrder.setYearNum(iGuideRepairOrderService.countStatisticsNum(null,null,"4",null,null,null,null));
        timeWorkOrder.setMonthNum(iGuideRepairOrderService.countStatisticsNum(null,null,"3",null,null,null,null));
        timeWorkOrder.setTodayNum(iGuideRepairOrderService.countStatisticsNum(null,null,"1",null,null,null,null));
        timeWorkOrder.setYesterdayNum(iGuideRepairOrderService.countStatisticsNum(null,null,"2",null,null,null,null));
        return ResultData.success(timeWorkOrder);
    }
@@ -121,38 +121,38 @@
    {
        EfficiencyEntity entity=new EfficiencyEntity();
        //总工单数
        int allNum=iGuideRepairOrderService.countStatisticsNum("",null,null,null,null,null);
        int allNum=iGuideRepairOrderService.countStatisticsNum("",null,null,null,null,null,null);
        java.text.DecimalFormat weekDf=new java.text.DecimalFormat("##.##%");//传入格式模板
        int bj=iGuideRepairOrderService.countStatisticsNum("3",null,null,null,null,null);
        int bj=iGuideRepairOrderService.countStatisticsNum("3",null,null,null,null,null,null);
        if(bj!=0)
        {
            //        好评率=评价为满意的导办工单数量/已办结状态工单数量
            String goodReputationEfficiency=weekDf.format((float)(iGuideRepairOrderService.countStatisticsNum(null,null,null,null,"1",null)
            String goodReputationEfficiency=weekDf.format((float)(iGuideRepairOrderService.countStatisticsNum(null,null,null,null,"1",null,null)
                    /(float)bj));
            entity.setGoodReputationEfficiency(goodReputationEfficiency);
            //      解决率=已解决状态的导办工单数量/已办结状态工单数量
            String resolveEfficiency=weekDf.format((float)(iGuideRepairOrderService.countStatisticsNum("7",null,null,null,null,null)
            String resolveEfficiency=weekDf.format((float)(iGuideRepairOrderService.countStatisticsNum(null,null,null,null,null,null,"1")
                    /(float)bj));
            entity.setResolveEfficiency(resolveEfficiency);
            if(allNum!=0)
            {
//              办结率=待评价+已办结状态的导办工单数量/总工单数量
                String workEfficiency=weekDf.format((float)((iGuideRepairOrderService.countStatisticsNum("4",null,null,null,null,null)
                String workEfficiency=weekDf.format((float)((iGuideRepairOrderService.countStatisticsNum("4",null,null,null,null,null,null)
                        +bj)/(float)allNum));
                entity.setWorkEfficiency(workEfficiency);
            }
        }
        int cs=iGuideRepairOrderService.countStatisticsNum(null,null,null,"2",null,null);
        int cs=iGuideRepairOrderService.countStatisticsNum(null,null,null,"2",null,null,null);
        if(cs!=0)
        {
            //        超时办结率=超时状态下的待评价+已办结状态的导办工单数量/超时状态的导办工单数量
            String timeoutEfficiency=weekDf.format((float)((iGuideRepairOrderService.countStatisticsNum("4",null,null,"2",null,null)
                    +iGuideRepairOrderService.countStatisticsNum("3",null,null,null,null,null))
            String timeoutEfficiency=weekDf.format((float)((iGuideRepairOrderService.countStatisticsNum("4",null,null,"2",null,null,null)
                    +iGuideRepairOrderService.countStatisticsNum("3",null,null,null,null,null,null))
                    /(float)cs));
            entity.setTimeoutEfficiency(timeoutEfficiency);
@@ -174,7 +174,7 @@
    public ResultData<PieChartAll> getPieChart()
    {
        PieChartAll pieChartAll=new PieChartAll();
        pieChartAll.setWorkOrderNum(iGuideRepairOrderService.countStatisticsNum("",null,null,null,null,null)+"");
        pieChartAll.setWorkOrderNum(iGuideRepairOrderService.countStatisticsNum("",null,null,null,null,null,null)+"");
        pieChartAll.setFingerpostNum(homeStatisticsService.countStatisticsNum(null)+"");
        List<PieChart> workOrderList=new ArrayList<>();
        List<PieChart> fingerpostList=new ArrayList<>();
@@ -198,7 +198,7 @@
            int fingerpostNum=0;
            if(clasIds.size()>0)
            {
                workOrderNum=iGuideRepairOrderService.countStatisticsNum(null,null,null,null,null,clasIds);
                workOrderNum=iGuideRepairOrderService.countStatisticsNum(null,null,null,null,null,clasIds,null);
                fingerpostNum=homeStatisticsService.countStatisticsNum(clasIds);
            }
            workOrder.setNum(workOrderNum+"");
@@ -352,7 +352,7 @@
            int num=0;
            if(ids!=null&&ids.size()>0)
            {
                num=iGuideRepairOrderService.countStatisticsNum(null,ids,null,null,null,null);
                num=iGuideRepairOrderService.countStatisticsNum(null,ids,null,null,null,null,null);
            }
            range.setNum(num+"");
            rangeStatistics.add(range);
flower_city/src/main/java/com/dg/core/db/gen/mapper/GuideRepairOrderMapper.java
@@ -84,7 +84,8 @@
                           @Param("time") String time,
                           @Param("isTimeout") String isTimeout,
                           @Param("evaluateState") String evaluateState,
                           @Param("classifyIds") List<String> classifyIds);
                           @Param("classifyIds") List<String> classifyIds,
                           @Param("serviceState") String serviceState);
    /**
     * 统计工单用
flower_city/src/main/java/com/dg/core/service/IGuideRepairOrderService.java
@@ -67,7 +67,9 @@
     * 统计工单用  1 今天   2昨天   3本月   4本年度 String time
     * @return
     */
    int countStatisticsNum(String state,List<String> ids,String time,String isTimeout,String evaluateState,List<String> classifyIds);
    int countStatisticsNum(String state,List<String> ids,String time,String isTimeout,
                           String evaluateState,List<String> classifyIds,
                           String serviceState);
    /**
     * 统计数据
flower_city/src/main/java/com/dg/core/service/impl/GuideRepairOrderServiceImpl.java
@@ -260,8 +260,9 @@
     */
    @Override
    public int countStatisticsNum(String state, List<String> ids, String time,
                                  String isTimeout, String evaluateState, List<String> classifyIds) {
        return baseMapper.countStatisticsNum(state, ids, time, isTimeout, evaluateState, classifyIds);
                                  String isTimeout, String evaluateState,
                                  List<String> classifyIds,String serviceState) {
        return baseMapper.countStatisticsNum(state, ids, time, isTimeout, evaluateState, classifyIds,serviceState);
    }
    @Override
flower_city/src/main/resources/mapper/GuideRepairOrderMapper.xml
@@ -198,6 +198,9 @@
                    #{param}
                </foreach>
            </if>
            <if test="serviceState != null and serviceState != ''">
                and automessage_guide_repair_order.service_state=#{serviceState}
            </if>
            <if test="time != null and time == 1 ">
                and to_days(automessage_guide_repair_order.create_time) = to_days(now())
            </if>