//package com.ruoyi.quartz.task; 
 | 
// 
 | 
//import com.alibaba.fastjson2.JSONObject; 
 | 
//import com.fasterxml.jackson.databind.JsonNode; 
 | 
//import com.fasterxml.jackson.databind.ObjectMapper; 
 | 
//import com.google.common.reflect.TypeToken; 
 | 
//import com.google.gson.Gson; 
 | 
//import com.google.gson.JsonArray; 
 | 
//import com.google.gson.JsonObject; 
 | 
//import com.ruoyi.common.core.redis.RedisCache; 
 | 
//import com.ruoyi.common.enums.MsgLSEnum; 
 | 
//import com.ruoyi.common.enums.ServiceFromEnum; 
 | 
//import com.ruoyi.common.enums.WxGZHEnum; 
 | 
//import com.ruoyi.common.utils.HttpUtil; 
 | 
//import com.ruoyi.common.utils.OkHttpExample; 
 | 
//import com.ruoyi.common.utils.RSAPublicKeyExample; 
 | 
//import com.ruoyi.common.utils.StringUtils; 
 | 
//import com.ruoyi.common.utils.http.HttpUtils; 
 | 
//import com.smartor.common.LSHospTokenUtil; 
 | 
//import com.smartor.domain.*; 
 | 
//import com.smartor.mapper.ServiceSubtaskMapper; 
 | 
//import com.smartor.mapper.ServiceTaskMapper; 
 | 
//import com.smartor.mapper.SysUserImportMapper; 
 | 
//import com.smartor.service.*; 
 | 
//import lombok.extern.slf4j.Slf4j; 
 | 
//import org.apache.commons.collections4.CollectionUtils; 
 | 
//import org.apache.commons.lang3.ObjectUtils; 
 | 
//import org.springframework.beans.factory.annotation.Autowired; 
 | 
//import org.springframework.beans.factory.annotation.Value; 
 | 
//import org.springframework.stereotype.Component; 
 | 
//import org.springframework.transaction.PlatformTransactionManager; 
 | 
//import org.springframework.transaction.annotation.Transactional; 
 | 
// 
 | 
//import java.io.File; 
 | 
//import java.io.FileWriter; 
 | 
//import java.io.IOException; 
 | 
//import java.lang.reflect.Type; 
 | 
//import java.net.URLEncoder; 
 | 
//import java.nio.charset.StandardCharsets; 
 | 
//import java.nio.file.Files; 
 | 
//import java.nio.file.Paths; 
 | 
//import java.security.MessageDigest; 
 | 
//import java.text.ParseException; 
 | 
//import java.text.SimpleDateFormat; 
 | 
//import java.time.LocalDate; 
 | 
//import java.time.LocalDateTime; 
 | 
//import java.time.LocalTime; 
 | 
//import java.time.ZoneId; 
 | 
//import java.time.format.DateTimeFormatter; 
 | 
//import java.util.*; 
 | 
//import java.util.stream.Collectors; 
 | 
// 
 | 
//import static cn.hutool.core.convert.Convert.toHex; 
 | 
// 
 | 
///** 
 | 
// * 定时任务调度测试 
 | 
// * 
 | 
// * @author ruoyi 
 | 
// */ 
 | 
//@Slf4j 
 | 
//@Component("ryTask2") 
 | 
//public class RyTask2 { 
 | 
//    @Autowired 
 | 
//    private IServiceThirdDataService iServiceThirdDataService; 
 | 
// 
 | 
//    @Autowired 
 | 
//    private IServiceOutPathService iServiceOutPathService; 
 | 
// 
 | 
//    @Autowired 
 | 
//    private IServiceSubtaskAnswerService serviceSubtaskAnswerService; 
 | 
// 
 | 
//    @Autowired 
 | 
//    private IPatMedInhospService iPatMedInhospService; 
 | 
// 
 | 
//    @Autowired 
 | 
//    private IPatMedOuthospService iPatMedOuthospService; 
 | 
// 
 | 
//    @Autowired 
 | 
//    private IPatMedOperationService iPatMedOperationService; 
 | 
// 
 | 
//    @Autowired 
 | 
//    private IServiceSubtaskService iServiceSubtaskService; 
 | 
// 
 | 
//    @Autowired 
 | 
//    private IServicePatientTempService iServicePatientTempService; 
 | 
// 
 | 
//    @Autowired 
 | 
//    private PlatformTransactionManager transactionManager; 
 | 
// 
 | 
//    @Autowired 
 | 
//    private SysUserImportMapper sysUserImportMapper; 
 | 
// 
 | 
//    @Value("${localIP}") 
 | 
//    private String localIP; 
 | 
// 
 | 
//    @Value("${xhsmsPath}") 
 | 
//    private String xhsmsPath; 
 | 
// 
 | 
//    @Value("${pub_key}") 
 | 
//    private String pub_key; 
 | 
// 
 | 
//    @Value("${req_path}") 
 | 
//    private String req_path; 
 | 
// 
 | 
//    @Value("${visitHosp}") 
 | 
//    private Integer visitHosp; 
 | 
// 
 | 
//    @Autowired 
 | 
//    private ServiceTaskMapper serviceTaskMapper; 
 | 
// 
 | 
//    @Autowired 
 | 
//    private ServiceSubtaskMapper serviceSubtaskMapper; 
 | 
// 
 | 
//    @Autowired 
 | 
//    private RedisCache redisCache; 
 | 
// 
 | 
//    @Autowired 
 | 
//    private IServiceSubtaskRecordService serviceSubtaskRecordService; 
 | 
// 
 | 
//    @Autowired 
 | 
//    IBaseSmsaccountService baseSmsaccountService; 
 | 
// 
 | 
//    @Autowired 
 | 
//    IPatArchiveService patArchiveService; 
 | 
// 
 | 
//    @Autowired 
 | 
//    IPatMedInhospService patMedInhospService; 
 | 
// 
 | 
//    @Autowired 
 | 
//    IPatMedOuthospService patMedOuthospService; 
 | 
// 
 | 
//    @Autowired 
 | 
//    ISvyTaskTemplateService svyTaskTemplateService; 
 | 
// 
 | 
//    @Autowired 
 | 
//    IIvrTaskTemplateService iIvrTaskTemplateService; 
 | 
// 
 | 
//    @Value("${hosp_info_url}") 
 | 
//    private String hospInfoUrl; 
 | 
// 
 | 
//    @Value("${appid}") 
 | 
//    private String appid; 
 | 
// 
 | 
//    @Value("${server.port}") 
 | 
//    private String port; 
 | 
// 
 | 
//    public void ryMultipleParams(String s, Boolean b, Long l, Double d, Integer i) { 
 | 
//        System.out.println(StringUtils.format("执行多参方法: 字符串类型{},布尔类型{},长整型{},浮点型{},整形{}", s, b, l, d, i)); 
 | 
//    } 
 | 
// 
 | 
//    public void ryParams(String params) { 
 | 
//        System.out.println("执行有参方法:" + params); 
 | 
//    } 
 | 
// 
 | 
//    public void ryNoParams() { 
 | 
//        System.out.println("执行无参方法"); 
 | 
//    } 
 | 
// 
 | 
//    public void importData() { 
 | 
//        String filePath = "C:\\Users\\86176\\Desktop\\新建文本文档 4.txt"; // 替换为你的文件路径 
 | 
// 
 | 
//        try { 
 | 
//            // 读取文件内容 
 | 
//            String jsonContent = new String(Files.readAllBytes(Paths.get(filePath)), StandardCharsets.UTF_8); 
 | 
// 
 | 
//            // 创建ObjectMapper对象 
 | 
//            ObjectMapper objectMapper = new ObjectMapper(); 
 | 
//            // 解析JSON为JsonNode 
 | 
//            JsonNode rootNode = objectMapper.readTree(jsonContent); 
 | 
//            // 获取resultList 
 | 
//            JsonNode resultListNode = rootNode.path("results").path("resultList"); 
 | 
//            // 遍历resultList中的每个对象 
 | 
//            for (JsonNode item : resultListNode) { 
 | 
// 
 | 
//                SysUserImport person = objectMapper.treeToValue(item, SysUserImport.class); 
 | 
//                person.setStaffPhoto(""); 
 | 
//                sysUserImportMapper.insertSysUserImport(person); 
 | 
// 
 | 
//            } 
 | 
// 
 | 
//        } catch (IOException e) { 
 | 
//            e.printStackTrace(); 
 | 
//        } 
 | 
// 
 | 
//    } 
 | 
// 
 | 
//    public void analysisData() { 
 | 
//        System.out.println("---------------------------"); 
 | 
//        //数据解析 
 | 
//        ServiceThirdData serviceThirdData = new ServiceThirdData(); 
 | 
//        serviceThirdData.setDataType("ADT^A03"); 
 | 
//        serviceThirdData.setIsDeal(0); 
 | 
//        serviceThirdData.setCreateTime(new Date()); 
 | 
//        iServiceThirdDataService.queryList(serviceThirdData); 
 | 
// 
 | 
//    } 
 | 
// 
 | 
//    /** 
 | 
//     * 定时处理外链的数据 
 | 
//     */ 
 | 
//    public void runServiceSubTaskAnswer() { 
 | 
//        serviceSubtaskAnswerService.saveQuestionAnswer(null, 0L); 
 | 
//    } 
 | 
// 
 | 
// 
 | 
//    /** 
 | 
//     * 处理his数据 
 | 
//     */ 
 | 
//    public void dealHisData() { 
 | 
//        //将患者信息、出院、门诊数据全部采集 
 | 
//        // 获取当前日期和时间 
 | 
//        LocalDateTime endTime = LocalDateTime.now(); 
 | 
//        endTime = endTime.with(LocalTime.MIN); 
 | 
////        String dateStr = "2024/11/30 00:00:00"; 
 | 
////        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss"); 
 | 
////        LocalDateTime endTime = LocalDateTime.parse(dateStr, formatter); 
 | 
//        // 获取前一天的日期和时间 
 | 
//        LocalDateTime startTime = endTime.minusDays(1); 
 | 
//        startTime = startTime.with(LocalTime.MIN); 
 | 
//        getInHospInfo("0", startTime, endTime); 
 | 
//        getInHospInfo("1", startTime, endTime); 
 | 
// 
 | 
//        //调用dealOupHospInfo数据处理方法,处理完后,将“出院表的check_flag=1” 
 | 
//        //获取当前日期 (精确到天)往前推相应天数(在指定的基础模板中找对应的天数), 
 | 
//        //循环患者信息,根据患者"出院诊断ICD值”获取到相当的模板(获取取相应的天数); 
 | 
//        //根据查询出来的模板,去固定任务(固定任务,已经将模板也固定了)去匹配模板 
 | 
//        //根据匹配出来的模板和任务与患者信息,将数据插入到子任务表中 
 | 
//    } 
 | 
// 
 | 
//    public void dealHisData2() { 
 | 
//        //将患者信息、出院、门诊数据全部采集 
 | 
//        // 指定的开始日期 
 | 
//        LocalDate endDate = LocalDate.of(2025, 3, 3); 
 | 
//        // 当前日期 
 | 
//        LocalDate currentDate = LocalDate.now(); 
 | 
//        // 定义日期格式 
 | 
//        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd "); 
 | 
// 
 | 
//        // 从开始日期到当前日期逐天打印 
 | 
//        for (LocalDate date = endDate; !date.isAfter(currentDate); date = date.plusDays(1)) { 
 | 
//            System.out.println(date.format(formatter)); 
 | 
//            getInHospInfo("0", date.minusDays(1).atStartOfDay(), date.atStartOfDay()); 
 | 
//            getInHospInfo("1", date.minusDays(1).atStartOfDay(), date.atStartOfDay()); 
 | 
//        } 
 | 
// 
 | 
//    } 
 | 
// 
 | 
//    /** 
 | 
//     * 处理患者信息,进入子任务表 
 | 
//     */ 
 | 
//    public void dealOutHospInfo() { 
 | 
//        if (port.equals("8095")) { 
 | 
//            //出院表 
 | 
//            iPatMedInhospService.dealOutHospInfo(); 
 | 
//            //门诊表 
 | 
//            if (visitHosp != 1) { 
 | 
//                iPatMedOuthospService.dealOutpatientInfo(); 
 | 
//            } 
 | 
//        } 
 | 
//    } 
 | 
// 
 | 
// 
 | 
//    /** 
 | 
//     * 处理手术信息,进入子任务表 
 | 
//     */ 
 | 
//    public void dealOperationInfo() { 
 | 
//        if (port.equals("8095")) iPatMedOperationService.dealOperationInfo(); 
 | 
// 
 | 
//    } 
 | 
// 
 | 
//    /** 
 | 
//     * 处理患者信息,进入子任务表(微信小程序) 
 | 
//     */ 
 | 
//    public void dealOutHospInfoXHC() { 
 | 
//        if (port.equals("8095")) { 
 | 
//            PatMedInhosp patMedInhosp = new PatMedInhosp(); 
 | 
//            //获取未处理的数据 
 | 
//            List<ServicePatientTemp> servicePatientTemps = iServicePatientTempService.selectServicePatientTempList(new ServicePatientTemp()); 
 | 
//        } 
 | 
//    } 
 | 
// 
 | 
// 
 | 
//    /** 
 | 
//     * 长期任务执行 
 | 
//     */ 
 | 
//    public void longTaskSend() { 
 | 
//        //获取任务信息 
 | 
//        ServiceTask st = new ServiceTask(); 
 | 
//        st.setDelFlag("0"); 
 | 
//        st.setLongTask(1); 
 | 
//        List<ServiceTask> serviceTasks = serviceTaskMapper.selectServiceTaskList(st); 
 | 
//        log.info("serviceTasks进来了吗?{}", serviceTasks.size()); 
 | 
//        for (ServiceTask serviceTask : serviceTasks) { 
 | 
//            CommonTaskcallMQ commonTaskcallMQ = new CommonTaskcallMQ(); 
 | 
//            commonTaskcallMQ.setTaskid(serviceTask.getTaskid()); 
 | 
