123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- <?php
- /**
- * Created by PhpStorm.
- * User: Administrator
- * Date: 2019-08-21
- * Time: 10:26
- */
- namespace App\Repositories;
- use App\Models\Upgrade;
- use Illuminate\Support\Facades\DB;
- use Dingo\Api\Http\Response;
- class UpgradeRepository {
- public function __construct(Upgrade $upgrade) {
- $this->upgrade = $upgrade;
- }
- //列表
- public function index($request){
- $perPage = isset($request['per_page']) ? $request['per_page'] : 20;
- $where = [];
- if(isset($request['os'])){
- $where[] = ['os', $request['os']];
- }
- return $this->upgrade->where($where)->orderBy('id', 'desc')->paginate($perPage);
- }
- //详情
- public function view($request){
- return $this->upgrade->where(['id'=>$request['id']])->first();
- }
- //创建
- public function create($request){
- $activities = $this->upgrade->where(['os'=>$request['os'],'version'=>$request['version']])->first();
- if($activities){
- return Response::create([
- 'message' => '该版本已存在',
- 'status_code' => 500
- ]);
- }
- $data = [
- 'os' => $request['os'],
- 'version' => $request['version'],
- 'version_code' => $request['version_code'],
- 'url' => $request['url'],
- 'title' => $request['title'],
- 'content' => $request['content'],
- 'is_forced_update' => $request['is_forced_update'],
- ];
- DB::beginTransaction();
- try{
- $this->upgrade->create($data);
- DB::commit();
- return Response::create();
- }catch (QueryException $exception){
- DB::rollBack();
- Log::debug('新增版本:'.$exception->getMessage());
- return Response::create([
- 'message' => '新增升级版本失败,请重试',
- 'error' => $exception->getMessage(),
- 'status_code' => 500
- ]);
- }
- }
- }
|