上报处方平台 监管平台
Some checks are pending
Build Docker / build (push) Waiting to run

This commit is contained in:
haomingming 2025-12-30 15:24:34 +08:00
parent e34eea86e1
commit 7560486731
2 changed files with 33 additions and 2 deletions

View File

@ -5,6 +5,7 @@ declare(strict_types=1);
namespace App\Command; namespace App\Command;
use App\Exception\BusinessException; use App\Exception\BusinessException;
use App\Model\OrderInquiry;
use App\Model\OrderPrescription; use App\Model\OrderPrescription;
use App\Model\OrderProduct; use App\Model\OrderProduct;
use App\Model\OrderSystem; use App\Model\OrderSystem;
@ -72,6 +73,22 @@ class ReportPreProductOrderCommand extends HyperfCommand
continue; continue;
} }
// 获取问诊订单数据
$params = array();
$params['order_inquiry_id'] = $item['order_inquiry_id'];
$order_inquiry = OrderInquiry::getOne($params);
if (empty($order_inquiry)) {
$this->line("结束,问诊订单数据错误");
continue;
}
//检测是否为抄方订单
if (!empty($order_inquiry['transfer_doctor_id'])){
$this->line("结束,该问诊订单为抄方订单");
continue;
}
Db::beginTransaction(); Db::beginTransaction();
try { try {
@ -152,6 +169,7 @@ class ReportPreProductOrderCommand extends HyperfCommand
'order_product_id', 'order_product_id',
'patient_id', 'patient_id',
'order_prescription_id', 'order_prescription_id',
'order_inquiry_id',
]; ];
$order_product = OrderProduct::getList($params,$fields); $order_product = OrderProduct::getList($params,$fields);

View File

@ -82,7 +82,9 @@ class ReportRegulatoryCommand extends HyperfCommand
// 上报网络咨询 // 上报网络咨询
try { try {
if ($report_regulatory['report_consult_status'] != 1 && $report_regulatory['report_consult_int'] < 5){ //检测是否为抄方订单
$transferInquiryOrder = $this->checkTransferInquiryOrder($order_inquiry);
if ($report_regulatory['report_consult_status'] != 1 && $report_regulatory['report_consult_int'] < 5 && $transferInquiryOrder){
$this->line("上报网络咨询"); $this->line("上报网络咨询");
// 获取上报数据-网络咨询 // 获取上报数据-网络咨询
@ -115,7 +117,9 @@ class ReportRegulatoryCommand extends HyperfCommand
// 上报复诊 // 上报复诊
try { try {
if ($report_regulatory['is_further_consult'] == 1){ //检测是否为抄方订单
$transferInquiryOrder = $this->checkTransferInquiryOrder($order_inquiry);
if ($report_regulatory['is_further_consult'] == 1 && $transferInquiryOrder){
if ($report_regulatory['report_further_consult_status'] != 1 && $report_regulatory['report_further_consult_int'] < 5) { if ($report_regulatory['report_further_consult_status'] != 1 && $report_regulatory['report_further_consult_int'] < 5) {
$this->line("上报复诊"); $this->line("上报复诊");
@ -318,7 +322,16 @@ class ReportRegulatoryCommand extends HyperfCommand
$this->line("信息:订单未取消的未完成订单,不执行"); $this->line("信息:订单未取消的未完成订单,不执行");
return false; return false;
} }
return true;
}
/**
* 检测抄方订单
* @param array|object $order_inquiry 问诊订单数据
* @return bool true:可执行 false:不可执行
*/
private function checkTransferInquiryOrder(array|object $order_inquiry): bool
{
//判断该问诊是否为抄方 //判断该问诊是否为抄方
if(!empty($order_inquiry['transfer_doctor_id'])){ if(!empty($order_inquiry['transfer_doctor_id'])){
$this->line("信息:该问诊为抄方类型,不执行"); $this->line("信息:该问诊为抄方类型,不执行");