Book Category : ps

This commit is contained in:
VE10-Sanjeev 2023-12-20 12:04:05 +05:30
parent 911cd18af2
commit 9ae0afd089
2 changed files with 22 additions and 14 deletions

View File

@ -363,7 +363,7 @@ class ApiIntegration extends ResourceController
}
$book_image_data[$book_image_inx]['img_name'] =isset($img->name) && !empty($img->name) ? $img->name : NULL;
$book_image_data[$book_image_inx]['wp_img_url'] = isset($img->src) && !empty($img->src) ? $img->src : NULL;
$book_image_data[$book_image_inx]['is_cover'] = (!empty($bookImgId) && $book_image_inx == 0) ? 1 : 0 ;
$book_image_data[$book_image_inx]['is_cover'] = (!empty($bookImgId) && (int)$book_image_inx === 0) ? 1 : 0 ;
$book_image_data[$book_image_inx]['type'] = 2;
$book_image_data[$book_image_inx]['book_id'] = $last_insert_book_id;
$book_image_data[$book_image_inx]['isactive'] = 1;
@ -383,13 +383,13 @@ class ApiIntegration extends ResourceController
if ($last_insert_book_id != "") {
## To save/update categories master details
$this->save_categories_master_details($categories);
$extensive_correspondence .= " Its have " . count($categories) . " Categories";
$basic_message .= " And Its have " . count($categories) . " Categories";
$extensive_correspondence .= " Its have " . count($categories) . " Book-Categories";
$basic_message .= " And Its have " . count($categories) . " Book-Categories";
$this->logger->info("Api SaveBookDetails : ".$extensive_correspondence);
$master_categories = $api_model->getData('category', ['isactive' => 1]);
$this->logger->info("Api SaveBookDetails : total master categories count = ".count($master_categories));
$where = ['book_id' => (int)$last_insert_book_id, 'isactive' => 1 ];
$existing_categories = $api_model->getData('book_categories', $where);
$existing_categories = $api_model->getExistingBookCategories($where);
$this->logger->info("Api SaveBookDetails : existing book categories count = ".count($existing_categories)." Book_id = ".$last_insert_book_id);
$request_categories = (array)$categories;
$filtering_existing_categories_wpApiId = [];
@ -402,21 +402,21 @@ class ApiIntegration extends ResourceController
for ($z = 0; $z < count($request_categories); $z++) {
$filtering_requested_categories_wpApiId[$z] = $request_categories[$z]->id;
}
for ($y = 0; $y < count($master_categories); $y++) {
$filtering_existing_categories_wpApiId[$y] = $master_categories[$y]->wp_api_category_id;
for ($y = 0; $y < count($existing_categories); $y++) {
$filtering_existing_categories_wpApiId[$y] = $existing_categories[$y]->wp_api_category_id;
}
$filtering_existing_categories_wpApiId = array_diff($filtering_existing_categories_wpApiId, array(""));
if (!empty($filtering_requested_categories_wpApiId)) {
$this->logger->info("Api SaveBookDetails : Incoming Categories Wp Id " .implode(",",$filtering_requested_categories_wpApiId));
$this->logger->info("Api SaveBookDetails : Existing Categories Wp Id " .implode(",",$filtering_existing_categories_wpApiId));
$this->logger->info("Api SaveBookDetails : Incoming Book Categories Wp Id " .implode(",",$filtering_requested_categories_wpApiId));
$this->logger->info("Api SaveBookDetails : Existing Book Categories Wp Id " .implode(",",$filtering_existing_categories_wpApiId));
$A = $filtering_existing_categories_wpApiId;
$B = $filtering_requested_categories_wpApiId;
$missing_category_values = array_diff($A, $B); //Find difference element in Existing Images only
$common_category_element = array_intersect($A, $B);
$this->logger->info("Api SaveBookDetails : Missing Categories Wp Id " .implode(",",$missing_category_values)." Are inactived");
$this->logger->info("Api SaveBookDetails : Missing Book Categories Wp Id " .implode(",",$missing_category_values)." Are inactived");
if (!empty($missing_category_values)) {
$this->logger->info("Api SaveBookDetails : Missing Categories Wp Id " .implode(",",$missing_category_values)." Are inactived");
$this->logger->info("Api SaveBookDetails : Missing Book Categories Wp Id " .implode(",",$missing_category_values)." Are inactived");
$where1 = ['isactive' => 1];
$whereIn1[0] = 'wp_api_category_id';
$whereIn1[1] = array_filter($missing_category_values);
@ -424,7 +424,7 @@ class ApiIntegration extends ResourceController
for ($x = 0; $x < count($get_master_category_id_to_inactive); $x++) {
$book_categories_to_inactive[$x] = $get_master_category_id_to_inactive[$x]->id;
}
$this->logger->info("Api SaveBookDetails : Missing Categories Wp Id " .implode(",",$missing_category_values)." catgory pkid => ".implode(",",$book_categories_to_inactive). "Are inactived");
$this->logger->info("Api SaveBookDetails : Missing Book Categories Wp Id " .implode(",",$missing_category_values)." catgory pkid => ".implode(",",$book_categories_to_inactive). "Are inactived");
$where2 = ['isactive' => 1];
$whereIn2[0] = 'category_id';
$whereIn2[1] = $book_categories_to_inactive;
@ -443,8 +443,8 @@ class ApiIntegration extends ResourceController
$whereIn = null;
}
$get_master_category_based_WPid = $api_model->getData('category', $where, $whereIn);
$this->logger->info("Api SaveBookDetails : Common Categories Wp Id " .implode(",",$common_category_element)." Are already inserted data");
$this->logger->info("Api SaveBookDetails : available category data count = " .count($request_categories));
$this->logger->info("Api SaveBookDetails : Common Book Categories Wp Id " .implode(",",$common_category_element)." Are already inserted data");
$this->logger->info("Api SaveBookDetails : available Book Category data count = " .count($request_categories));
$book_categories_data = [];
$book_categories_inx = 0;
foreach ($categories as $cate) {
@ -471,7 +471,7 @@ class ApiIntegration extends ResourceController
$this->logger->info("Api SaveBookDetails : ".$extensive_correspondence);
} //category count closed
else{
$this->logger->error("Api SaveBookDetails : Err = Category Data Not Found");
$this->logger->error("Api SaveBookDetails : Err = Book Category Data Not Found");
}
$response = ['status' => 200, 'message' => $basic_message ,'indetails' => $extensive_correspondence];
} //if cond. closed

View File

@ -110,4 +110,12 @@ class ApiIntegrationModel extends Model
->getResultArray();
}
public function getExistingBookCategories($where){
$query = $this->db->table('book_categories')
->join('category', 'category.id = book_categories.category_id', 'left')
->select('category.*,book_categories.book_id,book_categories.category_id as book_categories_id');
$query->where($where);
return $query->get()->getResult();
}
}