fengjin
2022-10-21 1fb23cbeeaaeda0a66cf8fe8977c3f5915743cc7
flower_city/src/main/java/com/dg/core/controller/GuideRepairOrderController.java
@@ -10,6 +10,7 @@
import com.dg.core.service.IGuideEvolveService;
import com.dg.core.service.IGuideRepairOrderService;
import com.dg.core.service.IOrganizationChartService;
import com.dg.core.util.PermissionUtil;
import com.dg.core.util.SmsUtil;
import com.dg.core.util.TableDataInfo;
import com.dg.core.util.WxUtil;
@@ -66,7 +67,7 @@
            return ResultData.success();
          }
          else
            return  ResultData.error();
              return  ResultData.error("提交失败,请检查你是否有相同的咨询内容在处理中");
    }
@@ -128,15 +129,15 @@
        GuideEvolveEntity entity=new GuideEvolveEntity();
        entity.setCreateTime(LocalDateTime.now());
        entity.setUpdateTime(LocalDateTime.now());
        entity.setState("13");
        entity.setDepartmentalId(sysUser.getDepartmentId());
        entity.setToUserId(sysUser.getUserId()+"");
        entity.setFromUserId(order.getGuideUserId());
        entity.setFromDepartmentalId(order.getGuideDepartmentId());
        entity.setState("11");
        entity.setDepartmentalId(order.getGuideDepartmentId());
        entity.setToUserId(order.getGuideUserId());
        entity.setFromUserId(sysUser.getUserId().toString());
        entity.setFromDepartmentalId(sysUser.getDepartmentId());
        entity.setGuideId(order.getId().toString());
        iGuideRepairOrderService.updateSysUserOrderNum(entity);
        iGuideEvolveService.insertConfig(entity);
        order=iGuideRepairOrderService.setTimeoutTim(order);
        return toAjax(iGuideRepairOrderService.updateConfig(order));
    }
@@ -173,14 +174,16 @@
        GuideEvolveEntity entity=new GuideEvolveEntity();
        entity.setCreateTime(LocalDateTime.now());
        entity.setUpdateTime(LocalDateTime.now());
        entity.setState("12");
        entity.setState("10");
        entity.setDepartmentalId(order.getGuideDepartmentId());
        entity.setToUserId(order.getGuideUserId());
        entity.setFromUserId(sysUser.getUserId()+"");
        entity.setFromDepartmentalId(sysUser.getDepartmentId());
        entity.setGuideId(order.getId().toString());
        order=iGuideRepairOrderService.setTimeoutTim(order);
        iGuideEvolveService.insertConfig(entity);
        iGuideRepairOrderService.updateSysUserOrderNum(entity);
        return toAjax(iGuideRepairOrderService.updateConfig(order));
    }
@@ -219,7 +222,7 @@
        }
        if(StringUtils.equals(entity.getState(),"2")){//如果用户选择未解决则状态改为待办
            order.setState("2");
            entity.setState("8");
            entity.setState("9");
        }
        else if(StringUtils.equals(entity.getState(),"4")){
            //待评价
@@ -233,13 +236,13 @@
                    throw new RuntimeException(e);
                }
                SysUser submitUser = iGuideRepairOrderService.getSubmitUser(order);
                wxUtil.sendGuideRepairOrderComplete(submitUser.getOpenid(),accessToken,guideRepairOrderCompleteTemplateId,order);
                wxUtil.sendGuideRepairOrderComplete(submitUser.getOpenid(),accessToken,guideRepairOrderCompleteTemplateId,entity);
            }
            else if (order.getSubmitType().equals(2)){
                smsUtil.sendSmsComplete(order.getSubmitUserPhone(),order.getMatterName());
                smsUtil.sendSmsComplete(order.getConsultUserPhone(),order.getMatterName());
            }
            order.setState("4");
            entity.setState("9");
            entity.setState("7");
        }
        //新增已办结记录
        entity.setCreateTime(LocalDateTime.now());
@@ -248,6 +251,7 @@
        entity.setFromUserId(sysUser.getUserId()+"");
        entity.setGuideId(order.getId().toString());
        iGuideEvolveService.insertConfig(entity);
        iGuideRepairOrderService.updateSysUserOrderNum(entity);
        return toAjax(iGuideRepairOrderService.updateConfig(order));
    }
