| Server IP : 103.161.17.216 / Your IP : 216.73.216.1 Web Server : nginx/1.18.0 System : Linux tipsysaigoncharming 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 User : www-data ( 33) PHP Version : 7.4.3-4ubuntu2.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/app.ansachsongkhoe.net/app/ |
Upload File : |
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class TransactionSellLine extends Model
{
/**
* The attributes that aren't mass assignable.
*
* @var array
*/
protected $guarded = ['id'];
public function transaction()
{
return $this->belongsTo(\App\Transaction::class);
}
public function product()
{
return $this->belongsTo(\App\Product::class, 'product_id');
}
public function variations()
{
return $this->belongsTo(\App\Variation::class, 'variation_id');
}
public function modifiers()
{
return $this->hasMany(\App\TransactionSellLine::class, 'parent_sell_line_id')
->where('children_type', 'modifier');
}
public function sell_line_purchase_lines()
{
return $this->hasMany(\App\TransactionSellLinesPurchaseLines::class, 'sell_line_id');
}
/**
* Get the quantity column.
*
* @param string $value
* @return float $value
*/
public function getQuantityAttribute($value)
{
return (float)$value;
}
public function lot_details()
{
return $this->belongsTo(\App\PurchaseLine::class, 'lot_no_line_id');
}
public function get_discount_amount()
{
$discount_amount = 0;
if (!empty($this->line_discount_type) && !empty($this->line_discount_amount)) {
if ($this->line_discount_type == 'fixed') {
$discount_amount = $this->line_discount_amount;
} elseif ($this->line_discount_type == 'percentage') {
$discount_amount = ($this->unit_price_before_discount * $this->line_discount_amount) / 100;
}
}
return $discount_amount;
}
/**
* Get the unit associated with the purchase line.
*/
public function sub_unit()
{
return $this->belongsTo(\App\Unit::class, 'sub_unit_id');
}
public function order_statuses()
{
$statuses = [
'received',
'cooked',
'served'
];
}
public function service_staff()
{
return $this->belongsTo(\App\User::class, 'res_service_staff_id');
}
/**
* The warranties that belong to the sell lines.
*/
public function warranties()
{
return $this->belongsToMany('App\Warranty', 'sell_line_warranties', 'sell_line_id', 'warranty_id');
}
public function line_tax()
{
return $this->belongsTo(\App\TaxRate::class, 'tax_id');
}
public function so_line()
{
return $this->belongsTo(\App\TransactionSellLine::class, 'so_line_id');
}
}