dashboard

This commit is contained in:
2019-11-13 08:09:28 +01:00
parent 92a460f0ff
commit f185d467fb
7 changed files with 244 additions and 21 deletions
@@ -13,6 +13,7 @@ class Projectemployee extends BaseModel {
return $this->belongsTo( 'Project' );
}
<<<<<<< Updated upstream
public function user()
{
return $this->belongsTo( 'User' );
@@ -98,4 +99,65 @@ class Projectemployee extends BaseModel {
Projectemployee::whereId( $projectemployeeID )->delete();
}
}
}
=======
public static function getProjectemployeeDetailsPerProject( $projectID )
{
$details = Projectemployee::selectRaw( '
USR.id, budget, project_id, ROUND(SUM(hours), 0) AS hours, ROUND(SUM(hours * tarif), 0) AS revenues, projectemployees.id AS projectemployeeID' )
->join( 'users AS USR', 'USR.id', '=', 'projectemployees.user_id' )
->join( 'projecthours AS PRH', 'PRH.projectemployee_id', '=', 'projectemployees.id' )
->where( 'PRH.hourtype_id', '=', 1 )
// ->where( 'budget', '!=', 0 )
->groupBy( 'projectemployees.id' )
->havingRaw( 'ROUND(SUM(hours), 0) > 0' );
if( $projectID)
$details = $details->where( 'projectemployees.project_id', '=', $projectID );
$details = $details->get();
return $details;
}
public static function firstOrCreateProjectemployee( $userID, $projectID )
{
$projectemployee = self::whereUserId( $userID )->whereProjectId( $projectID );
if ( $projectemployee->count() > 0 ) return $projectemployee->first();
$user = User::find( $userID );
$tarif = $user ? $user->hourlyrate : 0;
$projectemployee = Projectemployee::create( [
'project_id' => $projectID,
'user_id' => $userID,
'tarif' => $tarif
] );
return $projectemployee;
}
public static function createProjectEmployee( $projectID )
{
$projectemployee = Projectemployee::create( [
'project_id' => $projectID
] );
return $projectemployee->id;
}
public static function saveProjectemployee( $projectemployeeID, $projectemployee )
{
Projectemployee::whereId( $projectemployeeID )
->update( $projectemployee );
}
public static function removeProjectemployee( $projectemployeeID )
{
Projectemployee::whereId( $projectemployeeID )->delete();
}
}
>>>>>>> Stashed changes