From 4be501a0960e412171008a588f830644eab55ee4 Mon Sep 17 00:00:00 2001 From: wang1007152140 <1007152140@qq.com> Date: Mon, 1 Feb 2021 09:11:40 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8B=89=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tall/src/main/resources/application.yml | 4 +- .../tcm/api/ConferenceRecordsController.java | 38 +++++++++ .../com/ccsens/tcm/api/PatientController.java | 23 ++++- .../com/ccsens/tcm/bean/dto/ConRecDto.java | 42 ++++++++++ .../com/ccsens/tcm/bean/dto/PatientDto.java | 35 ++++++++ .../java/com/ccsens/tcm/bean/vo/ConRecVo.java | 37 ++++++++ .../com/ccsens/tcm/bean/vo/PatientVo.java | 37 ++++++++ .../ccsens/tcm/persist/dao/PatientDao.java | 19 +++++ .../ccsens/tcm/service/IPatientService.java | 8 ++ .../ccsens/tcm/service/PatientService.java | 36 +++++++- .../main/resources/mapper_dao/PatientDao.xml | 84 +++++++++++++++++++ 11 files changed, 358 insertions(+), 5 deletions(-) create mode 100644 tcm/src/main/java/com/ccsens/tcm/api/ConferenceRecordsController.java create mode 100644 tcm/src/main/java/com/ccsens/tcm/bean/dto/ConRecDto.java create mode 100644 tcm/src/main/java/com/ccsens/tcm/bean/vo/ConRecVo.java create mode 100644 tcm/src/main/java/com/ccsens/tcm/bean/vo/PatientVo.java create mode 100644 tcm/src/main/java/com/ccsens/tcm/persist/dao/PatientDao.java create mode 100644 tcm/src/main/resources/mapper_dao/PatientDao.xml diff --git a/tall/src/main/resources/application.yml b/tall/src/main/resources/application.yml index ebc544af..b5408a3a 100644 --- a/tall/src/main/resources/application.yml +++ b/tall/src/main/resources/application.yml @@ -1,5 +1,5 @@ spring: profiles: - active: test - include: util-test,common + active: dev + include: util-dev,common diff --git a/tcm/src/main/java/com/ccsens/tcm/api/ConferenceRecordsController.java b/tcm/src/main/java/com/ccsens/tcm/api/ConferenceRecordsController.java new file mode 100644 index 00000000..512fd40a --- /dev/null +++ b/tcm/src/main/java/com/ccsens/tcm/api/ConferenceRecordsController.java @@ -0,0 +1,38 @@ +package com.ccsens.tcm.api; + +import com.ccsens.cloudutil.annotation.MustLogin; +import com.ccsens.tcm.bean.dto.ConRecDto; +import com.ccsens.tcm.bean.vo.ConRecVo; +import com.ccsens.tcm.service.IPatientService; +import com.ccsens.util.JsonResponse; +import com.ccsens.util.bean.dto.QueryDto; +import com.github.pagehelper.PageInfo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import io.swagger.annotations.ApiParam; +import lombok.extern.slf4j.Slf4j; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.RestController; + +/** + * @author wang + */ +@Api(tags = "会议记录相关接口") +@RestController +@RequestMapping("/conferenceRecords") +@Slf4j +public class ConferenceRecordsController { + private IPatientService patientService; +// @MustLogin + @ApiOperation(value = "查询会议记录", notes = "w:根据会议记录查询条件查询会议记录") + @RequestMapping(value = "/selConRec", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse> selConRec(@ApiParam @Validated @RequestBody QueryDto params) { + log.info("查询会议记录相关信息:{}",params); + PageInfo selConRecVoPageInfo= patientService.selConRec(params.getParam(),0L); + log.info("查询会议记录基本信息成功"); + return JsonResponse.newInstance().ok(selConRecVoPageInfo); + } +} diff --git a/tcm/src/main/java/com/ccsens/tcm/api/PatientController.java b/tcm/src/main/java/com/ccsens/tcm/api/PatientController.java index 30ffed45..caa439d5 100644 --- a/tcm/src/main/java/com/ccsens/tcm/api/PatientController.java +++ b/tcm/src/main/java/com/ccsens/tcm/api/PatientController.java @@ -2,9 +2,11 @@ package com.ccsens.tcm.api; import com.ccsens.cloudutil.annotation.MustLogin; import com.ccsens.tcm.bean.dto.PatientDto; +import com.ccsens.tcm.bean.vo.PatientVo; import com.ccsens.tcm.service.IPatientService; import com.ccsens.util.JsonResponse; import com.ccsens.util.bean.dto.QueryDto; +import com.github.pagehelper.PageInfo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; @@ -15,15 +17,16 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; +import java.util.List; + /** * @author wang */ -@Api(tags = "患者相关接口", description = "患者相关接口") +@Api(tags = "患者相关接口") @RestController @RequestMapping("/patient") @Slf4j public class PatientController { -// disease_time private IPatientService patientService; @@ -45,5 +48,21 @@ public class PatientController { log.info("添加患者病例信息成功"); return JsonResponse.newInstance().ok(); } + @ApiOperation(value = "通过搜索条件查询患者病例的信息", notes = "w:通过搜索条件查询患者病例的信息") + @RequestMapping(value = "/selPatientMesList", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse> selPatientMesList(@ApiParam @Validated @RequestBody QueryDto params) { + log.info("添加患者病例信息:{}",params); + PageInfo selPatientListPageInfo= patientService.selPatientMesList(params.getParam(),0L); + log.info("添加患者病例信息成功"); + return JsonResponse.newInstance().ok(selPatientListPageInfo); + } + @ApiOperation(value = "通过查询搜索条件", notes = "w:通过查询搜索条件") + @RequestMapping(value = "/selSearchCriteriaList", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse> selSearchCriteriaList() { +// List selSearchCriteriaList= patientService.selSearchCriteriaList(params.getParam(),0L); +// log.info("通过查询搜索条件"); +// return JsonResponse.newInstance().ok(selSearchCriteriaList); + return null; + } } diff --git a/tcm/src/main/java/com/ccsens/tcm/bean/dto/ConRecDto.java b/tcm/src/main/java/com/ccsens/tcm/bean/dto/ConRecDto.java new file mode 100644 index 00000000..e0fbb0ab --- /dev/null +++ b/tcm/src/main/java/com/ccsens/tcm/bean/dto/ConRecDto.java @@ -0,0 +1,42 @@ +package com.ccsens.tcm.bean.dto; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.Max; +import javax.validation.constraints.Min; +import java.util.Date; + +/** + * @author wang + */ +@Data +public class ConRecDto { + @Data + @ApiModel("查询会议记录搜索条件") + public static class SelConRecDto { + @ApiModelProperty("会议id") + private Long id; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @ApiModelProperty("包含在某时间之后的会议记录") + private Date startTime; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @ApiModelProperty("包含在某时间之前的会议记录") + private Date endTime; + @ApiModelProperty("包含某地点的会议记录") + private String place=""; + @ApiModelProperty("包含某主持人的会议记录") + private String host=""; + @ApiModelProperty("包含某研讨内容的会议记录") + private String discussionContent=""; + @Min(1) + @ApiModelProperty("当前页") + private Integer pageNum=1; + @Min(1) + @Max(20) + @ApiModelProperty("每页数量") + private Integer pageSize=10; + } +} diff --git a/tcm/src/main/java/com/ccsens/tcm/bean/dto/PatientDto.java b/tcm/src/main/java/com/ccsens/tcm/bean/dto/PatientDto.java index 1c46cc04..78a1c1a5 100644 --- a/tcm/src/main/java/com/ccsens/tcm/bean/dto/PatientDto.java +++ b/tcm/src/main/java/com/ccsens/tcm/bean/dto/PatientDto.java @@ -6,6 +6,8 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; import sun.awt.ConstrainableGraphics; +import javax.validation.constraints.Max; +import javax.validation.constraints.Min; import javax.validation.constraints.NotNull; import java.util.Date; import java.util.List; @@ -50,4 +52,37 @@ public class PatientDto { @ApiModelProperty("诊断时间") private Date timeSlot=new Date(System.currentTimeMillis()); } + @Data + @ApiModel("查询患者的搜索条件集合") + public static class SelPatlenConditionList{ + @ApiModelProperty("搜索条件集合,不包含时间格式的条件") + private List conditionList; + @ApiModelProperty("搜索条件集合,是包含时间格式的条件") + private List conditionListDate; + @Min(1) + @ApiModelProperty("当前页") + private Integer pageNum=1; + @Min(1) + @Max(20) + @ApiModelProperty("每页数量") + private Integer pageSize=10; + } + @Data + @ApiModel("查询患者的搜索条件详情") + public static class Condition{ + @ApiModelProperty("题目id,该项必须填写") + private Long testQuestionsId; + @ApiModelProperty("搜索内容") + private String contents=""; + } + @Data + @ApiModel("查询患者的搜索条件详情-传入的id不能空,其他参数一定要传入,且不能为空") + public static class ConditionDate{ + @ApiModelProperty("题目id,该项必须填写") + private Long testQuestionsId; + @ApiModelProperty("开始时间,必须填") + private String startTime=""; + @ApiModelProperty("结束时间,必须填") + private String endTime=""; + } } diff --git a/tcm/src/main/java/com/ccsens/tcm/bean/vo/ConRecVo.java b/tcm/src/main/java/com/ccsens/tcm/bean/vo/ConRecVo.java new file mode 100644 index 00000000..310de240 --- /dev/null +++ b/tcm/src/main/java/com/ccsens/tcm/bean/vo/ConRecVo.java @@ -0,0 +1,37 @@ +package com.ccsens.tcm.bean.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +/** + * @author wang + */ +@Data +public class ConRecVo { + @Data + @ApiModel("查询会议记录搜索条件") + public static class SelConRecVo { + @ApiModelProperty("会议记录id") + private Long id; + @ApiModelProperty("会议开始时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date startTime; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @ApiModelProperty("会议结束时间") + private Date endTime; + @ApiModelProperty("会议地点") + private String place; + @ApiModelProperty("主持人") + private String host; + @ApiModelProperty("参会人") + private String participants; + @ApiModelProperty("研讨内容") + private String discussionContent; + @ApiModelProperty("会议纪要") + private String meetingMinutes; + } +} diff --git a/tcm/src/main/java/com/ccsens/tcm/bean/vo/PatientVo.java b/tcm/src/main/java/com/ccsens/tcm/bean/vo/PatientVo.java new file mode 100644 index 00000000..be70637e --- /dev/null +++ b/tcm/src/main/java/com/ccsens/tcm/bean/vo/PatientVo.java @@ -0,0 +1,37 @@ +package com.ccsens.tcm.bean.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; +import java.util.Date; +import java.util.List; + +/** + * @author wang + */ +@Data +public class PatientVo { + @Data + @ApiModel("经过搜索条件查询的患者基本信息") + public static class SelPatient { + @ApiModelProperty("患者id") + private Long id; + @ApiModelProperty("住院号") + private String hospitalization; + @ApiModelProperty("对照组id") + private Integer inpatientId; + @ApiModelProperty("录入状态:0:新建 1:数据搜集中 2数据搜集完成 3数据搜集超时 4:废弃") + private Byte inputStatus; + @ApiModelProperty("医院id") + private Integer hospitalId; + } + @Data + @ApiModel("经过搜索条件查询的患者集合") + public static class SelPatientList{ + @ApiModelProperty("患者相关信息") + private List selPatients; + } +} diff --git a/tcm/src/main/java/com/ccsens/tcm/persist/dao/PatientDao.java b/tcm/src/main/java/com/ccsens/tcm/persist/dao/PatientDao.java new file mode 100644 index 00000000..906055a5 --- /dev/null +++ b/tcm/src/main/java/com/ccsens/tcm/persist/dao/PatientDao.java @@ -0,0 +1,19 @@ +package com.ccsens.tcm.persist.dao; + +import com.ccsens.tcm.bean.dto.ConRecDto; +import com.ccsens.tcm.bean.dto.PatientDto; +import com.ccsens.tcm.bean.vo.ConRecVo; +import com.ccsens.tcm.bean.vo.PatientVo; +import org.springframework.stereotype.Repository; + +import java.util.List; + +/** + * @author wang + */ +@Repository +public interface PatientDao { + List selConRec(ConRecDto.SelConRecDto param); + + List selPatientMesList(PatientDto.SelPatlenConditionList param); +} diff --git a/tcm/src/main/java/com/ccsens/tcm/service/IPatientService.java b/tcm/src/main/java/com/ccsens/tcm/service/IPatientService.java index 867d03cb..18df6b99 100644 --- a/tcm/src/main/java/com/ccsens/tcm/service/IPatientService.java +++ b/tcm/src/main/java/com/ccsens/tcm/service/IPatientService.java @@ -1,6 +1,10 @@ package com.ccsens.tcm.service; +import com.ccsens.tcm.bean.dto.ConRecDto; import com.ccsens.tcm.bean.dto.PatientDto; +import com.ccsens.tcm.bean.vo.ConRecVo; +import com.ccsens.tcm.bean.vo.PatientVo; +import com.github.pagehelper.PageInfo; /** * @author wang @@ -9,4 +13,8 @@ public interface IPatientService { void savePatient(PatientDto.SavePatient param, Long userId); void saveCaseMes(PatientDto.saveCaseMes param, Long userId); + + PageInfo selConRec(ConRecDto.SelConRecDto param, Long userId); + + PageInfo selPatientMesList(PatientDto.SelPatlenConditionList param, long l); } diff --git a/tcm/src/main/java/com/ccsens/tcm/service/PatientService.java b/tcm/src/main/java/com/ccsens/tcm/service/PatientService.java index 25c1f50c..6b6aa58a 100644 --- a/tcm/src/main/java/com/ccsens/tcm/service/PatientService.java +++ b/tcm/src/main/java/com/ccsens/tcm/service/PatientService.java @@ -1,15 +1,21 @@ package com.ccsens.tcm.service; import cn.hutool.core.lang.Snowflake; +import com.ccsens.tcm.bean.dto.ConRecDto; import com.ccsens.tcm.bean.dto.PatientDto; import com.ccsens.tcm.bean.po.PatientInformation; import com.ccsens.tcm.bean.po.PatientRecord; import com.ccsens.tcm.bean.po.PatientRecordExample; import com.ccsens.tcm.bean.po.ReportCode; +import com.ccsens.tcm.bean.vo.ConRecVo; +import com.ccsens.tcm.bean.vo.PatientVo; +import com.ccsens.tcm.persist.dao.PatientDao; import com.ccsens.tcm.persist.mapper.PatientInformationMapper; import com.ccsens.tcm.persist.mapper.PatientRecordMapper; import com.ccsens.tcm.persist.mapper.ReportCodeMapper; import com.ccsens.util.RedisUtil; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; @@ -36,7 +42,8 @@ public class PatientService implements IPatientService { private ReportCodeMapper reportCodeMapper; @Resource private PatientRecordMapper patientRecordMapper; - + @Resource + private PatientDao patientDao; @Override public void savePatient(PatientDto.SavePatient param, Long userId) { @@ -133,6 +140,33 @@ public class PatientService implements IPatientService { } } + @Override + public PageInfo selConRec(ConRecDto.SelConRecDto param, Long userId) { + if(param.getPlace()!=null){ + param.setPlace(param.getPlace().trim()); + } + if(param.getHost()!=null){ + param.setHost(param.getHost().trim()); + } + if(param.getHost()!=null){ + param.setHost(param.getHost().trim()); + } + if(param.getDiscussionContent()!=null){ + param.setDiscussionContent(param.getDiscussionContent().trim()); + } + + PageHelper.startPage(param.getPageNum(),param.getPageNum()); + List list= patientDao.selConRec(param); + return new PageInfo<>(list); + } + + @Override + public PageInfo selPatientMesList(PatientDto.SelPatlenConditionList param, long l) { + PageHelper.startPage(param.getPageNum(),param.getPageSize()); + List selPatientLists=patientDao.selPatientMesList(param); + return new PageInfo<>(selPatientLists); + } + /** * 换算时间差 ,返回两个时间 之间差几天,要是小于1天,按照1的算,要是大于1的话,小于2的话,说的是秒啊。按照2的算,进一法啊 * @param bigDate 大时间 diff --git a/tcm/src/main/resources/mapper_dao/PatientDao.xml b/tcm/src/main/resources/mapper_dao/PatientDao.xml new file mode 100644 index 00000000..fbb95515 --- /dev/null +++ b/tcm/src/main/resources/mapper_dao/PatientDao.xml @@ -0,0 +1,84 @@ + + + + + + + \ No newline at end of file