//            commonTaskcallMQ.setPreachform(serviceTask.getPreachform()); 
 | 
//            commonTaskcallMQ.setSendType("2"); 
 | 
//            sfHandlle(commonTaskcallMQ, localIP); 
 | 
//        } 
 | 
//    } 
 | 
// 
 | 
//    /** 
 | 
//     * 判断日期是否是今天 
 | 
//     * 
 | 
//     * @param date 
 | 
//     * @return 
 | 
//     */ 
 | 
//    public boolean isDateToday(Date date) { 
 | 
//        if (date == null) { 
 | 
//            return false; 
 | 
//        } 
 | 
//        // 将 Date 转为 LocalDate 
 | 
//        LocalDate localDate = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate(); 
 | 
//        // 获取今天的 LocalDate 
 | 
//        LocalDate today = LocalDate.now(); 
 | 
//        // 如果日期早于或等于今天,返回 true 
 | 
//        return !localDate.isAfter(today); 
 | 
//    } 
 | 
// 
 | 
//    public void sfHandlle(CommonTaskcallMQ commonTaskcallMQ, String ip) { 
 | 
//        log.info("sfHandlle进来了吗?{}", commonTaskcallMQ); 
 | 
//        //判断一下commonTaskcallMQ中的stopstate是否与ivr_task中的一致,不一致,则说明是暂停了 
 | 
//        ServiceTask ivrTask1 = serviceTaskMapper.selectServiceTaskByTaskid(commonTaskcallMQ.getTaskid()); 
 | 
// 
 | 
//        if (StringUtils.isNotEmpty(commonTaskcallMQ.getPreachform())) { 
 | 
//            //如何任务发送方式不为空 
 | 
//            String[] split = commonTaskcallMQ.getPreachform().split(","); 
 | 
//            log.info("split进来了吗?{}", split); 
 | 
//            for (String serviceFrom : split) { 
 | 
//                String descByCode = ServiceFromEnum.getDescByCode(Integer.valueOf(serviceFrom)); 
 | 
//                //通过任务ID拿到患者信息 
 | 
//                ServiceSubtaskVO ivrTaskcall = new ServiceSubtaskVO(); 
 | 
//                ivrTaskcall.setTaskid(commonTaskcallMQ.getTaskid()); 
 | 
//                ivrTaskcall.setSendstate(2L); 
 | 
//                List<ServiceSubtask> subtaskList = iServiceSubtaskService.selectServiceSubtaskList(ivrTaskcall); 
 | 
//                //丽水有的医院还没法做长期任务随访 
 | 
//                List<ServiceSubtask> subtaskList2 = new ArrayList<>(); 
 | 
//                if (visitHosp == 2) { 
 | 
//                    for (ServiceSubtask serviceSubtask : subtaskList) { 
 | 
////                        Boolean b = VisitSendStateEnum.getDescByCode(serviceSubtask.getOrgid()); 
 | 
//                        Boolean b = false; 
 | 
//                        if (b) subtaskList2.add(serviceSubtask); 
 | 
//                    } 
 | 
//                    subtaskList = subtaskList2; 
 | 
//                } 
 | 
// 
 | 
//                // 按照 endtime 离当前时间最近的排序 
 | 
//                List<ServiceSubtask> selectServiceSubtaskList = subtaskList.stream().sorted(Comparator.comparing(subtask -> Math.abs(subtask.getEndtime().getTime() - new Date().getTime()))).collect(Collectors.toList()); 
 | 
// 
 | 
//                if (descByCode.equals("电话")) { 
 | 
//                    String value = ""; 
 | 
//                    List<String> list = new ArrayList<>(); 
 | 
//                    for (ServiceSubtask serviceSubtask : selectServiceSubtaskList) { 
 | 
//                        ServiceTask ivrTask = serviceTaskMapper.selectServiceTaskByTaskid(serviceSubtask.getTaskid()); 
 | 
//                        if (ivrTask.getSendState() != null && ivrTask.getSendState() == 3 || ivrTask.getSendState() != null && ivrTask.getSendState() == 4) { 
 | 
//                            //如何任务被“暂停”或“终止” 
 | 
//                            break; 
 | 
//                        } 
 | 
//                        if (org.apache.commons.lang3.StringUtils.isEmpty(serviceSubtask.getPhone())) { 
 | 
//                            serviceSubtask.setRemark("手机号为空"); 
 | 
//                            serviceSubtask.setSendstate(4L); 
 | 
//                            serviceSubtask.setResult("error"); 
 | 
////                            serviceSubtask.setFinishtime(new Date()); 
 | 
//                            serviceSubtaskMapper.updateServiceSubtask(serviceSubtask); 
 | 
//                            continue; 
 | 
//                        } 
 | 
//                        boolean dateToday = isDateToday(serviceSubtask.getLongSendTime()); 
 | 
//                        //说明是立即发送(先把消息放到cache-0中,   displayNo不知道怎么配置) 
 | 
//                        if (dateToday) { 
 | 
//                            list.add(serviceSubtask.getId().toString()); 
 | 
//                            //在子任务表里记录一下 
 | 
//                            String uuid = UUID.randomUUID().toString(); 
 | 
//                            serviceSubtask.setResult("success"); 
 | 
//                            serviceSubtask.setRemark("长期任务,电话进入队列成功"); 
 | 
//                            serviceSubtask.setGuid(uuid); 
 | 
//                            serviceSubtaskMapper.updateServiceSubtask(serviceSubtask); 
 | 
// 
 | 
//                            //任务发送记录 
 | 
//                            ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord(); 
 | 
//                            serviceSubtaskRecord.setTaskid(serviceSubtask.getTaskid().toString()); 
 | 
//                            serviceSubtaskRecord.setSubtaskId(serviceSubtask.getId()); 
 | 
//                            serviceSubtaskRecord.setUuid(uuid); 
 | 
//                            serviceSubtaskRecord.setTasktype(serviceSubtask.getType()); 
 | 
//                            serviceSubtaskRecord.setPreachform("3"); 
 | 
//                            serviceSubtaskRecord.setStartTime(System.currentTimeMillis()); 
 | 
//                            serviceSubtaskRecord.setRemark("长期任务,电话进入队列成功"); 
 | 
//                            serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord); 
 | 
// 
 | 
//                        } 
 | 
//                    } 
 | 
//                    //将要执行的放到缓存中 
 | 
//                    if (list.size() > 0) { 
 | 
////                        redisCache.setCacheListLeft("cache-0", list); 
 | 
//                        redisCache.setCacheListLeftAndDistinct("cache-0", list); 
 | 
//                    } 
 | 
//                } else if (descByCode.equals("多媒体")) { 
 | 
//                    //多媒体 
 | 
//                } else if (descByCode.equals("纸质")) { 
 | 
//                    //纸质 
 | 
//                } else if (descByCode.equals("微信小程序")) { 
 | 
//                    //微信小程序 
 | 
//                    log.info("ivrTask1的值为:{}", ivrTask1); 
 | 
//                    if (ObjectUtils.isNotEmpty(ivrTask1) && ivrTask1.getPatCycle() == 1) { 
 | 
//                        //说明该任务的患者是循环执行的 
 | 
//                        ServiceSubtaskVO serviceSubtaskVO = new ServiceSubtaskVO(); 
 | 
//                        serviceSubtaskVO.setTaskid(ivrTask1.getTaskid()); 
 | 
//                        List<ServiceSubtask> serviceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO); 
 | 
//                        //这里需要根据身份证去重 
 | 
//                        List<ServiceSubtask> serviceSubtaskListFilter = new ArrayList<>(); 
 | 
//                        aa: 
 | 
//                        for (ServiceSubtask serviceSubtask : serviceSubtaskList) { 
 | 
//                            for (ServiceSubtask ss : serviceSubtaskListFilter) { 
 | 
//                                if (ss.getSfzh().equals(serviceSubtask.getSfzh())) { 
 | 
//                                    continue aa; 
 | 
//                                } 
 | 
//                            } 
 | 
//                            serviceSubtaskListFilter.add(serviceSubtask); 
 | 
//                        } 
 | 
//                        for (ServiceSubtask serviceSubtask : serviceSubtaskListFilter) { 
 | 
//                            //将子任务ID删除 、sendstate改成3 
 | 
//                            serviceSubtask.setSendstate(3L); 
 | 
//                            serviceSubtask.setId(null); 
 | 
//                            serviceSubtask.setFinishtime(null); 
 | 
//                            serviceSubtask.setCreateTime(new Date()); 
 | 
//                            serviceSubtask.setUpdateTime(new Date()); 
 | 
//                            //处理重复新增问题,先查一下今天是不是有新增过,新增过就不新增了 
 | 
//                            ServiceSubtaskVO ssvo = new ServiceSubtaskVO(); 
 | 
//                            LocalDate today = LocalDate.now(); 
 | 
//                            LocalTime startOfDay = LocalTime.of(0, 0, 0); 
 | 
//                            LocalTime endOfDay = LocalTime.of(23, 59, 59); 
 | 
//                            Date startOfDayDate = Date.from(today.atTime(startOfDay).atZone(ZoneId.systemDefault()).toInstant()); 
 | 
//                            Date endOfDayDate = Date.from(today.atTime(endOfDay).atZone(ZoneId.systemDefault()).toInstant()); 
 | 
//                            ssvo.setCreateStartTime(startOfDayDate); 
 | 
//                            ssvo.setCreateEndTime(endOfDayDate); 
 | 
//                            ssvo.setCreateBy(serviceSubtask.getCreateBy()); 
 | 
//                            ssvo.setSendname(serviceSubtask.getSendname()); 
 | 
//                            ssvo.setSfzh(serviceSubtask.getSfzh()); 
 | 
//                            List<ServiceSubtask> serviceSubtaskListByCreateTime = serviceSubtaskMapper.selectServiceSubtaskListByCreateTime(ssvo); 
 | 
//                            if (CollectionUtils.isEmpty(serviceSubtaskListByCreateTime)) 
 | 
//                                serviceSubtaskMapper.insertServiceSubtask(serviceSubtask); 
 | 
//                        } 
 | 
//                    } 
 | 
//                } else if (descByCode.equals("短信")) { 
 | 
//                    RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample(); 
 | 
//                    String taskId = rsaPublicKeyExample.encryptedData(ivrTask1.getTaskid().toString(), pub_key); 
 | 
//                    for (ServiceSubtask serviceSubtask : selectServiceSubtaskList) { 
 | 
//                        log.info("短信长期任务发送---------进来了吗?{}", serviceSubtask); 
 | 
//                        boolean dateToday = isDateToday(serviceSubtask.getLongSendTime()); 
 | 
//                        if (dateToday) { 
 | 
//                            try { 
 | 
//                                //先判断患者是不是还要发送 
 | 
//                                PatArchive patArchive = patArchiveService.selectPatArchiveByPatid(serviceSubtask.getPatid()); 
 | 
//                                if (!Objects.isNull(patArchive) && patArchive.getNotrequiredFlag() == "1") { 
 | 
//                                    //不需要发送 
 | 
//                                    serviceSubtask.setResult("error"); 
 | 
//                                    serviceSubtask.setRemark(patArchive.getNotrequiredreason()); 
 | 
//                                    serviceSubtask.setSendstate(4L); 
 | 
////                                    serviceSubtask.setFinishtime(new Date()); 
 | 
//                                    iServiceSubtaskService.insertServiceSubtask(serviceSubtask); 
 | 
//                                    continue; 
 | 
//                                } 
 | 
//                                String patid = rsaPublicKeyExample.encryptedData(serviceSubtask.getPatid().toString(), pub_key); 
 | 
//                                String subId = rsaPublicKeyExample.encryptedData(serviceSubtask.getId().toString(), pub_key); 
 | 
//                                SendMagParam sendMagParam = new SendMagParam(); 
 | 
//                                sendMagParam.setType("4"); 
 | 
//                                ServiceOutPath serviceOutPath = new ServiceOutPath(); 
 | 
//                                serviceOutPath.setParam1(taskId); 
 | 
//                                serviceOutPath.setParam2(patid); 
 | 
//                                serviceOutPath.setParam3(ivrTask1.getTaskName()); 
 | 
//                                serviceOutPath.setParam6(subId); 
 | 
//                                serviceOutPath.setCreateTime(new Date()); 
 | 
//                                iServiceOutPathService.insertServiceOutPath(serviceOutPath); 
 | 
//                                String format = String.format("%03X", serviceOutPath.getId()); 
 | 
//                                serviceOutPath.setRadix(format); 
 | 
//                                serviceOutPath.setUpdateTime(new Date()); 
 | 
//                                iServiceOutPathService.updateServiceOutPath(serviceOutPath); 
 | 
//                                sendMagParam.setPhone(serviceSubtask.getPhone()); 
 | 
//                                sendMagParam.setUrl(ip + ":" + req_path + "/wt?p=" + format); 
 | 
//                                sendMagParam.setContent("【新华医院】您好,邀请您填写出院调查表,请点击" + sendMagParam.getUrl() + "填写。感谢您配合!"); 
 | 
//                                String isSuccess = null; 
 | 
//                                if (visitHosp == 1) { 
 | 
//                                    Map<String, String> req = new HashMap<>(); 
 | 
//                                    req.put("phone", sendMagParam.getPhone()); 
 | 
//                                    req.put("content", sendMagParam.getContent()); 
 | 
//                                    isSuccess = HttpUtil.postJsonRequest(xhsmsPath, new Gson().toJson(req)); 
 | 
//                                } else if (visitHosp == 2) { 
 | 
//                                    //丽水的短信发送方式 
 | 
//                                    Map<String, String> map = MsgLSEnum.getAddressByCode(serviceSubtask.getOrgid()); 
 | 
//                                    String token = LSHospTokenUtil.getToken(serviceSubtask.getOrgid()); 
 | 
//                                    if (ObjectUtils.isNotEmpty(map) && StringUtils.isEmpty(map.get("address"))) { 
 | 
//                                        ServiceSubtask ss = new ServiceSubtask(); 
 | 
//                                        ss.setResult("error"); 
 | 
