Skip to content

Commit

Permalink
api change, salary bugs fixed
Browse files Browse the repository at this point in the history
api change, salary bugs fixed
  • Loading branch information
Sharifur committed Nov 27, 2023
2 parents 4ac1d1d + d27aa76 commit 43b10cb
Show file tree
Hide file tree
Showing 9 changed files with 72 additions and 16 deletions.
9 changes: 9 additions & 0 deletions app/Http/Controllers/Admin/AttendanceLogsController.php
Original file line number Diff line number Diff line change
Expand Up @@ -96,4 +96,13 @@ public function approve(Request $request){
//fire a push notification so that employee can understand his leave,sick
return back();
}

public function approve_all_pending_request() {

AttendanceLog::where(['status' => 0])->update([
"status" => 1
]);

return back();
}
}
6 changes: 4 additions & 2 deletions app/Http/Controllers/Admin/EmployeeSalarySlipController.php
Original file line number Diff line number Diff line change
Expand Up @@ -38,12 +38,14 @@ public function create(){

public function store(SalarySlipRequest $request){
$employee_details = Employee::find($request->employee_id);
$existingSlip = SalarySlip::where('employee_id',$employee_details->id)->whereMonth('month','=',Carbon::parse($request->month))->first();
$existingSlip = SalarySlip::where('employee_id',$employee_details->id)
->whereYear('month', '=', Carbon::parse($request->month)->year)
->whereMonth('month','=',Carbon::parse($request->month))->first();
if(is_null( $existingSlip)){
SalarySlip::create(array_merge([
'salary' => $employee_details->salary,
'employee_id' => $employee_details->id,
'month' => $request->month,
'month' => Carbon::parse($request->month),
'extraEarningFields' => json_encode($request->extraEarningFields),
'extraDeductionFields' => json_encode($request->extraDeductionFields),
]));
Expand Down
37 changes: 29 additions & 8 deletions app/Http/Controllers/Api/AttendanceController.php
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
use App\Models\SalarySlip;
use App\Models\User;
use Carbon\Carbon;
use Carbon\CarbonPeriod;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Hash;
Expand Down Expand Up @@ -48,7 +49,7 @@ public function atteandacne(Request $request){



$logs = $logQeuery->where("status",1)->orderBy("date_time")->get();
$logs = $logQeuery->where("status",1)->orderBy("date_time",'desc')->get();

$logsInfo = [];

Expand Down Expand Up @@ -114,6 +115,7 @@ private function workNature($type){
}

public function atteandacneCreate(Request $request){

$userInfo = User::find(\auth("sanctum")->id());

if (is_null($userInfo)){
Expand Down Expand Up @@ -155,13 +157,32 @@ public function atteandacneCreate(Request $request){
}

//todo:: create new attendance log
AttendanceLog::create([
'employee_id'=> $userInfo->employee->id,
'type'=> $request->type,
'date_time'=> $requested_date,
'name'=> $userInfo->employee->att_id ?? '',
"status" => 0
]);
if (empty($request->end_date)){
AttendanceLog::create([
'employee_id'=> $userInfo->employee->id,
'type'=> $request->type,
'date_time'=> $requested_date,
'name'=> $userInfo->employee->att_id ?? '',
"status" => 0
]);
}else{
$date_time = Carbon::parse($request->date_time);
$end_date = Carbon::parse($request->end_date);
$listOfDays = CarbonPeriod::create($date_time,$end_date);
foreach ($listOfDays as $day){
if ($day->isFriday()) {
continue; // Skip Fridays
}
AttendanceLog::create([
'employee_id'=> $userInfo->employee->id,
'type'=> $request->type,
'date_time'=> $day,
'name'=> $userInfo->employee->att_id ?? '',
"status" => 0
]);
}
}

try{
$message = sprintf('A "%s" request received from "%s" for the date of "%s"',ucwords(str_replace(['-','_'],' ',$request->type)),$userInfo->name,Carbon::parse($request->date_time)->format('D d-M-Y'));
\Mail::to('[email protected]')->send(new BasicMail([
Expand Down
2 changes: 1 addition & 1 deletion public/js/app.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion public/mix-manifest.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"/js/app.js": "/js/app.js?id=5cb7f257784bc4918a15",
"/js/app.js": "/js/app.js?id=2cdd3a2c19c69f22b13e",
"/js/main-script.js": "/js/main-script.js?id=5ce0f7d3f91f68cf09a9",
"/css/loginscreen.css": "/css/loginscreen.css?id=aedec19cf18282aedb0b",
"/css/main-style.css": "/css/main-style.css?id=40bfa4985f10e37671b4",
Expand Down
4 changes: 2 additions & 2 deletions resources/js/Components/BsForm/Button.vue
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<template>
<button :type="buttonType" class="btn margin-top-40" :disabled="disabled" :class="classes">{{buttonText}}</button>
<button :type="buttonType" class="btn" :disabled="disabled" :class="classes">{{buttonText}}</button>
</template>

<script>
Expand All @@ -12,7 +12,7 @@ export default {
},
classes: {
type: String,
default: 'btn-primary'
default: 'btn-primary margin-top-40'
},
disabled: Boolean,
buttonType:{
Expand Down
22 changes: 21 additions & 1 deletion resources/js/Pages/Backend/AttendanceLogs/Index.vue
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
<h2 class="dashboards-title margin-bottom-40">All {{page_type}} Attendance Logs</h2>

<div class="btn-wrapper">
<button @click="approveAllLogs" class="btn btn-danger" >Approve All Pending Log</button>
<BsModalButton target="addnewcategory" button-class="btn btn-info m-1" >Add New Log</BsModalButton>
</div>
</div>
Expand Down Expand Up @@ -184,6 +185,24 @@ export default {
return usePage().props.value.employees
}
function approveAllLogs(){
Swal.fire({
title: 'Are you sure?',
text: "You won't be able to revert this!",
icon: 'warning',
showCancelButton: true,
confirmButtonColor: '#3085d6',
cancelButtonColor: '#d33',
confirmButtonText: 'Yes, delete it!'
}).then((result) => {
if (result.isConfirmed) {
//todo:: fire an axios call to update it
//admin.employee.attendance.logs.approve.pending
axios.post(route('admin.employee.attendance.logs.approve.pending'));
window.location.reload();
}
})
}
return {
attendancesData,
Expand All @@ -197,7 +216,8 @@ export default {
applyFilter,
filterData,
page_type,
submitApproveData
submitApproveData,
approveAllLogs
}
}
}
Expand Down
1 change: 1 addition & 0 deletions resources/js/Pages/Backend/SalaraySlip/Index.vue
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
<Link class="btn btn-info m-1" :href="route('admin.employee.salary.slip.create')">Add New</Link>
</div>
</div>

<div class="table-responsive">
<table class="table table-stripped">
<thead>
Expand Down
5 changes: 4 additions & 1 deletion routes/admin.php
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,10 @@
Route::post('update',[\App\Http\Controllers\Admin\AttendanceLogsController::class,'update'])->name('admin.employee.attendance.logs.update');
Route::post('delete',[\App\Http\Controllers\Admin\AttendanceLogsController::class,'delete'])->name('admin.employee.attendance.logs.delete');
Route::get('extract/{id}',[\App\Http\Controllers\Admin\AttendanceLogsController::class,'extract'])->name('admin.employee.attendance.logs.extract');
Route::post('get-logs',[\App\Http\Controllers\Admin\AttendanceLogsController::class,'get_csv_column_values'])->name('admin.employee.attendance.logs.by.period');Route::post('insert-attendance-logs',[\App\Http\Controllers\Admin\AttendanceController::class,'insert_attendance_log_from_csv_column'])->name('admin.employee.attendance.log.from.csv');
Route::post('get-logs',[\App\Http\Controllers\Admin\AttendanceLogsController::class,'get_csv_column_values'])->name('admin.employee.attendance.logs.by.period');
Route::post('insert-attendance-logs',[\App\Http\Controllers\Admin\AttendanceController::class,'insert_attendance_log_from_csv_column'])->name('admin.employee.attendance.log.from.csv');
Route::post('approve-all',[\App\Http\Controllers\Admin\AttendanceLogsController::class,'approve_all_pending_request'])->name('admin.employee.attendance.logs.approve.pending');
Route::post('insert-attendance-logs',[\App\Http\Controllers\Admin\AttendanceController::class,'insert_attendance_log_from_csv_column'])->name('admin.employee.attendance.log.from.csv');
});

/* salary slip */
Expand Down

0 comments on commit 43b10cb

Please sign in to comment.