217 lines
8.5 KiB
PHP
217 lines
8.5 KiB
PHP
<?php
|
|
|
|
/**
|
|
* Created by Reliese Model.
|
|
*/
|
|
|
|
namespace App\Models;
|
|
|
|
use App\User;
|
|
use Carbon\Carbon;
|
|
use Illuminate\Database\Eloquent\Model;
|
|
use Illuminate\Database\Eloquent\Casts\AsArrayObject;
|
|
|
|
/**
|
|
* App\Models\UserBusiness
|
|
*
|
|
* @property int $id
|
|
* @property int $user_id
|
|
* @property int $month
|
|
* @property int $year
|
|
* @property int|null $b_structure_id
|
|
* @property int|null $m_level_id
|
|
* @property int|null $m_sponsor_id
|
|
* @property object|null $sponsor
|
|
* @property string|null $m_sponsor_name
|
|
* @property string|null $user_level_name
|
|
* @property bool $active_account
|
|
* @property \Illuminate\Support\Carbon|null $payment_account_date
|
|
* @property \Illuminate\Support\Carbon|null $active_date
|
|
* @property int|null $m_account
|
|
* @property string|null $email
|
|
* @property string|null $first_name
|
|
* @property string|null $last_name
|
|
* @property int|null $sales_volume_points
|
|
* @property int|null $sales_volume_points_shop
|
|
* @property int|null $sales_volume_points_sum
|
|
* @property float|null $sales_volume_total
|
|
* @property float|null $sales_volume_total_shop
|
|
* @property float|null $sales_volume_total_sum
|
|
* @property int|null $margin
|
|
* @property int|null $margin_shop
|
|
* @property int|null $qual_kp
|
|
* @property int|null $qual_pp
|
|
* @property int|null $total_pp
|
|
* @property int|null $total_qual_pp
|
|
* @property string|null $commission_lines_total
|
|
* @property float|null $commission_shop_sales
|
|
* @property float|null $commission_pp_total
|
|
* @property mixed|null $business_lines
|
|
* @property mixed|null $user_items
|
|
* @property array|null $qual_user_level
|
|
* @property \Illuminate\Support\Carbon|null $created_at
|
|
* @property \Illuminate\Support\Carbon|null $updated_at
|
|
* @property-read \App\Models\UserBusinessStructure|null $user_business_structure
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness newModelQuery()
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness newQuery()
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness query()
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereActiveAccount($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereActiveDate($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereBStructureId($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereBusinessLines($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereCommissionLinesTotal($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereCommissionShopSales($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereCommissionTeamTotal($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereCreatedAt($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereEmail($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereFirstName($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereId($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereLastName($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereMAccount($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereMLevelId($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereMSponsorId($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereMSponsorName($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereMargin($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereMarginShop($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereMonth($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness wherePaymentAccountDate($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereQualKp($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereQualTp($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereQualUserLevel($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereSalesVolumePoints($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereSalesVolumePointsShop($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereSalesVolumePointsSum($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereSalesVolumeTotal($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereSalesVolumeTotalShop($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereSalesVolumeTotalSum($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereSponsor($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereTotalQualTp($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereTotalTp($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereUpdatedAt($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereUserId($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereUserItems($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereUserLevelName($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereYear($value)
|
|
* @property array|null $next_qual_user_level
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereNextQualUserLevel($value)
|
|
* @property-read User $user
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereQualPp($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereTotalPp($value)
|
|
* @method static \Illuminate\Database\Eloquent\Builder|UserBusiness whereTotalQualPp($value)
|
|
* @mixin \Eloquent
|
|
*/
|
|
class UserBusiness extends Model
|
|
{
|
|
protected $table = 'user_businesses';
|
|
|
|
protected $casts = [
|
|
'user_id' => 'int',
|
|
'month' => 'int',
|
|
'year' => 'int',
|
|
'b_structure_id' => 'int',
|
|
'm_level_id' => 'int',
|
|
'active_account' => 'bool',
|
|
'm_account' => 'int',
|
|
'sales_volume_KP_points' => 'int',
|
|
'sales_volume_TP_points' => 'int',
|
|
'sales_volume_points_shop' => 'int',
|
|
'sales_volume_points_KP_sum' => 'int',
|
|
'sales_volume_points_TP_sum' => 'int',
|
|
'sales_volume_total' => 'float',
|
|
'sales_volume_total_shop' => 'float',
|
|
'sales_volume_total_sum' => 'float',
|
|
'payline_points' => 'int',
|
|
'payline_points_qual_kp' => 'int',
|
|
'margin' => 'float',
|
|
'margin_shop' => 'float',
|
|
'qual_kp' => 'int',
|
|
'qual_pp' => 'int',
|
|
'total_pp' => 'int',
|
|
'total_qual_pp' => 'int',
|
|
'commission_pp_total' => 'float',
|
|
'commission_growth_total' => 'float',
|
|
'commission_shop_sales' => 'float',
|
|
'qual_user_level' => 'array',
|
|
'qual_user_level_next' => 'array',
|
|
'next_qual_user_level' => 'array',
|
|
'next_can_user_level' => 'array',
|
|
'sponsor' => 'object',
|
|
'business_lines' => AsArrayObject::class,
|
|
'user_items' => AsArrayObject::class,
|
|
'version' => 'int',
|
|
];
|
|
|
|
protected $dates = [
|
|
'payment_account_date',
|
|
'active_date'
|
|
];
|
|
|
|
protected $fillable = [
|
|
'user_id',
|
|
'month',
|
|
'year',
|
|
'b_structure_id',
|
|
'm_level_id',
|
|
'sponsor',
|
|
'user_level_name',
|
|
'active_account',
|
|
'payment_account_date',
|
|
'active_date',
|
|
'm_account',
|
|
'email',
|
|
'first_name',
|
|
'last_name',
|
|
'sales_volume_KP_points',
|
|
'sales_volume_TP_points',
|
|
'sales_volume_points_shop',
|
|
'sales_volume_points_KP_sum',
|
|
'sales_volume_points_TP_sum',
|
|
'sales_volume_total',
|
|
'sales_volume_total_shop',
|
|
'sales_volume_total_sum',
|
|
'payline_points',
|
|
'payline_points_qual_kp',
|
|
'margin',
|
|
'margin_shop',
|
|
'qual_kp',
|
|
'qual_pp',
|
|
'qual_user_level',
|
|
'qual_user_level_next',
|
|
'next_qual_user_level',
|
|
'next_can_user_level',
|
|
'total_pp',
|
|
'total_qual_pp',
|
|
'commission_shop_sales',
|
|
'commission_pp_total',
|
|
'commission_growth_total',
|
|
'business_lines',
|
|
'user_items',
|
|
'version',
|
|
];
|
|
|
|
public function user()
|
|
{
|
|
return $this->belongsTo(User::class);
|
|
}
|
|
|
|
public function user_business_structure()
|
|
{
|
|
return $this->belongsTo(UserBusinessStructure::class, 'b_structure_id');
|
|
}
|
|
|
|
public function isSave(){
|
|
return $this->id !== null ? true : false;
|
|
}
|
|
|
|
public function setPaymentAccountDateAttribute( $value ) {
|
|
$this->attributes['payment_account_date'] = isset($value) ? (new Carbon($value))->format('Y-m-d') : NULL;
|
|
}
|
|
|
|
|
|
public function setActiveDateAttribute( $value ) {
|
|
$this->attributes['active_date'] = isset($value) ? (new Carbon($value))->format('Y-m-d') : NULL;
|
|
}
|
|
|
|
|
|
|
|
}
|