dashboard :suseendhiran

This commit is contained in:
suseendhiran17 2023-06-07 11:42:29 +05:30
commit aa5d8f060d
8 changed files with 202 additions and 58 deletions

View File

@ -55,6 +55,7 @@ $routes->match(['get'],'/scheduler','Member_controller::scheduler');
$routes->get('/payment', 'PaymentController::index'); $routes->get('/payment', 'PaymentController::index');
$routes->get('/payment_success/(:any)', 'PaymentController::payment_success/$1'); $routes->get('/payment_success/(:any)', 'PaymentController::payment_success/$1');
$routes->get('/payment_failed/(:any)', 'PaymentController::payment_failed/$1');
$routes->post('/payment/(:any)', 'PaymentController::index/$1'); $routes->post('/payment/(:any)', 'PaymentController::index/$1');
$routes->get('payment_form', 'PaymentController::payment_form'); $routes->get('payment_form', 'PaymentController::payment_form');
$routes->post('processPayment', 'PaymentController::processPayment'); $routes->post('processPayment', 'PaymentController::processPayment');

View File

@ -568,7 +568,6 @@ class Member_controller extends BaseController
} }
echo view('memberaccess',$data); //dashboard echo view('memberaccess',$data); //dashboard
} }
// ----------------------------------------------- // -----------------------------------------------
} }

View File

