dev
This commit is contained in:
parent
72ebcc7f03
commit
a186c8e88b
|
|
@ -0,0 +1,28 @@
|
||||||
|
package com.syjiaer.clinic.server.common.enums;
|
||||||
|
|
||||||
|
public enum DiagnosisStatusEnum {
|
||||||
|
WAIT_CHARGE(0, "待收费"),
|
||||||
|
CHARGE_FINISH(1, "已收费"),
|
||||||
|
REFUND_FINISH(2, "已退费");
|
||||||
|
|
||||||
|
private Integer status;
|
||||||
|
private String desc;
|
||||||
|
DiagnosisStatusEnum(Integer status, String desc) {
|
||||||
|
this.status = status;
|
||||||
|
this.desc = desc;
|
||||||
|
}
|
||||||
|
public Integer getStatus() {
|
||||||
|
return status;
|
||||||
|
}
|
||||||
|
public String getDesc() {
|
||||||
|
return desc;
|
||||||
|
}
|
||||||
|
public static DiagnosisStatusEnum getByStatus(Integer status) {
|
||||||
|
for (DiagnosisStatusEnum diagnosisStatusEnum : values()) {
|
||||||
|
if (diagnosisStatusEnum.getStatus().equals(status)) {
|
||||||
|
return diagnosisStatusEnum;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -72,6 +72,17 @@ public class ChargeController extends BaseController {
|
||||||
chargeService.completeOrder(id,payType);
|
chargeService.completeOrder(id,payType);
|
||||||
return success();
|
return success();
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* 根据诊断code和状态获取诊断信息
|
||||||
|
*/
|
||||||
|
@RequestMapping("/getOrderByDiagnosisCode")
|
||||||
|
public Result<ChargeOrder> getOrderByDiagnosisCode() {
|
||||||
|
String diagnosisCode = parmsUtil.getString("diagnosisCode","诊断code不能为空");
|
||||||
|
Integer status = parmsUtil.getInteger("status","诊断状态不能为空");
|
||||||
|
ChargeOrder chargeOrder = chargeService.getOrderByDiagnosisCode(diagnosisCode,status);
|
||||||
|
|
||||||
|
return success(chargeOrder);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据code查询订单详情
|
* 根据code查询订单详情
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,8 @@ public class TipCountVo {
|
||||||
private Long completeDiaCount;
|
private Long completeDiaCount;
|
||||||
//已收费数量
|
//已收费数量
|
||||||
private Long chargedCount;
|
private Long chargedCount;
|
||||||
|
//已退费数量
|
||||||
|
private Long refundedCount;
|
||||||
//未收费数量
|
//未收费数量
|
||||||
private Long unchargedCount;
|
private Long unchargedCount;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,7 @@
|
||||||
package com.syjiaer.clinic.server.service.charge;
|
package com.syjiaer.clinic.server.service.charge;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
||||||
import com.syjiaer.clinic.server.common.api.annotations.IMField;
|
import com.syjiaer.clinic.server.common.api.annotations.IMField;
|
||||||
import com.syjiaer.clinic.server.common.api.input.*;
|
import com.syjiaer.clinic.server.common.api.input.*;
|
||||||
import com.syjiaer.clinic.server.common.api.output.OM2206A;
|
import com.syjiaer.clinic.server.common.api.output.OM2206A;
|
||||||
|
|
@ -882,6 +883,17 @@ public class ChargeService extends BaseService {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//诊断状态改为已退费
|
||||||
|
Diagnosis diagnosis = diagnosisMapper.selectByCode(chargeOrder.getDiagnosisCode());
|
||||||
|
if (diagnosis == null){
|
||||||
|
throw new MessageException("诊断不存在");
|
||||||
|
}
|
||||||
|
UpdateWrapper<Diagnosis> diagnosisUpdate = new UpdateWrapper<>();
|
||||||
|
diagnosisUpdate.eq("id", diagnosis.getId());
|
||||||
|
diagnosisUpdate.set("status", DiagnosisStatusEnum.REFUND_FINISH.getStatus());
|
||||||
|
diagnosisMapper.update(diagnosisUpdate);
|
||||||
|
|
||||||
|
|
||||||
if (chargeOrder.getPayType().equals(RetailOrderPayTypeEnum.MEDICARE.getCode())) {
|
if (chargeOrder.getPayType().equals(RetailOrderPayTypeEnum.MEDICARE.getCode())) {
|
||||||
ChargeSocialPayLog socialPayLog = chargeSocialPayLogMapper.selectOne(new QueryWrapper<ChargeSocialPayLog>().eq("charge_order_code", chargeOrder.getCode()).last("limit 1"));
|
ChargeSocialPayLog socialPayLog = chargeSocialPayLogMapper.selectOne(new QueryWrapper<ChargeSocialPayLog>().eq("charge_order_code", chargeOrder.getCode()).last("limit 1"));
|
||||||
if (socialPayLog == null) {
|
if (socialPayLog == null) {
|
||||||
|
|
@ -901,6 +913,8 @@ public class ChargeService extends BaseService {
|
||||||
updateOrder.setId(chargeOrder.getId());
|
updateOrder.setId(chargeOrder.getId());
|
||||||
updateOrder.setStatus(RetailOrderStatusEnum.REFUNDED.getCode());
|
updateOrder.setStatus(RetailOrderStatusEnum.REFUNDED.getCode());
|
||||||
chargeOrderMapper.updateById(updateOrder);
|
chargeOrderMapper.updateById(updateOrder);
|
||||||
|
|
||||||
|
|
||||||
//记录退费日志
|
//记录退费日志
|
||||||
recordChargeLog(chargeOrder, ChargeSourceEnum.REFUND, ChargeTypeEnum.REFUND);
|
recordChargeLog(chargeOrder, ChargeSourceEnum.REFUND, ChargeTypeEnum.REFUND);
|
||||||
//库存添加回去
|
//库存添加回去
|
||||||
|
|
@ -978,6 +992,20 @@ public class ChargeService extends BaseService {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据诊断id和状态查询订单
|
||||||
|
* @param diagnosisCode
|
||||||
|
* @param status
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public ChargeOrder getOrderByDiagnosisCode(String diagnosisCode, Integer status) {
|
||||||
|
QueryWrapper<ChargeOrder> queryWrapper = new QueryWrapper<>();
|
||||||
|
queryWrapper.eq("diagnosis_code",diagnosisCode);
|
||||||
|
queryWrapper.eq("status",status);
|
||||||
|
queryWrapper.last("limit 1");
|
||||||
|
return chargeOrderMapper.selectOne(queryWrapper);
|
||||||
|
}
|
||||||
|
|
||||||
// public void recordSocialInfo(OM2103 om2103, RetailOrder dbOrder) {
|
// public void recordSocialInfo(OM2103 om2103, RetailOrder dbOrder) {
|
||||||
// QueryWrapper<RetailSocialPayLog> logQuery = new QueryWrapper<>();
|
// QueryWrapper<RetailSocialPayLog> logQuery = new QueryWrapper<>();
|
||||||
// logQuery.eq("retail_order_code", dbOrder.getCode());
|
// logQuery.eq("retail_order_code", dbOrder.getCode());
|
||||||
|
|
|
||||||
|
|
@ -212,15 +212,21 @@ public class StatisticsService extends BaseService {
|
||||||
QueryWrapper<Diagnosis> diagnosisWrapper = new QueryWrapper<>();
|
QueryWrapper<Diagnosis> diagnosisWrapper = new QueryWrapper<>();
|
||||||
diagnosisWrapper.lt("create_time", endTime);
|
diagnosisWrapper.lt("create_time", endTime);
|
||||||
diagnosisWrapper.ge("create_time", beginTime);
|
diagnosisWrapper.ge("create_time", beginTime);
|
||||||
diagnosisWrapper.eq("status", 0);
|
diagnosisWrapper.eq("status", DiagnosisStatusEnum.WAIT_CHARGE.getStatus());
|
||||||
tipCountVo.setUnchargedCount(diagnosisMapper.selectCount(diagnosisWrapper));
|
tipCountVo.setUnchargedCount(diagnosisMapper.selectCount(diagnosisWrapper));
|
||||||
|
|
||||||
diagnosisWrapper = new QueryWrapper<>();
|
diagnosisWrapper = new QueryWrapper<>();
|
||||||
diagnosisWrapper.lt("create_time", endTime);
|
diagnosisWrapper.lt("create_time", endTime);
|
||||||
diagnosisWrapper.ge("create_time", beginTime);
|
diagnosisWrapper.ge("create_time", beginTime);
|
||||||
diagnosisWrapper.eq("status", 1);
|
diagnosisWrapper.eq("status", DiagnosisStatusEnum.CHARGE_FINISH.getStatus());
|
||||||
tipCountVo.setChargedCount(diagnosisMapper.selectCount(diagnosisWrapper));
|
tipCountVo.setChargedCount(diagnosisMapper.selectCount(diagnosisWrapper));
|
||||||
|
|
||||||
|
diagnosisWrapper = new QueryWrapper<>();
|
||||||
|
diagnosisWrapper.lt("create_time", endTime);
|
||||||
|
diagnosisWrapper.ge("create_time", beginTime);
|
||||||
|
diagnosisWrapper.eq("status", DiagnosisStatusEnum.REFUND_FINISH.getStatus());
|
||||||
|
tipCountVo.setRefundedCount(diagnosisMapper.selectCount(diagnosisWrapper));
|
||||||
|
|
||||||
return tipCountVo;
|
return tipCountVo;
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue