增加设备相关业务表查询方法 分检时候增加插入业务表
Some checks are pending
Java CI with Maven / build (11) (push) Waiting to run
Java CI with Maven / build (17) (push) Waiting to run
Java CI with Maven / build (8) (push) Waiting to run
yudao-ui-admin CI / build (14.x) (push) Waiting to run
yudao-ui-admin CI / build (16.x) (push) Waiting to run

This commit is contained in:
lxd 2024-08-13 17:18:04 +08:00
parent a4470879c6
commit fb5108c8a2
18 changed files with 1610 additions and 72 deletions

View File

@ -5,11 +5,15 @@ import cn.iocoder.yudao.module.applyregistration.controller.admin.applyform.devi
import cn.iocoder.yudao.module.applyregistration.controller.admin.applyform.devicevo.deviceupVO;
import cn.iocoder.yudao.module.applyregistration.dal.device.DeviceDO;
import cn.iocoder.yudao.module.applyregistration.service.applyform.device.DeviceService;
import cn.iocoder.yudao.module.system.controller.admin.dicomworklist.vo.DicomWorklistVO;
import cn.iocoder.yudao.module.system.dal.dataobject.apiconfig.ApiconfigDO;
import cn.iocoder.yudao.module.system.dal.dataobject.dicomworklist.DicomworklistDO;
import cn.iocoder.yudao.module.system.dal.dataobject.user.AdminUserDO;
import cn.iocoder.yudao.module.system.service.apiconfig.ApiconfigService;
import cn.iocoder.yudao.module.system.service.dicomworklist.DicomworklistService;
import cn.iocoder.yudao.module.system.service.user.AdminUserService;
import com.mzt.logapi.starter.annotation.LogRecord;
import org.jetbrains.annotations.NotNull;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.*;
@ -30,11 +34,13 @@ import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.*;
import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId;
@ -64,6 +70,8 @@ public class ApplyformController {
@Resource
private AdminUserService userService;
@Resource
private DicomworklistService dicomworklistService;
@PostMapping("/create")
@Operation(summary = "创建申请登记记录")
@ -104,7 +112,7 @@ public class ApplyformController {
public CommonResult<PageResult<ApplyformRespVO>> getApplyformPage(@Valid ApplyformPageReqVO pageReqVO) {
//获取当前登陆用户
AdminUserDO user = userService.getUser(getLoginUserId());
pageReqVO.setOrgId(user.getOrgId()) ;
pageReqVO.setOrgId(user.getOrgId());
PageResult<ApplyformDO> pageResult = applyformService.getApplyformPage(pageReqVO);
return success(BeanUtils.toBean(pageResult, ApplyformRespVO.class));
}
@ -114,12 +122,12 @@ public class ApplyformController {
@PreAuthorize("@ss.hasPermission('applyregistration:applyform:export')")
@ApiAccessLog(operateType = EXPORT)
public void exportApplyformExcel(@Valid ApplyformPageReqVO pageReqVO,
HttpServletResponse response) throws IOException {
HttpServletResponse response) throws IOException {
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
List<ApplyformDO> list = applyformService.getApplyformPage(pageReqVO).getList();
// 导出 Excel
ExcelUtils.write(response, "申请登记记录.xls", "数据", ApplyformRespVO.class,
BeanUtils.toBean(list, ApplyformRespVO.class));
BeanUtils.toBean(list, ApplyformRespVO.class));
}
@GetMapping("/getdevice")
@ -134,37 +142,69 @@ public class ApplyformController {
@PostMapping("/updateapplyform")
@Operation(summary = "分检更新")
@Parameter(name = "id", description = "ID", required = true, example = "1024")
@Parameter(name = "device", description = "设备", required = true,example = "12121")
@Parameter(name = "device", description = "设备", required = true, example = "12121")
@PreAuthorize("@ss.hasPermission('applyregistration:applyform:update')")
@LogRecord(type = "申请登记", subType = "分检", bizNo ="{{#deviceVO.getID}}" , success = "分检ID为{{#deviceVO.getID}}的患者")
@LogRecord(type = "申请登记", subType = "分检", bizNo = "{{#deviceVO.getID}}", success = "分检ID为{{#deviceVO.getID}}的患者")
public CommonResult<Boolean> updateFJApplyform(@Valid @RequestBody deviceupVO deviceVO) {
if (deviceVO==null)
{
if (deviceVO == null) {
log.error("分检更新方法参数为空");
return success(false);
}
String device= deviceVO.getDevice();
if (!device.isEmpty())
{
LocalDateTime dateTime= LocalDateTime.parse(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")),
DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
String[] result = device.split("\\|");
ApplyformSaveReqVO updateReqVO=new ApplyformSaveReqVO();
updateReqVO.setId(deviceVO.getID());
updateReqVO.setDeviceName(result[0]) ;
updateReqVO.setDeviceId(result[1]);
updateReqVO.setSortDate(dateTime);
updateReqVO.setExamStatus("未检查");
updateReqVO.setSortDoctor(deviceVO.getSortDoctor());//分检医生
applyformService.updateApplyform(updateReqVO);
return success(true);
}
else
{
return success(false);
}
//获取当前登陆用户
AdminUserDO user = userService.getUser(getLoginUserId());
String device = deviceVO.getDevice();
if (!device.isEmpty()) {
LocalDateTime dateTime = LocalDateTime.parse(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")),
DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
String[] result = device.split("\\|");
ApplyformSaveReqVO updateReqVO = new ApplyformSaveReqVO();
updateReqVO.setId(deviceVO.getID());
updateReqVO.setDeviceName(result[0]);
updateReqVO.setDeviceId(result[1]);
updateReqVO.setSortDate(dateTime);
updateReqVO.setExamStatus("未检查");
updateReqVO.setSortDoctor(deviceVO.getSortDoctor());//分检医生
applyformService.updateApplyform(updateReqVO);
// 批量更新worklist数据
if (deviceVO.getWorklist() == null || deviceVO.getWorklist().length == 0) {
return success(false);
} else {
List<DicomworklistDO> worklightDOS = getDicomworklistDOS(deviceVO, user);
dicomworklistService.insertbatch(worklightDOS);
}
return success(true);
} else {
return success(false);
}
}
//处理数据
private static @NotNull List<DicomworklistDO> getDicomworklistDOS(deviceupVO deviceVO, AdminUserDO user) {
List<DicomworklistDO> dicomworklistDOS = new ArrayList<>();
for (DicomWorklistVO item : deviceVO.getWorklist()) {
// 处理每个元素
DicomworklistDO dicomworklistDO = new DicomworklistDO();
dicomworklistDO.setAccessionN(item.getAccessionN());
dicomworklistDO.setPatientID(item.getPatientID());
dicomworklistDO.setPatientNam(item.getPatientNam());
dicomworklistDO.setPatientBir(item.getPatientBir());
dicomworklistDO.setPatientSex(item.getPatientSex());
dicomworklistDO.setStudyInsta(item.getStudyInsta());
dicomworklistDO.setModality(item.getModality());
dicomworklistDO.setScheduledA(item.getScheduledA());
dicomworklistDO.setStartDate(item.getStartDate());
dicomworklistDO.setStartTime(item.getStartTime());
dicomworklistDO.setOrgId(user.getOrgId());
dicomworklistDO.setRegistrant(user.getUsername());
dicomworklistDOS.add(dicomworklistDO);
}
return dicomworklistDOS;
}
@ -172,10 +212,10 @@ public class ApplyformController {
@Operation(summary = "申请单作废")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('applyregistration:applyform:delete')")
@LogRecord(type = "申请登记", subType = "作废", bizNo ="{{#id}}" , success = "作废ID为{{#id}}的患者")
@LogRecord(type = "申请登记", subType = "作废", bizNo = "{{#id}}", success = "作废ID为{{#id}}的患者")
public CommonResult<Boolean> cancelApplyform(@RequestParam("id") String id) {
ApplyformSaveReqVO updateReqVO=new ApplyformSaveReqVO();
ApplyformSaveReqVO updateReqVO = new ApplyformSaveReqVO();
updateReqVO.setId(id);
updateReqVO.setExamStatus("已放弃");
applyformService.updateApplyform(updateReqVO);
@ -195,21 +235,22 @@ public class ApplyformController {
@Operation(summary = "批量分检更新")
@Parameter(name = "id", description = "机构ID", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('applyregistration:applyform:update')")
@LogRecord(type = "申请登记", subType = "批量分检", bizNo ="888" , success = "批量分检操作")
public CommonResult<Boolean> batchupdateFJApplyform(@RequestBody List<deviceupVO> deviceVOList) {
@LogRecord(type = "申请登记", subType = "批量分检", bizNo = "888", success = "批量分检操作")
public CommonResult<Boolean> batchupdateFJApplyform(@RequestBody List<deviceupVO> deviceVOList) {
if (!deviceVOList.isEmpty())
{
if (!deviceVOList.isEmpty()) {
//最终提交的数据
List<ApplyformDO> doList=new ArrayList<>();
List<ApplyformDO> doList = new ArrayList<>();
List<DicomworklistDO> dicomworklistDOS = new ArrayList<>();
//获取当前登陆用户
AdminUserDO user = userService.getUser(getLoginUserId());
//当前时间
LocalDateTime dateTime= LocalDateTime.parse(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")),
LocalDateTime dateTime = LocalDateTime.parse(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")),
DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
//循环传递进来的参数 赋值
for (deviceupVO s : deviceVOList) {
//新增对象
ApplyformDO applyformDO=new ApplyformDO();
ApplyformDO applyformDO = new ApplyformDO();
applyformDO.setId(s.getID());
String[] result = s.getDevice().split("\\|");
applyformDO.setDeviceName(result[0]);
@ -218,19 +259,32 @@ public class ApplyformController {
applyformDO.setExamStatus("未检查");
applyformDO.setSortDoctor(s.getSortDoctor());//分检医生
doList.add(applyformDO);
for (DicomWorklistVO item : s.getWorklist()) {
// 处理每个元素
DicomworklistDO dicomworklistDO = new DicomworklistDO();
dicomworklistDO.setAccessionN(item.getAccessionN());
dicomworklistDO.setPatientID(item.getPatientID());
dicomworklistDO.setPatientNam(item.getPatientNam());
dicomworklistDO.setPatientBir(item.getPatientBir());
dicomworklistDO.setPatientSex(item.getPatientSex());
dicomworklistDO.setStudyInsta(item.getStudyInsta());
dicomworklistDO.setModality(item.getModality());
dicomworklistDO.setScheduledA(item.getScheduledA());
dicomworklistDO.setStartDate(item.getStartDate());
dicomworklistDO.setStartTime(item.getStartTime());
dicomworklistDO.setOrgId(user.getOrgId());
dicomworklistDO.setRegistrant(user.getUsername());
dicomworklistDOS.add(dicomworklistDO);
}
}
if (!doList.isEmpty())
{
boolean bol= applyformService.updateBatchById(doList);
if (!doList.isEmpty() && !dicomworklistDOS.isEmpty()) {
boolean bol = applyformService.updateBatchById(doList);
dicomworklistService.insertbatch(dicomworklistDOS);
return success(bol);
}
else
{
} else {
return success(false);
}
}
else
{
} else {
log.error("批量分检更新方法参数为空");
return success(false);
@ -241,35 +295,29 @@ public class ApplyformController {
@GetMapping("/SyncDb")
@PreAuthorize("@ss.hasPermission('applyregistration:applyform:query')")
public CommonResult<Boolean> SyncDb(@RequestParam("AppCode") String AppCode) throws SQLException, ClassNotFoundException {
public CommonResult<Boolean> SyncDb(@RequestParam("AppCode") String AppCode) throws SQLException, ClassNotFoundException {
//先从数据表中那对应的配置
ApiconfigDO apiconfigDO= apiconfigService.getApiCodeconfig(AppCode);
if(apiconfigDO!=null)
{
String sql=apiconfigDO.getApiUrl();
switch ( apiconfigDO.getDatabaseType())
{
case "mysql":
DatabaseUtils.setConnectionProperties(DatabaseUtils.DatabaseType.MYSQL,apiconfigDO.getDatabaseIP(),apiconfigDO.getDatabaseUserName(),apiconfigDO.getDatabasePwd(),apiconfigDO.getRemark(),apiconfigDO.getDatabasePort());
DatabaseUtils.getConnection(DatabaseUtils.DatabaseType.MYSQL);
List<Map<String, Object>> executeQuery = DatabaseUtils.executeQuery(DatabaseUtils.DatabaseType.MYSQL, sql);
break;
case "sqlserver":
DatabaseUtils.setConnectionProperties(DatabaseUtils.DatabaseType.SQLSERVER,apiconfigDO.getDatabaseIP(),apiconfigDO.getDatabaseUserName(),apiconfigDO.getDatabasePwd(),apiconfigDO.getRemark(),apiconfigDO.getRemark());
DatabaseUtils.getConnection(DatabaseUtils.DatabaseType.SQLSERVER);
break;
case "oracle":
DatabaseUtils.setConnectionProperties(DatabaseUtils.DatabaseType.ORACLE,apiconfigDO.getDatabaseIP(),apiconfigDO.getDatabaseUserName(),apiconfigDO.getDatabasePwd(),apiconfigDO.getRemark(),apiconfigDO.getRemark());
DatabaseUtils.getConnection(DatabaseUtils.DatabaseType.ORACLE);
break;
}
}
ApiconfigDO apiconfigDO = apiconfigService.getApiCodeconfig(AppCode);
if (apiconfigDO != null) {
String sql = apiconfigDO.getApiUrl();
switch (apiconfigDO.getDatabaseType()) {
case "mysql":
DatabaseUtils.setConnectionProperties(DatabaseUtils.DatabaseType.MYSQL, apiconfigDO.getDatabaseIP(), apiconfigDO.getDatabaseUserName(), apiconfigDO.getDatabasePwd(), apiconfigDO.getRemark(), apiconfigDO.getDatabasePort());
DatabaseUtils.getConnection(DatabaseUtils.DatabaseType.MYSQL);
List<Map<String, Object>> executeQuery = DatabaseUtils.executeQuery(DatabaseUtils.DatabaseType.MYSQL, sql);
break;
case "sqlserver":
DatabaseUtils.setConnectionProperties(DatabaseUtils.DatabaseType.SQLSERVER, apiconfigDO.getDatabaseIP(), apiconfigDO.getDatabaseUserName(), apiconfigDO.getDatabasePwd(), apiconfigDO.getRemark(), apiconfigDO.getRemark());
DatabaseUtils.getConnection(DatabaseUtils.DatabaseType.SQLSERVER);
break;
case "oracle":
DatabaseUtils.setConnectionProperties(DatabaseUtils.DatabaseType.ORACLE, apiconfigDO.getDatabaseIP(), apiconfigDO.getDatabaseUserName(), apiconfigDO.getDatabasePwd(), apiconfigDO.getRemark(), apiconfigDO.getRemark());
DatabaseUtils.getConnection(DatabaseUtils.DatabaseType.ORACLE);
break;
}
}
return success(true);

View File

@ -73,4 +73,11 @@ public class DeviceVO {
*/
@Schema(description = "设备归属科室代码")
private String departmentCode;
/**
* Scheduled Station AE Title:客户端的AETitle:设备操作台电脑的 AETitle
*/
@Schema(description = "AETitle")
private String ScheduledAET;
}

View File

@ -1,5 +1,6 @@
package cn.iocoder.yudao.module.applyregistration.controller.admin.applyform.devicevo;
import cn.iocoder.yudao.module.system.controller.admin.dicomworklist.vo.DicomWorklistVO;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.ToString;
@ -17,4 +18,6 @@ public class deviceupVO {
@Schema(description = "分检医生")
private String sortDoctor;
private DicomWorklistVO[] worklist;
}

View File

@ -126,4 +126,10 @@ public class DeviceDO {
*/
@TableField("deleteDate")
private LocalDateTime deleteDate;
/**
*
*/
@TableField("ScheduledAET")
private String ScheduledAET;
}

View File

@ -0,0 +1,99 @@
package cn.iocoder.yudao.module.system.controller.admin.dicomworklist;
import org.springframework.web.bind.annotation.*;
import org.springframework.validation.annotation.Validated;
import org.springframework.security.access.prepost.PreAuthorize;
import io.swagger.v3.oas.annotations.tags.Tag;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.Operation;
import java.util.*;
import java.io.IOException;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.*;
import cn.iocoder.yudao.module.system.controller.admin.dicomworklist.vo.*;
import cn.iocoder.yudao.module.system.dal.dataobject.dicomworklist.DicomworklistDO;
import cn.iocoder.yudao.module.system.service.dicomworklist.DicomworklistService;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;
@Tag(name = "管理后台 - 分检业务表")
@RestController
@RequestMapping("/system/dicomworklist")
@Validated
public class DicomworklistController {
@Resource
private DicomworklistService dicomworklistService;
@PostMapping("/create")
@Operation(summary = "创建分检业务表")
@PreAuthorize("@ss.hasPermission('system:dicomworklist:create')")
public CommonResult<String> createDicomworklist(@Valid @RequestBody DicomworklistSaveReqVO createReqVO) {
return success(dicomworklistService.createDicomworklist(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新分检业务表")
@PreAuthorize("@ss.hasPermission('system:dicomworklist:update')")
public CommonResult<Boolean> updateDicomworklist(@Valid @RequestBody DicomworklistSaveReqVO updateReqVO) {
dicomworklistService.updateDicomworklist(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除分检业务表")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('system:dicomworklist:delete')")
public CommonResult<Boolean> deleteDicomworklist(@RequestParam("id") String id) {
dicomworklistService.deleteDicomworklist(id);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得分检业务表")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('system:dicomworklist:query')")
public CommonResult<DicomworklistRespVO> getDicomworklist(@RequestParam("id") String id) {
DicomworklistDO dicomworklist = dicomworklistService.getDicomworklist(id);
return success(BeanUtils.toBean(dicomworklist, DicomworklistRespVO.class));
}
@GetMapping("/page")
@Operation(summary = "获得分检业务表分页")
@PreAuthorize("@ss.hasPermission('system:dicomworklist:query')")
public CommonResult<PageResult<DicomworklistRespVO>> getDicomworklistPage(@Valid DicomworklistPageReqVO pageReqVO) {
PageResult<DicomworklistDO> pageResult = dicomworklistService.getDicomworklistPage(pageReqVO);
return success(BeanUtils.toBean(pageResult, DicomworklistRespVO.class));
}
@GetMapping("/export-excel")
@Operation(summary = "导出分检业务表 Excel")
@PreAuthorize("@ss.hasPermission('system:dicomworklist:export')")
@ApiAccessLog(operateType = EXPORT)
public void exportDicomworklistExcel(@Valid DicomworklistPageReqVO pageReqVO,
HttpServletResponse response) throws IOException {
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
List<DicomworklistDO> list = dicomworklistService.getDicomworklistPage(pageReqVO).getList();
// 导出 Excel
ExcelUtils.write(response, "分检业务表.xls", "数据", DicomworklistRespVO.class,
BeanUtils.toBean(list, DicomworklistRespVO.class));
}
}

View File

@ -0,0 +1,50 @@
package cn.iocoder.yudao.module.system.controller.admin.dicomworklist.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Data
public class DicomWorklistVO {
@Schema(description = "唯一的号")
private String AccessionN;
@Schema(description = "患者ID", example = "1358")
private String PatientID;
@Schema(description = "姓名")
private String PatientNam;
@Schema(description = "日期")
private String PatientBir;
@Schema(description = "性别")
private String PatientSex;
@Schema(description = "1")
private String StudyInsta;
@Schema(description = "1")
private String Modality;
@Schema(description = "1")
private String ScheduledA;
@Schema(description = "1")
private String StartDate;
@Schema(description = "1")
private String StartTime;
@Schema(description = "1", example = "16409")
private String orgId;
@Schema(description = "登记医生")
private String registrant;
}

View File

@ -0,0 +1,104 @@
package cn.iocoder.yudao.module.system.controller.admin.dicomworklist.vo;
import lombok.*;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
@Schema(description = "管理后台 - 分检业务表分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class DicomworklistPageReqVO extends PageParam {
@Schema(description = "唯一的号")
private String accessionN;
@Schema(description = "患者ID", example = "1358")
private String patientID;
@Schema(description = "姓名")
private String patientNam;
@Schema(description = "日期")
private String patientBir;
@Schema(description = "性别")
private String patientSex;
@Schema(description = "唯一号")
private String medicalAle;
@Schema(description = "1")
private String contrastAl;
@Schema(description = "1")
private String studyInsta;
@Schema(description = "1")
private String reqPhysici;
@Schema(description = "1")
private String reqProcDes;
@Schema(description = "1")
private String modality;
@Schema(description = "1")
private String reqContras;
@Schema(description = "1")
private String scheduledA;
@Schema(description = "1")
private String startDate;
@Schema(description = "1")
private String startTime;
@Schema(description = "1")
private String perfPhysic;
@Schema(description = "1")
private String schedPSDes;
@Schema(description = "1", example = "2228")
private String schedPSID;
@Schema(description = "1")
private String schedStati;
@Schema(description = "1")
private String schedPSLoc;
@Schema(description = "1")
private String preMedicat;
@Schema(description = "1")
private String schedPSCom;
@Schema(description = "1", example = "27197")
private String reqProcID;
@Schema(description = "1")
private String reqProcPri;
@Schema(description = "1")
private Integer accessTime;
@Schema(description = "1")
private Integer qTimeStamp;
@Schema(description = "1")
private Integer qFlags;
@Schema(description = "1")
private String qSpare;
@Schema(description = "1", example = "16409")
private String orgId;
@Schema(description = "登记医生")
private String registrant;
}

View File

@ -0,0 +1,134 @@
package cn.iocoder.yudao.module.system.controller.admin.dicomworklist.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
import java.util.*;
import com.alibaba.excel.annotation.*;
@Schema(description = "管理后台 - 分检业务表 Response VO")
@Data
@ExcelIgnoreUnannotated
public class DicomworklistRespVO {
@Schema(description = "唯一的号")
@ExcelProperty("唯一的号")
private String accessionN;
@Schema(description = "患者ID", example = "1358")
@ExcelProperty("患者ID")
private String patientID;
@Schema(description = "姓名")
@ExcelProperty("姓名")
private String patientNam;
@Schema(description = "日期")
@ExcelProperty("日期")
private String patientBir;
@Schema(description = "性别")
@ExcelProperty("性别")
private String patientSex;
@Schema(description = "唯一号")
@ExcelProperty("唯一号")
private String medicalAle;
@Schema(description = "1")
@ExcelProperty("1")
private String contrastAl;
@Schema(description = "1")
@ExcelProperty("1")
private String studyInsta;
@Schema(description = "1")
@ExcelProperty("1")
private String reqPhysici;
@Schema(description = "1")
@ExcelProperty("1")
private String reqProcDes;
@Schema(description = "1")
@ExcelProperty("1")
private String modality;
@Schema(description = "1")
@ExcelProperty("1")
private String reqContras;
@Schema(description = "1")
@ExcelProperty("1")
private String scheduledA;
@Schema(description = "1")
@ExcelProperty("1")
private String startDate;
@Schema(description = "1")
@ExcelProperty("1")
private String startTime;
@Schema(description = "1")
@ExcelProperty("1")
private String perfPhysic;
@Schema(description = "1")
@ExcelProperty("1")
private String schedPSDes;
@Schema(description = "1", example = "2228")
@ExcelProperty("1")
private String schedPSID;
@Schema(description = "1")
@ExcelProperty("1")
private String schedStati;
@Schema(description = "1")
@ExcelProperty("1")
private String schedPSLoc;
@Schema(description = "1")
@ExcelProperty("1")
private String preMedicat;
@Schema(description = "1")
@ExcelProperty("1")
private String schedPSCom;
@Schema(description = "1", example = "27197")
@ExcelProperty("1")
private String reqProcID;
@Schema(description = "1")
@ExcelProperty("1")
private String reqProcPri;
@Schema(description = "1")
@ExcelProperty("1")
private Integer accessTime;
@Schema(description = "1")
@ExcelProperty("1")
private Integer qTimeStamp;
@Schema(description = "1")
@ExcelProperty("1")
private Integer qFlags;
@Schema(description = "1")
@ExcelProperty("1")
private String qSpare;
@Schema(description = "1", example = "16409")
@ExcelProperty("1")
private String orgId;
@Schema(description = "登记医生")
@ExcelProperty("登记医生")
private String registrant;
}

View File

@ -0,0 +1,101 @@
package cn.iocoder.yudao.module.system.controller.admin.dicomworklist.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.util.*;
@Schema(description = "管理后台 - 分检业务表新增/修改 Request VO")
@Data
public class DicomworklistSaveReqVO {
@Schema(description = "唯一的号")
private String accessionN;
@Schema(description = "患者ID", example = "1358")
private String patientID;
@Schema(description = "姓名")
private String patientNam;
@Schema(description = "日期")
private String patientBir;
@Schema(description = "性别")
private String patientSex;
@Schema(description = "唯一号")
private String medicalAle;
@Schema(description = "1")
private String contrastAl;
@Schema(description = "1")
private String studyInsta;
@Schema(description = "1")
private String reqPhysici;
@Schema(description = "1")
private String reqProcDes;
@Schema(description = "1")
private String modality;
@Schema(description = "1")
private String reqContras;
@Schema(description = "1")
private String scheduledA;
@Schema(description = "1")
private String startDate;
@Schema(description = "1")
private String startTime;
@Schema(description = "1")
private String perfPhysic;
@Schema(description = "1")
private String schedPSDes;
@Schema(description = "1", example = "2228")
private String schedPSID;
@Schema(description = "1")
private String schedStati;
@Schema(description = "1")
private String schedPSLoc;
@Schema(description = "1")
private String preMedicat;
@Schema(description = "1")
private String schedPSCom;
@Schema(description = "1", example = "27197")
private String reqProcID;
@Schema(description = "1")
private String reqProcPri;
@Schema(description = "1")
private Integer accessTime;
@Schema(description = "1")
private Integer qTimeStamp;
@Schema(description = "1")
private Integer qFlags;
@Schema(description = "1")
private String qSpare;
@Schema(description = "1", example = "16409")
private String orgId;
@Schema(description = "登记医生")
private String registrant;
}

View File

@ -0,0 +1,181 @@
package cn.iocoder.yudao.module.system.dal.dataobject.dicomworklist;
import com.baomidou.mybatisplus.annotation.*;
import lombok.*;
@TableName("dicomimages")
@KeySequence("dicomimages_seq") // 用于 OraclePostgreSQLKingbaseDB2H2 数据库的主键自增如果是 MySQL 等数据库可不写
@Data
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class DicomImagesDO {
/**
*
*/
@TableId(value ="SOPInstanc", type = IdType.INPUT)
private String SOPInstanc;
/**
*
*/
@TableField("SOPClassUI")
private String SOPClassUI;
/**
*
*/
@TableField("ImageNumbe")
private String ImageNumbe;
/**
*
*/
@TableField("ImageDate")
private String ImageDate;
/**
*
*/
@TableField("ImageTime")
private String ImageTime;
/**
*
*/
@TableField("EchoNumber")
private String EchoNumber;
/**
*
*/
@TableField("NumberOfFr")
private String NumberOfFr;
/**
*
*/
@TableField("AcqDate")
private String AcqDate;
/**
*
*/
@TableField("AcqTime")
private String AcqTime;
/**
*
*/
@TableField("ReceivingC")
private String ReceivingC;
/**
*
*/
@TableField("AcqNumber")
private String AcqNumber;
/**
*
*/
@TableField("SliceLocat")
private String SliceLocat;
/**
*
*/
@TableField("SamplesPer")
private String SamplesPer;
/**
*
*/
@TableField("PhotoMetri")
private String PhotoMetri;
/**
*
*/
@TableField("QRows")
private String QRows;
/**
*
*/
@TableField("QColumns")
private String QColumns;
/**
*
*/
@TableField("BitsStored")
private String BitsStored;
/**
*
*/
@TableField("ImageType")
private String ImageType;
/**
*
*/
@TableField("ImageID")
private String ImageID;
/**
*
*/
@TableField("ImagePat")
private String ImagePat;
/**
*
*/
@TableField("SeriesInst")
private String SeriesInst;
/**
*
*/
@TableField("AccessTime")
private int AccessTime;
/**
*
*/
@TableField("qTimeStamp")
private int qTimeStamp;
/**
*
*/
@TableField("qFlags")
private int qFlags;
/**
*
*/
@TableField("qSpare")
private String qSpare;
/**
*
*/
@TableField("ObjectFile")
private String ObjectFile;
/**
*
*/
@TableField("DeviceName")
private String DeviceName;
/**
*
*/
@TableField("orgId")
private String orgId;
}

View File

@ -0,0 +1,142 @@
package cn.iocoder.yudao.module.system.dal.dataobject.dicomworklist;
import com.baomidou.mybatisplus.annotation.*;
import lombok.*;
@TableName("dicomseries")
@KeySequence("dicomseries_seq") // 用于 OraclePostgreSQLKingbaseDB2H2 数据库的主键自增如果是 MySQL 等数据库可不写
@Data
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class DicomSeriesDO {
/**
*
*/
@TableId(value ="SeriesInst", type = IdType.INPUT)
private String SeriesInst;
/**
*
*/
@TableField("SeriesNumb")
private String SeriesNumb;
/**
*
*/
@TableField("SeriesDate")
private String SeriesDate;
/**
*
*/
@TableField("SeriesTime")
private String SeriesTime;
/**
*
*/
@TableField("SeriesDesc")
private String SeriesDesc;
/**
*
*/
@TableField("Modality")
private String Modality;
/**
*
*/
@TableField("PatientPos")
private String PatientPos;
/**
*
*/
@TableField("ContrastBo")
private String ContrastBo;
/**
*
*/
@TableField("Manufactur")
private String Manufactur;
/**
*
*/
@TableField("ModelName")
private String ModelName;
/**
*
*/
@TableField("BodyPartEx")
private String BodyPartEx;
/**
*
*/
@TableField("ProtocolNa")
private String ProtocolNa;
/**
*
*/
@TableField("StationNam")
private String StationNam;
/**
*
*/
@TableField("Institutio")
private String Institutio;
/**
*
*/
@TableField("FrameOfRef")
private String FrameOfRef;
/**
*
*/
@TableField("SeriesPat")
private String SeriesPat;
/**
*
*/
@TableField("StudyInsta")
private String StudyInsta;
/**
*
*/
@TableField("AccessTime")
private int AccessTime;
/**
*
*/
@TableField("qTimeStamp")
private int qTimeStamp;
/**
*
*/
@TableField("qFlags")
private int qFlags;
/**
*
*/
@TableField("qSpare")
private String qSpare;
/**
*
*/
@TableField("orgId")
private String orgId;
}

View File

@ -0,0 +1,74 @@
package cn.iocoder.yudao.module.system.dal.dataobject.dicomworklist;
import com.baomidou.mybatisplus.annotation.*;
import lombok.*;
@TableName("dicompatients")
@KeySequence("dicompatients_seq") // 用于 OraclePostgreSQLKingbaseDB2H2 数据库的主键自增如果是 MySQL 等数据库可不写
@Data
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class DicompatientDO {
/**
*
*/
@TableId(value ="PatientID", type = IdType.INPUT)
private String PatientID;
/**
*
*/
@TableField("PatientNam")
private String PatientNam;
/**
*
*/
@TableField("PatientBir")
private String PatientBir;
/**
*
*/
@TableField("PatientSex")
private String PatientSex;
/**
*
*/
@TableField("AccessTime")
private String AccessTime;
/**
*
*/
@TableField("qTimeStamp")
private String qTimeStamp;
/**
*
*/
@TableField("qFlags")
private String qFlags;
/**
*
*/
@TableField("qSpare")
private String qSpare;
/**
*
*/
@TableField("orgId")
private String orgId;
/**
*是否与云平台同步1为已同步
*/
@TableField("dataSync")
private String dataSync;
}

View File

@ -0,0 +1,128 @@
package cn.iocoder.yudao.module.system.dal.dataobject.dicomworklist;
import com.baomidou.mybatisplus.annotation.*;
import lombok.*;
@TableName("dicomstudies")
@KeySequence("dicomstudies_seq") // 用于 OraclePostgreSQLKingbaseDB2H2 数据库的主键自增如果是 MySQL 等数据库可不写
@Data
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class DicomstudiesDO {
/**
*
*/
@TableId(value ="StudyInsta", type = IdType.INPUT)
private String StudyInsta;
/**
*
*/
@TableField("StudyDate")
private String StudyDate;
/**
*
*/
@TableField("StudyTime")
private String StudyTime;
/**
*
*/
@TableField("StudyID")
private String StudyID;
/**
*
*/
@TableField("StudyDescr")
private String StudyDescr;
/**
*
*/
@TableField("AccessionN")
private String AccessionN;
/**
*
*/
@TableField("ReferPhysi")
private String ReferPhysi;
/**
*
*/
@TableField("PatientsAg")
private String PatientsAg;
/**
*
*/
@TableField("PatientsWe")
private String PatientsWe;
/**
*
*/
@TableField("StudyModal")
private String StudyModal;
/**
*
*/
@TableField("PatientNam")
private String PatientNam;
/**
*
*/
@TableField("PatientBir")
private String PatientBir;
/**
*
*/
@TableField("PatientSex")
private String PatientSex;
/**
*
*/
@TableField("PatientID")
private String PatientID;
/**
*
*/
@TableField("AccessTime")
private int AccessTime;
/**
*
*/
@TableField("qTimeStamp")
private int qTimeStamp;
/**
*
*/
@TableField("qFlags")
private int qFlags;
/**
*
*/
@TableField("qSpare")
private String qSpare;
/**
*
*/
@TableField("orgId")
private String orgId;
}

View File

@ -0,0 +1,173 @@
package cn.iocoder.yudao.module.system.dal.dataobject.dicomworklist;
import lombok.*;
import java.util.*;
import com.baomidou.mybatisplus.annotation.*;
import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
/**
* 分检业务表 DO
*
* @author 李晓东
*/
@TableName("dicomworklist")
@KeySequence("dicomworklist_seq") // 用于 OraclePostgreSQLKingbaseDB2H2 数据库的主键自增如果是 MySQL 等数据库可不写
@Data
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class DicomworklistDO {
/**
* 唯一的号
*/
@TableId(value ="AccessionN", type = IdType.INPUT)
private String AccessionN;
/**
* 患者ID
*/
@TableField("PatientID")
private String PatientID;
/**
* 姓名
*/
@TableField("PatientNam")
private String PatientNam;
/**
* 日期
*/
@TableField("PatientBir")
private String PatientBir;
/**
* 性别
*/
@TableField("PatientSex")
private String PatientSex;
/**
* 唯一号
*/
@TableField("MedicalAle")
private String MedicalAle;
/**
* 1
*/
@TableField("ContrastAl")
private String ContrastAl;
/**
* 1
*/
@TableField("StudyInsta")
private String studyInsta;
/**
* 1
*/
@TableField("ReqPhysici")
private String reqPhysici;
/**
* 1
*/
@TableField("ReqProcDes")
private String reqProcDes;
/**
* 1
*/
@TableField("Modality")
private String modality;
/**
* 1
*/
@TableField("ReqContras")
private String reqContras;
/**
* 1
*/
@TableField("ScheduledA")
private String scheduledA;
/**
* 1
*/
@TableField("StartDate")
private String startDate;
/**
* 1
*/
@TableField("StartTime")
private String startTime;
/**
* 1
*/
@TableField("PerfPhysic")
private String perfPhysic;
/**
* 1
*/
@TableField("SchedPSDes")
private String schedPSDes;
/**
* 1
*/
@TableField("SchedPSID")
private String schedPSID;
/**
* 1
*/
@TableField("SchedStati")
private String schedStati;
/**
* 1
*/
@TableField("SchedPSLoc")
private String schedPSLoc;
/**
* 1
*/
@TableField("PreMedicat")
private String preMedicat;
/**
* 1
*/
@TableField("SchedPSCom")
private String schedPSCom;
/**
* 1
*/
@TableField("ReqProcID")
private String reqProcID;
/**
* 1
*/
@TableField("ReqProcPri")
private String reqProcPri;
/**
* 1
*/
@TableField("AccessTime")
private Integer accessTime;
/**
* 1
*/
@TableField("qTimeStamp")
private Integer qTimeStamp;
/**
* 1
*/
@TableField("qFlags")
private Integer qFlags;
/**
* 1
*/
@TableField("qSpare")
private String qSpare;
/**
* 1
*/
@TableField("orgId")
private String orgId;
/**
* 登记医生
*/
@TableField("registrant")
private String registrant;
}

View File

@ -0,0 +1,70 @@
package cn.iocoder.yudao.module.system.dal.mysql.dicomworklist;
import java.util.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX;
import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX;
import cn.iocoder.yudao.module.system.dal.dataobject.dicomworklist.*;
import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
import org.apache.ibatis.annotations.Mapper;
import cn.iocoder.yudao.module.system.controller.admin.dicomworklist.vo.*;
import org.apache.ibatis.annotations.Param;
/**
* 分检业务表 Mapper
*
* @author 李晓东
*/
@InterceptorIgnore(tenantLine = "true")
@Mapper
public interface DicomworklistMapper extends BaseMapperX<DicomworklistDO> {
default PageResult<DicomworklistDO> selectPage(DicomworklistPageReqVO reqVO) {
return selectPage(reqVO, new LambdaQueryWrapperX<DicomworklistDO>()
.eqIfPresent(DicomworklistDO::getAccessionN, reqVO.getAccessionN())
.eqIfPresent(DicomworklistDO::getPatientID, reqVO.getPatientID())
.eqIfPresent(DicomworklistDO::getPatientNam, reqVO.getPatientNam())
.eqIfPresent(DicomworklistDO::getPatientBir, reqVO.getPatientBir())
.eqIfPresent(DicomworklistDO::getPatientSex, reqVO.getPatientSex())
.eqIfPresent(DicomworklistDO::getMedicalAle, reqVO.getMedicalAle())
.eqIfPresent(DicomworklistDO::getContrastAl, reqVO.getContrastAl())
.eqIfPresent(DicomworklistDO::getStudyInsta, reqVO.getStudyInsta())
.eqIfPresent(DicomworklistDO::getReqPhysici, reqVO.getReqPhysici())
.eqIfPresent(DicomworklistDO::getReqProcDes, reqVO.getReqProcDes())
.eqIfPresent(DicomworklistDO::getModality, reqVO.getModality())
.eqIfPresent(DicomworklistDO::getReqContras, reqVO.getReqContras())
.eqIfPresent(DicomworklistDO::getScheduledA, reqVO.getScheduledA())
.eqIfPresent(DicomworklistDO::getPerfPhysic, reqVO.getPerfPhysic())
.eqIfPresent(DicomworklistDO::getSchedPSDes, reqVO.getSchedPSDes())
.eqIfPresent(DicomworklistDO::getSchedPSID, reqVO.getSchedPSID())
.eqIfPresent(DicomworklistDO::getSchedStati, reqVO.getSchedStati())
.eqIfPresent(DicomworklistDO::getSchedPSLoc, reqVO.getSchedPSLoc())
.eqIfPresent(DicomworklistDO::getPreMedicat, reqVO.getPreMedicat())
.eqIfPresent(DicomworklistDO::getSchedPSCom, reqVO.getSchedPSCom())
.eqIfPresent(DicomworklistDO::getReqProcID, reqVO.getReqProcID())
.eqIfPresent(DicomworklistDO::getReqProcPri, reqVO.getReqProcPri())
.eqIfPresent(DicomworklistDO::getQTimeStamp, reqVO.getQTimeStamp())
.eqIfPresent(DicomworklistDO::getQFlags, reqVO.getQFlags())
.eqIfPresent(DicomworklistDO::getQSpare, reqVO.getQSpare())
.eqIfPresent(DicomworklistDO::getOrgId, reqVO.getOrgId())
.eqIfPresent(DicomworklistDO::getRegistrant, reqVO.getRegistrant())
.orderByDesc(DicomworklistDO::getOrgId));
}
//根据用户ID 获取patient表数据 一个患者一条数据
DicompatientDO GetPatientIdData(@Param("patientId") String patientId, @Param("orgId") String orgId);
// 查询所有待同步的数据 主要给直接同步第三方数据使用
List<DicompatientDO> GetPatientData(@Param("orgId") String orgId);
// 根据ID查询DicomStudies表对应的数据
List<DicomstudiesDO> GetDicomStudiesData(@Param("patientId") String patientId, @Param("orgId") String orgId);
// 根据Studies的StudyInsta查询DicomSeries表对应的数据
List<DicomSeriesDO> GetDicomSeriesData(@Param("StudyInsta") String StudyInsta, @Param("orgId") String orgId);
// 根据Series的SeriesInst查询Dicomiamge表对应的数据
List<DicomImagesDO> GetDicomImageData(@Param("SeriesInst") String SeriesInst, @Param("orgId") String orgId);
}

View File

@ -0,0 +1,80 @@
package cn.iocoder.yudao.module.system.service.dicomworklist;
import java.util.*;
import cn.iocoder.yudao.module.system.controller.admin.dicomworklist.vo.*;
import cn.iocoder.yudao.module.system.dal.dataobject.dicomworklist.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import org.apache.ibatis.annotations.Param;
import javax.validation.Valid;
/**
* 分检业务表 Service 接口
*
* @author 李晓东
*/
public interface DicomworklistService {
/**
* 创建分检业务表
*
* @param createReqVO 创建信息
* @return 编号
*/
String createDicomworklist(@Valid DicomworklistSaveReqVO createReqVO);
/**
* 更新分检业务表
*
* @param updateReqVO 更新信息
*/
void updateDicomworklist(@Valid DicomworklistSaveReqVO updateReqVO);
/**
* 删除分检业务表
*
* @param id 编号
*/
void deleteDicomworklist(String id);
/**
* 获得分检业务表
*
* @param id 编号
* @return 分检业务表
*/
DicomworklistDO getDicomworklist(String id);
/**
* 获得分检业务表分页
*
* @param pageReqVO 分页查询
* @return 分检业务表分页
*/
PageResult<DicomworklistDO> getDicomworklistPage(DicomworklistPageReqVO pageReqVO);
// 批量插入worklist表数据
boolean insertbatch(List<DicomworklistDO> doList);
/**
* 根据用户ID 获取patient表数据 一个患者一条数据
*/
DicompatientDO GetPatientIdData(String patientId, String orgId);
/**
* 查询所有待同步的数据 主要给直接同步第三方数据使用
*/
List<DicompatientDO> GetPatientData(String orgId);
/**
* 根据ID查询DicomStudies表对应的数据
*/
List<DicomstudiesDO> GetDicomStudiesData(String patientId, String orgId);
/**
* 根据Studies的StudyInsta查询DicomSeries表对应的数据
*/
List<DicomSeriesDO> GetDicomSeriesData(String StudyInsta, String orgId);
/**
* 根据Series的SeriesInst查询Dicomiamge表对应的数据
*/
List<DicomImagesDO> GetDicomImageData(String SeriesInst, String orgId);
}

View File

@ -0,0 +1,106 @@
package cn.iocoder.yudao.module.system.service.dicomworklist;
import cn.iocoder.yudao.framework.common.exception.ErrorCode;
import cn.iocoder.yudao.module.system.dal.dataobject.dicomworklist.*;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import java.util.*;
import cn.iocoder.yudao.module.system.controller.admin.dicomworklist.vo.*;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
import cn.iocoder.yudao.module.system.dal.mysql.dicomworklist.DicomworklistMapper;
import javax.annotation.Resource;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
/**
* 分检业务表 Service 实现类
*
* @author 李晓东
*/
@Service
@Validated
public class DicomworklistServiceImpl implements DicomworklistService {
@Resource
private DicomworklistMapper dicomworklistMapper;
@Override
public String createDicomworklist(DicomworklistSaveReqVO createReqVO) {
// 插入
DicomworklistDO dicomworklist = BeanUtils.toBean(createReqVO, DicomworklistDO.class);
dicomworklistMapper.insert(dicomworklist);
// 返回
return dicomworklist.getAccessionN();
}
@Override
public void updateDicomworklist(DicomworklistSaveReqVO updateReqVO) {
// 更新
DicomworklistDO updateObj = BeanUtils.toBean(updateReqVO, DicomworklistDO.class);
dicomworklistMapper.updateById(updateObj);
}
@Override
public void deleteDicomworklist(String id) {
// 校验存在
validateDicomworklistExists(id);
// 删除
dicomworklistMapper.deleteById(id);
}
private void validateDicomworklistExists(String id) {
if (dicomworklistMapper.selectById(id) == null) {
throw exception(new ErrorCode(1,""));
}
}
@Override
public DicomworklistDO getDicomworklist(String id) {
return dicomworklistMapper.selectById(id);
}
@Override
public PageResult<DicomworklistDO> getDicomworklistPage(DicomworklistPageReqVO pageReqVO) {
return dicomworklistMapper.selectPage(pageReqVO);
}
@Override
public boolean insertbatch(List<DicomworklistDO> doList) {
boolean bol=false;
bol= dicomworklistMapper.insertBatch(doList);
return bol;
}
@Override
public DicompatientDO GetPatientIdData(String patientId, String orgId) {
return dicomworklistMapper.GetPatientIdData(patientId,orgId);
}
@Override
public List<DicompatientDO> GetPatientData(String orgId) {
return dicomworklistMapper.GetPatientData(orgId);
}
@Override
public List<DicomstudiesDO> GetDicomStudiesData(String patientId, String orgId) {
return dicomworklistMapper.GetDicomStudiesData(patientId,orgId);
}
@Override
public List<DicomSeriesDO> GetDicomSeriesData(String StudyInsta, String orgId) {
return dicomworklistMapper.GetDicomSeriesData(StudyInsta,orgId);
}
@Override
public List<DicomImagesDO> GetDicomImageData(String SeriesInst, String orgId) {
return dicomworklistMapper.GetDicomImageData(SeriesInst,orgId);
}
}

View File

@ -0,0 +1,32 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.iocoder.yudao.module.system.dal.mysql.dicomworklist.DicomworklistMapper">
<!--
一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
文档可见https://www.iocoder.cn/MyBatis/x-plugins/
-->
<select id="GetPatientIdData" resultType="cn.iocoder.yudao.module.system.dal.dataobject.dicomworklist.DicompatientDO">
select * from dicompatients where PatientID=#{patientId} and dataSync='0' and orgId=#{orgId}
</select>
<select id="GetPatientData" resultType="cn.iocoder.yudao.module.system.dal.dataobject.dicomworklist.DicompatientDO">
select * from dicompatients where dataSync='0' and orgId=#{orgId}
</select>
<select id="GetDicomStudiesData"
resultType="cn.iocoder.yudao.module.system.dal.dataobject.dicomworklist.DicomstudiesDO">
select * from dicomstudies where PatientID=#{patientId} and orgId=#{orgId}
</select>
<select id="GetDicomSeriesData"
resultType="cn.iocoder.yudao.module.system.dal.dataobject.dicomworklist.DicomSeriesDO">
select * from dicomseries where StudyInsta=#{StudyInsta} and orgId=${orgId}
</select>
<select id="GetDicomImageData"
resultType="cn.iocoder.yudao.module.system.dal.dataobject.dicomworklist.DicomImagesDO">
select * from dicomimages where SeriesInst=#{SeriesInst} and orgId=${orgId}
</select>
</mapper>