added featured products

This commit is contained in:
franknstayn
2021-07-23 20:42:59 +08:00
parent 13509568eb
commit a6ea024725
6 changed files with 178 additions and 134 deletions

View File

@@ -161,10 +161,13 @@ class TeamStoreController extends Controller
$stores_array = $m->selectTeamstoreFilter($field, $sort_value);
}
$featured_products = $m->selectFeaturedProducts();
return view('merchbay.index')
->with('stores_array', $stores_array)
->with('keyword', $q)
->with('filter', $sort);
->with('filter', $sort)
->with('featured_products', $featured_products);
}
public function checkTeamStorePassword(Request $request)
@@ -233,6 +236,8 @@ class TeamStoreController extends Controller
$availableQty = null;
}
// $product_array[0]->ProductAvailableQty
// var_dump($store_array[0]->Id);
$store_products = $m->selectFeaturedProducts($store_array[0]->Id);
return view('teamstore-sublayouts.product-details')
->with('store_array', $store_array)
@@ -240,7 +245,8 @@ class TeamStoreController extends Controller
->with('thumbnails_array', $thumbnails_array)
->with('teams_array', $teams_array)
->with('sizes_array', $sizes_array)
->with('available_qty', $availableQty);
->with('available_qty', $availableQty)
->with('store_products', $store_products);
}
public function login(Request $request)

View File

