市一同步联众数据

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

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

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

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

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

@ -90,7 +90,7 @@
</select> </select>
<select id="getScanAssort" resultType="com.docus.demo.entity.ScanAssort"> <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> </select>
</mapper> </mapper>
Loading…
Cancel
Save