|
|
|
@ -207,6 +207,7 @@ public class SyncBasicFileImpl implements ISyncBasicFileService {
|
|
|
|
|
String patientId = fileUploadJpg.get(0).getPatientId();
|
|
|
|
|
Integer admissTimes = fileUploadJpg.get(0).getAdmissTimes();
|
|
|
|
|
String admissId = fileUploadJpg.get(0).getAdmissId();
|
|
|
|
|
Date disDate = fileUploadJpg.get(0).getDisDate();
|
|
|
|
|
//组织基础数据
|
|
|
|
|
Tbasic tbasic = this.getTbasic(fileUploadJpg);
|
|
|
|
|
tbasics.add(tbasic);
|
|
|
|
@ -224,9 +225,9 @@ public class SyncBasicFileImpl implements ISyncBasicFileService {
|
|
|
|
|
if (basicMapper.delTbasicByPatientId(admissId)) {
|
|
|
|
|
//删除路径图像
|
|
|
|
|
List<ScanAssort> scanAssort = scanAssortMapper.getScanAssort(basicPatientId);
|
|
|
|
|
if (!CollectionUtils.isEmpty(scanAssort)){
|
|
|
|
|
for (ScanAssort list:scanAssort){
|
|
|
|
|
File file = new File(list.getImagePath()+File.separatorChar+list.getScanPage());
|
|
|
|
|
if (!CollectionUtils.isEmpty(scanAssort)) {
|
|
|
|
|
for (ScanAssort list : scanAssort) {
|
|
|
|
|
File file = new File(list.getImagePath() + File.separatorChar + list.getScanPage());
|
|
|
|
|
try {
|
|
|
|
|
file.delete(); // 删除照片
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
@ -256,13 +257,7 @@ public class SyncBasicFileImpl implements ISyncBasicFileService {
|
|
|
|
|
return CommonResult.failed("文件名:" + file.getOriginalFilename() + "与病案号:" + patientId + "集合中中文名不匹配");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
//文件保存目录
|
|
|
|
|
String filePathdir = savePath + File.separatorChar + patientId + File.separatorChar + admissTimes;
|
|
|
|
|
File filePath = new File(filePathdir);
|
|
|
|
|
//判断文件夹是否存在不存在创建文件夹
|
|
|
|
|
if (!filePath.exists()) {
|
|
|
|
|
filePath.mkdirs();
|
|
|
|
|
}
|
|
|
|
|
String filePathdir = createDirectory(patientId, admissTimes, admissId, disDate);
|
|
|
|
|
//保存文件
|
|
|
|
|
for (MultipartFile file : files) {
|
|
|
|
|
for (FileUploadJpgDto dto : fileUploadJpg) {
|
|
|
|
@ -285,18 +280,37 @@ public class SyncBasicFileImpl implements ISyncBasicFileService {
|
|
|
|
|
}
|
|
|
|
|
log.info("本次传输成功病案主键为:" + patientId);
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
return CommonResult.failed("保存失败!异常处理" + e.getMessage());
|
|
|
|
|
log.info("保存失败!异常处理" + e);
|
|
|
|
|
return CommonResult.failed("保存失败!异常处理" + e);
|
|
|
|
|
}
|
|
|
|
|
return CommonResult.success("完成");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private String createDirectory(String patientId, Integer admissTimes, String admissId, Date disDate) {
|
|
|
|
|
//根据年/月/日/住院号_住院次数/patientId生成目录
|
|
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
|
|
String disDateTime = sdf.format(disDate);
|
|
|
|
|
String[] parts = disDateTime.split("-");
|
|
|
|
|
String year = parts[0];
|
|
|
|
|
String month = parts[1];
|
|
|
|
|
String day = parts[2];
|
|
|
|
|
//文件保存目录
|
|
|
|
|
String filePathdir = savePath + File.separatorChar + year + File.separatorChar + month + File.separatorChar + day+File.separatorChar+ admissId +"_"+ admissTimes +File.separatorChar+ patientId;
|
|
|
|
|
File filePath = new File(filePathdir);
|
|
|
|
|
//判断文件夹是否存在不存在创建文件夹
|
|
|
|
|
if (!filePath.exists()) {
|
|
|
|
|
filePath.mkdirs();
|
|
|
|
|
}
|
|
|
|
|
return filePathdir;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private ScanAssort addScanAssort(String patientId, String filePathdir, MultipartFile file, FileUploadJpgDto dto, int[] sort) {
|
|
|
|
|
//文件保存地址
|
|
|
|
|
String toJpgFilePath = filePathdir + File.separatorChar + dto.getUploadFileName();
|
|
|
|
|
try {
|
|
|
|
|
file.transferTo(new File(toJpgFilePath));
|
|
|
|
|
} catch (IOException e) {
|
|
|
|
|
log.info("将pdf文件保存本地失败:" + dto.getUploadFileName() + "," + e.getMessage());
|
|
|
|
|
log.info("将jpg文件保存本地失败:" + dto.getUploadFileName() + "," + e.getMessage());
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
//组织新数据
|
|
|
|
@ -312,6 +326,7 @@ public class SyncBasicFileImpl implements ISyncBasicFileService {
|
|
|
|
|
scanAssort.setFileSource(2);
|
|
|
|
|
scanAssort.setFileStorageType(1);
|
|
|
|
|
scanAssort.setFilePages(1);
|
|
|
|
|
scanAssort.setCreater("admin");
|
|
|
|
|
sort[0] += 1;
|
|
|
|
|
return scanAssort;
|
|
|
|
|
}
|
|
|
|
|