Compare commits
2 Commits
9f0edc3329
...
e8736a3b3f
| Author | SHA1 | Date |
|---|---|---|
|
|
e8736a3b3f | |
|
|
4237959387 |
|
|
@ -15,24 +15,25 @@ import org.springframework.web.bind.annotation.RestController;
|
||||||
public class ChargeController extends BaseController {
|
public class ChargeController extends BaseController {
|
||||||
@Autowired
|
@Autowired
|
||||||
private ChargeService chargeService;
|
private ChargeService chargeService;
|
||||||
// @RequestMapping("/save")
|
@RequestMapping("/save")
|
||||||
// public Result<Object> save() {
|
public Result<Object> save() {
|
||||||
// ChargeOrderDto dto = parmsUtil.getObject("data", ChargeOrderDto.class);
|
ChargeOrderDto dto = parmsUtil.getObject("data", ChargeOrderDto.class);
|
||||||
// ChargeOrder chargeOrder = chargeService.updateOrCreate(dto);
|
// ChargeOrder chargeOrder = chargeService.updateOrCreate(dto);
|
||||||
// return success(chargeOrder.getId());
|
// return success(chargeOrder.getId());
|
||||||
// }
|
return success();
|
||||||
//
|
}
|
||||||
// @RequestMapping("/list")
|
|
||||||
// public Result<Object> list() {
|
@RequestMapping("/list")
|
||||||
// ChargeQuery chargeQuery = parmsUtil.getObject("query", ChargeQuery.class);
|
public Result<Object> list() {
|
||||||
// return success(chargeService.pageList(chargeQuery));
|
ChargeQuery chargeQuery = parmsUtil.getObject("query", ChargeQuery.class);
|
||||||
// }
|
return success(chargeService.pageList(chargeQuery));
|
||||||
//
|
}
|
||||||
// @RequestMapping("/completeOrder")
|
|
||||||
// public Result<Object> completeOrder() {
|
@RequestMapping("/completeOrder")
|
||||||
// Integer id = parmsUtil.getInteger("id");
|
public Result<Object> completeOrder() {
|
||||||
// Integer payType = parmsUtil.getInteger("payType");
|
Integer id = parmsUtil.getInteger("id");
|
||||||
// chargeService.completeOrder(id,payType);
|
Integer payType = parmsUtil.getInteger("payType");
|
||||||
// return success();
|
chargeService.completeOrder(id,payType);
|
||||||
// }
|
return success();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,10 +1,10 @@
|
||||||
package com.syjiaer.clinic.server.controller.medical;
|
package com.syjiaer.clinic.server.controller.diagnosis;
|
||||||
|
|
||||||
import com.syjiaer.clinic.server.common.vo.Result;
|
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.medical.dto.MedicalRecordSaveDto;
|
import com.syjiaer.clinic.server.entity.diagnosis.dto.MedicalRecordSaveDto;
|
||||||
import com.syjiaer.clinic.server.entity.medical.dto.MedicalRecordVo;
|
import com.syjiaer.clinic.server.entity.diagnosis.dto.MedicalRecordVo;
|
||||||
import com.syjiaer.clinic.server.service.medical.MedicalRecordService;
|
import com.syjiaer.clinic.server.service.diagnosis.MedicalRecordService;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
@ -0,0 +1,25 @@
|
||||||
|
package com.syjiaer.clinic.server.controller.social;
|
||||||
|
|
||||||
|
import com.syjiaer.clinic.server.common.vo.Result;
|
||||||
|
import com.syjiaer.clinic.server.controller.BaseController;
|
||||||
|
import com.syjiaer.clinic.server.entity.social.SocialDiagnose;
|
||||||
|
import com.syjiaer.clinic.server.entity.social.SocialDirectory;
|
||||||
|
import com.syjiaer.clinic.server.service.social.SocialDiagnoseService;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/social/diagnose")
|
||||||
|
public class SocialDiagnoseController extends BaseController {
|
||||||
|
@Autowired
|
||||||
|
private SocialDiagnoseService socialDiagnoseService;
|
||||||
|
@RequestMapping("search")
|
||||||
|
public Result<List<SocialDiagnose>> getDiagnosis() {
|
||||||
|
String keyword = parmsUtil.getString("keyword");
|
||||||
|
List<SocialDiagnose> diagnosis = socialDiagnoseService.getDiagnosis(keyword);
|
||||||
|
return success(diagnosis);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -81,12 +81,7 @@ public class SocialDirectoryController extends BaseController {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@RequestMapping("getDiagnosis")
|
|
||||||
public Result<List<SocialDirectory>> getDiagnosis() {
|
|
||||||
String keyword = parmsUtil.getString("keyword");
|
|
||||||
List<SocialDirectory> diagnosis = socialDirectoryService.getDiagnosis(keyword);
|
|
||||||
return success(diagnosis);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,119 @@
|
||||||
|
package com.syjiaer.clinic.server.controller.statistics;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
|
import com.syjiaer.clinic.server.common.util.DateUtil;
|
||||||
|
import com.syjiaer.clinic.server.common.vo.Result;
|
||||||
|
import com.syjiaer.clinic.server.controller.BaseController;
|
||||||
|
import com.syjiaer.clinic.server.entity.goods.Goods;
|
||||||
|
import com.syjiaer.clinic.server.entity.statistics.PersonPayOverviewVo;
|
||||||
|
import com.syjiaer.clinic.server.entity.statistics.RevenueOverviewVo;
|
||||||
|
import com.syjiaer.clinic.server.service.goods.GoodsService;
|
||||||
|
import com.syjiaer.clinic.server.service.inventory.InventoryService;
|
||||||
|
import com.syjiaer.clinic.server.service.statistics.StatisticsService;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.time.LocalDate;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
@RequestMapping("/statistics")
|
||||||
|
@RestController
|
||||||
|
public class StatisticsController extends BaseController {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private StatisticsService statisticsService;
|
||||||
|
@Autowired
|
||||||
|
private InventoryService inventoryService;
|
||||||
|
@Autowired
|
||||||
|
private GoodsService goodsService;
|
||||||
|
|
||||||
|
@RequestMapping("getRevenueOverview")
|
||||||
|
public Result<RevenueOverviewVo> getRevenueOverview() {
|
||||||
|
String begin = parmsUtil.getString("beginTime", "开始时间为空");
|
||||||
|
String end = parmsUtil.getString("endTime", "结束时间为空");
|
||||||
|
LocalDateTime beginTime = DateUtil.getDateTime(begin);
|
||||||
|
LocalDateTime endTime = DateUtil.getDateTime(end);
|
||||||
|
|
||||||
|
// RevenueOverviewVo revenueOverview = statisticsService.getRevenueOverview(beginTime, endTime);
|
||||||
|
// return success(revenueOverview);
|
||||||
|
return success();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@RequestMapping("numberEarlyWarning")
|
||||||
|
public Result<List<Goods>> numberEarlyWarning() {
|
||||||
|
// QueryWrapper<Inventory> inventoryQuery = new QueryWrapper<>();
|
||||||
|
// inventoryQuery.select("good_id,name,packaging_unit,min_packaging_unit,sum(whole_number) as whole_number,sum(fragment_number) as fragment_number");
|
||||||
|
// inventoryQuery.groupBy("good_id,name,packaging_unit,min_packaging_unit");
|
||||||
|
// inventoryQuery.having(" sum(whole_number)<"+ Constants.numberWarningLimit);
|
||||||
|
// inventoryQuery.orderByAsc("whole_number");
|
||||||
|
// List<Map<String,Object>> maps = iInventoryService.listMaps(inventoryQuery);
|
||||||
|
QueryWrapper<Goods> goodsQuery = new QueryWrapper<>();
|
||||||
|
goodsQuery.apply("inventory_whole_number <= inventory_warn_number");
|
||||||
|
List<Goods> list = goodsService.list(goodsQuery);
|
||||||
|
return success(list);
|
||||||
|
}
|
||||||
|
|
||||||
|
@RequestMapping("expiryDateWarning")
|
||||||
|
public Result<List<Map<String, Object>>> expiryDateWarning0() {
|
||||||
|
// QueryWrapper<InventoryGoodsView> inventoryQuery = new QueryWrapper<>();
|
||||||
|
// inventoryQuery.select("*,EXTRACT(EPOCH FROM AGE(expiry_date,CURRENT_DATE))/" + Constants.OneDaySecond + " as remaining_days");
|
||||||
|
// inventoryQuery.apply("CURRENT_DATE + INTERVAL '1 day' * expiry_warn_days >= expiry_date");
|
||||||
|
// inventoryQuery.orderByAsc("expiry_date");
|
||||||
|
//
|
||||||
|
// List<Map<String, Object>> maps = iInventoryGoodsViewService.listMaps(inventoryQuery);
|
||||||
|
// return success(maps);
|
||||||
|
return success();
|
||||||
|
}
|
||||||
|
|
||||||
|
@RequestMapping("getPersonPayOverview")
|
||||||
|
public Result<PersonPayOverviewVo> getPersonPayOverview() {
|
||||||
|
// String begin = parmsUtil.getString("beginTime", "开始时间为空");
|
||||||
|
// String end = parmsUtil.getString("endTime", "结束时间为空");
|
||||||
|
// LocalDateTime beginTime = DateUtil.getDateTime(begin);
|
||||||
|
// LocalDateTime endTime = DateUtil.getDateTime(end);
|
||||||
|
// QueryWrapper<RetailOrder> vipQuery = new QueryWrapper<>();
|
||||||
|
// vipQuery.select("create_date,sum(total_price)");
|
||||||
|
// vipQuery.ge("pay_time", beginTime);
|
||||||
|
// vipQuery.le("pay_time", endTime);
|
||||||
|
//
|
||||||
|
// vipQuery.groupBy("create_date");
|
||||||
|
// vipQuery.orderByAsc("create_date");
|
||||||
|
// vipQuery.isNotNull("vip_id");
|
||||||
|
// List<Map<String, Object>> vipMaps = retailOrderService.listMaps(vipQuery);
|
||||||
|
// QueryWrapper<RetailOrder> commonQuery = new QueryWrapper<>();
|
||||||
|
// commonQuery.select("create_date,sum(total_price)");
|
||||||
|
// commonQuery.ge("pay_time", beginTime);
|
||||||
|
// commonQuery.le("pay_time", endTime);
|
||||||
|
//
|
||||||
|
// commonQuery.groupBy("create_date");
|
||||||
|
// commonQuery.orderByAsc("create_date");
|
||||||
|
// commonQuery.isNull("vip_id");
|
||||||
|
// List<Map<String, Object>> commonMaps = retailOrderService.listMaps(commonQuery);
|
||||||
|
// List<LocalDate> dateList = DateUtil.getDatesBetween(beginTime, endTime);
|
||||||
|
// Map<Object, BigDecimal> tempMap = new HashMap<>();
|
||||||
|
// for (LocalDate date : dateList) {
|
||||||
|
// tempMap.put(date.toString(), BigDecimal.ZERO);
|
||||||
|
// }
|
||||||
|
// for (Map<String, Object> map : vipMaps) {
|
||||||
|
// tempMap.put(map.get("create_date").toString(), (BigDecimal) map.get("sum"));
|
||||||
|
// }
|
||||||
|
// PersonPayOverviewVo personPayOverview = new PersonPayOverviewVo();
|
||||||
|
// personPayOverview.setDateList(dateList.stream().map(LocalDate::toString).toList());
|
||||||
|
// personPayOverview.setVipPrice(new ArrayList<>(tempMap.values()));
|
||||||
|
// for (Map<String, Object> map : commonMaps) {
|
||||||
|
// tempMap.put(map.get("create_date").toString(), (BigDecimal) map.get("sum"));
|
||||||
|
// }
|
||||||
|
// personPayOverview.setCommonPrice(new ArrayList<>(tempMap.values()));
|
||||||
|
|
||||||
|
return success();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -15,19 +15,19 @@ import lombok.ToString;
|
||||||
import lombok.experimental.Accessors;
|
import lombok.experimental.Accessors;
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
*
|
* 收费服务详情
|
||||||
* </p>
|
* </p>
|
||||||
*
|
*
|
||||||
* @author NiuZiYuan
|
* @author NiuZiYuan
|
||||||
* @since 2025-04-22
|
* @since 2025-04-24
|
||||||
*/
|
*/
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
@ToString
|
@ToString
|
||||||
@Accessors(chain = true)
|
@Accessors(chain = true)
|
||||||
@TableName("charge_service_list")
|
@TableName("charge_item_list")
|
||||||
@ApiModel(value = "ChargeServiceList对象", description = "")
|
@ApiModel(value = "ChargeItemList对象", description = "收费服务详情")
|
||||||
public class ChargeServiceList implements Serializable {
|
public class ChargeItemList implements Serializable {
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
package com.syjiaer.clinic.server.entity.charge.dto;
|
package com.syjiaer.clinic.server.entity.charge.dto;
|
||||||
|
|
||||||
import com.syjiaer.clinic.server.entity.charge.ChargeServiceList;
|
import com.syjiaer.clinic.server.entity.charge.ChargeItemList;
|
||||||
import com.syjiaer.clinic.server.entity.charge.vo.ChargeGoodsListVo;
|
import com.syjiaer.clinic.server.entity.charge.vo.ChargeGoodsListVo;
|
||||||
import com.syjiaer.clinic.server.entity.medical.MedicalRecord;
|
import com.syjiaer.clinic.server.entity.diagnosis.DiagnosisMedicalRecord;
|
||||||
import com.syjiaer.clinic.server.entity.patient.PatientInfo;
|
import com.syjiaer.clinic.server.entity.patient.PatientInfo;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
|
|
@ -24,8 +24,8 @@ public class ChargeOrderDto {
|
||||||
private Long salePersonId;
|
private Long salePersonId;
|
||||||
private Long medicalRecordId;
|
private Long medicalRecordId;
|
||||||
private PatientInfo patientInfo;
|
private PatientInfo patientInfo;
|
||||||
private MedicalRecord medicalRecord;
|
private DiagnosisMedicalRecord diagnosisMedicalRecord;
|
||||||
private List<ChargeServiceList> serviceDetail;
|
private List<ChargeItemList> serviceDetail;
|
||||||
private List<ChargeGoodsListVo> goodsDetail;
|
private List<ChargeGoodsListVo> goodsDetail;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,7 @@
|
||||||
package com.syjiaer.clinic.server.entity.charge.vo;
|
package com.syjiaer.clinic.server.entity.charge.vo;
|
||||||
|
|
||||||
import com.syjiaer.clinic.server.entity.charge.ChargeGoodsList;
|
import com.syjiaer.clinic.server.entity.charge.ChargeItemList;
|
||||||
import com.syjiaer.clinic.server.entity.charge.ChargeServiceList;
|
import com.syjiaer.clinic.server.entity.diagnosis.DiagnosisMedicalRecord;
|
||||||
import com.syjiaer.clinic.server.entity.medical.MedicalRecord;
|
|
||||||
import com.syjiaer.clinic.server.entity.medical.dto.MedicalRecordVo;
|
|
||||||
import com.syjiaer.clinic.server.entity.patient.PatientInfo;
|
import com.syjiaer.clinic.server.entity.patient.PatientInfo;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
@ -55,12 +53,12 @@ public class ChargeDetailVo {
|
||||||
@ApiModelProperty("患者姓名")
|
@ApiModelProperty("患者姓名")
|
||||||
private String patientName;
|
private String patientName;
|
||||||
@ApiModelProperty
|
@ApiModelProperty
|
||||||
private MedicalRecord medicalRecord;
|
private DiagnosisMedicalRecord diagnosisMedicalRecord;
|
||||||
@ApiModelProperty("患者信息")
|
@ApiModelProperty("患者信息")
|
||||||
private PatientInfo patientInfo;
|
private PatientInfo patientInfo;
|
||||||
|
|
||||||
@ApiModelProperty("诊疗服务")
|
@ApiModelProperty("诊疗服务")
|
||||||
private List<ChargeServiceList> serviceDetail;
|
private List<ChargeItemList> serviceDetail;
|
||||||
@ApiModelProperty("药品耗材")
|
@ApiModelProperty("药品耗材")
|
||||||
private List<ChargeGoodsListVo> goodsDetail;
|
private List<ChargeGoodsListVo> goodsDetail;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,44 @@
|
||||||
|
package com.syjiaer.clinic.server.entity.diagnosis;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import java.io.Serializable;
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.Setter;
|
||||||
|
import lombok.ToString;
|
||||||
|
import lombok.experimental.Accessors;
|
||||||
|
/**
|
||||||
|
* <p>
|
||||||
|
*
|
||||||
|
* </p>
|
||||||
|
*
|
||||||
|
* @author NiuZiYuan
|
||||||
|
* @since 2025-04-24
|
||||||
|
*/
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
@ToString
|
||||||
|
@Accessors(chain = true)
|
||||||
|
@ApiModel(value = "Diagnosis对象", description = "")
|
||||||
|
public class Diagnosis implements Serializable {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("主键id")
|
||||||
|
@TableId(value = "id", type = IdType.AUTO)
|
||||||
|
private Integer id;
|
||||||
|
|
||||||
|
@ApiModelProperty("患者id")
|
||||||
|
private Integer patientId;
|
||||||
|
|
||||||
|
@ApiModelProperty("挂单id")
|
||||||
|
private Integer registrationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("病例流水号")
|
||||||
|
private String code;
|
||||||
|
|
||||||
|
@ApiModelProperty("医生id")
|
||||||
|
private Integer dockerId;
|
||||||
|
}
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
package com.syjiaer.clinic.server.entity.medical;
|
package com.syjiaer.clinic.server.entity.diagnosis;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.IdType;
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
|
@ -13,19 +13,19 @@ import lombok.ToString;
|
||||||
import lombok.experimental.Accessors;
|
import lombok.experimental.Accessors;
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
*
|
* 病例商品详情
|
||||||
* </p>
|
* </p>
|
||||||
*
|
*
|
||||||
* @author NiuZiYuan
|
* @author NiuZiYuan
|
||||||
* @since 2025-04-23
|
* @since 2025-04-24
|
||||||
*/
|
*/
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
@ToString
|
@ToString
|
||||||
@Accessors(chain = true)
|
@Accessors(chain = true)
|
||||||
@TableName("medical_goods_list")
|
@TableName("diagnosis_medical_goods_list")
|
||||||
@ApiModel(value = "MedicalGoodsList对象", description = "")
|
@ApiModel(value = "DiagnosisMedicalGoodsList对象", description = "病例商品详情")
|
||||||
public class MedicalGoodsList implements Serializable {
|
public class DiagnosisMedicalGoodsList implements Serializable {
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
|
@ -48,8 +48,8 @@ public class MedicalGoodsList implements Serializable {
|
||||||
@ApiModelProperty("商品单价")
|
@ApiModelProperty("商品单价")
|
||||||
private BigDecimal unitPrice;
|
private BigDecimal unitPrice;
|
||||||
|
|
||||||
@ApiModelProperty("病例id")
|
@ApiModelProperty("诊断code")
|
||||||
private Integer medicalRecordId;
|
private String diagnosisCode;
|
||||||
|
|
||||||
@ApiModelProperty("药品数量")
|
@ApiModelProperty("药品数量")
|
||||||
private Integer number;
|
private Integer number;
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
package com.syjiaer.clinic.server.entity.medical;
|
package com.syjiaer.clinic.server.entity.diagnosis;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.IdType;
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
|
@ -13,19 +13,19 @@ import lombok.ToString;
|
||||||
import lombok.experimental.Accessors;
|
import lombok.experimental.Accessors;
|
||||||
/**
|
/**
|
||||||
* <p>
|
* <p>
|
||||||
*
|
* 病例服务详情
|
||||||
* </p>
|
* </p>
|
||||||
*
|
*
|
||||||
* @author NiuZiYuan
|
* @author NiuZiYuan
|
||||||
* @since 2025-04-23
|
* @since 2025-04-24
|
||||||
*/
|
*/
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
@ToString
|
@ToString
|
||||||
@Accessors(chain = true)
|
@Accessors(chain = true)
|
||||||
@TableName("medical_item_list")
|
@TableName("diagnosis_medical_item_list")
|
||||||
@ApiModel(value = "MedicalItemList对象", description = "")
|
@ApiModel(value = "DiagnosisMedicalItemList对象", description = "病例服务详情")
|
||||||
public class MedicalItemList implements Serializable {
|
public class DiagnosisMedicalItemList implements Serializable {
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
|
@ -48,8 +48,8 @@ public class MedicalItemList implements Serializable {
|
||||||
@ApiModelProperty("服务单价")
|
@ApiModelProperty("服务单价")
|
||||||
private BigDecimal unitPrice;
|
private BigDecimal unitPrice;
|
||||||
|
|
||||||
@ApiModelProperty("病例id")
|
@ApiModelProperty("诊断code")
|
||||||
private Integer medicalRecordId;
|
private String diagnosisCode;
|
||||||
|
|
||||||
@ApiModelProperty("药品数量")
|
@ApiModelProperty("药品数量")
|
||||||
private Integer number;
|
private Integer number;
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
package com.syjiaer.clinic.server.entity.medical;
|
package com.syjiaer.clinic.server.entity.diagnosis;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.IdType;
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
|
@ -17,15 +17,15 @@ import lombok.experimental.Accessors;
|
||||||
* </p>
|
* </p>
|
||||||
*
|
*
|
||||||
* @author NiuZiYuan
|
* @author NiuZiYuan
|
||||||
* @since 2025-04-23
|
* @since 2025-04-24
|
||||||
*/
|
*/
|
||||||
@Getter
|
@Getter
|
||||||
@Setter
|
@Setter
|
||||||
@ToString
|
@ToString
|
||||||
@Accessors(chain = true)
|
@Accessors(chain = true)
|
||||||
@TableName("medical_record")
|
@TableName("diagnosis_medical_record")
|
||||||
@ApiModel(value = "MedicalRecord对象", description = "病例")
|
@ApiModel(value = "DiagnosisMedicalRecord对象", description = "病例")
|
||||||
public class MedicalRecord implements Serializable {
|
public class DiagnosisMedicalRecord implements Serializable {
|
||||||
|
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
|
@ -33,9 +33,6 @@ public class MedicalRecord implements Serializable {
|
||||||
@TableId(value = "id", type = IdType.AUTO)
|
@TableId(value = "id", type = IdType.AUTO)
|
||||||
private Integer id;
|
private Integer id;
|
||||||
|
|
||||||
@ApiModelProperty("患者id")
|
|
||||||
private Integer patientId;
|
|
||||||
|
|
||||||
@ApiModelProperty("主诉")
|
@ApiModelProperty("主诉")
|
||||||
private String mainAppeal;
|
private String mainAppeal;
|
||||||
|
|
||||||
|
|
@ -54,12 +51,6 @@ public class MedicalRecord implements Serializable {
|
||||||
@ApiModelProperty("非通用字段")
|
@ApiModelProperty("非通用字段")
|
||||||
private String json;
|
private String json;
|
||||||
|
|
||||||
@ApiModelProperty("接诊医生id")
|
|
||||||
private Integer dockerId;
|
|
||||||
|
|
||||||
@ApiModelProperty("接诊医生姓名")
|
|
||||||
private String dockerName;
|
|
||||||
|
|
||||||
@ApiModelProperty("诊断详细数据")
|
@ApiModelProperty("诊断详细数据")
|
||||||
private String diagnosisDetail;
|
private String diagnosisDetail;
|
||||||
|
|
||||||
|
|
@ -69,9 +60,9 @@ public class MedicalRecord implements Serializable {
|
||||||
@ApiModelProperty("创建日期")
|
@ApiModelProperty("创建日期")
|
||||||
private LocalDateTime createDatetime;
|
private LocalDateTime createDatetime;
|
||||||
|
|
||||||
@ApiModelProperty("挂单id")
|
|
||||||
private Integer registrationId;
|
|
||||||
|
|
||||||
@ApiModelProperty("诊断类别")
|
@ApiModelProperty("诊断类别")
|
||||||
private String diagType;
|
private String diagType;
|
||||||
|
|
||||||
|
@ApiModelProperty("诊断code")
|
||||||
|
private String diagnosisCode;
|
||||||
}
|
}
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
package com.syjiaer.clinic.server.entity.medical.dto;
|
package com.syjiaer.clinic.server.entity.diagnosis.dto;
|
||||||
|
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
|
|
@ -0,0 +1,33 @@
|
||||||
|
package com.syjiaer.clinic.server.entity.diagnosis.dto;
|
||||||
|
|
||||||
|
import com.syjiaer.clinic.server.entity.diagnosis.DiagnosisMedicalRecord;
|
||||||
|
import com.syjiaer.clinic.server.entity.item.Item;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
public class MedicalRecordSaveDto {
|
||||||
|
@ApiModelProperty("自增id")
|
||||||
|
private Integer id;
|
||||||
|
|
||||||
|
@ApiModelProperty("患者id")
|
||||||
|
private Integer patientId;
|
||||||
|
|
||||||
|
@ApiModelProperty("接诊医生id")
|
||||||
|
private Integer dockerId;
|
||||||
|
|
||||||
|
@ApiModelProperty("挂单id")
|
||||||
|
private Integer registrationId;
|
||||||
|
|
||||||
|
@ApiModelProperty
|
||||||
|
private DiagnosisMedicalRecord diagnosisMedicalRecord;
|
||||||
|
@ApiModelProperty("服务项目列表")
|
||||||
|
private List<Item> itemList;
|
||||||
|
@ApiModelProperty("药品耗材列表")
|
||||||
|
private List<GoodsRetailDto> goodsList;
|
||||||
|
}
|
||||||
|
|
@ -1,9 +1,9 @@
|
||||||
package com.syjiaer.clinic.server.entity.medical.dto;
|
package com.syjiaer.clinic.server.entity.diagnosis.dto;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.IdType;
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
import com.syjiaer.clinic.server.entity.medical.MedicalGoodsList;
|
import com.syjiaer.clinic.server.entity.diagnosis.DiagnosisMedicalGoodsList;
|
||||||
import com.syjiaer.clinic.server.entity.medical.MedicalItemList;
|
import com.syjiaer.clinic.server.entity.diagnosis.DiagnosisMedicalItemList;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
|
|
@ -56,7 +56,7 @@ public class MedicalRecordVo {
|
||||||
@ApiModelProperty("挂单id")
|
@ApiModelProperty("挂单id")
|
||||||
private Integer registrationId;
|
private Integer registrationId;
|
||||||
@ApiModelProperty("诊疗服务")
|
@ApiModelProperty("诊疗服务")
|
||||||
private List<MedicalItemList> serviceDetail;
|
private List<DiagnosisMedicalItemList> serviceDetail;
|
||||||
@ApiModelProperty("药品耗材")
|
@ApiModelProperty("药品耗材")
|
||||||
private List<MedicalGoodsList> goodsDetail;
|
private List<DiagnosisMedicalGoodsList> goodsDetail;
|
||||||
}
|
}
|
||||||
|
|
@ -1,63 +0,0 @@
|
||||||
package com.syjiaer.clinic.server.entity.medical.dto;
|
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.annotation.IdType;
|
|
||||||
import com.baomidou.mybatisplus.annotation.TableId;
|
|
||||||
import com.syjiaer.clinic.server.entity.item.Item;
|
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
|
||||||
import lombok.Getter;
|
|
||||||
import lombok.Setter;
|
|
||||||
|
|
||||||
import java.time.LocalDateTime;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
@Getter
|
|
||||||
@Setter
|
|
||||||
public class MedicalRecordSaveDto {
|
|
||||||
@ApiModelProperty("自增id")
|
|
||||||
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<Item> itemList;
|
|
||||||
@ApiModelProperty("药品耗材列表")
|
|
||||||
private List<GoodsRetailDto> goodsList;
|
|
||||||
}
|
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
package com.syjiaer.clinic.server.entity.statistics;
|
||||||
|
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
public class GoodsTypeRevenue {
|
||||||
|
private String name;
|
||||||
|
private BigDecimal totalRevenue;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
package com.syjiaer.clinic.server.entity.statistics;
|
||||||
|
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
public class PayTypeRevenue {
|
||||||
|
private BigDecimal totalRevenue;
|
||||||
|
private String name;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,14 @@
|
||||||
|
package com.syjiaer.clinic.server.entity.statistics;
|
||||||
|
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.List;
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
public class PersonPayOverviewVo {
|
||||||
|
private List<String> dateList;
|
||||||
|
private List<BigDecimal> vipPrice;
|
||||||
|
private List<BigDecimal> commonPrice;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,29 @@
|
||||||
|
package com.syjiaer.clinic.server.entity.statistics;
|
||||||
|
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.Setter;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 营收概况
|
||||||
|
*/
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
public class RevenueOverviewVo {
|
||||||
|
//总营业额
|
||||||
|
private BigDecimal totalRevenue;
|
||||||
|
//会员销售额
|
||||||
|
private BigDecimal vipRevenue;
|
||||||
|
//总完成单数
|
||||||
|
private Long totalOrderCount;
|
||||||
|
//会员单数
|
||||||
|
private Long vipOrderCount;
|
||||||
|
|
||||||
|
private List<GoodsTypeRevenue> goodsTypeRevenue;
|
||||||
|
|
||||||
|
private List<PayTypeRevenue> payTypeRevenue;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,18 @@
|
||||||
|
package com.syjiaer.clinic.server.mapper.charge;
|
||||||
|
|
||||||
|
import com.syjiaer.clinic.server.entity.charge.ChargeItemList;
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <p>
|
||||||
|
* 收费服务详情 Mapper 接口
|
||||||
|
* </p>
|
||||||
|
*
|
||||||
|
* @author NiuZiYuan
|
||||||
|
* @since 2025-04-24
|
||||||
|
*/
|
||||||
|
public interface ChargeItemListMapper extends BaseMapper<ChargeItemList> {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
||||||
package com.syjiaer.clinic.server.mapper.charge;
|
|
||||||
|
|
||||||
import com.syjiaer.clinic.server.entity.charge.ChargeServiceList;
|
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* <p>
|
|
||||||
* Mapper 接口
|
|
||||||
* </p>
|
|
||||||
*
|
|
||||||
* @author NiuZiYuan
|
|
||||||
* @since 2025-04-22
|
|
||||||
*/
|
|
||||||
public interface ChargeServiceListMapper extends BaseMapper<ChargeServiceList> {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
package com.syjiaer.clinic.server.mapper.diagnosis;
|
||||||
|
|
||||||
|
import com.syjiaer.clinic.server.entity.diagnosis.Diagnosis;
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import org.apache.ibatis.annotations.Select;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <p>
|
||||||
|
* Mapper 接口
|
||||||
|
* </p>
|
||||||
|
*
|
||||||
|
* @author NiuZiYuan
|
||||||
|
* @since 2025-04-24
|
||||||
|
*/
|
||||||
|
public interface DiagnosisMapper extends BaseMapper<Diagnosis> {
|
||||||
|
@Select("select * from diagnosis where code = #{code}")
|
||||||
|
Diagnosis selectByCode(String code);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -0,0 +1,23 @@
|
||||||
|
package com.syjiaer.clinic.server.mapper.diagnosis;
|
||||||
|
|
||||||
|
import com.syjiaer.clinic.server.entity.diagnosis.DiagnosisMedicalGoodsList;
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import org.apache.ibatis.annotations.Select;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <p>
|
||||||
|
* Mapper 接口
|
||||||
|
* </p>
|
||||||
|
*
|
||||||
|
* @author NiuZiYuan
|
||||||
|
* @since 2025-04-23
|
||||||
|
*/
|
||||||
|
public interface DiagnosisMedicalGoodsListMapper extends BaseMapper<DiagnosisMedicalGoodsList> {
|
||||||
|
|
||||||
|
@Select("select * from diagnosis_medical_goods_list where diagnosis_code = #{code}")
|
||||||
|
List<DiagnosisMedicalGoodsList> listByDiagnosisCode(String code);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -0,0 +1,22 @@
|
||||||
|
package com.syjiaer.clinic.server.mapper.diagnosis;
|
||||||
|
|
||||||
|
import com.syjiaer.clinic.server.entity.diagnosis.DiagnosisMedicalItemList;
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import org.apache.ibatis.annotations.Select;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <p>
|
||||||
|
* Mapper 接口
|
||||||
|
* </p>
|
||||||
|
*
|
||||||
|
* @author NiuZiYuan
|
||||||
|
* @since 2025-04-23
|
||||||
|
*/
|
||||||
|
public interface DiagnosisMedicalItemListMapper extends BaseMapper<DiagnosisMedicalItemList> {
|
||||||
|
@Select("select * from diagnosis_medical_item_list where medical_record_id = #{medicalRecordId}")
|
||||||
|
List<DiagnosisMedicalItemList> listByDiagnosisCode(String code);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -0,0 +1,20 @@
|
||||||
|
package com.syjiaer.clinic.server.mapper.diagnosis;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import com.syjiaer.clinic.server.entity.diagnosis.DiagnosisMedicalRecord;
|
||||||
|
import org.apache.ibatis.annotations.Select;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* <p>
|
||||||
|
* Mapper 接口
|
||||||
|
* </p>
|
||||||
|
*
|
||||||
|
* @author NiuZiYuan
|
||||||
|
* @since 2025-04-17
|
||||||
|
*/
|
||||||
|
public interface DiagnosisMedicalRecordMapper extends BaseMapper<DiagnosisMedicalRecord> {
|
||||||
|
@Select("select * from diagnosis_medical_record where diagnosis_code = #{diagnosisCode}")
|
||||||
|
DiagnosisMedicalRecord selectByDiagnosisCode(String diagnosisCode);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -1,24 +0,0 @@
|
||||||
package com.syjiaer.clinic.server.mapper.medical;
|
|
||||||
|
|
||||||
import com.syjiaer.clinic.server.entity.medical.MedicalGoodsList;
|
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
|
||||||
import lombok.Setter;
|
|
||||||
import org.apache.ibatis.annotations.Select;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* <p>
|
|
||||||
* Mapper 接口
|
|
||||||
* </p>
|
|
||||||
*
|
|
||||||
* @author NiuZiYuan
|
|
||||||
* @since 2025-04-23
|
|
||||||
*/
|
|
||||||
public interface MedicalGoodsListMapper extends BaseMapper<MedicalGoodsList> {
|
|
||||||
|
|
||||||
@Select("select * from medical_goods_list where medical_record_id = #{medicalRecordId}")
|
|
||||||
List<MedicalGoodsList> listByMedicalRecordId(Integer medicalRecordId);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
@ -1,22 +0,0 @@
|
||||||
package com.syjiaer.clinic.server.mapper.medical;
|
|
||||||
|
|
||||||
import com.syjiaer.clinic.server.entity.medical.MedicalItemList;
|
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
|
||||||
import org.apache.ibatis.annotations.Select;
|
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* <p>
|
|
||||||
* Mapper 接口
|
|
||||||
* </p>
|
|
||||||
*
|
|
||||||
* @author NiuZiYuan
|
|
||||||
* @since 2025-04-23
|
|
||||||
*/
|
|
||||||
public interface MedicalItemListMapper extends BaseMapper<MedicalItemList> {
|
|
||||||
@Select("select * from medical_item_list where medical_record_id = #{medicalRecordId}")
|
|
||||||
List<MedicalItemList> listByMedicalRecordId(Integer medicalRecordId);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
||||||
package com.syjiaer.clinic.server.mapper.medical;
|
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
|
||||||
import com.syjiaer.clinic.server.entity.medical.MedicalRecord;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* <p>
|
|
||||||
* Mapper 接口
|
|
||||||
* </p>
|
|
||||||
*
|
|
||||||
* @author NiuZiYuan
|
|
||||||
* @since 2025-04-17
|
|
||||||
*/
|
|
||||||
public interface MedicalRecordMapper extends BaseMapper<MedicalRecord> {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
@ -9,34 +9,28 @@ import com.syjiaer.clinic.server.common.exception.MessageException;
|
||||||
import com.syjiaer.clinic.server.common.util.StringUtil;
|
import com.syjiaer.clinic.server.common.util.StringUtil;
|
||||||
import com.syjiaer.clinic.server.common.vo.Page;
|
import com.syjiaer.clinic.server.common.vo.Page;
|
||||||
import com.syjiaer.clinic.server.entity.charge.ChargeGoodsList;
|
import com.syjiaer.clinic.server.entity.charge.ChargeGoodsList;
|
||||||
|
import com.syjiaer.clinic.server.entity.charge.ChargeItemList;
|
||||||
import com.syjiaer.clinic.server.entity.charge.ChargeOrder;
|
import com.syjiaer.clinic.server.entity.charge.ChargeOrder;
|
||||||
import com.syjiaer.clinic.server.entity.charge.ChargeServiceList;
|
|
||||||
import com.syjiaer.clinic.server.entity.charge.dto.ChargeOrderDto;
|
import com.syjiaer.clinic.server.entity.charge.dto.ChargeOrderDto;
|
||||||
import com.syjiaer.clinic.server.entity.charge.dto.ChargeQuery;
|
import com.syjiaer.clinic.server.entity.charge.dto.ChargeQuery;
|
||||||
import com.syjiaer.clinic.server.entity.charge.vo.ChargeDetailVo;
|
import com.syjiaer.clinic.server.entity.charge.vo.ChargeDetailVo;
|
||||||
import com.syjiaer.clinic.server.entity.charge.vo.ChargeGoodsListVo;
|
import com.syjiaer.clinic.server.entity.charge.vo.ChargeGoodsListVo;
|
||||||
import com.syjiaer.clinic.server.entity.goods.Goods;
|
import com.syjiaer.clinic.server.entity.goods.Goods;
|
||||||
import com.syjiaer.clinic.server.entity.inventory.InventoryLog;
|
import com.syjiaer.clinic.server.entity.inventory.InventoryLog;
|
||||||
import com.syjiaer.clinic.server.entity.item.Item;
|
|
||||||
import com.syjiaer.clinic.server.entity.manager.ManagerUser;
|
import com.syjiaer.clinic.server.entity.manager.ManagerUser;
|
||||||
import com.syjiaer.clinic.server.entity.medical.MedicalRecord;
|
|
||||||
import com.syjiaer.clinic.server.entity.medical.dto.GoodsRetailDto;
|
|
||||||
import com.syjiaer.clinic.server.entity.medical.dto.MedicalRecordSaveDto;
|
|
||||||
import com.syjiaer.clinic.server.entity.organization.OrganizationMember;
|
import com.syjiaer.clinic.server.entity.organization.OrganizationMember;
|
||||||
import com.syjiaer.clinic.server.entity.patient.PatientInfo;
|
import com.syjiaer.clinic.server.entity.patient.PatientInfo;
|
||||||
import com.syjiaer.clinic.server.entity.patient.PatientRegistration;
|
import com.syjiaer.clinic.server.entity.patient.PatientRegistration;
|
||||||
import com.syjiaer.clinic.server.mapper.charge.ChargeGoodsListMapper;
|
import com.syjiaer.clinic.server.mapper.charge.ChargeGoodsListMapper;
|
||||||
|
import com.syjiaer.clinic.server.mapper.charge.ChargeItemListMapper;
|
||||||
import com.syjiaer.clinic.server.mapper.charge.ChargeOrderMapper;
|
import com.syjiaer.clinic.server.mapper.charge.ChargeOrderMapper;
|
||||||
import com.syjiaer.clinic.server.mapper.charge.ChargeServiceListMapper;
|
|
||||||
import com.syjiaer.clinic.server.mapper.goods.GoodsMapper;
|
import com.syjiaer.clinic.server.mapper.goods.GoodsMapper;
|
||||||
import com.syjiaer.clinic.server.mapper.inventory.InventoryLogMapper;
|
import com.syjiaer.clinic.server.mapper.inventory.InventoryLogMapper;
|
||||||
import com.syjiaer.clinic.server.mapper.medical.MedicalRecordMapper;
|
import com.syjiaer.clinic.server.mapper.diagnosis.DiagnosisMedicalRecordMapper;
|
||||||
import com.syjiaer.clinic.server.mapper.organization.OrganizationMemberMapper;
|
import com.syjiaer.clinic.server.mapper.organization.OrganizationMemberMapper;
|
||||||
import com.syjiaer.clinic.server.mapper.organization.OrganizationSectionMapper;
|
|
||||||
import com.syjiaer.clinic.server.mapper.patient.PatientInfoMapper;
|
import com.syjiaer.clinic.server.mapper.patient.PatientInfoMapper;
|
||||||
import com.syjiaer.clinic.server.service.BaseService;
|
import com.syjiaer.clinic.server.service.BaseService;
|
||||||
import com.syjiaer.clinic.server.service.inventory.InventoryService;
|
import com.syjiaer.clinic.server.service.inventory.InventoryService;
|
||||||
import com.syjiaer.clinic.server.service.patient.PatientInfoService;
|
|
||||||
import com.syjiaer.clinic.server.service.patient.PatientRegistrationService;
|
import com.syjiaer.clinic.server.service.patient.PatientRegistrationService;
|
||||||
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.BeanUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
|
@ -50,14 +44,12 @@ import java.time.LocalDateTime;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import static com.syjiaer.clinic.server.common.enums.MedicalRecordDetailTypeEnum.goods;
|
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class ChargeService extends BaseService {
|
public class ChargeService extends BaseService {
|
||||||
@Autowired
|
@Autowired
|
||||||
private ChargeOrderMapper chargeOrderMapper;
|
private ChargeOrderMapper chargeOrderMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
private ChargeServiceListMapper chargeServiceListMapper;
|
private ChargeItemListMapper chargeItemListMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
private ChargeGoodsListMapper chargeGoodsListMapper;
|
private ChargeGoodsListMapper chargeGoodsListMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
|
|
@ -65,12 +57,14 @@ public class ChargeService extends BaseService {
|
||||||
@Autowired
|
@Autowired
|
||||||
private PatientInfoMapper patientInfoMapper;
|
private PatientInfoMapper patientInfoMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
private MedicalRecordMapper medicalRecordMapper;
|
private DiagnosisMedicalRecordMapper diagnosisMedicalRecordMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
private OrganizationMemberMapper organizationMemberMapper;
|
private OrganizationMemberMapper organizationMemberMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
private PatientRegistrationService patientRegistrationService;
|
private PatientRegistrationService patientRegistrationService;
|
||||||
|
@Autowired
|
||||||
|
@Lazy
|
||||||
|
private ChargeService chargeService;
|
||||||
@Autowired
|
@Autowired
|
||||||
private InventoryService inventoryService;
|
private InventoryService inventoryService;
|
||||||
@Autowired
|
@Autowired
|
||||||
|
|
@ -82,7 +76,7 @@ public class ChargeService extends BaseService {
|
||||||
ChargeOrder dbOrder = chargeOrderMapper.selectById(dto.getId());
|
ChargeOrder dbOrder = chargeOrderMapper.selectById(dto.getId());
|
||||||
if (dbOrder != null){
|
if (dbOrder != null){
|
||||||
//清除已有的订单
|
//清除已有的订单
|
||||||
chargeServiceListMapper.delete(new QueryWrapper<ChargeServiceList>().eq("charge_order_code", dbOrder.getCode()));
|
chargeItemListMapper.delete(new QueryWrapper<ChargeItemList>().eq("charge_order_code", dbOrder.getCode()));
|
||||||
chargeGoodsListMapper.delete(new QueryWrapper<ChargeGoodsList>().eq("charge_order_code", dbOrder.getCode()));
|
chargeGoodsListMapper.delete(new QueryWrapper<ChargeGoodsList>().eq("charge_order_code", dbOrder.getCode()));
|
||||||
chargeOrderMapper.deleteById(dbOrder.getId());
|
chargeOrderMapper.deleteById(dbOrder.getId());
|
||||||
}
|
}
|
||||||
|
|
@ -93,9 +87,9 @@ public class ChargeService extends BaseService {
|
||||||
LocalDateTime nowLocalDateTime = LocalDateTime.now();
|
LocalDateTime nowLocalDateTime = LocalDateTime.now();
|
||||||
BigDecimal preTotalPrice = BigDecimal.ZERO;
|
BigDecimal preTotalPrice = BigDecimal.ZERO;
|
||||||
BigDecimal totalPrice = BigDecimal.ZERO;
|
BigDecimal totalPrice = BigDecimal.ZERO;
|
||||||
List<ChargeServiceList> chargeServiceLists = new ArrayList<>();
|
List<ChargeItemList> chargeServiceLists = new ArrayList<>();
|
||||||
for (ChargeServiceList service : dto.getServiceDetail()){
|
for (ChargeItemList service : dto.getServiceDetail()){
|
||||||
ChargeServiceList itemList = new ChargeServiceList();
|
ChargeItemList itemList = new ChargeItemList();
|
||||||
String fsn = StringUtil.getCode("FSN");
|
String fsn = StringUtil.getCode("FSN");
|
||||||
itemList.setChargeOrderCode(code);
|
itemList.setChargeOrderCode(code);
|
||||||
itemList.setServiceId(service.getId());
|
itemList.setServiceId(service.getId());
|
||||||
|
|
@ -114,7 +108,7 @@ public class ChargeService extends BaseService {
|
||||||
preTotalPrice = preTotalPrice.add(service.getUnitPrice());
|
preTotalPrice = preTotalPrice.add(service.getUnitPrice());
|
||||||
totalPrice = totalPrice.add(service.getUnitPrice());
|
totalPrice = totalPrice.add(service.getUnitPrice());
|
||||||
}
|
}
|
||||||
chargeServiceListMapper.insert(chargeServiceLists);
|
chargeItemListMapper.insert(chargeServiceLists);
|
||||||
|
|
||||||
List<ChargeGoodsList> chargeGoodsLists = new ArrayList<>();
|
List<ChargeGoodsList> chargeGoodsLists = new ArrayList<>();
|
||||||
for (ChargeGoodsListVo goods : dto.getGoodsDetail()){
|
for (ChargeGoodsListVo goods : dto.getGoodsDetail()){
|
||||||
|
|
@ -154,7 +148,7 @@ public class ChargeService extends BaseService {
|
||||||
chargeOrder.setStatus(RetailOrderStatusEnum.UNFINISHED.getCode());
|
chargeOrder.setStatus(RetailOrderStatusEnum.UNFINISHED.getCode());
|
||||||
chargeOrder.setPatientId(dto.getPatientInfo().getId());
|
chargeOrder.setPatientId(dto.getPatientInfo().getId());
|
||||||
chargeOrder.setSalePersonId(user.getId());
|
chargeOrder.setSalePersonId(user.getId());
|
||||||
chargeOrder.setMedicalRecordId(dto.getMedicalRecord().getId());
|
chargeOrder.setMedicalRecordId(dto.getDiagnosisMedicalRecord().getId());
|
||||||
chargeOrderMapper.insert(chargeOrder);
|
chargeOrderMapper.insert(chargeOrder);
|
||||||
return chargeOrder;
|
return chargeOrder;
|
||||||
|
|
||||||
|
|
@ -177,9 +171,9 @@ public class ChargeService extends BaseService {
|
||||||
for (ChargeOrder chargeOrder : orderPage.getList()){
|
for (ChargeOrder chargeOrder : orderPage.getList()){
|
||||||
ChargeDetailVo detailVo = new ChargeDetailVo();
|
ChargeDetailVo detailVo = new ChargeDetailVo();
|
||||||
BeanUtils.copyProperties(chargeOrder, detailVo);
|
BeanUtils.copyProperties(chargeOrder, detailVo);
|
||||||
detailVo.setMedicalRecord(medicalRecordMapper.selectById(chargeOrder.getMedicalRecordId()));
|
detailVo.setDiagnosisMedicalRecord(diagnosisMedicalRecordMapper.selectById(chargeOrder.getMedicalRecordId()));
|
||||||
detailVo.setPatientInfo(patientInfoMapper.selectById(chargeOrder.getPatientId()));
|
detailVo.setPatientInfo(patientInfoMapper.selectById(chargeOrder.getPatientId()));
|
||||||
detailVo.setServiceDetail(chargeServiceListMapper.selectList(new QueryWrapper<ChargeServiceList>()
|
detailVo.setServiceDetail(chargeItemListMapper.selectList(new QueryWrapper<ChargeItemList>()
|
||||||
.eq("charge_order_code", chargeOrder.getCode())));
|
.eq("charge_order_code", chargeOrder.getCode())));
|
||||||
|
|
||||||
detailVo.setGoodsDetail(chargeGoodsListMapper.selectDetailByCode(chargeOrder.getCode()));
|
detailVo.setGoodsDetail(chargeGoodsListMapper.selectDetailByCode(chargeOrder.getCode()));
|
||||||
|
|
@ -192,7 +186,27 @@ public class ChargeService extends BaseService {
|
||||||
return resultPage;
|
return resultPage;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// @Transactional(rollbackFor = Exception.class)
|
||||||
|
// public ChargeOrder updateOrCreate(ChargeOrderDto dto) {
|
||||||
|
// //创建患者
|
||||||
|
// PatientInfo patientInfo = dto.getPatientInfo();
|
||||||
|
// if (patientInfo == null){
|
||||||
|
// throw new MessageException("患者信息不能为空");
|
||||||
|
// }
|
||||||
|
// patientInfoMapper.insertOrUpdate(patientInfo);
|
||||||
|
// if (dto.getDiagnosisMedicalRecord().getDockerId() == null || dto.getDiagnosisMedicalRecord().getDiagnosisDetail() == null){
|
||||||
|
// throw new MessageException("诊断信息和医生不能为空");
|
||||||
|
// }
|
||||||
|
// //添加挂号信息
|
||||||
|
// OrganizationMember docker = organizationMemberMapper.selectById(dto.getDiagnosisMedicalRecord().getDockerId());
|
||||||
|
// PatientRegistration registration = patientRegistrationService.regisByDockerAndPatient(docker,patientInfo, (short) 1,1);
|
||||||
|
// //todo 添加病例
|
||||||
|
// diagnosisMedicalRecordMapper.insertOrUpdate(dto.getDiagnosisMedicalRecord());
|
||||||
|
//
|
||||||
|
// //添加订单
|
||||||
|
// return chargeService.save(dto);
|
||||||
|
//
|
||||||
|
// }
|
||||||
|
|
||||||
public void completeOrder (Integer id,Integer payType){
|
public void completeOrder (Integer id,Integer payType){
|
||||||
ChargeOrder order = chargeOrderMapper.selectById(id);
|
ChargeOrder order = chargeOrderMapper.selectById(id);
|
||||||
|
|
|
||||||
|
|
@ -1,32 +1,33 @@
|
||||||
package com.syjiaer.clinic.server.service.medical;
|
package com.syjiaer.clinic.server.service.diagnosis;
|
||||||
|
|
||||||
import com.alibaba.fastjson2.JSONArray;
|
import com.alibaba.fastjson2.JSONArray;
|
||||||
import com.alibaba.fastjson2.JSONObject;
|
import com.alibaba.fastjson2.JSONObject;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.syjiaer.clinic.server.common.api.input.IM2201;
|
|
||||||
import com.syjiaer.clinic.server.common.api.input.IM2203A;
|
import com.syjiaer.clinic.server.common.api.input.IM2203A;
|
||||||
import com.syjiaer.clinic.server.common.api.request.SocialRequest;
|
import com.syjiaer.clinic.server.common.api.request.SocialRequest;
|
||||||
import com.syjiaer.clinic.server.common.config.Config;
|
import com.syjiaer.clinic.server.common.config.Config;
|
||||||
import com.syjiaer.clinic.server.common.enums.MedicalRecordDetailTypeEnum;
|
|
||||||
import com.syjiaer.clinic.server.common.enums.RegistrationStatusEnum;
|
import com.syjiaer.clinic.server.common.enums.RegistrationStatusEnum;
|
||||||
import com.syjiaer.clinic.server.common.exception.MessageException;
|
import com.syjiaer.clinic.server.common.exception.MessageException;
|
||||||
|
import com.syjiaer.clinic.server.common.util.StringUtil;
|
||||||
|
import com.syjiaer.clinic.server.entity.diagnosis.Diagnosis;
|
||||||
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;
|
||||||
import com.syjiaer.clinic.server.entity.medical.MedicalGoodsList;
|
import com.syjiaer.clinic.server.entity.diagnosis.DiagnosisMedicalGoodsList;
|
||||||
import com.syjiaer.clinic.server.entity.medical.MedicalItemList;
|
import com.syjiaer.clinic.server.entity.diagnosis.DiagnosisMedicalItemList;
|
||||||
import com.syjiaer.clinic.server.entity.medical.MedicalRecord;
|
import com.syjiaer.clinic.server.entity.diagnosis.DiagnosisMedicalRecord;
|
||||||
import com.syjiaer.clinic.server.entity.medical.dto.GoodsRetailDto;
|
import com.syjiaer.clinic.server.entity.diagnosis.dto.GoodsRetailDto;
|
||||||
import com.syjiaer.clinic.server.entity.medical.dto.MedicalRecordSaveDto;
|
import com.syjiaer.clinic.server.entity.diagnosis.dto.MedicalRecordSaveDto;
|
||||||
import com.syjiaer.clinic.server.entity.medical.dto.MedicalRecordVo;
|
import com.syjiaer.clinic.server.entity.diagnosis.dto.MedicalRecordVo;
|
||||||
import com.syjiaer.clinic.server.entity.organization.OrganizationMember;
|
import com.syjiaer.clinic.server.entity.organization.OrganizationMember;
|
||||||
import com.syjiaer.clinic.server.entity.organization.OrganizationSection;
|
import com.syjiaer.clinic.server.entity.organization.OrganizationSection;
|
||||||
import com.syjiaer.clinic.server.entity.patient.PatientRegistration;
|
import com.syjiaer.clinic.server.entity.patient.PatientRegistration;
|
||||||
|
import com.syjiaer.clinic.server.mapper.diagnosis.DiagnosisMapper;
|
||||||
import com.syjiaer.clinic.server.mapper.goods.GoodsMapper;
|
import com.syjiaer.clinic.server.mapper.goods.GoodsMapper;
|
||||||
import com.syjiaer.clinic.server.mapper.item.ItemMapper;
|
import com.syjiaer.clinic.server.mapper.item.ItemMapper;
|
||||||
import com.syjiaer.clinic.server.mapper.medical.MedicalGoodsListMapper;
|
import com.syjiaer.clinic.server.mapper.diagnosis.DiagnosisMedicalGoodsListMapper;
|
||||||
import com.syjiaer.clinic.server.mapper.medical.MedicalItemListMapper;
|
import com.syjiaer.clinic.server.mapper.diagnosis.DiagnosisMedicalItemListMapper;
|
||||||
import com.syjiaer.clinic.server.mapper.medical.MedicalRecordMapper;
|
import com.syjiaer.clinic.server.mapper.diagnosis.DiagnosisMedicalRecordMapper;
|
||||||
import com.syjiaer.clinic.server.mapper.organization.OrganizationMemberMapper;
|
import com.syjiaer.clinic.server.mapper.organization.OrganizationMemberMapper;
|
||||||
import com.syjiaer.clinic.server.mapper.organization.OrganizationSectionMapper;
|
import com.syjiaer.clinic.server.mapper.organization.OrganizationSectionMapper;
|
||||||
import com.syjiaer.clinic.server.mapper.patient.PatientRegistrationMapper;
|
import com.syjiaer.clinic.server.mapper.patient.PatientRegistrationMapper;
|
||||||
|
|
@ -45,11 +46,11 @@ import java.util.List;
|
||||||
@Service
|
@Service
|
||||||
public class MedicalRecordService extends BaseService {
|
public class MedicalRecordService extends BaseService {
|
||||||
@Autowired
|
@Autowired
|
||||||
private MedicalRecordMapper medicalRecordMapper;
|
private DiagnosisMedicalRecordMapper diagnosisMedicalRecordMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
private MedicalGoodsListMapper medicalGoodsListMapper;
|
private DiagnosisMedicalGoodsListMapper diagnosisMedicalGoodsListMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
private MedicalItemListMapper medicalItemListMapper;
|
private DiagnosisMedicalItemListMapper diagnosisMedicalItemListMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
private OrganizationMemberMapper organizationMemberMapper;
|
private OrganizationMemberMapper organizationMemberMapper;
|
||||||
@Autowired
|
@Autowired
|
||||||
|
|
@ -66,7 +67,8 @@ public class MedicalRecordService extends BaseService {
|
||||||
private Config config;
|
private Config config;
|
||||||
@Autowired
|
@Autowired
|
||||||
private SocialRequest socialRequest;
|
private SocialRequest socialRequest;
|
||||||
|
@Autowired
|
||||||
|
private DiagnosisMapper diagnosisMapper;
|
||||||
/*
|
/*
|
||||||
* 保存
|
* 保存
|
||||||
* @param saveDto 病历信息
|
* @param saveDto 病历信息
|
||||||
|
|
@ -83,47 +85,57 @@ public class MedicalRecordService extends BaseService {
|
||||||
updateRegis.setId(dbRegis.getId());
|
updateRegis.setId(dbRegis.getId());
|
||||||
updateRegis.setStatus(RegistrationStatusEnum.complete.getType());
|
updateRegis.setStatus(RegistrationStatusEnum.complete.getType());
|
||||||
patientRegistrationMapper.updateById(updateRegis);
|
patientRegistrationMapper.updateById(updateRegis);
|
||||||
|
//诊断主表
|
||||||
|
Diagnosis diagnosis = new Diagnosis();
|
||||||
|
String code = StringUtil.getCode("ZD");
|
||||||
|
BeanUtils.copyProperties(saveDto, Diagnosis.class);
|
||||||
|
if (diagnosis.getId() == null){
|
||||||
|
diagnosis.setCode(code);
|
||||||
|
}else {
|
||||||
|
code = diagnosis.getCode();
|
||||||
|
}
|
||||||
|
diagnosisMapper.insertOrUpdate(diagnosis);
|
||||||
|
|
||||||
|
//病例表
|
||||||
ManagerUser managerUser = getManagerUser();
|
ManagerUser managerUser = getManagerUser();
|
||||||
MedicalRecord medicalRecord = new MedicalRecord();
|
DiagnosisMedicalRecord diagnosisMedicalRecord = new DiagnosisMedicalRecord();
|
||||||
BeanUtils.copyProperties(saveDto, medicalRecord);
|
BeanUtils.copyProperties(saveDto.getDiagnosisMedicalRecord(), diagnosisMedicalRecord);
|
||||||
medicalRecord.setDockerId(managerUser.getId());
|
diagnosisMedicalRecordMapper.insertOrUpdate(diagnosisMedicalRecord);
|
||||||
medicalRecord.setDockerName(managerUser.getName());
|
|
||||||
medicalRecordMapper.insertOrUpdate(medicalRecord);
|
//服务项目表
|
||||||
Integer medicalRecordId = medicalRecord.getId();
|
Integer medicalRecordId = diagnosisMedicalRecord.getId();
|
||||||
List<MedicalItemList> itemLists = new ArrayList<>();
|
List<DiagnosisMedicalItemList> itemLists = new ArrayList<>();
|
||||||
|
|
||||||
for (Item item : saveDto.getItemList()) {
|
for (Item item : saveDto.getItemList()) {
|
||||||
Item dbItem = itemMapper.selectById(item.getId());
|
Item dbItem = itemMapper.selectById(item.getId());
|
||||||
MedicalItemList itemDetail = new MedicalItemList();
|
DiagnosisMedicalItemList itemDetail = new DiagnosisMedicalItemList();
|
||||||
|
itemDetail.setDiagnosisCode(code);
|
||||||
itemDetail.setItemId(item.getId());
|
itemDetail.setItemId(item.getId());
|
||||||
itemDetail.setName(dbItem.getItemName());
|
itemDetail.setName(dbItem.getItemName());
|
||||||
itemDetail.setSocialCode(dbItem.getItemSocialCode());
|
itemDetail.setSocialCode(dbItem.getItemSocialCode());
|
||||||
itemDetail.setUnit(dbItem.getUnit());
|
itemDetail.setUnit(dbItem.getUnit());
|
||||||
itemDetail.setUnitPrice(dbItem.getUnitPrice());
|
itemDetail.setUnitPrice(dbItem.getUnitPrice());
|
||||||
itemDetail.setMedicalRecordId(medicalRecordId);
|
|
||||||
itemDetail.setNumber(1);
|
itemDetail.setNumber(1);
|
||||||
itemLists.add(itemDetail);
|
itemLists.add(itemDetail);
|
||||||
|
|
||||||
}
|
}
|
||||||
medicalItemListMapper.insert(itemLists);
|
diagnosisMedicalItemListMapper.insert(itemLists);
|
||||||
|
|
||||||
List<MedicalGoodsList> goodsLists = new ArrayList<>();
|
List<DiagnosisMedicalGoodsList> goodsLists = new ArrayList<>();
|
||||||
for (GoodsRetailDto goodsRetailDto : saveDto.getGoodsList()) {
|
for (GoodsRetailDto goodsRetailDto : saveDto.getGoodsList()) {
|
||||||
Goods dbGoods = goodsMapper.selectById(goodsRetailDto.getId());
|
Goods dbGoods = goodsMapper.selectById(goodsRetailDto.getId());
|
||||||
MedicalGoodsList goodsDetail = new MedicalGoodsList();
|
DiagnosisMedicalGoodsList goodsDetail = new DiagnosisMedicalGoodsList();
|
||||||
goodsDetail.setGoodsId(goodsRetailDto.getId());
|
goodsDetail.setGoodsId(goodsRetailDto.getId());
|
||||||
|
goodsDetail.setDiagnosisCode(code);
|
||||||
goodsDetail.setName(dbGoods.getName());
|
goodsDetail.setName(dbGoods.getName());
|
||||||
goodsDetail.setSocialCode(dbGoods.getHilistCode());
|
goodsDetail.setSocialCode(dbGoods.getHilistCode());
|
||||||
goodsDetail.setUnit(goodsRetailDto.getSelectedUnit());
|
goodsDetail.setUnit(goodsRetailDto.getSelectedUnit());
|
||||||
goodsDetail.setUnitPrice(goodsRetailDto.getSelectedPrice());
|
goodsDetail.setUnitPrice(goodsRetailDto.getSelectedPrice());
|
||||||
goodsDetail.setMedicalRecordId(medicalRecordId);
|
|
||||||
goodsDetail.setNumber(goodsRetailDto.getSelectNum());
|
goodsDetail.setNumber(goodsRetailDto.getSelectNum());
|
||||||
goodsLists.add(goodsDetail);
|
goodsLists.add(goodsDetail);
|
||||||
}
|
}
|
||||||
|
|
||||||
medicalGoodsListMapper.insert(goodsLists);
|
diagnosisMedicalGoodsListMapper.insert(goodsLists);
|
||||||
|
|
||||||
//添加收费单
|
//添加收费单
|
||||||
// saveDto.setId(medicalRecordId);
|
// saveDto.setId(medicalRecordId);
|
||||||
|
|
@ -142,22 +154,22 @@ public class MedicalRecordService extends BaseService {
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public List<MedicalRecordVo> listByPatientId(Integer patientId) {
|
public List<MedicalRecordVo> listByPatientId(Integer patientId) {
|
||||||
QueryWrapper<MedicalRecord> query = new QueryWrapper<>();
|
QueryWrapper<DiagnosisMedicalRecord> query = new QueryWrapper<>();
|
||||||
query.eq("patient_id", patientId);
|
query.eq("patient_id", patientId);
|
||||||
query.orderByDesc("create_datetime");
|
query.orderByDesc("create_datetime");
|
||||||
query.last("limit 10");
|
query.last("limit 10");
|
||||||
List<MedicalRecord> mrList = medicalRecordMapper.selectList(query);
|
List<DiagnosisMedicalRecord> mrList = diagnosisMedicalRecordMapper.selectList(query);
|
||||||
List<MedicalRecordVo> mrvList = new ArrayList<>();
|
List<MedicalRecordVo> mrvList = new ArrayList<>();
|
||||||
for (MedicalRecord medicalRecord : mrList) {
|
for (DiagnosisMedicalRecord diagnosisMedicalRecord : mrList) {
|
||||||
QueryWrapper<MedicalItemList> severQuery = new QueryWrapper<>();
|
QueryWrapper<DiagnosisMedicalItemList> severQuery = new QueryWrapper<>();
|
||||||
MedicalRecordVo vo = new MedicalRecordVo();
|
MedicalRecordVo vo = new MedicalRecordVo();
|
||||||
BeanUtils.copyProperties(medicalRecord, vo);
|
BeanUtils.copyProperties(diagnosisMedicalRecord, vo);
|
||||||
severQuery.eq("medical_record_id", medicalRecord.getId());
|
severQuery.eq("medical_record_id", diagnosisMedicalRecord.getId());
|
||||||
List<MedicalItemList> serverDetail = medicalItemListMapper.selectList(severQuery);
|
List<DiagnosisMedicalItemList> serverDetail = diagnosisMedicalItemListMapper.selectList(severQuery);
|
||||||
vo.setServiceDetail(serverDetail);
|
vo.setServiceDetail(serverDetail);
|
||||||
QueryWrapper<MedicalGoodsList> goodsQuery = new QueryWrapper<>();
|
QueryWrapper<DiagnosisMedicalGoodsList> goodsQuery = new QueryWrapper<>();
|
||||||
severQuery.eq("medical_record_id", medicalRecord.getId());
|
severQuery.eq("medical_record_id", diagnosisMedicalRecord.getId());
|
||||||
List<MedicalGoodsList> goodsDetail = medicalGoodsListMapper.selectList(goodsQuery);
|
List<DiagnosisMedicalGoodsList> goodsDetail = diagnosisMedicalGoodsListMapper.selectList(goodsQuery);
|
||||||
vo.setGoodsDetail(goodsDetail);
|
vo.setGoodsDetail(goodsDetail);
|
||||||
mrvList.add(vo);
|
mrvList.add(vo);
|
||||||
}
|
}
|
||||||
|
|
@ -170,36 +182,41 @@ public class MedicalRecordService extends BaseService {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public MedicalRecordVo getDetailByRegisId(Integer regisId) {
|
public MedicalRecordVo getDetailByRegisId(Integer regisId) {
|
||||||
QueryWrapper<MedicalRecord> query = new QueryWrapper<>();
|
QueryWrapper<DiagnosisMedicalRecord> query = new QueryWrapper<>();
|
||||||
query.eq("registration_id", regisId);
|
query.eq("registration_id", regisId);
|
||||||
|
|
||||||
MedicalRecord mr = medicalRecordMapper.selectOne(query);
|
DiagnosisMedicalRecord mr = diagnosisMedicalRecordMapper.selectOne(query);
|
||||||
QueryWrapper<MedicalItemList> severQuery = new QueryWrapper<>();
|
QueryWrapper<DiagnosisMedicalItemList> severQuery = new QueryWrapper<>();
|
||||||
MedicalRecordVo vo = new MedicalRecordVo();
|
MedicalRecordVo vo = new MedicalRecordVo();
|
||||||
BeanUtils.copyProperties(mr, vo);
|
BeanUtils.copyProperties(mr, vo);
|
||||||
severQuery.eq("medical_record_id", mr.getId());
|
severQuery.eq("medical_record_id", mr.getId());
|
||||||
List<MedicalItemList> serverDetail = medicalItemListMapper.selectList(severQuery);
|
List<DiagnosisMedicalItemList> serverDetail = diagnosisMedicalItemListMapper.selectList(severQuery);
|
||||||
vo.setServiceDetail(serverDetail);
|
vo.setServiceDetail(serverDetail);
|
||||||
QueryWrapper<MedicalGoodsList> goodsQuery = new QueryWrapper<>();
|
QueryWrapper<DiagnosisMedicalGoodsList> goodsQuery = new QueryWrapper<>();
|
||||||
goodsQuery.eq("medical_record_id", mr.getId());
|
goodsQuery.eq("medical_record_id", mr.getId());
|
||||||
List<MedicalGoodsList> goodsDetail = medicalGoodsListMapper.selectList(goodsQuery);
|
List<DiagnosisMedicalGoodsList> goodsDetail = diagnosisMedicalGoodsListMapper.selectList(goodsQuery);
|
||||||
vo.setGoodsDetail(goodsDetail);
|
vo.setGoodsDetail(goodsDetail);
|
||||||
return vo;
|
return vo;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void uploadDiagnosis(Integer medicalRecordId){
|
public void uploadDiagnosis(String diagnosisCode){
|
||||||
MedicalRecord medicalRecord = medicalRecordMapper.selectById(medicalRecordId);
|
Diagnosis diagnosis = diagnosisMapper.selectByCode(diagnosisCode);
|
||||||
if (medicalRecord == null){
|
if (diagnosis == null){
|
||||||
|
throw new MessageException("诊断不存在");
|
||||||
|
}
|
||||||
|
|
||||||
|
DiagnosisMedicalRecord diagnosisMedicalRecord = diagnosisMedicalRecordMapper.selectByDiagnosisCode(diagnosisCode);
|
||||||
|
if (diagnosisMedicalRecord == null){
|
||||||
throw new MessageException("病历不存在");
|
throw new MessageException("病历不存在");
|
||||||
}
|
}
|
||||||
PatientRegistration patientRegistration = patientRegistrationMapper.selectById(medicalRecord.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());
|
||||||
OrganizationMember doctor = organizationMemberMapper.selectById(patientRegistration.getOrganizationDoctorId());
|
OrganizationMember doctor = organizationMemberMapper.selectById(patientRegistration.getOrganizationDoctorId());
|
||||||
List<MedicalGoodsList> goodsLists = medicalGoodsListMapper.listByMedicalRecordId(medicalRecordId);
|
List<DiagnosisMedicalGoodsList> goodsLists = diagnosisMedicalGoodsListMapper.listByDiagnosisCode(diagnosisCode);
|
||||||
List<MedicalItemList> itemLists = medicalItemListMapper.listByMedicalRecordId(medicalRecordId);
|
List<DiagnosisMedicalItemList> itemLists = diagnosisMedicalItemListMapper.listByDiagnosisCode(diagnosisCode);
|
||||||
|
|
||||||
LocalDateTime curTime = LocalDateTime.now();
|
LocalDateTime curTime = LocalDateTime.now();
|
||||||
IM2203A im2203A = new IM2203A();
|
IM2203A im2203A = new IM2203A();
|
||||||
|
|
@ -209,14 +226,14 @@ public class MedicalRecordService extends BaseService {
|
||||||
mdtrtinfo.setMed_type(config.get("social","medType"));
|
mdtrtinfo.setMed_type(config.get("social","medType"));
|
||||||
mdtrtinfo.setBegntime(curTime);
|
mdtrtinfo.setBegntime(curTime);
|
||||||
im2203A.setMdtrtinfo(mdtrtinfo);
|
im2203A.setMdtrtinfo(mdtrtinfo);
|
||||||
JSONArray jsonArray = JSONArray.parseArray(medicalRecord.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();
|
||||||
diag.setDiag_type(medicalRecord.getDiagType());
|
diag.setDiag_type(diagnosisMedicalRecord.getDiagType());
|
||||||
diag.setDiag_srt_no(BigDecimal.valueOf(i));
|
diag.setDiag_srt_no(BigDecimal.valueOf(i));
|
||||||
diag.setDiag_code(json.getString("code"));
|
diag.setDiag_code(json.getString("code"));
|
||||||
diag.setDiag_name(json.getString("name"));
|
diag.setDiag_name(json.getString("name"));
|
||||||
|
|
@ -358,4 +358,10 @@ public class GoodsService {
|
||||||
}
|
}
|
||||||
return goodsMapper.selectById(goodsId);
|
return goodsMapper.selectById(goodsId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<Goods> list(QueryWrapper<Goods> goodsQuery) {
|
||||||
|
return goodsMapper.selectList(goodsQuery);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,7 @@ import com.syjiaer.clinic.server.common.util.DictoryUtil;
|
||||||
import com.syjiaer.clinic.server.common.util.HttpUtil;
|
import com.syjiaer.clinic.server.common.util.HttpUtil;
|
||||||
import com.syjiaer.clinic.server.entity.social.SocialChronicDisease;
|
import com.syjiaer.clinic.server.entity.social.SocialChronicDisease;
|
||||||
import com.syjiaer.clinic.server.entity.social.SocialDiagnose;
|
import com.syjiaer.clinic.server.entity.social.SocialDiagnose;
|
||||||
|
import com.syjiaer.clinic.server.entity.social.SocialDirectory;
|
||||||
import com.syjiaer.clinic.server.entity.social.SocialItem;
|
import com.syjiaer.clinic.server.entity.social.SocialItem;
|
||||||
import com.syjiaer.clinic.server.mapper.social.SocialDiagnoseMapper;
|
import com.syjiaer.clinic.server.mapper.social.SocialDiagnoseMapper;
|
||||||
import com.syjiaer.clinic.server.mapper.social.SocialItemMapper;
|
import com.syjiaer.clinic.server.mapper.social.SocialItemMapper;
|
||||||
|
|
@ -56,4 +57,19 @@ public class SocialDiagnoseService {
|
||||||
socialDirectoryVersionService.setSocialDirectoryVersion(type, version_name, list.get(0).getVersionName(), list.size());
|
socialDirectoryVersionService.setSocialDirectoryVersion(type, version_name, list.get(0).getVersionName(), list.size());
|
||||||
return list.get(0).getVersionName();
|
return list.get(0).getVersionName();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 搜索诊断列表
|
||||||
|
*
|
||||||
|
* @param keyword
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public List<SocialDiagnose> getDiagnosis(String keyword) {
|
||||||
|
QueryWrapper<SocialDiagnose> queryWrapper = new QueryWrapper<>();
|
||||||
|
if (keyword != null && !keyword.isEmpty()) {
|
||||||
|
queryWrapper.and(wrapper -> wrapper.like("name", keyword).or().like("code", keyword));
|
||||||
|
}
|
||||||
|
queryWrapper.last("limit 20");
|
||||||
|
return socialDiagnoseMapper.selectList(queryWrapper);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -395,20 +395,5 @@ public class SocialDirectoryService extends BaseService {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 搜索诊断列表
|
|
||||||
*
|
|
||||||
* @param keyword
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
public List<SocialDirectory> getDiagnosis(String keyword) {
|
|
||||||
QueryWrapper<SocialDirectory> queryWrapper = new QueryWrapper<>();
|
|
||||||
queryWrapper.eq("type", 1307);
|
|
||||||
if (keyword != null && !keyword.isEmpty()) {
|
|
||||||
queryWrapper.and(wrapper -> wrapper.like("name", keyword).or().like("code", keyword).or().like("keyword", keyword));
|
|
||||||
}
|
|
||||||
queryWrapper.select("code", "name", "data");
|
|
||||||
queryWrapper.last("limit 20");
|
|
||||||
return socialDirectoryMapper.selectList(queryWrapper);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,19 @@
|
||||||
|
package com.syjiaer.clinic.server.service.statistics;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
|
import com.syjiaer.clinic.server.service.BaseService;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class StatisticsService extends BaseService {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
<mapper namespace="com.syjiaer.clinic.server.mapper.charge.ChargeServiceListMapper">
|
<mapper namespace="com.syjiaer.clinic.server.mapper.charge.ChargeItemListMapper">
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
<mapper namespace="com.syjiaer.clinic.server.mapper.medical.MedicalRecordMapper">
|
<mapper namespace="com.syjiaer.clinic.server.mapper.diagnosis.DiagnosisMapper">
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
@ -0,0 +1,5 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
<mapper namespace="com.syjiaer.clinic.server.mapper.diagnosis.DiagnosisMedicalGoodsListMapper">
|
||||||
|
|
||||||
|
</mapper>
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
<mapper namespace="com.syjiaer.clinic.server.mapper.medical.MedicalGoodsListMapper">
|
<mapper namespace="com.syjiaer.clinic.server.mapper.diagnosis.DiagnosisMedicalItemListMapper">
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
<mapper namespace="com.syjiaer.clinic.server.mapper.medical.MedicalItemListMapper">
|
<mapper namespace="com.syjiaer.clinic.server.mapper.diagnosis.DiagnosisMedicalRecordMapper">
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
@ -1,16 +1,11 @@
|
||||||
package com.syjiaer.clinic.server;
|
package com.syjiaer.clinic.server;
|
||||||
|
|
||||||
import com.syjiaer.clinic.server.common.api.input.IM2203A;
|
import com.syjiaer.clinic.server.service.diagnosis.MedicalRecordService;
|
||||||
import com.syjiaer.clinic.server.service.medical.MedicalRecordService;
|
|
||||||
import com.syjiaer.clinic.server.service.social.SocialDiagnoseService;
|
import com.syjiaer.clinic.server.service.social.SocialDiagnoseService;
|
||||||
import com.syjiaer.clinic.server.service.social.SocialDirectoryService;
|
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.boot.test.context.SpringBootTest;
|
import org.springframework.boot.test.context.SpringBootTest;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
@SpringBootTest
|
@SpringBootTest
|
||||||
class ServerApplicationTests {
|
class ServerApplicationTests {
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue