mirror of
https://github.com/snipe/snipe-it.git
synced 2025-02-02 08:21:09 -08:00
Added serial and status to searchable relations
Signed-off-by: snipe <snipe@snipe.net>
This commit is contained in:
parent
b86b05c4fc
commit
71ebade641
|
@ -62,7 +62,15 @@ class AssetMaintenance extends Model implements ICompanyableChild
|
||||||
*
|
*
|
||||||
* @var array
|
* @var array
|
||||||
*/
|
*/
|
||||||
protected $searchableAttributes = ['title', 'notes', 'asset_maintenance_type', 'cost', 'start_date', 'completion_date'];
|
protected $searchableAttributes =
|
||||||
|
[
|
||||||
|
'title',
|
||||||
|
'notes',
|
||||||
|
'asset_maintenance_type',
|
||||||
|
'cost',
|
||||||
|
'start_date',
|
||||||
|
'completion_date'
|
||||||
|
];
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The relations and their attributes that should be included when searching the model.
|
* The relations and their attributes that should be included when searching the model.
|
||||||
|
@ -70,9 +78,10 @@ class AssetMaintenance extends Model implements ICompanyableChild
|
||||||
* @var array
|
* @var array
|
||||||
*/
|
*/
|
||||||
protected $searchableRelations = [
|
protected $searchableRelations = [
|
||||||
'asset' => ['name', 'asset_tag'],
|
'asset' => ['name', 'asset_tag', 'serial'],
|
||||||
'asset.model' => ['name', 'model_number'],
|
'asset.model' => ['name', 'model_number'],
|
||||||
'asset.supplier' => ['name'],
|
'asset.supplier' => ['name'],
|
||||||
|
'asset.assetstatus' => ['name'],
|
||||||
'supplier' => ['name'],
|
'supplier' => ['name'],
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -197,6 +206,7 @@ class AssetMaintenance extends Model implements ICompanyableChild
|
||||||
->orderBy('suppliers_maintenances.name', $order);
|
->orderBy('suppliers_maintenances.name', $order);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Query builder scope to order on admin user
|
* Query builder scope to order on admin user
|
||||||
*
|
*
|
||||||
|
@ -239,4 +249,33 @@ class AssetMaintenance extends Model implements ICompanyableChild
|
||||||
return $query->leftJoin('assets', 'asset_maintenances.asset_id', '=', 'assets.id')
|
return $query->leftJoin('assets', 'asset_maintenances.asset_id', '=', 'assets.id')
|
||||||
->orderBy('assets.name', $order);
|
->orderBy('assets.name', $order);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Query builder scope to order on serial
|
||||||
|
*
|
||||||
|
* @param \Illuminate\Database\Query\Builder $query Query builder instance
|
||||||
|
* @param string $order Order
|
||||||
|
*
|
||||||
|
* @return \Illuminate\Database\Query\Builder Modified query builder
|
||||||
|
*/
|
||||||
|
public function scopeOrderByAssetSerial($query, $order)
|
||||||
|
{
|
||||||
|
return $query->leftJoin('assets', 'asset_maintenances.asset_id', '=', 'assets.id')
|
||||||
|
->orderBy('assets.serial', $order);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Query builder scope to order on status label name
|
||||||
|
*
|
||||||
|
* @param \Illuminate\Database\Query\Builder $query Query builder instance
|
||||||
|
* @param text $order Order
|
||||||
|
*
|
||||||
|
* @return \Illuminate\Database\Query\Builder Modified query builder
|
||||||
|
*/
|
||||||
|
public function scopeOrderStatusName($query, $order)
|
||||||
|
{
|
||||||
|
return $query->join('assets as maintained_asset', 'asset_maintenances.asset_id', '=', 'maintained_asset.id')
|
||||||
|
->leftjoin('status_labels as maintained_asset_status', 'maintained_asset_status.id', '=', 'maintained_asset.status_id')
|
||||||
|
->orderBy('maintained_asset_status.name', $order);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue