deb
This commit is contained in:
parent
885a482bf3
commit
e35fc0536e
|
|
@ -108,4 +108,5 @@ public class ChargeController extends BaseController {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,7 @@ import com.syjiaer.clinic.server.common.vo.Result;
|
||||||
import com.syjiaer.clinic.server.controller.BaseController;
|
import com.syjiaer.clinic.server.controller.BaseController;
|
||||||
import com.syjiaer.clinic.server.entity.diagnosis.dto.ChargeQueueQuery;
|
import com.syjiaer.clinic.server.entity.diagnosis.dto.ChargeQueueQuery;
|
||||||
import com.syjiaer.clinic.server.entity.diagnosis.dto.MedicalRecordSaveDto;
|
import com.syjiaer.clinic.server.entity.diagnosis.dto.MedicalRecordSaveDto;
|
||||||
|
import com.syjiaer.clinic.server.entity.diagnosis.vo.ChargeQueueVo;
|
||||||
import com.syjiaer.clinic.server.entity.diagnosis.vo.MedicalRecordVo;
|
import com.syjiaer.clinic.server.entity.diagnosis.vo.MedicalRecordVo;
|
||||||
import com.syjiaer.clinic.server.entity.patient.vo.SeeDoctorInfoVo;
|
import com.syjiaer.clinic.server.entity.patient.vo.SeeDoctorInfoVo;
|
||||||
import com.syjiaer.clinic.server.service.diagnosis.MedicalRecordService;
|
import com.syjiaer.clinic.server.service.diagnosis.MedicalRecordService;
|
||||||
|
|
@ -55,7 +56,7 @@ public class MedicalRecordController extends BaseController {
|
||||||
* 获取收费队列
|
* 获取收费队列
|
||||||
*/
|
*/
|
||||||
@RequestMapping("/getChargeQueue")
|
@RequestMapping("/getChargeQueue")
|
||||||
public Result<Page<MedicalRecordVo>> getChargeQueue() {
|
public Result<Page<ChargeQueueVo>> getChargeQueue() {
|
||||||
ChargeQueueQuery query = parmsUtil.getObject("query", ChargeQueueQuery.class);
|
ChargeQueueQuery query = parmsUtil.getObject("query", ChargeQueueQuery.class);
|
||||||
|
|
||||||
return success( medicalRecordService.getChargeQueue(query));
|
return success( medicalRecordService.getChargeQueue(query));
|
||||||
|
|
@ -70,5 +71,11 @@ public class MedicalRecordController extends BaseController {
|
||||||
return success( medicalRecordService.getSeeDockerInfo(regisId));
|
return success( medicalRecordService.getSeeDockerInfo(regisId));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@RequestMapping("/getByDiagnosisCode")
|
||||||
|
public Result<MedicalRecordVo> getByDiagnosisCode() {
|
||||||
|
String diagnosisCode = parmsUtil.getString("diagnosisCode", "诊断code不能为空");
|
||||||
|
return success( medicalRecordService.getByDiagnosisCode(diagnosisCode));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,33 @@
|
||||||
|
package com.syjiaer.clinic.server.entity.diagnosis.vo;
|
||||||
|
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
@Data
|
||||||
|
public class ChargeQueueVo {
|
||||||
|
|
||||||
|
@ApiModelProperty("自增id")
|
||||||
|
private Integer id;
|
||||||
|
|
||||||
|
@ApiModelProperty("患者id")
|
||||||
|
private Integer patientId;
|
||||||
|
|
||||||
|
@ApiModelProperty("诊断code")
|
||||||
|
private String code;
|
||||||
|
|
||||||
|
@ApiModelProperty("挂单id")
|
||||||
|
private Integer registrationId;
|
||||||
|
@ApiModelProperty("状态")
|
||||||
|
private Integer status;
|
||||||
|
@ApiModelProperty("创建时间")
|
||||||
|
private LocalDateTime createTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("患者名称")
|
||||||
|
private String patientName;
|
||||||
|
@ApiModelProperty("患者性别")
|
||||||
|
private Integer patientGender;
|
||||||
|
}
|
||||||
|
|
@ -15,6 +15,7 @@ import com.syjiaer.clinic.server.entity.charge.vo.ChargeItemListVo;
|
||||||
import com.syjiaer.clinic.server.entity.diagnosis.Diagnosis;
|
import com.syjiaer.clinic.server.entity.diagnosis.Diagnosis;
|
||||||
import com.syjiaer.clinic.server.entity.diagnosis.dto.ChargeQueueQuery;
|
import com.syjiaer.clinic.server.entity.diagnosis.dto.ChargeQueueQuery;
|
||||||
import com.syjiaer.clinic.server.entity.diagnosis.dto.ItemRetailDto;
|
import com.syjiaer.clinic.server.entity.diagnosis.dto.ItemRetailDto;
|
||||||
|
import com.syjiaer.clinic.server.entity.diagnosis.vo.ChargeQueueVo;
|
||||||
import com.syjiaer.clinic.server.entity.goods.Goods;
|
import com.syjiaer.clinic.server.entity.goods.Goods;
|
||||||
import com.syjiaer.clinic.server.entity.item.Item;
|
import com.syjiaer.clinic.server.entity.item.Item;
|
||||||
import com.syjiaer.clinic.server.entity.manager.ManagerUser;
|
import com.syjiaer.clinic.server.entity.manager.ManagerUser;
|
||||||
|
|
@ -79,6 +80,7 @@ public class MedicalRecordService extends BaseService {
|
||||||
private DiagnosisMapper diagnosisMapper;
|
private DiagnosisMapper diagnosisMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
private PatientInfoMapper patientInfoMapper;
|
private PatientInfoMapper patientInfoMapper;
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* 保存
|
* 保存
|
||||||
* @param saveDto 病历信息
|
* @param saveDto 病历信息
|
||||||
|
|
@ -88,7 +90,7 @@ public class MedicalRecordService extends BaseService {
|
||||||
|
|
||||||
//改变挂号单状态
|
//改变挂号单状态
|
||||||
PatientRegistration dbRegis = patientRegistrationMapper.selectById(saveDto.getRegistrationId());
|
PatientRegistration dbRegis = patientRegistrationMapper.selectById(saveDto.getRegistrationId());
|
||||||
if (dbRegis == null){
|
if (dbRegis == null) {
|
||||||
throw new MessageException("挂号单不存在");
|
throw new MessageException("挂号单不存在");
|
||||||
}
|
}
|
||||||
PatientRegistration updateRegis = new PatientRegistration();
|
PatientRegistration updateRegis = new PatientRegistration();
|
||||||
|
|
@ -101,17 +103,17 @@ public class MedicalRecordService extends BaseService {
|
||||||
queryWrapper.eq("registration_id", saveDto.getRegistrationId());
|
queryWrapper.eq("registration_id", saveDto.getRegistrationId());
|
||||||
queryWrapper.last("limit 1");
|
queryWrapper.last("limit 1");
|
||||||
Diagnosis dbDiagnosis = diagnosisMapper.selectOne(queryWrapper);
|
Diagnosis dbDiagnosis = diagnosisMapper.selectOne(queryWrapper);
|
||||||
if (dbDiagnosis!=null){
|
if (dbDiagnosis != null) {
|
||||||
diagnosis.setId(dbDiagnosis.getId());
|
diagnosis.setId(dbDiagnosis.getId());
|
||||||
}
|
}
|
||||||
String code = StringUtil.getCode("ZD");
|
String code = StringUtil.getCode("ZD");
|
||||||
LocalDateTime now = LocalDateTime.now();
|
LocalDateTime now = LocalDateTime.now();
|
||||||
BeanUtils.copyProperties(saveDto, diagnosis);
|
BeanUtils.copyProperties(saveDto, diagnosis);
|
||||||
diagnosis.setStatus(0);
|
diagnosis.setStatus(0);
|
||||||
if (diagnosis.getId() == null){
|
if (diagnosis.getId() == null) {
|
||||||
diagnosis.setCode(code);
|
diagnosis.setCode(code);
|
||||||
diagnosis.setCreateTime(now);
|
diagnosis.setCreateTime(now);
|
||||||
}else {
|
} else {
|
||||||
code = diagnosis.getCode();
|
code = diagnosis.getCode();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -137,8 +139,8 @@ public class MedicalRecordService extends BaseService {
|
||||||
itemDetail.setSocialCode(dbItem.getItemSocialCode());
|
itemDetail.setSocialCode(dbItem.getItemSocialCode());
|
||||||
itemDetail.setUnit(dbItem.getUnit());
|
itemDetail.setUnit(dbItem.getUnit());
|
||||||
itemDetail.setUnitPrice(dbItem.getUnitPrice());
|
itemDetail.setUnitPrice(dbItem.getUnitPrice());
|
||||||
if (item.getSelectedNum() == null ||item.getSelectedNum() <= 0){
|
if (item.getSelectedNum() == null || item.getSelectedNum() <= 0) {
|
||||||
throw new MessageException("["+item.getItemName()+"]数量为0");
|
throw new MessageException("[" + item.getItemName() + "]数量为0");
|
||||||
}
|
}
|
||||||
itemDetail.setNumber(item.getSelectedNum());
|
itemDetail.setNumber(item.getSelectedNum());
|
||||||
itemLists.add(itemDetail);
|
itemLists.add(itemDetail);
|
||||||
|
|
@ -157,8 +159,8 @@ public class MedicalRecordService extends BaseService {
|
||||||
goodsDetail.setUnit(goodsRetailDto.getSelectedUnit());
|
goodsDetail.setUnit(goodsRetailDto.getSelectedUnit());
|
||||||
goodsDetail.setUnitPrice(goodsRetailDto.getSelectedPrice());
|
goodsDetail.setUnitPrice(goodsRetailDto.getSelectedPrice());
|
||||||
goodsDetail.setNumber(goodsRetailDto.getSelectedNum());
|
goodsDetail.setNumber(goodsRetailDto.getSelectedNum());
|
||||||
if (goodsRetailDto.getSelectedNum() == null ||goodsRetailDto.getSelectedNum() <= 0){
|
if (goodsRetailDto.getSelectedNum() == null || goodsRetailDto.getSelectedNum() <= 0) {
|
||||||
throw new MessageException("["+goodsRetailDto.getName()+"]数量为0");
|
throw new MessageException("[" + goodsRetailDto.getName() + "]数量为0");
|
||||||
}
|
}
|
||||||
goodsLists.add(goodsDetail);
|
goodsLists.add(goodsDetail);
|
||||||
}
|
}
|
||||||
|
|
@ -169,6 +171,7 @@ public class MedicalRecordService extends BaseService {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据患者的id查询病历
|
* 根据患者的id查询病历
|
||||||
|
*
|
||||||
* @param patientId
|
* @param patientId
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
|
|
@ -200,6 +203,7 @@ public class MedicalRecordService extends BaseService {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据挂单号回显病历信息
|
* 根据挂单号回显病历信息
|
||||||
|
*
|
||||||
* @param regisId
|
* @param regisId
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
|
|
@ -227,18 +231,18 @@ public class MedicalRecordService extends BaseService {
|
||||||
return vo;
|
return vo;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void uploadDiagnosis(String diagnosisCode){
|
public void uploadDiagnosis(String diagnosisCode) {
|
||||||
Diagnosis diagnosis = diagnosisMapper.selectByCode(diagnosisCode);
|
Diagnosis diagnosis = diagnosisMapper.selectByCode(diagnosisCode);
|
||||||
if (diagnosis == null){
|
if (diagnosis == null) {
|
||||||
throw new MessageException("诊断不存在");
|
throw new MessageException("诊断不存在");
|
||||||
}
|
}
|
||||||
|
|
||||||
DiagnosisMedicalRecord diagnosisMedicalRecord = diagnosisMedicalRecordMapper.selectByDiagnosisCode(diagnosisCode);
|
DiagnosisMedicalRecord diagnosisMedicalRecord = diagnosisMedicalRecordMapper.selectByDiagnosisCode(diagnosisCode);
|
||||||
if (diagnosisMedicalRecord == null){
|
if (diagnosisMedicalRecord == null) {
|
||||||
throw new MessageException("病历不存在");
|
throw new MessageException("病历不存在");
|
||||||
}
|
}
|
||||||
PatientRegistration patientRegistration = patientRegistrationMapper.selectById(diagnosis.getRegistrationId());
|
PatientRegistration patientRegistration = patientRegistrationMapper.selectById(diagnosis.getRegistrationId());
|
||||||
if (patientRegistration == null){
|
if (patientRegistration == null) {
|
||||||
throw new MessageException("挂号单不存在");
|
throw new MessageException("挂号单不存在");
|
||||||
}
|
}
|
||||||
OrganizationSection section = organizationSectionMapper.selectById(patientRegistration.getOrganizationSectionId());
|
OrganizationSection section = organizationSectionMapper.selectById(patientRegistration.getOrganizationSectionId());
|
||||||
|
|
@ -251,7 +255,7 @@ public class MedicalRecordService extends BaseService {
|
||||||
IM2203A.Mdtrtinfo mdtrtinfo = new IM2203A.Mdtrtinfo();
|
IM2203A.Mdtrtinfo mdtrtinfo = new IM2203A.Mdtrtinfo();
|
||||||
mdtrtinfo.setMdtrt_id(patientRegistration.getMdtrtId());
|
mdtrtinfo.setMdtrt_id(patientRegistration.getMdtrtId());
|
||||||
mdtrtinfo.setPsn_no(patientRegistration.getPsnNo());
|
mdtrtinfo.setPsn_no(patientRegistration.getPsnNo());
|
||||||
mdtrtinfo.setMed_type(config.get("social","medType"));
|
mdtrtinfo.setMed_type(config.get("social", "medType"));
|
||||||
mdtrtinfo.setBegntime(curTime);
|
mdtrtinfo.setBegntime(curTime);
|
||||||
IM2203A.ExpContent expContent = new IM2203A.ExpContent();
|
IM2203A.ExpContent expContent = new IM2203A.ExpContent();
|
||||||
expContent.setTrum_flag("0");
|
expContent.setTrum_flag("0");
|
||||||
|
|
@ -259,9 +263,9 @@ public class MedicalRecordService extends BaseService {
|
||||||
mdtrtinfo.setExp_content(expContent);
|
mdtrtinfo.setExp_content(expContent);
|
||||||
im2203A.setMdtrtinfo(mdtrtinfo);
|
im2203A.setMdtrtinfo(mdtrtinfo);
|
||||||
JSONArray jsonArray = JSONArray.parseArray(diagnosisMedicalRecord.getDiagnosisDetail());
|
JSONArray jsonArray = JSONArray.parseArray(diagnosisMedicalRecord.getDiagnosisDetail());
|
||||||
int i =0;
|
int i = 0;
|
||||||
List<IM2203A.Diseinfo> diagList = new ArrayList<>();
|
List<IM2203A.Diseinfo> diagList = new ArrayList<>();
|
||||||
for (Object object : jsonArray){
|
for (Object object : jsonArray) {
|
||||||
i++;
|
i++;
|
||||||
JSONObject json = (JSONObject) object;
|
JSONObject json = (JSONObject) object;
|
||||||
IM2203A.Diseinfo diag = new IM2203A.Diseinfo();
|
IM2203A.Diseinfo diag = new IM2203A.Diseinfo();
|
||||||
|
|
@ -282,24 +286,27 @@ public class MedicalRecordService extends BaseService {
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
/*
|
|
||||||
获取收费队列
|
|
||||||
*/
|
public Page<ChargeQueueVo> getChargeQueue(ChargeQueueQuery query) {
|
||||||
public Page<MedicalRecordVo> getChargeQueue(ChargeQueueQuery query) {
|
|
||||||
QueryWrapper<Diagnosis> queryWrapper = new QueryWrapper<>();
|
QueryWrapper<Diagnosis> queryWrapper = new QueryWrapper<>();
|
||||||
if (query.getStatus() != null){
|
if (query.getStatus() != null) {
|
||||||
queryWrapper.eq("status", query.getStatus());
|
queryWrapper.eq("status", query.getStatus());
|
||||||
}
|
}
|
||||||
Page<Diagnosis> diagnosisList =pageHelper(query.getPageNum(), query.getPageSize(),queryWrapper,diagnosisMapper,"create_time", false);
|
Page<Diagnosis> diagnosisList = pageHelper(query.getPageNum(), query.getPageSize(), queryWrapper, diagnosisMapper, "create_time", false);
|
||||||
|
|
||||||
List<MedicalRecordVo> list = new ArrayList<>();
|
List<ChargeQueueVo> list = new ArrayList<>();
|
||||||
for (Diagnosis diagnosis : diagnosisList.getList()){
|
for (Diagnosis diagnosis : diagnosisList.getList()) {
|
||||||
MedicalRecordVo vo = new MedicalRecordVo();
|
ChargeQueueVo vo = new ChargeQueueVo();
|
||||||
vo = getDetailByRegisId(diagnosis.getRegistrationId());
|
BeanUtils.copyProperties(diagnosis, vo);
|
||||||
|
PatientRegistration registration = patientRegistrationMapper.selectById(diagnosis.getRegistrationId());
|
||||||
|
vo.setPatientId(registration.getPatientInfoId());
|
||||||
|
vo.setPatientName(registration.getName());
|
||||||
|
vo.setPatientGender(registration.getGender());
|
||||||
list.add(vo);
|
list.add(vo);
|
||||||
}
|
}
|
||||||
|
|
||||||
Page<MedicalRecordVo> page = new Page<>();
|
Page<ChargeQueueVo> page = new Page<>();
|
||||||
page.setList(list);
|
page.setList(list);
|
||||||
page.setTotal_page(diagnosisList.getTotal_page());
|
page.setTotal_page(diagnosisList.getTotal_page());
|
||||||
page.setTotal_count(diagnosisList.getTotal_count());
|
page.setTotal_count(diagnosisList.getTotal_count());
|
||||||
|
|
@ -309,7 +316,7 @@ public class MedicalRecordService extends BaseService {
|
||||||
public SeeDoctorInfoVo getSeeDockerInfo(Integer regisId) {
|
public SeeDoctorInfoVo getSeeDockerInfo(Integer regisId) {
|
||||||
|
|
||||||
PatientRegistration registration = patientRegistrationMapper.selectById(regisId);
|
PatientRegistration registration = patientRegistrationMapper.selectById(regisId);
|
||||||
if (registration == null){
|
if (registration == null) {
|
||||||
throw new MessageException("挂号单不存在");
|
throw new MessageException("挂号单不存在");
|
||||||
}
|
}
|
||||||
SeeDoctorInfoVo vo = new SeeDoctorInfoVo();
|
SeeDoctorInfoVo vo = new SeeDoctorInfoVo();
|
||||||
|
|
@ -318,19 +325,24 @@ public class MedicalRecordService extends BaseService {
|
||||||
OrganizationMember docker = organizationMemberMapper.selectById(registration.getOrganizationDoctorId());
|
OrganizationMember docker = organizationMemberMapper.selectById(registration.getOrganizationDoctorId());
|
||||||
vo.setDockerId(docker.getId());
|
vo.setDockerId(docker.getId());
|
||||||
vo.setDockerName(docker.getName());
|
vo.setDockerName(docker.getName());
|
||||||
if (docker.getSectionId() != null){
|
if (docker.getSectionId() != null) {
|
||||||
OrganizationSection section = organizationSectionMapper.selectById(docker.getSectionId());
|
OrganizationSection section = organizationSectionMapper.selectById(docker.getSectionId());
|
||||||
vo.setSectionName(section.getName());
|
vo.setSectionName(section.getName());
|
||||||
}
|
}
|
||||||
QueryWrapper<Diagnosis> diagnosisQueryWrapper = new QueryWrapper<>();
|
QueryWrapper<Diagnosis> diagnosisQueryWrapper = new QueryWrapper<>();
|
||||||
diagnosisQueryWrapper.eq("patient_id",vo.getPatientInfo().getId());
|
diagnosisQueryWrapper.eq("patient_id", vo.getPatientInfo().getId());
|
||||||
diagnosisQueryWrapper.orderByDesc("create_time");
|
diagnosisQueryWrapper.orderByDesc("create_time");
|
||||||
List<Diagnosis> diagnosisList = diagnosisMapper.selectList(diagnosisQueryWrapper);
|
List<Diagnosis> diagnosisList = diagnosisMapper.selectList(diagnosisQueryWrapper);
|
||||||
if (!diagnosisList.isEmpty()){
|
if (!diagnosisList.isEmpty()) {
|
||||||
vo.setLastSeeDoctorTime(diagnosisList.get(0).getCreateTime());
|
vo.setLastSeeDoctorTime(diagnosisList.get(0).getCreateTime());
|
||||||
vo.setSeeDoctorCount(diagnosisList.size());
|
vo.setSeeDoctorCount(diagnosisList.size());
|
||||||
}
|
}
|
||||||
vo.setSocialBalance(BigDecimal.ZERO);
|
vo.setSocialBalance(BigDecimal.ZERO);
|
||||||
return vo;
|
return vo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public MedicalRecordVo getByDiagnosisCode(String diagnosisCode) {
|
||||||
|
Diagnosis diagnosis = diagnosisMapper.selectByCode(diagnosisCode);
|
||||||
|
return getDetailByRegisId(diagnosis.getRegistrationId());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue