修正取消问诊订单退款问题
This commit is contained in:
parent
259143a471
commit
3c6d820ee2
@ -9,6 +9,7 @@ use App\Amqp\Producer\CancelUnInquiryOrdersDelayDirectProducer;
|
||||
use App\Amqp\Producer\DoctorNotYetInquiryDelayDirectProducer;
|
||||
use App\Amqp\Producer\UserCouponExpiredDelayDirectProducer;
|
||||
use App\Constants\HttpEnumCode;
|
||||
use App\Model\Order;
|
||||
use App\Model\OrderInquiry;
|
||||
use App\Model\OrderInquiryCase;
|
||||
use App\Model\UserDoctor;
|
||||
@ -105,12 +106,19 @@ class AssignDoctorDelayDirectConsumer extends ConsumerMessage
|
||||
return Result::ACK;
|
||||
}
|
||||
|
||||
Log::getInstance("queue-AssignDoctor")->info("信息:订单退款");
|
||||
|
||||
$OrderService = new OrderService();
|
||||
$OrderService->orderRefund($order_inquiry['inquiry_no'], "无可分配医生");
|
||||
|
||||
Log::getInstance("queue-AssignDoctor")->info("取消问诊订单");
|
||||
// 取消订单
|
||||
$order_data = array();
|
||||
$order_data['cancel_status'] = 1;
|
||||
$order_data['cancel_time'] = date("Y-m-d H:i:s", time());
|
||||
$order_data['cancel_remarks'] = "未分配到合适的医生";
|
||||
$order_data['updated_at'] = date("Y-m-d H:i:s", time());
|
||||
|
||||
$params = array();
|
||||
$params['order_id'] = $order_inquiry['order_id'];
|
||||
Order::edit($params, $order_data);
|
||||
|
||||
$save_data = array();
|
||||
$save_data['inquiry_status'] = 7;
|
||||
@ -123,8 +131,6 @@ class AssignDoctorDelayDirectConsumer extends ConsumerMessage
|
||||
$params['order_inquiry_id'] = $order_inquiry['order_inquiry_id'];
|
||||
OrderInquiry::edit($params, $save_data);
|
||||
|
||||
Log::getInstance("queue-AssignDoctor")->info("已退款");
|
||||
|
||||
Db::commit();
|
||||
|
||||
try {
|
||||
@ -152,12 +158,19 @@ class AssignDoctorDelayDirectConsumer extends ConsumerMessage
|
||||
return Result::ACK;
|
||||
}
|
||||
|
||||
Log::getInstance("queue-AssignDoctor")->info("订单退款");
|
||||
|
||||
$OrderService = new OrderService();
|
||||
$OrderService->orderRefund($order_inquiry['inquiry_no'], "未分配到合适的医生");
|
||||
|
||||
Log::getInstance("queue-AssignDoctor")->info("取消问诊订单");
|
||||
// 取消订单
|
||||
$order_data = array();
|
||||
$order_data['cancel_status'] = 1;
|
||||
$order_data['cancel_time'] = date("Y-m-d H:i:s", time());
|
||||
$order_data['cancel_remarks'] = "未分配到合适的医生";
|
||||
$order_data['updated_at'] = date("Y-m-d H:i:s", time());
|
||||
|
||||
$params = array();
|
||||
$params['order_id'] = $order_inquiry['order_id'];
|
||||
Order::edit($params, $order_data);
|
||||
|
||||
$save_data = array();
|
||||
$save_data['inquiry_status'] = 7;
|
||||
|
||||
@ -120,8 +120,8 @@ class CancelUnInquiryOrdersDelayDirectConsumer extends ConsumerMessage
|
||||
$order_data['updated_at'] = date("Y-m-d H:i:s", time());
|
||||
|
||||
$params = array();
|
||||
$params['order_no'] = $order_inquiry['inquiry_no'];
|
||||
Order::edit($params,$order_data);
|
||||
$params['order_id'] = $order_inquiry['order_id'];
|
||||
Order::edit($params, $order_data);
|
||||
|
||||
// 取消问诊订单
|
||||
$order_inquiry_data = array();
|
||||
@ -161,10 +161,31 @@ class CancelUnInquiryOrdersDelayDirectConsumer extends ConsumerMessage
|
||||
// 检测问诊是否服务包首次问诊
|
||||
$is_first = $OrderServicePackageService->isFirstInquiryServicePackage($order_service_no);
|
||||
if ($is_first){
|
||||
// 如果是服务包的首单问诊订单即执行服务包退款
|
||||
// 取消订单
|
||||
$order_data = array();
|
||||
$order_data['cancel_status'] = 1;
|
||||
$order_data['cancel_time'] = date("Y-m-d H:i:s", time());
|
||||
$order_data['cancel_remarks'] = "医生未接受服务";
|
||||
$order_data['updated_at'] = date("Y-m-d H:i:s", time());
|
||||
|
||||
$params = array();
|
||||
$params['order_no'] = $order_service_no;
|
||||
Order::edit($params, $order_data);
|
||||
|
||||
// 取消问诊订单
|
||||
$order_inquiry_data = array();
|
||||
$order_inquiry_data['order_service_status'] = 5;
|
||||
$order_inquiry_data['cancel_time'] = date("Y-m-d H:i:s", time());
|
||||
$order_inquiry_data['cancel_remarks'] = "医生未接受服务"; // 取消订单备注
|
||||
$order_inquiry_data['updated_at'] = date("Y-m-d H:i:s", time());
|
||||
|
||||
$params = array();
|
||||
$params['order_service_no'] = $order_service_no;
|
||||
OrderInquiry::edit($params, $order_inquiry_data);
|
||||
|
||||
// 如果是服务包的首单问诊订单即执行服务包退款
|
||||
$OrderService = new OrderService();
|
||||
$OrderService->orderRefund($order_service_no, "医生未接诊");
|
||||
$OrderService->orderRefund($order_service_no, "医生未接受服务");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -4,6 +4,7 @@ declare(strict_types=1);
|
||||
|
||||
namespace App\Command;
|
||||
|
||||
use App\Model\Order;
|
||||
use App\Model\OrderPrescription;
|
||||
use App\Model\OrderProduct;
|
||||
use App\Model\UserPatient;
|
||||
@ -277,8 +278,19 @@ class getPrescriptionOrderStatusCommand extends HyperfCommand
|
||||
* @param array|object $order_product
|
||||
* @param string $cancel_remarks
|
||||
*/
|
||||
protected function savePreFailedOrderStatus(array|object $order_product,string $cancel_remarks)
|
||||
protected function savePreFailedOrderStatus(array|object $order_product,string $cancel_remarks): void
|
||||
{
|
||||
// 取消订单
|
||||
$order_data = array();
|
||||
$order_data['cancel_status'] = 1;
|
||||
$order_data['cancel_time'] = date("Y-m-d H:i:s", time());
|
||||
$order_data['cancel_remarks'] = $cancel_remarks;
|
||||
$order_data['updated_at'] = date("Y-m-d H:i:s", time());
|
||||
|
||||
$params = array();
|
||||
$params['order_id'] = $order_product['order_id'];
|
||||
Order::edit($params, $order_data);
|
||||
|
||||
// 订单状态(1:待支付 2:待发货 3:已发货 4:已签收 5:已取消)
|
||||
$params = array();
|
||||
$params['order_product_id'] = $order_product['order_product_id'];
|
||||
|
||||
@ -148,17 +148,6 @@ class OrderService extends BaseService
|
||||
throw new BusinessException("订单支付状态错误");
|
||||
}
|
||||
|
||||
// // 取消订单
|
||||
// $order_data = array();
|
||||
// $order_data['cancel_status'] = 1;
|
||||
// $order_data['cancel_time'] = date("Y-m-d H:i:s", time());
|
||||
// $order_data['cancel_remarks'] = "医生未接诊";
|
||||
// $order_data['updated_at'] = date("Y-m-d H:i:s", time());
|
||||
//
|
||||
// $params = array();
|
||||
// $params['order_id'] = $order['order_id'];
|
||||
// Order::edit($params, $order_data);
|
||||
|
||||
// 处理对应订单
|
||||
if ($order['order_type'] == 1) {
|
||||
// 检测问诊订单可退款状态
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user