个人销售值和团队销售值
parent
5327ea8c6b
commit
3f43b27254
|
|
@ -0,0 +1,29 @@
|
|||
<?php
|
||||
|
||||
namespace App\Endpoint\Api\Http\Controllers\Merchant;
|
||||
|
||||
use App\Endpoint\Api\Http\Controllers\Controller;
|
||||
use App\Endpoint\Api\Http\Resources\SalesValueLogResource;
|
||||
use App\Helpers\Paginator as PaginatorHelper;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class SalesValueLogController extends Controller
|
||||
{
|
||||
/**
|
||||
* 个人销售值日志
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Http\JsonResponse
|
||||
*/
|
||||
public function index(Request $request)
|
||||
{
|
||||
$perPage = PaginatorHelper::resolvePerPage('per_page', 20, 50);
|
||||
|
||||
$salesValueLogs = $request->user()
|
||||
->salesValueLogs()
|
||||
->latest('id')
|
||||
->simplePaginate($perPage);
|
||||
|
||||
return SalesValueLogResource::collection($salesValueLogs);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
<?php
|
||||
|
||||
namespace App\Endpoint\Api\Http\Controllers\Merchant;
|
||||
|
||||
use App\Endpoint\Api\Http\Controllers\Controller;
|
||||
use App\Endpoint\Api\Http\Resources\SalesValueLogResource;
|
||||
use App\Helpers\Paginator as PaginatorHelper;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class TeamSalesValueLogController extends Controller
|
||||
{
|
||||
/**
|
||||
* 团队销售值日志
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return \Illuminate\Http\JsonResponse
|
||||
*/
|
||||
public function index(Request $request)
|
||||
{
|
||||
$perPage = PaginatorHelper::resolvePerPage('per_page', 20, 50);
|
||||
|
||||
$teamSalesValueLogs = $request->user()
|
||||
->teamSalesValueLogs()
|
||||
->latest('id')
|
||||
->simplePaginate($perPage);
|
||||
|
||||
return SalesValueLogResource::collection($teamSalesValueLogs);
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
<?php
|
||||
|
||||
namespace App\Endpoint\Api\Http\Resources;
|
||||
|
||||
use Illuminate\Http\Resources\Json\JsonResource;
|
||||
|
||||
class SalesValueLogResource extends JsonResource
|
||||
{
|
||||
/**
|
||||
* Transform the resource into an array.
|
||||
*
|
||||
* @param \Illuminate\Http\Request $request
|
||||
* @return array|\Illuminate\Contracts\Support\Arrayable|\JsonSerializable
|
||||
*/
|
||||
public function toArray($request)
|
||||
{
|
||||
return [
|
||||
'change_sales_value' => (string) $this->change_sales_value,
|
||||
'remarks' => (string) $this->remarks,
|
||||
'created_at' => $this->created_at->toDateTimeString(),
|
||||
];
|
||||
}
|
||||
}
|
||||
|
|
@ -182,5 +182,9 @@ Route::group([
|
|||
],
|
||||
], function () {
|
||||
Route::get('account', [Merchant\UserController::class, 'account']);
|
||||
// 个人销售值
|
||||
Route::get('sales-value-logs', [Merchant\SalesValueLogController::class, 'index']);
|
||||
// 团队销售值
|
||||
Route::get('team-sales-value-logs', [Merchant\TeamSalesValueLogController::class, 'index']);
|
||||
});
|
||||
});
|
||||
|
|
|
|||
|
|
@ -236,6 +236,22 @@ class User extends Model implements AuthorizableContract, AuthenticatableContrac
|
|||
return $this->hasMany(QuotaLog::class);
|
||||
}
|
||||
|
||||
/**
|
||||
* 属于此用户的团队销售值(含自己的销售值)
|
||||
*/
|
||||
public function teamSalesValueLogs()
|
||||
{
|
||||
return $this->hasMany(SalesValueLog::class);
|
||||
}
|
||||
|
||||
/**
|
||||
* 属于此用户的团队销售值(含自己的销售值)
|
||||
*/
|
||||
public function salesValueLogs()
|
||||
{
|
||||
return $this->hasMany(SalesValueLog::class)->where('type', SalesValueLog::TYPE_INDIVIDUAL);
|
||||
}
|
||||
|
||||
/**
|
||||
* 用户的粉丝
|
||||
*
|
||||
|
|
|
|||
Loading…
Reference in New Issue