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 3effde29..42763885 100644 --- a/tcm/src/main/java/com/ccsens/tcm/api/PatientController.java +++ b/tcm/src/main/java/com/ccsens/tcm/api/PatientController.java @@ -1,14 +1,38 @@ package com.ccsens.tcm.api; +import com.ccsens.cloudutil.annotation.MustLogin; +import com.ccsens.tcm.bean.dto.PatientDto; +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; +/** + * @author wang + */ @Api(tags = "患者相关接口", description = "患者相关接口") @RestController @RequestMapping("/patient") @Slf4j public class PatientController { +// disease_time + private IPatientService patientService; + @MustLogin + @ApiOperation(value = "添加患者基本信息", notes = "zy:添加一个活动公告,本平台默认审核通过") + @RequestMapping(value = "/savePatientMes", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse saveActivity(@ApiParam @Validated @RequestBody QueryDto params) { + log.info("添加患者基本信息:{}",params); + patientService.savePatient(params.getParam(),params.getUserId()); + log.info("添加患者基本成功"); + return JsonResponse.newInstance().ok(); + } } 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 new file mode 100644 index 00000000..46ccf820 --- /dev/null +++ b/tcm/src/main/java/com/ccsens/tcm/bean/dto/PatientDto.java @@ -0,0 +1,27 @@ +package com.ccsens.tcm.bean.dto; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import sun.awt.ConstrainableGraphics; + +import java.util.Date; + +/** + * @author wang + */ +@Data +public class PatientDto { + @Data + @ApiModel("保存患者基本信息") + public static class SavePatient { + @ApiModelProperty("住院号") + private String hospitalization; + @ApiModelProperty("对照组id") + private Integer inpatientId; + @ApiModelProperty("录入状态:0:新建 1:数据搜集中 2数据搜集完成 3数据搜集超时 4:废弃") + private Byte inputStatus; + @ApiModelProperty("医院id") + private Integer hospitalId; + } +} diff --git a/tcm/src/main/java/com/ccsens/tcm/bean/po/PatientRecord.java b/tcm/src/main/java/com/ccsens/tcm/bean/po/PatientRecord.java index ebe929d0..1185518c 100644 --- a/tcm/src/main/java/com/ccsens/tcm/bean/po/PatientRecord.java +++ b/tcm/src/main/java/com/ccsens/tcm/bean/po/PatientRecord.java @@ -3,7 +3,7 @@ package com.ccsens.tcm.bean.po; import java.io.Serializable; import java.util.Date; -public class PatientRecord implements Serializable { +public class patientRecord implements Serializable { private Long id; private Integer patientId; @@ -16,6 +16,8 @@ public class PatientRecord implements Serializable { private Integer collectTime; + private Date timeSlot; + private Date createdAt; private Date updateAt; @@ -72,6 +74,14 @@ public class PatientRecord implements Serializable { this.collectTime = collectTime; } + public Date getTimeSlot() { + return timeSlot; + } + + public void setTimeSlot(Date timeSlot) { + this.timeSlot = timeSlot; + } + public Date getCreatedAt() { return createdAt; } @@ -108,6 +118,7 @@ public class PatientRecord implements Serializable { sb.append(", contents=").append(contents); sb.append(", userId=").append(userId); sb.append(", collectTime=").append(collectTime); + sb.append(", timeSlot=").append(timeSlot); sb.append(", createdAt=").append(createdAt); sb.append(", updateAt=").append(updateAt); sb.append(", recStatus=").append(recStatus); diff --git a/tcm/src/main/java/com/ccsens/tcm/bean/po/PatientRecordExample.java b/tcm/src/main/java/com/ccsens/tcm/bean/po/PatientRecordExample.java index b72205ca..d5ba2190 100644 --- a/tcm/src/main/java/com/ccsens/tcm/bean/po/PatientRecordExample.java +++ b/tcm/src/main/java/com/ccsens/tcm/bean/po/PatientRecordExample.java @@ -4,14 +4,14 @@ import java.util.ArrayList; import java.util.Date; import java.util.List; -public class PatientRecordExample { +public class patientRecordExample { protected String orderByClause; protected boolean distinct; protected List oredCriteria; - public PatientRecordExample() { + public patientRecordExample() { oredCriteria = new ArrayList(); } @@ -475,6 +475,66 @@ public class PatientRecordExample { return (Criteria) this; } + public Criteria andTimeSlotIsNull() { + addCriterion("time_slot is null"); + return (Criteria) this; + } + + public Criteria andTimeSlotIsNotNull() { + addCriterion("time_slot is not null"); + return (Criteria) this; + } + + public Criteria andTimeSlotEqualTo(Date value) { + addCriterion("time_slot =", value, "timeSlot"); + return (Criteria) this; + } + + public Criteria andTimeSlotNotEqualTo(Date value) { + addCriterion("time_slot <>", value, "timeSlot"); + return (Criteria) this; + } + + public Criteria andTimeSlotGreaterThan(Date value) { + addCriterion("time_slot >", value, "timeSlot"); + return (Criteria) this; + } + + public Criteria andTimeSlotGreaterThanOrEqualTo(Date value) { + addCriterion("time_slot >=", value, "timeSlot"); + return (Criteria) this; + } + + public Criteria andTimeSlotLessThan(Date value) { + addCriterion("time_slot <", value, "timeSlot"); + return (Criteria) this; + } + + public Criteria andTimeSlotLessThanOrEqualTo(Date value) { + addCriterion("time_slot <=", value, "timeSlot"); + return (Criteria) this; + } + + public Criteria andTimeSlotIn(List values) { + addCriterion("time_slot in", values, "timeSlot"); + return (Criteria) this; + } + + public Criteria andTimeSlotNotIn(List values) { + addCriterion("time_slot not in", values, "timeSlot"); + return (Criteria) this; + } + + public Criteria andTimeSlotBetween(Date value1, Date value2) { + addCriterion("time_slot between", value1, value2, "timeSlot"); + return (Criteria) this; + } + + public Criteria andTimeSlotNotBetween(Date value1, Date value2) { + addCriterion("time_slot not between", value1, value2, "timeSlot"); + return (Criteria) this; + } + public Criteria andCreatedAtIsNull() { addCriterion("created_at is null"); return (Criteria) this; diff --git a/tcm/src/main/java/com/ccsens/tcm/bean/po/ReportCode.java b/tcm/src/main/java/com/ccsens/tcm/bean/po/ReportCode.java index f2ce8459..2cda23fc 100644 --- a/tcm/src/main/java/com/ccsens/tcm/bean/po/ReportCode.java +++ b/tcm/src/main/java/com/ccsens/tcm/bean/po/ReportCode.java @@ -10,7 +10,7 @@ public class ReportCode implements Serializable { private String name; - private String parentId; + private String parentCode; private Byte must; @@ -20,6 +20,8 @@ public class ReportCode implements Serializable { private String remark; + private Byte reportType; + private Long operator; private Date createdAt; @@ -54,12 +56,12 @@ public class ReportCode implements Serializable { this.name = name == null ? null : name.trim(); } - public String getParentId() { - return parentId; + public String getParentCode() { + return parentCode; } - public void setParentId(String parentId) { - this.parentId = parentId == null ? null : parentId.trim(); + public void setParentCode(String parentCode) { + this.parentCode = parentCode == null ? null : parentCode.trim(); } public Byte getMust() { @@ -94,6 +96,14 @@ public class ReportCode implements Serializable { this.remark = remark == null ? null : remark.trim(); } + public Byte getReportType() { + return reportType; + } + + public void setReportType(Byte reportType) { + this.reportType = reportType; + } + public Long getOperator() { return operator; } @@ -135,11 +145,12 @@ public class ReportCode implements Serializable { sb.append(", id=").append(id); sb.append(", code=").append(code); sb.append(", name=").append(name); - sb.append(", parentId=").append(parentId); + sb.append(", parentCode=").append(parentCode); sb.append(", must=").append(must); sb.append(", level=").append(level); sb.append(", sort=").append(sort); sb.append(", remark=").append(remark); + sb.append(", reportType=").append(reportType); sb.append(", operator=").append(operator); sb.append(", createdAt=").append(createdAt); sb.append(", updatedAt=").append(updatedAt); diff --git a/tcm/src/main/java/com/ccsens/tcm/bean/po/ReportCodeExample.java b/tcm/src/main/java/com/ccsens/tcm/bean/po/ReportCodeExample.java index d17bb563..faaac339 100644 --- a/tcm/src/main/java/com/ccsens/tcm/bean/po/ReportCodeExample.java +++ b/tcm/src/main/java/com/ccsens/tcm/bean/po/ReportCodeExample.java @@ -305,73 +305,73 @@ public class ReportCodeExample { return (Criteria) this; } - public Criteria andParentIdIsNull() { - addCriterion("parent_id is null"); + public Criteria andParentCodeIsNull() { + addCriterion("parent_code is null"); return (Criteria) this; } - public Criteria andParentIdIsNotNull() { - addCriterion("parent_id is not null"); + public Criteria andParentCodeIsNotNull() { + addCriterion("parent_code is not null"); return (Criteria) this; } - public Criteria andParentIdEqualTo(String value) { - addCriterion("parent_id =", value, "parentId"); + public Criteria andParentCodeEqualTo(String value) { + addCriterion("parent_code =", value, "parentCode"); return (Criteria) this; } - public Criteria andParentIdNotEqualTo(String value) { - addCriterion("parent_id <>", value, "parentId"); + public Criteria andParentCodeNotEqualTo(String value) { + addCriterion("parent_code <>", value, "parentCode"); return (Criteria) this; } - public Criteria andParentIdGreaterThan(String value) { - addCriterion("parent_id >", value, "parentId"); + public Criteria andParentCodeGreaterThan(String value) { + addCriterion("parent_code >", value, "parentCode"); return (Criteria) this; } - public Criteria andParentIdGreaterThanOrEqualTo(String value) { - addCriterion("parent_id >=", value, "parentId"); + public Criteria andParentCodeGreaterThanOrEqualTo(String value) { + addCriterion("parent_code >=", value, "parentCode"); return (Criteria) this; } - public Criteria andParentIdLessThan(String value) { - addCriterion("parent_id <", value, "parentId"); + public Criteria andParentCodeLessThan(String value) { + addCriterion("parent_code <", value, "parentCode"); return (Criteria) this; } - public Criteria andParentIdLessThanOrEqualTo(String value) { - addCriterion("parent_id <=", value, "parentId"); + public Criteria andParentCodeLessThanOrEqualTo(String value) { + addCriterion("parent_code <=", value, "parentCode"); return (Criteria) this; } - public Criteria andParentIdLike(String value) { - addCriterion("parent_id like", value, "parentId"); + public Criteria andParentCodeLike(String value) { + addCriterion("parent_code like", value, "parentCode"); return (Criteria) this; } - public Criteria andParentIdNotLike(String value) { - addCriterion("parent_id not like", value, "parentId"); + public Criteria andParentCodeNotLike(String value) { + addCriterion("parent_code not like", value, "parentCode"); return (Criteria) this; } - public Criteria andParentIdIn(List values) { - addCriterion("parent_id in", values, "parentId"); + public Criteria andParentCodeIn(List values) { + addCriterion("parent_code in", values, "parentCode"); return (Criteria) this; } - public Criteria andParentIdNotIn(List values) { - addCriterion("parent_id not in", values, "parentId"); + public Criteria andParentCodeNotIn(List values) { + addCriterion("parent_code not in", values, "parentCode"); return (Criteria) this; } - public Criteria andParentIdBetween(String value1, String value2) { - addCriterion("parent_id between", value1, value2, "parentId"); + public Criteria andParentCodeBetween(String value1, String value2) { + addCriterion("parent_code between", value1, value2, "parentCode"); return (Criteria) this; } - public Criteria andParentIdNotBetween(String value1, String value2) { - addCriterion("parent_id not between", value1, value2, "parentId"); + public Criteria andParentCodeNotBetween(String value1, String value2) { + addCriterion("parent_code not between", value1, value2, "parentCode"); return (Criteria) this; } @@ -625,6 +625,66 @@ public class ReportCodeExample { return (Criteria) this; } + public Criteria andReportTypeIsNull() { + addCriterion("report_type is null"); + return (Criteria) this; + } + + public Criteria andReportTypeIsNotNull() { + addCriterion("report_type is not null"); + return (Criteria) this; + } + + public Criteria andReportTypeEqualTo(Byte value) { + addCriterion("report_type =", value, "reportType"); + return (Criteria) this; + } + + public Criteria andReportTypeNotEqualTo(Byte value) { + addCriterion("report_type <>", value, "reportType"); + return (Criteria) this; + } + + public Criteria andReportTypeGreaterThan(Byte value) { + addCriterion("report_type >", value, "reportType"); + return (Criteria) this; + } + + public Criteria andReportTypeGreaterThanOrEqualTo(Byte value) { + addCriterion("report_type >=", value, "reportType"); + return (Criteria) this; + } + + public Criteria andReportTypeLessThan(Byte value) { + addCriterion("report_type <", value, "reportType"); + return (Criteria) this; + } + + public Criteria andReportTypeLessThanOrEqualTo(Byte value) { + addCriterion("report_type <=", value, "reportType"); + return (Criteria) this; + } + + public Criteria andReportTypeIn(List values) { + addCriterion("report_type in", values, "reportType"); + return (Criteria) this; + } + + public Criteria andReportTypeNotIn(List values) { + addCriterion("report_type not in", values, "reportType"); + return (Criteria) this; + } + + public Criteria andReportTypeBetween(Byte value1, Byte value2) { + addCriterion("report_type between", value1, value2, "reportType"); + return (Criteria) this; + } + + public Criteria andReportTypeNotBetween(Byte value1, Byte value2) { + addCriterion("report_type not between", value1, value2, "reportType"); + return (Criteria) this; + } + public Criteria andOperatorIsNull() { addCriterion("operator is null"); return (Criteria) this; diff --git a/tcm/src/main/java/com/ccsens/tcm/persist/mapper/PatientRecordMapper.java b/tcm/src/main/java/com/ccsens/tcm/persist/mapper/PatientRecordMapper.java index b440ffb7..986419f8 100644 --- a/tcm/src/main/java/com/ccsens/tcm/persist/mapper/PatientRecordMapper.java +++ b/tcm/src/main/java/com/ccsens/tcm/persist/mapper/PatientRecordMapper.java @@ -1,30 +1,30 @@ package com.ccsens.tcm.persist.mapper; -import com.ccsens.tcm.bean.po.PatientRecord; -import com.ccsens.tcm.bean.po.PatientRecordExample; +import com.ccsens.tcm.bean.po.patientRecord; +import com.ccsens.tcm.bean.po.patientRecordExample; import java.util.List; import org.apache.ibatis.annotations.Param; -public interface PatientRecordMapper { - long countByExample(PatientRecordExample example); +public interface patientRecordMapper { + long countByExample(patientRecordExample example); - int deleteByExample(PatientRecordExample example); + int deleteByExample(patientRecordExample example); int deleteByPrimaryKey(Long id); - int insert(PatientRecord record); + int insert(patientRecord record); - int insertSelective(PatientRecord record); + int insertSelective(patientRecord record); - List selectByExample(PatientRecordExample example); + List selectByExample(patientRecordExample example); - PatientRecord selectByPrimaryKey(Long id); + patientRecord selectByPrimaryKey(Long id); - int updateByExampleSelective(@Param("record") PatientRecord record, @Param("example") PatientRecordExample example); + int updateByExampleSelective(@Param("record") patientRecord record, @Param("example") patientRecordExample example); - int updateByExample(@Param("record") PatientRecord record, @Param("example") PatientRecordExample example); + int updateByExample(@Param("record") patientRecord record, @Param("example") patientRecordExample example); - int updateByPrimaryKeySelective(PatientRecord record); + int updateByPrimaryKeySelective(patientRecord record); - int updateByPrimaryKey(PatientRecord record); + int updateByPrimaryKey(patientRecord record); } \ No newline at end of file diff --git a/tcm/src/main/java/com/ccsens/tcm/service/IPatientService.java b/tcm/src/main/java/com/ccsens/tcm/service/IPatientService.java new file mode 100644 index 00000000..2c8ded0b --- /dev/null +++ b/tcm/src/main/java/com/ccsens/tcm/service/IPatientService.java @@ -0,0 +1,10 @@ +package com.ccsens.tcm.service; + +import com.ccsens.tcm.bean.dto.PatientDto; + +/** + * @author wang + */ +public interface IPatientService { + void savePatient(PatientDto.SavePatient 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 new file mode 100644 index 00000000..9176cef6 --- /dev/null +++ b/tcm/src/main/java/com/ccsens/tcm/service/PatientService.java @@ -0,0 +1,31 @@ +package com.ccsens.tcm.service; + +import cn.hutool.core.lang.Snowflake; +import com.ccsens.tcm.bean.dto.PatientDto; +import com.ccsens.tcm.bean.po.PatientInformation; +import com.ccsens.tcm.persist.mapper.PatientInformationMapper; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; + +@Slf4j +@Service +@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class) +public class PatientService implements IPatientService { + @Resource + private PatientInformationMapper patientInformationMapper; + @Resource + private Snowflake snowflake; + + @Override + public void savePatient(PatientDto.SavePatient param, Long userId) { + PatientInformation patientInformation=new PatientInformation(); + BeanUtils.copyProperties(param,patientInformation); + patientInformation.setId(snowflake.nextId()); + patientInformationMapper.insertSelective(patientInformation); + } +} diff --git a/tcm/src/main/resources/mapper_raw/PatientRecordMapper.xml b/tcm/src/main/resources/mapper_raw/PatientRecordMapper.xml index 047d1a87..bc6b0c7b 100644 --- a/tcm/src/main/resources/mapper_raw/PatientRecordMapper.xml +++ b/tcm/src/main/resources/mapper_raw/PatientRecordMapper.xml @@ -1,13 +1,14 @@ - - + + + @@ -71,10 +72,10 @@ - id, patient_id, test_questions_id, contents, user_id, collect_time, created_at, update_at, - rec_status + id, patient_id, test_questions_id, contents, user_id, collect_time, time_slot, created_at, + update_at, rec_status - select distinct @@ -98,28 +99,31 @@ delete from t_patient_record where id = #{id,jdbcType=BIGINT} - + delete from t_patient_record - - insert into t_patient_record (id, patient_id, test_questions_id, - contents, user_id, collect_time, + + + SELECT LAST_INSERT_ID() + + insert into t_patient_record (patient_id, test_questions_id, contents, + user_id, collect_time, time_slot, created_at, update_at, rec_status ) - values (#{id,jdbcType=BIGINT}, #{patientId,jdbcType=INTEGER}, #{testQuestionsId,jdbcType=INTEGER}, - #{contents,jdbcType=VARCHAR}, #{userId,jdbcType=BIGINT}, #{collectTime,jdbcType=INTEGER}, + values (#{patientId,jdbcType=INTEGER}, #{testQuestionsId,jdbcType=INTEGER}, #{contents,jdbcType=VARCHAR}, + #{userId,jdbcType=BIGINT}, #{collectTime,jdbcType=INTEGER}, #{timeSlot,jdbcType=TIMESTAMP}, #{createdAt,jdbcType=TIMESTAMP}, #{updateAt,jdbcType=TIMESTAMP}, #{recStatus,jdbcType=TINYINT} ) - + + + SELECT LAST_INSERT_ID() + insert into t_patient_record - - id, - patient_id, @@ -135,6 +139,9 @@ collect_time, + + time_slot, + created_at, @@ -146,9 +153,6 @@ - - #{id,jdbcType=BIGINT}, - #{patientId,jdbcType=INTEGER}, @@ -164,6 +168,9 @@ #{collectTime,jdbcType=INTEGER}, + + #{timeSlot,jdbcType=TIMESTAMP}, + #{createdAt,jdbcType=TIMESTAMP}, @@ -175,7 +182,7 @@ - select count(*) from t_patient_record @@ -202,6 +209,9 @@ collect_time = #{record.collectTime,jdbcType=INTEGER}, + + time_slot = #{record.timeSlot,jdbcType=TIMESTAMP}, + created_at = #{record.createdAt,jdbcType=TIMESTAMP}, @@ -224,6 +234,7 @@ contents = #{record.contents,jdbcType=VARCHAR}, user_id = #{record.userId,jdbcType=BIGINT}, collect_time = #{record.collectTime,jdbcType=INTEGER}, + time_slot = #{record.timeSlot,jdbcType=TIMESTAMP}, created_at = #{record.createdAt,jdbcType=TIMESTAMP}, update_at = #{record.updateAt,jdbcType=TIMESTAMP}, rec_status = #{record.recStatus,jdbcType=TINYINT} @@ -231,7 +242,7 @@ - + update t_patient_record @@ -249,6 +260,9 @@ collect_time = #{collectTime,jdbcType=INTEGER}, + + time_slot = #{timeSlot,jdbcType=TIMESTAMP}, + created_at = #{createdAt,jdbcType=TIMESTAMP}, @@ -261,13 +275,14 @@ where id = #{id,jdbcType=BIGINT} - + update t_patient_record set patient_id = #{patientId,jdbcType=INTEGER}, test_questions_id = #{testQuestionsId,jdbcType=INTEGER}, contents = #{contents,jdbcType=VARCHAR}, user_id = #{userId,jdbcType=BIGINT}, collect_time = #{collectTime,jdbcType=INTEGER}, + time_slot = #{timeSlot,jdbcType=TIMESTAMP}, created_at = #{createdAt,jdbcType=TIMESTAMP}, update_at = #{updateAt,jdbcType=TIMESTAMP}, rec_status = #{recStatus,jdbcType=TINYINT} diff --git a/tcm/src/main/resources/mapper_raw/ReportCodeMapper.xml b/tcm/src/main/resources/mapper_raw/ReportCodeMapper.xml index 5310c71d..d0dc5c98 100644 --- a/tcm/src/main/resources/mapper_raw/ReportCodeMapper.xml +++ b/tcm/src/main/resources/mapper_raw/ReportCodeMapper.xml @@ -5,11 +5,12 @@ - + + @@ -74,8 +75,8 @@ - id, code, name, parent_id, must, level, sort, remark, operator, created_at, updated_at, - rec_status + id, code, name, parent_code, must, level, sort, remark, report_type, operator, created_at, + updated_at, rec_status