//                                        ss.setRemark("短信发送失败,该机构没有配置短信地址"); 
 | 
//                                        ss.setSendstate(5L); 
 | 
//                                        ss.setId(serviceSubtask.getId()); 
 | 
////                                        ss.setFinishtime(new Date()); 
 | 
//                                        serviceSubtaskMapper.updateServiceSubtask(ss); 
 | 
//                                        continue; 
 | 
//                                    } 
 | 
//                                    log.info("---------丽水短信发送入参address:{},  sendMagParam:{},  orgid:{}-------", map.get("address"), sendMagParam, serviceSubtask.getOrgid()); 
 | 
//                                    String dxCode = getDXCode(map.get("address"), sendMagParam.getPhone(), sendMagParam.getContent(), map.get("sendPersonId"), map.get("sendPersonName"), MsgLSEnum.getHeaderByCode(serviceSubtask.getOrgid()), token); 
 | 
//                                    log.info("---------丽水短信发送结果:{}-------", dxCode); 
 | 
//                                    ObjectMapper objectMapper = new ObjectMapper(); 
 | 
//                                    Map<String, Object> textParam = objectMapper.readValue(dxCode, Map.class); 
 | 
//                                    String code = textParam.get("Code").toString(); 
 | 
//                                    if (code.equals("0")) { 
 | 
//                                        isSuccess = "true"; 
 | 
//                                    } 
 | 
//                                } 
 | 
//                                //任务发送记录 
 | 
//                                ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord(); 
 | 
//                                serviceSubtaskRecord.setTaskid(serviceSubtask.getTaskid().toString()); 
 | 
//                                serviceSubtaskRecord.setUuid(UUID.randomUUID().toString()); 
 | 
//                                serviceSubtaskRecord.setTasktype(serviceSubtask.getType()); 
 | 
//                                serviceSubtaskRecord.setPreachform("4"); 
 | 
//                                serviceSubtaskRecord.setStartTime(System.currentTimeMillis()); 
 | 
//                                serviceSubtaskRecord.setResult("success"); 
 | 
//                                if (StringUtils.isNotEmpty(isSuccess) && !isSuccess.equals("true")) 
 | 
//                                    serviceSubtaskRecord.setResult("error"); 
 | 
//                                serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord); 
 | 
// 
 | 
//                                //发送完成后,修改状态 
 | 
//                                serviceSubtask.setSendstate(3L); 
 | 
//                                if (StringUtils.isNotEmpty(isSuccess) && !isSuccess.equals("true")) { 
 | 
//                                    serviceSubtask.setResult("success"); 
 | 
//                                    serviceSubtask.setRemark("短信发送成功"); 
 | 
//                                } else { 
 | 
//                                    serviceSubtask.setResult("error"); 
 | 
//                                    serviceSubtask.setSendstate(5L); 
 | 
//                                    serviceSubtask.setRemark("短信发送失败"); 
 | 
//                                } 
 | 
//                                iServiceSubtaskService.updateServiceSubtask(serviceSubtask); 
 | 
//                            } catch (Exception e) { 
 | 
//                                String guid = UUID.randomUUID().toString(); 
 | 
//                                log.error("长期任务,短信发送失败原因:{},{}", e.getMessage(), guid); 
 | 
//                                serviceSubtask.setResult("error"); 
 | 
//                                serviceSubtask.setRemark("系统错误"); 
 | 
//                                serviceSubtask.setSendstate(5L); 
 | 
////                                serviceSubtask.setFinishtime(new Date()); 
 | 
//                                serviceSubtask.setGuid(guid); 
 | 
//                                iServiceSubtaskService.updateServiceSubtask(serviceSubtask); 
 | 
//                            } 
 | 
//                        } 
 | 
//                    } 
 | 
//                } else if (descByCode.equals("公众号")) { 
 | 
//                    log.info("公众号进来了吗?{}", descByCode); 
 | 
//                    //公众号 
 | 
//                    RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample(); 
 | 
//                    String taskId = rsaPublicKeyExample.encryptedData(ivrTask1.getTaskid().toString(), pub_key); 
 | 
//                    for (ServiceSubtask serviceSubtask : selectServiceSubtaskList) { 
 | 
//                        //  log.error("serviceSubtask---------进来了吗?{}", serviceSubtask); 
 | 
//                        boolean dateToday = isDateToday(serviceSubtask.getLongSendTime()); 
 | 
//                        if (dateToday) { 
 | 
//                            try { 
 | 
//                                //先判断患者是不是还要发送 
 | 
//                                PatArchive patArchive = patArchiveService.selectPatArchiveByPatid(serviceSubtask.getPatid()); 
 | 
//                                if (!Objects.isNull(patArchive) && patArchive.getNotrequiredFlag() == "1") { 
 | 
//                                    //不需要发送 
 | 
//                                    serviceSubtask.setResult("error"); 
 | 
//                                    serviceSubtask.setRemark(patArchive.getNotrequiredreason()); 
 | 
//                                    serviceSubtask.setSendstate(4L); 
 | 
////                                    serviceSubtask.setFinishtime(new Date()); 
 | 
//                                    iServiceSubtaskService.insertServiceSubtask(serviceSubtask); 
 | 
//                                    continue; 
 | 
//                                } 
 | 
//                                String patid = rsaPublicKeyExample.encryptedData(serviceSubtask.getPatid().toString(), pub_key); 
 | 
//                                String url = null; 
 | 
//                                url = ip + ":" + req_path + "/outsideChainwt?param1=" + taskId + "¶m2=" + patid + "¶m3=" + URLEncoder.encode(ivrTask1.getTaskName(), StandardCharsets.UTF_8.toString()) + "¶m5=false"; 
 | 
////                                String wxCode = getWXCode(serviceSubtask.getSfzh(), url, serviceSubtask.getTaskName(), serviceSubtask.getTaskDesc(), "无"); 
 | 
// 
 | 
//                                //获取微信公众号请求信息根据机构ID 
 | 
//                                List<String> wxqqxx = WxGZHEnum.getDescByCode(patArchive.getOrgid()); 
 | 
//                                if (CollectionUtils.isEmpty(wxqqxx) || wxqqxx.size() < 4) { 
 | 
//                                    ServiceSubtask ss = new ServiceSubtask(); 
 | 
//                                    ss.setResult("error"); 
 | 
//                                    ss.setRemark("该机构的公众号配置信息不全,无法通过公众号发送"); 
 | 
//                                    ss.setSendstate(5L); 
 | 
//                                    ss.setId(serviceSubtask.getId()); 
 | 
////                                    ss.setFinishtime(new Date()); 
 | 
//                                    serviceSubtaskMapper.updateServiceSubtask(ss); 
 | 
//                                    continue; 
 | 
//                                } 
 | 
// 
 | 
//                                if (StringUtils.isEmpty(patArchive.getPatidHis())) { 
 | 
//                                    ServiceSubtask ss = new ServiceSubtask(); 
 | 
//                                    ss.setResult("error"); 
 | 
//                                    ss.setRemark("公众号发送失败,his系统的患者id为空"); 
 | 
//                                    ss.setSendstate(5L); 
 | 
