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.entity.diagnosis.dto.ChargeQueueQuery;
|
||||
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.patient.vo.SeeDoctorInfoVo;
|
||||
import com.syjiaer.clinic.server.service.diagnosis.MedicalRecordService;
|
||||
|
|
@ -55,7 +56,7 @@ public class MedicalRecordController extends BaseController {
|
|||
* 获取收费队列
|
||||
*/
|
||||
@RequestMapping("/getChargeQueue")
|
||||
public Result<Page<MedicalRecordVo>> getChargeQueue() {
|
||||
public Result<Page<ChargeQueueVo>> getChargeQueue() {
|
||||
ChargeQueueQuery query = parmsUtil.getObject("query", ChargeQueueQuery.class);
|
||||
|
||||
return success( medicalRecordService.getChargeQueue(query));
|
||||
|
|
@ -70,5 +71,11 @@ public class MedicalRecordController extends BaseController {
|
|||
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.dto.ChargeQueueQuery;
|
||||
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.item.Item;
|
||||
import com.syjiaer.clinic.server.entity.manager.ManagerUser;
|
||||
|
|
@ -78,18 +79,19 @@ public class MedicalRecordService extends BaseService {
|
|||
@Autowired
|
||||
private DiagnosisMapper diagnosisMapper;
|
||||
@Autowired
|
||||
private PatientInfoMapper patientInfoMapper;
|
||||
private PatientInfoMapper patientInfoMapper;
|
||||
|
||||
/*
|
||||
* 保存
|
||||
* @param saveDto 病历信息
|
||||
* 保存
|
||||
* @param saveDto 病历信息
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void save(MedicalRecordSaveDto saveDto) {
|
||||
|
||||
//改变挂号单状态
|
||||
PatientRegistration dbRegis = patientRegistrationMapper.selectById(saveDto.getRegistrationId());
|
||||
if (dbRegis == null){
|
||||
throw new MessageException("挂号单不存在");
|
||||
PatientRegistration dbRegis = patientRegistrationMapper.selectById(saveDto.getRegistrationId());
|
||||
if (dbRegis == null) {
|
||||
throw new MessageException("挂号单不存在");
|
||||
}
|
||||
PatientRegistration updateRegis = new PatientRegistration();
|
||||
updateRegis.setId(dbRegis.getId());
|
||||
|
|
@ -101,17 +103,17 @@ public class MedicalRecordService extends BaseService {
|
|||
queryWrapper.eq("registration_id", saveDto.getRegistrationId());
|
||||
queryWrapper.last("limit 1");
|
||||
Diagnosis dbDiagnosis = diagnosisMapper.selectOne(queryWrapper);
|
||||
if (dbDiagnosis!=null){
|
||||
diagnosis.setId(dbDiagnosis.getId());
|
||||
if (dbDiagnosis != null) {
|
||||
diagnosis.setId(dbDiagnosis.getId());
|
||||
}
|
||||
String code = StringUtil.getCode("ZD");
|
||||
LocalDateTime now = LocalDateTime.now();
|
||||
BeanUtils.copyProperties(saveDto, diagnosis);
|
||||
diagnosis.setStatus(0);
|
||||
if (diagnosis.getId() == null){
|
||||
if (diagnosis.getId() == null) {
|
||||
diagnosis.setCode(code);
|
||||
diagnosis.setCreateTime(now);
|
||||
}else {
|
||||
} else {
|
||||
code = diagnosis.getCode();
|
||||
}
|
||||
|
||||
|
|
@ -137,8 +139,8 @@ public class MedicalRecordService extends BaseService {
|
|||
itemDetail.setSocialCode(dbItem.getItemSocialCode());
|
||||
itemDetail.setUnit(dbItem.getUnit());
|
||||
itemDetail.setUnitPrice(dbItem.getUnitPrice());
|
||||
if (item.getSelectedNum() == null ||item.getSelectedNum() <= 0){
|
||||
throw new MessageException("["+item.getItemName()+"]数量为0");
|
||||
if (item.getSelectedNum() == null || item.getSelectedNum() <= 0) {
|
||||
throw new MessageException("[" + item.getItemName() + "]数量为0");
|
||||
}
|
||||
itemDetail.setNumber(item.getSelectedNum());
|
||||
itemLists.add(itemDetail);
|
||||
|
|
@ -157,8 +159,8 @@ public class MedicalRecordService extends BaseService {
|
|||
goodsDetail.setUnit(goodsRetailDto.getSelectedUnit());
|
||||
goodsDetail.setUnitPrice(goodsRetailDto.getSelectedPrice());
|
||||
goodsDetail.setNumber(goodsRetailDto.getSelectedNum());
|
||||
if (goodsRetailDto.getSelectedNum() == null ||goodsRetailDto.getSelectedNum() <= 0){
|
||||
throw new MessageException("["+goodsRetailDto.getName()+"]数量为0");
|
||||
if (goodsRetailDto.getSelectedNum() == null || goodsRetailDto.getSelectedNum() <= 0) {
|
||||
throw new MessageException("[" + goodsRetailDto.getName() + "]数量为0");
|
||||
}
|
||||
goodsLists.add(goodsDetail);
|
||||
}
|
||||
|
|
@ -169,6 +171,7 @@ public class MedicalRecordService extends BaseService {
|
|||
|
||||
/**
|
||||
* 根据患者的id查询病历
|
||||
*
|
||||
* @param patientId
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -200,6 +203,7 @@ public class MedicalRecordService extends BaseService {
|
|||
|
||||
/**
|
||||
* 根据挂单号回显病历信息
|
||||
*
|
||||
* @param regisId
|
||||
* @return
|
||||
*/
|
||||
|
|
@ -227,18 +231,18 @@ public class MedicalRecordService extends BaseService {
|
|||
return vo;
|
||||
}
|
||||
|
||||
public void uploadDiagnosis(String diagnosisCode){
|
||||
public void uploadDiagnosis(String diagnosisCode) {
|
||||
Diagnosis diagnosis = diagnosisMapper.selectByCode(diagnosisCode);
|
||||
if (diagnosis == null){
|
||||
if (diagnosis == null) {
|
||||
throw new MessageException("诊断不存在");
|
||||
}
|
||||
|
||||
DiagnosisMedicalRecord diagnosisMedicalRecord = diagnosisMedicalRecordMapper.selectByDiagnosisCode(diagnosisCode);
|
||||
if (diagnosisMedicalRecord == null){
|
||||
if (diagnosisMedicalRecord == null) {
|
||||
throw new MessageException("病历不存在");
|
||||
}
|
||||
PatientRegistration patientRegistration = patientRegistrationMapper.selectById(diagnosis.getRegistrationId());
|
||||
if (patientRegistration == null){
|
||||
if (patientRegistration == null) {
|
||||
throw new MessageException("挂号单不存在");
|
||||
}
|
||||
OrganizationSection section = organizationSectionMapper.selectById(patientRegistration.getOrganizationSectionId());
|
||||
|
|
@ -251,7 +255,7 @@ public class MedicalRecordService extends BaseService {
|
|||
IM2203A.Mdtrtinfo mdtrtinfo = new IM2203A.Mdtrtinfo();
|
||||
mdtrtinfo.setMdtrt_id(patientRegistration.getMdtrtId());
|
||||
mdtrtinfo.setPsn_no(patientRegistration.getPsnNo());
|
||||
mdtrtinfo.setMed_type(config.get("social","medType"));
|
||||
mdtrtinfo.setMed_type(config.get("social", "medType"));
|
||||
mdtrtinfo.setBegntime(curTime);
|
||||
IM2203A.ExpContent expContent = new IM2203A.ExpContent();
|
||||
expContent.setTrum_flag("0");
|
||||
|
|
@ -259,9 +263,9 @@ public class MedicalRecordService extends BaseService {
|
|||
mdtrtinfo.setExp_content(expContent);
|
||||
im2203A.setMdtrtinfo(mdtrtinfo);
|
||||
JSONArray jsonArray = JSONArray.parseArray(diagnosisMedicalRecord.getDiagnosisDetail());
|
||||
int i =0;
|
||||
int i = 0;
|
||||
List<IM2203A.Diseinfo> diagList = new ArrayList<>();
|
||||
for (Object object : jsonArray){
|
||||
for (Object object : jsonArray) {
|
||||
i++;
|
||||
JSONObject json = (JSONObject) object;
|
||||
IM2203A.Diseinfo diag = new IM2203A.Diseinfo();
|
||||
|
|
@ -282,24 +286,27 @@ public class MedicalRecordService extends BaseService {
|
|||
|
||||
|
||||
}
|
||||
/*
|
||||
获取收费队列
|
||||
*/
|
||||
public Page<MedicalRecordVo> getChargeQueue(ChargeQueueQuery query) {
|
||||
|
||||
|
||||
public Page<ChargeQueueVo> getChargeQueue(ChargeQueueQuery query) {
|
||||
QueryWrapper<Diagnosis> queryWrapper = new QueryWrapper<>();
|
||||
if (query.getStatus() != null){
|
||||
if (query.getStatus() != null) {
|
||||
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<>();
|
||||
for (Diagnosis diagnosis : diagnosisList.getList()){
|
||||
MedicalRecordVo vo = new MedicalRecordVo();
|
||||
vo = getDetailByRegisId(diagnosis.getRegistrationId());
|
||||
List<ChargeQueueVo> list = new ArrayList<>();
|
||||
for (Diagnosis diagnosis : diagnosisList.getList()) {
|
||||
ChargeQueueVo vo = new ChargeQueueVo();
|
||||
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);
|
||||
}
|
||||
|
||||
Page<MedicalRecordVo> page = new Page<>();
|
||||
Page<ChargeQueueVo> page = new Page<>();
|
||||
page.setList(list);
|
||||
page.setTotal_page(diagnosisList.getTotal_page());
|
||||
page.setTotal_count(diagnosisList.getTotal_count());
|
||||
|
|
@ -309,7 +316,7 @@ public class MedicalRecordService extends BaseService {
|
|||
public SeeDoctorInfoVo getSeeDockerInfo(Integer regisId) {
|
||||
|
||||
PatientRegistration registration = patientRegistrationMapper.selectById(regisId);
|
||||
if (registration == null){
|
||||
if (registration == null) {
|
||||
throw new MessageException("挂号单不存在");
|
||||
}
|
||||
SeeDoctorInfoVo vo = new SeeDoctorInfoVo();
|
||||
|
|
@ -318,19 +325,24 @@ public class MedicalRecordService extends BaseService {
|
|||
OrganizationMember docker = organizationMemberMapper.selectById(registration.getOrganizationDoctorId());
|
||||
vo.setDockerId(docker.getId());
|
||||
vo.setDockerName(docker.getName());
|
||||
if (docker.getSectionId() != null){
|
||||
if (docker.getSectionId() != null) {
|
||||
OrganizationSection section = organizationSectionMapper.selectById(docker.getSectionId());
|
||||
vo.setSectionName(section.getName());
|
||||
}
|
||||
QueryWrapper<Diagnosis> diagnosisQueryWrapper = new QueryWrapper<>();
|
||||
diagnosisQueryWrapper.eq("patient_id",vo.getPatientInfo().getId());
|
||||
diagnosisQueryWrapper.eq("patient_id", vo.getPatientInfo().getId());
|
||||
diagnosisQueryWrapper.orderByDesc("create_time");
|
||||
List<Diagnosis> diagnosisList = diagnosisMapper.selectList(diagnosisQueryWrapper);
|
||||
if (!diagnosisList.isEmpty()){
|
||||
if (!diagnosisList.isEmpty()) {
|
||||
vo.setLastSeeDoctorTime(diagnosisList.get(0).getCreateTime());
|
||||
vo.setSeeDoctorCount(diagnosisList.size());
|
||||
}
|
||||
vo.setSocialBalance(BigDecimal.ZERO);
|
||||
return vo;
|
||||
}
|
||||
|
||||
public MedicalRecordVo getByDiagnosisCode(String diagnosisCode) {
|
||||
Diagnosis diagnosis = diagnosisMapper.selectByCode(diagnosisCode);
|
||||
return getDetailByRegisId(diagnosis.getRegistrationId());
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue