generated from liutk/owl-admin-base
Compare commits
4 Commits
9b4e798fee
...
138f486caf
| Author | SHA1 | Date |
|---|---|---|
|
|
138f486caf | |
|
|
6e5f79d730 | |
|
|
f22cbf53cc | |
|
|
aa2b91ccc8 |
|
|
@ -1,9 +0,0 @@
|
||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Filters;
|
|
||||||
|
|
||||||
use EloquentFilter\ModelFilter;
|
|
||||||
|
|
||||||
class ReimbursementFilter extends ModelFilter
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
@ -3,7 +3,6 @@
|
||||||
namespace App\Models;
|
namespace App\Models;
|
||||||
|
|
||||||
use App\Enums\CheckStatus;
|
use App\Enums\CheckStatus;
|
||||||
use App\Filters\ReimbursementFilter;
|
|
||||||
use App\Traits\HasCheckable;
|
use App\Traits\HasCheckable;
|
||||||
use App\Traits\HasDateTimeFormatter;
|
use App\Traits\HasDateTimeFormatter;
|
||||||
use EloquentFilter\Filterable;
|
use EloquentFilter\Filterable;
|
||||||
|
|
@ -24,21 +23,26 @@ class Reimbursement extends Model
|
||||||
'photos',
|
'photos',
|
||||||
];
|
];
|
||||||
|
|
||||||
|
public function modelFilter()
|
||||||
|
{
|
||||||
|
return \App\Admin\Filters\ReimbursementFilter::class;
|
||||||
|
}
|
||||||
|
|
||||||
public function employee(): BelongsTo
|
public function employee(): BelongsTo
|
||||||
{
|
{
|
||||||
return $this->belongsTo(Employee::class);
|
return $this->belongsTo(Employee::class);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function scopeSort($q)
|
||||||
|
{
|
||||||
|
return $q->orderBy('created_at', 'desc');
|
||||||
|
}
|
||||||
|
|
||||||
public function type(): BelongsTo
|
public function type(): BelongsTo
|
||||||
{
|
{
|
||||||
return $this->belongsTo(Keyword::class, 'reimbursement_type_id', 'key');
|
return $this->belongsTo(Keyword::class, 'reimbursement_type_id', 'key');
|
||||||
}
|
}
|
||||||
|
|
||||||
public function modelFilter(): string
|
|
||||||
{
|
|
||||||
return ReimbursementFilter::class;
|
|
||||||
}
|
|
||||||
|
|
||||||
public function canUpdate(): bool
|
public function canUpdate(): bool
|
||||||
{
|
{
|
||||||
return in_array($this->workflow?->check_status, [CheckStatus::None, CheckStatus::Fail, CheckStatus::Cancel]);
|
return in_array($this->workflow?->check_status, [CheckStatus::None, CheckStatus::Fail, CheckStatus::Cancel]);
|
||||||
|
|
|
||||||
|
|
@ -41,7 +41,7 @@ class AdminPermissionSeeder extends Seeder
|
||||||
'uri' => '/store',
|
'uri' => '/store',
|
||||||
'children' => [
|
'children' => [
|
||||||
'stores' => [
|
'stores' => [
|
||||||
'name' => '全部门店',
|
'name' => '门店管理',
|
||||||
'icon' => '',
|
'icon' => '',
|
||||||
'uri' => '/store/stores',
|
'uri' => '/store/stores',
|
||||||
'resource' => true,
|
'resource' => true,
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,9 @@ use Illuminate\Support\Facades\Route;
|
||||||
Route::post('/auth/login', [AccessTokenController::class, 'store']);
|
Route::post('/auth/login', [AccessTokenController::class, 'store']);
|
||||||
Route::delete('/auth/logout', [AccessTokenController::class, 'destroy']);
|
Route::delete('/auth/logout', [AccessTokenController::class, 'destroy']);
|
||||||
|
|
||||||
|
// 数据字典
|
||||||
|
Route::get('keyword', [\App\Http\Controllers\Api\KeywordController::class, 'index']);
|
||||||
|
|
||||||
Route::group([
|
Route::group([
|
||||||
'middleware' => ['auth:api'],
|
'middleware' => ['auth:api'],
|
||||||
], function () {
|
], function () {
|
||||||
|
|
@ -51,6 +54,9 @@ Route::group([
|
||||||
// 员工管理
|
// 员工管理
|
||||||
Route::group(['middleware' => ['user_role:admin,store']], function () {
|
Route::group(['middleware' => ['user_role:admin,store']], function () {
|
||||||
Route::post('hr/employee/{id}/leave', [\App\Http\Controllers\Api\Hr\EmployeeController::class, 'leave']);
|
Route::post('hr/employee/{id}/leave', [\App\Http\Controllers\Api\Hr\EmployeeController::class, 'leave']);
|
||||||
Route::resource('hr/employee', \App\Http\Controllers\Api\Hr\EmployeeController::class);
|
Route::apiResource('hr/employee', \App\Http\Controllers\Api\Hr\EmployeeController::class);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// 报销管理
|
||||||
|
Route::apiResource('reimbursements', \App\Http\Controllers\Api\ReimbursementController::class);
|
||||||
});
|
});
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue