dev
This commit is contained in:
parent
e8736a3b3f
commit
23d3fc0f90
|
|
@ -1,6 +1,7 @@
|
|||
package com.syjiaer.clinic.server.common.api.input;
|
||||
|
||||
import com.syjiaer.clinic.server.common.api.annotations.IMField;
|
||||
import lombok.Data;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.ToString;
|
||||
|
|
@ -47,7 +48,7 @@ public class IM2203A extends BaseInputModel{
|
|||
@IMField(key = "geso_val", name = "孕周数")
|
||||
private BigDecimal geso_val;
|
||||
@IMField(key = "exp_content", name = "字段扩展")
|
||||
private String exp_content;
|
||||
private ExpContent exp_content;
|
||||
}
|
||||
@Getter
|
||||
@Setter
|
||||
|
|
@ -71,6 +72,27 @@ public class IM2203A extends BaseInputModel{
|
|||
@IMField(key = "vali_flag", name = "有效标志", required = true)
|
||||
private String vali_flag;
|
||||
}
|
||||
@Data
|
||||
public static class ExpContent{
|
||||
@IMField(key = "local_dise", name = "本地病种编码")
|
||||
private String local_dise;
|
||||
@IMField(key = "ifen_flag", name = "传染性标志")
|
||||
private String ifen_flag;
|
||||
@IMField(key = "trum_flag", name = "外伤标志", required = true)
|
||||
private String trum_flag;
|
||||
@IMField(key = "rel_ttp_flag", name = "涉及第三方标志", required = true)
|
||||
private String rel_ttp_flag;
|
||||
@IMField(key = "mdtrt_grp_type", name = "就诊人群类型")
|
||||
private String mdtrt_grp_type;
|
||||
@IMField(key = "elec_bill_code", name = "电子票据代码")
|
||||
private String elec_bill_code;
|
||||
@IMField(key = "elec_billno_code", name = "电子票据号码")
|
||||
private String elec_billno_code;
|
||||
@IMField(key = "otp_er_refl_flag", name = "门诊急诊转诊标志")
|
||||
private String otp_er_refl_flag;
|
||||
@IMField(key = "otp_mulaid_used_flag", name = "门诊共济使用标志")
|
||||
private String otp_mulaid_used_flag;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ package com.syjiaer.clinic.server.controller.diagnosis;
|
|||
import com.syjiaer.clinic.server.common.vo.Result;
|
||||
import com.syjiaer.clinic.server.controller.BaseController;
|
||||
import com.syjiaer.clinic.server.entity.diagnosis.dto.MedicalRecordSaveDto;
|
||||
import com.syjiaer.clinic.server.entity.diagnosis.dto.MedicalRecordVo;
|
||||
import com.syjiaer.clinic.server.entity.diagnosis.vo.MedicalRecordVo;
|
||||
import com.syjiaer.clinic.server.service.diagnosis.MedicalRecordService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
|
|
@ -48,4 +48,12 @@ public class MedicalRecordController extends BaseController {
|
|||
Integer regisId = parmsUtil.getInteger("regisId", "挂单id不能为空");
|
||||
return success(medicalRecordService.getDetailByRegisId(regisId));
|
||||
}
|
||||
/**
|
||||
* 获取收费队列
|
||||
*/
|
||||
// @RequestMapping("/getChargeQueue")
|
||||
// public Result<MedicalRecordVo> getChargeQueue() {
|
||||
//
|
||||
//
|
||||
// }
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableId;
|
|||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.ToString;
|
||||
|
|
@ -39,6 +40,6 @@ public class Diagnosis implements Serializable {
|
|||
@ApiModelProperty("病例流水号")
|
||||
private String code;
|
||||
|
||||
@ApiModelProperty("医生id")
|
||||
private Integer dockerId;
|
||||
@ApiModelProperty("创建时间")
|
||||
private LocalDateTime createTime;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -6,7 +6,6 @@ import com.baomidou.mybatisplus.annotation.TableName;
|
|||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
import lombok.ToString;
|
||||
|
|
@ -57,9 +56,6 @@ public class DiagnosisMedicalRecord implements Serializable {
|
|||
@ApiModelProperty("诊断概况")
|
||||
private String diagnosisSummary;
|
||||
|
||||
@ApiModelProperty("创建日期")
|
||||
private LocalDateTime createDatetime;
|
||||
|
||||
@ApiModelProperty("诊断类别")
|
||||
private String diagType;
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,7 @@
|
|||
package com.syjiaer.clinic.server.entity.diagnosis.dto;
|
||||
|
||||
public class ChargeQueueQuery {
|
||||
private String patientName;
|
||||
private Integer pageNum;
|
||||
private Integer pageSize;
|
||||
}
|
||||
|
|
@ -1,62 +0,0 @@
|
|||
package com.syjiaer.clinic.server.entity.diagnosis.dto;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.syjiaer.clinic.server.entity.diagnosis.DiagnosisMedicalGoodsList;
|
||||
import com.syjiaer.clinic.server.entity.diagnosis.DiagnosisMedicalItemList;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
@Getter
|
||||
@Setter
|
||||
public class MedicalRecordVo {
|
||||
@ApiModelProperty("自增id")
|
||||
@TableId(value = "id", type = IdType.AUTO)
|
||||
private Integer id;
|
||||
|
||||
@ApiModelProperty("患者id")
|
||||
private Integer patientId;
|
||||
|
||||
@ApiModelProperty("主诉")
|
||||
private String mainAppeal;
|
||||
|
||||
@ApiModelProperty("现病史")
|
||||
private String nowMedicalHistory;
|
||||
|
||||
@ApiModelProperty("往病史")
|
||||
private String beforeMedicalHistory;
|
||||
|
||||
@ApiModelProperty("过敏史")
|
||||
private String allergyHistory;
|
||||
|
||||
@ApiModelProperty("体检检查")
|
||||
private String exam;
|
||||
|
||||
@ApiModelProperty("非通用字段")
|
||||
private String json;
|
||||
|
||||
@ApiModelProperty("接诊医生id")
|
||||
private Integer dockerId;
|
||||
|
||||
@ApiModelProperty("接诊医生姓名")
|
||||
private String dockerName;
|
||||
|
||||
@ApiModelProperty("诊断详细数据")
|
||||
private String diagnosisDetail;
|
||||
|
||||
@ApiModelProperty("诊断概况")
|
||||
private String diagnosisSummary;
|
||||
|
||||
@ApiModelProperty("创建日期")
|
||||
private LocalDateTime createDatetime;
|
||||
|
||||
@ApiModelProperty("挂单id")
|
||||
private Integer registrationId;
|
||||
@ApiModelProperty("诊疗服务")
|
||||
private List<DiagnosisMedicalItemList> serviceDetail;
|
||||
@ApiModelProperty("药品耗材")
|
||||
private List<DiagnosisMedicalGoodsList> goodsDetail;
|
||||
}
|
||||
|
|
@ -0,0 +1,40 @@
|
|||
package com.syjiaer.clinic.server.entity.diagnosis.vo;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.syjiaer.clinic.server.entity.diagnosis.DiagnosisMedicalGoodsList;
|
||||
import com.syjiaer.clinic.server.entity.diagnosis.DiagnosisMedicalItemList;
|
||||
import com.syjiaer.clinic.server.entity.diagnosis.DiagnosisMedicalRecord;
|
||||
import com.syjiaer.clinic.server.entity.patient.PatientInfo;
|
||||
import com.syjiaer.clinic.server.entity.patient.PatientRegistration;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Getter;
|
||||
import lombok.Setter;
|
||||
|
||||
import java.util.List;
|
||||
@Getter
|
||||
@Setter
|
||||
public class MedicalRecordVo {
|
||||
@ApiModelProperty("自增id")
|
||||
@TableId(value = "id", type = IdType.AUTO)
|
||||
private Integer id;
|
||||
|
||||
@ApiModelProperty("患者id")
|
||||
private Integer patientId;
|
||||
|
||||
@ApiModelProperty("接诊医生id")
|
||||
private Integer dockerId;
|
||||
|
||||
@ApiModelProperty("挂单id")
|
||||
private Integer registrationId;
|
||||
@ApiModelProperty("挂单信息")
|
||||
private PatientRegistration patientRegistration;
|
||||
@ApiModelProperty("患者信息")
|
||||
private PatientInfo patientInfo;
|
||||
@ApiModelProperty("病例信息")
|
||||
private DiagnosisMedicalRecord diagnosisMedicalRecord;
|
||||
@ApiModelProperty("诊疗服务")
|
||||
private List<DiagnosisMedicalItemList> itemDetail;
|
||||
@ApiModelProperty("药品耗材")
|
||||
private List<DiagnosisMedicalGoodsList> goodsDetail;
|
||||
}
|
||||
|
|
@ -16,7 +16,7 @@ import java.util.List;
|
|||
* @since 2025-04-23
|
||||
*/
|
||||
public interface DiagnosisMedicalItemListMapper extends BaseMapper<DiagnosisMedicalItemList> {
|
||||
@Select("select * from diagnosis_medical_item_list where medical_record_id = #{medicalRecordId}")
|
||||
@Select("select * from diagnosis_medical_item_list where diagnosis_code = #{medicalRecordId}")
|
||||
List<DiagnosisMedicalItemList> listByDiagnosisCode(String code);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ import com.syjiaer.clinic.server.entity.diagnosis.DiagnosisMedicalItemList;
|
|||
import com.syjiaer.clinic.server.entity.diagnosis.DiagnosisMedicalRecord;
|
||||
import com.syjiaer.clinic.server.entity.diagnosis.dto.GoodsRetailDto;
|
||||
import com.syjiaer.clinic.server.entity.diagnosis.dto.MedicalRecordSaveDto;
|
||||
import com.syjiaer.clinic.server.entity.diagnosis.dto.MedicalRecordVo;
|
||||
import com.syjiaer.clinic.server.entity.diagnosis.vo.MedicalRecordVo;
|
||||
import com.syjiaer.clinic.server.entity.organization.OrganizationMember;
|
||||
import com.syjiaer.clinic.server.entity.organization.OrganizationSection;
|
||||
import com.syjiaer.clinic.server.entity.patient.PatientRegistration;
|
||||
|
|
@ -88,9 +88,11 @@ public class MedicalRecordService extends BaseService {
|
|||
//诊断主表
|
||||
Diagnosis diagnosis = new Diagnosis();
|
||||
String code = StringUtil.getCode("ZD");
|
||||
BeanUtils.copyProperties(saveDto, Diagnosis.class);
|
||||
LocalDateTime now = LocalDateTime.now();
|
||||
BeanUtils.copyProperties(saveDto, diagnosis);
|
||||
if (diagnosis.getId() == null){
|
||||
diagnosis.setCode(code);
|
||||
diagnosis.setCreateTime(now);
|
||||
}else {
|
||||
code = diagnosis.getCode();
|
||||
}
|
||||
|
|
@ -100,6 +102,7 @@ public class MedicalRecordService extends BaseService {
|
|||
ManagerUser managerUser = getManagerUser();
|
||||
DiagnosisMedicalRecord diagnosisMedicalRecord = new DiagnosisMedicalRecord();
|
||||
BeanUtils.copyProperties(saveDto.getDiagnosisMedicalRecord(), diagnosisMedicalRecord);
|
||||
diagnosisMedicalRecord.setDiagnosisCode(code);
|
||||
diagnosisMedicalRecordMapper.insertOrUpdate(diagnosisMedicalRecord);
|
||||
|
||||
//服务项目表
|
||||
|
|
@ -154,22 +157,24 @@ public class MedicalRecordService extends BaseService {
|
|||
*/
|
||||
|
||||
public List<MedicalRecordVo> listByPatientId(Integer patientId) {
|
||||
QueryWrapper<DiagnosisMedicalRecord> query = new QueryWrapper<>();
|
||||
QueryWrapper<Diagnosis> query = new QueryWrapper<>();
|
||||
query.eq("patient_id", patientId);
|
||||
query.orderByDesc("create_datetime");
|
||||
query.orderByDesc("create_time");
|
||||
query.last("limit 10");
|
||||
List<DiagnosisMedicalRecord> mrList = diagnosisMedicalRecordMapper.selectList(query);
|
||||
List<Diagnosis> diaList = diagnosisMapper.selectList(query);
|
||||
List<MedicalRecordVo> mrvList = new ArrayList<>();
|
||||
for (DiagnosisMedicalRecord diagnosisMedicalRecord : mrList) {
|
||||
QueryWrapper<DiagnosisMedicalItemList> severQuery = new QueryWrapper<>();
|
||||
for (Diagnosis diaItem : diaList) {
|
||||
|
||||
MedicalRecordVo vo = new MedicalRecordVo();
|
||||
BeanUtils.copyProperties(diagnosisMedicalRecord, vo);
|
||||
severQuery.eq("medical_record_id", diagnosisMedicalRecord.getId());
|
||||
List<DiagnosisMedicalItemList> serverDetail = diagnosisMedicalItemListMapper.selectList(severQuery);
|
||||
vo.setServiceDetail(serverDetail);
|
||||
QueryWrapper<DiagnosisMedicalGoodsList> goodsQuery = new QueryWrapper<>();
|
||||
severQuery.eq("medical_record_id", diagnosisMedicalRecord.getId());
|
||||
List<DiagnosisMedicalGoodsList> goodsDetail = diagnosisMedicalGoodsListMapper.selectList(goodsQuery);
|
||||
BeanUtils.copyProperties(diaItem, vo);
|
||||
|
||||
DiagnosisMedicalRecord diagnosisMedicalRecord = diagnosisMedicalRecordMapper.selectByDiagnosisCode(diaItem.getCode());
|
||||
vo.setDiagnosisMedicalRecord(diagnosisMedicalRecord);
|
||||
|
||||
List<DiagnosisMedicalItemList> serverDetail = diagnosisMedicalItemListMapper.listByDiagnosisCode(diaItem.getCode());
|
||||
vo.setItemDetail(serverDetail);
|
||||
|
||||
List<DiagnosisMedicalGoodsList> goodsDetail = diagnosisMedicalGoodsListMapper.listByDiagnosisCode(diaItem.getCode());
|
||||
vo.setGoodsDetail(goodsDetail);
|
||||
mrvList.add(vo);
|
||||
}
|
||||
|
|
@ -182,19 +187,21 @@ public class MedicalRecordService extends BaseService {
|
|||
* @return
|
||||
*/
|
||||
public MedicalRecordVo getDetailByRegisId(Integer regisId) {
|
||||
QueryWrapper<DiagnosisMedicalRecord> query = new QueryWrapper<>();
|
||||
query.eq("registration_id", regisId);
|
||||
|
||||
DiagnosisMedicalRecord mr = diagnosisMedicalRecordMapper.selectOne(query);
|
||||
QueryWrapper<DiagnosisMedicalItemList> severQuery = new QueryWrapper<>();
|
||||
MedicalRecordVo vo = new MedicalRecordVo();
|
||||
BeanUtils.copyProperties(mr, vo);
|
||||
severQuery.eq("medical_record_id", mr.getId());
|
||||
List<DiagnosisMedicalItemList> serverDetail = diagnosisMedicalItemListMapper.selectList(severQuery);
|
||||
vo.setServiceDetail(serverDetail);
|
||||
QueryWrapper<DiagnosisMedicalGoodsList> goodsQuery = new QueryWrapper<>();
|
||||
goodsQuery.eq("medical_record_id", mr.getId());
|
||||
List<DiagnosisMedicalGoodsList> goodsDetail = diagnosisMedicalGoodsListMapper.selectList(goodsQuery);
|
||||
|
||||
QueryWrapper<Diagnosis> query = new QueryWrapper<>();
|
||||
query.eq("registration_id", regisId);
|
||||
Diagnosis diagnosis = diagnosisMapper.selectOne(query);
|
||||
BeanUtils.copyProperties(diagnosis, vo);
|
||||
|
||||
DiagnosisMedicalRecord diagnosisMedicalRecord = diagnosisMedicalRecordMapper.selectByDiagnosisCode(diagnosis.getCode());
|
||||
vo.setDiagnosisMedicalRecord(diagnosisMedicalRecord);
|
||||
|
||||
List<DiagnosisMedicalItemList> itemDetail = diagnosisMedicalItemListMapper.listByDiagnosisCode(diagnosis.getCode());
|
||||
vo.setItemDetail(itemDetail);
|
||||
|
||||
List<DiagnosisMedicalGoodsList> goodsDetail = diagnosisMedicalGoodsListMapper.listByDiagnosisCode(diagnosis.getCode());
|
||||
vo.setGoodsDetail(goodsDetail);
|
||||
return vo;
|
||||
}
|
||||
|
|
@ -225,6 +232,10 @@ public class MedicalRecordService extends BaseService {
|
|||
mdtrtinfo.setPsn_no(patientRegistration.getPsnNo());
|
||||
mdtrtinfo.setMed_type(config.get("social","medType"));
|
||||
mdtrtinfo.setBegntime(curTime);
|
||||
IM2203A.ExpContent expContent = new IM2203A.ExpContent();
|
||||
expContent.setTrum_flag("0");
|
||||
expContent.setRel_ttp_flag("0");
|
||||
mdtrtinfo.setExp_content(expContent);
|
||||
im2203A.setMdtrtinfo(mdtrtinfo);
|
||||
JSONArray jsonArray = JSONArray.parseArray(diagnosisMedicalRecord.getDiagnosisDetail());
|
||||
int i =0;
|
||||
|
|
@ -245,6 +256,7 @@ public class MedicalRecordService extends BaseService {
|
|||
diagList.add(diag);
|
||||
}
|
||||
im2203A.setDiseinfo(diagList);
|
||||
|
||||
socialRequest.call2203A(im2203A);
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -30,8 +30,8 @@ public class SocialDiagnoseService {
|
|||
@Autowired
|
||||
private SocialDirectoryVersionService socialDirectoryVersionService;
|
||||
|
||||
public String download(int type, String version_name) {
|
||||
List<String[]> tab_list = httpUtil.download(version_name, type);
|
||||
public String download( String version_name) {
|
||||
List<String[]> tab_list = httpUtil.download(version_name, 1307);
|
||||
DateTimeFormatter dateTimeFormatter = DateUtil.getDateTimeFormatter(DateUtil.DATE_TIME_FORMAT);
|
||||
List<SocialDiagnose> list = new ArrayList<>();
|
||||
List<String> codeList = new ArrayList<>();
|
||||
|
|
@ -40,10 +40,15 @@ public class SocialDiagnoseService {
|
|||
if (!flag.equals("1")) {
|
||||
continue;
|
||||
}
|
||||
|
||||
SocialDiagnose socialDiagnose = new SocialDiagnose();
|
||||
String code = line_array[10];
|
||||
String name = line_array[11];
|
||||
if (code==null || code.isEmpty() || name == null || name.isEmpty()){
|
||||
continue;
|
||||
}
|
||||
socialDiagnose.setCode(code);
|
||||
socialDiagnose.setName(line_array[11]);
|
||||
socialDiagnose.setName(name);
|
||||
socialDiagnose.setVersionName(line_array[22]);
|
||||
socialDiagnose.setCreateDatetime(LocalDateTime.parse(line_array[20], dateTimeFormatter));
|
||||
socialDiagnose.setUpdateDatetime(LocalDateTime.parse(line_array[21], dateTimeFormatter));
|
||||
|
|
@ -54,7 +59,7 @@ public class SocialDiagnoseService {
|
|||
queryWrapper.in("code", codeList);
|
||||
socialDiagnoseMapper.delete(queryWrapper);
|
||||
socialDiagnoseMapper.insert(list, 100);
|
||||
socialDirectoryVersionService.setSocialDirectoryVersion(type, version_name, list.get(0).getVersionName(), list.size());
|
||||
socialDirectoryVersionService.setSocialDirectoryVersion(1307, version_name, list.get(0).getVersionName(), list.size());
|
||||
return list.get(0).getVersionName();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -15,8 +15,8 @@ class ServerApplicationTests {
|
|||
private SocialDiagnoseService socialDiagnoseService;
|
||||
@Test
|
||||
void contextLoads() {
|
||||
socialDiagnoseService.download(1307,"0");
|
||||
|
||||
// medicalRecordService.uploadDiagnosis("ZD20250424105340459612");
|
||||
socialDiagnoseService.download("0");
|
||||
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue