MachineAdvRepository.php
2.64 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018/2/16
 * Time: 11:01
 */
namespace App\Repositories\Backend\MachineAdv;
use App\Modules\Models\MachineAdv\MachineAdv;
use Illuminate\Support\Facades\DB;
use App\Modules\Repositories\MachineAdv\BaseMachineAdvRepository;
class MachineAdvRepository   extends BaseMachineAdvRepository
{
    public function getForDataTable()
    {
        return $this->query()->get();
    }
     public  function getinfo()
     {
         return   $this->query()->select('machine_adv.id','machine_adv.img_url','machine_adv.created_at','machine_adv.updated_at','machine.mac_no')->leftjoin('machine','machine_adv.machine_id','=','machine.id')->get();
     }
    public function create($input)
    {
        $key =array_keys($input['data']);
        $res=in_array('img_url',$key);
        if($res){
            $backet="img_url";
        } else{
            throw new GeneralException(trans('exceptions.backend.machineadv.backet_error'));
            die();
        }
        $img=$this->imgup($backet);
        $data=[];
        $data['size'] = $img['size'];
        $data['img_url'] = $img['path'];
        $data['machine_id']= $input['data']['machine_id'];
        $machineadv = $this->createUserStub($data);
        DB::transaction(function () use ($machineadv, $data) {
            if ($machineadv->save($data)) {
                //Attach new roles
                // event(new BusinessCreated($business));
                return true;
            }
            throw new GeneralException(trans('exceptions.backend.machineadv.create_error'));
        });
    }
    protected function createUserStub($info)
    {
      
        $machineadv = self::MODEL;
        $machineadv = new $machineadv;
        $machineadv->machine_id = $info['machine_id'];
        $machineadv->img_url = $info['img_url'];
        $machineadv->size = $info['size'];
        return $machineadv;
    }
      public function update(MachineAdv $machineadv,$input)
      {
          $key =array_keys($input['data']);
          $res=in_array('img_url',$key);
          if($res){
              $backet="img_url";
          } else{
              throw new GeneralException(trans('exceptions.backend.machineadv.backet_error'));
              die();
          }
          $img=$this->imgup($backet);
          $data=[];
          $data['size'] = $img['size'];
          $data['img_url'] = $img['path'];
          DB::transaction(function () use ($machineadv, $data) {
              if ($machineadv->update($data)) {
                  return true;
              }
              throw new GeneralException(trans('exceptions.backend.machineadv.update_error'));
          });
      }
}