ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
@@ -1555,6 +1555,26 @@ } } public void collectHISDaysBefore(Long daysBefore) { try { // 获取昨天0点到今天0点的时间范围 LocalDateTime todayZero = LocalDateTime.now().with(LocalTime.MIN); LocalDateTime daysBeforeZero = todayZero.minusDays(daysBefore); DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); String startTime = daysBeforeZero.format(formatter); String endTime = todayZero.format(formatter); // HIS数据采集 log.info("【collectHISDaysBefore】HIS开始采集数据"); // 立即返回,后台异步执行 CompletableFuture.runAsync(() -> { ichService.syncMedInhosp(startTime, endTime); }); log.info("【collectHISDaysBefore】HIS结束采集数据"); } catch (Exception e) { log.error("【collectHISDaysBefore】HIS数据采集异常", e); } } public Boolean setSuccessPreachForm(ServiceSubtask serviceSubtask, String preachform, String remark, String failSendstate) { if (preachform.equals("-1")) { //说明都不需要执行了 ruoyi-quartz/src/main/resources/mapper/quartz/CollectHISMapper.xml
@@ -685,10 +685,10 @@ <if test="outWayName != null ">and b.out_way_name = #{outWayName}</if> <if test="orgid != null ">and b.orgid = #{orgid}</if> <if test="lastStartTime != null and lastStartTime != ''"> and last_Update_Time >= to_date(#{lastStartTime}, 'YYYY-MM-DD HH24:MI:SS') and last_Update_Time >= (to_date(#{lastStartTime}, 'YYYY-MM-DD HH24:MI:SS') - 1) </if> <if test="lastEndTime != null and lastEndTime != ''"> and last_Update_Time <= to_date(#{lastEndTime}, 'YYYY-MM-DD HH24:MI:SS') and last_Update_Time <= (to_date(#{lastEndTime}, 'YYYY-MM-DD HH24:MI:SS') - 1) </if> </select> smartor/src/main/java/com/smartor/domain/PatMedOperationItem.java
@@ -263,5 +263,9 @@ @ApiModelProperty("住院记录流水号") @Excel(name = "住院记录流水号") private String serialnum; @ApiModelProperty(value = "出院时间") private String inhospEndtime; } smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java
@@ -1145,13 +1145,15 @@ serviceSubtask.setTaskid(serviceTask.getTaskid()); if (StringUtils.isNotEmpty(serviceTask.getLibtemplateid())) serviceSubtask.setLibtemplateid(Long.valueOf(serviceTask.getLibtemplateid())); serviceSubtask.setNurseId(patMedOperationItem.getNurseId()); serviceSubtask.setNurseName(patMedOperationItem.getNurseName()); // serviceSubtask.setInhospid(patMedInhosp.getInhospid()); serviceSubtask.setDrcode(patMedOperationItem.getDrcode()); serviceSubtask.setDrname(patMedOperationItem.getDrname()); serviceSubtask.setDeptcode(patMedOperationItem.getDeptcode()); serviceSubtask.setDeptname(patMedOperationItem.getDeptname()); serviceSubtask.setNurseId(patMedInhosp1.getNurseId()); serviceSubtask.setNurseName(patMedInhosp1.getNurseName()); serviceSubtask.setInhospid(patMedInhosp1.getInhospid()); serviceSubtask.setDrcode(patMedInhosp1.getDrcode()); serviceSubtask.setDrname(patMedInhosp1.getDrname()); serviceSubtask.setDeptcode(patMedInhosp1.getLeaveldeptcode()); serviceSubtask.setDeptname(patMedInhosp1.getLeaveldeptname()); serviceSubtask.setLeavehospitaldistrictcode(patMedInhosp1.getLeavehospitaldistrictcode()); serviceSubtask.setLeavehospitaldistrictname(patMedInhosp1.getLeavehospitaldistrictname()); serviceSubtask.setTemplateid(serviceTask.getTemplateid()); serviceSubtask.setTemplatename(serviceTask.getTemplatename()); @@ -1163,19 +1165,18 @@ serviceSubtask.setSex(patArchive.getSex()); serviceSubtask.setAge(patArchive.getAge()); serviceSubtask.setSendstate(2L); serviceSubtask.setManagementDoctor(patMedOperationItem.getDrname()); serviceSubtask.setManagementDoctorCode(patMedOperationItem.getDrcode()); // serviceSubtask.setStarttime(patMedInhosp.getStarttime()); // serviceSubtask.setEndtime(patMedInhosp.getEndtime()); serviceSubtask.setManagementDoctor(patMedInhosp1.getDrname()); serviceSubtask.setManagementDoctorCode(patMedInhosp1.getDrcode()); serviceSubtask.setStarttime(patMedInhosp1.getStarttime()); serviceSubtask.setEndtime(patMedInhosp1.getEndtime()); serviceSubtask.setServiceType(serviceTask.getServiceType()); serviceSubtask.setPreachform(serviceTask.getPreachform()); serviceSubtask.setHospType("2"); serviceSubtask.setCreateTime(new Date()); serviceSubtask.setUpdateTime(new Date()); serviceSubtask.setCreateBy(patMedOperationItem.getNurseName()); // serviceSubtask.setLeavehospitaldistrictcode(patArchive.getLeavehospitaldistrictcode()); // serviceSubtask.setLeavehospitaldistrictname(patArchive.getLeavehospitaldistrictname()); serviceSubtask.setCreateBy(patMedInhosp1.getNurseName()); serviceSubtask.setOperationItemId(patMedOperationItem.getId()); serviceSubtask.setUpdateBy(serviceTask.getUpdateBy()); serviceSubtask.setUpdateTime(new Date()); smartor/src/main/java/com/smartor/service/impl/ServiceExternalServiceImpl.java
@@ -1984,6 +1984,12 @@ log.info("手术申请入参类型为:{}", type); addOperationInfo(dataMap); return true; case "SM_SQ_ShouShuAP": log.info("手术安排入参类型为:{}", type); return true; case "SM_SQ_CheXiao": log.info("手术撤销入参类型为:{}", type); return true; case "TJ_YW_BaoGaoXX": log.info("体检报告入参类型为:{}", type); return true; smartor/src/main/resources/mapper/smartor/PatMedOperationItemMapper.xml
@@ -30,6 +30,7 @@ <result property="opercheckFlag" column="opercheck_flag"/> <result property="longTaskReason" column="long_task_reason"/> <result property="inhospstate" column="inhospstate"/> <result property="inhospEndtime" column="inhosp_endtime"/> <result property="serialnum" column="serialnum"/> <result property="deptcode" column="deptcode"/> @@ -452,10 +453,12 @@ pmo.deptcode, pmo.deptname, pmo.hospitaldistrictcode, pmo.hospitaldistrictname, pmo.leaveldeptcode, pmo.leaveldeptname, pmo.leavehospitaldistrictcode, pmo.leavehospitaldistrictname, pmo.patid, pmo.drcode, pmo.drname, pmo.nurse_id, pmo.nurse_name, pmo.inhospstate, pmo.serialnum pmo.serialnum, pmi.inhospstate from pat_med_operation pmo join pat_med_operation_item pmoi on pmoi.opid = pmo.opid left join pat_med_inhosp pmi on pmo.serialnum = pmi.serialnum where pmo.del_flag = '0' and pmoi.del_flag = '0' @@ -510,7 +513,7 @@ and pmoi.pid = #{pid} </if> <if test="inhospstate != null and inhospstate != ''"> and pmo.inhospstate = #{inhospstate} and pmi.inhospstate = #{inhospstate} </if> <if test="serialnum != null and serialnum != ''"> and pmo.serialnum = #{serialnum} smartor/src/main/resources/mapper/smartor/ServiceSubtaskMapper.xml
@@ -1817,7 +1817,8 @@ continue_content, continue_count, continue_time_next, task_situation task_situation, remark from service_subtask where 1=1 and del_flag = 0 @@ -2996,7 +2997,8 @@ continue_content, continue_count, continue_time_next, task_situation task_situation, remark from service_subtask where 1=1 and del_flag = 0