Code Coverage |
||||||||||
Classes and Traits |
Functions and Methods |
Lines |
||||||||
| Total | |
0.00% |
0 / 1 |
|
0.00% |
0 / 8 |
CRAP | |
0.00% |
0 / 71 |
| LeavelogController | |
0.00% |
0 / 1 |
|
0.00% |
0 / 8 |
462 | |
0.00% |
0 / 71 |
| index | |
0.00% |
0 / 1 |
42 | |
0.00% |
0 / 28 |
|||
| viewLog | |
0.00% |
0 / 1 |
90 | |
0.00% |
0 / 37 |
|||
| create | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
| store | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
| show | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
| edit | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
| update | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
| destroy | |
0.00% |
0 / 1 |
2 | |
0.00% |
0 / 1 |
|||
| <?php | |
| namespace App\Http\Controllers\Admin; | |
| use Illuminate\Http\Request; | |
| use App\Http\Controllers\Controller; | |
| use App\Models\Auth\User; | |
| use App\Models\Leave\LeaveEntitlement; | |
| use App\Models\Admin\Leave; | |
| use DB; | |
| use Carbon\CarbonPeriod; | |
| use Carbon\Carbon; | |
| use Auth; | |
| use Session; | |
| use GetShiftDetailHelper; | |
| use App\Models\Admin\UserDetail; | |
| use App\Helpers\AttendanceHelper; | |
| use App\Models\Leave\ApplyLeave; | |
| class LeavelogController extends Controller | |
| { | |
| //private $dataArr, $columnHeaders; | |
| /** | |
| * Display a listing of the resource. | |
| * | |
| * @return \Illuminate\Http\Response | |
| */ | |
| public function index(Request $request) | |
| { | |
| $title = '/Administration/Log/Leave'; | |
| $users = User::with('userdetailWithTeam')->get(); | |
| $leaves = DB::table('leaves')->whereNull('deleted_at')->get(); | |
| foreach ($users as $user) { | |
| # code... | |
| $leaveBalances = []; | |
| // return $user->userdetailWithTeam; | |
| //$user['team'] = isset($user['userdetailWithTeam']['teams'][0]) ? $user['userdetailWithTeam']['teams'][0]->team : ''; | |
| $user['team'] = !empty($user->userdetail->primaryTeamName->team) ? $user->userdetail->primaryTeamName->team : '-'; | |
| $engagement = $user->userdetail->Engagement_type ?? '-'; | |
| $user['engagement'] = $engagement; | |
| foreach ($leaves as $leave) { | |
| $leaveEntitlementQuery = array( | |
| 'user_id' => $user->id, | |
| 'year' => Carbon::now()->year, | |
| 'leave_id' => $leave->id | |
| ); | |
| $leaveEntitlementArr = LeaveEntitlement::where($leaveEntitlementQuery)->get(); | |
| $leaveBalance = null; | |
| foreach ($leaveEntitlementArr as $leaveEntitlement) { | |
| $leaveBalance = $leaveEntitlement->leave_balance; | |
| } | |
| if ($leaveBalance == null) { | |
| $leaveBalance = 0; | |
| } | |
| $leaveBalances[] = array( | |
| 'id' => $leave->id, | |
| 'name' => $leave->name, | |
| 'abbr' => $leave->abbr, | |
| 'leave_balance' => $leaveBalance | |
| ); | |
| } | |
| $user['leaveBalances'] = $leaveBalances; | |
| // print_r($leaveBalances); | |
| } | |
| // For Attendance Marking | |
| $val = AttendanceHelper::getAttendanceMarkValue(); | |
| $valTeam = AttendanceHelper::getAttendanceTeam($request); | |
| $valUser = AttendanceHelper::getAttendanceUser($request); | |
| // return $users; | |
| return view('administrationForms.LeaveLog.LeaveLog',compact('users','title','val','valTeam','valUser')); | |
| } | |
| /** | |
| * Show the form for creating a new resource. | |
| * | |
| * @return \Illuminate\Http\Response | |
| */ | |
| public function viewLog(Request $request,$id) | |
| { | |
| $user = User::with(['leavelog' => function ($query) { | |
| $query->latest('id'); | |
| }])->find($id); | |
| $title = '/Administration/Log/Leave/'.$user->name; | |
| // dd($user->team); | |
| $leaves = DB::table('leaves')->whereNull('deleted_at')->get(); | |
| foreach ($leaves as $leave) { | |
| $leaveEntitlementQuery = array( | |
| 'user_id' => $user->id, | |
| 'year' => Carbon::now()->year, | |
| 'leave_id' => $leave->id | |
| ); | |
| $leaveEntitlementArr = LeaveEntitlement::where($leaveEntitlementQuery)->get(); | |
| $leaveBalance = null; | |
| foreach ($leaveEntitlementArr as $leaveEntitlement) { | |
| $leaveBalance = $leaveEntitlement->leave_balance; | |
| } | |
| if ($leaveBalance == null) { | |
| $leaveBalance = 0; | |
| } | |
| $leaveBalances[] = array( | |
| 'id' => $leave->id, | |
| 'name' => $leave->name, | |
| 'abbr' => $leave->abbr, | |
| 'leave_balance' => $leaveBalance | |
| ); | |
| } | |
| $userleavebalance['leaveBalances'] = $leaveBalances; | |
| //dd($leaveBalances); | |
| $leavesData = $user->leavelog->map(function ($leave){ | |
| $abbr = $leave->leave->abbr ?? '-'; | |
| $details = (in_array($leave->operation, ['ADDED'])) ? '+' : '-'; | |
| $updatedByUser = User::find($leave->updated_by_user); | |
| if ($leave->comments === 'Leave add-on' || $leave->comments === 'Leave deduction' && $updatedByUser) { | |
| $updatedByUserName = "Manual ({$updatedByUser->name} {$updatedByUser->lastName})"; | |
| } else { | |
| $updatedByUserName = $updatedByUser ? "Rejected By ({$updatedByUser->name} {$updatedByUser->lastName})" : 'Auto'; | |
| } | |
| return [ | |
| 'date' => date(config('settings.php_date_format'), strtotime($leave->created_at)), | |
| 'details' => $leave->comments, | |
| 'account' => $details. $leave->amount, | |
| 'leave_type' =>$abbr, | |
| 'current_balance' =>$leave->updated_balance, | |
| 'updated_by_user' =>$updatedByUserName, | |
| ]; | |
| }); | |
| $val = AttendanceHelper::getAttendanceMarkValue(); | |
| $valTeam = AttendanceHelper::getAttendanceTeam($request); | |
| $valUser = AttendanceHelper::getAttendanceUser($request); | |
| return view('administrationForms.LeaveLog.LeaveLogDetails',['leavesData' => $leavesData,'val' => $val, 'valTeam' => $valTeam, 'valUser' => $valUser,'user'=>$user,'userleavebalance'=>$userleavebalance,'title'=>$title]); | |
| } | |
| public function create() | |
| { | |
| // | |
| } | |
| /** | |
| * Store a newly created resource in storage. | |
| * | |
| * @param \Illuminate\Http\Request $request | |
| * @return \Illuminate\Http\Response | |
| */ | |
| public function store(Request $request) | |
| { | |
| // | |
| } | |
| /** | |
| * Display the specified resource. | |
| * | |
| * @param int $id | |
| * @return \Illuminate\Http\Response | |
| */ | |
| public function show($id) | |
| { | |
| // | |
| } | |
| /** | |
| * Show the form for editing the specified resource. | |
| * | |
| * @param int $id | |
| * @return \Illuminate\Http\Response | |
| */ | |
| public function edit($id) | |
| { | |
| // | |
| } | |
| /** | |
| * Update the specified resource in storage. | |
| * | |
| * @param \Illuminate\Http\Request $request | |
| * @param int $id | |
| * @return \Illuminate\Http\Response | |
| */ | |
| public function update(Request $request, $id) | |
| { | |
| // | |
| } | |
| /** | |
| * Remove the specified resource from storage. | |
| * | |
| * @param int $id | |
| * @return \Illuminate\Http\Response | |
| */ | |
| public function destroy($id) | |
| { | |
| } | |
| /** | |
| * Remove the specified resource from storage. | |
| * | |
| * @return \Illuminate\Http\Response | |
| */ | |
| } |