@ -135,7 +135,7 @@ class PaymentController extends BaseController
$amount = $amount + $cost; $amount = $amount + $cost;
$item_count = $item_count + $single_pack_no_of_count; $item_count = $item_count + $CartData[$i]['count'];
} }
$data['amount'] = $amount; $data['amount'] = $amount;
@ -144,9 +144,8 @@ class PaymentController extends BaseController
$data['gst'] = $gst; $data['gst'] = $gst;
$data['pst'] = $pst; $data['pst'] = $pst;
$data['packageArray'] = $packageArray; $data['packageArray'] = $packageArray;
$data['userdata']=$this->dModel->getLoggedInMemberData(session()->get('logged_user')); $data['userdata'] = $this->MemberModel->where('id',session()->get('logged_user'))->find();
$data['userDefaultAddress'] = $this->MemberModel->getDefaultAddress(session()->get('logged_user')); //$data['userAddress'] = $this->MemberAddressModel->where('member_id',session()->get('logged_user'))->findAll();
$data['userAddress'] = $this->MemberAddressModel->where('member_id',session()->get('logged_user'))->findAll();
// echo '<pre>'; // echo '<pre>';
// print_r($data); // print_r($data);
// echo '</pre>'; // echo '</pre>';
@ -180,7 +179,11 @@ class PaymentController extends BaseController
$idempotencyKey = $data->idempotencyKey; $idempotencyKey = $data->idempotencyKey;
$amount = $data->amount; $amount = $data->amount;
$order_id = $data->order_id; $order_id = $data->order_id;
$address_id = $data->address_id; $add = $data->address;
parse_str( $add, $address);
//print_r($add);die();
$Final_amount = round( ( $amount + (($amount * ($gst + $pst) ) / 100) ) , 2 ); $Final_amount = round( ( $amount + (($amount * ($gst + $pst) ) / 100) ) , 2 );
$square_client = new SquareClient([ $square_client = new SquareClient([
@ -219,13 +222,17 @@ class PaymentController extends BaseController
$data = json_encode($response->getResult()); $data = json_encode($response->getResult());
$result = json_decode( $data ,true); $result = json_decode( $data ,true);
//Trancaction Table Data
$TrancactionId = $result['payment']['id']; $TrancactionData['status'] = 'success';
$payment_order_id = $result['payment']['order_id'];
$TrancactionData['member_id'] = session()->get('logged_user'); $TrancactionData['member_id'] = session()->get('logged_user');
$TrancactionData['address_id'] = $address_id; $TrancactionData['first_name'] = $address['name'];
$TrancactionData['transaction_id'] = $TrancactionId; $TrancactionData['last_name'] = $address['last_name'];
$TrancactionData['payment_order_id'] = $payment_order_id; $TrancactionData['address'] = $address['address'];
$TrancactionData['state'] = $address['state'];
$TrancactionData['city'] = $address['city'];
$TrancactionData['zip_code'] = $address['pincode'];
$TrancactionData['transaction_id'] = $result['payment']['id'];
$TrancactionData['payment_order_id'] = $result['payment']['order_id'];
$TrancactionData['order_id'] = $order_id; $TrancactionData['order_id'] = $order_id;
$TrancactionData['transaction'] = json_encode($response->getResult()); $TrancactionData['transaction'] = json_encode($response->getResult());
$insert = $this->TransactionModel->save($TrancactionData); $insert = $this->TransactionModel->save($TrancactionData);
@ -240,7 +247,27 @@ class PaymentController extends BaseController
} else { } else {
echo json_encode(array('errors' => $response->getErrors())); $data = json_encode($response->getErrors());
$result = json_decode( $data ,true);
//Trancaction Table Data
$TrancactionData['status'] = 'failed';
$TrancactionData['member_id'] = session()->get('logged_user');
$TrancactionData['first_name'] = $address['name'];
$TrancactionData['last_name'] = $address['last_name'];
$TrancactionData['address'] = $address['address'];
$TrancactionData['state'] = $address['state'];
$TrancactionData['city'] = $address['city'];
$TrancactionData['zip_code'] = $address['pincode'];
$TrancactionData['order_id'] = $order_id;
$TrancactionData['transaction'] = json_encode($response->getErrors());
$insert = $this->TransactionModel->save($TrancactionData);
if( $insert)
{
$this->creditsModel->where('order_id', $order_id )->delete();
}
echo json_encode(array('errors' => $response->getErrors()));
} }
} catch (ApiException $e) { } catch (ApiException $e) {
echo json_encode(array('errors' => $e)); echo json_encode(array('errors' => $e));
@ -276,8 +303,9 @@ class PaymentController extends BaseController
$memberCredits = $this->creditsModel->where('order_id', $local_order_id ) $memberCredits = $this->creditsModel->where('order_id', $local_order_id )
->where('member_id', session()->get('logged_user')) ->where('member_id', session()->get('logged_user'))
->select('package_name') ->select('package_name')
->select('cost')
->selectSum('credit_points', 'credit_points') ->selectSum('credit_points', 'credit_points')
->selectSum('cost', 'cost') ->selectSum('cost', 'costSum')
->selectCount('package_name', 'pack_count') ->selectCount('package_name', 'pack_count')
->groupBy('package_name')->findAll(); ->groupBy('package_name')->findAll();
@ -291,7 +319,7 @@ class PaymentController extends BaseController
$Subtotal = 0; $Subtotal = 0;
foreach ($memberCredits as $key => $ele) { foreach ($memberCredits as $key => $ele) {
$Subtotal = $Subtotal + $ele['cost']; $Subtotal = $Subtotal + $ele['costSum'];
} }
$data['memberCredits'] =$memberCredits; $data['memberCredits'] =$memberCredits;
@ -306,21 +334,36 @@ class PaymentController extends BaseController
// echo '<pre>'; // echo '<pre>';
// print_r( $data['memberCredits']); // print_r( $data['memberCredits']);
// echo '</pre>'; // echo '</pre>';
// die();
echo view('payment',$data); echo view('payment',$data);
}else{ }else{
echo 'invalid order_id'; echo 'invalid order_id';
} }
} }
} }
public function payment_failed( $local_order_id = null)
{
if( $local_order_id != null)
{
$data['TransactionData'] = $this->TransactionModel->where('order_id', $local_order_id )->where('member_id', session()->get('logged_user'))->find();
if($data['TransactionData']){
$data['category'] = json_decode($data['TransactionData'][0]['transaction'] , true)[0]['category'];
$data['code'] = json_decode($data['TransactionData'][0]['transaction'] , true)[0]['code'];
$data['detail'] = json_decode($data['TransactionData'][0]['transaction'] , true)[0]['detail'];
$data['order_id'] = $data['TransactionData'][0]['order_id'];
$timestamp = strtotime($data['TransactionData'][0]['created_at']);
$data['formattedDate'] = date('l, F j, Y', $timestamp);
echo view('payment_failed',$data);
}else{
echo 'invalid order_id';
}
}
}

