JAVA全系列 教程
3762个小节阅读:7092.3k
目录
C语言快速入门
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
序号 | 接口名称 | 接口地址 | 请求类型 |
---|---|---|---|
1 | 根据挂号ID查询未支付的处方信息及详情 | /doctor/charge/getNoChargeCareHistoryByRegId/{regId} | get |
参数名称 | 是否必须 |
---|---|
regId | 是 |
返回JSON数据
名称 | 类型 | 其他信息 |
---|---|---|
msg | String | |
code | int | |
data | object | |
├─ careOrders | object [] | item 类型: object |
├─ coId | String | |
├─ coType | String | |
├─ userId | int | |
├─ patientId | String | |
├─ patientName | String | |
├─ chId | String | |
├─ allAmount | int | |
├─ createBy | String | |
├─ createTime | String | |
├─ updateBy | String | |
├─ updateTime | null | |
├─ careOrderItems | Object [] | item 类型: object |
├─ itemId | String | |
├─ coId | String | |
├─ itemRefId | String | |
├─ itemName | String | |
├─ itemType | String | |
├─ num | int | |
├─ price | int | |
├─ amount | int | |
├─ remark | String | |
├─ status | string | |
├─ createTime | String | |
├─ careHistory | object | |
├─ chId | String | |
├─ userId | int | |
├─ userName | String | |
├─ patientId | String | |
├─ patientName | string | |
├─ deptId | int | |
├─ deptName | String | |
├─ receiveType | String | |
├─ isContagious | String | |
├─ careDate | String | |
├─ caseDate | String | |
├─ regId | String | |
├─ caseTitle | String | |
├─ caseResult | String | |
├─ doctorTips | String | |
├─ remark | String |
创建CareHistory、CareOrder、CareOrderItem
创建CareHistoryMapper、CareHistoryMapper.xml、CareOrderMapper、CareOrderMapper.xml、CareOrderItemMapper、CareOrderItemMapper.xml
CareService中增加查询未收费的处方项的方法
x /**
* 根据处方ID查询处方详情信息
* @param coId
* @param status 支付状态
* @return
*/
List<CareOrderItem> queryCareOrderItemsByCoId(String coId,String status);
/**
* 根据挂号单位ID查询对应的病历信息
* @param regId
* @return
*/
CareHistory queryCareHistoryByRegId(String regId);
/**
* 根据病历信息查询处方信息
* @param chId
* @return
*/
List<CareOrder> queryCareOrdersByChId(String chId);
修改CareServiceImple,增加方法实现
xxxxxxxxxx
@Override
public CareHistory queryCareHistoryByRegId(String regId) {
QueryWrapper<CareHistory> qw=new QueryWrapper<>();
qw.eq(CareHistory.COL_REG_ID,regId);
return this.careHistoryMapper.selectOne(qw);
}
@Override
public CareHistory queryCareHistoryByRegId(String regId) {
QueryWrapper<CareHistory> qw=new QueryWrapper<>();
qw.eq(CareHistory.COL_REG_ID,regId);
return this.careHistoryMapper.selectOne(qw);
}
@Override
public List<CareOrderItem> queryCareOrderItemsByCoId(String coId,String status) {
QueryWrapper<CareOrderItem> qw=new QueryWrapper<>();
qw.eq(CareOrderItem.COL_CO_ID,coId);
qw.eq(StringUtils.isNotBlank(status),CareOrderItem.COL_STATUS,status);// 添加的
return this.careOrderItemMapper.selectList(qw);
}
xxxxxxxxxx
package com.bjsxt.controller.doctor;
import ...
@RestController
@RequestMapping("doctor/charge")
public class OrderChargeController {
@Reference
private CareService careService;
@Reference
private OrderChargeService orderChargeService;
/**
* 根据挂号ID查询未支付的处方信息及详情
*/
@GetMapping("getNoChargeCareHistoryByRegId/{regId}")
public AjaxResult getNoChargeCareHistoryByRegId(@PathVariable String regId){
//声明返回的Map对象
Map<String,Object> res=new HashMap<>();
//根据挂号单ID查询病例信息
CareHistory careHistory=this.careService.queryCareHistoryByRegId(regId);
if(null==careHistory){
return AjaxResult.fail("【"+regId+"】的挂号单没有对应的病例信息,请核对后再查询");
}
//放入默认值
res.put("careHistory",careHistory);
res.put("careOrders", Collections.EMPTY_LIST);
//声明一个可以存放careOrders的集合
List<Map<String,Object>> mapList=new ArrayList<>();
//根据病例编号查询处方
List<CareOrder> careOrders=this.careService.queryCareOrdersByChId(careHistory.getChId());
if(careOrders.isEmpty()){
return AjaxResult.fail("【"+regId+"】的挂号单没相关的处方信息,请核对后再查询");
}
for (CareOrder careOrder : careOrders) {
Map<String,Object> beanToMap= BeanUtil.beanToMap(careOrder);
beanToMap.put("careOrderItems",Collections.EMPTY_LIST);
BigDecimal allAmount=new BigDecimal("0");
//根据处方ID查询未支持的处方详情列表
List<CareOrderItem> careOrderItems=this.careService.queryCareOrderItemsByCoId(careOrder.getCoId(), Constants.ORDER_DETAILS_STATUS_0);
//如果当前处方未支付的详情为空 结束当前循环
if(careOrderItems.isEmpty()){
continue;
}else{
//重新计算总价
for (CareOrderItem careOrderItem : careOrderItems) {
allAmount=allAmount.add(careOrderItem.getAmount());
}
beanToMap.put("careOrderItems",careOrderItems);
beanToMap.put("allAmount",allAmount);
mapList.add(beanToMap);
}
}
if(mapList.isEmpty()){
return AjaxResult.fail("【"+regId+"】的挂号单没未支付的处方信息,请核对后再查询");
}else{
res.put("careOrders",mapList);
return AjaxResult.success(res);
}
}
}
根据挂号ID查询未支付的处方信息及详情/doctor/charge/getNoChargeCareHistoryByRegId/{regId}