Skip to content

Commit 34daffc

Browse files
committed
Added supplier file uploads
1 parent e1d3714 commit 34daffc

File tree

7 files changed

+50
-7
lines changed

7 files changed

+50
-7
lines changed

app/Http/Controllers/Controller.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
use App\Models\License;
3131
use App\Models\Location;
3232
use App\Models\Maintenance;
33+
use App\Models\Supplier;
3334
use App\Models\User;
3435
use Illuminate\Support\Facades\Auth;
3536
use Illuminate\Foundation\Auth\Access\AuthorizesRequests;
@@ -52,6 +53,7 @@ abstract class Controller extends BaseController
5253
'licenses' => License::class,
5354
'locations' => Location::class,
5455
'models' => AssetModel::class,
56+
'suppliers' => Supplier::class,
5557
'users' => User::class,
5658
];
5759

@@ -66,6 +68,7 @@ abstract class Controller extends BaseController
6668
'licenses' => 'private_uploads/licenses/',
6769
'locations' => 'private_uploads/locations/',
6870
'models' => 'private_uploads/models/',
71+
'suppliers' => 'private_uploads/suppliers/',
6972
'users' => 'private_uploads/users/',
7073
];
7174

@@ -80,6 +83,7 @@ abstract class Controller extends BaseController
8083
'licenses' => 'license',
8184
'locations' => 'location',
8285
'models' => 'model',
86+
'suppliers' => 'supplier',
8387
'users' => 'user',
8488
];
8589

app/Models/Actionlog.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -518,6 +518,8 @@ public function uploads_file_path()
518518
return 'private_uploads/locations/'.$this->filename;
519519
case Maintenance::class:
520520
return 'private_uploads/maintenances/'.$this->filename;
521+
case Supplier::class:
522+
return 'private_uploads/suppliers/'.$this->filename;
521523
case User::class:
522524
return 'private_uploads/users/'.$this->filename;
523525
default:

app/Models/Supplier.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,18 @@
33
namespace App\Models;
44

