市一同步联众数据

jp2demo1.0
linjj 1 year ago
parent 14399d929f
commit fbabaf6fc8

@ -56,5 +56,7 @@ public class FileUploadJpgDto {
@ApiModelProperty(value = "主要手术名称")
private String mainOperateName;
@ApiModelProperty(value = "院区")
private String wardPalce;
}

@ -144,6 +144,7 @@ public class Tbasic {
@ApiModelProperty(value = "扫描上传状态,0:未扫描、1:待质检、2:已退回、3:系统通过、4:人工通过5:已返工")
private Integer scanUploadState;
@ApiModelProperty(value = "院区")
private String wardPalce;
private Date birthday;
}

@ -35,7 +35,7 @@ public interface BasicMapper {
void insertOrUpdateTbasicSub(@Param("list") List<TbasicSub> tbasicSubList);
String getTbasicPatientId(@Param("patientId")String patientId);
String getTbasicPatientId(@Param("admissId")String admissId);
Boolean delTbasicByPatientId(@Param("patientId")String patientId);
Boolean delTbasicByPatientId(@Param("admissId")String admissId);
}

@ -206,13 +206,13 @@ public class SyncBasicFileImpl implements ISyncBasicFileService {
ArrayList<ScanAssort> scanAssorts = new ArrayList<>();
String patientId = fileUploadJpg.get(0).getPatientId();
Integer admissTimes = fileUploadJpg.get(0).getAdmissTimes();
String admissId = fileUploadJpg.get(0).getAdmissId();
//组织基础数据
Tbasic tbasic = this.getTbasic(fileUploadJpg);
tbasics.add(tbasic);
//查询是否存在更新,不存在新增
String basicPatientId = basicMapper.getTbasicPatientId(patientId);
String basicPatientId = basicMapper.getTbasicPatientId(admissId);
if (StringUtils.isBlank(basicPatientId)) {
log.info("查询不到PatientId为:" + patientId + "的数,新增基础数据");
if (!basicMapper.addBasic(tbasics)) {
log.info("新增PatientId为:" + patientId + "的基础数据失败");
return CommonResult.failed("新增PatientId为:" + patientId + "的基础数据失败");
@ -220,13 +220,27 @@ public class SyncBasicFileImpl implements ISyncBasicFileService {
log.info("新增PatientId为:" + patientId + "的基础数据成功");
}
} else {
//存在时先删除基础数据,后新增
if (basicMapper.delTbasicByPatientId(patientId)) {
//存在时先删除基础数据图像数据,后新增
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());
try {
file.delete(); // 删除照片
} catch (Exception e) {
e.printStackTrace();
}
}
}
//删除文件数据
scanAssortMapper.delScanAssort(basicPatientId);
if (!basicMapper.addBasic(tbasics)) {
log.info("新增PatientId为:" + patientId + "的基础数据失败");
return CommonResult.failed("新增PatientId为:" + patientId + "的基础数据失败");
} else {
log.info("更新PatientId为:" + patientId + "的基础数据成功");
log.info("PatientId为:" + patientId + "的基础数据成功");
}
}
}
@ -249,11 +263,6 @@ public class SyncBasicFileImpl implements ISyncBasicFileService {
if (!filePath.exists()) {
filePath.mkdirs();
}
List<ScanAssort> scanAssort = scanAssortMapper.getScanAssort(patientId);
if (!CollectionUtils.isEmpty(scanAssort)) {
//ScanAssort是否存在文件存在,存在删除
scanAssortMapper.delScanAssort(patientId);
}
//保存文件
for (MultipartFile file : files) {
for (FileUploadJpgDto dto : fileUploadJpg) {
@ -283,7 +292,7 @@ public class SyncBasicFileImpl implements ISyncBasicFileService {
private ScanAssort addScanAssort(String patientId, String filePathdir, MultipartFile file, FileUploadJpgDto dto, int[] sort) {
//文件保存地址
String toJpgFilePath = filePathdir + File.separatorChar + dto.getFileTitle();
String toJpgFilePath = filePathdir + File.separatorChar + dto.getUploadFileName();
try {
file.transferTo(new File(toJpgFilePath));
} catch (IOException e) {
@ -296,9 +305,9 @@ public class SyncBasicFileImpl implements ISyncBasicFileService {
scanAssort.setPatientId(patientId);
scanAssort.setAssortId(dto.getAssortId());
scanAssort.setFileTitle(dto.getFileTitle());
scanAssort.setImagePath(toJpgFilePath);
scanAssort.setImagePath(filePathdir);
scanAssort.setCreateTime(new Date());
scanAssort.setScanPage(dto.getFileTitle() + ".jpg");
scanAssort.setScanPage(dto.getUploadFileName());
scanAssort.setSort(sort[0]);
scanAssort.setFileSource(2);
scanAssort.setFileStorageType(1);
@ -351,6 +360,7 @@ public class SyncBasicFileImpl implements ISyncBasicFileService {
tbasic.setArchiveFileStorageType(2);
tbasic.setCreateTime(new Date());
tbasic.setFileSource(2);
tbasic.setWardPalce(fileUploadJpgDto.getWardPalce());
return tbasic;
}

@ -50,7 +50,7 @@
dis_dept,dis_dept_name,main_diag_code,main_diag_name,
main_operate_code,main_operate_name,create_time,is_archive,
file_source,b_column5,b_column8,archive_file_storage_type,
scan_upload_state
scan_upload_state,ward_palce
)
values
<foreach collection="list" item="item" separator=",">
@ -60,7 +60,7 @@
#{item.disDept},#{item.disDeptName},#{item.mainDiagCode},#{item.mainDiagName},
#{item.mainOperateCode},#{item.mainOperateName},#{item.createTime},#{item.isArchive},
#{item.fileSource},#{item.bColumn5},#{item.bColumn8},#{item.archiveFileStorageType},
#{item.scanUploadState}
#{item.scanUploadState}, #{item.wardPalce}
)
</foreach>
</insert>
@ -72,7 +72,7 @@
</update>
<delete id="delTbasicByPatientId">
delete from docus_medicalrecord.t_basic where patient_id=#{patientId}
delete from docus_medicalrecord.t_basic where admiss_id=#{admissId}
</delete>
@ -165,7 +165,7 @@
</select>
<select id="getTbasicPatientId" resultType="java.lang.String">
select patient_id from t_basic where patient_id=#{patientId}
select patient_id from t_basic where admiss_id=#{admissId}
</select>
</mapper>

@ -90,7 +90,7 @@
</select>
<select id="getScanAssort" resultType="com.docus.demo.entity.ScanAssort">
SELECT id FROM docus_archivefile.t_scan_assort WHERE patient_id=#{patientId}
SELECT * FROM docus_archivefile.t_scan_assort WHERE patient_id=#{patientId}
</select>
</mapper>
Loading…
Cancel
Save