陈昶聿
3 天以前 1e5d108d1f1991b2ddda91a19de5716bee0f306d
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java
@@ -224,10 +224,10 @@
    /**
     * 导出单一任务(随访宣教)列表
     * 导出单一任务列表
     */
    //@PreAuthorize("@ss.hasPermi('system:taskcall:export')")
    @Log(title = "单一任务(随访宣教)", businessType = BusinessType.EXPORT)
    @Log(title = "单一任务", businessType = BusinessType.EXPORT)
    @PostMapping("/patItemExport")
    public void patItemExport(HttpServletResponse response, ServiceSubtaskEntity serviceSubtaskVO) {
        LoginUser loginUser = getLoginUser();
@@ -238,6 +238,7 @@
            serviceSubtaskList = serviceSubtaskService.patItem(serviceSubtaskVO);
        }
        List<ServiceSubtaskExport> serviceSubtaskExports = null;
        List<ServiceSubtaskDetailRatioExport> serviceSubtaskDetailRatioExports = null;
        if (!CollectionUtils.isEmpty(serviceSubtaskList)) {
            serviceSubtaskExports = DtoConversionUtils.sourceToTarget(serviceSubtaskList, ServiceSubtaskExport.class);
            for (ServiceSubtaskExport serviceSubtaskExport : serviceSubtaskExports) {
@@ -255,11 +256,17 @@
                }
            }
        }
        ExcelUtil<ServiceSubtaskExport> util = new ExcelUtil<ServiceSubtaskExport>(ServiceSubtaskExport.class);
        util.exportExcel(response, serviceSubtaskExports, "患者随访信息表单");
    }
            //获取serviceSubtaskList中的所有taskid
            List<Long> taskIds = serviceSubtaskList.stream().map(ServiceSubtaskRes::getTaskid).filter(ObjectUtils::isNotEmpty).distinct().collect(Collectors.toList());
            serviceSubtaskDetailRatioExports = serviceSubtaskService.statQuestionOption(taskIds);
        }
        ExcelUtil<ServiceSubtaskExport> util = new ExcelUtil<ServiceSubtaskExport>(ServiceSubtaskExport.class);
        util.exportExcelTwoSheet(response, serviceSubtaskExports, "患者随访信息表单",
                serviceSubtaskDetailRatioExports, "问题详情占比", ServiceSubtaskDetailRatioExport.class);
    }
    /**
     * 查询患者随访信息
@@ -566,15 +573,29 @@
                if (statisticaltype == 1) {
                    if (CollectionUtils.isEmpty(serviceSubtaskCountReq.getLeavehospitaldistrictcodes())) {
                        //全部病区
                        String deptInfo = user.getDeptInfo();
                        List<String> leavehospitaldistrictcodes = JSON.parseArray(deptInfo).stream().map(item -> (String) ((List<?>) item).get(0)).collect(Collectors.toList());
                        List<String> leavehospitaldistrictcodes = null;
                        SysUserDept sysUserWard = new SysUserDept();
                        sysUserWard.setUserId(user.getUserId());
                        sysUserWard.setOrgid(user.getOrgid());
                        sysUserWard.setDeptType("2");
                        List<SysUserDept> wardList = sysUserDeptService.selectSysUserDeptList(sysUserWard);
                        if(CollectionUtils.isNotEmpty(wardList)) {
                            leavehospitaldistrictcodes = wardList.stream().map(SysUserDept::getDeptCode).collect(Collectors.toList());
                        }
                        serviceSubtaskCountReq.setLeavehospitaldistrictcodes(leavehospitaldistrictcodes);
                    }
                } else if (statisticaltype == 2) {
                    if (CollectionUtils.isEmpty(serviceSubtaskCountReq.getDeptcodes())) {
                        //全部科室
                        String hospInfo = user.getHospInfo();
                        List<String> deptCodes = JSON.parseArray(hospInfo).stream().map(item -> (String) ((List<?>) item).get(0)).collect(Collectors.toList());
                        List<String> deptCodes = null;
                        SysUserDept sysUserDept = new SysUserDept();
                        sysUserDept.setUserId(user.getUserId());
                        sysUserDept.setOrgid(user.getOrgid());
                        sysUserDept.setDeptType("1");
                        List<SysUserDept> deptList = sysUserDeptService.selectSysUserDeptList(sysUserDept);
                        if(CollectionUtils.isNotEmpty(deptList)){
                            deptCodes = deptList.stream().map(SysUserDept::getDeptCode).collect(Collectors.toList());
                        }
                        serviceSubtaskCountReq.setDeptcodes(deptCodes);
                    }
                }
@@ -879,6 +900,13 @@
        return serviceSubtaskService.getHeLibraryCount(heLibraryCountVO);
    }
    @ApiOperation("获取宣教统计超链接")
    @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid")
    @PostMapping("/gethelibraryCountHyperlink")
    public AjaxResult gethelibraryCountHyperlink(@RequestBody HeLibraryCountVO heLibraryCountVO) {
        return success(serviceSubtaskService.gethelibraryCountHyperlink(heLibraryCountVO));
    }
    /**
     * 手动发送问卷模板的短信功能
     *