Browse Source

Merge branch 'pt' of dd.tall.wiki:ccsens_wiki/ccsenscloud into pt

recovery
zy_Java 4 years ago
parent
commit
9299ca622b
  1. 53
      tcm/src/main/java/com/ccsens/tcm/api/BiologicalSamplesController.java
  2. 41
      tcm/src/main/java/com/ccsens/tcm/api/HospatilController.java
  3. 46
      tcm/src/main/java/com/ccsens/tcm/bean/dto/BiologicalSamplesDto.java
  4. 12
      tcm/src/main/java/com/ccsens/tcm/bean/dto/HospatilDto.java
  5. 84
      tcm/src/main/java/com/ccsens/tcm/bean/po/Hospital.java
  6. 571
      tcm/src/main/java/com/ccsens/tcm/bean/po/HospitalExample.java
  7. 21
      tcm/src/main/java/com/ccsens/tcm/bean/vo/BiologicalSamplesVo.java
  8. 17
      tcm/src/main/java/com/ccsens/tcm/bean/vo/HospatilVo.java
  9. 4
      tcm/src/main/java/com/ccsens/tcm/persist/dao/PatientDao.java
  10. 30
      tcm/src/main/java/com/ccsens/tcm/persist/mapper/HospitalMapper.java
  11. 12
      tcm/src/main/java/com/ccsens/tcm/service/IPatientService.java
  12. 81
      tcm/src/main/java/com/ccsens/tcm/service/PatientService.java
  13. 9
      tcm/src/main/resources/application-dev.yml
  14. 9
      tcm/src/main/resources/application-prod.yml
  15. 9
      tcm/src/main/resources/application-test.yml
  16. 21
      tcm/src/main/resources/mapper_dao/PatientDao.xml
  17. 226
      tcm/src/main/resources/mapper_raw/HospitalMapper.xml
  18. 1
      util/src/main/java/com/ccsens/util/CodeEnum.java

53
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<BiologicalSamplesDto.AddBiolog> 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<PageInfo<BiologicalSamplesVo.selBiolog>> selBiologicalSamples(@ApiParam @Validated @RequestBody QueryDto<BiologicalSamplesDto.SelBiolog> params) {
log.info("查询生物样本参数:{}",params);
PageInfo<BiologicalSamplesVo.selBiolog> selBiologPageInfo= patientService.selBiologicalSamples(params.getParam(),params.getUserId());
log.info("查询生物样本完成");
return JsonResponse.newInstance().ok(selBiologPageInfo);
}
}

41
tcm/src/main/java/com/ccsens/tcm/api/HospatilController.java

@ -0,0 +1,41 @@
package com.ccsens.tcm.api;
import com.ccsens.cloudutil.annotation.MustLogin;
import com.ccsens.tcm.bean.dto.BiologicalSamplesDto;
import com.ccsens.tcm.bean.vo.HospatilVo;
import com.ccsens.tcm.service.IPatientService;
import com.ccsens.util.JsonResponse;
import com.ccsens.util.bean.dto.QueryDto;
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;
import java.util.List;
/**
* @author wang
*/
@Api(tags = "医院相关接口")
@RestController
@RequestMapping("/hospatil")
@Slf4j
public class HospatilController {
@Resource
private IPatientService patientService;
@MustLogin
@ApiOperation(value = "查询医院列表", notes = "w:医院列表查询")
@RequestMapping(value = "/selHospatil", method = RequestMethod.GET, produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<HospatilVo.SelHospatilVo>> selHospatil() {
//log.info("添加生物样本:{}",params);
List<HospatilVo.SelHospatilVo> selHospatilVos= patientService.selHospatil();
log.info("查询医院列表完成");
return JsonResponse.newInstance().ok(selHospatilVos);
}
}

46
tcm/src/main/java/com/ccsens/tcm/bean/dto/BiologicalSamplesDto.java

@ -0,0 +1,46 @@
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 javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;
@Data
public class BiologicalSamplesDto {
@Data
@ApiModel("添加生物样本-1007")
public static class AddBiolog {
@ApiModelProperty("王-样本类型 0:抗血凝10ml 1:促凝血5ml 2:晨尿10ml 3:24小时尿10ml")
private Byte sampleType;
@NotBlank
@ApiModelProperty("住院号")
private String hospitalization;
@ApiModelProperty("采集时间")
private Integer collectTime;
}
@Data
@ApiModel("查询生物样本-1007")
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;
}
}