View File

@ -7,7 +7,7 @@ class Member_model extends Model
protected $table = 'member'; protected $table = 'member';
protected $primaryKey = 'id'; protected $primaryKey = 'id';
protected $allowedFields = ['name', 'mobile','email','username', 'password', 'address' , 'city' , 'state' , 'country' , 'pincode' , 'is_email_verified' , 'verification_code' , 'is_active' , 'created_by','updated_by']; protected $allowedFields = ['name', 'last_name' ,'gender', 'mobile','email','username', 'password', 'address' , 'city' , 'state' , 'country' , 'pincode' , 'is_email_verified' , 'verification_code' , 'is_active' , 'created_by','updated_by'];
protected $beforeInsert = ['beforeInsert']; protected $beforeInsert = ['beforeInsert'];
protected $beforeUpdate = ['beforeUpdate']; protected $beforeUpdate = ['beforeUpdate'];

View File

@ -7,7 +7,7 @@ class transaction_model extends Model
protected $table = 'transactions'; protected $table = 'transactions';
protected $primaryKey = 'id'; protected $primaryKey = 'id';
protected $allowedFields = ['member_id','address_id','transaction_id','payment_order_id','order_id','transaction','is_mail_triggered']; protected $allowedFields = ['status','member_id','transaction_id','payment_order_id','order_id','transaction','is_mail_triggered', 'first_name','last_name','address', 'city' , 'state' , 'zip_code'];
} }

View File

