200 lines
No EOL
6.8 KiB
PHP
200 lines
No EOL
6.8 KiB
PHP
<?php
|
|
namespace App\Services;
|
|
|
|
|
|
use App\Models\ShoppingOrderMargin;
|
|
use App\Models\UserCreditMargin;
|
|
use App\User;
|
|
use Carbon;
|
|
|
|
class UserMarign
|
|
{
|
|
|
|
public static function getMontlyPrice(User $user, $date = null, $format = false){
|
|
|
|
$now = $date ? Carbon::parse($date) : Carbon::now();
|
|
$startDay = $now->startOfMonth()->toDateString();
|
|
$endDay = $now->endOfMonth()->toDateString();
|
|
|
|
$sum_net_amount = ShoppingOrderMargin::whereUserId($user->id)
|
|
->whereBetween('from', [$startDay, $endDay])
|
|
->wherePaid(true)
|
|
->whereCancellation(false)
|
|
->sum('net_price');
|
|
if($format){
|
|
$sum_net_amount = Util::formatNumber($sum_net_amount);
|
|
}
|
|
return $sum_net_amount;
|
|
}
|
|
|
|
public static function getMontlyPriceOpen(User $user, $date = null, $format = false){
|
|
|
|
$now = $date ? Carbon::parse($date) : Carbon::now();
|
|
$startDay = $now->startOfMonth()->toDateString();
|
|
$endDay = $now->endOfMonth()->toDateString();
|
|
|
|
$sum_net_amount = ShoppingOrderMargin::whereUserId($user->id)
|
|
->whereBetween('from', [$startDay, $endDay])
|
|
->wherePaid(false)
|
|
->whereCancellation(false)
|
|
->sum('net_price');
|
|
if($format){
|
|
$sum_net_amount = Util::formatNumber($sum_net_amount);
|
|
}
|
|
return $sum_net_amount;
|
|
}
|
|
|
|
public static function getMontlyAmount(User $user, $date = null, $format = false){
|
|
|
|
$now = $date ? Carbon::parse($date) : Carbon::now();
|
|
$startDay = $now->startOfMonth()->toDateString();
|
|
$endDay = $now->endOfMonth()->toDateString();
|
|
|
|
$sum_net_amount = ShoppingOrderMargin::whereUserId($user->id)
|
|
->whereBetween('from', [$startDay, $endDay])
|
|
->wherePaid(true)
|
|
->whereCancellation(false)
|
|
->sum('net_amount');
|
|
if($format){
|
|
$sum_net_amount = Util::formatNumber($sum_net_amount);
|
|
}
|
|
|
|
return $sum_net_amount;
|
|
}
|
|
|
|
|
|
public static function getMontlyPartnerCommission(User $user, $date = null, $format = false){
|
|
|
|
//$now = $date ? Carbon::parse($date) : Carbon::now();
|
|
$start = Carbon::parse('01.01.2021');
|
|
$end = Carbon::now();
|
|
$startDay = $start->startOfMonth()->toDateString();
|
|
$endDay = $end->endOfMonth()->toDateString();
|
|
|
|
$sum_net_amount = ShoppingOrderMargin::whereMSponsorId($user->id)
|
|
->whereBetween('from', [$startDay, $endDay])
|
|
->wherePaid(true)
|
|
->whereCancellation(false)
|
|
->sum('net_partner_commission');
|
|
if($format){
|
|
$sum_net_amount = Util::formatNumber($sum_net_amount);
|
|
}
|
|
|
|
return $sum_net_amount;
|
|
}
|
|
|
|
|
|
public static function getMontlyPartnerCommissionOpen(User $user, $date = null, $format = false){
|
|
|
|
//$now = $date ? Carbon::parse($date) : Carbon::now();
|
|
$start = Carbon::parse('01.01.2021');
|
|
$end = Carbon::now();
|
|
$startDay = $start->startOfMonth()->toDateString();
|
|
$endDay = $end->endOfMonth()->toDateString();
|
|
|
|
$sum_net_amount = ShoppingOrderMargin::whereMSponsorId($user->id)
|
|
->whereBetween('from', [$startDay, $endDay])
|
|
->wherePaid(true)
|
|
->whereCancellation(false)
|
|
->wherePartnerCommissionPaid(false)
|
|
->where('partner_commission_pending_to', '<', Carbon::now())
|
|
->sum('net_partner_commission');
|
|
if($format){
|
|
$sum_net_amount = Util::formatNumber($sum_net_amount);
|
|
}
|
|
return $sum_net_amount;
|
|
}
|
|
|
|
public static function getMontlyPartnerCommissionOpenByID($user_id, $date = null, $format = false, $addUserCreditMargin = false){
|
|
|
|
$sum_net_amount = ShoppingOrderMargin::whereMSponsorId($user_id)
|
|
->wherePaid(true)
|
|
->whereCancellation(false)
|
|
->wherePartnerCommissionPaid(false)
|
|
->where('partner_commission_pending_to', '<', Carbon::now())
|
|
->sum('net_partner_commission');
|
|
if($addUserCreditMargin){
|
|
$sum_net_credit = UserCreditMargin::whereUserId($user_id)
|
|
->wherePaid(false)
|
|
->sum('credit');
|
|
$sum_net_amount += $sum_net_credit;
|
|
}
|
|
|
|
if($format){
|
|
$sum_net_amount = Util::formatNumber($sum_net_amount);
|
|
}
|
|
|
|
return $sum_net_amount;
|
|
}
|
|
|
|
public static function getMontlyPartnerCommissionPending(User $user, $date = null, $format = false){
|
|
|
|
//$now = $date ? Carbon::parse($date) : Carbon::now();
|
|
$start = Carbon::parse('01.01.2021');
|
|
$end = Carbon::now();
|
|
$startDay = $start->startOfMonth()->toDateString();
|
|
$endDay = $end->endOfMonth()->toDateString();
|
|
|
|
$sum_net_amount = ShoppingOrderMargin::whereMSponsorId($user->id)
|
|
->whereBetween('from', [$startDay, $endDay])
|
|
->wherePaid(true)
|
|
->whereCancellation(false)
|
|
->wherePartnerCommissionPaid(false)
|
|
->where('partner_commission_pending_to', '>=', Carbon::now())
|
|
->sum('net_partner_commission');
|
|
if($format){
|
|
$sum_net_amount = Util::formatNumber($sum_net_amount);
|
|
}
|
|
|
|
return $sum_net_amount;
|
|
}
|
|
|
|
public static function getMontlyPartnerCommissionPendingByID($user_id, $date = null, $format = false){
|
|
|
|
$sum_net_amount = ShoppingOrderMargin::whereMSponsorId($user_id)
|
|
->wherePaid(true)
|
|
->whereCancellation(false)
|
|
->wherePartnerCommissionPaid(false)
|
|
->where('partner_commission_pending_to', '>=', Carbon::now())
|
|
->sum('net_partner_commission');
|
|
if($format){
|
|
$sum_net_amount = Util::formatNumber($sum_net_amount);
|
|
}
|
|
|
|
return $sum_net_amount;
|
|
}
|
|
|
|
|
|
public static function getOrderFromPartnerCommissionByID($user_id){
|
|
|
|
$ShoppingOrderMargins = ShoppingOrderMargin::whereMSponsorId($user_id)
|
|
->wherePaid(true)
|
|
->whereCancellation(false)
|
|
->wherePartnerCommissionPaid(false)
|
|
->where('partner_commission_pending_to', '<', Carbon::now())
|
|
->get();
|
|
|
|
return $ShoppingOrderMargins;
|
|
}
|
|
|
|
public static function getUserCreditMarginByID($user_id){
|
|
|
|
$UserCreditMargin = UserCreditMargin::whereUserId($user_id)
|
|
->wherePaid(false)
|
|
->get();
|
|
|
|
return $UserCreditMargin;
|
|
}
|
|
|
|
public static function getOrderFromPartnerCommissionPendingByID($user_id){
|
|
|
|
$ShoppingOrderMargins = ShoppingOrderMargin::whereMSponsorId($user_id)
|
|
->wherePaid(true)
|
|
->whereCancellation(false)
|
|
->wherePartnerCommissionPaid(false)
|
|
->where('partner_commission_pending_to', '>=', Carbon::now())
|
|
->get();
|
|
|
|
return $ShoppingOrderMargins;
|
|
}
|
|
} |