12
tcm/src/main/java/com/ccsens/tcm/bean/dto/HospatilDto.java

@ -0,0 +1,12 @@
package com.ccsens.tcm.bean.dto;
import io.swagger.annotations.ApiModel;
import lombok.Data;
/**
* @author wang
*/
@Data
public class HospatilDto {
}

84
tcm/src/main/java/com/ccsens/tcm/bean/po/Hospital.java

@ -0,0 +1,84 @@
package com.ccsens.tcm.bean.po;
import java.io.Serializable;
import java.util.Date;
public class Hospital implements Serializable {
private Long id;
private String name;
private Long operator;
private Date createdAt;
private Date updatedAt;
private Byte recStatus;
private static final long serialVersionUID = 1L;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name == null ? null : name.trim();
}
public Long getOperator() {
return operator;
}
public void setOperator(Long operator) {
this.operator = operator;
}
public Date getCreatedAt() {
return createdAt;
}
public void setCreatedAt(Date createdAt) {
this.createdAt = createdAt;
}
public Date getUpdatedAt() {
return updatedAt;
}
public void setUpdatedAt(Date updatedAt) {
this.updatedAt = updatedAt;
}
public Byte getRecStatus() {
return recStatus;
}
public void setRecStatus(Byte recStatus) {
this.recStatus = recStatus;
}
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(getClass().getSimpleName());
sb.append(" [");
sb.append("Hash = ").append(hashCode());
sb.append(", id=").append(id);
sb.append(", name=").append(name);
sb.append(", operator=").append(operator);
sb.append(", createdAt=").append(createdAt);
sb.append(", updatedAt=").append(updatedAt);
sb.append(", recStatus=").append(recStatus);
sb.append("]");
return sb.toString();
}
}

571
tcm/src/main/java/com/ccsens/tcm/bean/po/HospitalExample.java

