|
@@ -13,7 +13,6 @@ import com.baomidou.mybatisplus.core.toolkit.IdWorker;
|
|
|
import com.google.common.cache.Cache;
|
|
import com.google.common.cache.Cache;
|
|
|
import com.google.common.cache.CacheBuilder;
|
|
import com.google.common.cache.CacheBuilder;
|
|
|
import com.nb.web.api.entity.BusClinicEntity;
|
|
import com.nb.web.api.entity.BusClinicEntity;
|
|
|
-import com.nb.web.api.entity.BusInfusionHistoryEntity;
|
|
|
|
|
import com.nb.web.service.bus.entity.*;
|
|
import com.nb.web.service.bus.entity.*;
|
|
|
import com.nb.web.service.bus.listener.event.bean.HisEvent;
|
|
import com.nb.web.service.bus.listener.event.bean.HisEvent;
|
|
|
import com.nb.web.service.bus.hospital.script.DefaultParse;
|
|
import com.nb.web.service.bus.hospital.script.DefaultParse;
|
|
@@ -66,7 +65,6 @@ public class HisScriptSession {
|
|
|
private LocalBusConMixService conMixService;
|
|
private LocalBusConMixService conMixService;
|
|
|
private LocalBusConDoctorService conDoctorService;
|
|
private LocalBusConDoctorService conDoctorService;
|
|
|
private WsPublishUtils wsPublishUtils;
|
|
private WsPublishUtils wsPublishUtils;
|
|
|
- private LocalBusInfusionHistoryService infusionHistoryService;
|
|
|
|
|
//缓存发给医院的请求,对相同的请求进行批量处理
|
|
//缓存发给医院的请求,对相同的请求进行批量处理
|
|
|
private Cache<String, HisRequest> hisRequestMap = CacheBuilder.newBuilder()
|
|
private Cache<String, HisRequest> hisRequestMap = CacheBuilder.newBuilder()
|
|
|
.expireAfterWrite(30, TimeUnit.SECONDS)
|
|
.expireAfterWrite(30, TimeUnit.SECONDS)
|
|
@@ -84,7 +82,6 @@ public class HisScriptSession {
|
|
|
this.conMixService=SpringUtil.getBean(LocalBusConMixService.class);
|
|
this.conMixService=SpringUtil.getBean(LocalBusConMixService.class);
|
|
|
this.conDoctorService=SpringUtil.getBean(LocalBusConDoctorService.class);
|
|
this.conDoctorService=SpringUtil.getBean(LocalBusConDoctorService.class);
|
|
|
this.wsPublishUtils=SpringUtil.getBean(WsPublishUtils.class);
|
|
this.wsPublishUtils=SpringUtil.getBean(WsPublishUtils.class);
|
|
|
- this.infusionHistoryService=SpringUtil.getBean(LocalBusInfusionHistoryService.class);
|
|
|
|
|
init(configStorageManager,hospitalId);
|
|
init(configStorageManager,hospitalId);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -265,21 +262,6 @@ public class HisScriptSession {
|
|
|
if(CollectionUtil.isEmpty(sources)){
|
|
if(CollectionUtil.isEmpty(sources)){
|
|
|
return null;
|
|
return null;
|
|
|
}else {
|
|
}else {
|
|
|
-
|
|
|
|
|
- BusInfusionHistoryEntity lastInfusion = infusionHistoryService.lastInfusionByPatientCode(hospitalId,patientCode);
|
|
|
|
|
- if(ObjectUtil.isNotNull(lastInfusion)){
|
|
|
|
|
- //最后一次输注信息存在
|
|
|
|
|
- sources=sources.stream()
|
|
|
|
|
- .filter(clinic->{
|
|
|
|
|
- Date infusionStartTime = lastInfusion.getStartTime();
|
|
|
|
|
- Date clinicStartTime = clinic.getStartTime();
|
|
|
|
|
- if(ObjectUtil.isNull(infusionStartTime)||ObjectUtil.isNull(clinicStartTime)){
|
|
|
|
|
- return true;
|
|
|
|
|
- }
|
|
|
|
|
- return clinicStartTime.before(infusionStartTime);
|
|
|
|
|
- }).collect(Collectors.toList());
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
BusPatientEntity patient = patientService
|
|
BusPatientEntity patient = patientService
|
|
|
.getOne(new QueryWrapper<BusPatientEntity>().lambda().eq(BusPatientEntity::getCode, patientCode).eq(BusPatientEntity::getTenantId, hospitalId));
|
|
.getOne(new QueryWrapper<BusPatientEntity>().lambda().eq(BusPatientEntity::getCode, patientCode).eq(BusPatientEntity::getTenantId, hospitalId));
|
|
|
if(patient!=null){
|
|
if(patient!=null){
|
|
@@ -303,7 +285,7 @@ public class HisScriptSession {
|
|
|
}
|
|
}
|
|
|
String key=
|
|
String key=
|
|
|
StrUtil.isNullOrUndefined(source.getSurgeryName())?"":source.getSurgeryName()+
|
|
StrUtil.isNullOrUndefined(source.getSurgeryName())?"":source.getSurgeryName()+
|
|
|
- DateUtil.formatDateTime(source.getStartTime());
|
|
|
|
|
|
|
+ DateUtil.formatDateTime(source.getStartTime());
|
|
|
if(!distinct.containsKey(key)){
|
|
if(!distinct.containsKey(key)){
|
|
|
distinct.put(key,source);
|
|
distinct.put(key,source);
|
|
|
publish.add(source);
|
|
publish.add(source);
|