File: /var/www/html/fieldsblaze-heroku/app/Http/Controllers/ContactController.php
<?php
namespace App\Http\Controllers;
use App\Models\Contact;
use App\Models\Customer;
use App\Models\Contacthr;
use App\Models\Countries;
use Illuminate\Http\Request;
use App\Library\UserLib;
use DB;
use DBD;
use pgsqlSalesforce;
class ContactController extends Controller
{
protected $userLib;
public function __construct(UserLib $userLib)
{
$this->userLib = $userLib;
}
//testContact
public function testContact(){
// $Contact=DB::table('contact')->select()->get();
// echo json_encode($Contact);
$payLoad = '{"lastname":"Manoj","asssign_to__c":null,"languages__c":"English","crmid__c":null,"name":"Rose Gonzalez","alternate_email__c":null,"heroku_id__c":null,"device_name__c":null,"isdeleted":false,"systemmodstamp":"2023-01-31 06:36:53","status__c":null,"is_primary__c":null,"createddate":"2023-04-06 06:36:53","firstname":"Rose","email":"rose@edge.com","wedding_anniversary__c":null,"level__c":"Primary","sfid":"0032w00000yDBOmAAO","id":1,"_hc_lastop":null,"_hc_err":null}';
// $payLoadArray = json_decode($payLoad,true);
// DB::connection('pgsqlSalesforce')->table('contact')->insert($payLoadArray);
// $params = [
// '{"Manoj4"},{"Gupta4"}'
// ];
// $contact = new Contacthr;
// $contact->firstname = "Amar";
// $contact->lastname = "Lucknow";
// $contact->save();
//DB::connection('pgsql')->insert("insert into salesforce.contact (firstname, lastname) values ('Rohit', 'Sharma')");
DB::connection('pgsql')->update("update salesforce.contact set firstname = 'RS 101', lastname = 'Sharma' where id = '62'");
// DB::connection('DBD')->insert('insert into tbl_contact (FirstName, LastName) values (?, ?)', ['Ram', 'Dayle']);
// $contact = new Contact;
// $contact->FirstName = "Amar ".time();
// $contact->LastName = "Lucknow ".time();
// $contact->save();
// $contact = new Contacthr;
// $contact->firstname = "Amar ".time();
// $contact->lastname = "Lucknow ".time();
// $contact->save();
// $params = [
// "Manoj4","Gupta4"
// ];
// DB::connection('pgsqlSalesforce')->insert("insert into salesforce.contact (firstname, lastname) values (?, ?)", $params);
//DB::connection('pgsqlSalesforce')->table('contact')->insert((info)'{"lastname":"Manoj","asssign_to__c":null,"languages__c":"English"}');
//DB::connection('pgsqlSalesforce')->insert("insert into salesforce.contact (firstname, lastname) values ('Manoj2', 'Gupta')");
// $Contact=DB::connection('pgsqlSalesforce')->table('contact')->select()->get();
// echo json_encode($Contact);
// {"lastname":"Gonzalez","asssign_to__c":null,"languages__c":"English","crmid__c":null,"name":"Rose Gonzalez","alternate_email__c":null,"heroku_id__c":null,"device_name__c":null,"isdeleted":false,"systemmodstamp":"2023-01-31 06:36:53","status__c":null,"is_primary__c":null,"createddate":"2023-01-31 06:36:53","firstname":"Rose","email":"rose@edge.com","wedding_anniversary__c":null,"level__c":"Primary","sfid":"0032w00000yDBOmAAO","id":1,"_hc_lastop":null,"_hc_err":null}
}
#All Contacts
public function allContact(){
if (empty(session('UserId'))) {
return redirect('/admin/logout');
}
$Contact = Contact::select('tbl_contact.*', 'tbl_customer.CustomerName as CustomerName', 'tbl_customer.CustomerCode as CustomerCode', 'tbl_customer.CustomerId as CustomerId', 'tbl_countries.country_name as Country', 'tbl_admin.FirstName as AdminUpdated_by', 'tbl_admin.FirstName as AdminCreated_by', 'tbl_user.FirstName as Updated_by', 'tbl_user.FirstName as Created_by')
->leftJoin('tbl_admin', 'tbl_contact.Updated_by', '=', 'tbl_admin.UserId')
->leftJoin('tbl_user', 'tbl_contact.Updated_by', '=', 'tbl_user.UserId')
->leftJoin('tbl_customer', 'tbl_contact.CustomerId', '=', 'tbl_customer.CustomerId')
->leftJoin('tbl_countries', 'tbl_contact.Country', '=', 'tbl_countries.id')
->where('tbl_contact.IsDeleted', '=', '0')
->orderBy('tbl_contact.id', 'desc')
->get();
$ActiveContact = Contact::select('tbl_contact.*', 'tbl_customer.CustomerName as CustomerName', 'tbl_customer.CustomerCode as CustomerCode', 'tbl_customer.CustomerId as CustomerId', 'tbl_countries.country_name as Country', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
->leftJoin('tbl_admin', 'tbl_contact.Updated_by', '=', 'tbl_admin.UserId')
->leftJoin('tbl_customer', 'tbl_contact.CustomerId', '=', 'tbl_customer.CustomerId')
->leftJoin('tbl_countries', 'tbl_contact.Country', '=', 'tbl_countries.id')
->where('tbl_contact.IsDeleted', '=', '0')
->where('tbl_contact.Status', '=', '1')
->orderBy('tbl_contact.id', 'desc')
->get();
$InActiveContact = Contact::select('tbl_contact.*', 'tbl_customer.CustomerName as CustomerName', 'tbl_customer.CustomerCode as CustomerCode', 'tbl_customer.CustomerId as CustomerId', 'tbl_countries.country_name as Country', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
->leftJoin('tbl_admin', 'tbl_contact.Updated_by', '=', 'tbl_admin.UserId')
->leftJoin('tbl_customer', 'tbl_contact.CustomerId', '=', 'tbl_customer.CustomerId')
->leftJoin('tbl_countries', 'tbl_contact.Country', '=', 'tbl_countries.id')
->where('tbl_contact.IsDeleted', '=', '0')
->where('tbl_contact.Status', '=', '0')
->orderBy('tbl_contact.id', 'desc')
->get();
$TrashContact = Contact::select('tbl_contact.*', 'tbl_customer.CustomerName as CustomerName', 'tbl_customer.CustomerCode as CustomerCode', 'tbl_countries.country_name as Country', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
->leftJoin('tbl_admin', 'tbl_contact.Updated_by', '=', 'tbl_admin.UserId')
->leftJoin('tbl_customer', 'tbl_contact.CustomerId', '=', 'tbl_customer.CustomerId')
->leftJoin('tbl_countries', 'tbl_contact.Country', '=', 'tbl_countries.id')
->where('tbl_contact.IsDeleted', '=', '1')
->orderBy('tbl_contact.id', 'desc')
->get();
return view('admin.all-contact', ['Contact' => $Contact, 'ActiveContact' => $ActiveContact, 'InActiveContact' => $InActiveContact, 'TrashContact' => $TrashContact]);
}
#Active Contacts
public function activeContact(){
if (empty(session('UserId'))) {
return redirect('/admin/logout');
}
$Contact = Contact::select('tbl_contact.*', 'tbl_customer.CustomerName as CustomerName', 'tbl_customer.CustomerCode as CustomerCode', 'tbl_customer.CustomerId as CustomerId', 'tbl_countries.country_name as Country', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
->leftJoin('tbl_admin', 'tbl_contact.Updated_by', '=', 'tbl_admin.UserId')
->leftJoin('tbl_customer', 'tbl_contact.CustomerId', '=', 'tbl_customer.CustomerId')
->leftJoin('tbl_countries', 'tbl_contact.Country', '=', 'tbl_countries.id')
->where('tbl_contact.IsDeleted', '=', '0')
->orderBy('tbl_contact.id', 'desc')
->get();
$ActiveContact = Contact::select('tbl_contact.*', 'tbl_customer.CustomerName as CustomerName', 'tbl_customer.CustomerCode as CustomerCode', 'tbl_customer.CustomerId as CustomerId', 'tbl_countries.country_name as Country', 'tbl_admin.FirstName as AdminUpdated_by', 'tbl_admin.FirstName as AdminCreated_by', 'tbl_user.FirstName as Updated_by', 'tbl_user.FirstName as Created_by')
->leftJoin('tbl_admin', 'tbl_contact.Updated_by', '=', 'tbl_admin.UserId')
->leftJoin('tbl_user', 'tbl_contact.Updated_by', '=', 'tbl_user.UserId')
->leftJoin('tbl_customer', 'tbl_contact.CustomerId', '=', 'tbl_customer.CustomerId')
->leftJoin('tbl_countries', 'tbl_contact.Country', '=', 'tbl_countries.id')
->where('tbl_contact.IsDeleted', '=', '0')
->where('tbl_contact.Status', '=', '1')
->orderBy('tbl_contact.id', 'desc')
->get();
$InActiveContact = Contact::select('tbl_contact.*', 'tbl_customer.CustomerName as CustomerName', 'tbl_customer.CustomerCode as CustomerCode', 'tbl_customer.CustomerId as CustomerId', 'tbl_countries.country_name as Country', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
->leftJoin('tbl_admin', 'tbl_contact.Updated_by', '=', 'tbl_admin.UserId')
->leftJoin('tbl_customer', 'tbl_contact.CustomerId', '=', 'tbl_customer.CustomerId')
->leftJoin('tbl_countries', 'tbl_contact.Country', '=', 'tbl_countries.id')
->where('tbl_contact.IsDeleted', '=', '0')
->where('tbl_contact.Status', '=', '0')
->orderBy('tbl_contact.id', 'desc')
->get();
$TrashContact = Contact::select('tbl_contact.*', 'tbl_customer.CustomerName as CustomerName', 'tbl_customer.CustomerCode as CustomerCode', 'tbl_countries.country_name as Country', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
->leftJoin('tbl_admin', 'tbl_contact.Updated_by', '=', 'tbl_admin.UserId')
->leftJoin('tbl_customer', 'tbl_contact.CustomerId', '=', 'tbl_customer.CustomerId')
->leftJoin('tbl_countries', 'tbl_contact.Country', '=', 'tbl_countries.id')
->where('tbl_contact.IsDeleted', '=', '1')
->orderBy('tbl_contact.id', 'desc')
->get();
return view('admin.active-contact', ['Contact' => $Contact, 'ActiveContact' => $ActiveContact, 'InActiveContact' => $InActiveContact, 'TrashContact' => $TrashContact]);
}
#InActive Contacts
public function inactiveContact(){
if (empty(session('UserId'))) {
return redirect('/admin/logout');
}
$Contact = Contact::select('tbl_contact.*', 'tbl_customer.CustomerName as CustomerName', 'tbl_customer.CustomerCode as CustomerCode', 'tbl_customer.CustomerId as CustomerId', 'tbl_countries.country_name as Country', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
->leftJoin('tbl_admin', 'tbl_contact.Updated_by', '=', 'tbl_admin.UserId')
->leftJoin('tbl_customer', 'tbl_contact.CustomerId', '=', 'tbl_customer.CustomerId')
->leftJoin('tbl_countries', 'tbl_contact.Country', '=', 'tbl_countries.id')
->where('tbl_contact.IsDeleted', '=', '0')
->orderBy('tbl_contact.id', 'desc')
->get();
$ActiveContact = Contact::select('tbl_contact.*', 'tbl_customer.CustomerName as CustomerName', 'tbl_customer.CustomerCode as CustomerCode', 'tbl_customer.CustomerId as CustomerId', 'tbl_countries.country_name as Country', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
->leftJoin('tbl_admin', 'tbl_contact.Updated_by', '=', 'tbl_admin.UserId')
->leftJoin('tbl_customer', 'tbl_contact.CustomerId', '=', 'tbl_customer.CustomerId')
->leftJoin('tbl_countries', 'tbl_contact.Country', '=', 'tbl_countries.id')
->where('tbl_contact.IsDeleted', '=', '0')
->where('tbl_contact.Status', '=', '1')
->orderBy('tbl_contact.id', 'desc')
->get();
$InActiveContact = Contact::select('tbl_contact.*', 'tbl_customer.CustomerName as CustomerName', 'tbl_customer.CustomerCode as CustomerCode', 'tbl_customer.CustomerId as CustomerId', 'tbl_countries.country_name as Country', 'tbl_admin.FirstName as AdminUpdated_by', 'tbl_admin.FirstName as AdminCreated_by', 'tbl_user.FirstName as Updated_by', 'tbl_user.FirstName as Created_by')
->leftJoin('tbl_admin', 'tbl_contact.Updated_by', '=', 'tbl_admin.UserId')
->leftJoin('tbl_user', 'tbl_contact.Updated_by', '=', 'tbl_user.UserId')
->leftJoin('tbl_customer', 'tbl_contact.CustomerId', '=', 'tbl_customer.CustomerId')
->leftJoin('tbl_countries', 'tbl_contact.Country', '=', 'tbl_countries.id')
->where('tbl_contact.IsDeleted', '=', '0')
->where('tbl_contact.Status', '=', '0')
->orderBy('tbl_contact.id', 'desc')
->get();
$TrashContact = Contact::select('tbl_contact.*', 'tbl_customer.CustomerName as CustomerName', 'tbl_customer.CustomerCode as CustomerCode', 'tbl_countries.country_name as Country', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
->leftJoin('tbl_admin', 'tbl_contact.Updated_by', '=', 'tbl_admin.UserId')
->leftJoin('tbl_customer', 'tbl_contact.CustomerId', '=', 'tbl_customer.CustomerId')
->leftJoin('tbl_countries', 'tbl_contact.Country', '=', 'tbl_countries.id')
->where('tbl_contact.IsDeleted', '=', '1')
->orderBy('tbl_contact.id', 'desc')
->get();
return view('admin.inactive-contact', ['Contact' => $Contact, 'ActiveContact' => $ActiveContact, 'InActiveContact' => $InActiveContact, 'TrashContact' => $TrashContact]);
}
#Trash Contacts
public function trashContact(){
if (empty(session('UserId'))) {
return redirect('/admin/logout');
}
$Contact = Contact::select('tbl_contact.*', 'tbl_customer.CustomerName as CustomerName', 'tbl_customer.CustomerCode as CustomerCode', 'tbl_customer.CustomerId as CustomerId', 'tbl_countries.country_name as Country', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
->leftJoin('tbl_admin', 'tbl_contact.Updated_by', '=', 'tbl_admin.UserId')
->leftJoin('tbl_customer', 'tbl_contact.CustomerId', '=', 'tbl_customer.CustomerId')
->leftJoin('tbl_countries', 'tbl_contact.Country', '=', 'tbl_countries.id')
->where('tbl_contact.IsDeleted', '=', '0')
->orderBy('tbl_contact.id', 'desc')
->get();
$ActiveContact = Contact::select('tbl_contact.*', 'tbl_customer.CustomerName as CustomerName', 'tbl_customer.CustomerCode as CustomerCode', 'tbl_customer.CustomerId as CustomerId', 'tbl_countries.country_name as Country', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
->leftJoin('tbl_admin', 'tbl_contact.Updated_by', '=', 'tbl_admin.UserId')
->leftJoin('tbl_customer', 'tbl_contact.CustomerId', '=', 'tbl_customer.CustomerId')
->leftJoin('tbl_countries', 'tbl_contact.Country', '=', 'tbl_countries.id')
->where('tbl_contact.IsDeleted', '=', '0')
->where('tbl_contact.Status', '=', '1')
->orderBy('tbl_contact.id', 'desc')
->get();
$InActiveContact = Contact::select('tbl_contact.*', 'tbl_customer.CustomerName as CustomerName', 'tbl_customer.CustomerCode as CustomerCode', 'tbl_customer.CustomerId as CustomerId', 'tbl_countries.country_name as Country', 'tbl_admin.FirstName as Updated_by', 'tbl_admin.FirstName as Created_by')
->leftJoin('tbl_admin', 'tbl_contact.Updated_by', '=', 'tbl_admin.UserId')
->leftJoin('tbl_customer', 'tbl_contact.CustomerId', '=', 'tbl_customer.CustomerId')
->leftJoin('tbl_countries', 'tbl_contact.Country', '=', 'tbl_countries.id')
->where('tbl_contact.IsDeleted', '=', '0')
->where('tbl_contact.Status', '=', '0')
->orderBy('tbl_contact.id', 'desc')
->get();
$TrashContact = Contact::select('tbl_contact.*', 'tbl_customer.CustomerName as CustomerName', 'tbl_customer.CustomerCode as CustomerCode', 'tbl_countries.country_name as Country', 'tbl_admin.FirstName as AdminUpdated_by', 'tbl_admin.FirstName as AdminCreated_by', 'tbl_user.FirstName as Updated_by', 'tbl_user.FirstName as Created_by')
->leftJoin('tbl_admin', 'tbl_contact.Updated_by', '=', 'tbl_admin.UserId')
->leftJoin('tbl_user', 'tbl_contact.Updated_by', '=', 'tbl_user.UserId')
->leftJoin('tbl_customer', 'tbl_contact.CustomerId', '=', 'tbl_customer.CustomerId')
->leftJoin('tbl_countries', 'tbl_contact.Country', '=', 'tbl_countries.id')
->where('tbl_contact.IsDeleted', '=', '1')
->orderBy('tbl_contact.id', 'desc')
->get();
return view ('admin.trash-contact', ['Contact' => $Contact, 'ActiveContact' => $ActiveContact, 'InActiveContact' => $InActiveContact, 'TrashContact' => $TrashContact]);
}
### View Record
public function viewContact($ContactId)
{
if (empty(session('UserId'))) {
return redirect('/admin/logout');
}
$ViewContact = Contact::select('tbl_contact.*', 'tbl_customer.CustomerName as CustomerName', 'tbl_customer.CustomerCode as CustomerCode', 'tbl_customer.CustomerId as CustomerId', 'tbl_countries.country_name as Country', 'tbl_admin.FirstName as AdminUpdated_by', 'tbl_admin.FirstName as AdminCreated_by', 'tbl_user.FirstName as Updated_by', 'tbl_user.FirstName as Created_by')
->leftJoin('tbl_admin', 'tbl_contact.Updated_by', '=', 'tbl_admin.UserId')
->leftJoin('tbl_user', 'tbl_contact.Updated_by', '=', 'tbl_user.UserId')
->leftJoin('tbl_customer', 'tbl_contact.CustomerId', '=', 'tbl_customer.CustomerId')
->leftJoin('tbl_countries', 'tbl_contact.Country', '=', 'tbl_countries.id')
->where('tbl_contact.ContactId', '=', $ContactId)
->get()->first();
return view('admin.view-contact', ['Contact' => $ViewContact]);
}
### Check Contact Mobile Number
public function checkContactMobile(Request $request)
{
$CreatedDate = date('Y-m-d H:i:s',time());
$data = $request->all();
$contact = Contact::where('Mobile', $data['Mobile'])->get();
if ($contact->count() > 0)
{ //mobile exist
$contact = $contact->first();
$ContactId = $contact->ContactId;
$response = [
'Success' => false,
'ResponseMessage' => "Number already exist in CRM!",
'ResponseCode' => '201',
];
return response()->json($response);
}
else{
$response = [
'Success' => true,
'ResponseMessage' => "",
'ResponseCode' => '200',
];
return response()->json($response);
}
}
### Store New Record
public function storeContact(Request $request)
{
if (empty(session('UserId'))) {
return redirect('/admin/logout');
}
$Contact = new Contact;
$Contact->ContactId = $this->userLib->useridGenrator();
$Contact->Title = $request->input('Title');
$Contact->FirstName = $request->input('firstName');
$Contact->LastName = $request->input('lastName');
$Contact->Mobile = $request->input('mobile');
$Contact->AlternateMobile = $request->input('alternateMobile');
$Contact->Email = $request->input('email');
$Contact->AlternateEmail = $request->input('alternateEmail');
$BirthDate = '';
if ($request->input('dateOfBirth')) {
$BirthDate = str_replace('/', '-', $request->input('dateOfBirth'));
$Contact->DateOfBirth = date('d-m-Y', strtotime($BirthDate));
}
//$Contact->DateOfBirth = $request->input('dateOfBirth');
$WeddingDate = '';
if ($request->input('weddingAnniversary')) {
$WeddingDate = str_replace('/', '-', $request->input('weddingAnniversary'));
$Contact->WeddingAnniversary = date('d-m-Y', strtotime($WeddingDate));
}
//$Contact->WeddingAnniversary = $request->input('weddingAnniversary');
$CustomerId = $request->input('customer');
$AssignTo = '';
if ($CustomerId) {
$Customer = Customer::where('CustomerId', $CustomerId)->get()->first();
$AssignTo = $Customer->AssignTo;
}
$Contact->CustomerId = $CustomerId;
$Contact->StreetAddress = $request->input('streetAddress');
$Contact->City = $request->input('city');
$Contact->Country = $request->input('country');
$Contact->State = $request->input('state');
$Contact->PostalCode = $request->input('postalCode');
$Contact->Description = $request->input('description');
$Contact->AssignTo = $AssignTo;
$Contact->CrmId = '';
$Contact->Created_by = session('UserId');
$Contact->Updated_by = session('UserId');
$Contact->IsDeleted = '0';
$Contact->DeviceName = 'WEB';
if ($request->has('IsPrimary')) {
$Contact->IsPrimary = '1';
} else {
$Contact->IsPrimary = '0';
}
$ContactCustomerDetails = Contact::where('CustomerId',$CustomerId)->where('Status','1')->get();
if($ContactCustomerDetails->count() == 0)
{
$Contact->IsPrimary = '1';
}
if ($request->has('Status')) {
$Contact->Status = '0';
} else {
$Contact->Status = '1';
}
$Contact->save();
$ContactId = $Contact->ContactId;
//$CustomerId = $Contact->CustomerId;
$Title = $request->input('Title');
$FirstName = $request->input('firstName');
$LastName = '-';
if ($request->input('lastName')) {
$LastName = $request->input('lastName');
}
$Mobile = $request->input('mobile');
$Email = $request->input('email');
$AlternateEmail = $request->input('alternateEmail');
// if ($request->input('dateOfBirth')) {
// $BirthDate = str_replace('/', '-', $request->input('dateOfBirth'));
// }
// $DateOfBirth = date('m-d-Y', strtotime($BirthDate));
// if ($request->input('weddingAnniversary')) {
// $WeddingDate = str_replace('/', '-', $request->input('weddingAnniversary'));
// }
// $WeddingAnniversary = date('m-d-Y', strtotime($WeddingDate));
$DateOfBirth = '';
if ($request->input('dateOfBirth')) {
$BirthDate = str_replace('/', '-', $request->input('dateOfBirth'));
$DateOfBirth = date('d-m-Y', strtotime($BirthDate));
}
$WeddingAnniversary = '';
if ($request->input('weddingAnniversary')) {
$WeddingDate = str_replace('/', '-', $request->input('weddingAnniversary'));
$WeddingAnniversary = date('d-m-Y', strtotime($WeddingDate));
}
$StreetAddress = $request->input('streetAddress');
$City = $request->input('city');
$Country_id = $request->input('country');
$Country = '';
if($Country_id){
$customer_details = Countries::select('tbl_countries.country_name')
->where('tbl_countries.id', $Country_id)
->get()->first();
$Country = $customer_details->country_name;
}
$State = $request->input('state');
$PostalCode = $request->input('postalCode');
$Description = $request->input('description');
$IsDeleted = '0';
$DeviceName = 'WEB';
if ($request->has('Status')) {
$Status = '0';
} else {
$Status = '1';
}
$DateOfBirth = date('Y-m-d',strtotime($DateOfBirth));
$WeddingAnniversary = date('Y-m-d',strtotime($WeddingAnniversary));
DB::connection('pgsql')->insert("insert into salesforce.contact (Contact_ID__c,External_Account_Id__c,Title,FirstName,LastName,MobilePhone,Email,Alternate_Email__c,Birthdate,Wedding_Anniversary__c,MailingStreet,MailingCity,MailingCountry,MailingState,MailingPostalCode,Description,IsDeleted,Device_Name__c,Status__c,Assign_To__c) values ('$ContactId','$CustomerId','$Title','$FirstName','$LastName','$Mobile','$Email','$AlternateEmail','$DateOfBirth','$WeddingAnniversary','$StreetAddress','$City','$Country','$State','$PostalCode','$Description','$IsDeleted','$DeviceName','$Status','$AssignTo')");
//return redirect()->back()->with('status_success');
return response()->json('status_success');
}
#### Change Status
public function statusUpdateContact($id)
{
$data = Contact::find($id);
if ($data->Status == '1') {
$Status = '0';
} else {
$Status = '1';
}
$values = array('Status' => $Status);
Contact::find($id)->update($values);
return redirect()->back();
}
#### Delete Temporary
public function deleteContact($id)
{
//get customer contact details
$ContactDetails = Contact::where('id',$id)->get();
$CustomerId = '';
if($ContactDetails->count() > 0)
{
$ContactData = $ContactDetails->first();
$CustomerId = $ContactData->CustomerId;
}
$ContactCustomerDetails = Contact::where('id',$id)->where('IsPrimary','1')->where('Status','1')->get();
if($ContactCustomerDetails->count() > 0)
{
echo "201";
}
else
{
$value = array('IsDeleted' => '1', 'Status' => '0');
Contact::find($id)->update($value);
$Contact = Contact::find($id);
$ContactId = $Contact->ContactId;
DB::connection('pgsql')->update("update salesforce.contact set IsDeleted='1',Status__c='0' where Contact_ID__c = '$ContactId'");
echo "200";
}
}
#### Delete Selected Contact
public function deleteSelectedContact(Request $request)
{
if (empty(session('UserId'))) {
return redirect('/admin/logout');
}
$id = $request->input('SelectedContact');
if ($id) {
foreach ($id as $contact) {
$checkData = Contact::find($contact);
if ($checkData->IsDeleted == '0') {
$CreatedDate = date(
'Y-m-d H:i:s',
time()
);
$data = array();
$data['Updated_at'] = $CreatedDate;
$data['IsDeleted'] = '1';
$selected_contact = Contact::where('id', $contact)->update($data);
if ($selected_contact) {
echo '1';
} else {
echo '0';
}
} else {
$selected_contact = Contact::find($contact);
$selected_contact->delete();
}
}
}
return redirect()->back()->with('status_success');
}
#### Empty trash contact folder
// public function emptyTrashContact(Request $request)
// {
// if (empty(session('UserId'))) {
// return redirect('/admin/logout');
// }
// $id = $request->input('SelectedContact');
// foreach ($id as $contact) {
// $checkData = Contact::find($contact);
// if ($checkData->IsDeleted == '1') {
// $selected_contact = Contact::find($contact);
// $selected_contact->delete();
// if ($selected_contact) {
// echo '1';
// } else {
// echo '0';
// }
// }
// }
// return redirect()->back()->with('status_success');
// }
#### Restore
public function restoreContact($id)
{
$value = array('IsDeleted' => '0');
Contact::find($id)->update($value);
DB::connection('pgsql')->update("update salesforce.contact set IsDeleted='0',Status__c='1' where Contact_ID__c = '$id'");
}
#### Delete Permanent
public function destroyContact($id)
{
$destroyData = Contact::find($id);
$destroyData->delete();
}
### Edit Records
public function editContact($id)
{
$Contact = Contact::find($id);
return response()->json([
'status' => 200,
'Contact' => $Contact,
]);
}
### Update Records
public function updateContact(Request $request)
{
if (empty(session('UserId'))) {
return redirect('/admin/logout');
}
// //$user_id = Auth::id();
// $contact_id = $request->input('id');
// $Contact = Contact::find($contact_id);
// $Contact->Title = $request->input('Title');
// $Contact->FirstName = $request->input('firstName');
// $Contact->LastName = $request->input('lastName');
// $Contact->Mobile = $request->input('mobile');
// $Contact->AlternateMobile = $request->input('alternateMobile');
// $Contact->Email = $request->input('email');
// $Contact->AlternateEmail = $request->input('alternateEmail');
// $BirthDate = NULL;
// if ($request->input('dateOfBirth')) {
// $BirthDate = str_replace('/', '-', $request->input('dateOfBirth'));
// $Contact->DateOfBirth = date('d-m-Y', strtotime($BirthDate));
// }
// //$Contact->DateOfBirth = $request->input('dateOfBirth');
// $WeddingDate = NULL;
// if ($request->input('weddingAnniversary')) {
// $WeddingDate = str_replace('/', '-', $request->input('weddingAnniversary'));
// $Contact->WeddingAnniversary = date('d-m-Y', strtotime($WeddingDate));
// }
// //$Contact->WeddingAnniversary = $request->input('weddingAnniversary');
// $CustomerId = $request->input('customer');
// $AssignTo = '';
// if ($CustomerId) {
// $Customer = Customer::where('CustomerId', $CustomerId)->get()->first();
// $AssignTo = $Customer->AssignTo;
// }
// $Contact->CustomerId = $CustomerId;
// $Contact->StreetAddress = $request->input('streetAddress');
// $Contact->City = $request->input('city');
// $Contact->Country = $request->input('country');
// $Contact->State = $request->input('state');
// $Contact->PostalCode = $request->input('postalCode');
// $Contact->Description = $request->input('description');
// $Contact->CrmId = '';
// $Contact->Updated_by = session('UserId');
// $Contact->DeviceName = '';
// if ($request->has('editIsPrimary')) {
// $Contact->IsPrimary = '1';
// } else {
// $Contact->IsPrimary = '0';
// }
// $Contact->update();
$contact_id = $request->input('id');
$Contact['Title'] = $request->input('Title');
$Contact['FirstName'] = $request->input('firstName');
$Contact['LastName'] = $request->input('lastName');
$Contact['Mobile'] = $request->input('mobile');
$Contact['AlternateMobile'] = $request->input('alternateMobile');
$Contact['Email'] = $request->input('email');
$Contact['AlternateEmail'] = $request->input('alternateEmail');
$Contact['DateOfBirth'] = '';
if ($request->input('dateOfBirth')) {
$BirthDate = str_replace('/', '-', $request->input('dateOfBirth'));
$Contact['DateOfBirth'] = date('d-m-Y', strtotime($BirthDate));
}
$Contact['WeddingAnniversary'] = '';
if ($request->input('weddingAnniversary')) {
$WeddingDate = str_replace('/', '-', $request->input('weddingAnniversary'));
$Contact['WeddingAnniversary'] = date('d-m-Y', strtotime($WeddingDate));
}
$CustomerId = $request->input('customer');
$AssignTo = '';
if ($CustomerId) {
$Customer = Customer::where('CustomerId', $CustomerId)->get()->first();
$AssignTo = $Customer->AssignTo;
}
$Contact['CustomerId'] = $CustomerId;
$Contact['StreetAddress'] = $request->input('streetAddress');
$Contact['City'] = $request->input('city');
$Contact['Country'] = $request->input('country');
$Contact['State'] = $request->input('state');
$Contact['PostalCode'] = $request->input('postalCode');
$Contact['Description'] = $request->input('description');
$Contact['CrmId'] = '';
$Contact['Updated_by'] = session('UserId');
$Contact['DeviceName'] = '';
if ($request->has('editIsPrimary')) {
$Contact['IsPrimary'] = '1';
} else {
$Contact['IsPrimary'] = '0';
}
// echo "<pre>";
// print_r($_POST);
// echo "<br>";
// echo "<pre>";
// print_r($Contact);exit;
$update_contact = Contact::where('id', $contact_id)->update($Contact);
if($update_contact)
{
$ContactId = $contact_id = $request->input('ContactId');
$Title = $request->input('Title');
$FirstName = $request->input('firstName');
$LastName = $request->input('lastName');
$Mobile = $request->input('mobile');
$Email = $request->input('email');
$AlternateEmail = $request->input('alternateEmail');
$BD = NULL;
if ($request->input('dateOfBirth')) {
$BirthDate = str_replace('/', '-', $request->input('dateOfBirth'));
$DateOfBirth = date('Y-m-d', strtotime($BirthDate));
$BD = "Birthdate = '".$DateOfBirth."' ,";
}
$WA = NULL;
if ($request->input('weddingAnniversary')) {
$WeddingDate = str_replace('/', '-', $request->input('weddingAnniversary'));
$WeddingAnniversary = date('Y-m-d', strtotime($WeddingDate));
$WA = "Wedding_Anniversary__c = '".$WeddingAnniversary."' ,";
}
$StreetAddress = $request->input('streetAddress');
$City = $request->input('city');
$Country_id = $request->input('country');
$Country = '';
if($Country_id){
$customer_details = Countries::select('tbl_countries.country_name')
->where('tbl_countries.id', $Country_id)
->get()->first();
$Country = $customer_details->country_name;
}
$State = $request->input('state');
$PostalCode = $request->input('postalCode');
$Description = $request->input('description');
$IsDeleted = '0';
$DeviceName = 'WEB';
$Updated_by = session('UserId');
DB::connection('pgsql')->update("update salesforce.contact set Title='$Title',FirstName='$FirstName',LastName='$LastName',MobilePhone='$Mobile',Email='$Email',Alternate_Email__c='$AlternateEmail', $BD $WA MailingStreet='$StreetAddress',MailingCity='$City',MailingCountry='$Country',MailingState='$State',MailingPostalCode='$PostalCode',Description='$Description',IsDeleted='$IsDeleted',Device_Name__c='$DeviceName',Updated_By__c ='$Updated_by',Assign_To__c='$AssignTo',External_Account_Id__c='$CustomerId' where Contact_ID__c = '$ContactId'");
}
return redirect()->back()->with('status_success');
}
### Check Primary Records
public function checkContactPrimary($CustomerId)
{
$Contact = Contact::select('tbl_contact.*')
->where('CustomerId', '=', $CustomerId)
->where('IsPrimary', '=', '1')
->where('Status', '=', '1')
//->where('IsDeleted', '=', '0')
->get()->first();
return response()->json([
'status' => 200,
'Contact' => $Contact,
]);
}
}