diff --git a/app/Http/Controllers/ClientsController.php b/app/Http/Controllers/ClientsController.php index 827ecb6..62b1c0e 100755 --- a/app/Http/Controllers/ClientsController.php +++ b/app/Http/Controllers/ClientsController.php @@ -629,6 +629,7 @@ class ClientsController extends Controller $support_fees = Models\ClientSupportFees::where('client_id', $id)->orderBy('id', 'DESC')->get(); $showdocuments = Models\ClientFile::where('client_id', $id)->get(); + // dd($showdocuments[0]->name); if ($showclient->status == 'Live') { $status_bg = "info"; } @@ -722,6 +723,7 @@ class ClientsController extends Controller ]; return view('client.show', $data); } + public function showReadonly($id){ //with('short_code_info')-> $showclient = Models\Client::with('service_info', 'country_info', 'auth_user_info', 'short_code_info')->find($id); @@ -890,7 +892,26 @@ class ClientsController extends Controller $payment_type = ['Prepaid' => 'Prepaid', 'Postpaid' => 'Postpaid']; // Models\PaymentType::pluck('name', 'id')->toArray(); $status = ['Live' => 'Live', 'inactive' => 'Inactive', 'Prospective' => 'Prospective']; $currency = Models\Currency::orderBy('name', 'ASC')->pluck('name', 'name'); + $existing_documents = Models\ClientFile::where('client_id', $id)->get(); + $files = [ + 'contract' => 'NO', + 'non_disclosure' => 'NO', + 'technical_doc' => 'NO' + ]; + foreach ($existing_documents as $value) { + if ($value->name == 'Contract') { + $files['contract'] = "YES"; + } + else if($value->name == 'Non Disclosure'){ + $files['non_disclosure'] = "YES"; + } + else if($value->name == 'Technical Document'){ + $files['technical_doc'] = "YES"; + } + else{ + } + } $company_types = ['Aggregator/Supplier' => 'Aggregator/Supplier', 'Enterprise' => 'Enterprise']; $auth_users = Models\SystemUser::orderBy('name', 'ASC')->pluck('name', 'id'); $industries = Models\Industry::orderBy('name', 'ASC')->pluck('name', 'name'); @@ -1033,7 +1054,8 @@ class ClientsController extends Controller 'onboarding_sub_items_progress' => $onboarding_sub_items_progress, 'onboarding_sub_items' => $onboarding_sub_items, 'current_pending_stage' => $client->progress_indicator, - 'has_pending' => $has_pending + 'has_pending' => $has_pending, + 'files' => $files ]; return view('client.edit', $data); } @@ -1092,28 +1114,30 @@ class ClientsController extends Controller } } + + $existing_documents = Models\ClientFile::where('client_id', $id)->get(); + if ($request->has('document_one') && $request->has('document_one_name')) { if ($request->file('document_one')->isValid()) { - $filename = "erp_" . time() . str_random(6) . "." . $request->document_one->extension(); + $filename = "erp_" . time() . str_random(4) . "." . $request->document_one->extension(); $request->document_one->storeAs('client_files', $filename, 'public'); $document_arr['file_path'] = $filename; $client_update->name = $request->name; $store_location = "client_files"; $top = $paperless->processPaperlessFile($request->document_one_name, $request->document_one_name, $filename, $store_location); - // dd($top); $document_arr['file_extension'] = $request->document_one->extension(); $document_arr['file_reff'] = time() . uniqid(); $document_arr['name'] = $request->document_one_name; $document_arr['created_by'] = session('current_user.id'); - $document_arr['client_id'] = $id; - $result = Models\ClientFile::create($document_arr); + //$document_arr['client_id'] = $id; + $result = Models\ClientFile::create($document_arr, ['client_id' => $id]); } } if ($request->has('document_two') && $request->has('document_two_name')) { if ($request->file('document_two')->isValid()) { - $filename = "erp_" . time() . str_random(6) . "." . $request->document_two->extension(); + $filename = "erp_" . time() . str_random(4) . "." . $request->document_two->extension(); $request->document_two->storeAs('client_files', $filename, 'public'); $document_arr['file_path'] = $filename; $client_update->name = $request->name; @@ -1126,12 +1150,14 @@ class ClientsController extends Controller $document_arr['name'] = $request->document_two_name; $document_arr['created_by'] = session('current_user.id'); $document_arr['client_id'] = $id; - $result = Models\ClientFile::create($document_arr); + // $result = Models\ClientFile::create($document_arr); + //$document_arr['client_id'] = $id; + $result = Models\ClientFile::create($document_arr, ['client_id' => $id]); } } if ($request->has('document_three') && $request->has('document_three_name')) { if ($request->file('document_three')->isValid()) { - $filename = "erp_" . time() . str_random(6) . "." . $request->document_three->extension(); + $filename = "erp_" . time() . str_random(4) . "." . $request->document_three->extension(); $request->document_three->storeAs('client_files', $filename, 'public'); $document_arr['file_path'] = $filename; $client_update->name = $request->name; @@ -1144,12 +1170,14 @@ class ClientsController extends Controller $document_arr['name'] = $request->document_three_name; $document_arr['created_by'] = session('current_user.id'); $document_arr['client_id'] = $id; - $result = Models\ClientFile::create($document_arr); + // $result = Models\ClientFile::create($document_arr); + //$document_arr['client_id'] = $id; + $result = Models\ClientFile::create($document_arr, ['client_id' => $id]); } } if ($request->has('other_document') && $request->has('other_document_name')) { if ($request->file('other_document')->isValid()) { - $filename = "erp_" . time() . str_random(6) . "." . $request->other_document->extension(); + $filename = "erp_" . time() . str_random(4) . "." . $request->other_document->extension(); $request->other_document->storeAs('client_files', $filename, 'public'); $document_arr['file_path'] = $filename; $client_update->name = $request->name; diff --git a/app/Http/Controllers/Controller.php b/app/Http/Controllers/Controller.php index b841482..f59329b 100755 --- a/app/Http/Controllers/Controller.php +++ b/app/Http/Controllers/Controller.php @@ -8,9 +8,10 @@ use Illuminate\Foundation\Validation\ValidatesRequests; use Illuminate\Routing\Controller as BaseController; use App\Models; -class Controller extends BaseController -{ +class Controller extends BaseController{ + use AuthorizesRequests, DispatchesJobs, ValidatesRequests; + public function log_queryBAK() { \DB::listen(function ($sql) { \Log::info('showing query', array('sql' => $sql)); diff --git a/app/Http/Controllers/DashboardController.php b/app/Http/Controllers/DashboardController.php index fe119c0..ea36830 100755 --- a/app/Http/Controllers/DashboardController.php +++ b/app/Http/Controllers/DashboardController.php @@ -16,7 +16,9 @@ class DashboardController extends Controller $voice_clients = Models\Client::where('services', 'LIKE', '%ivr%')->count(); $expiring_contracts = Models\Client::where('contract_auto_renew', '<>', 'YES')->where('contract_validity', '<>', null)->orwhere('contract_validity', '<>', '')->orderBy('contract_validity', 'ASC')->take(5)->get(); $user_activities = Models\UserActivity::where('user_id', '>', '1')->with('userInfo')->orderBy('created_at', 'DESC')->take(5)->get(); - $recent_clients = Models\Client::with('auth_user_info')->orderBy('created_at', 'DESC')->take(5)->get(); + $recent_clients = Models\Client::with('auth_user_info')->orderBy('id', 'DESC')->take(5)->get(); + // $recent_clients = Models\Client::orderBy('id', 'DESC')->take(5)->get(); + // dd($recent_clients); $data = [ 'page_title' => 'Dashboard', 'sms' => $sms_clients, diff --git a/app/Http/Controllers/GeneralDocumentsController.php b/app/Http/Controllers/GeneralDocumentsController.php index 942b236..c272e91 100644 --- a/app/Http/Controllers/GeneralDocumentsController.php +++ b/app/Http/Controllers/GeneralDocumentsController.php @@ -133,7 +133,7 @@ class GeneralDocumentsController extends Controller if ($request->has('document_one') && $request->has('document_one_name') && $request->has('document_one_category')) { if ($request->file('document_one')->isValid()) { //dd($request->all()); - $filename = "erp_" . time() . str_random(6) . "." . $request->document_one->extension(); + $filename = "erp_" . time() . str_random(4) . "." . $request->document_one->extension(); $request->document_one->storeAs('general_files', $filename, 'public'); $document_arr['filename'] = $filename; $document_arr['category'] = $request->document_one_category; @@ -151,7 +151,7 @@ class GeneralDocumentsController extends Controller } if ($request->has('document_two') && $request->has('document_two_name') && $request->has('document_two_category')) { if ($request->file('document_two')->isValid()) { - $filename = "erp_" . time() . str_random(6) . "." . $request->document_two->extension(); + $filename = "erp_" . time() . str_random(4) . "." . $request->document_two->extension(); $request->document_two->storeAs('general_files', $filename, 'public'); $document_arr['filename'] = $filename; $document_arr['category'] = $request->document_two_category; @@ -169,7 +169,7 @@ class GeneralDocumentsController extends Controller } if ($request->has('document_three') && $request->has('document_three_name') && $request->has('document_three_category')) { if ($request->file('document_three')->isValid()) { - $filename = "erp_" . time() . str_random(6) . "." . $request->document_three->extension(); + $filename = "erp_" . time() . str_random(4) . "." . $request->document_three->extension(); $request->document_three->storeAs('general_files', $filename, 'public'); $document_arr['filename'] = $filename; $document_arr['category'] = $request->document_three_category; diff --git a/app/Http/Controllers/NetworkOperatorsController.php b/app/Http/Controllers/NetworkOperatorsController.php index 07d6bda..aaa06a9 100755 --- a/app/Http/Controllers/NetworkOperatorsController.php +++ b/app/Http/Controllers/NetworkOperatorsController.php @@ -9,6 +9,7 @@ use Illuminate\Support\Arr; // use App\Http\Requests; use App\Http\Requests; use App\Jobs\NewMnoNotesEmailAlerts; +use App\Libs\PaperLessNgx; // use Illuminate\Http\Request as Requests; @@ -372,13 +373,17 @@ class NetworkOperatorsController extends Controller public function update(Requests\UpdateMnoRequest $request, $id) { $operator_update = Models\NetworkOps::find($id); + $paperless = new PaperLessNgx(); if ($request->has('document_one') && $request->has('document_one_name')) { if ($request->file('document_one')->isValid()) { - $filename = "erp_" . time() . str_random(6) . "." . $request->document_one->extension(); + $filename = "erp_" . time() . str_random(4) . "." . $request->document_one->extension(); $request->document_one->storeAs('mno_files', $filename, 'public'); $document_arr['file_path'] = $filename; $operator_update->name = $request->name; + $store_location = "mno_files"; + $top = $paperless->processPaperlessFile($request->document_one_name, $request->document_one_category, $filename, $store_location); + $document_arr['file_extension'] = $request->document_one->extension(); $document_arr['file_reff'] = time() . uniqid(); $document_arr['name'] = $request->document_one_name; @@ -394,6 +399,9 @@ class NetworkOperatorsController extends Controller $document_arr['file_path'] = $filename; $operator_update->name = $request->name; + $store_location = "mno_files"; + $top = $paperless->processPaperlessFile($request->document_two_name, $request->document_two_category, $filename, $store_location); + $document_arr['file_extension'] = $request->document_two->extension(); $document_arr['file_reff'] = time() . uniqid(); $document_arr['name'] = $request->document_two_name; @@ -409,6 +417,10 @@ class NetworkOperatorsController extends Controller $document_arr['file_path'] = $filename; // $operator_update->name = $request->name; + $store_location = "mno_files"; + $top = $paperless->processPaperlessFile("sliding_rate", 'rates', $filename, $store_location); + + $document_arr['file_extension'] = $request->sliding_rate_file->extension(); $document_arr['file_reff'] = time() . uniqid(); $document_arr['name'] = "Sliding Scale Rate File"; diff --git a/app/Libs/PaperLessNgx.php b/app/Libs/PaperLessNgx.php index fe0e6a5..25965dd 100644 --- a/app/Libs/PaperLessNgx.php +++ b/app/Libs/PaperLessNgx.php @@ -112,10 +112,13 @@ class PaperLessNgx { # set parameters and push to paperless $tags_correspondent = $this->getDocumentCorrespondent($category); if ($store_location == "general_files") { - $file_path = "documents/general_files/" . $filename; //"documents/oasl.pdf"; + $file_path = "documents/general_files/" . $filename; + } + else if ($store_location == "mno_files") { + $file_path = "documents/mno_files/" . $filename; } else{ - $file_path = "documents/client_files/" . $filename; //"documents/oasl.pdf"; + $file_path = "documents/client_files/" . $filename; } $tags_arr[] = $tags_correspondent['tags']; //[1,2]; diff --git a/public/documents/client_files/erp_1719956097wKn37m.doc b/public/documents/client_files/erp_1719956097wKn37m.doc new file mode 100644 index 0000000..ba4fd0a Binary files /dev/null and b/public/documents/client_files/erp_1719956097wKn37m.doc differ diff --git a/public/documents/client_files/erp_171995640005PYVe.doc b/public/documents/client_files/erp_171995640005PYVe.doc new file mode 100644 index 0000000..16a3596 Binary files /dev/null and b/public/documents/client_files/erp_171995640005PYVe.doc differ diff --git a/public/documents/client_files/erp_1719956402vjlSNu.doc b/public/documents/client_files/erp_1719956402vjlSNu.doc new file mode 100644 index 0000000..9cb3f01 Binary files /dev/null and b/public/documents/client_files/erp_1719956402vjlSNu.doc differ diff --git a/public/documents/client_files/erp_1720008663JE3ixg.doc b/public/documents/client_files/erp_1720008663JE3ixg.doc new file mode 100644 index 0000000..ba4fd0a Binary files /dev/null and b/public/documents/client_files/erp_1720008663JE3ixg.doc differ diff --git a/public/documents/client_files/erp_1720020130Qm0z.pdf b/public/documents/client_files/erp_1720020130Qm0z.pdf new file mode 100644 index 0000000..13ce574 Binary files /dev/null and b/public/documents/client_files/erp_1720020130Qm0z.pdf differ diff --git a/public/documents/mno_files/erp_1720020204nSzY.pdf b/public/documents/mno_files/erp_1720020204nSzY.pdf new file mode 100644 index 0000000..28f6eb2 Binary files /dev/null and b/public/documents/mno_files/erp_1720020204nSzY.pdf differ diff --git a/public/documents/mno_files/erp_1720020233nWMm.pdf b/public/documents/mno_files/erp_1720020233nWMm.pdf new file mode 100644 index 0000000..28f6eb2 Binary files /dev/null and b/public/documents/mno_files/erp_1720020233nWMm.pdf differ diff --git a/public/documents/mno_files/erp_172002058008Zr.xlsx b/public/documents/mno_files/erp_172002058008Zr.xlsx new file mode 100644 index 0000000..7c1e94a Binary files /dev/null and b/public/documents/mno_files/erp_172002058008Zr.xlsx differ diff --git a/public/documents/mno_files/erp_17200205802YFyDx.pdf b/public/documents/mno_files/erp_17200205802YFyDx.pdf new file mode 100644 index 0000000..0f164ba Binary files /dev/null and b/public/documents/mno_files/erp_17200205802YFyDx.pdf differ diff --git a/public/documents/mno_files/erp_1720020580_sliding_rate.xlsx b/public/documents/mno_files/erp_1720020580_sliding_rate.xlsx new file mode 100644 index 0000000..90204a9 Binary files /dev/null and b/public/documents/mno_files/erp_1720020580_sliding_rate.xlsx differ diff --git a/public/documents/mno_files/erp_1720021265xWaB.docx b/public/documents/mno_files/erp_1720021265xWaB.docx new file mode 100644 index 0000000..680ac07 Binary files /dev/null and b/public/documents/mno_files/erp_1720021265xWaB.docx differ diff --git a/public/documents/mno_files/erp_1720021447Xc5C.docx b/public/documents/mno_files/erp_1720021447Xc5C.docx new file mode 100644 index 0000000..e46ccf3 Binary files /dev/null and b/public/documents/mno_files/erp_1720021447Xc5C.docx differ diff --git a/public/documents/mno_files/erp_1720021448_sliding_rate.docx b/public/documents/mno_files/erp_1720021448_sliding_rate.docx new file mode 100644 index 0000000..e46ccf3 Binary files /dev/null and b/public/documents/mno_files/erp_1720021448_sliding_rate.docx differ diff --git a/resources/views/client/edit.blade.php b/resources/views/client/edit.blade.php index 9914eb0..83d36ab 100755 --- a/resources/views/client/edit.blade.php +++ b/resources/views/client/edit.blade.php @@ -39,7 +39,7 @@ {!! $errors->first('name', '

