tesla ranking
This commit is contained in:
parent
c622fe43e5
commit
b30232da1a
11
app/Models/TeslaRanking.php
Normal file
11
app/Models/TeslaRanking.php
Normal file
@ -0,0 +1,11 @@
|
||||
<?php
|
||||
|
||||
namespace App\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
class TeslaRanking extends Model
|
||||
{
|
||||
use HasFactory;
|
||||
}
|
||||
@ -19,6 +19,7 @@ use App\Models\ServiceRoleOrder;
|
||||
use App\Models\ServiceRoleUser;
|
||||
use App\Models\ServiceUser;
|
||||
use App\Models\ServiceUserBindRole;
|
||||
use App\Models\TeslaRanking;
|
||||
use App\Models\User;
|
||||
use Exception;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
@ -95,12 +96,49 @@ class OfflineOrderService
|
||||
$offline_order->save();
|
||||
}
|
||||
|
||||
|
||||
DB::commit();
|
||||
return $offline_order;
|
||||
|
||||
}
|
||||
|
||||
public function updateTeslaRanking($order)
|
||||
{
|
||||
$orderId = null;
|
||||
$finishedAt = null;
|
||||
if (empty($order->referrer)) {
|
||||
return;
|
||||
}
|
||||
$totalNum = Order::where("referrer_id", $order->referrer)->where("is_tesla", 1)->count();
|
||||
if (empty($totalNum)) {
|
||||
TeslaRanking::where("user_id", $order->referrer)->delete();
|
||||
return;
|
||||
}
|
||||
if ($totalNum >= 10) {
|
||||
$orderList = Order::where("referrer_id", $order->referrer)->where("is_tesla", 1)->orderBy("id", "asc")->get();
|
||||
if (count($orderList) == 0) {
|
||||
$orderId = $orderList[9]->id;
|
||||
$finishedAt = $orderList[9]->finishedAt;
|
||||
}
|
||||
}
|
||||
|
||||
$ranking = TeslaRanking::where("user_id", $order->referrer)->first();
|
||||
if (empty($ranking)) {
|
||||
TeslaRanking::create([
|
||||
"user_id" => $order->referrer,
|
||||
"total_num" => $totalNum,
|
||||
"finished_at" => $finishedAt,
|
||||
"finished_order_id" => $orderId
|
||||
]);
|
||||
} else {
|
||||
TeslaRanking::where("user_id", $order->referrer)->update([
|
||||
"total_num" => $totalNum,
|
||||
"finished_at" => $finishedAt,
|
||||
"finished_order_id" => $orderId
|
||||
]);
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
public function getOrderList($keywords = '', $status = '', $agency_id = '', $page_size = 15)
|
||||
{
|
||||
$orders = OfflineOrder::with([
|
||||
|
||||
Loading…
Reference in New Issue
Block a user