171 lines
4.4 KiB
PHP
171 lines
4.4 KiB
PHP
<?php
|
|
|
|
namespace App\Models;
|
|
|
|
use CodeIgniter\Model;
|
|
|
|
|
|
class SchemeModel extends Model
|
|
{
|
|
protected $table = 'books';
|
|
protected $primaryKey = 'book_id';
|
|
protected $allowedFields = ['book_id ','title','sku','description','price','features','duration','business_id','updated_by','category','isactive','created_by'];
|
|
|
|
public function insertScheme($data)
|
|
{
|
|
return $this->insert($data);
|
|
}
|
|
|
|
|
|
public function getSchemeNamesAndDurationsByBusiness($business_id)
|
|
{
|
|
$builder = $this->builder();
|
|
$builder->select('books.book_id, books.title, books.price, books.duration, category.name as category_name');
|
|
$builder->join('book_categories', 'book_categories.book_id = books.book_id', 'left');
|
|
$builder->join('category', 'category.id = book_categories.category_id', 'left');
|
|
$builder->where('books.business_id', $business_id);
|
|
$builder->where('category.name', 'membership');
|
|
$builder->where('books.isactive', 1);
|
|
|
|
$query = $builder->get();
|
|
|
|
$schemes = [];
|
|
|
|
foreach ($query->getResult() as $row) {
|
|
$schemes[$row->book_id] = [
|
|
'title' => $row->title,
|
|
'price' => $row->price,
|
|
'duration' => $row->duration,
|
|
'category_name' => $row->category_name,
|
|
'book_id'=>$row->book_id
|
|
];
|
|
}
|
|
|
|
return $schemes;
|
|
}
|
|
public function getBooksAndImagesByBookId($id)
|
|
{
|
|
$builder = $this->db->table('books');
|
|
$builder->select('books.*, book_images.img_name, book_images.is_cover, book_images.type');
|
|
$builder->join('book_images', 'book_images.book_id = books.book_id', 'left');
|
|
$builder->where('books.book_id', $id);
|
|
|
|
$query = $builder->get();
|
|
|
|
return $query->getResultArray();
|
|
}
|
|
|
|
public function insertImage($imageData)
|
|
{
|
|
return $this->db->table('book_images')->insert($imageData);
|
|
}
|
|
|
|
|
|
|
|
|
|
// public function getSchemeDuration($schemeId)
|
|
// {
|
|
// $query = $this->select('duration')
|
|
// ->where('scheme_id', $schemeId)
|
|
// ->get();
|
|
|
|
// if ($query->getNumRows() === 1) {
|
|
// $row = $query->getRow();
|
|
// return $row->duration;
|
|
// } else {
|
|
// return null;
|
|
// }
|
|
// }
|
|
public function getSchemeNamesByBusiness($business_id)
|
|
{
|
|
$builder = $this->builder();
|
|
$builder->select('scheme_id, scheme_name');
|
|
$builder->where('business_id', $business_id);
|
|
|
|
$query = $builder->get();
|
|
|
|
$schemes = [];
|
|
|
|
foreach ($query->getResult() as $row) {
|
|
$schemes[$row->scheme_id] = $row->scheme_name;
|
|
}
|
|
|
|
return $schemes;
|
|
}
|
|
public function getSchemeNames()
|
|
{
|
|
$builder = $this->builder();
|
|
$builder->select('scheme_id, scheme_name');
|
|
$query = $builder->get();
|
|
|
|
$schemes =[];
|
|
foreach ($query->getResult() as $row) {
|
|
$schemes[$row->scheme_id] = $row->scheme_name;
|
|
}
|
|
|
|
return $schemes;
|
|
print_r($schemes);die();
|
|
}
|
|
|
|
public function getSchemeNameById($schemeId)
|
|
{
|
|
// Query the database to retrieve the scheme name by ID
|
|
$builder = $this->db->table('schemes');
|
|
$builder->select('scheme_name');
|
|
$builder->where('scheme_id', $schemeId);
|
|
|
|
$query = $builder->get();
|
|
|
|
// Check if a record was found
|
|
if ($query->getNumRows() > 0) {
|
|
$row = $query->getRow();
|
|
return $row->scheme_name;
|
|
} else {
|
|
return null; // Return null if no scheme with the given ID is found
|
|
}
|
|
}
|
|
public function getAllSchemes()
|
|
{
|
|
return $this->findAll();
|
|
}
|
|
public function updateImage($schemeId, $imageData)
|
|
{
|
|
$builder = $this->db->table('book_images');
|
|
$builder->set($imageData);
|
|
$builder->where('book_id', $schemeId);
|
|
$builder->update();
|
|
}
|
|
|
|
|
|
|
|
public function getData($table, $where = null, $whereIn = null)
|
|
{
|
|
$query = $this->db->table($table);
|
|
if ($where) {
|
|
$query->where($where);
|
|
}
|
|
if ($whereIn) {
|
|
// $query->whereIn($column_name,$missingValues)
|
|
$query->whereIn($whereIn[0], $whereIn[1]);
|
|
}
|
|
return $query->get()->getResult();
|
|
}
|
|
|
|
public function inactiveMissingDetails($table_name,$dataToUpdate,$where = null,$whereIn = null)
|
|
{
|
|
$this->db->table($table_name);
|
|
$query = $this->db->table($table_name);
|
|
if ($where) {
|
|
$query->where($where);
|
|
}
|
|
if ($whereIn) {
|
|
$query->whereIn($whereIn[0], $whereIn[1]);
|
|
}
|
|
return $query->update($dataToUpdate);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|