diff --git a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/PatientexamlistController.java b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/PatientexamlistController.java index b50077fbc..732be71d9 100644 --- a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/PatientexamlistController.java +++ b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/controller/admin/patientexamlist/PatientexamlistController.java @@ -8,6 +8,7 @@ import cn.iocoder.yudao.module.system.dal.dataobject.org.OrgUnitDO; import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO; import cn.iocoder.yudao.module.system.service.org.OrgUnitService; import cn.iocoder.yudao.module.system.service.user.AdminUserService; +import cn.iocoder.yudao.module.tblist.dal.dataobject.withdrawrecord.WithdrawRecordDO; import cn.iocoder.yudao.module.tblist.dal.mysql.patientexamlist.PatientexamlistMapper; import cn.iocoder.yudao.module.tblist.service.patientexamlist.org.OrgService; @@ -133,6 +134,13 @@ public class PatientexamlistController { return success(BeanUtils.toBean(patientexamlist, PatientexamlistRespVO.class)); } + @PostMapping("/withdraw") + @Operation(summary = "打回PACS检查数据") + public CommonResult withdrawPatientExam(@Valid @RequestBody WithdrawRecordDO withdrawRecordDO) { + patientexamlistService.withdrawPatientExam(withdrawRecordDO); + return success(true); + } + @GetMapping("/getplexamiddata") @Operation(summary = "根据examid和机构获得PACS检查列表数据") public CommonResult getkeyexamidPatientexamlist(@RequestParam("examid") String examid, @RequestParam("orgSN") String orgSN) { diff --git a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/dal/dataobject/withdrawrecord/WithdrawRecordDO.java b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/dal/dataobject/withdrawrecord/WithdrawRecordDO.java new file mode 100644 index 000000000..94614d390 --- /dev/null +++ b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/dal/dataobject/withdrawrecord/WithdrawRecordDO.java @@ -0,0 +1,47 @@ +package cn.iocoder.yudao.module.tblist.dal.dataobject.withdrawrecord; + +import lombok.*; +import java.time.LocalDateTime; +import com.baomidou.mybatisplus.annotation.*; + +/** + * 打回记录 DO + * + * @author ywp + */ +@TableName("tb_withdraw_record") +@KeySequence("tb_withdraw_record_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class WithdrawRecordDO { + + /** + * 主键 + */ + @TableId + private Integer id; + /** + * 检查ID:体检编号、住院号、门诊号等 + */ + private String examId; + /** + * 登记单号 + */ + private String regId; + /** + * 操作人员 + */ + private String operator; + /** + * 打回日期 + */ + private LocalDateTime withdrawDate; + /** + * 打回原因 + */ + private String withdrawReason; + +} \ No newline at end of file diff --git a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/dal/mysql/withdrawrecord/WithdrawRecordMapper.java b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/dal/mysql/withdrawrecord/WithdrawRecordMapper.java new file mode 100644 index 000000000..c5a8f42c1 --- /dev/null +++ b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/dal/mysql/withdrawrecord/WithdrawRecordMapper.java @@ -0,0 +1,19 @@ +package cn.iocoder.yudao.module.tblist.dal.mysql.withdrawrecord; + +import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; +import cn.iocoder.yudao.module.tblist.dal.dataobject.withdrawrecord.WithdrawRecordDO; +import com.baomidou.mybatisplus.annotation.InterceptorIgnore; +import org.apache.ibatis.annotations.Mapper; + + +/** + * 打回记录 Mapper + * + * @author ywp + */ +@Mapper +@InterceptorIgnore(tenantLine = "true") +public interface WithdrawRecordMapper extends BaseMapperX { + + +} \ No newline at end of file diff --git a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/service/patientexamlist/PatientexamlistService.java b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/service/patientexamlist/PatientexamlistService.java index 7bb2df7ed..f58a25735 100644 --- a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/service/patientexamlist/PatientexamlistService.java +++ b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/service/patientexamlist/PatientexamlistService.java @@ -5,6 +5,7 @@ import java.util.*; import cn.iocoder.yudao.module.tblist.controller.admin.patientexamlist.vo.*; import cn.iocoder.yudao.module.tblist.dal.dataobject.patientexamlist.PatientexamlistDO; import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.module.tblist.dal.dataobject.withdrawrecord.WithdrawRecordDO; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.IService; @@ -165,4 +166,10 @@ public interface PatientexamlistService extends IService { * 生成pdf进行上传(us报告) */ Map generatePdf_us(JSONObject params); + + /** + * 打回检查(超声、影像) + * @param withdrawRecordDO + */ + void withdrawPatientExam(WithdrawRecordDO withdrawRecordDO); } \ No newline at end of file diff --git a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/service/patientexamlist/PatientexamlistServiceImpl.java b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/service/patientexamlist/PatientexamlistServiceImpl.java index ad338c496..5d12b2308 100644 --- a/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/service/patientexamlist/PatientexamlistServiceImpl.java +++ b/yudao-module-tblist/yudao-module-tblist-biz/src/main/java/cn/iocoder/yudao/module/tblist/service/patientexamlist/PatientexamlistServiceImpl.java @@ -1,16 +1,20 @@ package cn.iocoder.yudao.module.tblist.service.patientexamlist; import cn.iocoder.yudao.framework.common.exception.ErrorCode; +import cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils; import cn.iocoder.yudao.module.infra.dal.dataobject.config.ConfigDO; import cn.iocoder.yudao.module.infra.service.config.ConfigService; import cn.iocoder.yudao.module.system.dal.dataobject.dicomworklist.*; import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO; import cn.iocoder.yudao.module.system.dal.mysql.dicomworklist.DicomworklistMapper; import cn.iocoder.yudao.module.system.service.user.AdminUserService; +import cn.iocoder.yudao.module.tblist.dal.dataobject.withdrawrecord.WithdrawRecordDO; import cn.iocoder.yudao.module.tblist.dal.mysql.ecganalysisparas.EcganalysisparasMapper; import cn.iocoder.yudao.module.tblist.dal.mysql.positivestatistics.PositivestatisticsMapper; +import cn.iocoder.yudao.module.tblist.dal.mysql.withdrawrecord.WithdrawRecordMapper; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.itextpdf.text.Image; import com.itextpdf.text.Rectangle; @@ -24,6 +28,7 @@ import org.apache.http.ssl.SSLContextBuilder; import org.apache.http.util.EntityUtils; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.annotation.Validated; import java.io.ByteArrayOutputStream; @@ -75,6 +80,9 @@ public class PatientexamlistServiceImpl extends ServiceImpl() + .eq(PatientexamlistDO::getExamId,withdrawRecordDO.getExamId()) + .set(PatientexamlistDO::getReportstatus,"已分析") + .set(PatientexamlistDO::getReviewStatus,"0") + .set(PatientexamlistDO::getPdfurl,""); + patientexamlistMapper.update(updateWrapper); + + String nickname = SecurityFrameworkUtils.getLoginUserNickname(); + withdrawRecordDO.setOperator(nickname).setWithdrawDate(LocalDateTime.now()); + + // 插入数据(暂时先不记录打回原因) + withdrawRecordMapper.insert(withdrawRecordDO); + + } + public Image getAcroField_Image(String url) { Image out = null; try { diff --git a/yudao-module-ultrasoniccom/yudao-module-ultrasoniccom-biz/src/main/java/cn/iocoder/yudao/module/ultrasoniccom/controller/admin/ultrasonic/ultrasonicController.java b/yudao-module-ultrasoniccom/yudao-module-ultrasoniccom-biz/src/main/java/cn/iocoder/yudao/module/ultrasoniccom/controller/admin/ultrasonic/ultrasonicController.java index b46ee7866..851bf733e 100644 --- a/yudao-module-ultrasoniccom/yudao-module-ultrasoniccom-biz/src/main/java/cn/iocoder/yudao/module/ultrasoniccom/controller/admin/ultrasonic/ultrasonicController.java +++ b/yudao-module-ultrasoniccom/yudao-module-ultrasoniccom-biz/src/main/java/cn/iocoder/yudao/module/ultrasoniccom/controller/admin/ultrasonic/ultrasonicController.java @@ -341,7 +341,7 @@ public class ultrasonicController { if (!studyInsta.isEmpty() && !orgID.isEmpty()) { OrgUnitDO unitDO = Service.getonekey(orgID); - if (!unitDO.getDcmprefix().isEmpty()) { + if ( unitDO.getDcmprefix() != null && !unitDO.getDcmprefix().isEmpty()) { Dcmprefix = unitDO.getDcmprefix(); } // 先查询基本信息 一个患者基本信息就一条