414 lines
22 KiB
PHP
414 lines
22 KiB
PHP
@extends('layouts.list_master')
|
|
@section('pageTitle', __('My Incoming Documents'))
|
|
@section('content')
|
|
|
|
<div class="page-header">
|
|
<h1 class="page-title">{{ __('My Incoming Documents') }}</h1>
|
|
<ol class="breadcrumb">
|
|
<li class="breadcrumb-item"><a href="javascript: void(0);">{{ __('Dashboard') }}</a></li>
|
|
<li class="breadcrumb-item active">{{ __('My Incoming Documents') }}</li>
|
|
</ol>
|
|
</div>
|
|
|
|
|
|
<div class="page-content">
|
|
<div class="panel">
|
|
<div class="panel-body">
|
|
<div class="row">
|
|
<div class="form-group col-md-7">
|
|
<h4 class="card-title project-title">
|
|
{{ __('Lists Of Incoming Documents') }}
|
|
</h4>
|
|
</div>
|
|
@if(check_permissions(1) === true) <!-- Register Incoming Document -->
|
|
<div class="form-group col-md-5 text-right">
|
|
<a class="btn btn-dark" href="{{ route('create_document_workflow') }}">
|
|
<i class="icon wb-plus" aria-hidden="true"></i>
|
|
<span class="hidden-sm-down">{{ __('Start New Workflow') }}</span>
|
|
</a>
|
|
</div>
|
|
@endif
|
|
</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>{{ __('Sender') }}</th>
|
|
<th>{{ __('Sender Letter No') }}</th>
|
|
<th>{{ __('Sender Letter Date') }}</th>
|
|
<th>{{ __('Reviewer 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 }}</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')
|
|
<button type="button" class="btn btn-success"><i class="icon wb-stats-bars" aria-hidden="true"></i> <b>{{ __('Complete') }}</b></button>
|
|
@elseif(isset($user_process))
|
|
@if($user_process->status=='P')
|
|
<button type="button" class="btn btn-warning"><i class="icon wb-stats-bars" aria-hidden="true"></i> <b>{{ __('Pending') }}</b></button>
|
|
@elseif($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=='D')
|
|
<button type="button" class="btn btn-primary"><i class="icon wb-stats-bars" aria-hidden="true"></i> <b>{{ __('Delegate') }}</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>
|
|
@elseif($user_process->status=='W')
|
|
<button type="button" class="btn btn-dark"><i class="icon wb-stats-bars" aria-hidden="true"></i> <b>{{ __('Working') }}</b></button>
|
|
@elseif($user_process->status=='CA')
|
|
<button type="button" class="btn btn-danger"><i class="icon wb-stats-bars" aria-hidden="true"></i> <b>{{ __('Cancel') }}</b></button>
|
|
@elseif($user_process->status=='CO')
|
|
<button type="button" class="btn btn-success"><i class="icon wb-stats-bars" aria-hidden="true"></i> <b>{{ __('Complete') }}</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><b>{{ $document->sender_letter_number }}</b></td>
|
|
<td><b>{{ $document->sender_letter_date != '' ? date('d-m-Y', strtotime($document->sender_letter_date)) : '' }}</b></td>
|
|
<td>
|
|
@php
|
|
$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']).') ';
|
|
}else{
|
|
$reviewer_user_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" data-original-title="{{ __('View') }}" style="{{ $bg_color }}"><i class="icon wb-eye" aria-hidden="true"></i></a>
|
|
@if((!isset($user_process) || $user_process->status=='P' ) && $document->status != 'Complete')
|
|
<a class="btn btn-sm btn-icon btn-default btn-outline btn-round m-1" href="{{ route('edit_document', base64_encode($document->id)) }}" data-toggle="tooltip" data-original-title="{{ __('Edit') }}" style="{{ $bg_color }}"><i class="icon wb-edit" aria-hidden="true"></i></a></a>
|
|
@if($document_user->role_id <> 1)
|
|
<a class="btn btn-sm btn-icon btn-default btn-outline btn-round m-1" href="{{ route('reply_document', base64_encode($document->id)) }}" data-toggle="tooltip" data-original-title="{{ __('Reply') }}" style="{{ $bg_color }}"><i class="icon wb-reply" aria-hidden="true"></i></a>
|
|
@endif
|
|
@endif
|
|
|
|
@if($document_user->role_id <> 1 && $document_user->department_id <> 7 && $user_process->status=='P')
|
|
<a class="" href="javascript:void(0);" data-toggle="tooltip" data-original-title="{{ __('Return') }}"><button type="button" class="btn btn-sm btn-icon btn-default btn-outline btn-round m-1" data-toggle="modal" data-target="#myModal{{ $document->id }}" style="{{ $bg_color }}"><i class="icon fa fa-undo"></i></button></a>
|
|
<!-- The Modal -->
|
|
<div class="modal fade" id="myModal{{ $document->id }}">
|
|
<div class="modal-dialog modal-dialog-centered">
|
|
<div class="modal-content">
|
|
<form method="post" action="{{ route('store_return', base64_encode($document->id)) }}" class="add-form" autocomplete="off" enctype="multipart/form-data">
|
|
@csrf
|
|
<!-- Modal Header -->
|
|
<div class="modal-header">
|
|
<h4 class="modal-title">{{ __('Return Document Workflow') }}</h4>
|
|
<button type="button" class="close" data-dismiss="modal">×</button>
|
|
</div>
|
|
|
|
<!-- Modal body -->
|
|
<div class="modal-body">
|
|
<div class="row">
|
|
<div class="form-group col-md-12">
|
|
<label class="form-control-label" for="comment">{{ __('Comments') }}</label>
|
|
<textarea class="form-control validate[required]" name = "comment" maxlength="{{ $setting->comment_text_limit }}">{{ old('comment') ? old('comment') : '' }}</textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Modal footer -->
|
|
<div class="modal-footer">
|
|
<button type="submit" class="btn btn-success"><i class="icon wb-check" aria-hidden="true"></i>{{ __('Return') }}</button>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@endif
|
|
|
|
@if($document_user->department_id <> 7 && $user_process->status=='P')
|
|
<a class="" href="javascript:void(0);" data-toggle="tooltip" data-original-title="{{ __('Complete') }}"><button type="button" class="btn btn-sm btn-icon btn-default btn-outline btn-round m-1" data-toggle="modal" data-target="#myCompleteModal{{ $document->id }}" style="{{ $bg_color }}" ><i class="icon fa-check" aria-hidden="true"></i></button></a>
|
|
<!-- The Modal -->
|
|
<div class="modal fade" id="myCompleteModal{{ $document->id }}">
|
|
<div class="modal-dialog modal-dialog-centered">
|
|
<div class="modal-content">
|
|
<form method="post" action="{{ route('store_complete', base64_encode($document->id)) }}" class="add-form" autocomplete="off" enctype="multipart/form-data">
|
|
@csrf
|
|
<!-- Modal Header -->
|
|
<div class="modal-header">
|
|
<h4 class="modal-title">{{ __('Complete Document Workflow') }}</h4>
|
|
<button type="button" class="close" data-dismiss="modal">×</button>
|
|
</div>
|
|
|
|
<!-- Modal body -->
|
|
<div class="modal-body">
|
|
<div class="row">
|
|
<div class="form-group col-md-12">
|
|
<label class="form-control-label" for="comment">{{ __('Comments') }}</label>
|
|
<textarea class="form-control validate[required]" name = "comment" maxlength="{{ $setting->comment_text_limit }}">{{ old('comment') ? old('comment') : '' }}</textarea>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Modal footer -->
|
|
<div class="modal-footer">
|
|
<button type="submit" class="btn btn-success"><i class="icon wb-check" aria-hidden="true"></i>{{ __('Save') }}</button>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@endif
|
|
</td>
|
|
</tr>
|
|
@elseif(check_permissions(1) === true)
|
|
<tr style="{{ $bg_color }}">
|
|
@php
|
|
$sl++;
|
|
@endphp
|
|
<td><b>{{ $sl }}</b></td>
|
|
<td><b>{{ $document->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')
|
|
<button type="button" class="btn btn-success"><i class="icon wb-stats-bars" aria-hidden="true"></i> <b>{{ __('Complete') }}</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><b>{{ $document->sender_letter_number }}</b></td>
|
|
<td><b>{{ $document->sender_letter_date != '' ? date('d-m-Y', strtotime($document->sender_letter_date)) : '' }}</b></td>
|
|
<td>
|
|
@php
|
|
$reviewer = App\WorkflowDocumentProcess::where('workflow_document_id', '=', $document->id)->orderBy('id', 'desc')->first();
|
|
if(isset($reviewer)){
|
|
$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']).') ';
|
|
}else{
|
|
$reviewer_user_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>
|
|
<a class="btn btn-sm btn-icon btn-default btn-outline btn-round m-1" href="{{ route('edit_registry_document', base64_encode($document->id)) }}" data-toggle="tooltip" data-original-title="{{ __('Edit') }}" style="{{ $bg_color }}"><i class="icon wb-edit" aria-hidden="true"></i></a></a>
|
|
</td>
|
|
</tr>
|
|
@elseif(!empty($userAsSupporter))
|
|
<tr style="{{ $bg_color }}">
|
|
@php
|
|
$sl++;
|
|
@endphp
|
|
<td><b>{{ $sl }}</b></td>
|
|
<td><b>{{ $document->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')
|
|
<button type="button" class="btn btn-success"><i class="icon wb-stats-bars" aria-hidden="true"></i> <b>{{ __('Complete') }}</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><b>{{ $document->sender_letter_number }}</b></td>
|
|
<td><b>{{ $document->sender_letter_date != '' ? date('d-m-Y', strtotime($document->sender_letter_date)) : '' }}</b></td>
|
|
<td>
|
|
@php
|
|
$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']).') ';
|
|
}else{
|
|
$reviewer_user_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->status != 'Complete')
|
|
<a class="btn btn-sm btn-icon btn-default btn-outline btn-round m-1" href="{{ route('edit_supporter_document', base64_encode($document->id)) }}" data-toggle="tooltip" data-original-title="{{ __('Edit') }}" style="{{ $bg_color }}"><i class="icon wb-edit" aria-hidden="true"></i></a></a>
|
|
@endif
|
|
</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>
|
|
<style type="text/css">
|
|
.modal-open .select2-container {
|
|
z-index: 1;
|
|
}
|
|
</style>
|
|
@endsection |