File manager - Edit - /var/www/payraty/accounting_main/app/Models/CustomField.php
Back
<?php namespace App\Models; use Illuminate\Database\Eloquent\Model; use App\Scopes\OrganisationScope; class CustomField extends Model { protected $fillable = [ 'name', 'type', 'module', 'created_by', 'organisation_id', ]; public static $fieldTypes = [ 'text' => 'Text', 'email' => 'Email', 'number' => 'Number', 'date' => 'Date', 'textarea' => 'Textarea', ]; public static $modules = [ 'user' => 'User', 'customer' => 'Customer', 'vendor' => 'Vendor', 'product' => 'Product', 'proposal' => 'Proposal', 'Invoice' => 'Invoice', 'Bill' => 'Bill', 'account' => 'Account', 'retainer' => 'Retainer', ]; protected static function booted() { static::addGlobalScope(new OrganisationScope); // Automatically set the organisation_id before creating the model static::creating(function ($model) { if (auth()->check()) { $model->organisation_id = auth()->user()->organisation_id; } }); } public static function saveData($obj, $data) { if ($data) { $RecordId = $obj->id; foreach ($data as $fieldId => $value) { \DB::insert( 'insert into custom_field_values (`record_id`, `field_id`,`value`,`created_at`,`updated_at`) values (?, ?, ?, ?, ?) ON DUPLICATE KEY UPDATE `value` = VALUES(`value`),`updated_at` = VALUES(`updated_at`) ', [ $RecordId, $fieldId, $value, date('Y-m-d H:i:s'), date('Y-m-d H:i:s'), ] ); } } } public static function getData($obj, $module) { return \DB::table('custom_field_values')->select( [ 'custom_field_values.value', 'custom_fields.id', ] )->join('custom_fields', 'custom_field_values.field_id', '=', 'custom_fields.id')->where('custom_fields.module', '=', $module)->where('record_id', '=', $obj->id)->get()->pluck('value', 'id'); } }
| ver. 1.4 |
Github
|
.
| PHP 8.3.30 | Generation time: 0 |
proxy
|
phpinfo
|
Settings