//                                    ss.setId(serviceSubtask.getId()); 
 | 
////                                    ss.setFinishtime(new Date()); 
 | 
//                                    serviceSubtaskMapper.updateServiceSubtask(ss); 
 | 
//                                    continue; 
 | 
//                                } 
 | 
//                                String wxCode = getWXCode(serviceSubtask.getSfzh(), url, serviceSubtask.getTaskName(), serviceSubtask.getTaskDesc(), patArchive.getTelcode(), serviceSubtask.getSendname(), patArchive.getPatidHis(), wxqqxx); 
 | 
// 
 | 
//                                Map<String, Object> map = JSONObject.parseObject(wxCode, Map.class); 
 | 
//                                //任务发送记录 
 | 
//                                ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord(); 
 | 
//                                serviceSubtaskRecord.setTaskid(serviceSubtask.getTaskid().toString()); 
 | 
//                                serviceSubtaskRecord.setUuid(UUID.randomUUID().toString()); 
 | 
//                                serviceSubtaskRecord.setTasktype(serviceSubtask.getType()); 
 | 
//                                serviceSubtaskRecord.setPreachform("4"); 
 | 
//                                serviceSubtaskRecord.setStartTime(System.currentTimeMillis()); 
 | 
//                                serviceSubtaskRecord.setResult("success"); 
 | 
//                                if (!map.isEmpty() && (Boolean) map.get("succ") == false) 
 | 
//                                    serviceSubtaskRecord.setResult("error"); 
 | 
//                                serviceSubtaskRecordService.insertServiceSubtaskRecord(serviceSubtaskRecord); 
 | 
// 
 | 
//                                //发送完成后,修改状态 
 | 
//                                serviceSubtask.setSendstate(3L); 
 | 
//                                if ((Boolean) map.get("succ") == true) { 
 | 
//                                    serviceSubtask.setResult("success"); 
 | 
//                                } else { 
 | 
//                                    serviceSubtask.setResult("error"); 
 | 
//                                    serviceSubtask.setSendstate(5L); 
 | 
//                                    serviceSubtask.setRemark(map.get("msg").toString()); 
 | 
//                                } 
 | 
//                                iServiceSubtaskService.updateServiceSubtask(serviceSubtask); 
 | 
//                            } catch (Exception e) { 
 | 
//                                String guid = UUID.randomUUID().toString(); 
 | 
//                                log.error("长期任务,公众号发送失败原因:{},{}", e.getMessage(), guid); 
 | 
//                                serviceSubtask.setResult("error"); 
 | 
//                                serviceSubtask.setRemark("系统错误"); 
 | 
//                                serviceSubtask.setSendstate(5L); 
 | 
////                                serviceSubtask.setFinishtime(new Date()); 
 | 
//                                serviceSubtask.setGuid(guid); 
 | 
//                                iServiceSubtaskService.updateServiceSubtask(serviceSubtask); 
 | 
//                            } 
 | 
//                        } 
 | 
//                    } 
 | 
//                } 
 | 
//                //通知 MQ 消息已被接收,可以ACK(从队列中删除)了   (这个需要根据业务再去处理ACK) 
 | 
//            } 
 | 
//        } 
 | 
//    } 
 | 
// 
 | 
// 
 | 
//    /** 
 | 
//     * 获出院患者信息 
 | 
//     * cry    出入院: 0 入院   1 出院 
 | 
//     */ 
 | 
//    @Transactional 
 | 
//    public void getInHospInfo(String cry, LocalDateTime startTime, LocalDateTime endTime) { 
 | 
//        // 定义日期时间格式 
 | 
//        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.S"); 
 | 
//        Map<String, String> req = new HashMap<>(); 
 | 
//        if (cry.equals("1")) { 
 | 
//            req.put("cashStartDate", startTime.format(formatter)); 
 | 
//            req.put("cashEndDate", endTime.format(formatter)); 
 | 
//            req.put("currStatus", "4"); 
 | 
//        } else if (cry.equals("0")) { 
 | 
//            req.put("admissStartDate", startTime.format(formatter)); 
 | 
//            req.put("admissEndDate", endTime.format(formatter)); 
 | 
//            req.put("currStatus", "2"); 
 | 
//        } 
 | 
//        Map<String, String> header = new HashMap<>(); 
 | 
//        header.put("x-hcsb-serviceno", "IS002347"); 
 | 
//        header.put("x-hcsb-version", "2.0"); 
 | 
//        header.put("x-hcsb-sourcesyscode", "14"); 
 | 
//        header.put("x-hcsb-token", "ArGE2JnHtxG/Zx5nrnGY4eOfMUJGGJokAJHigG1BrCY="); 
 | 
//        header.put("x-hcsb-msgdate", startTime.format(formatter)); 
 | 
//        String result = HttpUtils.sendPostByHeader(hospInfoUrl, new Gson().toJson(req), header); 
 | 
//        //数据解析 
 | 
//        Gson gson = new Gson(); 
 | 
//        JsonObject jsonObject = gson.fromJson(result, JsonObject.class); 
 | 
//        JsonArray resultArray = jsonObject.getAsJsonObject("data").getAsJsonArray("result"); 
 | 
//        Type resultType = new TypeToken<List<ThiedInhospInfo>>() { 
 | 
//        }.getType(); 
 | 
//        List<ThiedInhospInfo> thiedInhospInfoList = gson.fromJson(resultArray, resultType); 
 | 
// 
 | 
//        // 创建一个新文件 
 | 
//        String filename = null; 
 | 
//        if (cry.equals("0")) filename = "入院信息" + System.currentTimeMillis(); 
 | 
//        if (cry.equals("1")) filename = "出院信息" + System.currentTimeMillis(); 
 | 
//        File file = new File("D:\\public\\HIS数据采集\\" + filename); 
 | 
//        if (!file.exists()) { 
 | 
//            // 如果文件不存在,则创建新文件 
 | 
//            try { 
 | 
//                if (file.createNewFile()) { 
 | 
//                    System.out.println("成功创建了新文件!"); 
 | 
//                } else { 
 | 
//                    System.out.println("失败!文件无法创建!"); 
 | 
//                } 
 | 
//            } catch (IOException e) { 
 | 
//                e.printStackTrace(); 
 | 
//            } 
 | 
//        } 
 | 
//        // 将数据写入到文件中 
 | 
//        try { 
 | 
//            FileWriter writer = new FileWriter(file); 
 | 
//            writer.write(result); 
 | 
//        } catch (IOException e) { 
 | 
//            e.printStackTrace(); 
 | 
//        } 
 | 
// 
 | 
//        if (CollectionUtils.isNotEmpty(thiedInhospInfoList)) { 
 | 
//            for (ThiedInhospInfo thiedInhospInfo : thiedInhospInfoList) { 
 | 
//                //通过身份证号查询该患者在患者表是否存在 
 | 
//                PatArchive patArchive = new PatArchive(); 
 | 
//                List<PatArchive> patArchives = null; 
 | 
//                patArchive.setIdcardno(thiedInhospInfo.getPatiIdCardNo().trim()); 
 | 
//                if (StringUtils.isNotEmpty(thiedInhospInfo.getPatiIdCardNo().trim())) { 
 | 
