From f1d5738028d31e80a5c350c8f9af74031295cd1c Mon Sep 17 00:00:00 2001 From: wang1007152140 <1007152140@qq.com> Date: Fri, 19 Feb 2021 16:55:27 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=9F=E7=89=A9=E6=A0=B7=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../tcm/api/BiologicalSamplesController.java | 53 +++++++++++++++++++ .../tcm/bean/dto/BiologicalSamplesDto.java | 43 +++++++++++++++ .../tcm/bean/vo/BiologicalSamplesVo.java | 21 ++++++++ .../ccsens/tcm/persist/dao/PatientDao.java | 4 ++ .../ccsens/tcm/service/IPatientService.java | 10 ++-- .../ccsens/tcm/service/PatientService.java | 29 +++++++--- .../main/resources/mapper_dao/PatientDao.xml | 19 +++++++ 7 files changed, 167 insertions(+), 12 deletions(-) create mode 100644 tcm/src/main/java/com/ccsens/tcm/api/BiologicalSamplesController.java create mode 100644 tcm/src/main/java/com/ccsens/tcm/bean/dto/BiologicalSamplesDto.java create mode 100644 tcm/src/main/java/com/ccsens/tcm/bean/vo/BiologicalSamplesVo.java diff --git a/tcm/src/main/java/com/ccsens/tcm/api/BiologicalSamplesController.java b/tcm/src/main/java/com/ccsens/tcm/api/BiologicalSamplesController.java new file mode 100644 index 00000000..d5ff581d --- /dev/null +++ b/tcm/src/main/java/com/ccsens/tcm/api/BiologicalSamplesController.java @@ -0,0 +1,53 @@ +package com.ccsens.tcm.api; + +import com.ccsens.cloudutil.annotation.MustLogin; +import com.ccsens.tcm.bean.dto.BiologicalSamplesDto; +import com.ccsens.tcm.bean.dto.StatisticDto; +import com.ccsens.tcm.bean.vo.BiologicalSamplesVo; +import com.ccsens.tcm.bean.vo.StatisticVo; +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; + +import javax.annotation.Resource; + +/** + * @author wang + */ +@Api(tags = "生物样本相关接口") +@RestController +@RequestMapping("/biologicalSamples") +@Slf4j +public class BiologicalSamplesController { + @Resource + private IPatientService patientService; + + @MustLogin + @ApiOperation(value = "添加生物样本", notes = "w:添加生物样本") + @RequestMapping(value = "/addBiologicalSamples", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse addBiologicalSamples(@ApiParam @Validated @RequestBody QueryDto params) { + log.info("添加生物样本:{}",params); + patientService.addBiologicalSamples(params.getParam(),params.getUserId()); + log.info("添加生物样本完成"); + return JsonResponse.newInstance().ok(); + } + @MustLogin + @ApiOperation(value = "搜索生物样本", notes = "w:搜索生物样本") + @RequestMapping(value = "/selBiologicalSamples", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse> selBiologicalSamples(@ApiParam @Validated @RequestBody QueryDto params) { + log.info("查询生物样本参数:{}",params); + PageInfo selBiologPageInfo= patientService.selBiologicalSamples(params.getParam(),params.getUserId()); + log.info("查询生物样本完成"); + return JsonResponse.newInstance().ok(selBiologPageInfo); + } +} diff --git a/tcm/src/main/java/com/ccsens/tcm/bean/dto/BiologicalSamplesDto.java b/tcm/src/main/java/com/ccsens/tcm/bean/dto/BiologicalSamplesDto.java new file mode 100644 index 00000000..0280e481 --- /dev/null +++ b/tcm/src/main/java/com/ccsens/tcm/bean/dto/BiologicalSamplesDto.java @@ -0,0 +1,43 @@ +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; + +@Data +public class BiologicalSamplesDto { + @Data + @ApiModel("添加生物样本") + public static class AddBiolog { + @ApiModelProperty("样本类型 0:抗血凝10ml 1:促凝血5ml 2:晨尿10ml 3:24小时尿10ml") + private Byte sampleType; + @ApiModelProperty("患者id") + private Long patientInformationId; + @ApiModelProperty("采集时间") + private Integer collectTime; + } + @Data + @ApiModel("查询生物样本") + public static class SelBiolog { + @ApiModelProperty("医院id") + private Long hospitalId; + @ApiModelProperty("样本类型 0:抗血凝10ml 1:促凝血5ml 2:晨尿10ml 3:24小时尿10ml") + private Byte sampleType; + @ApiModelProperty("患者住院号") + private String hospitalization; + @ApiModelProperty("采集时间") + private Integer collectTime; + @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/vo/BiologicalSamplesVo.java b/tcm/src/main/java/com/ccsens/tcm/bean/vo/BiologicalSamplesVo.java new file mode 100644 index 00000000..6796e4d0 --- /dev/null +++ b/tcm/src/main/java/com/ccsens/tcm/bean/vo/BiologicalSamplesVo.java @@ -0,0 +1,21 @@ +package com.ccsens.tcm.bean.vo; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class BiologicalSamplesVo { + @Data + @ApiModel("添加生物样本") + public static class selBiolog { + @ApiModelProperty("医院名称") + private String name; + @ApiModelProperty("患者住院号") + private String hospitalization; + @ApiModelProperty("样本类型 0:抗血凝10ml 1:促凝血5ml 2:晨尿10ml 3:24小时尿10ml") + private Byte sampleType; + @ApiModelProperty("采集时间") + private Integer collectTime; + } +} 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 index 8e121b69..f004bce2 100644 --- a/tcm/src/main/java/com/ccsens/tcm/persist/dao/PatientDao.java +++ b/tcm/src/main/java/com/ccsens/tcm/persist/dao/PatientDao.java @@ -1,8 +1,10 @@ package com.ccsens.tcm.persist.dao; +import com.ccsens.tcm.bean.dto.BiologicalSamplesDto; import com.ccsens.tcm.bean.dto.ConRecDto; import com.ccsens.tcm.bean.dto.PatientDto; import com.ccsens.tcm.bean.dto.StatisticDto; +import com.ccsens.tcm.bean.vo.BiologicalSamplesVo; import com.ccsens.tcm.bean.vo.ConRecVo; import com.ccsens.tcm.bean.vo.PatientVo; import com.ccsens.tcm.bean.vo.StatisticVo; @@ -56,4 +58,6 @@ public interface PatientDao { * @return 返回完成情况按医生分组 */ List completeDoctor(@Param("hospitalId")Long hospitalId); + + List selBiologicalSamples(BiologicalSamplesDto.SelBiolog 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 04ab68ee..c8dfc689 100644 --- a/tcm/src/main/java/com/ccsens/tcm/service/IPatientService.java +++ b/tcm/src/main/java/com/ccsens/tcm/service/IPatientService.java @@ -1,12 +1,10 @@ package com.ccsens.tcm.service; +import com.ccsens.tcm.bean.dto.BiologicalSamplesDto; import com.ccsens.tcm.bean.dto.ConRecDto; import com.ccsens.tcm.bean.dto.PatientDto; import com.ccsens.tcm.bean.dto.StatisticDto; -import com.ccsens.tcm.bean.vo.ConRecVo; -import com.ccsens.tcm.bean.vo.PatientVo; -import com.ccsens.tcm.bean.vo.QuestionVo; -import com.ccsens.tcm.bean.vo.StatisticVo; +import com.ccsens.tcm.bean.vo.*; import com.github.pagehelper.PageInfo; import java.util.List; @@ -49,4 +47,8 @@ public interface IPatientService { * @return 返回每个医生的完成情况 */ List completeDoctor(StatisticDto.CompleteDoctor param); + + void addBiologicalSamples(BiologicalSamplesDto.AddBiolog param, Long userId); + + PageInfo selBiologicalSamples(BiologicalSamplesDto.SelBiolog param, Long userId); } 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 c4d1b24c..abba80cb 100644 --- a/tcm/src/main/java/com/ccsens/tcm/service/PatientService.java +++ b/tcm/src/main/java/com/ccsens/tcm/service/PatientService.java @@ -2,19 +2,14 @@ package com.ccsens.tcm.service; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.lang.Snowflake; +import com.ccsens.tcm.bean.dto.BiologicalSamplesDto; import com.ccsens.tcm.bean.dto.ConRecDto; import com.ccsens.tcm.bean.dto.PatientDto; import com.ccsens.tcm.bean.dto.StatisticDto; import com.ccsens.tcm.bean.po.*; -import com.ccsens.tcm.bean.vo.ConRecVo; -import com.ccsens.tcm.bean.vo.PatientVo; -import com.ccsens.tcm.bean.vo.QuestionVo; -import com.ccsens.tcm.bean.vo.StatisticVo; +import com.ccsens.tcm.bean.vo.*; import com.ccsens.tcm.persist.dao.PatientDao; -import com.ccsens.tcm.persist.mapper.InpatientMapper; -import com.ccsens.tcm.persist.mapper.PatientInformationMapper; -import com.ccsens.tcm.persist.mapper.PatientRecordMapper; -import com.ccsens.tcm.persist.mapper.ReportCodeMapper; +import com.ccsens.tcm.persist.mapper.*; import com.ccsens.tcm.uitl.Constant; import com.ccsens.util.CodeEnum; import com.ccsens.util.RedisUtil; @@ -53,6 +48,8 @@ public class PatientService implements IPatientService { @Resource private PatientDao patientDao; @Resource + private BiologicalSamplesMapper biologicalSamplesMapper; + @Resource private InpatientMapper inpatientMapper; @Value("${day.one}") public int one; @@ -301,4 +298,20 @@ public class PatientService implements IPatientService { public List completeDoctor(StatisticDto.CompleteDoctor param) { return patientDao.completeDoctor(param.getHospitalId()); } + + @Override + public void addBiologicalSamples(BiologicalSamplesDto.AddBiolog param, Long userId) { + BiologicalSamples biologicalSamples=new BiologicalSamples(); + biologicalSamples.setUserId(userId); + biologicalSamples.setId(snowflake.nextId()); + BeanUtils.copyProperties(param,biologicalSamples); + biologicalSamplesMapper.insertSelective(biologicalSamples); + } + + @Override + public PageInfo selBiologicalSamples(BiologicalSamplesDto.SelBiolog param, Long userId) { + PageHelper.startPage(param.getPageNum(),param.getPageSize()); + List selBiologs= patientDao.selBiologicalSamples(param); + return new PageInfo<>(selBiologs); + } } diff --git a/tcm/src/main/resources/mapper_dao/PatientDao.xml b/tcm/src/main/resources/mapper_dao/PatientDao.xml index 70aa1fca..64ade68f 100644 --- a/tcm/src/main/resources/mapper_dao/PatientDao.xml +++ b/tcm/src/main/resources/mapper_dao/PatientDao.xml @@ -323,4 +323,23 @@ GROUP BY t.user_id + \ No newline at end of file