IMMREX7
@extends('schools.school_layout')
@section('content')
<div class="row clearfix">
<div class="col-sm-12">
<div class="card">
<div class="header">
<h2><strong>Late Arrival Master</strong></h2>
</div>
<div class="body">
@if(isset($late))
{!! Form::model($late, ['method' => 'PATCH', 'action' => ['School\LateArrivalController@update', $late->idLateArrival], 'class' => 'form-horizontal','files'=>true]) !!}
@else
{!! Form::open(['url' => 'school/latearrivals', 'class' => 'form-horizontal','id'=>'form','files'=>true]) !!}
@endif
<div class="row clearfix">
<div class="col-sm-6">
<div class="row clearfix">
<div class="col-sm-5 form-control-label required">
<label for="classname">Department</label>
</div>
<div class="col-sm-7">
<div class="form-group">
{!! Form::select('idDepartment',$departments,null,['class' => 'form-control show-tick ms select2']) !!}
@if ($errors->has('idDepartment'))
<label id="minmaxlength-error" class="error" for="minmaxlength">
<strong>{{ $errors->first('idDepartment') }}</strong>
</label>
@endif
<span id='depterror'></span>
</div>
</div>
</div>
<div class="row clearfix">
<div class="col-sm-5 form-control-label">
<label for="classname">EC No.</label>
</div>
<div class="col-sm-7">
<div class="form-group">
@if(isset($late))
{!! Form::select('idEmployee',$employees,null,['class' => 'form-control show-tick ms']) !!}
@else
<span style="color:red; font-size: 12px;">Please don't select this list if you want to assign on whole department or designation.</span>
<div id="idEmployee" style="border:1px solid #ccc; width:250px; height: 140px; overflow-y: scroll;">
</div>
@if ($errors->has('ecNO'))
<label id="minmaxlength-error" class="error" for="minmaxlength">
<strong>{{ $errors->first('ecNO') }}</strong>
</label>
@endif
@endif
</div>
</div>
</div>
</div>
<div class="col-sm-6">
<div class="row clearfix">
<div class="col-sm-5 form-control-label">
<label for="classname" class="required">Designation</label>
</div>
<div class="col-sm-7">
<div class="form-group">
@if(isset($late))
{!! Form::select('idDesignation',$designations,null,['class' => 'form-control show-tick ms']) !!}
@else
<div id="idDesignation" style="border:1px solid #ccc; width:200px; height: 110px; overflow-y: scroll;">
</div>
@endif
@if ($errors->has('idDesignation'))
<label id="minmaxlength-error" class="error" for="minmaxlength">
<strong>{{ $errors->first('idDesignation') }}</strong>
</label>
@endif
<span id='desigerror'></span>
</div>
</div>
</div>
<div class="row clearfix demo-masked-input">
<div class="col-sm-5 form-control-label required">
<label for="classname">Late Allowed</label>
</div>
<div class="col-sm-7">
<div class="form-group">
{!! Form::text('lateAllowed',null,['class' => 'form-control time24','placeholder'=>'eg: 00:30,1:00,1:30']) !!}
@if ($errors->has('lateAllowed'))
<label id="minmaxlength-error" class="error" for="minmaxlength">
<strong>{{ $errors->first('otAfter') }}</strong>
</label>
@endif
<span id="lateallowed"></span>
</div>
</div>
</div>
<div class="row clearfix">
<div class="col-sm-5"></div>
<div class="col-sm-7">
<div class="form-group">
<label class="radio-inline">
<input type="radio" name="lateAllowedTimes" value="daily" @if(isset($late) && $late->lateAllowedTimes =='daily') checked @endif>Per Day
</label>
<label class="radio-inline">
<input type="radio" name="lateAllowedTimes" value="monthly" @if(isset($late) && $late->lateAllowedTimes =='monthly') checked @endif>Per Month
</label>
</div>
</div>
</div>
<div class="row clearfix demo-masked-input">
<div class="col-sm-5 form-control-label required">
<label for="classname">Mark Half day After</label>
</div>
<div class="col-sm-7">
<div class="form-group">
{!! Form::text('halfDayAfter',null,['class' => 'form-control time24','placeholder'=>'eg: 00:30,1:00,1:30']) !!}
@if ($errors->has('halfDayAfter'))
<label id="minmaxlength-error" class="error" for="minmaxlength">
<strong>{{ $errors->first('halfDayAfter') }}</strong>
</label>
@endif
<span id="halfday"></span>
</div>
</div>
</div>
<div class="row clearfix demo-masked-input">
<div class="col-sm-5 form-control-label required">
<label for="classname">Deduction Ratio </label>
</div>
<div class="col-sm-7">
<div class="form-group">
{!! Form::text('deductionRatio',null,['class' => 'form-control ratiomask','placeholder'=>'eg: 1:1,1:1.5,1:2']) !!}
@if ($errors->has('deductionRatio'))
<label id="minmaxlength-error" class="error" for="minmaxlength">
<strong>{{ $errors->first('deductionRatio') }}</strong>
</label>
@endif
<span id="otratio"></span>
</div>
</div>
</div>
<div class="row clearfix demo-masked-input">
<div class="col-sm-5 form-control-label required">
<label for="classname">Mark Half Day If Late Days</label>
</div>
<div class="col-sm-7">
<div class="form-group">
{!! Form::number('maxDays',null,['class' => 'form-control','placeholder'=>'eg: 1', 'min' =>"1",'max'=>"31",'id'=>'maxDate']) !!}
@if ($errors->has('maxDays'))
<label id="minmaxlength-error" class="error" for="minmaxlength">
<strong>{{ $errors->first('maxDays') }}</strong>
</label>
@endif
<span id="otratio"></span>
</div>
</div>
</div>
<div class="row clearfix demo-masked-input">
<div class="col-sm-5 form-control-label required">
<label for="classname">Mark Leave If Late Days</label>
</div>
<div class="col-sm-7">
<div class="form-group">
{!! Form::number('maxLeave',null,['class' => 'form-control','placeholder'=>'eg: 1', 'min' =>"1",'max'=>"31",'id'=>'maxDate']) !!}
@if ($errors->has('maxLeave'))
<label id="minmaxlength-error" class="error" for="minmaxlength">
<strong>{{ $errors->first('maxLeave') }}</strong>
</label>
@endif
<span id="otratio"></span>
</div>
</div>
</div>
</div>
</div>
<div class="row clearfix">
<div class="col-sm-8 offset-sm-2">
@if(isset($late))
{!! Form::submit('UPDATE',['class' => 'btn btn-raised btn-primary btn-round waves-effect']) !!}
@else
{!! Form::submit('SAVE',['class' => 'btn btn-raised btn-primary btn-round waves-effect','id'=>'submit-btn']) !!}
@endif
{!! Form::close() !!}
</div>
</div>
</div>
</div>
</div>
</div>
<div class="row clearfix">
<div class="col-sm-12">
<div class="card">
<div class="header">
<h2><strong>Late Arrival Master</strong></h2>
</div>
<div class="body table-responsive">
{!! Form::open(['method' => 'GET', 'action' => ['School\LateArrivalController@index'], 'class' => 'form-horizontal']) !!}
<div class="row clearfix">
<div class="col-sm-2"></div>
<div class="col-sm-2 form-control-label">
<label for="classname">Financial Year</label>
</div>
<div class="col-sm-3">
<div class="form-group">
{!! Form::select('idFinancialYear',fys(),null,['class' => 'form-control show-tick ms']) !!}
</div>
</div>
<div class="col-sm-2">
{!! Form::submit('Search',['class' => 'btn btn-raised btn-primary btn-round waves-effect']) !!}
</div>
</div>
{!! Form::close() !!}
<br>
<table class="table table-bordered table-striped table-hover js-basic-example dataTable">
<thead>
<tr>
<th>S. No.</th>
<th>Department</th>
<th>Designation</th>
<th>Ec No.</th>
<th>Late Allowed</th>
<th>Mark Half day After </th>
<th>Deduction Ratio </th>
<th>Mark Half Day<br> If Late Days</th>
<th>Mark Leave<br> If Late Days</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php $i = 1; ?>
@foreach($latearrivals as $value)
<tr>
<th scope="row">{{$i}}</th>
<td>{{$value->department->departmentName}}</td>
<td>{{$value->designation->designationName}}</td>
<td>{{$value->employee->enrollmentNo or ''}}</td>
<td>{{$value->lateAllowed}}</td>
<td>{{$value->halfDayAfter}}</td>
<td>{{$value->deductionRatio}}</td>
@if($value->maxDays > 0)
<td>{{$value->maxDays}}</td>
@else
<td>Not Applicable</td>
@endif
@if($value->maxLeave > 0)
<td>{{$value->maxLeave}}</td>
@else
<td>Not Applicable</td>
@endif
<td>
<a href="{{ url('school/latearrivals/' . $value->idLateArrival . '/edit') }}" class="btn btn-raised btn-info waves-effect btn-round">Edit </a>
<button class="btn btn-raised btn-danger waves-effect btn-round js-sweetalert" data-id="{{$value->idLateArrival}}" data-type="confirm">DELETE</button>
</td>
</tr>
<?php $i++; ?>
@endforeach
</tbody>
</table>
</div>
</div>
</div>
</div>
@stop
@section('script')
<script>
// Delete Feehead
$(document).on('click', '.js-sweetalert', function (e) {
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
e.preventDefault();
var id = $(this).data('id');
swal({
title: "Are you sure?",
text: "Are You sure you want to delete this Late Arrival Master",
type: "warning",
showCancelButton: true,
confirmButtonColor: "#DD6B55",
confirmButtonText: "Yes, delete it!",
closeOnConfirm: true
},
function() {
// console.log('here');
$.ajax({
type: "DELETE",
url: "{{url('/school/latearrivals/')}}" +"/"+id,
data: {id:id}
})
.done(function(data) {
swal({
title: "Deleted",
text: "Late Arrival Master has been successfully deleted",
type: "success"
},function() {
location.reload();
});
})
.error(function(data) {
swal("Oops", "We couldn't connect to the server!", "error");
});
return false;
});
});
$(document).ready(function() {
$('input[type="number"]').on('keyup',function(){
var maxDays = $(this).val();
if(maxDays > 31) $(this).val("31");
console.log(maxDays);
});
$('select[name="idDepartment"]').on('change', function() {
var departmentID = $(this).val();
if(departmentID) {
$.ajax({
url: "{{url('/school/departments') }}"+'/' +departmentID + "/designations",
type: "GET",
dataType: "json",
success:function(data) {
$('#idDesignation').empty();
$('#idDesignation').append('<div class="checkbox-inline" style="padding-left:10px;padding-top:5px;"><label style="margin-right:42px;"><strong>Select All</label></strong><input type="checkbox" class="select-all" id="selectall"></div>');
$.each(data, function(key, value) {
$('#idDesignation').append('<div class="checkbox-inline" style="padding-left:10px;"><label style="margin-right:100px;">'+value+'</label><input type="checkbox" name="designations[]" value="'+key+'" class="designationclass"></div>');
});
}
});
}else{
$('select[name="idDesignation"]').empty();
}
});
});
$(document).on('click', '.select-all', function(){
var checkAll = this.checked;
if(checkAll === true){
$('input[type=checkbox]').each(function () {
this.checked = checkAll;
});
var designationIds = [];
$("input:checkbox[name='designations[]']:checked").each(function () {
designationIds.push($(this).val());
});
if (designationIds.length > 0) {
$.ajax({
url: "{{url('/school/designations') }}"+'/' +designationIds + "/employees",
type: "GET",
dataType: "json",
success:function(data) {
$('#idEmployee').empty();
$('#idEmployee').append('<div class="checkbox-inline" style="padding-left:10px;padding-top:5px;"><label style="margin-right:42px;"><strong>Select All</label></strong><input type="checkbox" class="select-allstd" id="selectallstd"></div>');
$.each(data, function(key, value) {
$('#idEmployee').append('<div class="checkbox-inline" style="padding-left:10px;"><label style="margin-right:50px;">'+value+'</label><input type="checkbox" name="employees[]" value="'+key+'" class="empallselect"></div>');
});
}
});
}
}else{
$('#idEmployee').empty();
$('input[type=checkbox]').each(function () {
this.checked = checkAll;
});
}
});
$(document).on('click', '.designationclass', function(){
var designationIds = [];
$("input:checkbox[name='designations[]']:checked").each(function () {
designationIds.push($(this).val());
});
if (designationIds.length > 0) {
$.ajax({
url: "{{url('/school/designations') }}"+'/' +designationIds + "/employees",
type: "GET",
dataType: "json",
success:function(data) {
$('#idEmployee').empty();
$('#idEmployee').append('<div class="checkbox-inline" style="padding-left:10px;padding-top:5px;"><label style="margin-right:42px;"><strong>Select All</label></strong><input type="checkbox" class="select-allstd" id="selectallstd"></div>');
$.each(data, function(key, value) {
$('#idEmployee').append('<div class="checkbox-inline" style="padding-left:10px;"><label style="margin-right:50px;">'+value+'</label><input type="checkbox" name="employees[]" value="'+key+'" class="empallselect"></div>');
});
}
});
}else{
$('#idEmployee').empty();
}
});
$(document).on('click', '.select-allstd', function(){
var checkAllstd = this.checked;
if(checkAllstd === true){
$("input:checkbox[name='employees[]']").each(function () {
this.checked = checkAllstd;
});
}else{
$('.empallselect').each(function () {
this.checked = checkAllstd;
});
}
});
// Saving form data
$('#form').on('submit',function(e){
$.ajaxSetup({
header:$('meta[name="_token"]').attr('content')
});
var formData = new FormData($('#form')[0]);
$("#submit-btn").prop('disabled', true);
$.ajax({
type:"POST",
url: "{{url('school/latearrivals') }}",
processData: false,
contentType: false,
data:formData,
dataType: 'json',
success:function(data){
if( data[Object.keys(data)[0]] === 'SUCCESS' ){
$("#submit-btn").prop('disabled', true);
window.location = "{{url('school/latearrivals')}}";
}
else { //False Case: With error msg
$("#msg").html(data); //$msg is the id of empty msg
}
},
error: function(data){
if( data.status === 422 ) {
$("#submit-btn").prop('disabled', false);
var errors = data.responseJSON.errors;
var errorHtml = '<div class="alert alert-danger"><ul>';
$('#formerrors').html(errorHtml);
if(errors['idDepartment']=== undefined){
$( '#depterror' ).empty();
}else{
errorname = '<span class="help-block"><strong>'+errors['idDepartment']+'</strong></span>';
$( '#depterror' ).html( errorname );
}
if(errors['idDesignation']=== undefined){
$( '#desigerror' ).empty();
}else{
errorname = '<span class="help-block"><strong>'+errors['idDesignation']+'</strong></span>';
$( '#desigerror' ).html( errorname );
}
if(errors['lateAllowed']=== undefined){
$( '#lateallowed' ).empty();
}else{
errorname = '<span class="help-block"><strong>'+errors['lateAllowed']+'</strong></span>';
$( '#lateallowed' ).html( errorname );
}
if(errors['deductionRatio']=== undefined){
$( '#dedratio' ).empty();
}else{
errorname = '<span class="help-block"><strong>'+errors['deductionRatio']+'</strong></span>';
$( '#dedratio' ).html( errorname );
}
}
}
});
return false;
});
</script>
@stop
Copyright © 2021 -