市一同步联众数据

jp2demo1.0
linjj 1 year ago
parent fbabaf6fc8
commit 4fc3943aab

@ -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;
}

@ -159,13 +159,10 @@
<if test="dto.startDate !=null and dto.startDate != ''">
AND dis_date &lt;= #{dto.endDate}
</if>
limit #{pageStart} ,#{pageEnd}
</select>
<select id="getTbasicPatientId" resultType="java.lang.String">
select patient_id from t_basic where admiss_id=#{admissId}
select patient_id from docus_medicalrecord.t_basic where admiss_id=#{admissId}
</select>
</mapper>

@ -54,7 +54,7 @@
)
</delete>
<delete id="delScanAssort">
delete from ocus_archivefile.t_scan_assort where patient_id=#{patientId}
delete from docus_archivefile.t_scan_assort where patient_id=#{patientId}
</delete>
<select id="getListByPid" resultType="com.docus.demo.entity.ScanAssort">
SELECT id,

Loading…
Cancel
Save