|
@@ -0,0 +1,66 @@
|
|
|
+<?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
|
|
|
+ ]);
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|