Merge branch 'master' of ssh://git.jizhiweb.cn:2222/clinic-v2/server

This commit is contained in:
LiJianZhao 2025-05-26 16:42:12 +08:00
commit 5e99c0394e
2 changed files with 19 additions and 22 deletions

View File

@ -11,6 +11,7 @@ import com.syjiaer.clinic.server.entity.diagnosis.vo.MedicalHistoryVo;
import com.syjiaer.clinic.server.entity.diagnosis.vo.MedicalRecordVo;
import com.syjiaer.clinic.server.entity.patient.PatientRegistration;
import com.syjiaer.clinic.server.entity.patient.vo.SeeDoctorInfoVo;
import com.syjiaer.clinic.server.service.diagnosis.CheckService;
import com.syjiaer.clinic.server.service.diagnosis.DiagnosisService;
import com.syjiaer.clinic.server.service.patient.PatientRegistrationService;
import org.springframework.beans.factory.annotation.Autowired;
@ -28,6 +29,8 @@ public class DiagnosisController extends BaseController {
@Autowired
private PatientRegistrationService patientRegistrationService;
@Autowired
private CheckService checkService;
/**
* 保存病历
* @return
@ -37,6 +40,11 @@ public class DiagnosisController extends BaseController {
public Result<PatientRegistration> save() {
MedicalRecordSaveDto saveDto = parmsUtil.getObject("data", MedicalRecordSaveDto.class);
diagnosisService.save(saveDto);
//调用事前检查
checkService.check(saveDto.getRegistrationId(),"3101");
checkService.check(saveDto.getRegistrationId(),"3102");
return success( patientRegistrationService.getById(saveDto.getRegistrationId()));
}

View File

@ -125,20 +125,20 @@ public class SocialDirectoryService extends BaseService {
if (type == 1301) {
flag = line_array[78];
socialDirectory.setProducer(line_array[53]);
socialDirectory.setKeyword(line_array[1] + "," + line_array[3] + "," + line_array[61]);
socialDirectory.setKeyword(line_array[1] + "," + line_array[3] + "," + line_array[61]+","+socialDirectory.getProducer()+","+socialDirectory.getName()+","+socialDirectory.getCode());
socialDirectory.setCreateDatetime(LocalDateTime.parse(line_array[80], dateTimeFormatter));
socialDirectory.setUpdateDatetime(LocalDateTime.parse(line_array[81], dateTimeFormatter));
}
if (type == 1302) {
flag = line_array[13];
socialDirectory.setKeyword(line_array[19]);
socialDirectory.setKeyword(line_array[19]+","+socialDirectory.getProducer()+","+socialDirectory.getName()+","+socialDirectory.getCode());
socialDirectory.setCreateDatetime(LocalDateTime.parse(line_array[15], dateTimeFormatter));
socialDirectory.setUpdateDatetime(LocalDateTime.parse(line_array[16], dateTimeFormatter));
}
if (type == 1306) {
flag = line_array[67];
socialDirectory.setProducer(line_array[59]);
socialDirectory.setKeyword(line_array[4]);
socialDirectory.setKeyword(line_array[4]+","+socialDirectory.getProducer()+","+socialDirectory.getName()+","+socialDirectory.getCode());
}
if (type == 1309) {
flag = line_array[5];
@ -186,22 +186,7 @@ public class SocialDirectoryService extends BaseService {
return next_version_name;
}
private void saveToMongoDb(SocialDirectory socialDirectory) {
SocialDirectoryMongodb socialDirectoryMongodb = new SocialDirectoryMongodb();
BeanUtils.copyProperties(socialDirectory, socialDirectoryMongodb);
Query query = new Query(Criteria.where("code").is(socialDirectoryMongodb.getCode()));
if (mongoTemplate.exists(query, SocialDirectoryMongodb.class, "social_directory")) {
Update update = new Update();
update.set("name", socialDirectoryMongodb.getName());
update.set("keyword", socialDirectoryMongodb.getKeyword());
update.set("type", socialDirectoryMongodb.getType());
update.set("producer", socialDirectoryMongodb.getProducer());
mongoTemplate.updateFirst(query, update, SocialDirectoryMongodb.class, "social_directory");
} else {
mongoTemplate.insert(socialDirectoryMongodb, "social_directory");
}
}
private void saveListToMongoDb(List<SocialDirectory> list) {
@ -230,6 +215,13 @@ public class SocialDirectoryService extends BaseService {
Index index = new Index().on("code", Sort.Direction.ASC).named("code_uni").unique();
mongoTemplate.indexOps("social_directory").ensureIndex(index);
}
//判断索引是否存在
if (indexInfos.stream().noneMatch(index -> index.getName().equals("type_idx"))) {
DebugUtil.out("创建了type索引");
Index index = new Index().on("type", Sort.Direction.ASC).named("type_idx");
mongoTemplate.indexOps("social_directory").ensureIndex(index);
}
}
/*
@ -504,10 +496,7 @@ public class SocialDirectoryService extends BaseService {
if (!keyword.trim().isEmpty()) {
query.addCriteria(new Criteria().orOperator(
Criteria.where("code").regex(keyword, "i"),
Criteria.where("name").regex(keyword, "i"),
Criteria.where("keyword").regex(keyword, "i"),
Criteria.where("producer").regex(keyword, "i")
Criteria.where("keyword").regex(keyword, "i")
));
}
long count = mongoTemplate.count(query, SocialDirectoryMongodb.class, "social_directory");