diff --git a/app/Config/Routes.php b/app/Config/Routes.php index f5119b25..92d08b1c 100644 --- a/app/Config/Routes.php +++ b/app/Config/Routes.php @@ -63,6 +63,11 @@ $routes->group("/client", ["filter" => "authMVC"], function ($routes) { $routes->get("list/(:any)", "ClientController::editClientOnboarding/$1"); + $routes->group("notification", ["filter" => "authMVC"], function ($routes) { + $routes->post("create", "NotificationController::createNotification"); + $routes->post("update_enable", "NotificationController::update_enable"); + $routes->get("getMailTemplateData/(:any)/(:any)", "NotificationController::getMailTemplateData/$1/$2"); + }); $routes->group("general", ["filter" => "authMVC"], function ($routes) { $routes->post("create", "ClientController::createClientGeneralInfo"); @@ -245,6 +250,8 @@ $routes->post("/editEmployeeProfile", "EmployeeRestController::editEmployeeProfi $routes->post("/calculatePremium", "EmployeeRestController::calculatePremium"); +$routes->post("employeeUpload", "EmployeeRestController::employeeUpload"); + $routes->group("employeeRest", ["filter" => "authJWT"], function ($routes) { diff --git a/app/Controllers/ClientController.php b/app/Controllers/ClientController.php index 773eb420..da023bbd 100644 --- a/app/Controllers/ClientController.php +++ b/app/Controllers/ClientController.php @@ -30,6 +30,7 @@ use App\Models\PolicyPremium1Model; use App\Models\PolicyPremium2Model; use App\Models\EmployeeModel; use App\Models\EmployeePolicyModel; +use App\Models\NotificationModel; @@ -60,6 +61,7 @@ class ClientController extends AdminController protected $clientDepositModel; protected $employeeModel; protected $employeePolicyModel; + protected $notificationModel; public function __construct() { @@ -87,6 +89,7 @@ class ClientController extends AdminController $this->policyPremium2Model = new PolicyPremium2Model(); $this->employeeModel = new EmployeeModel(); $this->employeePolicyModel = new EmployeePolicyModel(); + $this->notificationModel = new NotificationModel(); @@ -276,6 +279,9 @@ class ClientController extends AdminController $editData['client_policy'] = $clientPoliceData; + $editData['notification'] =$this->notificationModel->select('template_name,enabled')->where('client_id',$id)->findAll(); + $editData['placeHolders'] = ['user_name','nhance_logo','tpa_id','ecard_download_link', 'client_logo', 'policy_no', 'ecard_link', 'app_link', 'member_summary']; + // echo "
";
// dd($editData); die;
diff --git a/app/Controllers/EmpDataServiceController.php b/app/Controllers/EmpDataServiceController.php
index e2e50f9f..a061f32d 100644
--- a/app/Controllers/EmpDataServiceController.php
+++ b/app/Controllers/EmpDataServiceController.php
@@ -20,6 +20,7 @@ use App\Models\BatchListModel;
use App\Models\BatchFileModel;
use App\Models\EmpEndorsementModel;
use App\Models\ClientDepositModel;
+use App\Models\NotificationModel;
use App\Controllers\Jobs;
use PhpOffice\PhpSpreadsheet\Spreadsheet;
@@ -42,6 +43,7 @@ class EmpDataServiceController extends BaseController
protected $batchFileModel;
protected $empEndorsementModel;
protected $clientDepositModel;
+ protected $notificationModel;
public function __construct()
{
@@ -57,9 +59,10 @@ class EmpDataServiceController extends BaseController
$this->batchFileModel = new BatchFileModel();
$this->empEndorsementModel = new EmpEndorsementModel();
$this->clientDepositModel = new ClientDepositModel();
+ $this->notificationModel = new NotificationModel();
}
-
+
/**
* The below function are Inserts batch files and corresponding batch list entries into the database.
*
@@ -481,10 +484,13 @@ class EmpDataServiceController extends BaseController
public function importExcelDataForInception($import_data)
{
+
$client_id = $import_data['client_id'];
$client_policy_id = $import_data['client_policy_id'];
$file = $import_data['file'];
+ $get_client_policy_type = $this->clientPolicyModel->where('id', $client_policy_id)->first();
+
$data = $this->readExcelToArray($file);
if (!$data) {
@@ -647,8 +653,11 @@ class EmpDataServiceController extends BaseController
$this->cashDepositCalculationForInception($depositeData);
- $this->sendMailForDownloadingECard($empty_emp_tpa_uh_ids);
+ if($get_client_policy_type['policy_type_id'] != 1){
+ $this->sendMailForDownloadingECard($empty_emp_tpa_uh_ids);
+
+ }
}
@@ -1595,10 +1604,12 @@ class EmpDataServiceController extends BaseController
public function sendMailForDownloadingECard(array $ids)
{
try {
+ $count = 0;
+
foreach ($ids as $key => $id) {
$get_emp_email_and_other_details = $this->employeePolicyModel
- ->select('employee_polices.client_policy_id, employees.emp_code, employees.email_corporate, employees.name, employee_polices.rand_string, employee_polices.tpa_id')
+ ->select('employee_polices.client_policy_id, employees.emp_code, employees.email_corporate,employees.client_id as client_id, employees.name, employee_polices.rand_string, employee_polices.tpa_id')
->join('employees', 'employees.id = employee_polices.employee_id')
->where('employees.emp_status', 'active')
->where('employees.is_active', '1')
@@ -1606,46 +1617,52 @@ class EmpDataServiceController extends BaseController
->where('employee_polices.is_active', '1')
->where('employee_polices.id', $id)->first();
- if ($get_emp_email_and_other_details != null && $get_emp_email_and_other_details != "") {
-
- $name = $get_emp_email_and_other_details['name'];
- $email = $get_emp_email_and_other_details['email_corporate'];
+ // echo "";
+ // print_r($notification);
+ // die;
+ $client_data = $this->clientModel->where('id',$get_emp_email_and_other_details['client_id'])->first();
+ $notification = $this->notificationModel->where('client_id',$get_emp_email_and_other_details['client_id'])->where('template_name','member_ecard_mail')->first();
+ if ($get_emp_email_and_other_details != null && $get_emp_email_and_other_details != "" && $notification['enabled'] == 1) {
$rand_string = $get_emp_email_and_other_details['rand_string'];
$tpa_id = $get_emp_email_and_other_details['tpa_id'];
+
+
+ $mail_content = $notification['mail_content'];
+
+ $mail = $get_emp_email_and_other_details['email_corporate'];
+
+ $subject = $notification['subject'];
+
$link = generate_download_link($rand_string);
- $subject = 'Download E-Card';
-
- $html = '
- Dear ' .$name .',
- Your Policy( ' .$tpa_id .' ) has been successfully created. Please click the link below to download the insurance card:
-
- Thank you,
- ';
-
- if ($email != null && $email != "") {
-
- $mail_data = [
- 'mail' => $email,
- 'subject' => $subject,
- 'message' => $html
- ];
- // dd($mail_data);
-
- $result = Mailhelper::send_email($mail_data);
- $decoded_result = (array) json_decode($result);
+ $app_link = $_ENV['App_Url'];
+ $name = $get_emp_email_and_other_details['name'];
- $data = [
- 'status' => $decoded_result['status'],
- 'message'=>$decoded_result['message'] ?? 'Internal Server Error',
- 'email' => $decoded_result['data']
- ];
-
- // dd($data);
- $this->myLogger->logme('error', 'status : {status}, message : {message}, email : {email}', $data);
- }
+ $mail_content = $notification['mail_content'];
+
+ $nhance_logo = $_ENV['NHANCE_LOGO'];
+
+
+ $mail_content = str_replace("[[nhance_logo]]", "
", $mail_content);
+
+ $mail_content = str_replace("[[user_name]]", $name, $mail_content);
+ $mail_content = str_replace("[[app_link]]", "Review Details", $mail_content);
+ $mail_content = str_replace("[[tpa_id]]", $tpa_id, $mail_content);
+ $mail_content = str_replace("[[ecard_download_link]]", "Download Insurance Card", $mail_content);
+
+ $message = $mail_content;
+ $count++;
+
+ $wholeData[] = ['mail' => $mail, 'subject' => $subject,'message'=> $message,'cc'=> $client_data['common_mails']];
+
+ if($count == 20 || $count == count($ids)-1){
+ $job_details = new Jobs();
+ $r = Jobs::addJob(['job_name' => 'bulk_mail','payload' => $wholeData]);
+ $wholeData = [];
+ $count = 0;
+ }
}
}
return true; // Email(s) sent successfully
diff --git a/app/Controllers/EmployeeRestController.php b/app/Controllers/EmployeeRestController.php
index f562ef09..f1486087 100644
--- a/app/Controllers/EmployeeRestController.php
+++ b/app/Controllers/EmployeeRestController.php
@@ -20,6 +20,7 @@ use App\Models\ClientPolicyModel;
use App\Models\PolicyPremium1Model;
use App\Models\PolicyPremium2Model;
use App\Models\PolicyTypeModel;
+use App\Models\NotificationModel;
use App\Controllers\Jobs ;
use App\Controllers\JobWorker ;
@@ -49,7 +50,8 @@ class EmployeeRestController extends AdminController
protected $policyPremium1Model;
protected $policyPremium2Model;
protected $policyTypeModel;
-
+ protected $notificationModel;
+
public function __construct()
{
// helper('utility');
@@ -65,9 +67,10 @@ class EmployeeRestController extends AdminController
$this->policyPremium1Model = new PolicyPremium1Model();
$this->policyPremium2Model = new PolicyPremium2Model();
$this->policyTypeModel = new PolicyTypeModel();
+ $this->notificationModel = new NotificationModel();
}
-
+
public function getEmployeeProfile()
{
try {
@@ -594,14 +597,26 @@ class EmployeeRestController extends AdminController
// Upload the Employee Detail in DB by Sheet Data
public function employeeUpload()
{
+
+
+
+
try {
+ // echo $this->request->getPost('client_id');
+ // die;
$file = $this->request->getFile('file');
$client_id = $this->request->getPost('client_id');
$policy_id = $this->request->getPost('policy_id');
+ $client_data = $this->clientModel->where('id', $client_id)->first();
+
+ $notification = $this->notificationModel->where('client_id',$client_id)->where('template_name','member_welcome_mail')->first();
+
$jwt = $this->request->getHeader('Authorization');
$jwtParts = explode(' ', $jwt);
+ // print_r($jwtParts);die;
$token = $jwtParts[2];
+ // return "hello";
$decodedPayload = json_decode(base64_decode(explode('.', $token)[1]), true);
@@ -611,7 +626,6 @@ class EmployeeRestController extends AdminController
$client_policy = $this->clientPolicyModel->where('id', $policy_id)->where('client_id', $client_id)->first();
-
if ($client_policy) {
$policy = $this->policesModel->where('id', $client_policy['policy_id'])->first();
$policy_permium_1 = $this->policyPremium1Model->where(['client_id' => $client_id , 'client_policy_id' => $policy_id,'is_active' =>1])-> first();
@@ -787,105 +801,120 @@ class EmployeeRestController extends AdminController
$count = 0;
for ($a=0; $a employeeModel->checkExistingEmployee($dataToInsert[$a]);
- $emp_id =0;
-
- $data_after_gpa_or_gmc =[];
- if ($policy['policy_type_id'] == 1) {
- if (strtolower($dataToInsert[$a]['relationship']) == 'self') {
- $data_after_gpa_or_gmc = $dataToInsert[$a];
- }
- }else{
- $data_after_gpa_or_gmc = $dataToInsert[$a];
- }
- date_default_timezone_set('Asia/Kolkata');
- $current_timestamp = time();
- $formatted_date_time = date('Y-m-d H:i:s', $current_timestamp);
-
- if ($employee) {
-
-
- $emp_id =$employee['id'];
- $id =$emp_id;
- $data_after_gpa_or_gmc['id'] = $id;
- $data_after_gpa_or_gmc['updated_by'] = $employee_id;
- $data_after_gpa_or_gmc['updated_at'] = $formatted_date_time;
- $result = $this->employeeModel->save($data_after_gpa_or_gmc);
- if ($result) {
- $log_message = 'Update Employee - '.$employee['name'].'('.$employee['emp_code'].') with PK '.$employee['id'];
- $this->myLogger->logme('error',('Update - ' . $employee['id'].' - '. $employee['emp_code'] .' - '.$employee['name']));
- }
- }else{
- if ($dataToInsert[$a]['emp_code'] != 0) {
- $result =false;
- if (count($data_after_gpa_or_gmc) != 0) {
- $data_after_gpa_or_gmc['created_by'] = $employee_id;
- $result = $this->employeeModel->insert($data_after_gpa_or_gmc);
- }
- $emp_id =$result;
- if ($result) {
- $emp = $this->employeeModel->where('id', $result)->get()->getResult();
-
- $policy_name = $this->employeePolicyModel->where('employee_id', $result)->get()->getResult();;
-
-
- $log_message = 'Insert Employee- '.$dataToInsert[$a]['name'] .'('.$dataToInsert[$a]['emp_code'] .') with PK ';
- $this->myLogger->logme('error',('Insert - ' . $dataToInsert[$a]['emp_code'] .' - '. $dataToInsert[$a]['name']));
- }
- }
- }
- $emp_policy_data =[
- 'employee_id'=>$emp_id,
- 'client_policy_id'=>$policy_id,
- 'status'=> 'draft',
- 'basic_cover_si'=>isset($basic_cover_si[$a]) ? $basic_cover_si[$a] : null
- ];
-
- $employee_policy = $this->employeePolicyModel->checkExistingEmpPolicy(['employee_id' => $emp_id,'client_policy_id' => $policy_id]);
- if ($employee_policy) {
- foreach ($employee_policy as $existing_policy) {
- $emp_policy_data['id']= $existing_policy['id'];
- $emp_policy_data['updated_at'] = $formatted_date_time;
- $this->employeePolicyModel->save($emp_policy_data);
- }
- } else {
- $emp_policy = $this->employeePolicyModel->insert($emp_policy_data);
- }
-
-
- //trigger
- $mail = $dataToInsert[$a]['email_corporate'];
- $subject = 'Welcome, Employee Benefit Program Enrolment';
- // $message = 'Dear ' . $dataToInsert[$a]['name'] . ",
We are glad to welcome you to the employee benefit program ," .$policy_name['name'] ."offered by your employer,
Click on the link below to review your personal and family details:
Review Details" ;
- $data['employee_name']=$dataToInsert[$a]['name'];
- $data['policy_name']=$policy['name'];
- $data['App_Url'] = $_ENV['App_Url'];
+ $employee = $this->employeeModel->checkExistingEmployee($dataToInsert[$a]);
+ $emp_id =0;
- $message = view('mail_welcome', $data);
+ $data_after_gpa_or_gmc =[];
+ if ($policy['policy_type_id'] == 1) {
+ if (strtolower($dataToInsert[$a]['relationship']) == 'self') {
+ $data_after_gpa_or_gmc = $dataToInsert[$a];
+ }
+ }else{
+ $data_after_gpa_or_gmc = $dataToInsert[$a];
+ }
+ date_default_timezone_set('Asia/Kolkata');
+ $current_timestamp = time();
+ $formatted_date_time = date('Y-m-d H:i:s', $current_timestamp);
- if ($dataToInsert[$a]['relationship'] == 'Self' && $mail != null || $mail != '') {
- $count++;
- $wholeData[] = ['mail' => $mail, 'subject' => $subject,'message'=> $message];
+ if ($employee) {
+
+
+ $emp_id =$employee['id'];
+ $id =$emp_id;
+ $data_after_gpa_or_gmc['id'] = $id;
+ $data_after_gpa_or_gmc['updated_by'] = $employee_id;
+ $data_after_gpa_or_gmc['updated_at'] = $formatted_date_time;
+ $result = $this->employeeModel->save($data_after_gpa_or_gmc);
+ if ($result) {
+ $log_message = 'Update Employee - '.$employee['name'].'('.$employee['emp_code'].') with PK '.$employee['id'];
+ $this->myLogger->logme('error',('Update - ' . $employee['id'].' - '. $employee['emp_code'] .' - '.$employee['name']));
+ }
+ }else{
+ if ($dataToInsert[$a]['emp_code'] != 0) {
+ $result =false;
+ if (count($data_after_gpa_or_gmc) != 0) {
+ $data_after_gpa_or_gmc['created_by'] = $employee_id;
+ $result = $this->employeeModel->insert($data_after_gpa_or_gmc);
+ }
+ $emp_id =$result;
+ if ($result) {
+ $emp = $this->employeeModel->where('id', $result)->get()->getResult();
+
+ $policy_name = $this->employeePolicyModel->where('employee_id', $result)->get()->getResult();;
+
+
+ $log_message = 'Insert Employee- '.$dataToInsert[$a]['name'] .'('.$dataToInsert[$a]['emp_code'] .') with PK ';
+ $this->myLogger->logme('error',('Insert - ' . $dataToInsert[$a]['emp_code'] .' - '. $dataToInsert[$a]['name']));
+ }
+ }
+ }
+ $emp_policy_data =[
+ 'employee_id'=>$emp_id,
+ 'client_policy_id'=>$policy_id,
+ 'status'=> 'draft',
+ 'basic_cover_si'=>isset($basic_cover_si[$a]) ? $basic_cover_si[$a] : null
+ ];
+
+ $employee_policy = $this->employeePolicyModel->checkExistingEmpPolicy(['employee_id' => $emp_id,'client_policy_id' => $policy_id]);
+ if ($employee_policy) {
+ foreach ($employee_policy as $existing_policy) {
+ $emp_policy_data['id']= $existing_policy['id'];
+ $emp_policy_data['updated_at'] = $formatted_date_time;
+ $this->employeePolicyModel->save($emp_policy_data);
+ }
+ } else {
+ $emp_policy = $this->employeePolicyModel->insert($emp_policy_data);
}
- // print_r($wholeData);
- // if ($dataToInsert[$a]['email_corporate'] != null || $dataToInsert[$a]['email_corporate'] != '' && $dataToInsert[$a]['relationship'] == 'Self') {
- if($count == 20 || $a == count($dataToInsert)-1){
- $job_details = new Jobs();
- $r = Jobs::addJob(['job_name' => 'bulk_mail','payload' => $wholeData]);
- // $wholeData[]= $r;
- // Mailhelper::bulk_mail($wholeData);
- $wholeData = [];
- $count = 0;
+ if ($notification['enabled'] == 1) {
+ //trigger
+ if ($dataToInsert[$a]['relationship'] == 'Self') {
+ $mail = $dataToInsert[$a]['email_corporate'];
+
+
+ $subject = $notification['subject'];
+ // $subject = 'Welcome, Employee Benefit Program Enrolment';
+ // $message = 'Dear ' . $dataToInsert[$a]['name'] . ",
We are glad to welcome you to the employee benefit program ," .$policy_name['name'] ."offered by your employer,
Click on the link below to review your personal and family details:
Review Details" ;
+ // $data['employee_name']=$dataToInsert[$a]['name'];
+ $data['policy_name']=$policy['name'];
+ // $data['App_Url'] = $_ENV['App_Url'];
+
+ $app_link = $_ENV['App_Url'];
+ $employee_name =$dataToInsert[$a]['name'];
+
+
+ $mail_content = $notification['mail_content'];
+
+ $nhance_logo = $_ENV['NHANCE_LOGO'];
+
+
+ $mail_content = str_replace("[[nhance_logo]]", "
", $mail_content);
+ $mail_content = str_replace("[[user_name]]", $employee_name, $mail_content);
+ $mail_content = str_replace("[[app_link]]", "Review Details", $mail_content);
+
+ $message = $mail_content;
+ if ($dataToInsert[$a]['relationship'] == 'Self' && $mail != null || $mail != '') {
+ $count++;
+ $wholeData[] = ['mail' => $mail, 'subject' => $subject,'message'=> $message,'cc'=> $client_data['common_mails']];
+ }
+ }
+
+ if($count == 20 || $a == count($dataToInsert)-1){
+ $job_details = new Jobs();
+ $r = Jobs::addJob(['job_name' => 'bulk_mail','payload' => $wholeData]);
+ // $wholeData[]= $r;
+
+ // Mailhelper::bulk_mail($wholeData);
+ $wholeData = [];
+ $count = 0;
+ }
+
+
+ // if ($dataToInsert[$a]['email_corporate'] != null || $dataToInsert[$a]['email_corporate'] != '' && $dataToInsert[$a]['relationship'] == 'Self') {
+
}
- // print_r($r);//die();
- // $jobWorker = new JobWorker();
- //JobWorker::processJob($r);
- // $return_log = MailHelper::send_email($mail,$subject, $message);
- // $return_log = json_decode($return_log);
- // $this->myLogger->logme('info', "Email Status : {mail_status}, Sender Email:{email}", ['mail_status' => $return_log->status, 'email'=> $return_log->data]);
}
return $this->respond(['status' => 'success', 'code' => 200, 'message' => "Success" ], 200);
}else{
diff --git a/app/Controllers/JobWorker.php b/app/Controllers/JobWorker.php
index 00b060ae..89bfce4e 100644
--- a/app/Controllers/JobWorker.php
+++ b/app/Controllers/JobWorker.php
@@ -66,6 +66,7 @@ class JobWorker extends AdminController
*/
public static function processJob(array $jobdata = [])
{
+
// print_r($jobdata);
// echo 'listen';
// die();
diff --git a/app/Controllers/NotificationController.php b/app/Controllers/NotificationController.php
new file mode 100644
index 00000000..09938242
--- /dev/null
+++ b/app/Controllers/NotificationController.php
@@ -0,0 +1,129 @@
+myLogger = \Config\Services::mylogger();
+
+ $this->notificationModel = new NotificationModel();
+ }
+
+ public function index()
+ {
+
+ }
+
+ public function camelCaseToSnakeCase($input) {
+ $input = preg_replace('/(?request->getPost());
+
+ $data['template_name'] = $this->camelCaseToSnakeCase($this->request->getPost('template_name'));
+ $data['subject'] = $this->request->getPost('subject');
+ $data['mail_content'] = $this->request->getPost('editorContent');
+ $data['client_id'] = $this->request->getPost('client_id');
+ $notificationModel = new NotificationModel();
+
+ $find = $notificationModel->where('client_id',$data['client_id'])->where('template_name',$data['template_name'])->first();
+ if ($find) {
+ // print_r($find['id']);
+ $id = $find['id'];
+ $notificationModel->update($id,$data);
+ $complete = "Update";
+ }else{
+ $notificationModel->insert($data);
+ $complete = "Inserted";
+ }
+ return json_encode($complete);
+
+ }
+
+
+ public function update_enable(){
+
+
+ // print_r();die;
+
+ $checkboxNames = [
+ 'member_welcome_mail_btn',
+ 'member_remider_mail_btn',
+ 'member_ecard_mail_btn',
+ 'member_review_and_summary_mail_btn',
+ 'account_maneger_summary_mail_btn',
+ 'client_hr_summary_mail_btn'
+ ];
+
+ $data = [];
+
+ foreach ($checkboxNames as $checkboxName) {
+ $data[str_replace('_btn', '', $checkboxName)] = ($this->request->getPost($checkboxName) === "true") ? 1 : 0;
+ }
+
+ $notificationModel = new NotificationModel();
+ $clientModel = new ClientModel();
+
+ $id =$this->request->getPost('client_id');
+
+ $clientData['common_mails'] = $this->request->getPost('recipient_mail_ids');
+ $clientModel->update($id,$clientData);
+
+ foreach ($data as $key => $value) {
+
+ $find = $notificationModel->where('client_id',$this->request->getPost('client_id'))->where('template_name', $key)->first();
+
+ if ($find) {
+ $id = $find['id'];
+ $changeData['enabled']= $value;
+ $update = $notificationModel->update($id, $changeData);
+ }
+
+ }
+
+ return json_encode("true");
+ }
+
+ public function getMailTemplateData($template_name,$client_id){
+
+ $notificationModel = new NotificationModel();
+
+ $value = $notificationModel->where('client_id',$client_id)->where('template_name',$template_name)->first();
+
+ // print_r($value);die;
+ return json_encode($value);
+ }
+
+
+
+
+
+}
\ No newline at end of file
diff --git a/app/Helpers/MailHelper.php b/app/Helpers/MailHelper.php
index 212d78d9..8b053a7b 100644
--- a/app/Helpers/MailHelper.php
+++ b/app/Helpers/MailHelper.php
@@ -16,9 +16,11 @@ class MailHelper
{
public static function send_email($params)
{
+
$emaill = $params['mail'];
$subject = $params['subject'];
$message = $params['message'];
+ $cc = $params['cc'];
try {
$email = \Config\Services::email();
@@ -27,7 +29,14 @@ class MailHelper
$email->setTo($emaill);
+ $ccList = explode(',', $cc);
+
+ // if (empty($cc)) {
+ $email->setCC($cc);
+ // }
+
$email->setSubject($subject);
+
$email->setMessage($message);
if ($email->send()) {
@@ -44,6 +53,7 @@ class MailHelper
public static function bulk_mail(array $mails = [])
{
+ // print_r();die;
$model = new JobModel();
$start = microtime(true);
$runtime= 0;
diff --git a/app/Models/ClientModel.php b/app/Models/ClientModel.php
index af579498..e71c8348 100644
--- a/app/Models/ClientModel.php
+++ b/app/Models/ClientModel.php
@@ -26,6 +26,7 @@ class ClientModel extends Model
"created_by",
"updated_by",
"is_active",
+ "common_mails"
];
diff --git a/app/Models/NotificationModel.php b/app/Models/NotificationModel.php
new file mode 100644
index 00000000..d78d2a69
--- /dev/null
+++ b/app/Models/NotificationModel.php
@@ -0,0 +1,12 @@
+Branch & Contacts
+
+
+
+ Notifications
+
+
@@ -84,6 +90,8 @@ body {
+
+
@@ -187,6 +195,24 @@ body {
}
+
+ function client_notification() {
+ var check_client_id = $('#general_PrimaryKey');
+
+
+ if(check_client_id[0].value == '' || check_client_id[0].value == null || check_client_id[0].value == 0){
+ $('#btnBranchAdd').hide();
+ toastr.warning('Please Add the Client!', 'warning',{timeOut: 2000});
+ }else{
+ if ($('#btnBranchBack')[0].style.display == 'none') {
+ $('#btnBranchAdd').show();
+ }
+ }
+
+ }
+
+
+
document.getElementById("kyc_tab").addEventListener("click", function(event) {
event.preventDefault();
client_kyc_docs();
@@ -209,6 +235,12 @@ body {
event.preventDefault();
client_branch_contact();
});
+
+ // document.getElementById("notification_tab").addEventListener("click", function(event) {
+ // event.preventDefault();
+ // client_notification();
+ // });
+
diff --git a/app/Views/layout/footer.php b/app/Views/layout/footer.php
index e3ed2455..7e3f8005 100644
--- a/app/Views/layout/footer.php
+++ b/app/Views/layout/footer.php
@@ -496,6 +496,10 @@
+
+
+
+
diff --git a/app/Views/layout/header.php b/app/Views/layout/header.php
index e0c2e9dc..6c9aff95 100644
--- a/app/Views/layout/header.php
+++ b/app/Views/layout/header.php
@@ -43,6 +43,10 @@
/assets/css/jodit.css" rel="stylesheet" type="text/css" />
+
+ /assets/libs/quill/quill.snow.css" rel="stylesheet" type="text/css" />
+
+
@@ -241,6 +245,7 @@
});
+
diff --git a/app/Views/notification.php b/app/Views/notification.php
new file mode 100644
index 00000000..0c1913a0
--- /dev/null
+++ b/app/Views/notification.php
@@ -0,0 +1,1264 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/public/assets/images/image-solid.svg b/public/assets/images/image-solid.svg
new file mode 100644
index 00000000..ed607290
--- /dev/null
+++ b/public/assets/images/image-solid.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/public/logo.jpg b/public/logo.jpg
new file mode 100644
index 00000000..a281e4b7
--- /dev/null
+++ b/public/logo.jpg
@@ -0,0 +1,5 @@
+