Merge remote-tracking branch 'origin/dev_2.0.0' into dev_2.0.0

dev_2.0.0
liu 1 year ago
commit 732c568a2d

@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler;
import org.apache.ibatis.reflection.MetaObject;
import org.springframework.stereotype.Component;
import java.util.Date;
import java.time.LocalDateTime;
/**
* @author ljt on 2022/08/13.
@ -16,13 +16,13 @@ public class MyBatisMetaObjectHandler implements MetaObjectHandler {
@Override
public void insertFill(MetaObject metaObject) {
//属性名称,不是字段名称
this.setFieldValByName("createTime", new Date(), metaObject);
this.setFieldValByName("updateTime", new Date(), metaObject);
this.setFieldValByName("createTime", LocalDateTime.now(), metaObject);
this.setFieldValByName("updateTime", LocalDateTime.now(), metaObject);
}
@Override
public void updateFill(MetaObject metaObject) {
// 使用MP进行修改操作该方法执行
this.setFieldValByName("updateTime", new Date(), metaObject);
this.setFieldValByName("updateTime", LocalDateTime.now(), metaObject);
}
}

@ -2,6 +2,8 @@ package com.supervision.mapper;
import com.supervision.model.ProcessMedical;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.supervision.vo.ask.ProcessMedicalResVo;
import org.apache.ibatis.annotations.Param;
/**
* @author flevance
@ -11,6 +13,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
*/
public interface ProcessMedicalMapper extends BaseMapper<ProcessMedical> {
ProcessMedicalResVo findByProcessId(@Param("processId") String processId);
}

@ -1,12 +1,10 @@
package com.supervision.model;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.List;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@ -38,6 +36,9 @@ public class Process implements Serializable {
@ApiModelProperty("疾病ID")
private String diseaseId;
@ApiModelProperty("问诊编号")
private String processNo;
/**
* ID
*/

@ -1,9 +1,7 @@
package com.supervision.model;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.*;
import java.io.Serializable;
import java.time.LocalDateTime;
import lombok.Data;
@ -21,6 +19,11 @@ public class ProcessMedical implements Serializable {
@TableId
private String id;
/**
* id
*/
private String processId;
/**
* ID
*/
@ -41,21 +44,44 @@ public class ProcessMedical implements Serializable {
*/
private String patientSelfDesc;
/**
*
*/
private String personalHistory;
/**
*
*/
private String illnessHistory;
/**
* 0 1
*/
private Integer allergyHistoryFlag;
/**
*
*/
private String allergyHistory;
/**
* 0 1
*/
private Integer previousHistoryFlag;
/**
*
*/
private String previousHistory;
/**
* 0 1
*/
private Integer familyHistoryFlag;
/**
*
*/
@ -66,6 +92,16 @@ public class ProcessMedical implements Serializable {
*/
private String marriageChildHistory;
/**
* 0 1
*/
private Integer operationHistoryFlag;
/**
*
*/
private String operationHistory;
/**
* ID
*/
@ -84,6 +120,7 @@ public class ProcessMedical implements Serializable {
/**
*
*/
@TableField(fill = FieldFill.INSERT)
private LocalDateTime updateTime;
@TableField(exist = false)

@ -2,6 +2,7 @@ package com.supervision.service;
import com.supervision.model.ProcessMedical;
import com.baomidou.mybatisplus.extension.service.IService;
import com.supervision.vo.ask.ProcessMedicalResVo;
/**
* @author flevance
@ -10,4 +11,5 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
public interface ProcessMedicalService extends IService<ProcessMedical> {
ProcessMedicalResVo findByProcessId(String processId);
}

@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.supervision.model.ProcessMedical;
import com.supervision.service.ProcessMedicalService;
import com.supervision.mapper.ProcessMedicalMapper;
import com.supervision.vo.ask.ProcessMedicalResVo;
import org.springframework.stereotype.Service;
/**
@ -15,6 +16,11 @@ import org.springframework.stereotype.Service;
public class ProcessMedicalServiceImpl extends ServiceImpl<ProcessMedicalMapper, ProcessMedical>
implements ProcessMedicalService{
@Override
public ProcessMedicalResVo findByProcessId(String processId) {
return super.getBaseMapper().findByProcessId(processId);
}
}

@ -0,0 +1,84 @@
package com.supervision.vo.ask;
import com.supervision.model.ProcessMedical;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.time.LocalDateTime;
@Data
@EqualsAndHashCode(callSuper = true)
public class ProcessMedicalResVo extends ProcessMedical {
/**
*
*/
private String processNo;
/**
*
*/
private String medicalRecNo;
/**
*
*/
private LocalDateTime recentTime;
/**
*
*/
private String patientName;
/**
* 0: 1:
*/
private String patientGender;
/**
*
*/
private Integer patientAge;
/**
* 0: 1:
*/
private String patientMarriage;
/**
*
*/
private String patientProfession;
/**
*
*/
private String patientPhone;
/**
*
*/
private String nativePlace;
/**
*
*/
private String patientNation;
/**
*
*/
private String patientPostcode;
/**
*
*/
private String patientBirthplace;
/**
*
*/
private String patientHabitation;
}

@ -9,6 +9,7 @@
<result property="patientId" column="patient_id" jdbcType="VARCHAR"/>
<result property="medicalRecId" column="medical_rec_id" jdbcType="VARCHAR"/>
<result property="userId" column="user_id" jdbcType="VARCHAR"/>
<result property="processNo" column="process_no" jdbcType="VARCHAR"/>
<result property="status" column="status" jdbcType="INTEGER"/>
<result property="processType" column="process_type" jdbcType="INTEGER"/>
<result property="createUserId" column="create_user_id" jdbcType="VARCHAR"/>
@ -19,7 +20,7 @@
<sql id="Base_Column_List">
id
,patient_id,user_id,status,process_type,
,process_no,patient_id,user_id,status,process_type,
create_user_id,create_time,update_user_id,update_time
</sql>

@ -5,27 +5,66 @@
<mapper namespace="com.supervision.mapper.ProcessMedicalMapper">
<resultMap id="BaseResultMap" type="com.supervision.model.ProcessMedical">
<id property="id" column="id" jdbcType="VARCHAR"/>
<result property="medicalRecId" column="medical_rec_id" jdbcType="VARCHAR"/>
<result property="patientId" column="patient_id" jdbcType="VARCHAR"/>
<result property="diseaseId" column="disease_id" jdbcType="VARCHAR"/>
<result property="patientSelfDesc" column="patient_self_desc" jdbcType="VARCHAR"/>
<result property="illnessHistory" column="illness_history" jdbcType="VARCHAR"/>
<result property="allergyHistory" column="allergy_history" jdbcType="VARCHAR"/>
<result property="previousHistory" column="previous_history" jdbcType="VARCHAR"/>
<result property="familyHistory" column="family_history" jdbcType="VARCHAR"/>
<result property="marriageChildHistory" column="marriage_child_history" jdbcType="VARCHAR"/>
<result property="createUserId" column="create_user_id" jdbcType="VARCHAR"/>
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
<result property="updateUserId" column="update_user_id" jdbcType="VARCHAR"/>
<result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
<id property="id" column="id" jdbcType="VARCHAR"/>
<result property="medicalRecId" column="medical_rec_id" jdbcType="VARCHAR"/>
<result property="processId" column="process_id" jdbcType="VARCHAR"/>
<result property="patientId" column="patient_id" jdbcType="VARCHAR"/>
<result property="diseaseId" column="disease_id" jdbcType="VARCHAR"/>
<result property="patientSelfDesc" column="patient_self_desc" jdbcType="VARCHAR"/>
<result property="illnessHistory" column="illness_history" jdbcType="VARCHAR"/>
<result property="allergyHistoryFlag" column="allergy_history_flag" jdbcType="INTEGER"/>
<result property="personalHistory" column="personal_history" jdbcType="VARCHAR"/>
<result property="allergyHistory" column="allergy_history" jdbcType="VARCHAR"/>
<result property="previousHistory" column="previous_history" jdbcType="VARCHAR"/>
<result property="previousHistoryFlag" column="previous_history_flag" jdbcType="INTEGER"/>
<result property="familyHistory" column="family_history" jdbcType="VARCHAR"/>
<result property="familyHistoryFlag" column="family_history_flag" jdbcType="INTEGER"/>
<result property="marriageChildHistory" column="marriage_child_history" jdbcType="VARCHAR"/>
<result property="operationHistoryFlag" column="operation_history_flag" jdbcType="INTEGER"/>
<result property="operationHistory" column="operation_history" jdbcType="VARCHAR"/>
<result property="createUserId" column="create_user_id" jdbcType="VARCHAR"/>
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
<result property="updateUserId" column="update_user_id" jdbcType="VARCHAR"/>
<result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
</resultMap>
<sql id="Base_Column_List">
id,medical_rec_id,patient_id,
disease_id,patient_self_desc,illness_history,
allergy_history,previous_history,family_history,
marriage_child_history,create_user_id,create_time,
update_user_id,update_time
id,medical_rec_id,process_id,
patient_id,disease_id,patient_self_desc,
illness_history,allergy_history_flag,personal_history,
allergy_history,previous_history,previous_history_flag,
family_history,family_history_flag,marriage_child_history,
operation_history_flag,operation_history,create_user_id,
create_time,update_user_id,update_time
</sql>
<select id="findByProcessId" resultType="com.supervision.vo.ask.ProcessMedicalResVo">
select pr.process_no as processNo,
pr.update_time as recentTime,
mr.id as medicalRecId,
mr.no as medicalRecNo,
mr.patient_name as patientName,
mr.patient_gender as patientGender,
mr.patient_age as patientAge,
mr.patient_marriage as patientMarriage,
mr.native_place as nativePlace,
mr.patient_phone as patientPhone,
mr.patient_birthplace as patientBirthplace,
mr.patient_habitation as patientHabitation,
mr.patient_postcode as patientHabitation,
mr.patient_profession as patientProfession,
mr.patient_nation as patientNation,
pm.patient_self_desc as patientNation,
pm.illness_history as illnessHistory,
pm.allergy_history_flag as allergyHistoryFlag,
pm.allergy_history as allergyHistory,
pm.personal_history as personalHistory,
pm.family_history_flag as familyHistoryFlag,
pm.family_history as familyHistory,
pm.previous_history_flag as previousHistoryFlag,
pm.previous_history as previousHistory
from vp_process_medical pm
left join vp_medical_rec mr on pm.medical_rec_id = mr.id
left join vp_process pr on pm.process_id = pr.id
where pm.process_id = #{processId}
</select>
</mapper>

@ -0,0 +1,48 @@
package com.supervision.controller;
import cn.hutool.core.util.StrUtil;
import com.supervision.exception.BusinessException;
import com.supervision.model.DiagnosisQaRecord;
import com.supervision.model.ProcessMedical;
import com.supervision.service.MedicalRecordService;
import com.supervision.vo.ask.ProcessMedicalResVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@Slf4j
@Api(tags = "电子病例")
@RestController
@RequestMapping("medicalRecord")
@RequiredArgsConstructor
public class MedicalRecordController {
private final MedicalRecordService medicalRecordService;
@ApiOperation("新增电子病例信息")
@PostMapping("save")
public boolean saveMedicalRecord(@RequestBody ProcessMedical processMedical){
return medicalRecordService.saveMedicalRecord(processMedical);
}
@ApiOperation("更新电子病例信息")
@PutMapping("update")
public boolean updateMedicalRecord(@RequestBody ProcessMedical processMedical){
return medicalRecordService.updateMedicalRecord(processMedical);
}
@ApiOperation("通过流程id查询电子病例信息")
@GetMapping("findByProcessId")
public ProcessMedicalResVo findByProcessId(@ApiParam("流程id") @RequestParam("processId") String processId){
return medicalRecordService.findByProcessId(processId);
}
}

@ -0,0 +1,15 @@
package com.supervision.service;
import com.supervision.model.DiagnosisQaRecord;
import com.supervision.model.ProcessMedical;
import com.supervision.vo.ask.ProcessMedicalResVo;
import java.util.List;
public interface MedicalRecordService {
boolean saveMedicalRecord(ProcessMedical processMedical);
ProcessMedicalResVo findByProcessId(String processId);
boolean updateMedicalRecord(ProcessMedical processMedical);
}

@ -0,0 +1,56 @@
package com.supervision.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.lang.Assert;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.supervision.model.ProcessMedical;
import com.supervision.service.MedicalRecordService;
import com.supervision.service.ProcessMedicalService;
import com.supervision.service.ProcessService;
import com.supervision.vo.ask.ProcessMedicalResVo;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
@RequiredArgsConstructor
@Slf4j
public class MedicalRecordServiceImpl implements MedicalRecordService {
private final ProcessMedicalService processMedicalService;
@Override
public boolean saveMedicalRecord(ProcessMedical processMedical) {
saveAssert(processMedical);
return processMedicalService.save(processMedical);
}
@Override
public ProcessMedicalResVo findByProcessId(String processId) {
Assert.notEmpty(processId,"流程id不允许为空");
return processMedicalService.findByProcessId(processId);
}
@Override
public boolean updateMedicalRecord(ProcessMedical processMedical) {
Assert.notEmpty(processMedical.getId(),"id 不能为空");
return processMedicalService.updateById(processMedical);
}
private void saveAssert(ProcessMedical processMedical){
Assert.notEmpty(processMedical.getProcessId(),"流程id不为空");
Assert.notEmpty(processMedical.getMedicalRecId(),"病例id不能为空");
Assert.notEmpty(processMedical.getPatientId(),"病人id不能为空");
Integer count = processMedicalService.lambdaQuery().eq(ProcessMedical::getProcessId, processMedical.getProcessId()).count();
Assert.isFalse(count > 0,"当前实例已经存在电子病例信息");
}
}
Loading…
Cancel
Save