@ -112,7 +112,7 @@ $web_payment_sdk_url = $_ENV["ENVIRONMENT"] === Environment::PRODUCTION ? "https
<div class="row back-card"> <div class="row back-card">
<div class="col-lg-12"> <div class="col-lg-12">
<a href="<?=base_url()."view_cart/".md5(session()->get('logged_user')); ?>"><i class="arrow-left"></i> Back to Cart</a> <a href="<?=base_url()."view_cart/".md5(session()->get('logged_user')); ?>"><i class="arrow-left"></i> Back to Cart</a>
<h4>Billing Address</h4> <!-- <h4>Billing Address</h4> -->
</div> </div>
</div> </div>
</div> </div>
@ -122,33 +122,57 @@ $web_payment_sdk_url = $_ENV["ENVIRONMENT"] === Environment::PRODUCTION ? "https
<div class="container"> <div class="container">
<div class="row"> <div class="row">
<div class="col-lg-8"> <div class="col-lg-8">
<div id="address_list" >
<?php foreach($userAddress as $address) { ?>
<div class="row edit-address">
<div class="col-lg-3"> <div class="address-form" >
<?php if($address['address_type'] == 'default') { ?> <form id="member_address" >
<input type="radio" id="<?php echo $address['id']."_radio"; ?>" name="member_address" value="<?php echo $address['id']; ?>" class="select-address checked" checked> <div class="row">
<?php } else { ?> <div class="col-lg-12 d-flex align-items-center mb-3">
<input type="radio" id="<?php echo $address['id']."_radio"; ?>" name="member_address" value="<?php echo $address['id']; ?>" class="select-address" >
<?php } ?> </div>
<span><?php echo $address['first_name']; ?></span> <!-- <input type="hidden" value="<?= $userdata[0]['id']; ?>" name="id" > -->
</div> <div class="col-lg-6 mb-3">
<div class="col-lg-7"> <label for="first_name">First Name</label>
<div class="billing-address"> <input type="text" value="<?= $userdata[0]['name']; ?>" name="name" id="first_name">
<?php echo $address['first_name']." , ".$address['street_address']." , ".$address['country']." , ".$address['state']." , ".$address['zip_code']; ?> </div>
<div class="col-lg-6 mb-3">
<label for="last_name">Last Name</label>
<input type="text" value="<?= $userdata[0]['last_name']; ?>" name="last_name" id="last_name">
</div>
<div class="col-lg-12 mb-3">
<label for="address">Street Address</label>
<input type="text" value="<?= $userdata[0]['address']; ?>" name="address" id="address">
</div>
<div class="col-lg-4 mb-3">
<label for="city">City</label>
<input type="text" value="<?= $userdata[0]['city']; ?>" name="city" id="city">
</div>
<div class="col-lg-4 mb-3">
<label for="state">State</label>
<select id="state" name="state">
<option value="<?= $userdata[0]['state']; ?>"><?= $userdata[0]['state']; ?></option>
</select>
</div>
<div class="col-lg-4 mb-3">
<label for="zipcode">Zip Code</label>
<input type="text" value="<?= $userdata[0]['pincode']; ?>" name="pincode" id="zipcode">
</div>
</div> </div>
</div> <!-- <div class="row form-button">
<div class="col-lg-2 text-end"> <div class="col-lg-2 col-4">
<a class="editAddress" id="<?php echo $address['id']; ?>" class="billing-edit">Edit</a> <button>Cancel</button>
</div> </div>
<div class="col-lg-3 col-4">
<input type="button" class="submit" value="Save">
</div>
<div class="col-lg-7 col-4"></div>
</div> -->
</form>
</div> </div>
<?php } ?>
</div>
<div class="address-form" style="display:none" >
</div>
<!-- Loading spinner HTML markup --> <!-- Loading spinner HTML markup -->
<div class="loading-spinner-overlay" id="loading-spinner-overlay"> <div class="loading-spinner-overlay" id="loading-spinner-overlay">
<div class="loading-spinner"></div> <div class="loading-spinner"></div>
@ -173,17 +197,17 @@ $web_payment_sdk_url = $_ENV["ENVIRONMENT"] === Environment::PRODUCTION ? "https
</div> </div>
<div class="google-pay"> <!-- <div class="google-pay">
<div class="row google-pay-content align-items-center"> <div class="row google-pay-content align-items-center">
<div class="col-lg-10 d-flex align-items-center"> <div class="col-lg-10 d-flex align-items-center">
<span>Google Pay</span> <span>Google Pay</span>
</div> </div>
<div id="google-pay-button" alt="google-pay" type="button"></div> <div id="google-pay-button" alt="google-pay" type="button"></div>
<!-- <div class="col-lg-2 text-end"> <div class="col-lg-2 text-end">
<img src="<?= base_url()."/public"; ?>/assets/member_images/g-pay.png" alt="" width="64" height="58"/> <img src="<?= base_url()."/public"; ?>/assets/member_images/g-pay.png" alt="" width="64" height="58"/>
</div> --> </div>
</div> </div>
</div> </div> -->
</div> </div>
</div> </div>
</form> </form>
@ -196,8 +220,8 @@ $web_payment_sdk_url = $_ENV["ENVIRONMENT"] === Environment::PRODUCTION ? "https
</div> </div>
<?php foreach ($packageArray as $row) { ?> <?php foreach ($packageArray as $row) { ?>
<div class="row evo"> <div class="row evo">
<div class="col-lg-6 col-6"><div class="product-name"><?php echo $row['package_name']." (".$row['count'].")"; ?></div></div> <div class="col-lg-8 col-8"><div class="product-name"><?php echo $row['package_name']." (".$row['cost']." x ".$row['count'].")"; ?></div></div>
<div class="col-lg-6 col-6 text-end"><div class="product-price"><span class="price-symbol">$</span><?php echo $row['cost'] * $row['count']; ?></div></div> <div class="col-lg-4 col-4 text-end"><div class="product-price"><span class="price-symbol">$</span><?php echo $row['cost'] * $row['count']; ?></div></div>
</div> </div>
<?php } ?> <?php } ?>
<div class="row item1"> <div class="row item1">
@ -236,9 +260,9 @@ $web_payment_sdk_url = $_ENV["ENVIRONMENT"] === Environment::PRODUCTION ? "https
<?php include 'member_layout/footer.php' ?> <?php include 'member_layout/footer.php' ?>
<script type="text/javascript" src="<?= base_url(); ?>public/square-js/sq-ach.js"></script> <!-- <script type="text/javascript" src="<?= base_url(); ?>public/square-js/sq-ach.js"></script>
<script type="text/javascript" src="<?= base_url(); ?>public/square-js/sq-apple-pay.js"></script> <script type="text/javascript" src="<?= base_url(); ?>public/square-js/sq-apple-pay.js"></script>
<script type="text/javascript" src="<?= base_url(); ?>public/square-js/sq-google-pay.js"></script> <script type="text/javascript" src="<?= base_url(); ?>public/square-js/sq-google-pay.js"></script> -->
<script type="text/javascript" src="<?= base_url(); ?>public/square-js/sq-card-pay.js"></script> <script type="text/javascript" src="<?= base_url(); ?>public/square-js/sq-card-pay.js"></script>
<script type="text/javascript" src="<?= base_url(); ?>public/square-js/sq-payment-flow.js"></script> <script type="text/javascript" src="<?= base_url(); ?>public/square-js/sq-payment-flow.js"></script>
</body> </body>

View File

@ -64,7 +64,7 @@
<img src="<?= base_url()."/public"; ?>/assets/member_images/cart-icon.png" alt="" width="70" height="70"> <img src="<?= base_url()."/public"; ?>/assets/member_images/cart-icon.png" alt="" width="70" height="70">
</div> </div>
<div class="col-lg-5"> <div class="col-lg-5">
<div class="product-name"><?php echo $val['package_name']." (".$val['pack_count'].")"; ?></div> <div class="product-name"><?php echo $val['package_name']." (".$val['cost']." x ".$val['pack_count'].")"; ?></div>
<div class="credits-number"><?php echo $val['credit_points']; ?> Credits</div> <div class="credits-number"><?php echo $val['credit_points']; ?> Credits</div>
<!-- <div class="credit-point">20+4 Credits Extra*</div> <!-- <div class="credit-point">20+4 Credits Extra*</div>
<div class="credit-price">1 Credit at $22.90</div> --> <div class="credit-price">1 Credit at $22.90</div> -->
@ -74,7 +74,7 @@
</div> </div>
<div class="col-lg-6 d-flex justify-content-end align-items-start"> <div class="col-lg-6 d-flex justify-content-end align-items-start">
<div class="order-total"><span class="price-symbol">$</span><?php echo $val['cost']; ?></div> <div class="order-total"><span class="price-symbol">$</span><?php echo $val['costSum']; ?></div>
</div> </div>
<?php } ?> <?php } ?>
</div> </div>

View File

@ -0,0 +1,77 @@
<!DOCTYPE html>
<html lang="en-US">
<head>
<title>Payment Failed - Golf Evolution</title>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="icon" href="<?= base_url()."/public"; ?>/assets/member_images/favicon.png" sizes="192x192" />
<link rel="apple-touch-icon" href="<?= base_url()."/public"; ?>/assets/member_images/favicon.png" />
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="<?= base_url()."/public"; ?>/assets/member_css/front-style.css">
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.4/jquery.min.js"></script>
<script src="<?= base_url()."/public"; ?>/assets/member_js/ajax.js"></script>
</head>
<body class="payment">
<?php include 'member_layout/header.php' ?>
<section>
<div class="container">
<div class="row">
<div class="col-lg-2"></div>
<div class="col-lg-8">
<div class="payment-box">
<div class="row payment-head">
<div class="col-lg-12">
<div>
<img src="<?= base_url()."/public"; ?>/assets/member_images/failed_Icon.png" alt="" width="60" height="60"/>
<h1 style="color: red">Payment Failed!</h1>
<!-- <p>The order confirmation has been sent to your registered mail id</p> -->
</div>
</div>
</div>
<div class="row aside">
<div class="col-lg-12">
<div class="aside-content">
<div class="trans-id label">Order Id</div>
<div class="trans-id"><?= $order_id; ?></div>
</div>
<div class="aside-content">
<div class="trans-date label">Transactions Date</div>
<div class="trans-date"><?= $formattedDate; ?></div>
</div>
<div class="aside-content aside-content-last">
<div class="trans-method label">Payment Failed Details</div>
<div class="trans-method"><?= $detail; ?> </div>
</div>
</div>
</div>
<div class="row dashboard">
<div class="col-lg-4"></div>
<div class="col-lg-4">
<a href="<?= base_url('member_home'); ?>">Return to Dashboard</a>
</div>
<div class="col-lg-4"></div>
</div>
</div>
</div>
<div class="col-lg-2"></div>
</div>
</div>
</section>
<?php include 'member_layout/footer.php' ?>
</body>
</html>