IMMREX7

aku nok ndi : /home/spdtg/www/schoolmis/resources/views/schools/hrms/
File Up :
aku nok ndi : /home/spdtg/www/schoolmis/resources/views/schools/hrms/action_shift.blade.php

@extends('schools.school_layout')
@section('content')
<div class="row clearfix">
    <div class="col-sm-12">
        <div class="card">
            <div class="header">
                <h2><strong>Manage Shift/Increments</strong></h2>
            </div>
            <div class="body">
                @if(isset($ashift))
                {!! Form::model($ashift, ['method' => 'PATCH', 'action' => ['School\ActionShiftController@update', $ashift->idAssignedShift], 'class' => 'form-horizontal','files'=>true]) !!}
                @else
                {!! Form::open(['url' => 'school/actionhift', 'class' => 'form-horizontal','id'=>'form','files'=>true]) !!}
                @endif
                <div class="row clearfix">
                    <div class="col-sm-2 form-control-label required">
                        <label for="classname">Department</label>
                    </div>
                    <div class="col-sm-3">
                        <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 class="col-sm-2 form-control-label">
                        <label for="classname" class="required">Designation</label>
                    </div>
                    <div class="col-sm-3">
                        <div class="form-group">
                            @if(isset($ashift))
                            {!! Form::select('idDesignation',$designations,null,['class' => 'form-control show-tick ms','id'=>'idDesignation']) !!}
                            @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">
                    <div class="col-sm-2 form-control-label">
                        <label for="classname">EC No.</label>
                    </div>
                    <div class="col-sm-3">
                        <div class="form-group">
                            @if(isset($ashift))
                            {!! 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 a shift 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 class="col-sm-2 form-control-label required">
                        <label for="classname">Action Type</label>
                    </div>
                    <div class="col-sm-3">
                        <div class="form-group">
                            {!! Form::select('type',['S' => 'Shift','I' => 'Increment'],null,['class' => 'form-control show-tick ms select2', 'id' => 'singleOp']) !!}
                            @if ($errors->has('type'))
                            <label id="minmaxlength-error" class="error" for="minmaxlength">
                                <strong>{{ $errors->first('type') }}</strong>
                            </label>
                            @endif
                            <span id='shifterror'></span>
                        </div>
                    </div>
                </div>
                <div class="row clearfix" id="incr">
                    <div class="col-sm-5">

                    </div>
                    <div class="col-sm-2 form-control-label required">
                        <label for="classname">Increment Amount</label>
                    </div>
                    <div class="col-sm-3">
                        <div class="form-group">
                            {!! Form::number('increment',null,['class' => 'form-control']) !!}
                            @if ($errors->has('type'))
                            <label id="minmaxlength-error" class="error" for="minmaxlength">
                                <strong>{{ $errors->first('type') }}</strong>
                            </label>
                            @endif
                            <span id='shifterror'></span>
                        </div>
                    </div>
                </div>
                <div class="row clearfix" id="shf">
                    <div class="col-sm-2 form-control-label required">
                        <label for="classname">Shift Time</label>
                    </div>
                    <div class="col-sm-8">
                        <div class="form-group">
                            <label for="night" style="color:red">Tick mark if shift is <b>night shift</b></label>
                            <input type="radio" id="night" name="is_night" value="Y"/>
                            <div class="row clearfix demo-masked-input">
                                <table class="table">
                                    <thead>
                                        <tr>
                                            <th>Weekdays</th>
                                            <th>From</th>
                                            <th></th>
                                            <th>To</th>
                                            <th></th>
                                        </tr>
                                    </thead>
                                    <tbody>
                                        <tr>
                                            <td>{!! Form::date('shift_date',null,['class' => 'form-control time24']) !!}</td>
                                            <td>{!! Form::text('from',null,['class' => 'form-control time24']) !!}</td>
                                            <td><input type="radio" id="am_from" name="shift_from" value="am"/>
                                            <label for="am_from">AM</label>
                                            <input type="radio" id="pm_from" name="shift_from" value="pm"/>
                                            <label for="pm_from">PM</label></td>
                                            <td>
                                                {!! Form::text('to',null,['class' => 'form-control time24']) !!}
                                            </td>
                                            <td><input type="radio" id="am_to" name="shift_to" value="am"/>
                                            <label for="am_to">AM</label>
                                            <input type="radio" id="pm_to" name="shift_to" value="pm"/>
                                            <label for="pm_to">PM</label></td>                              
                                        </tr>
                                    </tbody>
                                </table>
                                @if ($errors->has('type'))
                                <label id="minmaxlength-error" class="error" for="minmaxlength">
                                    <strong>{{ $errors->first('type') }}</strong>
                                </label>
                                @endif
                                <span id='shifterror'></span>
                            </div>
                        </div>
                    </div>
                </div>
                <div class="row clearfix">
                    <div class="col-sm-8 offset-sm-2">
                        @if(isset($ashift))
                        {!! 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>Shift/Increments</strong></h2>
            </div>
            <div class="body table-responsive">
            <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>Shift Date</th>
                            <th>Shift</th>
                            <th>Increment</th>
                            <th>Action</th>
                        </tr>
                    </thead>
                    <tbody>
                        <?php $i = 1; ?>
                        @foreach($assigned_shifts 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->shift_date or '-'}}</td>
                            <td>{{$value->shift_time or '-'}}</td>
                            <td>{{$value->increment or '-'}}</td>
                            <td>
                                <button class="btn btn-raised btn-danger waves-effect btn-round js-sweetalert" data-id="{{$value->id}}" data-type="confirm">DELETE</button>
                            </td>
                        </tr>
                        <?php $i++; ?>
                        @endforeach
                    </tbody>
                </table>
            </div>
        </div>
    </div>
</div>
@stop
@section('script')
<script>
    // Delete Feehead
$(function(){
    $('#incr').hide();
    $('#singleOp').on('change', function() {
        if( this.value  == "S"){
            $('#shf').show();
            $('#incr').hide();
        }else{
            $('#shf').hide();
            $('#incr').show();
        }
    });
})    
$(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 Assigned Shift!",
            type: "warning",
            showCancelButton: true,
            confirmButtonColor: "#DD6B55",
            confirmButtonText: "Yes, delete it!",
            closeOnConfirm: true
        },
        function() {
         //   console.log('here');
            $.ajax({
                type: "DELETE",
                url: "{{url('/school/actionshift/')}}" +"/"+id,
                data: {id:id}
                       
            })
            .done(function(data) {
                swal({
                    title: "Deleted", 
                    text: "Assigned Shift 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() {
    $('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/actionshift') }}",
        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/actionshift')}}";
            }
            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 );
                                }
                                
                    }
            }
    });
    return false;
});
</script>
@stop

Copyright © 2021 - 2025 IMMREX7