| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- <?php
- namespace App\Services;
- use App\MaterialBox;
- use Illuminate\Support\Collection;
- use Illuminate\Support\Facades\Cache;
- use App\Traits\ServiceAppAop;
- class MaterialBoxService
- {
- use ServiceAppAop;
- protected $modelClass=MaterialBox::class;
- // function get(array $kvPairs):?Collection{
- // return Cache::remember($this->cachingKey($kvPairs), config('cache.expirations.rarelyChange'), function ()use($kvPairs) {
- // $query = MaterialBox::query();
- // foreach ($kvPairs as $column => $value){
- // if (is_array($value))$query->whereIn($column,$value);
- // else $query->where($column,$value);
- // }
- // return $query->get();
- // });
- // }
- //
- // protected function cachingKey(array $kvPairs){
- // ksort($kvPairs);
- // return 'MaterialBox_'.md5(json_encode($kvPairs));
- // }
- //
- // protected function clearCache(array $kvPairs){
- // Cache::forget($this->cachingKey($kvPairs));
- // }
- //
- // function create(array $kvPairs){
- // $materialBox=$this->get($kvPairs);
- // if($materialBox->isNotEmpty())
- // return $materialBox->first();
- // $this->clearCache($kvPairs);
- // return MaterialBox::query()->create($kvPairs);
- // }
- //
- // function firstOrCreate(array $kvPairs){
- // $materialBox=$this->get($kvPairs);
- // if($materialBox->isNotEmpty())
- // return $materialBox->first();
- // $this->clearCache($kvPairs);
- // return $this->create($kvPairs);
- // }
- }
|