|
@@ -4,9 +4,13 @@
|
|
namespace App\Services;
|
|
namespace App\Services;
|
|
|
|
|
|
|
|
|
|
|
|
+use App\Http\Params\UserCommentParam;
|
|
|
|
+use App\Http\Params\UserLikeParam;
|
|
use App\Models\User;
|
|
use App\Models\User;
|
|
|
|
+use App\Models\UserComment;
|
|
use App\Models\UserLikeModel;
|
|
use App\Models\UserLikeModel;
|
|
use Illuminate\Support\Facades\DB;
|
|
use Illuminate\Support\Facades\DB;
|
|
|
|
+use PHPUnit\Util\Exception;
|
|
|
|
|
|
class HomeService
|
|
class HomeService
|
|
{
|
|
{
|
|
@@ -51,12 +55,19 @@ class HomeService
|
|
public function user_detail($user_id){
|
|
public function user_detail($user_id){
|
|
$user = auth('api')->user();
|
|
$user = auth('api')->user();
|
|
$is_like = 0;
|
|
$is_like = 0;
|
|
|
|
+ $is_comment = 0;
|
|
if($user){
|
|
if($user){
|
|
//登录状态 增加 谁看了我记录
|
|
//登录状态 增加 谁看了我记录
|
|
look_log($user->id,$user_id);
|
|
look_log($user->id,$user_id);
|
|
if(UserLikeModel::query()->where(['user_id'=>$user->id,'like_id'=>$user_id])->first()){
|
|
if(UserLikeModel::query()->where(['user_id'=>$user->id,'like_id'=>$user_id])->first()){
|
|
$is_like = 1;
|
|
$is_like = 1;
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ //查询评价
|
|
|
|
+
|
|
|
|
+ if(UserComment::query()->where(['user_id'=>$user->id,'comment_id'=>$user_id])->first()){
|
|
|
|
+ $is_comment = 1;
|
|
|
|
+ }
|
|
}
|
|
}
|
|
$userinfo = User::query()
|
|
$userinfo = User::query()
|
|
->leftJoin('users_info','users.id','=','users_info.user_id')
|
|
->leftJoin('users_info','users.id','=','users_info.user_id')
|
|
@@ -68,6 +79,77 @@ class HomeService
|
|
$userinfo->video = json_decode($userinfo->video,true);
|
|
$userinfo->video = json_decode($userinfo->video,true);
|
|
|
|
|
|
$userinfo->is_like = $is_like;
|
|
$userinfo->is_like = $is_like;
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ //查询评价
|
|
|
|
+ $userinfo->is_comment = $is_comment;
|
|
|
|
+ //评价星级
|
|
|
|
+ $con1_star = UserComment::query()->where(['comment_id'=>$user_id])->avg('con1');
|
|
|
|
+ $con2_star = UserComment::query()->where(['comment_id'=>$user_id])->avg('con2');
|
|
|
|
+ $con3_star = UserComment::query()->where(['comment_id'=>$user_id])->avg('con3');
|
|
|
|
+ $con4_star = UserComment::query()->where(['comment_id'=>$user_id])->avg('con4');
|
|
|
|
+ $total_star = round(($con1_star+$con2_star+$con3_star+$con4_star)/4,1);
|
|
|
|
+ $total_num = UserComment::query()->where(['comment_id'=>$user_id])->count();
|
|
|
|
+ $comment = array();
|
|
|
|
+ $comment['con1_star'] = round($con1_star,1);
|
|
|
|
+ $comment['con2_star'] = round($con2_star,1);
|
|
|
|
+ $comment['con3_star'] = round($con3_star,1);
|
|
|
|
+ $comment['con4_star'] = round($con4_star,1);
|
|
|
|
+ $comment['total_star'] = $total_star;
|
|
|
|
+ $comment['total_num'] = $total_num;
|
|
|
|
+ $userinfo->comment = $comment;
|
|
return $userinfo;
|
|
return $userinfo;
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ //用户喜欢
|
|
|
|
+ public function do_like(UserLikeParam $param){
|
|
|
|
+ if(empty($param->like_id)){
|
|
|
|
+ throw new Exception('参数错误');
|
|
|
|
+ }
|
|
|
|
+ $user = User::query()->where(['id'=>$param->like_id])->first();
|
|
|
|
+ if(!$user){
|
|
|
|
+ throw new Exception("用户不存在");
|
|
|
|
+ }
|
|
|
|
+ $is_like = 0;
|
|
|
|
+ if($like = UserLikeModel::query()->where(['user_id'=>$param->user_id,'like_id'=>$param->like_id])->first()){
|
|
|
|
+ $is_like = 0;
|
|
|
|
+ User::query()->where('id',$param->like_id)->decrement('like_me_num',1);
|
|
|
|
+ User::query()->where('id',$param->user_id)->decrement('like_num',1);
|
|
|
|
+ $like->delete();
|
|
|
|
+ }else{
|
|
|
|
+ $is_like = 1;
|
|
|
|
+ User::query()->where('id',$param->like_id)->increment('like_me_num',1);
|
|
|
|
+ User::query()->where('id',$param->user_id)->increment('like_num',1);
|
|
|
|
+ UserLikeModel::query()->create([
|
|
|
|
+ 'user_id'=>$param->user_id,
|
|
|
|
+ 'like_id'=>$param->like_id,
|
|
|
|
+ 'status'=>0,
|
|
|
|
+ 'atime'=>date('Y-m-d H:i:s'),
|
|
|
|
+ ]);
|
|
|
|
+ }
|
|
|
|
+ return $is_like;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ //用户评论
|
|
|
|
+ public function do_comment(UserCommentParam $param){
|
|
|
|
+ if(empty($param->comment_id)){
|
|
|
|
+ throw new Exception('参数错误');
|
|
|
|
+ }
|
|
|
|
+ $user = User::query()->where(['id'=>$param->comment_id])->first();
|
|
|
|
+ if(!$user){
|
|
|
|
+ throw new Exception("用户不存在");
|
|
|
|
+ }
|
|
|
|
+ if(UserComment::query()->where(['user_id'=>$param->user_id,'comment_id'=>$param->comment_id])->first()){
|
|
|
|
+ throw new Exception("已经评价过");
|
|
|
|
+ }
|
|
|
|
+ UserComment::query()->create([
|
|
|
|
+ 'user_id'=>$param->user_id,
|
|
|
|
+ 'comment_id'=>$param->comment_id,
|
|
|
|
+ 'con1'=>$param->con1,
|
|
|
|
+ 'con2'=>$param->con2,
|
|
|
|
+ 'con3'=>$param->con3,
|
|
|
|
+ 'con4'=>$param->con4,
|
|
|
|
+ ]);
|
|
|
|
+ return true;
|
|
|
|
+ }
|
|
}
|
|
}
|