//                    patArchives = patArchiveService.selectPatArchiveList(patArchive); 
 | 
//                } else { 
 | 
//                    //患者信息为空,直接 下一个 
 | 
//                    continue; 
 | 
//                } 
 | 
// 
 | 
//                patArchive.setPatientno(thiedInhospInfo.getPatiMediaNo()); 
 | 
//                patArchive.setSourcefrom(2); 
 | 
//                patArchive.setPattype("2"); 
 | 
//                if (StringUtils.isNotEmpty(thiedInhospInfo.getOutWayId()) && thiedInhospInfo.getOutWayId().equals("4")) { 
 | 
//                    //如果为4就是死亡 
 | 
//                    patArchive.setNotrequiredFlag("1"); 
 | 
//                    patArchive.setNotrequiredreason(thiedInhospInfo.getOutWayName()); 
 | 
//                } 
 | 
//                if (cry.equals("1") && StringUtils.isEmpty(thiedInhospInfo.getOutWayId())) { 
 | 
//                    //如果为4就是死亡 
 | 
//                    patArchive.setNotrequiredFlag("1"); 
 | 
//                    patArchive.setNotrequiredreason("出院方式为空"); 
 | 
//                } 
 | 
//                patArchive.setSex(thiedInhospInfo.getPatiRecordGender().equals("男") ? 1L : 2L); 
 | 
//                patArchive.setNation(thiedInhospInfo.getPatiNation()); 
 | 
//                patArchive.setNativePlace(thiedInhospInfo.getPatiNationality()); 
 | 
//                patArchive.setPlaceOfResidence(StringUtils.isNotEmpty(thiedInhospInfo.getPatiHomeAddr()) ? thiedInhospInfo.getPatiHomeAddr().replace("null", "") : ""); 
 | 
//                try { 
 | 
//                    if (StringUtils.isNotEmpty(thiedInhospInfo.getPatiBirthday())) 
 | 
//                        patArchive.setBirthdate(new SimpleDateFormat("yyyy-MM-dd").parse(thiedInhospInfo.getPatiBirthday())); 
 | 
//                } catch (ParseException e) { 
 | 
//                    e.printStackTrace(); 
 | 
//                } 
 | 
//                if (thiedInhospInfo.getTreateAge() != null) { 
 | 
//                    patArchive.setAge(Long.valueOf(thiedInhospInfo.getTreateAge())); 
 | 
//                } else { 
 | 
//                    patArchive.setAge(null); 
 | 
//                } 
 | 
//                patArchive.setAgeUnit(thiedInhospInfo.getTreatAgeunit()); 
 | 
//                patArchive.setTelcode(thiedInhospInfo.getCompanyTelNum()); 
 | 
//                patArchive.setRelativetelcode(thiedInhospInfo.getContactPersonPhone()); 
 | 
//                patArchive.setDelFlag("0"); 
 | 
//                patArchive.setCreateTime(new Date()); 
 | 
//                patArchive.setUpdateTime(new Date()); 
 | 
//                patArchive.setName(thiedInhospInfo.getPatiRecordName()); 
 | 
//                if (CollectionUtils.isEmpty(patArchives) || patArchives.size() == 0) { 
 | 
//                    patArchiveService.insertPatArchive(patArchive); 
 | 
//                } else { 
 | 
//                    patArchive.setId(patArchives.get(0).getId()); 
 | 
//                    patArchiveService.updateArchive(patArchive); 
 | 
//                } 
 | 
// 
 | 
//                log.error("入参的patArchive:{}", patArchive); 
 | 
//                PatMedInhosp patMedInhosp = new PatMedInhosp(); 
 | 
//                patMedInhosp.setPatid(patArchive.getId()); 
 | 
//                patMedInhosp.setPatno(patArchive.getPatientno()); 
 | 
//                patMedInhosp.setPatname(patArchive.getName()); 
 | 
//                patMedInhosp.setNurseId(thiedInhospInfo.getNurseId()); 
 | 
//                patMedInhosp.setNurseName(thiedInhospInfo.getNurseName()); 
 | 
//                patMedInhosp.setSerialnum(thiedInhospInfo.getInpatientId()); 
 | 
//                patMedInhosp.setFuflag("1"); 
 | 
//                if (cry.equals("0")) { 
 | 
//                    patMedInhosp.setInhospstate("0"); 
 | 
//                } else if (cry.equals("1")) { 
 | 
//                    patMedInhosp.setInhospstate("1"); 
 | 
//                } 
 | 
//                patMedInhosp.setHospitalcode(thiedInhospInfo.getAreaId()); 
 | 
//                patMedInhosp.setIcd10code(thiedInhospInfo.getDiagIcd10()); 
 | 
//                patMedInhosp.setDiagname(thiedInhospInfo.getDiagName()); 
 | 
//                try { 
 | 
//                    if (StringUtils.isNotEmpty(thiedInhospInfo.getAdmissDate())) 
 | 
//                        patMedInhosp.setStarttime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(thiedInhospInfo.getAdmissDate())); 
 | 
//                } catch (ParseException e) { 
 | 
//                    e.printStackTrace(); 
 | 
//                } 
 | 
//                try { 
 | 
//                    if (StringUtils.isNotEmpty(thiedInhospInfo.getOutDate())) 
 | 
//                        patMedInhosp.setEndtime(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(thiedInhospInfo.getOutDate())); 
 | 
//                } catch (ParseException e) { 
 | 
//                    e.printStackTrace(); 
 | 
//                } 
 | 
//                patMedInhosp.setDeptcode(thiedInhospInfo.getAdmissDeptId()); 
 | 
//                patMedInhosp.setDeptid(thiedInhospInfo.getAdmissDeptId()); 
 | 
//                patMedInhosp.setDeptname(thiedInhospInfo.getAdmissDeptName()); 
 | 
//                patMedInhosp.setBedNo(thiedInhospInfo.getAdmissBedNo()); 
 | 
//                patMedInhosp.setDelFlag("0"); 
 | 
////                patMedInhosp.setLeaveldeptcode(thiedInhospInfo.getCurrDeptCode()); 
 | 
//                patMedInhosp.setLeaveldeptcode(thiedInhospInfo.getCurrDeptId()); 
 | 
//                patMedInhosp.setLeaveldeptname(thiedInhospInfo.getCurrDeptName()); 
 | 
//                patMedInhosp.setLeavediagname(thiedInhospInfo.getDiagName()); 
 | 
//                patMedInhosp.setLeaveicd10code(thiedInhospInfo.getDiagIcd10()); 
 | 
//                patMedInhosp.setDrname(thiedInhospInfo.getDoctName()); 
 | 
//                patMedInhosp.setDrcode(thiedInhospInfo.getDoctId()); 
 | 
//                patMedInhosp.setOutWayId(thiedInhospInfo.getOutWayId()); 
 | 
//                patMedInhosp.setOutWayName(thiedInhospInfo.getOutWayName()); 
 | 
//                if (cry.equals("0")) { 
 | 
//                    patMedInhosp.setSchemestatus(1L); 
 | 
//                } else if (cry.equals("1")) { 
 | 
