SettingObserver.php 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <?php
  2. namespace app\backend\modules\goods\observers;
  3. use app\backend\modules\goods\models\Discount;
  4. use app\backend\modules\goods\models\Share;
  5. use app\backend\modules\goods\services\DiscountService;
  6. use app\backend\modules\goods\services\Privilege;
  7. use app\backend\modules\goods\services\PrivilegeService;
  8. use app\common\models\AdminOperationLog;
  9. use app\common\models\Goods;
  10. use app\Jobs\AdminOperationLogQueueJob;
  11. use Illuminate\Database\Eloquent\Model;
  12. /**
  13. * Created by PhpStorm.
  14. * Author: 芸众商城 www.yunzshop.com
  15. * Date: 2017/2/28
  16. * Time: 上午11:24
  17. */
  18. class SettingObserver extends \app\common\observers\BaseObserver
  19. {
  20. public function saving(Model $model)
  21. {
  22. }
  23. public function saved(Model $model)
  24. {
  25. if(empty($model->getDirty())){
  26. return;
  27. }
  28. $log = new AdminOperationLog();
  29. $log->table_name = $model->getTable();
  30. $primaryKey = $model->getKeyName();
  31. $log->table_id = $model->$primaryKey ?: $model->getOriginal($primaryKey);
  32. $log->after = $model->getDirty();
  33. $log->before = collect($model->getDirty())->map(function($value,$key) use ($model){
  34. return $model->getOriginal($key);
  35. });
  36. $log->created_at = time();
  37. $log->updated_at = time();
  38. $log->save();
  39. }
  40. public function created(Model $model)
  41. {
  42. }
  43. public function updating(Model $model)
  44. {
  45. }
  46. public function updated(Model $model)
  47. {
  48. }
  49. public function deleted(Model $model)
  50. {
  51. $log = new AdminOperationLog();
  52. $log->table_name = $model->getTable();
  53. $primaryKey = $model->getKeyName();
  54. $log->table_id = $model->$primaryKey ?: $model->getOriginal($primaryKey);
  55. $log->after = 'deleted';
  56. $log->before = $model->getOriginal();
  57. $log->created_at = time();
  58. $log->updated_at = time();
  59. $log->save();
  60. }
  61. }