335 lines
18 KiB
PHP
335 lines
18 KiB
PHP
@extends('layouts.list_master')
|
|
|
|
@section('pageTitle', __('My Outgoing Documents'))
|
|
@section('content')
|
|
|
|
<div class="page-header">
|
|
<h1 class="page-title">{{ __('My Outgoing Documents') }}</h1>
|
|
<ol class="breadcrumb">
|
|
<li class="breadcrumb-item"><a href="javascript: void(0);">{{ __('Dashboard') }}</a></li>
|
|
<li class="breadcrumb-item active">{{ __('My Outgoing Documents') }}</li>
|
|
</ol>
|
|
</div>
|
|
|
|
|
|
<div class="page-content">
|
|
<div class="panel">
|
|
<div class="panel-body">
|
|
<div class="row">
|
|
<div class="form-group col-md-5">
|
|
<h4 class="card-title project-title">
|
|
{{ __('Lists Of Outgoing Documents') }}
|
|
</h4>
|
|
</div>
|
|
<div class="form-group col-md-7 text-right">
|
|
@if(check_permissions(2) === true) <!-- Register Outgoing Document without Workflow -->
|
|
<a class="btn btn-dark mb-1" href="{{ route('create_workflow_free_outgoing_document') }}">
|
|
<i class="icon wb-plus" aria-hidden="true"></i>
|
|
<span class="hidden-sm-down">{{ __('Outgoing Document Workflow') }}</span>
|
|
</a>
|
|
@endif
|
|
<a class="btn btn-dark mb-1" href="{{ route('create_outgoing_document_workflow') }}">
|
|
<i class="icon wb-plus" aria-hidden="true"></i>
|
|
<span class="hidden-sm-down">{{ __('Start New Outgoing Workflow') }}</span>
|
|
</a>
|
|
</div>
|
|
</div>
|
|
<hr/>
|
|
<div class="row">
|
|
@include('document-workflows.search')
|
|
<table class="table table-hover table-striped w-full">
|
|
<thead>
|
|
<tr>
|
|
<th>#</th>
|
|
<th>{{ __('REG. Number') }}</th>
|
|
<th>{{ __('Registration Date') }}</th>
|
|
<th>{{ __('Topic') }}</th>
|
|
<th>{{ __('Status') }}</th>
|
|
<th>{{ __('Recipient') }}</th>
|
|
<th>{{ __('Approver User') }}</th>
|
|
<th>{{ __('Supporter User') }}</th>
|
|
<th>{{ __('Creator') }}</th>
|
|
<th>{{ __('Action') }}</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
@if (!empty($workflow_documents))
|
|
@php
|
|
$sl=0;
|
|
@endphp
|
|
@foreach($workflow_documents as $key=> $document)
|
|
@php
|
|
$bg_color='';
|
|
$unread_user = App\WorkflowDocumentUser::where('workflow_document_id', '=', $document->id)
|
|
->where('user_id', Auth::user()->id)
|
|
->where('is_read', '0')
|
|
->where('status', 'Y')
|
|
->first();
|
|
if(isset($unread_user) && !empty($unread_user))
|
|
{
|
|
$bg_color="background-color: rgba(135, 243, 108, 0.57)";
|
|
}
|
|
$return_user_process = App\WorkflowDocumentProcess::where('workflow_document_id', '=', $document->id)->where('user_id', Auth::user()->id)->where('status', '=', 'R')->orderBy('id', 'desc')->first();
|
|
|
|
$user_process = App\WorkflowDocumentProcess::where('workflow_document_id', '=', $document->id)->where('user_id', Auth::user()->id)->orderBy('id', 'desc')->first();
|
|
|
|
if(isset($user_process)){
|
|
$parent_user_process = App\WorkflowDocumentProcess::where('id', '=', $user_process->parent_id)->first();
|
|
if(isset($parent_user_process) && !empty($parent_user_process) && $parent_user_process->status == 'R' && $user_process->status=='P')
|
|
{
|
|
$bg_color="background-color: peachpuff";
|
|
}
|
|
}
|
|
|
|
$userAsSupporter = App\WorkflowDocumentUser::where('workflow_document_id', '=', $document->id)->where('user_type','=','S')->where('status', '=', 'Y')->where('user_id', '=', Auth::user()->id)->first();
|
|
@endphp
|
|
@if(!empty($user_process))
|
|
<tr style="{{ $bg_color }}">
|
|
@php
|
|
$sl++;
|
|
@endphp
|
|
<td><b>{{ $sl }}</b></td>
|
|
<td><b>{{ $document->registration_number != '' ? $document->registration_number : $document->temporary_registration_number }}</b></td>
|
|
<td><b>{{ $document->registration_date != '' ? date('d-m-Y', strtotime($document->registration_date)) : '' }}</b></td>
|
|
<td><b>{{ $document->topic }}</b></td>
|
|
<td>
|
|
@if($document->status == 'Complete' || $document->status=='Approved')
|
|
<button type="button" class="btn btn-success"><i class="icon {{($document->isSigned()) ? 'wb-lock' : 'wb-stats-bars'}}" aria-hidden="true"></i> <b>{{ __('Approved') }} </b></button>
|
|
@elseif($document->is_rejected =='1')
|
|
<button type="button" class="btn btn-danger"><i class="icon wb-stats-bars" aria-hidden="true"></i> <b>{{ __('Rejected') }}</b></button>
|
|
@elseif(isset($user_process))
|
|
@if($user_process->status=='R')
|
|
<button type="button" class="btn btn-danger"><i class="icon wb-stats-bars" aria-hidden="true"></i> <b>{{ __('Returned') }}</b></button>
|
|
@elseif($user_process->status=='A')
|
|
<button type="button" class="btn btn-success"><i class="icon wb-stats-bars" aria-hidden="true"></i> <b>{{ __('Approved') }}</b></button>
|
|
@elseif($user_process->status=='SA')
|
|
<button type="button" class="btn btn-primary"><i class="icon wb-stats-bars" aria-hidden="true"></i> <b>{{ __('Send For approval') }}</b></button>
|
|
@else
|
|
<button type="button" class="btn btn-warning"><i class="icon wb-stats-bars" aria-hidden="true"></i> <b>{{ __('Pending') }}</b></button>
|
|
@endif
|
|
@else
|
|
<button type="button" class="btn btn-warning"><i class="icon wb-stats-bars" aria-hidden="true"></i> <b>{{ __('Pending') }}</b></button>
|
|
@endif
|
|
</td>
|
|
@php
|
|
$senders = App\WorkflowDocumentSender::where('workflow_document_id', '=', $document->id)->where('status', '=', 'Y')->orderBy('id', 'asc')->get();
|
|
@endphp
|
|
<td>
|
|
@if($senders)
|
|
@foreach($senders as $sender)
|
|
<b>{{ $sender->contact_organization_name }}</b><br>
|
|
@endforeach
|
|
@endif
|
|
</td>
|
|
<td>
|
|
@php
|
|
$reviewer = App\WorkflowDocumentProcess::where('workflow_document_id', '=', $document->id)->orderBy('id', 'desc')->first();
|
|
$user = App\User::join('role_user', 'users.id', '=', 'role_user.user_id')
|
|
->join('roles', 'role_user.role_id', '=', 'roles.id')
|
|
->where('users.id', '=', $reviewer->user_id)
|
|
->select('users.*', 'roles.name as role_name', 'roles.id as role_id', 'users.id as id')
|
|
->first();
|
|
$user_department = App\Department::where('id',$user['department_id'])->first();
|
|
if(isset($user_department))
|
|
$reviewer_user_name = $user['first_name'].' '.$user['last_name'].' - ('.dataTranslation($user['role_name']).', '.dataTranslation($user_department->name).' Dep.)';
|
|
else
|
|
$reviewer_user_name = $user['first_name'].' '.$user['last_name'].' - ('.dataTranslation($user['role_name']).') ';
|
|
@endphp
|
|
<b>{{ $reviewer_user_name }}</b>
|
|
</td>
|
|
<td>
|
|
@php
|
|
$supporters = App\WorkflowDocumentUser::where('workflow_document_id', '=', $document->id)->where('user_type','=','S')->where('status', '=', 'Y')->orderBy('id', 'asc')->get();
|
|
@endphp
|
|
@if($supporters)
|
|
@foreach($supporters as $key => $supporter)
|
|
@php
|
|
$user = App\User::join('role_user', 'users.id', '=', 'role_user.user_id')
|
|
->join('roles', 'role_user.role_id', '=', 'roles.id')
|
|
->where('users.id', '=', $supporter->user_id)
|
|
->select('users.*', 'roles.name as role_name', 'roles.id as role_id', 'users.id as id')
|
|
->first();
|
|
$user_department = App\Department::where('id',$user['department_id'])->first();
|
|
if(isset($user_department))
|
|
$supporter_user_name = $user['first_name'].' '.$user['last_name'].' - ('.dataTranslation($user['role_name']).', '.dataTranslation($user_department->name).' Dep.)';
|
|
else
|
|
$supporter_user_name = $user['first_name'].' '.$user['last_name'].' - ('.dataTranslation($user['role_name']).') ';
|
|
@endphp
|
|
<b>{{ $supporter_user_name }}</b>
|
|
@endforeach
|
|
@endif
|
|
</td>
|
|
<td><b>{{ $document->creator_name }}</b></td>
|
|
<td>
|
|
<a class="btn btn-sm btn-icon btn-default btn-outline btn-round m-1" href="{{ route('details', base64_encode($document->id)) }}#view_document" data-toggle="tooltip" target="_blank" data-original-title="{{ __('View') }}" style="{{ $bg_color }}"><i class="icon wb-eye" aria-hidden="true"></i></a>
|
|
</td>
|
|
</tr>
|
|
@elseif($document->creator_id == Auth::user()->id || check_permissions(1) === true)
|
|
<tr style="{{ $bg_color }}">
|
|
@php
|
|
$sl++;
|
|
@endphp
|
|
<td><b>{{ $sl }}</b></td>
|
|
<td><b>{{ $document->registration_number != '' ? $document->registration_number : $document->temporary_registration_number }}</b></td>
|
|
<td><b>{{ $document->registration_date != '' ? date('d-m-Y', strtotime($document->registration_date)) : '' }}</b></td>
|
|
<td><b>{{ $document->topic }}</b></td>
|
|
<td>
|
|
@if($document->status == 'Complete' || $document->status=='Approved')
|
|
<button type="button" class="btn btn-success"><i class="icon {{($document->isSigned()) ? 'wb-lock' : 'wb-stats-bars'}}" aria-hidden="true"></i> <b>{{ __('Approved') }} </b></button>
|
|
@elseif($document->is_rejected =='1')
|
|
<button type="button" class="btn btn-danger"><i class="icon wb-stats-bars" aria-hidden="true"></i> <b>{{ __('Rejected') }}</b></button>
|
|
@else
|
|
<button type="button" class="btn btn-warning"><i class="icon wb-stats-bars" aria-hidden="true"></i> <b>{{ __('Pending') }}</b></button>
|
|
@endif
|
|
</td>
|
|
@php
|
|
$senders = App\WorkflowDocumentSender::where('workflow_document_id', '=', $document->id)->where('status', '=', 'Y')->orderBy('id', 'asc')->get();
|
|
@endphp
|
|
<td>
|
|
@if($senders)
|
|
@foreach($senders as $sender)
|
|
<b>{{ $sender->contact_organization_name }}</b><br>
|
|
@endforeach
|
|
@endif
|
|
</td>
|
|
<td>
|
|
@php
|
|
$reviewer_user_name='';
|
|
$reviewer = App\WorkflowDocumentProcess::where('workflow_document_id', '=', $document->id)->orderBy('id', 'desc')->first();
|
|
if(isset($reviewer)){
|
|
$user = App\User::join('role_user', 'users.id', '=', 'role_user.user_id')
|
|
->join('roles', 'role_user.role_id', '=', 'roles.id')
|
|
->where('users.id', '=', $reviewer->user_id)
|
|
->select('users.*', 'roles.name as role_name', 'roles.id as role_id', 'users.id as id')
|
|
->first();
|
|
$user_department = App\Department::where('id',$user['department_id'])->first();
|
|
if(isset($user_department))
|
|
$reviewer_user_name = $user['first_name'].' '.$user['last_name'].' - ('.dataTranslation($user['role_name']).', '.dataTranslation($user_department->name).' Dep.)';
|
|
else
|
|
$reviewer_user_name = $user['first_name'].' '.$user['last_name'].' - ('.dataTranslation($user['role_name']).') ';
|
|
}
|
|
@endphp
|
|
<b>{{ $reviewer_user_name }}</b>
|
|
</td>
|
|
<td>
|
|
@php
|
|
$supporters = App\WorkflowDocumentUser::where('workflow_document_id', '=', $document->id)->where('user_type','=','S')->where('status', '=', 'Y')->orderBy('id', 'asc')->get();
|
|
@endphp
|
|
@if($supporters)
|
|
@foreach($supporters as $key => $supporter)
|
|
@php
|
|
$user = App\User::join('role_user', 'users.id', '=', 'role_user.user_id')
|
|
->join('roles', 'role_user.role_id', '=', 'roles.id')
|
|
->where('users.id', '=', $supporter->user_id)
|
|
->select('users.*', 'roles.name as role_name', 'roles.id as role_id', 'users.id as id')
|
|
->first();
|
|
$user_department = App\Department::where('id',$user['department_id'])->first();
|
|
if(isset($user_department))
|
|
$supporter_user_name = $user['first_name'].' '.$user['last_name'].' - ('.dataTranslation($user['role_name']).', '.dataTranslation($user_department->name).' Dep.)';
|
|
else
|
|
$supporter_user_name = $user['first_name'].' '.$user['last_name'].' - ('.dataTranslation($user['role_name']).') ';
|
|
@endphp
|
|
<b>{{ $supporter_user_name }}</b>
|
|
@endforeach
|
|
@endif
|
|
</td>
|
|
<td><b>{{ $document->creator_name }}</b></td>
|
|
<td>
|
|
<a class="btn btn-sm btn-icon btn-default btn-outline btn-round m-1" href="{{ route('details', base64_encode($document->id)) }}#view_document" data-toggle="tooltip" target="_blank" data-original-title="{{ __('View') }}" style="{{ $bg_color }}"><i class="icon wb-eye" aria-hidden="true"></i></a>
|
|
@if ($document->hasSenderAPI())
|
|
<a class="btn btn-sm btn-icon btn-default btn-outline btn-round m-1" href="{{ route('transfers.create', base64_encode($document->id)) }}" data-toggle="tooltip" target="_blank" data-original-title="{{ __('API')}}" style="{{ $bg_color }}"><i class="fa fa-plane" aria-hidden="true"></i></a>
|
|
@endif
|
|
</td>
|
|
</tr>
|
|
@elseif(!empty($userAsSupporter))
|
|
<tr style="{{ $bg_color }}">
|
|
@php
|
|
$sl++;
|
|
@endphp
|
|
<td><b>{{ $sl }}</b></td>
|
|
<td><b>{{ $document->registration_number != '' ? $document->registration_number : $document->temporary_registration_number }}</b></td>
|
|
<td><b>{{ $document->registration_date != '' ? date('d-m-Y', strtotime($document->registration_date)) : '' }}</b></td>
|
|
<td><b>{{ $document->topic }}</b></td>
|
|
<td>
|
|
@if($document->status == 'Complete' || $document->status=='Approved')
|
|
<button type="button" class="btn btn-success"><i class="icon {{($document->isSigned()) ? 'wb-lock' : 'wb-stats-bars'}}" aria-hidden="true"></i> <b>{{ __('Approved') }} </b></button>
|
|
@elseif($document->is_rejected =='1')
|
|
<button type="button" class="btn btn-danger"><i class="icon wb-stats-bars" aria-hidden="true"></i> <b>{{ __('Rejected') }}</b></button>
|
|
@else
|
|
<button type="button" class="btn btn-warning"><i class="icon wb-stats-bars" aria-hidden="true"></i> <b>{{ __('Pending') }}</b></button>
|
|
@endif
|
|
</td>
|
|
@php
|
|
$senders = App\WorkflowDocumentSender::where('workflow_document_id', '=', $document->id)->where('status', '=', 'Y')->orderBy('id', 'asc')->get();
|
|
@endphp
|
|
<td>
|
|
@if($senders)
|
|
@foreach($senders as $sender)
|
|
<b>{{ $sender->contact_organization_name }}</b><br>
|
|
@endforeach
|
|
@endif
|
|
</td>
|
|
<td>
|
|
@php
|
|
$reviewer = App\WorkflowDocumentProcess::where('workflow_document_id', '=', $document->id)->orderBy('id', 'desc')->first();
|
|
$user = App\User::getUserDocument()->where('users.id', '=', $reviewer->user_id)->first();
|
|
$user_department = App\Department::where('id',$user['department_id'])->first();
|
|
|
|
if(isset($user_department))
|
|
$reviewer_user_name = $user['first_name'].' '.$user['last_name'].' - ('.dataTranslation($user['role_name']).', '.dataTranslation($user_department->name).' Dep.)';
|
|
else
|
|
$reviewer_user_name = $user['first_name'].' '.$user['last_name'].' - ('.dataTranslation($user['role_name']).') ';
|
|
@endphp
|
|
<b>{{ $reviewer_user_name }}</b>
|
|
</td>
|
|
<td>
|
|
@php
|
|
$supporters = App\WorkflowDocumentUser::where('workflow_document_id', '=', $document->id)->where('user_type','=','S')->where('status', '=', 'Y')->orderBy('id', 'asc')->get();
|
|
@endphp
|
|
@if($supporters)
|
|
@foreach($supporters as $key => $supporter)
|
|
@php
|
|
$user = App\User::getUserDocument()->where('users.id', '=', $supporter->user_id)->first();
|
|
$user_department = App\Department::where('id',$user['department_id'])->first();
|
|
|
|
if(isset($user_department))
|
|
$supporter_user_name = $user['first_name'].' '.$user['last_name'].' - ('.dataTranslation($user['role_name']).', '.dataTranslation($user_department->name).' Dep.)';
|
|
else
|
|
$supporter_user_name = $user['first_name'].' '.$user['last_name'].' - ('.dataTranslation($user['role_name']).') ';
|
|
@endphp
|
|
<b>{{ $supporter_user_name }}</b>
|
|
@endforeach
|
|
@endif
|
|
</td>
|
|
<td><b>{{ $document->creator_name }}</b></td>
|
|
<td>
|
|
<a class="btn btn-sm btn-icon btn-default btn-outline btn-round m-1" href="{{ route('details', base64_encode($document->id)) }}#view_document" data-toggle="tooltip" target="_blank" data-original-title="{{ __('View') }}" style="{{ $bg_color }}"><i class="icon wb-eye" aria-hidden="true"></i></a>
|
|
</td>
|
|
</tr>
|
|
@endif
|
|
@endforeach
|
|
@else
|
|
<tr>
|
|
<td colspan="100%" class="text-center">{{ __('No record found') }}</td>
|
|
</tr>
|
|
@endif
|
|
</tbody>
|
|
</table>
|
|
<nav>
|
|
{!! $workflow_documents->render() !!}
|
|
</nav>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<script type="text/javascript">
|
|
$(function(){
|
|
$(".add-form").validationEngine('attach',{scroll:false});
|
|
})
|
|
</script>
|
|
<style type="text/css">
|
|
.modal-open .select2-container {
|
|
z-index: 1;
|
|
}
|
|
</style>
|
|
@endsection |