//                    patMedInhosp.setSchemestatus(2L); 
 | 
//                } 
 | 
//                patMedInhosp.setLeavehospitaldistrictid(thiedInhospInfo.getCurrWardCode()); 
 | 
//                patMedInhosp.setLeavehospitaldistrictcode(thiedInhospInfo.getCurrWardId()); 
 | 
//                patMedInhosp.setLeavehospitaldistrictname(thiedInhospInfo.getCurrWardName()); 
 | 
//                patMedInhosp.setLeaveldeptid(thiedInhospInfo.getCurrDeptCode()); 
 | 
//                patMedInhosp.setOrgid("1"); 
 | 
//                //如果是出院,先通过患者编号和流水号去查一下,患者是否存在,如果存在,则进行修改 
 | 
//                PatMedInhosp inhosp = new PatMedInhosp(); 
 | 
//                inhosp.setPatno(patArchive.getPatientno()); 
 | 
//                inhosp.setSerialnum(patMedInhosp.getSerialnum()); 
 | 
//                List<PatMedInhosp> patMedInhosps = patMedInhospService.selectPatMedInhospList(inhosp); 
 | 
//                log.error("是否需要更新:{}", patMedInhosps.size()); 
 | 
//                if (CollectionUtils.isNotEmpty(patMedInhosps)) { 
 | 
//                    patMedInhosp.setInhospid(patMedInhosps.get(0).getInhospid()); 
 | 
//                    log.error("------患者出入院修改信息:{}", patMedInhosp); 
 | 
//                    patMedInhospService.updatePatMedInhosp(patMedInhosp); 
 | 
//                } else { 
 | 
//                    log.error("----患者出入院新增信息:{}", patMedInhosp); 
 | 
//                    patMedInhospService.insertPatMedInhosp(patMedInhosp); 
 | 
//                } 
 | 
// 
 | 
//            } 
 | 
//        } 
 | 
//    } 
 | 
// 
 | 
// 
 | 
//    private String getKey() { 
 | 
//        Map<String, String> map = new HashMap<>(); 
 | 
//        for (int i = 0; i < 6; i++) { 
 | 
//            Boolean aBoolean = redisCache.hasKey("cache-" + i); 
 | 
//            if (!aBoolean) { 
 | 
//                redisCache.setCacheObject("cache-" + i, ""); 
 | 
//                map.put("cache-" + i, ""); 
 | 
//            } else { 
 | 
//                map.put("cache-" + i, redisCache.getCacheObject("cache-" + i)); 
 | 
//            } 
 | 
//        } 
 | 
// 
 | 
//        String key = null; 
 | 
//        String value = ""; 
 | 
//        for (Map.Entry<String, String> entry : map.entrySet()) { 
 | 
//            if (StringUtils.isEmpty(value)) { 
 | 
//                value = entry.getValue(); 
 | 
//                key = entry.getKey(); 
 | 
//            } else { 
 | 
//                if (entry.getValue().split(",").length < value.split(",").length) { 
 | 
//                    value = entry.getValue(); 
 | 
//                    key = entry.getKey(); 
 | 
//                } 
 | 
//            } 
 | 
//        } 
 | 
//        return key; 
 | 
//    } 
 | 
// 
 | 
//    private String getDXCode(String address, String ShouJiHM, String FaSongNR, String FaSongRID, String FaSongRXM, Map<String, Object> headerMap, String token) { 
 | 
//        Map<String, Object> map = new LinkedHashMap<>(); 
 | 
// 
 | 
//        Map<String, Object> YeWuXX = new LinkedHashMap<>(); 
 | 
//        Map<String, Object> DuanXinXX = new LinkedHashMap<>(); 
 | 
//        DuanXinXX.put("ShouJiHM", ShouJiHM); 
 | 
//        DuanXinXX.put("FaSongNR", FaSongNR); 
 | 
//        DuanXinXX.put("FaSongRID", FaSongRID); 
 | 
//        DuanXinXX.put("FaSongRXM", FaSongRXM); 
 | 
//        YeWuXX.put("DuanXinXX", DuanXinXX); 
 | 
// 
 | 
//        map.put("XiaoXiTou", headerMap); 
 | 
//        map.put("YeWuXX", YeWuXX); 
 | 
// 
 | 
//        String body = new Gson().toJson(map); 
 | 
// 
 | 
////        String result = HttpUtils.sendPost(address, body); 
 | 
//        String result = null; 
 | 
//        try { 
 | 
//            result = OkHttpExample.sendPostRequest(address, body, token); 
 | 
//        } catch (IOException e) { 
 | 
//            e.printStackTrace(); 
 | 
//        } 
 | 
//        log.error("--------result的值为:{}-----", result); 
 | 
// 
 | 
//        JSONObject jsonObject = JSONObject.parseObject(result); 
 | 
//        String code = (String) jsonObject.toString(); 
 | 
//        return code; 
 | 
//    } 
 | 
// 
 | 
// 
 | 
//    private String getWXCode(String idcard, String url, String taskName, String taskDesc, String phone, String setPatientname, String setPatientid, List<String> wxqqxx) { 
 | 
//        XinHuaWXReq xinHuaWXReq = new XinHuaWXReq(); 
 | 
//        xinHuaWXReq.setIdcard(idcard); 
 | 
//        xinHuaWXReq.setUrl(url); 
 | 
//        xinHuaWXReq.setPatientid(setPatientid); 
 | 
//        xinHuaWXReq.setPatientname(setPatientname); 
 | 
//        xinHuaWXReq.setMobile(phone); 
 | 
//        xinHuaWXReq.setMedcardno(null); 
 | 
//        xinHuaWXReq.setTitlename(taskName); 
 | 
//        xinHuaWXReq.setContent(taskDesc); 
 | 
//        xinHuaWXReq.setAppid(wxqqxx.get(1)); 
 | 
//        log.error("----getWXCode---xinHuaWXReq的出参为:{}", xinHuaWXReq); 
 | 
//        String body = new Gson().toJson(xinHuaWXReq); 
 | 
//        String encode = encode(wxqqxx.get(2).concat(body)); 
 | 
//        Map<String, String> headerMap = new HashMap<>(); 
 | 
//        headerMap.put("sign", encode); 
 | 
//        String result = HttpUtils.sendPostByHeader(wxqqxx.get(3), body, headerMap); 
 | 
// 
 | 
//        JSONObject jsonObject = JSONObject.parseObject(result); 
 | 
//        String code = (String) jsonObject.toString(); 
 | 
//        return code; 
 | 
//    } 
 | 
// 
 | 
// 
 | 
//    public String encode(String arg) { 
 | 
//        if (arg == null) { 
 | 
//            arg = ""; 
 | 
//        } 
 | 
//        MessageDigest md5 = null; 
 | 
//        try { 
 | 
//            md5 = MessageDigest.getInstance("MD5"); 
 | 
//            md5.update(arg.getBytes("UTF-8")); 
 | 
//        } catch (Exception e) { 
 | 
//            e.printStackTrace(); 
 | 
//        } 
 | 
//        return toHex(md5.digest()); 
 | 
//    } 
 | 
//} 
 |