@ -0,0 +1,571 @@
package com.ccsens.tcm.bean.po;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
public class HospitalExample {
protected String orderByClause;
protected boolean distinct;
protected List<Criteria> oredCriteria;
public HospitalExample() {
oredCriteria = new ArrayList<Criteria>();
}
public void setOrderByClause(String orderByClause) {
this.orderByClause = orderByClause;
}
public String getOrderByClause() {
return orderByClause;
}
public void setDistinct(boolean distinct) {
this.distinct = distinct;
}
public boolean isDistinct() {
return distinct;
}
public List<Criteria> getOredCriteria() {
return oredCriteria;
}
public void or(Criteria criteria) {
oredCriteria.add(criteria);
}
public Criteria or() {
Criteria criteria = createCriteriaInternal();
oredCriteria.add(criteria);
return criteria;
}
public Criteria createCriteria() {
Criteria criteria = createCriteriaInternal();
if (oredCriteria.size() == 0) {
oredCriteria.add(criteria);
}
return criteria;
}
protected Criteria createCriteriaInternal() {
Criteria criteria = new Criteria();
return criteria;
}
public void clear() {
oredCriteria.clear();
orderByClause = null;
distinct = false;
}
protected abstract static class GeneratedCriteria {
protected List<Criterion> criteria;
protected GeneratedCriteria() {
super();
criteria = new ArrayList<Criterion>();
}
public boolean isValid() {
return criteria.size() > 0;
}
public List<Criterion> getAllCriteria() {
return criteria;
}
public List<Criterion> getCriteria() {
return criteria;
}
protected void addCriterion(String condition) {
if (condition == null) {
throw new RuntimeException("Value for condition cannot be null");
}
criteria.add(new Criterion(condition));
}
protected void addCriterion(String condition, Object value, String property) {
if (value == null) {
throw new RuntimeException("Value for " + property + " cannot be null");
}
criteria.add(new Criterion(condition, value));
}
protected void addCriterion(String condition, Object value1, Object value2, String property) {
if (value1 == null || value2 == null) {
throw new RuntimeException("Between values for " + property + " cannot be null");
}
criteria.add(new Criterion(condition, value1, value2));
}
public Criteria andIdIsNull() {
addCriterion("id is null");
return (Criteria) this;
}
public Criteria andIdIsNotNull() {
addCriterion("id is not null");
return (Criteria) this;
}
public Criteria andIdEqualTo(Long value) {
addCriterion("id =", value, "id");
return (Criteria) this;
}
public Criteria andIdNotEqualTo(Long value) {
addCriterion("id <>", value, "id");
return (Criteria) this;
}
public Criteria andIdGreaterThan(Long value) {
addCriterion("id >", value, "id");
return (Criteria) this;
}
public Criteria andIdGreaterThanOrEqualTo(Long value) {
addCriterion("id >=", value, "id");
return (Criteria) this;
}
public Criteria andIdLessThan(Long value) {
addCriterion("id <", value, "id");
return (Criteria) this;
}
public Criteria andIdLessThanOrEqualTo(Long value) {
addCriterion("id <=", value, "id");
return (Criteria) this;
}
public Criteria andIdIn(List<Long> values) {
addCriterion("id in", values, "id");
return (Criteria) this;
}
public Criteria andIdNotIn(List<Long> values) {
addCriterion("id not in", values, "id");
return (Criteria) this;
}
public Criteria andIdBetween(Long value1, Long value2) {
addCriterion("id between", value1, value2, "id");
return (Criteria) this;
}
public Criteria andIdNotBetween(Long value1, Long value2) {
addCriterion("id not between", value1, value2, "id");
return (Criteria) this;
}
public Criteria andNameIsNull() {
addCriterion("name is null");
return (Criteria) this;
}
public Criteria andNameIsNotNull() {
addCriterion("name is not null");
return (Criteria) this;
}
public Criteria andNameEqualTo(String value) {
addCriterion("name =", value, "name");
return (Criteria) this;
}
public Criteria andNameNotEqualTo(String value) {
addCriterion("name <>", value, "name");
return (Criteria) this;
}
public Criteria andNameGreaterThan(String value) {
addCriterion("name >", value, "name");
return (Criteria) this;
}
public Criteria andNameGreaterThanOrEqualTo(String value) {
addCriterion("name >=", value, "name");
return (Criteria) this;
}
public Criteria andNameLessThan(String value) {
addCriterion("name <", value, "name");
return (Criteria) this;
}
public Criteria andNameLessThanOrEqualTo(String value) {
addCriterion("name <=", value, "name");
return (Criteria) this;
}
public Criteria andNameLike(String value) {
addCriterion("name like", value, "name");
return (Criteria) this;
}
public Criteria andNameNotLike(String value) {
addCriterion("name not like", value, "name");
return (Criteria) this;
}
public Criteria andNameIn(List<String> values) {
addCriterion("name in", values, "name");
return (Criteria) this;
}
public Criteria andNameNotIn(List<String> values) {
addCriterion("name not in", values, "name");
return (Criteria) this;
}
public Criteria andNameBetween(String value1, String value2) {
addCriterion("name between", value1, value2, "name");
return (Criteria) this;
}
public Criteria andNameNotBetween(String value1, String value2) {
addCriterion("name not between", value1, value2, "name");
return (Criteria) this;
}
public Criteria andOperatorIsNull() {
addCriterion("operator is null");
return (Criteria) this;
}
public Criteria andOperatorIsNotNull() {
addCriterion("operator is not null");
return (Criteria) this;
}
public Criteria andOperatorEqualTo(Long value) {
addCriterion("operator =", value, "operator");
return (Criteria) this;
}
public Criteria andOperatorNotEqualTo(Long value) {
addCriterion("operator <>", value, "operator");
return (Criteria) this;
}
public Criteria andOperatorGreaterThan(Long value) {
addCriterion("operator >", value, "operator");
return (Criteria) this;
}
public Criteria andOperatorGreaterThanOrEqualTo(Long value) {
addCriterion("operator >=", value, "operator");
return (Criteria) this;
}
public Criteria andOperatorLessThan(Long value) {
addCriterion("operator <", value, "operator");
return (Criteria) this;
}
public Criteria andOperatorLessThanOrEqualTo(Long value) {
addCriterion("operator <=", value, "operator");
return (Criteria) this;
}
public Criteria andOperatorIn(List<Long> values) {
addCriterion("operator in", values, "operator");
return (Criteria) this;
}
public Criteria andOperatorNotIn(List<Long> values) {
addCriterion("operator not in", values, "operator");
return (Criteria) this;
}
public Criteria andOperatorBetween(Long value1, Long value2) {
addCriterion("operator between", value1, value2, "operator");
return (Criteria) this;
}
public Criteria andOperatorNotBetween(Long value1, Long value2) {
addCriterion("operator not between", value1, value2, "operator");
return (Criteria) this;
}
public Criteria andCreatedAtIsNull() {
addCriterion("created_at is null");
return (Criteria) this;
}
public Criteria andCreatedAtIsNotNull() {
addCriterion("created_at is not null");
return (Criteria) this;
}
public Criteria andCreatedAtEqualTo(Date value) {
addCriterion("created_at =", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtNotEqualTo(Date value) {
addCriterion("created_at <>", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtGreaterThan(Date value) {
addCriterion("created_at >", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtGreaterThanOrEqualTo(Date value) {
addCriterion("created_at >=", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtLessThan(Date value) {
addCriterion("created_at <", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtLessThanOrEqualTo(Date value) {
addCriterion("created_at <=", value, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtIn(List<Date> values) {
addCriterion("created_at in", values, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtNotIn(List<Date> values) {
addCriterion("created_at not in", values, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtBetween(Date value1, Date value2) {
addCriterion("created_at between", value1, value2, "createdAt");
return (Criteria) this;
}
public Criteria andCreatedAtNotBetween(Date value1, Date value2) {
addCriterion("created_at not between", value1, value2, "createdAt");
return (Criteria) this;
}
public Criteria andUpdatedAtIsNull() {
addCriterion("updated_at is null");
return (Criteria) this;
}
public Criteria andUpdatedAtIsNotNull() {
addCriterion("updated_at is not null");
return (Criteria) this;
}
public Criteria andUpdatedAtEqualTo(Date value) {
addCriterion("updated_at =", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtNotEqualTo(Date value) {
addCriterion("updated_at <>", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtGreaterThan(Date value) {
addCriterion("updated_at >", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtGreaterThanOrEqualTo(Date value) {
addCriterion("updated_at >=", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtLessThan(Date value) {
addCriterion("updated_at <", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtLessThanOrEqualTo(Date value) {
addCriterion("updated_at <=", value, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtIn(List<Date> values) {
addCriterion("updated_at in", values, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtNotIn(List<Date> values) {
addCriterion("updated_at not in", values, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtBetween(Date value1, Date value2) {
addCriterion("updated_at between", value1, value2, "updatedAt");
return (Criteria) this;
}
public Criteria andUpdatedAtNotBetween(Date value1, Date value2) {
addCriterion("updated_at not between", value1, value2, "updatedAt");
return (Criteria) this;
}
public Criteria andRecStatusIsNull() {
addCriterion("rec_status is null");
return (Criteria) this;
}
public Criteria andRecStatusIsNotNull() {
addCriterion("rec_status is not null");
return (Criteria) this;
}
public Criteria andRecStatusEqualTo(Byte value) {
addCriterion("rec_status =", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusNotEqualTo(Byte value) {
addCriterion("rec_status <>", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusGreaterThan(Byte value) {
addCriterion("rec_status >", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusGreaterThanOrEqualTo(Byte value) {
addCriterion("rec_status >=", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusLessThan(Byte value) {
addCriterion("rec_status <", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusLessThanOrEqualTo(Byte value) {
addCriterion("rec_status <=", value, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusIn(List<Byte> values) {
addCriterion("rec_status in", values, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusNotIn(List<Byte> values) {
addCriterion("rec_status not in", values, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusBetween(Byte value1, Byte value2) {
addCriterion("rec_status between", value1, value2, "recStatus");
return (Criteria) this;
}
public Criteria andRecStatusNotBetween(Byte value1, Byte value2) {
addCriterion("rec_status not between", value1, value2, "recStatus");
return (Criteria) this;
}
}
public static class Criteria extends GeneratedCriteria {
protected Criteria() {
super();
}
}
public static class Criterion {
private String condition;
private Object value;
private Object secondValue;
private boolean noValue;
private boolean singleValue;
private boolean betweenValue;
private boolean listValue;
private String typeHandler;
public String getCondition() {
return condition;
}
public Object getValue() {
return value;
}
public Object getSecondValue() {
return secondValue;
}
public boolean isNoValue() {
return noValue;
}
public boolean isSingleValue() {
return singleValue;
}
public boolean isBetweenValue() {
return betweenValue;
}
public boolean isListValue() {
return listValue;
}
public String getTypeHandler() {
return typeHandler;
}
protected Criterion(String condition) {
super();
this.condition = condition;
this.typeHandler = null;
this.noValue = true;
}
protected Criterion(String condition, Object value, String typeHandler) {
super();
this.condition = condition;
this.value = value;
this.typeHandler = typeHandler;
if (value instanceof List<?>) {
this.listValue = true;
} else {
this.singleValue = true;
}
}
protected Criterion(String condition, Object value) {
this(condition, value, null);
}
protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
super();
this.condition = condition;
this.value = value;
this.secondValue = secondValue;
this.typeHandler = typeHandler;
this.betweenValue = true;
}
protected Criterion(String condition, Object value, Object secondValue) {
this(condition, value, secondValue, null);
}
}
}

21
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;
}
}

17
tcm/src/main/java/com/ccsens/tcm/bean/vo/HospatilVo.java

@ -0,0 +1,17 @@
package com.ccsens.tcm.bean.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class HospatilVo {
@Data
@ApiModel("查询医院列表")
public static class SelHospatilVo {
@ApiModelProperty("医院id")
private Long id;
@ApiModelProperty("医院名称")
private String name;
}
}

4
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<StatisticVo.CompleteDoctor> completeDoctor(@Param("hospitalId")Long hospitalId);
List<BiologicalSamplesVo.selBiolog> selBiologicalSamples(BiologicalSamplesDto.SelBiolog param);
}

30
tcm/src/main/java/com/ccsens/tcm/persist/mapper/HospitalMapper.java

@ -0,0 +1,30 @@
package com.ccsens.tcm.persist.mapper;
import com.ccsens.tcm.bean.po.Hospital;
import com.ccsens.tcm.bean.po.HospitalExample;
import java.util.List;
import org.apache.ibatis.annotations.Param;
public interface HospitalMapper {
long countByExample(HospitalExample example);
int deleteByExample(HospitalExample example);
int deleteByPrimaryKey(Long id);
int insert(Hospital record);
int insertSelective(Hospital record);
List<Hospital> selectByExample(HospitalExample example);
Hospital selectByPrimaryKey(Long id);
int updateByExampleSelective(@Param("record") Hospital record, @Param("example") HospitalExample example);
int updateByExample(@Param("record") Hospital record, @Param("example") HospitalExample example);
int updateByPrimaryKeySelective(Hospital record);
int updateByPrimaryKey(Hospital record);
}

12
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,10 @@ public interface IPatientService {
* @return 返回每个医生的完成情况
*/
List<StatisticVo.CompleteDoctor> completeDoctor(StatisticDto.CompleteDoctor param);
void addBiologicalSamples(BiologicalSamplesDto.AddBiolog param, Long userId);
PageInfo<BiologicalSamplesVo.selBiolog> selBiologicalSamples(BiologicalSamplesDto.SelBiolog param, Long userId);
List<HospatilVo.SelHospatilVo> selHospatil();
}

81
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;
@ -23,6 +18,7 @@ import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
@ -52,7 +48,27 @@ public class PatientService implements IPatientService {
@Resource
private PatientDao patientDao;
@Resource
private BiologicalSamplesMapper biologicalSamplesMapper;
@Resource
private InpatientMapper inpatientMapper;
@Resource
private HospitalMapper hospitalMapper;
@Value("${day.one}")
public int one;
@Value("${day.two}")
public int two;
@Value("${day.oneFront}")
public int oneFront;
@Value("${day.oneAfter}")
public int oneAfter;
@Value("${day.twoAfter}")
public int twoAfter;
@Value("${day.three}")
public int three;
@Value("${day.threeFront}")
public int threeFront;
@Value("${day.threeAfter}")
public int threeAfter;
@Override
public void savePatient(PatientDto.SavePatient param, Long userId) {
@ -70,7 +86,7 @@ public class PatientService implements IPatientService {
Long disease_time=Long.parseLong(String.valueOf(redisUtil.get(Constant.Redis.DISEASE_TIME)));
//升序查询,发病试题答案的数量
PatientRecordExample patientRecordExample1=new PatientRecordExample();
patientRecordExample1.setOrderByClause("rec_status");
patientRecordExample1.setOrderByClause("created_at");
patientRecordExample1.createCriteria().andPatientIdEqualTo(param.getPatientId()).andTestQuestionsIdEqualTo(disease_time).andRecStatusEqualTo((byte)0);
List<PatientRecord> patientRecordList = patientRecordMapper.selectByExample(patientRecordExample1);
Date onsetTime=null;
@ -92,14 +108,6 @@ public class PatientService implements IPatientService {
//试题只需要记录3次的 9 和30 算分界限 <9 =0 ;<30 =14 ; >30 =90 记录2次的 270 算分界线 <270 算180 ,>270 算365
int one=9;
int two=30;
int oneFront=0;
int oneAfter=14;
int twoAfter=90;
int three=270;
int threeFront=180;
int threeAfter=365;
//是否需要去修改基本信息表中的录入状态
Boolean update=false;
//先查看这个患者的需要的记录次数,在下面的这个对照组对象中呢
@ -292,4 +300,43 @@ public class PatientService implements IPatientService {
public List<StatisticVo.CompleteDoctor> completeDoctor(StatisticDto.CompleteDoctor param) {
return patientDao.completeDoctor(param.getHospitalId());
}
@Override
public void addBiologicalSamples(BiologicalSamplesDto.AddBiolog param, Long userId) {
PatientInformationExample patientInformationExample=new PatientInformationExample();
patientInformationExample.createCriteria().andHospitalizationEqualTo(param.getHospitalization()).andRecStatusEqualTo((byte)0);
List<PatientInformation> patientInformations = patientInformationMapper.selectByExample(patientInformationExample);
if(patientInformations.size()!=1){
throw new BaseException(CodeEnum.QUANTITYERROR);
}
BiologicalSamples biologicalSamples=new BiologicalSamples();
biologicalSamples.setUserId(userId);
biologicalSamples.setId(snowflake.nextId());
biologicalSamples.setPatientInformationId(patientInformations.get(0).getId());
BeanUtils.copyProperties(param,biologicalSamples);
biologicalSamplesMapper.insertSelective(biologicalSamples);
}
@Override
public PageInfo<BiologicalSamplesVo.selBiolog> selBiologicalSamples(BiologicalSamplesDto.SelBiolog param, Long userId) {
PageHelper.startPage(param.getPageNum(),param.getPageSize());
List<BiologicalSamplesVo.selBiolog> selBiologs= patientDao.selBiologicalSamples(param);
return new PageInfo<>(selBiologs);
}
@Override
public List<HospatilVo.SelHospatilVo> selHospatil() {
List<HospatilVo.SelHospatilVo> selHospatilVos=new ArrayList<HospatilVo.SelHospatilVo>();
HospitalExample hospitalExample=new HospitalExample();
hospitalExample.createCriteria().andRecStatusEqualTo((byte)0);
List<Hospital> hospitals = hospitalMapper.selectByExample(hospitalExample);
hospitals.forEach(hospital -> {
HospatilVo.SelHospatilVo selHospatilVo=new HospatilVo.SelHospatilVo();
selHospatilVo.setId(hospital.getId());
selHospatilVo.setName(hospital.getName());
selHospatilVos.add(selHospatilVo);
});
return selHospatilVos;
}
}

9
tcm/src/main/resources/application-dev.yml

@ -35,3 +35,12 @@ file:
#gameMqName: game_status_wisdom
logging:
path:
day:
one: 9
two: 30
oneFront: 0
oneAfter: 14
twoAfter: 90
three: 270
threeFront: 180
threeAfter: 365

9
tcm/src/main/resources/application-prod.yml

@ -38,3 +38,12 @@ file:
signUpUrl: https://www.tall.wiki/compete/
domain: https://www.tall.wiki/gateway/tcm/
imgDomain: https://www.tall.wiki/gateway/tcm/uploads/
day:
one: 9
two: 30
oneFront: 0
oneAfter: 14
twoAfter: 90
three: 270
threeFront: 180
threeAfter: 365

9
tcm/src/main/resources/application-test.yml

@ -33,3 +33,12 @@ file:
path: /home/cloud/tcm/uploads/
domain: https://test.tall.wiki/gateway/tcm/
imgDomain: https://test.tall.wiki/gateway/tcm/uploads/
day:
one: 9
two: 30
oneFront: 0
oneAfter: 14
twoAfter: 90
three: 270
threeFront: 180
threeAfter: 365

21
tcm/src/main/resources/mapper_dao/PatientDao.xml

@ -157,7 +157,7 @@
<select id="countAnalysis" resultType="com.ccsens.tcm.bean.vo.StatisticVo$SelGroupList">
<if test="testQuestionsId!=null and testQuestionsId!=0">
select if(locate('其他',tpr.contents),'其他',tpr.contents) as content,count(DISTINCT patient_id)) as nums from t_patient_information tpi left join t_patient_record tpr on tpi.id=tpr.patient_id and tpr.rec_status=0
select if(locate('其他',tpr.contents),'其他',tpr.contents) as content,count(distinct tpr.patient_id) as nums from t_patient_information tpi left join t_patient_record tpr on tpi.id=tpr.patient_id and tpr.rec_status=0
where tpi.rec_status=0
<if test="testQuestionsId!=null and testQuestionsId!=0">
and tpr.test_questions_id=#{testQuestionsId}
@ -323,4 +323,23 @@
GROUP BY
t.user_id
</select>
<select id="selBiologicalSamples" resultType="com.ccsens.tcm.bean.vo.BiologicalSamplesVo$selBiolog">
select th.name,tbs.sample_type as sampleType, tpi.hospitalization,tbs.collect_time as collectTime
from t_biological_samples tbs
left join t_patient_information tpi on tpi.id=tbs.patient_information_id and tpi.rec_status=0
left join t_hospital th on th.id=tpi.hospital_id and th.rec_status=0
where tbs.rec_status=0
<if test="hospitalId!=null">
and th.id=#{hospitalId}
</if>
<if test="sampleType!=null">
and tbs.sample_type=#{sampleType}
</if>
<if test="hospitalization!=null and hospitalization!=''">
and tpi.hospitalization like concat('%',#{hospitalization},'%')
</if>
<if test="collectTime!=null">
and tbs.collect_time=#{collectTime}
</if>
</select>
</mapper>

226
tcm/src/main/resources/mapper_raw/HospitalMapper.xml

@ -0,0 +1,226 @@
<?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="com.ccsens.tcm.persist.mapper.HospitalMapper">
<resultMap id="BaseResultMap" type="com.ccsens.tcm.bean.po.Hospital">
<id column="id" jdbcType="BIGINT" property="id" />
<result column="name" jdbcType="VARCHAR" property="name" />
<result column="operator" jdbcType="BIGINT" property="operator" />
<result column="created_at" jdbcType="TIMESTAMP" property="createdAt" />
<result column="updated_at" jdbcType="TIMESTAMP" property="updatedAt" />
<result column="rec_status" jdbcType="TINYINT" property="recStatus" />
</resultMap>
<sql id="Example_Where_Clause">
<where>
<foreach collection="oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Update_By_Example_Where_Clause">
<where>
<foreach collection="example.oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Base_Column_List">
id, name, operator, created_at, updated_at, rec_status
</sql>
<select id="selectByExample" parameterType="com.ccsens.tcm.bean.po.HospitalExample" resultMap="BaseResultMap">
select
<if test="distinct">
distinct
</if>
<include refid="Base_Column_List" />
from t_hospital
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
<if test="orderByClause != null">
order by ${orderByClause}
</if>
</select>
<select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
select
<include refid="Base_Column_List" />
from t_hospital
where id = #{id,jdbcType=BIGINT}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
delete from t_hospital
where id = #{id,jdbcType=BIGINT}
</delete>
<delete id="deleteByExample" parameterType="com.ccsens.tcm.bean.po.HospitalExample">
delete from t_hospital
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
</delete>
<insert id="insert" parameterType="com.ccsens.tcm.bean.po.Hospital">
<selectKey keyProperty="id" order="AFTER" resultType="java.lang.Long">
SELECT LAST_INSERT_ID()
</selectKey>
insert into t_hospital (name, operator, created_at,
updated_at, rec_status)
values (#{name,jdbcType=VARCHAR}, #{operator,jdbcType=BIGINT}, #{createdAt,jdbcType=TIMESTAMP},
#{updatedAt,jdbcType=TIMESTAMP}, #{recStatus,jdbcType=TINYINT})
</insert>
<insert id="insertSelective" parameterType="com.ccsens.tcm.bean.po.Hospital">
<selectKey keyProperty="id" order="AFTER" resultType="java.lang.Long">
SELECT LAST_INSERT_ID()
</selectKey>
insert into t_hospital
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="name != null">
name,
</if>
<if test="operator != null">
operator,
</if>
<if test="createdAt != null">
created_at,
</if>
<if test="updatedAt != null">
updated_at,
</if>
<if test="recStatus != null">
rec_status,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="name != null">
#{name,jdbcType=VARCHAR},
</if>
<if test="operator != null">
#{operator,jdbcType=BIGINT},
</if>
<if test="createdAt != null">
#{createdAt,jdbcType=TIMESTAMP},
</if>
<if test="updatedAt != null">
#{updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="recStatus != null">
#{recStatus,jdbcType=TINYINT},
</if>
</trim>
</insert>
<select id="countByExample" parameterType="com.ccsens.tcm.bean.po.HospitalExample" resultType="java.lang.Long">
select count(*) from t_hospital
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
</select>
<update id="updateByExampleSelective" parameterType="map">
update t_hospital
<set>
<if test="record.id != null">
id = #{record.id,jdbcType=BIGINT},
</if>
<if test="record.name != null">
name = #{record.name,jdbcType=VARCHAR},
</if>
<if test="record.operator != null">
operator = #{record.operator,jdbcType=BIGINT},
</if>
<if test="record.createdAt != null">
created_at = #{record.createdAt,jdbcType=TIMESTAMP},
</if>
<if test="record.updatedAt != null">
updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="record.recStatus != null">
rec_status = #{record.recStatus,jdbcType=TINYINT},
</if>
</set>
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByExample" parameterType="map">
update t_hospital
set id = #{record.id,jdbcType=BIGINT},
name = #{record.name,jdbcType=VARCHAR},
operator = #{record.operator,jdbcType=BIGINT},
created_at = #{record.createdAt,jdbcType=TIMESTAMP},
updated_at = #{record.updatedAt,jdbcType=TIMESTAMP},
rec_status = #{record.recStatus,jdbcType=TINYINT}
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByPrimaryKeySelective" parameterType="com.ccsens.tcm.bean.po.Hospital">
update t_hospital
<set>
<if test="name != null">
name = #{name,jdbcType=VARCHAR},
</if>
<if test="operator != null">
operator = #{operator,jdbcType=BIGINT},
</if>
<if test="createdAt != null">
created_at = #{createdAt,jdbcType=TIMESTAMP},
</if>
<if test="updatedAt != null">
updated_at = #{updatedAt,jdbcType=TIMESTAMP},
</if>
<if test="recStatus != null">
rec_status = #{recStatus,jdbcType=TINYINT},
</if>
</set>
where id = #{id,jdbcType=BIGINT}
</update>
<update id="updateByPrimaryKey" parameterType="com.ccsens.tcm.bean.po.Hospital">
update t_hospital
set name = #{name,jdbcType=VARCHAR},
operator = #{operator,jdbcType=BIGINT},
created_at = #{createdAt,jdbcType=TIMESTAMP},
updated_at = #{updatedAt,jdbcType=TIMESTAMP},
rec_status = #{recStatus,jdbcType=TINYINT}
where id = #{id,jdbcType=BIGINT}
</update>
</mapper>

1
util/src/main/java/com/ccsens/util/CodeEnum.java

@ -181,6 +181,7 @@ public enum CodeEnum {
ALREADY_UPLOAD_VIDEO(150,"您已经上传了视频,请勿重复提交",true),
ALREADY_UPLOAD_FORM(151,"请勿重复提交信息",true),
MESSAGEISNULL(152,"数据为空",true),
QUANTITYERROR(153,"住院号和患者id不对应",true),
;

Loading…
Cancel
Save