:message

') !!} -
+
{!! Form::select('auth_user_id', $auth_users ,old('auth_user_id'), ['class' => 'form-control ', 'placeholder'=>'Enter Account Manager ' , 'id' => 'auth_user_id']) !!} @@ -61,13 +61,13 @@
-
+
{!! Form::text('email', old('email'), ['class' => 'form-control ', 'placeholder'=>'Enter email' , 'id' => 'email']) !!} {!! $errors->first('email', '

:message

') !!}
-
+
@@ -75,43 +75,43 @@ {!! $errors->first('skype_name', '

:message

') !!}
-
+
{!! Form::text('linkedin_name', old('linkedin_name'), ['class' => 'form-control ', 'placeholder'=>'Enter LinkedIn Name' , 'id' => 'linkedIn']) !!} {!! $errors->first('linkedin_name', '

:message

') !!}
-
+
{!! Form::select('finance_email[]', $finance_emails, $old_finance_emails, ['class' => 'form-control financeEmail', 'id' => 'financeEmail', 'multiple' => 'true']) !!} {!! $errors->first('finance_email', '

:message

') !!}
-
+
{!! Form::select('support_emails[]', $support_emails, $old_support_emails, ['class' => 'form-control supportEmail', 'id' => 'supportEmail', 'multiple' => 'true']) !!} {!! $errors->first('support_emails', '

:message

') !!}
- -
+ +
{!! Form::select('support_phones[]', $support_phones, $old_support_phones, ['class' => 'form-control supportPhones', 'id' => 'supportPhones', 'multiple' => 'true']) !!} {!! $errors->first('support_phones', '

:message

') !!}
-
+
{!! Form::select('country', $countries, old('country'), ['class' => 'form-control ', 'placeholder'=>'Enter Country ' , 'id' => 'country']) !!} {!! $errors->first('country', '

:message

') !!}
-
+
{!! Form::select('currency', $currency ,old('currency'), ['class' => 'form-control ' , 'id' => 'currency']) !!} @@ -119,8 +119,8 @@
-
-
+
+
{!! Form::select('services[]', $service_type, $current_services, ['class' => 'form-control typeServices' , 'id' => 'services', 'multiple'=> 'true']) !!} @@ -135,7 +135,7 @@
-
+
{!! Form::select('industry', $industries, old('industry'), ['class' => 'form-control', 'placeholder'=>'Enter Industry Type' , 'id' => 'industryType', 'required' => 'true']) !!} {!! $errors->first('industry', '

:message

') !!} @@ -155,42 +155,42 @@ {!! $errors->first('contract_validity', '

:message

') !!}
-
+
{!! Form::select('contract_auto_renew', ['YES' => 'YES','NO' => 'NO'], old('contract_auto_renew'), ['class' => 'form-control ' , 'id' => 'contractAutoRenew' ]) !!} {!! $errors->first('contract_auto_renew', '

:message

') !!}
-
+
{!! Form::select('connections[]', $connections_arr, json_decode($client->connections, true), ['class' => 'form-control ' , 'id' => 'connections', 'multiple' => 'true' ]) !!} {!! $errors->first('connections', '

:message

') !!}
-
+
{!! Form::select('message_types[]', $message_types_arr, json_decode($client->message_types, true), ['class' => 'form-control ' , 'id' => 'connections', 'multiple' => 'true' ]) !!} {!! $errors->first('connections', '

:message

') !!}
-
+
{!! Form::text('smpp_username', old('smpp_username'), ['class' => 'form-control' , 'id' => 'smppUsername', 'placeholder' => 'SMPP Username']) !!} {!! $errors->first('smpp_username', '

:message

') !!}
-
+
{!! Form::select('support_skype[]', $support_skype_arr, $old_support_skype_arr, ['class' => 'form-control supportSkype', 'id' => 'supportSkype', 'multiple' => 'true']) !!} {!! $errors->first('support_skype', '

:message

') !!}
-
+
{!! Form::select('rate_emails[]', $rate_emails, $old_rate_emails, ['class' => 'form-control rateEmail', 'id' => 'rateEmail', 'multiple' => 'true']) !!} @@ -200,44 +200,44 @@
-
+
{!! Form::select('payment_mode', $payment_type, old('pay_mode'), ['class' => 'form-control' , 'id' => 'payment_mode']) !!} {!! $errors->first('payment_mode', '

:message

') !!}
- -
+
{!! Form::select('how_we_got_client', $how_we_got_clients_arr, old('how_we_got_client'), ['class' => 'form-control' , 'id' => 'howWeGotClient' ]) !!} {!! $errors->first('how_we_got_client', '

:message

') !!}
-
+
{!! Form::text('how_we_got_client_other', null, ['class' => 'form-control' , 'id' => 'howWeGotClientOther', 'placeholder' => 'Specify how we got the client']) !!} {!! $errors->first('how_we_got_client_other', '

:message

') !!}
-
-
+
+
- {!! Form::textarea('notes', old('notes'), ['class' => 'form-control ', 'placeholder'=>'Enter additional information here', 'rows' => '5', 'id' => 'clientNotes']) !!} + {!! Form::textarea('notes', old('notes'), ['class' => 'form-control ', 'placeholder'=>'Enter additional information here', 'rows' => '3', 'id' => 'clientNotes']) !!} {!! $errors->first('notes', '

:message

') !!}
-
+
{!! Form::text('document_one_name', 'Contract', ['class' => 'form-control' , 'id' => 'documentOneName', 'readonly' => 'true']) !!} @@ -252,12 +252,17 @@ {!! Form::file('document_one', null, ['class' => 'form-control' , 'id' => 'documentOne', 'placeholder' => 'Select file to upload']) !!} {!! $errors->first('document_one', '

:message

') !!}
-
+
+
+
+ @if($files['contract'] == 'YES') +

Uploading a new Contract will overwrite the existing file

+ @endif
-
+
{!! Form::text('document_two_name', 'Non Disclosure', ['class' => 'form-control' , 'id' => 'documentTwoName', 'readonly' => 'true']) !!} @@ -274,10 +279,15 @@
+
+ @if($files['non_disclosure'] == 'YES') +

Uploading a new Non Disclosure will overwrite the existing file

+ @endif +
-
+
{!! Form::text('document_three_name', 'Technical Document', ['class' => 'form-control' , 'id' => 'documentThreeName', 'readonly' => 'true']) !!} @@ -294,10 +304,15 @@
+
+ @if($files['technical_doc'] == 'YES') +

Uploading a Technical Document file will overwrite the existing file

+ @endif +
-
+
{!! Form::text('other_document_name', null, ['class' => 'form-control' , 'id' => 'otherdocumentName', 'placeholder' => 'Enter name of document']) !!} @@ -314,31 +329,35 @@
-
+
+ + - -

Live: - status == 'Live') ? "checked" : ""; ?> /> + status == 'Live') ? "checked" : ""; ?> /> +      + Prospective: + status == 'Prospective') ? "checked" : ""; ?> /> +      + Inactive + status == 'Inactive') ? "checked" : ""; ?> />

- Prospective: - status == 'Prospective') ? "checked" : ""; ?> /> +

- Inactive - status == 'Inactive') ? "checked" : ""; ?> /> +

-
+
@if($current_pending_stage !== 'COMPLETED')
-
+
@@ -361,7 +380,7 @@
{{-- end of x_panel --}}
-
+
@endsection @@ -372,8 +391,8 @@ $('select').select2(); // var PRESELECTED_FRUITS = ['A2P','USSD']; - // $('.typeServices').select2({}).select2('val', PRESELECTED_FRUITS); - + // $('.typeServices').select2({}).select2('val', PRESELECTED_FRUITS); + $('.senderIds').select2({ tags : true });