Advertisement
zingga

Untitled

Oct 22nd, 2017
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 11.00 KB | None | 0 0
  1. @extends('layouts.temppage',['page'=>'prosesabsensi','filterstruck'=>true])
  2. @section('title',trans('map.prosesabsensi'))
  3.  
  4. @section('content')
  5.  
  6. <div class="col-lg-12" data-spy="scroll" >
  7.     <section id="begin">
  8.         <div class="row"  ng-controller="AppCtrl">
  9.             <div class="ibox float-e-margins">
  10.                 <div class="ibox-title">
  11.                     <h5>{{ trans('map.prosesabsensi') }}</h5>
  12.                         <div class="ibox-tools">
  13.                             @include('layouts.periode',['url'=>'prosesabsensi','periode'=>$periode])
  14.                             <button  id="proses-absensi" class="btn btn-danger btn-xs btn-outline" title="{{ trans('map.proses-absensi') }}"> <span class="fa fa-play" aria-hidden="true"/> {{ trans('map.proses-absensi') }} </span></button>
  15.                             @include('layouts.toolbar2',['id'=>'prosesabsensi','toolbar'=>['tambah'=>false]])
  16.                         </div>                             
  17.                     </div>
  18.                            
  19.                     <div class="ibox-content">
  20.                    
  21.                     <div class="row" >                             
  22.                         <div  >
  23.    
  24.                             <div  class="hidden"  id="dataLoaded" >                            
  25.                                 <div class="sk-spinner sk-spinner-wave">
  26.                                     <div class="sk-rect1"></div>
  27.                                     <div class="sk-rect2"></div>
  28.                                     <div class="sk-rect3"></div>
  29.                                     <div class="sk-rect4"></div>
  30.                                     <div class="sk-rect5"></div>               
  31.                                 </div>
  32.                             </div>
  33.    
  34.        
  35.                             <div class="table table-responsive" >
  36.                            
  37.                             {{-- */
  38.                                 $x=0;$flg='';
  39.                                 $x=Request::has('page') ? (intval(Request::input('page'))-1)*20 : 0;
  40.                                 $dt1 = new DateTime($periode['start']);
  41.                                 $dt2 = new DateTime($periode['end']);
  42.                                 $jmlperiode = $dt1->diff($dt2)->days + 1;
  43.                             /*--}}
  44.                             <table class="table-hover table-bordered text-center"  cellspacing="0" cellpadding="0" style="padding:2px;margin:2px;">
  45.                                     <thead>
  46.                                         <tr>
  47.                                             <td colspan="{{ $absen->count() + 4}}">
  48.                                                 <div style="margin:0px;padding:0px" class="progress">
  49.                                                     <div id="readpsn" style="width: 0%" aria-valuemax="100" aria-valuemin="0" aria-valuenow="75" role="progressbar" class="progress-bar progress-bar-danger">
  50.                                                         <span class="sr-only">40% Complete (success)</span>
  51.                                                     </div>
  52.                                                 </div>
  53.                                             </td>                                          
  54.                                             <td colspan="{!! (date('z',strtotime($periode['end'])-strtotime($periode['start']))+1) !!}" ><small class="text-info pull-left" >Absensi Periode {{date('F-Y') . ' - (' . date('d-m-Y',strtotime($periode['start'])) . ' s/d ' . date('d-m-Y',strtotime($periode['end'])).')' }}</small></td>
  55.                                         </tr>
  56.                                         <tr>                                           
  57.                                             <td rowspan="2"><small>No.</small></td>
  58.                                             <td rowspan="2" ><small>{{ trans('personal.nama') }}</small></td>                      
  59.                                             <td rowspan="2" ><small>{{ trans('personal.nip') }}</small></td>                                                                   
  60.                                             <td colspan="{!! $absen->count() !!}">Total</td>
  61.                                             <td rowspan="2">Status</td>
  62.                                             @for($tg=strtotime($periode['start']);$tg<=strtotime($periode['end']);$tg=strtotime(date('Y-m-d',$tg).' +1 day'))
  63.                                                 <td nowrap="nowrap">
  64.                                                     <small class="{{ (date('N',$tg)==7 || App\MyFunc::isLibur(date('Y-m-d',$tg))) ? 'text-danger' : '' }}">{{ date('d/m',$tg) }}</small>
  65.                                                 </td>
  66.                                             @endfor
  67.                                            
  68.                                         </tr>                                      
  69.                                         <tr >          
  70.                                             @foreach( $absen as $item )                    
  71.                                                 <td><div class="label label-muted" style="{!! ((!is_null($item->warna)) ? 'background-color:'.$item->warna.';':'') !!}">{{ $item->singkatan }}</div></td>
  72.                                             @endforeach
  73.                                             @for($tg=strtotime($periode['start']);$tg<=strtotime($periode['end']);$tg=strtotime(date('Y-m-d',$tg).' +1 day'))
  74.                                                 <td nowrap="nowrap">
  75.                                                     <small class="{{ ((date('N',$tg)==7) || (App\MyFunc::isLibur(date('Y-m-d',$tg))) ) ? 'text-danger' : '' }}">{{ App\MyFunc::getHari(date('Y-m-d',$tg)) }}</small>
  76.                                                 </td>
  77.                                             @endfor
  78.                                            
  79.                                         </tr>
  80.                                     </thead>
  81.                                     <tbody ng-init="getJenisAbsen();"> 
  82.                                        
  83.                                         @foreach($job as $item)
  84.                                                 {{-- */
  85.                                                     $x++;
  86.                                                     $grpby=App\MyFunc::getParam('system','groupby','strukorgan');
  87.                                                 /* --}}
  88.                                                 @if($grpby=='lokasi')
  89.                                                     @if($flg!=$item->lokasi_id)
  90.                                                         <tr>
  91.                                                             <th colspan="{!! (3 + $absen->count()) !!}">
  92.                                                             <a href="{{ url('/prosesabsensi?lokasi='.$item->lokasi_id ) }}" class="btn btn-xs btn-outline btn-info">
  93.                                                                 {{isset($item->lokasi->nama) ? $item->lokasi->nama : '-' }}
  94.                                                             </a></th>
  95.                                                             <th align="left" colspan="{{$jmlperiode}}">
  96.                                                                
  97.                                                             </th>
  98.                                                         </tr>
  99.                                                     @endif
  100.                                                     {{-- */ $flg= $item->lokasi_id; /* --}}
  101.                                                 @elseif ($grpby=='strukorgan')
  102.                                                     @if($flg!=$item->strukorgan_id)
  103.                                                         <tr>
  104.                                                             <th></th><th colspan="{!! (3 + $absen->count()) !!}">
  105.                                                             <a href="{{ url('/prosesabsensi?strukorgan='.$item->strukorgan_id ) }}" class="btn btn-xs btn-outline btn-info">
  106.                                                                 {{isset($item->strukorgan->nama) ? $item->strukorgan->nama : '-' }}
  107.                                                             </a></th>
  108.                                                             <th align="left" colspan="{{$jmlperiode}}"></th>
  109.                                                         </tr>
  110.                                                     @endif
  111.                                                     {{-- */ $flg= $item->strukorgan_id; /* --}}
  112.                                                    
  113.                                                 @endif
  114.                                                
  115.                                             <tr style="font-family: 'Open Sans';font-size: 10px;font-weight: 600;" ng-init="getRekapAbsen('{{$item->personal_id}}');">
  116.                                                 <td valing="top">{{ $x }}</td>
  117.                                                 <td class="project-title" nowrap="nowrap" style="text-align:left">
  118.                                                     <a href="#section-timecard" class=" page-scroll get-timecard"  data-id="{{$item->id}}" data-noid="{{ $item->noid }}" data-nama="{{$item->nama}}">
  119.                                                         <small>{{ $item->personal->nama }}</small>                                 
  120.                                                     </a>
  121.                                                     <br><small class="text-info">{{ $item->personal->noid }}</small>
  122.                                                 </td>
  123.                                                 <td>{{  $item->nip }}</td>
  124.                                                 @foreach( $absen as $jns )                     
  125.                                                     <td><span ng-bind="{{'J' . $jns->id . 'P' . $item->personal_id}}" style="{!! ((!is_null($jns->warna)) ? 'color:'.$jns->warna.';':'') !!}">-</span></td>
  126.                                                 @endforeach
  127.                                                        
  128.                                                 <td>
  129.                                                     <small>Masuk</small></br>
  130.                                                     <small>Pulang</small>
  131.                                                 </td>
  132.                                                 <td ng-repeat="abs in absensis{{$item->personal_id}}.absen">
  133.                                                         <div ng-if="abs.jenisabsen_id <= 1">
  134.                                                             <div>@{{ (abs.masuk!=null) ? abs.masuk : '-'}}</div>
  135.                                                             <div>@{{ (abs.pulang!=null) ? abs.pulang : '-'}}</div>
  136.                                                         </div >
  137.                                                         <div ng-if="abs.jenisabsen_id > 1">
  138.                                                             <div ng-if="abs.jenisabsen_id > 1"  class="@{{(abs.jenisabsen_id > 1) ? 'label' : ''}}" style="background-color:@{{(abs.jenisabsen_id > 1) ? abs.warna + ';color:white;' : ''}}">
  139.                                                                 @{{abs.singkatan}}
  140.                                                             </div>
  141.                                                         </div >
  142.                                                     </div >
  143.                                                 </td>
  144.                                                      
  145.                                             </tr>
  146.                                         @endforeach
  147.                                     </tbody>
  148.                                 </table>
  149.                             </div>
  150.                         </div>
  151.                         <div class="pagination"> {!! $job->appends(App\MyFunc::CekFilter())->render() !!} </div>
  152.                     </div>
  153.                 </div>
  154.             </div>
  155.         </section>
  156.         <section id="section-timecard">
  157.         <div class="row">
  158.             <div id="show-timecard" class="hidden">
  159.                     <div  class="ibox float-e-margins">
  160.                         <div class="ibox-title">
  161.                             <h5 id="title-timecard">Time Card</h5>
  162.                            
  163.                         </div>
  164.                         <div id="content-timecard" class="ibox-content">
  165.                             <div class="text-center">
  166.                                 <img src="{{ url('img/loading.gif') }}">
  167.                             </div>
  168.                         </div>
  169.                     </div>
  170.                
  171.             </div>
  172.         </div> 
  173.     </section>
  174.     </div>
  175. @endsection
  176.  
  177. @section('header_script')
  178. {!! HTML::style('css/plugins/select2/select2.min.css') !!} 
  179. @append
  180.  
  181. @section('footer_script')
  182. {!! HTML::script('js/angular/angular.myapp.js') !!}
  183.  
  184. <div id="modal-proses-absensi" class="modal fade" aria-hidden="true">
  185.     <div class="modal-dialog">
  186.         <div class="modal-content animated fadeIn">
  187.             <div class="modal-header">
  188.                 Proses Absensi
  189.                
  190.             </div>
  191.             <div class="modal-body text-center">   
  192.                     @include('layouts.spinner-cube-grid')
  193.                     <div id="content-modal-proses-absensi">
  194.                                                
  195.                     </div>                             
  196.             </div>        
  197.             <div class="modal-footer" id="modal-footer">
  198.                 Please Wait...!
  199.             </div>         
  200.         </div>
  201.     </div>
  202. </div>
  203. <div id="modal-preview" class="modal fade" aria-hidden="true">
  204.     <div class="modal-dialog modal-lg">
  205.         <div class="modal-content animated fadeIn">
  206.             <div class="modal-header">
  207.                 Data Absensi
  208.                 <a  data-dismiss="modal" class="close" class="btn btn-round btn-danger btn-xs">                    
  209.                             <i class="fa fa-times"></i>
  210.                 </a>
  211.             </div>
  212.             <div class="modal-body text-center">   
  213.                     @include('layouts.spinner-cube-grid')
  214.                     <div id="content-modal-preview">
  215.                                                
  216.                     </div>                             
  217.             </div>        
  218.             <div class="modal-footer" id="modal-preview-footer">
  219.                 Please Wait...!
  220.             </div>         
  221.         </div>
  222.     </div>
  223. </div> 
  224.  
  225.  
  226. <script type="text/javascript">
  227.  
  228.  
  229. $(function(){  
  230.    
  231.    
  232.     $('#proses-absensi').click(function(){
  233.         var $cekfilter = '';
  234.         @if(Request::has('search'))
  235.             if($cekfilter=='') $cekfilter = $cekfilter + '?'; else $cekfilter = $cekfilter + '&';
  236.             $cekfilter = $cekfilter + '{!! 'filter='.Request::input('filter').'&search='.Request::input('search') !!}';
  237.         @endif
  238.         @if(Request::has('lokasi'))
  239.             if($cekfilter=='') $cekfilter = $cekfilter + '?'; else $cekfilter = $cekfilter + '&';
  240.             $cekfilter = $cekfilter + 'lokasi={!! Request::input('lokasi') !!}';
  241.         @endif
  242.         @if(Request::has('strukorgan'))
  243.             if($cekfilter=='') $cekfilter = $cekfilter + '?'; else $cekfilter = $cekfilter + '&';
  244.             $cekfilter = $cekfilter + 'strukorgan={!! Request::input('strukorgan') !!}';
  245.         @endif
  246.         @if(Request::has('jobstatus'))
  247.             if($cekfilter=='') $cekfilter = $cekfilter + '?'; else $cekfilter = $cekfilter + '&';
  248.             $cekfilter = $cekfilter + 'jobstatus={!! Request::input('jobstatus') !!}';
  249.         @endif
  250.         window.location.href='{{ url('/absensi/beginproses') }}' + $cekfilter;
  251.     });
  252.    
  253.    
  254.            
  255.     $('.get-timecard').click(function(){
  256.             $('#content-timecard').html('<div class="text-center"><img src="{{ url('img/loading.gif') }}"></div>');
  257.             var nama = $(this).attr('data-nama');
  258.             var id = $(this).attr('data-id');
  259.             var noid = $(this).attr('data-noid');
  260.             var box =$('#show-timecard');
  261.             if(box.attr('class')=='hidden'){
  262.                 box.removeAttr('class').addClass('animated fadeInDown');
  263.                 $('#title-timecard').html('Timecard : ' + noid + ', ' + nama);             
  264.                
  265.             }else{
  266.                 box.removeAttr('class').addClass('animated fadeOutUp');
  267.                 setTimeout(function(){
  268.                     box.removeAttr('class').addClass('animated fadeInDown');
  269.                     $('#title-timecard').html('Timecard : ' + noid + ', ' + nama);
  270.                 },500);            
  271.             }
  272.            
  273.             $.get('{{ url('prosesabsensi') }}/'+id,function(data){
  274.                     $('#content-timecard').html(data);
  275.                     $('html, body').animate({
  276.                         scrollTop: $('#content-timecard').offset().top
  277.                     }, 1000);
  278.             });        
  279.             return false;
  280.     });
  281. });
  282.  
  283.  
  284. </script>
  285. @append
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement