|
@@ -6,6 +6,8 @@ use App\Models\BaseSettingsModel;
|
|
use App\Models\CommentInfoModel;
|
|
use App\Models\CommentInfoModel;
|
|
use App\Models\DreamInfoModel;
|
|
use App\Models\DreamInfoModel;
|
|
use App\Models\SearchInfoModel;
|
|
use App\Models\SearchInfoModel;
|
|
|
|
+use App\Models\SupportDreamModel;
|
|
|
|
+use App\Models\SystemInfoModel;
|
|
use App\Models\UserCareDream;
|
|
use App\Models\UserCareDream;
|
|
use App\Models\UserCareUser;
|
|
use App\Models\UserCareUser;
|
|
use App\Models\UserInfoModel;
|
|
use App\Models\UserInfoModel;
|
|
@@ -108,6 +110,9 @@ class IndexController extends Controller
|
|
{
|
|
{
|
|
$login_user = $this->getUser();
|
|
$login_user = $this->getUser();
|
|
$id = $login_user->id;
|
|
$id = $login_user->id;
|
|
|
|
+// 访问首页时 当用户的梦想结束时通知用户
|
|
|
|
+ $this->systemInfo($id);
|
|
|
|
+
|
|
$arr1 =DreamInfoModel::orderBy('score','desc')->limit(30)->select('id')->get()->toArray();
|
|
$arr1 =DreamInfoModel::orderBy('score','desc')->limit(30)->select('id')->get()->toArray();
|
|
$id_arr1 = array_column($arr1,'id');
|
|
$id_arr1 = array_column($arr1,'id');
|
|
$arr2 =DreamInfoModel::orderBy('score','desc')->offset(15)->limit(120)->select('id')->get()->toArray();
|
|
$arr2 =DreamInfoModel::orderBy('score','desc')->offset(15)->limit(120)->select('id')->get()->toArray();
|
|
@@ -143,6 +148,79 @@ class IndexController extends Controller
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ public function systemInfo($id)
|
|
|
|
+ {
|
|
|
|
+ $end_dream_info = DreamInfoModel::where('user_id',$id)->where('end_time','>',date('Y-m-d H:i:s'))->get();
|
|
|
|
+ if (count($end_dream_info)>0) {
|
|
|
|
+ foreach ($end_dream_info as $item){
|
|
|
|
+ $message = "你的梦想《$item->title》已结束,点击了解接下来的步骤";
|
|
|
|
+ $arr[] = [
|
|
|
|
+ 'user_id'=>0,
|
|
|
|
+ 'message'=>$message,
|
|
|
|
+ 'to_user_id'=>$id,
|
|
|
|
+ 'dream_id'=>$item->id,
|
|
|
|
+ 'is_end'=>1,
|
|
|
|
+ 'type_id'=>1,
|
|
|
|
+ ];
|
|
|
|
+// 给支持者发送消息
|
|
|
|
+ $support_dream = SupportDreamModel::where('dream_id',$item->id)->get();
|
|
|
|
+ $top = [] ;
|
|
|
|
+ foreach ($support_dream as $item2) {
|
|
|
|
+ if (!array_key_exists($item2->user_id,$top)) {
|
|
|
|
+ $top[$item2->user_id] = $item2->score;
|
|
|
|
+ }else{
|
|
|
|
+ $top[$item2->user_id] += $item2->score;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ arsort($top);
|
|
|
|
+ $new_arr = array_values($top);
|
|
|
|
+ foreach ($top as $k => $v) {
|
|
|
|
+ $key = array_search($v,$new_arr);
|
|
|
|
+ $message = $item->name."已经结束啦!谢谢你的支持,你可是他的第".($key+1)."支持者哦!";
|
|
|
|
+ if (empty($key)) { //最大支持者
|
|
|
|
+ $arr[] = [
|
|
|
|
+ 'user_id'=>0,
|
|
|
|
+ 'message'=>$message,
|
|
|
|
+ 'to_user_id'=>$k,
|
|
|
|
+ 'dream_id'=>$item->id,
|
|
|
|
+ 'is_end'=>1,
|
|
|
|
+ 'type_id'=>2,
|
|
|
|
+ 'is_max'=>1,
|
|
|
|
+ ];
|
|
|
|
+ }else{
|
|
|
|
+ $arr[] = [
|
|
|
|
+ 'user_id'=>0,
|
|
|
|
+ 'message'=>$message,
|
|
|
|
+ 'to_user_id'=>$k,
|
|
|
|
+ 'dream_id'=>$item->id,
|
|
|
|
+ 'is_end'=>1,
|
|
|
|
+ 'type_id'=>2,
|
|
|
|
+ ];
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ SystemInfoModel::insert($arr);
|
|
|
|
+ }
|
|
|
|
+// 2 我关注的梦想倒计时 通知消息
|
|
|
|
+ $dreams = UserCareDream::where('user_id',$id)->with('dreams')->get();
|
|
|
|
+ foreach ($dreams as $item) {
|
|
|
|
+ if (date('Y-m-d',$item->dreams->end_time) == date('Y-m-d',time()+1*24*3600)) {
|
|
|
|
+ $message = $item->name.'过1天就要结束啦!';
|
|
|
|
+ $arr = [
|
|
|
|
+ 'user_id'=>0,
|
|
|
|
+ 'message'=>$message,
|
|
|
|
+ 'to_user_id'=>$id,
|
|
|
|
+ 'dream_id'=>$item->dream_id,
|
|
|
|
+ 'is_url'=>1,
|
|
|
|
+ 'type_id'=>2,
|
|
|
|
+ ];
|
|
|
|
+ SystemInfoModel::create($arr);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* @api {get} /api/index/search 搜索
|
|
* @api {get} /api/index/search 搜索
|
|
* @apiDescription 搜索
|
|
* @apiDescription 搜索
|