Skip to content

Commit

Permalink
Merge pull request #39 from Sharifur/dev
Browse files Browse the repository at this point in the history
salary list page added for user panel
  • Loading branch information
Sharifur committed Jan 22, 2024
2 parents f882e75 + 57df761 commit e83350a
Show file tree
Hide file tree
Showing 93 changed files with 869 additions and 461 deletions.
70 changes: 70 additions & 0 deletions app/Http/Controllers/User/SalaryController.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
<?php

namespace App\Http\Controllers\User;

use App\Http\Controllers\Controller;
use App\Models\AttendanceLog;
use App\Models\SalarySlip;
use Carbon\Carbon;
use Illuminate\Http\Request;
use Inertia\Inertia;

class SalaryController extends Controller
{
public function index(){
$user = \Auth::guard('web')->getUser();
$allSalaries = SalarySlip::with('employee')
->where(['employee_id' => $user->employee?->id])
->orderBy('created_at','desc')
->paginate(10)
->through(function($item){
$item->monthName = Carbon::parse($item->month)->format('M');
$item->year = Carbon::parse($item->month)->format('Y');
$item->created = Carbon::parse($item->created_at)->format('Y M d');
return $item;
});

return Inertia::render('User/SalaraySlip/Index',[
'allSalaries' => $allSalaries,
]);
}

public function view_details($id){

$user = \Auth::guard('web')->getUser();

$salarySlipData = SalarySlip::with(["employee" => function($q){
$q->with("category")->get();
}])->where(['id' => $id, 'employee_id' => $user->employee?->id ])->first();

$salarySlipData->designation = $salarySlipData->employee?->category?->title;

$logs = AttendanceLog::query()
->where(['employee_id' => $salarySlipData->employee_id])
->whereMonth('date_time',Carbon::parse($salarySlipData->month))
->OrWhere('type','holiday')
->get();

$holidayCount = $logs->where('type','holiday')->count();
$leaveCount = $logs->where('type','leave')->count();
$inCount = $logs->where('type','C/In')->count();
$outCount = $logs->where('type','C/Out')->count();
$sickLeaveCount = $logs->where('type','sick-leave')->count();
$paidLeaveCount =$logs->where('type','paid-leave')->count();
$workFormHome =$logs->where('type','work-form-home')->count();
$attenadnceCount = max($inCount ,$outCount);

return Inertia::render('User/SalaraySlip/View',[
'salarySlipData' => $salarySlipData,
'holidayCount' => $holidayCount ?? 0 ,
'leaveCount' => $leaveCount?? 0,
'inCount' => $inCount ?? 0,
'outCount' => $outCount ?? 0,
'sickLeaveCount' => $sickLeaveCount ?? 0,
'paidLeaveCount' => $paidLeaveCount ?? 0,
'workFormHome' => $workFormHome ?? 0,
'attenadnceCount' => $attenadnceCount ?? 0
]);

}
}
16 changes: 10 additions & 6 deletions app/Http/Controllers/User/UserDashboardController.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
namespace App\Http\Controllers\User;

use App\Http\Controllers\Controller;
use App\Models\User;
use Illuminate\Http\Request;
use Inertia\Inertia;

Expand All @@ -18,14 +19,17 @@ public function change_password(){
return Inertia::render('User/ChangePassword');
}
public function update_change_password(Request $request){
$request->validate([
'password' => 'required|confirmed|min:6'
]);
$user_id = \Auth::guard('web')->id();
User::find($user_id)->update([
'password' => \Hash::make($request->password)
]);

}
\Auth::guard('web')->logout();

public function change_info(){
return Inertia::render('User/ChangeInfo');
return redirect()->to(route('login'));
}

public function update_change_info(Request $request){

}
}

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit e83350a

Please sign in to comment.