修不过

This commit is contained in:
2022-02-24 13:35:08 +08:00
parent b677771328
commit ccaccbd129

View File

@@ -2,6 +2,7 @@
namespace XuanChen\WoUnicom; namespace XuanChen\WoUnicom;
use App\Helpers\Helper;
use App\Models\ActivitySchoolOrder; use App\Models\ActivitySchoolOrder;
use App\Models\ActivityPetroOrder; use App\Models\ActivityPetroOrder;
use App\Models\Payment; use App\Models\Payment;
@@ -110,74 +111,74 @@ class WoUnicom
//验签成功 //验签成功
if ($res === true) { if ($res === true) {
$channel = Helper::getChannel($data['orderid']);
switch ($channel) {
case 'welfare':
$order = WelfareOrder::where('orderid', $data['orderid'])->first();
if ($order && $order->status == 'UNPAY') {
$payment = $order->payment;
//福利订单 $payment->paid([
if (Str::is('WEAL*', $data['orderid'])) { 'type' => 'UNICOM',
$order = WelfareOrder::where('orderid', $data['orderid'])->first(); 'payfloodid' => $data['payfloodid'],
if ($order && $order->status == 'UNPAY') { ]);
$payment = $order->payment; $order->paid();
}
break;
case 'school':
$order = ActivitySchoolOrder::where('orderid', $data['orderid'])->first();
if ($order && $order->state == 'UNPAY') {
$payment = Payment::where('orderable_type', get_class($order))
->where('orderable_id', $order->id)
->latest()
->first();
$payment->paid([ $payment->state = 'SUCCESS';
'type' => 'UNICOM', $payment->out_trade_no = $data['payfloodid'];
'payfloodid' => $data['payfloodid'], $payment->type = 'UNICOM';
]); $payment->paid_at = Carbon::now();
$order->paid(); $payment->save();
} $order->paid();
}
break;
case 'petro':
$order = ActivityPetroOrder::where('orderid', $data['orderid'])->first();
if ($order && $order->state == 'UNPAY') {
$payment = Payment::where('orderable_type', get_class($order))
->where('orderable_id', $order->id)
->latest()
->first();
} elseif (Str::is('AS*', $data['orderid'])) { $payment->state = 'SUCCESS';
$order = ActivitySchoolOrder::where('orderid', $data['orderid'])->first(); $payment->out_trade_no = $data['payfloodid'];
if ($order && $order->state == 'UNPAY') { $payment->type = 'UNICOM';
$payment = \App\Models\Payment::where('orderable_type', get_class($order)) $payment->paid_at = Carbon::now();
->where('orderable_id', $order->id) $payment->save();
->latest() $order->paid();
->first(); }
break;
$payment->state = 'SUCCESS'; case 'web':
$payment->out_trade_no = $data['payfloodid']; default:
$payment->type = 'UNICOM'; $order = \App\Models\Order::where('orderid', $data['orderid'])->first();
$payment->paid_at = Carbon::now(); if ($order && $order->state == 'UNPAY') {
$payment->save(); $payment = Payment::where('orderable_type', get_class($order))
$order->paid(); ->where('orderable_id', $order->id)
} ->latest()
} elseif (Str::is('ASO*', $data['orderid'])) { ->first();
$order = ActivityPetroOrder::where('orderid', $data['orderid'])->first();
if ($order && $order->state == 'UNPAY') {
$payment = \App\Models\Payment::where('orderable_type', get_class($order))
->where('orderable_id', $order->id)
->latest()
->first();
$payment->state = 'SUCCESS';
$payment->out_trade_no = $data['payfloodid'];
$payment->type = 'UNICOM';
$payment->paid_at = Carbon::now();
$payment->save();
$order->paid();
}
} else {
$order = \App\Models\Order::where('orderid', $data['orderid'])->first();
if ($order && $order->state == 'UNPAY') {
$payment = \App\Models\Payment::where('orderable_type', get_class($order))
->where('orderable_id', $order->id)
->latest()
->first();
$payment->state = 'SUCCESS';
$payment->out_trade_no = $data['payfloodid'];
$payment->type = 'UNICOM';
$payment->paid_at = Carbon::now();
$payment->save();
$order->paid();
}
$payment->state = 'SUCCESS';
$payment->out_trade_no = $data['payfloodid'];
$payment->type = 'UNICOM';
$payment->paid_at = Carbon::now();
$payment->save();
$order->paid();
}
break;
} }
$this->updateLog(['SUCCESS']); $this->updateLog(['SUCCESS']);
return 'SUCCESS'; return 'SUCCESS';
} else { } else {
$this->updateLog(['验签失败']); $this->updateLog(['验签失败']);
return '验签失败'; return '验签失败';
} }
} }