Merge branch 'uat' of bitbucket.org:venbainformationtechnology/vb_book into uat

This commit is contained in:
heama 2023-10-06 10:16:04 +05:30
commit 330f9a19bb
3 changed files with 152 additions and 102 deletions

View File

@ -200,13 +200,16 @@ class ApiIntegration extends ResourceController
$page_count = NULL;
$genre = NULL;
$author = NULL;
$category = 1; // Book
$attributes = $records['attributes'];
$categories = $records['categories'];
if (count($categories) > 0) {
$categoryNames = [];
foreach ($categories as $category) {
if (isset($category->name) && $category->name != "") {
$categoryNames[] = $category->name;
if($category->name !== "Membership"){
$categoryNames[] = $category->name; }
else{ $category = 2; }
}
}
if (!empty($categoryNames)) {
@ -241,6 +244,7 @@ class ApiIntegration extends ResourceController
$book_data['description'] = isset($records['description']) ? $records['description'] : NULL;
$book_data['short_description'] = isset($records['short_description']) ? $records['short_description'] : NULL;
$book_data['page_count'] = $page_count;
$book_data['category'] = $category;
// $book_data['price'] = (isset($records['sale_price']) && $records['sale_price'] != '') ? $records['sale_price'] : ((isset($records['regular_price']) && $records['regular_price'] != '') ? $records['regular_price'] : NULL);
$book_data['price'] = (isset($records['sale_price']) && $records['sale_price'] != '') ? $records['sale_price'] : ((isset($records['regular_price']) && $records['regular_price'] != '') ? $records['regular_price'] : ((isset($records['price']) && $records['price'] != '') ? $records['price'] : NULL));
$book_data['sku'] = isset($records['sku']) ? $records['sku'] : NULL;
@ -651,15 +655,18 @@ class ApiIntegration extends ResourceController
$invoice_data['tax']=number_format($tax, 2);
$invoice_data['discount']=number_format($lineitems_discount, 2);
$invoice_data['total_amount']= number_format($total, 2);
$invoice_data['payment_status']="";
$invoice_data['payment_status']=$records['status'];
$invoice_data['order_number']=$records['order_key'];
$invoice_data['payment_method']=$records['payment_method'];
$invoice_data['payment_method']=$records['payment_method_title'];
$invoice_data['event_id']=NULL;
$invoice_data['business_id']=1;
$invoice_data['shipping_address']=$shipping_addr;
$invoice_data['shipping_address_id']=NULL;
$invoice_data['billing_address']=$billing_addr;
$invoice_data['billing_address_id'] =NULL;
$invoice_data['shipping_charge'] = isset($records['shipping_total'])?$records['shipping_total']:NULL;
$invoice_data['notes'] = isset($records['customer_note'])?$records['customer_note']:NULL;
if ((int)$countAll == 0) {
$insert_result = $api_model->insertData('invoice', $invoice_data);
@ -681,19 +688,22 @@ class ApiIntegration extends ResourceController
}
$line_item_data = [];
$shipping_line_item_data = [];
$i = 0;$j=0;
$subscription_data = [];
//$shipping_line_item_data = [];
$h=0;$i = 0;//$j=0;
$this->logger->info("Api SaveSalesDetails : Invoice items count : " .count($lineitems_array));
if (count($lineitems_array) > 0 && $last_insert_invoice_id != "") {
$extensive_correspondence .= " Its have " . count($lineitems_array) . " LineItems ,";
$basic_message .= " Its have " . count($lineitems_array) . " LineItems";
$this->logger->info("Api SaveSalesDetails : ".$extensive_correspondence);
$where = ['invoice_id' => (int)$last_insert_invoice_id, 'isactive' => 1, 'quantity != '=>0];
$existing_invoiceitem = $api_model->getData('invoiceitems', $where);
$request_invoiceitem = (array)$lineitems_array;
$filteringExistingInvoiceItemWpApiId = [];
$filteringRequestedInvoiceItemWpApiId = [];
$filteringRequestedSKUWpId = [];
$commonElements = [];
if (!empty($existing_invoiceitem)) {
@ -733,6 +743,7 @@ class ApiIntegration extends ResourceController
foreach ($lineitems_array as $ii) {
$invoiceItemsId = null;
$skuId = null;
// Iterate through the array and find the 'book_img_id' based on 'wp_api_img_id'
if (!empty($lastestActiveInvoiceitemsData)) {
@ -747,107 +758,132 @@ class ApiIntegration extends ResourceController
$where = ['wp_api_product_id' => (int)$ii->product_id];
$get_book_data_based_on_wp_product_id = $api_model->getData('books', $where);
$line_item_data[$i]['product'] = (!empty($get_book_data_based_on_wp_product_id) ? $get_book_data_based_on_wp_product_id[0]->book_id : NULL);
$line_item_data[$i]['quantity'] =(float)$ii->quantity;
$line_item_data[$i]['unit_price'] =(float)$ii->price;
$line_item_data[$i]['tax'] =(float)$ii->total_tax;
$line_item_data[$i]['subtotal'] =(float)$ii->total;
$line_item_data[$i]['invoice_child_id'] = $invoiceItemsId;
$line_item_data[$i]['wp_api_line_items_id'] = $ii->id;
$line_item_data[$i]['invoice_id'] = $last_insert_invoice_id;
$this->logger->info("Api SaveSalesDetails : Invoiceitem Data inx = $i ");
$i++;
$skuId = $ii->sku;
$this->logger->info("Api SaveSalesDetails : Lineitem SKU ID = " .$skuId);
$where = ['online_sku' => $skuId, 'isactive' => 1];
$existing_schemes = $api_model->getData('schemes', $where);
if(!empty($skuId) && !empty($existing_schemes)){
$duration = $existing_schemes[0]->duration;
$fromDateTimestamp = strtotime($records['date_created']);
$toDateTimestamp = strtotime("+$duration months", $fromDateTimestamp);
$fromDate = date("Y-m-d", strtotime($records['date_created']));
$toDate = date("Y-m-d", $toDateTimestamp);
$subscription_data[$h]['scheme_id'] = $existing_schemes[0]->scheme_id;
$subscription_data[$h]['customer_id'] = $records['customer_id'];
$subscription_data[$h]['invoice_id'] = $invoice_id;
$subscription_data[$h]['from_subscription'] = $fromDate;
$subscription_data[$h]['to_subscription'] = $toDate;
$subscription_data[$h]['mode'] = "From WordPress Data";
$h++;
$this->logger->info("Api SaveSalesDetails : Subscription Data inx = $h Request data = ".json_encode($subscription_data));
}else{
$line_item_data[$i]['product'] = (!empty($get_book_data_based_on_wp_product_id) ? $get_book_data_based_on_wp_product_id[0]->book_id : NULL);
$line_item_data[$i]['quantity'] =(float)$ii->quantity;
$line_item_data[$i]['unit_price'] =(float)$ii->price;
$line_item_data[$i]['tax'] =(float)$ii->total_tax;
$line_item_data[$i]['subtotal'] =(float)$ii->total;
$line_item_data[$i]['invoice_child_id'] = $invoiceItemsId;
$line_item_data[$i]['wp_api_line_items_id'] = $ii->id;
$line_item_data[$i]['invoice_id'] = $last_insert_invoice_id;
$i++;
$this->logger->info("Api SaveSalesDetails : Invoiceitem Data inx = $i Request data = ".json_encode($line_item_data));
}
} // line item loop closed
$extensive_correspondence .= (!empty($line_item_data) ? $api_model->insertAndUpdateChildDetails($line_item_data, 'invoiceitems', 'invoice_child_id') : "");
$extensive_correspondence .= (!empty($subscription_data) ? $api_model->insertAndUpdateChildDetails($subscription_data, 'subscription', 'sub_id') : "");
$this->logger->info("Api SaveSalesDetails : ".$extensive_correspondence);
}
else{
$this->logger->error("Api SaveSalesDetails : Err = Invoice items Data Not Found");
}
$shipping_lineitems_array = $records['shipping_lines'];
$this->logger->info("Api SaveSalesDetails : Shipping Invoice items count : " .count($shipping_lineitems_array));
if (count($shipping_lineitems_array) > 0 && $last_insert_invoice_id != "") {
$extensive_correspondence .= " Its have " . count($shipping_lineitems_array) . " shipping details ,";
$basic_message .= " and Its have " . count($shipping_lineitems_array) . " shipping details";
$this->logger->info("Api SaveSalesDetails : ".$extensive_correspondence);
$shipping_where = ['invoice_id' => (int)$last_insert_invoice_id, 'isactive' => 1,'quantity'=>0];
$existing_shipping_invoiceitem = $api_model->getData('invoiceitems', $shipping_where);
$request_shipping_invoiceitem = (array)$shipping_lineitems_array;
// $shipping_lineitems_array = $records['shipping_lines'];
// $this->logger->info("Api SaveSalesDetails : Shipping Invoice items count : " .count($shipping_lineitems_array));
// if (count($shipping_lineitems_array) > 0 && $last_insert_invoice_id != "") {
// $extensive_correspondence .= " Its have " . count($shipping_lineitems_array) . " shipping details ,";
// $basic_message .= " and Its have " . count($shipping_lineitems_array) . " shipping details";
// $this->logger->info("Api SaveSalesDetails : ".$extensive_correspondence);
// $shipping_where = ['invoice_id' => (int)$last_insert_invoice_id, 'isactive' => 1,'quantity'=>0];
// $existing_shipping_invoiceitem = $api_model->getData('invoiceitems', $shipping_where);
// $request_shipping_invoiceitem = (array)$shipping_lineitems_array;
$filteringExistingShippingInvoiceItemWpApiId = [];
$filteringRequestedShippingInvoiceItemWpApiId = [];
$commonShippingElements = [];
if (!empty($existing_shipping_invoiceitem)) {
// $filteringExistingShippingInvoiceItemWpApiId = [];
// $filteringRequestedShippingInvoiceItemWpApiId = [];
// $commonShippingElements = [];
// if (!empty($existing_shipping_invoiceitem)) {
for ($z = 0; $z < count($request_shipping_invoiceitem); $z++) {
$filteringRequestedShippingInvoiceItemWpApiId[$z] = $request_shipping_invoiceitem[$z]->id;
}
for ($y = 0; $y < count($existing_shipping_invoiceitem); $y++) {
$filteringExistingShippingInvoiceItemWpApiId[$y] = $existing_shipping_invoiceitem[$y]->wp_api_line_items_id;
}
// for ($z = 0; $z < count($request_shipping_invoiceitem); $z++) {
// $filteringRequestedShippingInvoiceItemWpApiId[$z] = $request_shipping_invoiceitem[$z]->id;
// }
// for ($y = 0; $y < count($existing_shipping_invoiceitem); $y++) {
// $filteringExistingShippingInvoiceItemWpApiId[$y] = $existing_shipping_invoiceitem[$y]->wp_api_line_items_id;
// }
if (!empty($filteringExistingShippingInvoiceItemWpApiId)) {
$this->logger->info("Api SaveSalesDetails : Incoming InvoiceItem (Shipping) Wp Id " .implode(",",$filteringRequestedShippingInvoiceItemWpApiId));
$this->logger->info("Api SaveSalesDetails : Existing InvoiceItem (Shipping) Wp Id " .implode(",",$filteringExistingShippingInvoiceItemWpApiId));
$A = $filteringExistingShippingInvoiceItemWpApiId;
$B = $filteringRequestedShippingInvoiceItemWpApiId;
// if (!empty($filteringExistingShippingInvoiceItemWpApiId)) {
// $this->logger->info("Api SaveSalesDetails : Incoming InvoiceItem (Shipping) Wp Id " .implode(",",$filteringRequestedShippingInvoiceItemWpApiId));
// $this->logger->info("Api SaveSalesDetails : Existing InvoiceItem (Shipping) Wp Id " .implode(",",$filteringExistingShippingInvoiceItemWpApiId));
// $A = $filteringExistingShippingInvoiceItemWpApiId;
// $B = $filteringRequestedShippingInvoiceItemWpApiId;
$missingShippingValues = array_diff($A, $B); //Find difference element in Existing Images only
$commonShippingElements = array_intersect($A, $B);
if (!empty($missingShippingValues)) {
$this->logger->info("Api SaveSalesDetails : Missing InvoiceItem (shipping) Wp Id " .implode(",",$missingShippingValues)." Are inactived");
$inactive_where = ['isactive' => 1, 'invoice_id' => (int)$last_insert_invoice_id];
$inactive_whereIn[0] = 'wp_api_line_items_id';
$inactive_whereIn[1] = $missingShippingValues;
$api_model->inactiveMissingDetails('invoiceitems', $inactive_where, $inactive_whereIn);
}
}
}
// $missingShippingValues = array_diff($A, $B); //Find difference element in Existing Images only
// $commonShippingElements = array_intersect($A, $B);
// if (!empty($missingShippingValues)) {
// $this->logger->info("Api SaveSalesDetails : Missing InvoiceItem (shipping) Wp Id " .implode(",",$missingShippingValues)." Are inactived");
// $inactive_where = ['isactive' => 1, 'invoice_id' => (int)$last_insert_invoice_id];
// $inactive_whereIn[0] = 'wp_api_line_items_id';
// $inactive_whereIn[1] = $missingShippingValues;
// $api_model->inactiveMissingDetails('invoiceitems', $inactive_where, $inactive_whereIn);
// }
// }
// }
$where = ['invoice_id' => (int)$last_insert_invoice_id, 'isactive' => 1,'quantity'=>0];
if (!empty($commonShippingElements)) {
$whereIn[0] = 'wp_api_line_items_id';
$whereIn[1] = $commonShippingElements;
} else {
$whereIn = null;
}
$lastestActiveShippingInvoiceitemsData = $api_model->getData('invoiceitems', $where, $whereIn);
$this->logger->info("Api SaveSalesDetails : lastest Active Invoice Item (shipping) Data Count " .count($lastestActiveShippingInvoiceitemsData));
// $where = ['invoice_id' => (int)$last_insert_invoice_id, 'isactive' => 1,'quantity'=>0];
// if (!empty($commonShippingElements)) {
// $whereIn[0] = 'wp_api_line_items_id';
// $whereIn[1] = $commonShippingElements;
// } else {
// $whereIn = null;
// }
// $lastestActiveShippingInvoiceitemsData = $api_model->getData('invoiceitems', $where, $whereIn);
// $this->logger->info("Api SaveSalesDetails : lastest Active Invoice Item (shipping) Data Count " .count($lastestActiveShippingInvoiceitemsData));
foreach ($shipping_lineitems_array as $sii) {
$shippingInvoiceItemsId = null;
// foreach ($shipping_lineitems_array as $sii) {
// $shippingInvoiceItemsId = null;
// Iterate through the array and find the 'book_img_id' based on 'wp_api_img_id'
if (!empty($lastestActiveShippingInvoiceitemsData)) {
foreach ($lastestActiveShippingInvoiceitemsData as $item) {
if ($item->wp_api_line_items_id == $sii->id) {
$shippingInvoiceItemsId = $item->invoice_child_id;
break; // Found the match, no need to continue looping
}
}
}
// // Iterate through the array and find the 'book_img_id' based on 'wp_api_img_id'
// if (!empty($lastestActiveShippingInvoiceitemsData)) {
// foreach ($lastestActiveShippingInvoiceitemsData as $item) {
// if ($item->wp_api_line_items_id == $sii->id) {
// $shippingInvoiceItemsId = $item->invoice_child_id;
// break; // Found the match, no need to continue looping
// }
// }
// }
$where = ['title' => (int)$sii->method_title];
$get_book_data_based_on_title = $api_model->getData('books', $where);
// $where = ['title' => (int)$sii->method_title];
// $get_book_data_based_on_title = $api_model->getData('books', $where);
$shipping_line_item_data[$j]['product'] = (!empty($get_book_data_based_on_title) ? $get_book_data_based_on_title[0]->book_id : NULL);
$shipping_line_item_data[$j]['quantity'] = 0;
$shipping_line_item_data[$j]['unit_price'] =0;
$shipping_line_item_data[$j]['tax'] =(float)$sii->total_tax;
$shipping_line_item_data[$j]['subtotal'] =(float)$sii->total;
$shipping_line_item_data[$j]['invoice_child_id'] = $shippingInvoiceItemsId;
$shipping_line_item_data[$j]['wp_api_line_items_id'] = $sii->id;
$shipping_line_item_data[$j]['invoice_id'] = $last_insert_invoice_id;
$this->logger->info("Api SaveSalesDetails : Invoiceitem Data For Shipping inx = $j ");
$j++;
} // line item loop closed
$extensive_correspondence .= (!empty($shipping_line_item_data) ? $api_model->insertAndUpdateChildDetails($shipping_line_item_data, 'invoiceitems', 'invoice_child_id') : "");
$this->logger->info("Api SaveSalesDetails : ".$extensive_correspondence);
}
else{
$this->logger->error("Api SaveSalesDetails : Err = Invoice items (Shipping) Data Not Found");
}
// $shipping_line_item_data[$j]['product'] = (!empty($get_book_data_based_on_title) ? $get_book_data_based_on_title[0]->book_id : NULL);
// $shipping_line_item_data[$j]['quantity'] = 0;
// $shipping_line_item_data[$j]['unit_price'] =0;
// $shipping_line_item_data[$j]['tax'] =(float)$sii->total_tax;
// $shipping_line_item_data[$j]['subtotal'] =(float)$sii->total;
// $shipping_line_item_data[$j]['invoice_child_id'] = $shippingInvoiceItemsId;
// $shipping_line_item_data[$j]['wp_api_line_items_id'] = $sii->id;
// $shipping_line_item_data[$j]['invoice_id'] = $last_insert_invoice_id;
// $this->logger->info("Api SaveSalesDetails : Invoiceitem Data For Shipping inx = $j ");
// $j++;
// } // line item loop closed
// $extensive_correspondence .= (!empty($shipping_line_item_data) ? $api_model->insertAndUpdateChildDetails($shipping_line_item_data, 'invoiceitems', 'invoice_child_id') : "");
// $this->logger->info("Api SaveSalesDetails : ".$extensive_correspondence);
// }
// else{
// $this->logger->error("Api SaveSalesDetails : Err = Invoice items (Shipping) Data Not Found");
// }
$response = ['status' => 200, 'message' => $basic_message ,'indetails' => $extensive_correspondence];
}
else {

View File

@ -52,7 +52,7 @@
</td>
<td valign="middle" width="70%" style="padding:16px;">
<div><a style="color: rgba(221, 72, 20, 1);" href="https://vijayabharathambooks.com/books/pasumpon-thevar-potriya-rss/" target="_blank">
<span style="font-size : 15px; margin : 0px; padding : 0px; font-weight : 400; line-height : 18.2px; "><?= $ii->title; ?><small> (#VB-65)</small></span>
<span style="font-size : 15px; margin : 0px; padding : 0px; font-weight : 400; line-height : 18.2px; "><?= $ii->title; ?></span>
</a><br>
</div>
<div>
@ -148,13 +148,13 @@
<h1 style="font-size: 24px; color: #333;">Billing Address</h1>
<div style="font-weight : 300; color : rgb(68,68,68); line-height : 22px; ">
<p>
<span>ARAVIND S<br></span>
<span><?= $recipient_name; ?><br></span>
<span>22/2, SriKrishna Apartments<br> </span>
<span>1st Street, Subramania Nagar, Kodambakkam<br> </span>
<span>CHENNAI 600024<br></span>
<span>Tamil Nadu<br></span>
<span><a href="tel:+919445062922" style="color : rgb(68,68,68); font-weight : 300; " target="_blank">+919445062922</a><br></span>
<span><a href="mailto:arasubu@gmail.com" style="color : rgb(68,68,68); font-weight : 300; " target="_blank">arasubu@gmail.com</a><br></span>
<span><a style="color : rgb(68,68,68); font-weight : 300; " target="_blank">+919445062922</a><br></span>
<span><a style="color : rgb(68,68,68); font-weight : 300; " target="_blank">arasubu@gmail.com</a><br></span>
</p>
</div>
@ -164,13 +164,13 @@
<h1 style="font-size: 24px; color: #333;">Shipping Address</h1>
<div style="text-align: left; font-weight : 300; color : rgb(68,68,68); line-height : 22px;">
<p>
<span>ARAVIND S<br></span>
<span><?= $recipient_name; ?><br></span>
<span>22/2, SriKrishna Apartments<br> </span>
<span>1st Street, Subramania Nagar, Kodambakkam<br> </span>
<span>CHENNAI 600024<br></span>
<span>Tamil Nadu<br></span>
<span><a href="tel:+919445062922" style="color : rgb(68,68,68); font-weight : 300; " target="_blank">+919445062922</a><br></span>
<span><a href="mailto:arasubu@gmail.com" style="color : rgb(68,68,68); font-weight : 300; " target="_blank">arasubu@gmail.com</a><br></span>
<span><a style="color : rgb(68,68,68); font-weight : 300; " target="_blank"><?= $recipient_mobile;?></a><br></span>
<span><a style="color : rgb(68,68,68); font-weight : 300; " target="_blank"><?= $recipient_mobile;?></a><br></span>
</p>
</div>

View File

@ -28,22 +28,36 @@
</div><!-- /.modal -->
<!-- contact us modal content -->
<div id="contact-us" class="modal fade" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-lg modal-right">
<div class="modal-dialog modal-xl modal-right">
<div class="modal-content">
<div class="modal-header border-0">
<div class="modal-header border-0">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
</div>
<div class="modal-body">
<h4 class="mt-0 text-center" >CONTACT US</h4><br>
<ul class="social-list list-inline mt-1 mb-2" style="text-align:left; line-height : 44px;">
<h4 class="mt-0 text-center" >CONTACT US</h4><br>
<div class="modal-body">
<ul class="social-list list-inline mt-1 mb-2" style="text-align:left; line-height : 34px;">
<li><a href="javascript: void(0);" class="border-purple text-purple"><i class="mdi mdi-cellphone-android"></i> +91 89391 49466 </a></li>
<li><a href="javascript: void(0);" class="border-danger text-danger"><i class="mdi mdi-email-variant"></i> contact@vijayabharathambooks.com </a></li>
<li><a href="javascript: void(0);" class="border-secondary text-secondary"><i class="mdi mdi-badge-account-horizontal"><span class="text-center"> Sri Kasi, 12, M.V. Naidu Street, Chetpet, Chennai </span></i></a></li>
</ul>
<div class="text-center">
<iframe src="https://www.google.com/maps/embed?pb=!1m14!1m8!1m3!1d1943.2153606988807!2d80.24498103526862!3d13.071866380546599!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x0%3A0x7dfd98350be12c35!2sVijayabharatham%20Prasuram!5e0!3m2!1sen!2sin!4v1640691535042!5m2!1sen!2sin" width="270" height="340" style="border:0;" allowfullscreen="" loading="lazy"></iframe>
<iframe src="https://www.google.com/maps/embed?pb=!1m14!1m8!1m3!1d1943.2153606988807!2d80.24498103526862!3d13.071866380546599!3m2!1i1024!2i768!4f13.1!3m3!1m2!1s0x0%3A0x7dfd98350be12c35!2sVijayabharatham%20Prasuram!5e0!3m2!1sen!2sin!4v1640691535042!5m2!1sen!2sin" width="650" height="350" style="border:0;" allowfullscreen="" loading="lazy"></iframe>
</div>
</div>
<div class="text-center">
<ul class="social-list list-inline mb-0">
<li class="list-inline-item">
<a href="https://www.facebook.com/VijayabharathamPrasuram" target="_blank" class="social-list-item border-purple text-purple"><i class="mdi mdi-facebook"></i></a>
</li>
<li class="list-inline-item">
<a href="https://twitter.com/VPrasuram" target="_blank" class="social-list-item border-info text-info"><i class="mdi mdi-twitter"></i></a>
</li>
<li class="list-inline-item">
<a href="https://www.youtube.com/channel/UC-TRVAGrjSNMFgQU3sJSGdA" target="_blank" class="social-list-item border-danger text-danger"><i class="mdi mdi-youtube"></i></a>
</li>
</ul>
</div><!-- end -->
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
</div><!-- /.modal -->