projecten

This commit is contained in:
2018-01-18 08:45:09 +01:00
parent 00246f49f7
commit 970aa53971
25 changed files with 689 additions and 285 deletions
+44 -8
View File
@@ -16,6 +16,11 @@ class Project extends BaseModel {
return $this->hasMany( 'Offer' );
}
public function projectemployees()
{
return $this->hasMany( 'Projectemployee' );
}
public function projectleader()
{
return $this->belongsTo( 'User', 'projectleader_id' );
@@ -28,7 +33,34 @@ class Project extends BaseModel {
public static function getAllProjects( $archive = 'F' )
{
$projects = Project::with( [
$projects = Project::getBaseProject();
if ( $archive == 'F' ) $projects = $projects->whereArchive( 'F' );
$projects = $projects->get();
return $projects;
}
public static function getProject( $projectID )
{
$project = Project::getBaseProject();
$project = $project->whereArchive( 'F' )
->whereId( $projectID )
->first();
return $project;
}
public static function removeProject( $projectID )
{
Project::whereId( $projectID )->delete();
}
public static function getBaseProject()
{
$project = Project::with( [
'projectleader' => function ( $q ) {
$q->selectRaw( "id, CONCAT(firstname, ' ', middlename, ' ', lastname) AS fullname" );
}] )
@@ -40,17 +72,21 @@ class Project extends BaseModel {
$q->selectRaw( '*' );
}] );
}] )
->with( [
'projectemployees.user' => function ( $q ) {
$q->selectRaw( "id, CONCAT(firstname, ' ', middlename, ' ', lastname) AS fullname" );
}] )
->with( 'customer' );
if ( $archive == 'F' ) $projects = $projects->whereArchive( 'F' );
$projects = $projects->get();
return $projects;
return $project;
}
public static function removeProject( $projectID )
public static function createProject()
{
Project::whereId($projectID)->delete();
$data = ['startdate'=> date('Y-m-d')];
$project = Project::create($data);
return $project->id;
}
}