gq 7 years ago
parent
commit
7fef4891c4

+ 93 - 23
server/app/Console/Commands/DreamDJS.php

xqd xqd xqd
@@ -5,9 +5,11 @@ namespace App\Console\Commands;
 use App\Models\DreamInfoModel;
 use App\Models\SupportDreamModel;
 use App\Models\SystemInfoModel;
+use App\Models\UserCareDream;
 use Illuminate\Console\Command;
 use Illuminate\Support\Facades\Auth;
 use App\Helper\JpushHelper;
+use Illuminate\Support\Facades\Log;
 
 class DreamDJS extends Command
 {
@@ -44,17 +46,26 @@ class DreamDJS extends Command
     public function handle()
     {
         //执行逻辑
-        $dream = DreamInfoModel::orderBy('end_time','desc')->get();
-        foreach ($dream as $item) {
-            if (date('Y-m-d',$item->end_time) == date('Y-m-d',time()+1*24*3600)) {
-                $message = $item->name.'过1天就要结束啦!';
-                $this->jPush($message,'',$item->user_id);
-            }
-            if ( date('Y-m-d',time()+7*24*3600)== date('Y-m-d',$item->end_time)) {
-                $message = $item->name.'过1周就要结束啦!';
-                $this->jPush($message,'',$item->user_id);
-            }
-            if ( $item->end_time < date('Y-n-d H:i:s')) {
+        Log::info('hello xiaoqiang-----------------------');
+
+
+        $end_dream_info = DreamInfoModel::with('user')->where('end_time','<',date('Y-m-d H:i:s'))->get();
+        if (count($end_dream_info)>0) {
+            foreach ($end_dream_info as $item){
+//                (1)给梦想者发消息
+                $dream_user = $item->user;
+                $message = "你的梦想《".$item->name."》已结束,点击了解接下来的步骤";
+                $arr = [
+                    'user_id'=>0,
+                    'message'=>$message,
+                    'to_user_id'=>$item->user_id,
+                    'dream_id'=>$item->id,
+                    'is_end'=>1,
+                    'type_id'=>1,
+                    'attr_id'=>6,
+                ];
+                SystemInfoModel::firstOrCreate($arr);
+//             (2)   给支持者发送消息
                 $support_dream = SupportDreamModel::where('dream_id',$item->id)->get();
                 $top = [] ;
                 foreach ($support_dream as $item2) {
@@ -66,19 +77,78 @@ class DreamDJS extends Command
                 }
                 arsort($top);
                 $new_arr = array_values($top);
-                $key = array_search($top[$item->user_id],$new_arr);
-                $message = $item->name."已经结束啦!谢谢你的支持,你可是他的第".($key+1)."支持者哦!";
-                $this->jPush($message,'',$item->user_id);
+                if (!empty($top)) {
+                    foreach ($top as $k => $v) {
+                        $key = array_search($v,$new_arr);  //排名
+                        $message = $item->name."已经结束啦!谢谢你的支持,你可是他的第".($key+1)."支持者哦!";
+                        if (empty($key)) { //最大支持者
+                            $message = "恭喜你成为《".$item->name."》的《梦主》! ";
+                            $info =  $dream_user->nickname."会以你提供的微信/电话联系你约好时间地点亲自感谢你给予的支持和鼓励。如果你不希望见面或
+                        不想要梦想者拥有你的联系方式,请按《不需要见面》的按钮或联系客服。";
+                            $arr2 = [
+                                'user_id'=>$item->user_id,
+                                'info'=>$info,
+                                'message'=>$message,
+                                'to_user_id'=>$k,
+                                'dream_id'=>$item->id,
+                                'is_end'=>1,
+                                'is_url'=>1,
+                                'type_id'=>2,
+                                'is_max'=>1,
+                            ];
+                        }else{
+                            $arr2 = [
+                                'user_id'=>0,
+                                'message'=>$message,
+                                'to_user_id'=>$k,
+                                'dream_id'=>$item->id,
+                                'is_end'=>1,
+                                'is_url'=>1,
+                                'type_id'=>2,
+                            ];
+                        }
+                        SystemInfoModel::firstOrCreate($arr2);
+                    }
+                }
             }
-           if( isset($message)){
-               $arr = [
-                    'user_id'=>0,
-                    'message'=>$message,
-                    'to_user_id'=>$item->user_id,
-                    'dream_id'=>$item->id,
-            ];
-               SystemInfoModel::create($arr);
-           }
+
         }
+
+//            2   我关注的梦想倒计时 通知消息
+        $dreams =DreamInfoModel::with('user')->where('end_time','>',date('Y-m-d H:i:s'))->get();
+        if (count($dreams) > 0) {
+            foreach ($dreams as $item) {
+                if (date('Y-m-d',strtotime($item->end_time)) == date('Y-m-d',time()+1*24*3600)) {
+                    $message = $item->name.'过1天就要结束啦!';
+                }elseif(date('Y-m-d H:i',strtotime($item->end_time)) == date('Y-m-d H:i',time()+3600)){
+                    $message = $item->name.'过1小时就要结束啦!';
+                }else{
+                    $message = '';
+                }
+                if (!empty($message)) {
+                    $user_ids = UserCareDream::where('dream_id',$item->id)->select('id','user_id')->get()->toArray();
+                    $arr_ids = array_column($user_ids,'user_id');
+                    if (!empty($arr_ids)) {
+                        foreach ($arr_ids as $u_id) {
+                            $arr3 = [
+                                'user_id'=>0,
+                                'message'=>$message,
+                                'to_user_id'=>$u_id,
+                                'dream_id'=>$item->id,
+                                'is_url'=>1,
+                                'type_id'=>2,
+                                'attr_id'=>8,
+                            ];
+                            SystemInfoModel::firstOrCreate($arr3);
+                        }
+                    }
+                }
+            }
+        }
+
+
+
+
+
     }
 }

+ 1 - 1
server/app/Http/Controllers/Api/V1/MyController.php

xqd
@@ -1264,7 +1264,7 @@ class MyController extends Controller
         $info = $request->input('content');
         $video = $request->input('video');
         $img = $request->input('image');
-        if (is_array($img)) {
+        if (is_array($img)&&!empty($img)) {
             $image = $img[0];
         }else{
             $image = $img;