@@ -1,7 +1,7 @@
<?php namespace App\Models\designer;
use Illuminate\Database\Eloquent\Model;
use DB;
use Illuminate\Support\Facades\DB;
class DesignerModel extends Model {

View File

@@ -1,241 +1,273 @@
<?php namespace App\Models\teamstore;
<?php
namespace App\Models\teamstore;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\DB;
class TeamStoreModel extends Model {
class TeamStoreModel extends Model
{
function selectAllTeamStore() // display all data from database
{
$i = DB::table('teamstores')
->where("IsActive", "true")
->orderBy('Id', 'DESC')
->paginate(16);
return $i;
->where("IsActive", "true")
->orderBy('Id', 'DESC')
->paginate(16);
return $i;
}
function selectTeamStoreProducts($field, $teamstoreId) // display all data from database
{
$i = DB::table('teamstore_products')
->where($field, $teamstoreId)
// ->orderBy('Ordering', 'ASC')
->orderBy('Ordering', 'ASC')->get();
return $i;
->where($field, $teamstoreId)
// ->orderBy('Ordering', 'ASC')
->orderBy('Ordering', 'ASC')->get();
return $i;
}
function selectTeamStoreProductByIdHash($id)
{
$i = DB::table('teamstore_products')
->where(DB::raw('md5(Id)') , $id)
->get();
return $i;
->where(DB::raw('md5(Id)'), $id)
->get();
return $i;
}
function selectTeamStore($field, $teamstoreURL)
function selectTeamStore($field, $teamstoreURL)
{
$i = DB::table('teamstores')
->where($field, $teamstoreURL)
->get();
return $i;
->where($field, $teamstoreURL)
->get();
return $i;
}
function checkStorePassword($storeid, $password)
function checkStorePassword($storeid, $password)
{
$i = DB::table('teamstores')
->where('Id', $storeid)
->where('Password', $password)
->get();
return $i;
->where('Id', $storeid)
->where('Password', $password)
->get();
return $i;
}
function selectTeamStoreGroupByCartKey($cartKey)
{
$i = DB::table('cart_tmp')
->where('CartKey', $cartKey)
->groupby('CartKey')
->get();
return $i;
}
function getProductThumbnails($productId){
$i = DB::table('teamstore_product_thumbnails')
->where('ProductId', $productId)
->orderby('Ordering', 'ASC')
->get();
->where('CartKey', $cartKey)
->groupby('CartKey')
->get();
return $i;
}
function insertTeamStoreProduct($item_details){
function getProductThumbnails($productId)
{
$i = DB::table('teamstore_product_thumbnails')
->where('ProductId', $productId)
->orderby('Ordering', 'ASC')
->get();
return $i;
}
function insertTeamStoreProduct($item_details)
{
$i = DB::table('teamstore_products')->insert($item_details);
$id = DB::getPdo()->lastInsertId();
return array(
'i' => $i,
'lastId' => $id
'i' => $i,
'lastId' => $id
);
}
function insertTeamStoreProductThumbnails($item_details){
function insertTeamStoreProductThumbnails($item_details)
{
$i = DB::table('teamstore_product_thumbnails')->insert($item_details);
return $i;
}
function getThumbnails($productId){
function getThumbnails($productId)
{
$i = DB::table('teamstore_product_thumbnails')
->where('ProductId', $productId)
->orderby('Ordering', 'ASC')
->get();
->where('ProductId', $productId)
->orderby('Ordering', 'ASC')
->get();
return $i;
}
function getTeams($productId){
function getTeams($productId)
{
$i = DB::table('teams')->where('ProductId', $productId)->get();
return $i;
}
function getSizes(){
function getSizes()
{
$i = DB::table('sizes')
->where('IsActive', 'TRUE')
->orderby('Ordering', 'ASC')
->get();
->where('IsActive', 'TRUE')
->orderby('Ordering', 'ASC')
->get();
return $i;
}
function getSizesByBracket($bracket){
function getSizesByBracket($bracket)
{
$i = DB::table('sizes')->select('Size', 'SizeDisplay')
->where('Bracket', $bracket)
->where('IsActive', 'TRUE')
->orderby('Ordering', 'ASC')
->get();
->where('Bracket', $bracket)
->where('IsActive', 'TRUE')
->orderby('Ordering', 'ASC')
->get();
return $i;
}
function insertToCart($data){
function insertToCart($data)
{
$i = DB::table('cart_tmp')->insert($data);
$id = DB::getPdo()->lastInsertId();
return array(
'i' => $i,
'lastId' => $id
'i' => $i,
'lastId' => $id
);
// return $i;
}
function selectDisplayCartThumb(){
function selectDisplayCartThumb()
{
$i = DB::table('teamstore_product_thumbnails')
->where('ImageClass', 'active')
->get();
->where('ImageClass', 'active')
->get();
return $i;
}
function myCart($cartKey){
function myCart($cartKey)
{
// echo $cartKey;
if($cartKey != ""){
if ($cartKey != "") {
$i = DB::table('cart_tmp')
->leftjoin('teamstore_voucher', 'cart_tmp.VoucherId', '=', 'teamstore_voucher.Id')
->select('cart_tmp.*', 'teamstore_voucher.VoucherCode', 'teamstore_voucher.VoucherType', 'teamstore_voucher.VoucherValue', 'teamstore_voucher.VoucherExpiryDate', 'teamstore_voucher.Status')
->where('cart_tmp.CartKey', $cartKey)
->get();
->leftjoin('teamstore_voucher', 'cart_tmp.VoucherId', '=', 'teamstore_voucher.Id')
->select('cart_tmp.*', 'teamstore_voucher.VoucherCode', 'teamstore_voucher.VoucherType', 'teamstore_voucher.VoucherValue', 'teamstore_voucher.VoucherExpiryDate', 'teamstore_voucher.Status')
->where('cart_tmp.CartKey', $cartKey)
->get();
// var_dump($i);
return $i;
return $i;
}
}
function myCartGroup($cartKey){
if($cartKey != ""){
function myCartGroup($cartKey)
{
if ($cartKey != "") {
$pdo = DB::connection()->getPdo();
$query = $pdo->prepare("SELECT *, COUNT(Id) AS qty, Price * SUM(Quantity) AS total_price FROM cart_tmp WHERE CartKey = :ck GROUP BY ProductId");
$query->execute([':ck'=>$cartKey]);
$query->execute([':ck' => $cartKey]);
$row = $query->fetchAll(\PDO::FETCH_OBJ);
return $row;
return $row;
}
}
function getSubtotal($cartKey){
function getSubtotal($cartKey)
{
$i = DB::table('cart_tmp')->select(DB::raw('SUM(Quantity * Price) AS Subtotal'))
->where('CartKey','=',$cartKey)
->get();
->where('CartKey', '=', $cartKey)
->get();
return $i;
}
function updateStoreItem($data, $url){
function updateStoreItem($data, $url)
{
$i = DB::table('teamstore_products')->where('ProductURL', $url)
->update($data);
return $i;
->update($data);
return $i;
}
function getSoldQty($productId){
function getSoldQty($productId)
{
$i = DB::table('orders')->select(DB::raw('SUM(Quantity) AS SoldQty'))
->where('ProductId', $productId)
->get();
return $i;
}
function selectVoucher($data){
$i = DB::table('teamstore_voucher')
->where(DB::raw('BINARY `VoucherCode`'), $data['voucher'])
->where('TeamStoreId', $data['store_id'])
->get();
->where('ProductId', $productId)
->get();
return $i;
}
function selectVoucherWhereIn($data){
function selectVoucher($data)
{
$i = DB::table('teamstore_voucher')
->whereIn('Id', $data)
->get();
->where(DB::raw('BINARY `VoucherCode`'), $data['voucher'])
->where('TeamStoreId', $data['store_id'])
->get();
return $i;
}
function updateVoucherValueInCart($data, $id){
function selectVoucherWhereIn($data)
{
$i = DB::table('teamstore_voucher')
->whereIn('Id', $data)
->get();
return $i;
}
function updateVoucherValueInCart($data, $id)
{
$i = DB::table('cart_tmp')
->where('Id', $id)
->update($data);
return $i;
->where('Id', $id)
->update($data);
return $i;
}
function selectTeamstoreSearch($field, $value, $keyword){
function selectTeamstoreSearch($field, $value, $keyword)
{
$i = DB::table('teamstores')
->where("StoreName", "LIKE","%$keyword%")
->where("IsActive", "true")
->orderby($field, $value)
->paginate(16);
->where("StoreName", "LIKE", "%$keyword%")
->where("IsActive", "true")
->orderby($field, $value)
->paginate(16);
return $i;
}
function selectTeamstoreFilter($field, $value){
function selectTeamstoreFilter($field, $value)
{
$i = DB::table('teamstores')
->where("IsActive", "true")
->orderby($field, $value)
->paginate(12);
->where("IsActive", "true")
->orderby($field, $value)
->paginate(12);
return $i;
}
function selectFeaturedProduct(){
$i = DB::table('teamstore_products')
->where("IsActive", "true")
// ->orderby($field, $value)
->paginate(12);
function selectFeaturedProducts($store_id = 0)
{
if($store_id == 0){
$i = DB::select("SELECT t.StoreUrl, tp.ProductName, tp.ProductPrice, tp.ProductURL, tpt.Image FROM teamstores AS t
INNER JOIN teamstore_products AS tp ON tp.TeamStoreId = t.Id
INNER JOIN teamstore_product_thumbnails as tpt ON tp.Id = tpt.ProductId
WHERE t.Password IS NULL AND t.IsHibernated IS NULL AND tpt.ImageClass = 'active' AND tp.PrivacyStatus = 'public'
ORDER BY RAND()
LIMIT 6");
} else{
$i = DB::select("SELECT t.StoreUrl, tp.ProductName, tp.ProductPrice, tp.ProductURL, tpt.Image FROM teamstores AS t
INNER JOIN teamstore_products AS tp ON tp.TeamStoreId = t.Id
INNER JOIN teamstore_product_thumbnails as tpt ON tp.Id = tpt.ProductId
WHERE t.Password IS NULL AND t.IsHibernated IS NULL AND tpt.ImageClass = 'active' AND tp.PrivacyStatus = 'public' AND t.Id = $store_id
ORDER BY RAND()
LIMIT 6");
}
return $i;
}
}