| | |
| | | import com.ruoyi.common.utils.StringUtils; |
| | | import com.ruoyi.common.utils.poi.ExcelUtil; |
| | | import com.ruoyi.common.utils.reflect.ReflectUtils; |
| | | import com.ruoyi.quartz.service.ICollectHISService; |
| | | import com.ruoyi.quartz.task.RyTask; |
| | | import com.ruoyi.system.service.ISysConfigService; |
| | | import com.ruoyi.system.service.ISysUserDeptService; |
| | | import com.smartor.domain.*; |
| | | import com.smartor.domain.VO.HeLibraryCountVO; |
| | | import com.smartor.domain.VO.ServiceSubtaskCotinueCountVO; |
| | | import com.smartor.domain.VO.ServiceSubtaskVO; |
| | | import com.smartor.domain.entity.ServiceSubtaskEntity; |
| | |
| | | |
| | | @Autowired |
| | | private ISysConfigService configService; |
| | | |
| | | @Autowired |
| | | private RyTask ryTask; |
| | | |
| | | @Autowired |
| | | private ICollectHISService collectHISService; |
| | | |
| | | @Value("${spring.profiles.active}") |
| | | private String active; |
| | |
| | | //@PreAuthorize("@ss.hasPermi('system:taskcall:list')") |
| | | @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid") |
| | | @PostMapping("/patItemByCondition") |
| | | public TableDataInfo patItemByCondition(@RequestBody ServiceSubtaskVO serviceSubtaskVO) { |
| | | public Map<String, Object> patItemByCondition(@RequestBody ServiceSubtaskVO serviceSubtaskVO) { |
| | | List<ServiceSubtask> serviceSubtaskList = null; |
| | | ServiceSubtaskEntity serviceSubtaskEntity = DtoConversionUtils.sourceToTarget(serviceSubtaskVO, ServiceSubtaskEntity.class); |
| | | serviceSubtaskEntity.setContinueContent(ObjectUtils.isNotEmpty(serviceSubtaskVO.getContinueContent()) ? serviceSubtaskVO.getContinueContent().toString() : null); |
| | | if (serviceSubtaskEntity != null) { |
| | | PageUtils.startPageByPost(serviceSubtaskEntity.getPageNum(), serviceSubtaskEntity.getPageSize()); |
| | | |
| | | serviceSubtaskEntity.setPageNum(PageUtils.getOffset(serviceSubtaskEntity.getPageNum(), serviceSubtaskEntity.getPageSize())); |
| | | serviceSubtaskList = serviceSubtaskService.patItem2(serviceSubtaskEntity); |
| | | } |
| | | for (ServiceSubtask serviceSubtask : serviceSubtaskList) { |
| | |
| | | serviceSubtaskService.patItem2(serviceSubtaskEntity); |
| | | } |
| | | }); |
| | | return getDataTable2(total, list); |
| | | return getDataTable3(total, list); |
| | | } |
| | | |
| | | /** |
| | |
| | | ivrTaskVO.setCreateBy(user.getNickName()); |
| | | ivrTaskVO.setUpdateBy(user.getNickName()); |
| | | ivrTaskVO.setOrgid(user.getOrgid()); |
| | | ivrTaskVO.setCampusid(user.getCampusid()); |
| | | return success(serviceSubtaskService.insertOrUpdateTask(ivrTaskVO)); |
| | | } |
| | | |
| | |
| | | return toAjax(serviceSubtaskService.updateServiceSubtask(serviceSubtask)); |
| | | } |
| | | |
| | | @ApiOperation("修改子任务模板") |
| | | @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid") |
| | | @PostMapping("/updateTemplate") |
| | | public AjaxResult updateTemplate(@RequestBody ServiceSubtaskTemplateVO serviceSubtaskTemplateVO) { |
| | | serviceSubtaskTemplateVO.setUpdateBy(getLoginUser().getUser().getNickName()); |
| | | return toAjax(serviceSubtaskService.updateTemplate(serviceSubtaskTemplateVO)); |
| | | } |
| | | |
| | | @ApiOperation("新增子任务") |
| | | @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid") |
| | | @PostMapping("/addSubTask") |
| | | public AjaxResult addSubTask(@RequestBody ServiceSubtask serviceSubtask) { |
| | | SysUser user = getLoginUser().getUser(); |
| | | if (ObjectUtils.isNotEmpty(user)) serviceSubtask.setOrgid(user.getOrgid()); |
| | | if (ObjectUtils.isNotEmpty(user)) serviceSubtask.setCampusid(user.getCampusid()); |
| | | return toAjax(serviceSubtaskService.insertServiceSubtask(serviceSubtask)); |
| | | } |
| | | |
| | |
| | | public AjaxResult addSubTaskAgain(@RequestBody ServiceSubtask serviceSubtask) { |
| | | SysUser user = getLoginUser().getUser(); |
| | | if (ObjectUtils.isNotEmpty(user)) serviceSubtask.setOrgid(user.getOrgid()); |
| | | if (ObjectUtils.isNotEmpty(user)) serviceSubtask.setCampusid(user.getCampusid()); |
| | | return success(serviceSubtaskService.addSubTaskAgain(serviceSubtask)); |
| | | } |
| | | |
| | |
| | | serviceSubtask.setContinueContent(ObjectUtils.isNotEmpty(serviceSubtaskVO.getContinueContent()) ? serviceSubtaskVO.getContinueContent().toString() : null); |
| | | ServiceTaskVO ivrTaskVO = serviceSubtaskService.queryTaskByCondition(serviceSubtask); |
| | | return success(ivrTaskVO); |
| | | } |
| | | |
| | | /** |
| | | * 新增或修改删除单一任务(临时接口) |
| | | */ |
| | | @ApiOperation("新增或修改删除单一任务(临时接口)") |
| | | //@PreAuthorize("@ss.hasPermi('system:task:add')") |
| | | @Log(title = "单一任务(随访)", businessType = BusinessType.INSERT) |
| | | @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid") |
| | | @PostMapping("/insertOrUpdateTaskByTaskId") |
| | | public AjaxResult insertOrUpdateTaskByTaskId(@RequestBody ServiceTaskVO ivrTaskVO) { |
| | | log.info("insertOrUpdateTaskByTaskId的入参为:{}", ivrTaskVO); |
| | | LoginUser loginUser = getLoginUser(); |
| | | SysUser user = loginUser.getUser(); |
| | | ivrTaskVO.setCreateBy(user.getNickName()); |
| | | ivrTaskVO.setUpdateBy(user.getNickName()); |
| | | ivrTaskVO.setOrgid(user.getOrgid()); |
| | | //根据入参查询信息-用户关系 |
| | | ServiceSubtask serviceSubtask = new ServiceSubtask(); |
| | | if(ObjectUtils.isNotEmpty(ivrTaskVO.getTaskid())){ |
| | | serviceSubtask.setTaskid(ivrTaskVO.getTaskid()); |
| | | serviceSubtask.setOrgid(user.getOrgid()); |
| | | serviceSubtask.setCampusid(user.getCampusid()); |
| | | ServiceTaskVO ivrTaskVO1 = serviceSubtaskService.queryTaskByCondition(serviceSubtask); |
| | | ivrTaskVO.setPatTaskRelevances(ivrTaskVO1.getPatTaskRelevances()); |
| | | |
| | | return success(serviceSubtaskService.insertOrUpdateTask(ivrTaskVO)); |
| | | }else { |
| | | return error("insertOrUpdateTaskByTaskId taskid不可为空"); |
| | | } |
| | | |
| | | } |
| | | |
| | | /** |
| | |
| | | @ApiOperation("获取随访统计比例") |
| | | @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid") |
| | | @PostMapping("/getSfStatistics") |
| | | public AjaxResult getSfStatistics(@RequestBody ServiceSubtaskCountReq serviceSubtaskCountReq) { |
| | | public Map<String, Object> getSfStatistics(@RequestBody ServiceSubtaskCountReq serviceSubtaskCountReq) { |
| | | if (CollectionUtils.isEmpty(serviceSubtaskCountReq.getServiceType())) { |
| | | return error("服务类型不能为空"); |
| | | } |
| | | Integer offset = PageUtils.getOffset(serviceSubtaskCountReq.getPageNum(), serviceSubtaskCountReq.getPageSize()); |
| | | serviceSubtaskCountReq.setPageNum(offset); |
| | | |
| | | String followUpCountStyle = configService.selectConfigByKey("followUpCountStyle", serviceSubtaskCountReq.getOrgid()); |
| | | if (ObjectUtils.isNotEmpty(followUpCountStyle)) { |
| | | serviceSubtaskCountReq.setFollowUpCountStyle(followUpCountStyle); |
| | | } else { |
| | | serviceSubtaskCountReq.setFollowUpCountStyle("1"); |
| | | } |
| | | return success(serviceSubtaskService.getSfStatistics(serviceSubtaskCountReq)); |
| | | serviceSubtaskCountReq.setPageNum(null); |
| | | serviceSubtaskCountReq.setPageSize(null); |
| | | List<ServiceSubtaskStatistic> sfStatistics = serviceSubtaskService.getSfStatistics(serviceSubtaskCountReq); |
| | | return getDataTable4(CollectionUtils.isEmpty(sfStatistics) ? sfStatistics.size() : 0, serviceSubtaskService.getSfStatistics(serviceSubtaskCountReq)); |
| | | } |
| | | |
| | | /** |
| | |
| | | return success(serviceSubtaskService.getSfStatisticsJoydetails(serviceSubtaskCountReq)); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 获取随访统计超链接 |
| | | * dischargeCountInfo |
| | | * followUpNeededAllInfo - sendstate != 4 (1,2,3,5,6,7) |
| | | * nonFollowUpInfo - sendstate = 4 |
| | | * needFollowUpInfo - visitCount = 1 && sendstate != 4 |
| | | * pendingFollowUpInfo - visitCount = 1 && sendstate = 2 |
| | | * followUpSuccessInfo - visitCount = 1 && sendstate = 6 |
| | | * followUpFailInfo - visitCount = 1 && (sendstate = 5 || sendstate = 7) |
| | | * manualInfo - visitCount = 1 && currentPreachForm = "1" |
| | | * voiceInfo - visitCount = 1 && currentPreachForm = "3" |
| | | * smsInfo - visitCount = 1 && currentPreachForm = "4" |
| | | * wechatInfo - visitCount = 1 && currentPreachForm = "5" |
| | | * abnormalInfo - visitCount = 1 && excep = "1" |
| | | * needFollowUpAgainInfo - visitCount > 1 && sendstate != 4 |
| | | * pendingFollowUpAgainInfo - visitCount > 1 && sendstate = 2 |
| | | * followUpSuccessAgainInfo - visitCount > 1 && sendstate =6 |
| | | * followUpFailAgainInfo - visitCount > 1 && (sendstate = 5 || sendstate = 7) |
| | | * manualAgainInfo - visitCount > 1 && currentPreachForm = "1" |
| | | * voiceAgainInfo - visitCount > 1 && currentPreachForm = "3" |
| | | * smsAgainInfo - visitCount > 1 && currentPreachForm = "4" |
| | | * wechatAgainInfo - visitCount > 1 && currentPreachForm = "5" |
| | | * abnormalAgainInfo- visitCount = 1 && excep = "1" |
| | | */ |
| | | @ApiOperation("获取随访统计超链接") |
| | | @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid") |
| | | @PostMapping("/getSfStatisticsHyperlink") |
| | | public AjaxResult getSfStatisticsHyperlink(@RequestBody ServiceSubtaskCountReq serviceSubtaskCountReq) { |
| | | return success(serviceSubtaskService.getSfStatisticsHyperlink(serviceSubtaskCountReq)); |
| | | } |
| | | |
| | | /** |
| | | * 延续护理统计 |
| | |
| | | } |
| | | return success(serviceSubtaskService.getContinueNurseCount(serviceSubtaskCotinueCountVO)); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | /** |
| | |
| | | log.error(logInfo); |
| | | return error(logInfo); |
| | | } |
| | | return success(serviceSubtaskService.getSfStatisticsScript(serviceSubtaskCountReq)); |
| | | List<ServiceSubtaskStatistic> serviceSubtaskStatistics = serviceSubtaskService.getSfStatisticsScript(serviceSubtaskCountReq); |
| | | return success(serviceSubtaskStatistics); |
| | | } |
| | | |
| | | @ApiOperation("获取随访分类统计明细详情") |
| | |
| | | return map; |
| | | } |
| | | |
| | | @ApiOperation("获取当前用户宣教数量统计") |
| | | @PostMapping("/gethelibraryCount") |
| | | public Map<String, Object> getHeLibraryCount(@RequestBody HeLibraryCountVO heLibraryCountVO) { |
| | | log.info("获取当前用户宣教数量统计的入参为:{}", heLibraryCountVO); |
| | | return serviceSubtaskService.getHeLibraryCount(heLibraryCountVO); |
| | | } |
| | | |
| | | |
| | | @PostMapping("/test") |
| | | public void test() { |
| | | ryTask.dealOutHospInfo(); |
| | | } |
| | | |
| | | @PostMapping("/syncMedInhospForShiyi") |
| | | public void syncMedInhospForShiyi(@RequestParam("startTime") String startTime, @RequestParam("endTime") String endTime) { |
| | | collectHISService.syncMedInhosp(startTime, endTime); |
| | | } |
| | | } |