55
use App\Http\Traits\UniqueUndeletedTrait;
6+
use App\Models\Traits\HasUploads;
67
use App\Models\Traits\Searchable;
78
use Illuminate\Database\Eloquent\Factories\HasFactory;
89
use Illuminate\Database\Eloquent\SoftDeletes;
910
use Watson\Validating\ValidatingTrait;
1011
use \Illuminate\Database\Eloquent\Relations\Relation;
12+
use App\Models\Traits\Loggable;
1113
class Supplier extends SnipeModel
1214
{
1315
use HasFactory;
1416
use SoftDeletes;
17+
use HasUploads;
1518

1619
protected $table = 'suppliers';
1720

@@ -42,6 +45,7 @@ class Supplier extends SnipeModel
4245
use ValidatingTrait;
4346
use UniqueUndeletedTrait;
4447
use Searchable;
48+
use Loggable;
4549

4650
/**
4751
* The attributes that should be included when searching the model.

resources/views/suppliers/view.blade.php

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,26 @@
100100
</span>
101101
</a>
102102
</li>
103+
104+
<li>
105+
<a href="#files" data-toggle="tab">
106+
107+
<span class="hidden-lg hidden-md">
108+
<i class="fas fa-barcode fa-2x"></i>
109+
</span>
110+
<span class="hidden-xs hidden-sm">
111+
{{ trans('general.files') }}
112+
{!! ($supplier->uploads->count() > 0 ) ? '<span class="badge badge-secondary">'.number_format($supplier->uploads->count()).'</span>' : '' !!}
113+
</span>
114+
</a>
115+
</li>
116+
117+
<li class="pull-right">
118+
<a href="#" data-toggle="modal" data-target="#uploadFileModal">
119+
<x-icon type="paperclip" />
120+
{{ trans('button.upload') }}
121+
</a>
122+
</li>
103123
</ul>
104124

105125

@@ -243,6 +263,14 @@ class="table table-striped snipe-table"
243263
</div><!-- /.table-responsive -->
244264
</div><!-- /.tab-pane -->
245265

266+
<div class="tab-pane fade" id="files">
267+
<div class="row">
268+
<div class="col-md-12">
269+
<x-filestable object_type="suppliers" :object="$supplier" />
270+
</div> <!-- /.col-md-12 -->
271+
</div> <!-- /.row -->
272+
</div>
273+
246274
</div><!--/.col-md-9-->
247275
</div><!--/.col-md-9-->
248276
</div><!--/.col-md-9-->
@@ -318,6 +346,9 @@ class="table table-striped snipe-table"
318346
</div>
319347
</div>
320348

349+
@can('update', \App\Models\Supplier::class)
350+
@include ('modals.upload-file', ['item_type' => 'supplier', 'item_id' => $supplier->id])
351+
@endcan
321352
@stop
322353

323354
@section('moar_scripts')

routes/api.php

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1348,7 +1348,7 @@
13481348
'index'
13491349
]
13501350
)->name('api.files.index')
1351-
->where(['object_type' => 'accessories|audits|assets|components|consumables|hardware|licenses|locations|maintenances|models|users']);
1351+
->where(['object_type' => 'accessories|audits|assets|components|consumables|hardware|licenses|locations|maintenances|models|suppliers|users']);
13521352

13531353
// Get a file
13541354
Route::get('{object_type}/{id}/files/{file_id}',
@@ -1357,7 +1357,7 @@
13571357
'show'
13581358
]
13591359
)->name('api.files.show')
1360-
->where(['object_type' => 'accessories|audits|assets|components|consumables|hardware|licenses|locations|maintenances|models|users']);
1360+
->where(['object_type' => 'accessories|audits|assets|components|consumables|hardware|licenses|locations|maintenances|models|suppliers|users']);
13611361

13621362
// Upload files(s)
13631363
Route::post('{object_type}/{id}/files',
@@ -1366,7 +1366,7 @@
13661366
'store'
13671367
]
13681368
)->name('api.files.store')
1369-
->where(['object_type' => 'accessories|audits|assets|components|consumables|hardware|licenses|locations|maintenances|models|users']);
1369+
->where(['object_type' => 'accessories|audits|assets|components|consumables|hardware|licenses|locations|maintenances|models|suppliers|users']);
13701370

13711371
// Delete files(s)
13721372
Route::delete('{object_type}/{id}/files/{file_id}/delete',
@@ -1375,6 +1375,6 @@
13751375
'destroy'
13761376
]
13771377
)->name('api.files.destroy')
1378-
->where(['object_type' => 'accessories|assets|components|consumables|hardware|licenses|locations|maintenances|models|users']);
1378+
->where(['object_type' => 'accessories|assets|components|consumables|hardware|licenses|locations|maintenances|models|suppliers|users']);
13791379

13801380
}); // end API routes

routes/web.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -716,7 +716,7 @@
716716
'show'
717717
]
718718
)->name('ui.files.show')
719-
->where(['object_type' => 'assets|audits|maintenances|hardware|models|users|locations|accessories|consumables|licenses|components']);
719+
->where(['object_type' => 'assets|audits|maintenances|hardware|models|users|locations|accessories|consumables|licenses|suppliers|components']);
720720

721721
// Upload files(s)
722722
Route::post('{object_type}/{id}/files',
@@ -725,7 +725,7 @@
725725
'store'
726726
]
727727
)->name('ui.files.store')
728-
->where(['object_type' => 'assets|audits|maintenances|hardware|models|users|locations|accessories|consumables|licenses|components']);
728+
->where(['object_type' => 'assets|audits|maintenances|hardware|models|users|locations|accessories|consumables|licenses|suppliers|components']);
729729

730730
// Delete files(s)
731731
Route::delete('{object_type}/{id}/files/{file_id}/delete',
@@ -734,7 +734,7 @@
734734
'destroy'
735735
]
736736
)->name('ui.files.destroy')
737-
->where(['object_type' => 'assets|maintenances|hardware|models|users|locations|accessories|consumables|licenses|components']);
737+
->where(['object_type' => 'assets|maintenances|hardware|models|users|locations|accessories|consumables|licenses|suppliers|components']);
738738
});
739739

740740

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
*
2+
!.gitignore

0 commit comments

Comments
 (0)