Browse Source

move calculations to model

pull/3/head
Muhammad Sulaiman Yusuf 2 years ago
parent
commit
433710afe1
  1. 41
      app/Models/ReportActivityMaterial.php

41
app/Models/ReportActivityMaterial.php

@ -3,16 +3,43 @@
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use App\Models\Activity;
use App\Models\AssignMaterial;
class ReportActivityMaterial extends Model
{
protected $table = 'report_activity_material';
protected $table = 'report_activity_material';
const CREATED_AT = 'created_at';
const UPDATED_AT = 'updated_at';
const CREATED_AT = 'created_at';
const UPDATED_AT = 'updated_at';
protected $fillable = [
'activity_id', 'user_id', 'qty', 'lat', 'lon','assign_material_id',
'report_date', 'description', 'created_at', 'created_by', 'updated_at', 'updated_by'
];
protected $fillable = [
'activity_id', 'user_id', 'qty', 'lat', 'lon','assign_material_id',
'report_date', 'description', 'created_at', 'created_by', 'updated_at', 'updated_by'
];
public static function boot() {
parent::boot();
static::created(function($data) {
$activity = Activity::find($data->activity_id);
$assignedMaterial = AssignMaterial::find($data->assign_material_id);
$activity->biaya_actual += floatval($assignedMaterial->budget) * floatval($data->qty);
$activity->save();
});
static::deleted(function($data) {
$activity = Activity::find($data->activity_id);
$assignedMaterial = AssignMaterial::find($data->assign_material_id);
$activity->biaya_actual -= floatval($assignedMaterial->budget) * floatval($data->qty);
$activity->save();
});
}
}

Loading…
Cancel
Save