diff --git a/app/Endpoint/Api/Http/Controllers/Dealer/PurchaseSubsidyController.php b/app/Endpoint/Api/Http/Controllers/Dealer/PurchaseSubsidyController.php new file mode 100644 index 00000000..966cd654 --- /dev/null +++ b/app/Endpoint/Api/Http/Controllers/Dealer/PurchaseSubsidyController.php @@ -0,0 +1,26 @@ +where('user_id', $request->user()->id) + ->latest('id') + ->simplePaginate(Paginator::resolvePerPage('per_page', 20, 50)); + + return DealerPurchaseSubsidyResource::collection($purchaseSubsidies); + } +} diff --git a/app/Endpoint/Api/Http/Resources/Dealer/DealerPurchaseSubsidyResource.php b/app/Endpoint/Api/Http/Resources/Dealer/DealerPurchaseSubsidyResource.php new file mode 100644 index 00000000..41b95d54 --- /dev/null +++ b/app/Endpoint/Api/Http/Resources/Dealer/DealerPurchaseSubsidyResource.php @@ -0,0 +1,26 @@ + $this->total_purchase_amount, + 'total_subsidy' => $this->total_subsidy, + 'total_amount' => $this->total_amount, + 'fee' => $this->fee, + 'start_date' => $this->start_at->rawFormat('Y/m/d'), + 'end_date' => $this->end_at->rawFormat('Y/m/d'), + ]; + } +} diff --git a/app/Endpoint/Api/routes.php b/app/Endpoint/Api/routes.php index cbac91d0..1b5f9d0c 100644 --- a/app/Endpoint/Api/routes.php +++ b/app/Endpoint/Api/routes.php @@ -268,5 +268,8 @@ Route::group([ Route::post('wallet/withdraw', [Dealer\WalletController::class, 'walletToBank']); Route::get('wallet/withdraw-logs', [Dealer\WalletController::class, 'walletToBankLogs']); Route::get('wallet/withdraw-logs/{withdraw_log}', [Dealer\WalletController::class, 'walletToBankLogShow']); + + // 进货补贴 + Route::get('purchase-subsidies', [Dealer\PurchaseSubsidyController::class, 'index']); }); }); diff --git a/app/Models/DealerPurchaseSubsidy.php b/app/Models/DealerPurchaseSubsidy.php index ffb86130..3017bd07 100644 --- a/app/Models/DealerPurchaseSubsidy.php +++ b/app/Models/DealerPurchaseSubsidy.php @@ -41,6 +41,14 @@ class DealerPurchaseSubsidy extends Model 'remark', ]; + /** + * 仅查询结算完成的进货补贴 + */ + public function scopeSettleCompleted($query) + { + return $query->where('settle_state', DealerPurchaseSubsidySettleState::Completed); + } + public function dealer() { return $this->belongsTo(Dealer::class, 'user_id', 'user_id');