xiaogang 4 年之前
父节点
当前提交
0b3b39a55d

+ 4 - 3
app/Http/Controllers/Api/AuthorizationsController.php

xqd xqd
@@ -215,9 +215,7 @@ class AuthorizationsController extends Controller
                 'message'=>$validator->messages()->first()
             ]);
         }
-
-
-
+        DB::beginTransaction();
         try {
             //验证短信验证码
             SmsService::checkSmsCodeByVerifyKey($request->verifyKey, $request->smsCode);
@@ -247,12 +245,15 @@ class AuthorizationsController extends Controller
                 'day'=>1,
                 'status'=>0,
             ]);
+            DB::commit();
         } catch (SmsException $e) {
+            DB::rollBack();
             return response()->json([
                 'code'=>0,
                 'message'=>$e->getMessage()
             ]);
         } catch (\Exception $e) {
+            DB::rollBack();
             return response()->json([
                 'code'=>0,
                 'message'=>'短信校验失败'

+ 38 - 29
app/Http/Controllers/Api/UserController.php

xqd xqd xqd
@@ -5,6 +5,7 @@ namespace App\Http\Controllers\Api;
 use App\Http\Params\ProblemParam;
 use App\Models\User;
 use App\Models\UserInfoModel;
+use App\Models\UserInviteLog;
 use App\Models\UserVipLogModel;
 use App\Models\VipConfig;
 use App\Models\VipModel;
@@ -70,34 +71,42 @@ class UserController extends Controller
     public function setinfo(Request $request){
         $user = auth('api')->user();
 
-        $validator = Validator::make($request->all(), [
-            'nickname' => 'required|between:2,10',
-            'birthday' => 'required',
-            'avatar' => 'required',
-        ], [
-            'nickname.required'=>"昵称不能为空",
-            'nickname.between'=>"昵称长度必须在2~10之间",
-            'birthday.required'=>"生日不能为空",
-            'avatar.required'=>"头像不能为空",
-        ]);
-        if ($validator->fails()) {
-            return $this->response()->errorForbidden($validator->messages()->first());
-        }
+        DB::beginTransaction();
+        try {
+            $validator = Validator::make($request->all(), [
+                'nickname' => 'required|between:2,10',
+                'birthday' => 'required',
+                'avatar' => 'required',
+            ], [
+                'nickname.required'=>"昵称不能为空",
+                'nickname.between'=>"昵称长度必须在2~10之间",
+                'birthday.required'=>"生日不能为空",
+                'avatar.required'=>"头像不能为空",
+            ]);
+            if ($validator->fails()) {
+                throw new Exception($validator->messages()->first());
+            }
 
-        if(UserInfoModel::where(['nickname'=>$request->nickname])->where('user_id', '!=' , $user->id)->first()){
-            return $this->response->errorForbidden('昵称已被使用');
-        }
-        //邀请码设置
-        $pid = 0;
-        if(isset($request->ycode) && $request->ycode!=""){
-            if(!$puser = User::where(['ycode'=>$request->ycode])->first()){
-                return $this->response->errorForbidden("邀请码不存在");
+            if(UserInfoModel::where(['nickname'=>$request->nickname])->where('user_id', '!=' , $user->id)->first()){
+                throw new Exception("昵称已被使用");
+            }
+            //邀请码设置
+            $pid = 0;
+            if(isset($request->ycode) && $request->ycode!=""){
+                if(!$puser = User::where(['ycode'=>$request->ycode])->first()){
+                    throw new Exception("邀请码不存在");
+                }
+                $pid = $puser->id;
+
+                //赠送会员天数
+                UserInviteLog::query()->create([
+                    'user_id'=>$pid,
+                    'invite_id'=>$user->id,
+                    'day'=>1,
+                    'status'=>0,
+                ]);
             }
-            $pid = $puser->id;
-        }
 
-        DB::beginTransaction();
-        try {
             UserInfoModel::firstOrCreate([
                 'user_id' => $user->id,
                 'avatar' =>$request->avatar,
@@ -105,13 +114,13 @@ class UserController extends Controller
                 'birthday' =>$request->birthday,
             ]);
             if($pid!=0){
-               $user->pid = $pid;
-               $user->save();
+                $user->pid = $pid;
+                $user->save();
             }
             DB::commit();
-        } catch (\Exception $e) {
+        }catch (\Exception $exception){
             DB::rollBack();
-            return $this->response->errorForbidden($e->getMessage());
+            return $this->response()->errorForbidden($exception->getMessage());
         }
         return response()->json(['message'=>"设置成功"]);
     }

+ 1 - 1
app/Models/UserInfoModel.php

xqd
@@ -9,7 +9,7 @@ class UserInfoModel extends BaseModel
     protected $table = 'users_info';
     public $timestamps = false;
     protected $primaryKey="user_id";
-    protected $fillable = ['user_id','weixin', 'nickname','avatar','birthday','height','weight','work','info','figure','feeling','education','income','drink','hobby','photo','video'];
+    protected $fillable = ['user_id','weixin', 'nickname','avatar','birthday','height','weight','work','info','figure','feeling','education','income','drink','smoke','hobby','photo','video'];
 
     protected $appends = ['age'];