@@ -318,11 +322,6 @@
            return ResultData.error("工单id不能为空");
        }
        if(!StringUtils.equals(entity.getState(),"4"))
        {
            return ResultData.error("该工单不能评价!");
        }
        if(StringUtils.isEmpty(entity.getEvaluateState()))
        {
            return ResultData.error("满意程度不能为空!");
@@ -333,7 +332,7 @@
        GuideEvolveEntity guideEvolveEntity=new GuideEvolveEntity();
        guideEvolveEntity.setCreateTime(LocalDateTime.now());
        guideEvolveEntity.setUpdateTime(LocalDateTime.now());
        guideEvolveEntity.setState("3");
        guideEvolveEntity.setState("13");
        guideEvolveEntity.setFromDepartmentalId(sysUser.getDepartmentId());
        guideEvolveEntity.setFromUserId(sysUser.getUserId()+"");
        guideEvolveEntity.setGuideId(entity.getId().toString());
@@ -366,17 +365,33 @@
    @GetMapping("/getList")
    @Authorization
    public TableDataInfo selectConfigList(@RequestParam(value = "pageNum",required = false) Integer pageNum,
                                   @RequestParam(value = "pageSize",required = false) Integer pageSize,
                                   @RequestParam(value = "matterName",required = false) String matterName,
                                          @RequestParam(value = "pageSize",required = false) Integer pageSize,
                                          @RequestParam(value = "matterName",required = false) String matterName,
                                          @RequestParam(value = "status",required = false) String status,
                                          @CurrentUser SysUser sysUser)
    {
        Assert.notNull(pageNum, "pageNum 不能为空");
        Assert.notNull(pageSize, "pageSize 不能为空");
        Page<GuideRepairOrder> pageParam = new Page<>(pageNum,pageSize);
        List<String> ids=iOrganizationChartService.getIds(sysUser.getDepartmentId());
        List<GuideRepairOrder> list = iGuideRepairOrderService.selectConfigList(pageParam,pageSize,matterName,ids);
        int num=iGuideRepairOrderService.countConfigList(matterName,ids);
        List<String> ids=PermissionUtil.getPermission(sysUser,iOrganizationChartService);
        String userId=null;
        if( StringUtils.equals("2",sysUser.getRoleIds()))
        {
            if(StringUtils.equals("1",sysUser.getIsDivisionHead()))
            {
                userId=null;
            }
            else
            {
                ids=null;
                userId=sysUser.getUserId()+"";
            }
        }
        List<GuideRepairOrder> list = iGuideRepairOrderService.selectConfigList(pageParam,pageSize,
                matterName,ids,status,userId);
        int num=iGuideRepairOrderService.countConfigList(matterName,ids,status,userId);
        return getDataTable(list,num);
    }
@@ -387,26 +402,52 @@
    public ResultData getWorkOrder(@CurrentUser SysUser sysUser)
    {
        WorkOrder workOrder=new WorkOrder();
        List<String> ids=iOrganizationChartService.getIds(sysUser.getDepartmentId());
        //状态(1待分配  2 待办结 3 已办结 4 待评价 5 已取消  8未解决  9已解决)
        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));
        workOrder.setUnsolved(iGuideRepairOrderService.countStatisticsNum("6",ids,null,null,null,null));
        workOrder.setResolved(iGuideRepairOrderService.countStatisticsNum("7",ids,null,null,null,null));
        List<String> ids=PermissionUtil.getPermission(sysUser,iOrganizationChartService);
        String userId=null;
        if( StringUtils.equals("2",sysUser.getRoleIds()))
        {
            if(StringUtils.equals("1",sysUser.getIsDivisionHead()))
            {
                userId=null;
            }
            else
            {
                ids=null;
                userId=sysUser.getUserId()+"";
            }
        }
        //状态(1待分配  2 待办结 3 已办结 4 待评价 5 已取消  )
        workOrder.setAllNum(iGuideRepairOrderService.countStatisticsNum("",ids,null,null,null,null,null,userId));
        workOrder.setWaitDistribution(iGuideRepairOrderService.countStatisticsNum("1",ids,null,null,null,null,null,userId));
        workOrder.setWaitDealWith(iGuideRepairOrderService.countStatisticsNum("2",ids,null,null,null,null,null,userId));
        workOrder.setHaveDealWith(iGuideRepairOrderService.countStatisticsNum("3",ids,null,null,null,null,null,userId));
        workOrder.setRemainEvaluated(iGuideRepairOrderService.countStatisticsNum("4",ids,null,null,null,null,null,userId));
        workOrder.setCanceled(iGuideRepairOrderService.countStatisticsNum("5",ids,null,null,null,null,null,userId));
        //服务状态(1.已解决 2.未解决)
        workOrder.setUnsolved(iGuideRepairOrderService.countStatisticsNum(null,ids,null,null,null,null,"2",userId));
        workOrder.setResolved(iGuideRepairOrderService.countStatisticsNum(null,ids,null,null,null,null,"1",userId));
        //是否超时 (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,userId));
        workOrder.setOvertimeWaitDealWith(iGuideRepairOrderService.countStatisticsNum("2",ids,null,"2",null,null,null,userId));
        return ResultData.success(workOrder);
    }
    /**
     * 删除工单
     * @param id
     * @return
     */
    @ApiOperation(value = "删除工单",response = GuideRepairOrder.class)
    @DeleteMapping("/delete/{id}")
    @Authorization
    public ResultData deleteConfigById(@PathVariable("id") String id)
    {
        return toAjax(iGuideRepairOrderService.deleteConfigById(id));
    }
}