Przeglądaj źródła

订单列表、订单详情,计算订单剩余支付时间

family 1 rok temu
rodzic
commit
49b45c2dcc
1 zmienionych plików z 17 dodań i 0 usunięć
  1. 17 0
      app/common/repositories/movie/MovieRepository.php

+ 17 - 0
app/common/repositories/movie/MovieRepository.php

@@ -557,6 +557,7 @@ class MovieRepository extends BaseRepository
557 557
             if ($orderinfo['status'] == 0 && ($create_time < $time)) {
558 558
                 $plat_orderinfo['status'] = 0;
559 559
                 $plat_orderinfo['state'] = '待付款';
560
+                $plat_orderinfo['time_remaining'] = $time - $plat_orderinfo['create_time'];
560 561
             } elseif ($orderinfo['status'] == 1) {
561 562
                 $plat_orderinfo['status'] = 1;
562 563
                 $plat_orderinfo['state'] = '已支付';
@@ -844,6 +845,7 @@ class MovieRepository extends BaseRepository
844 845
             default:
845 846
                 break;
846 847
         }
848
+        $time = time();
847 849
 
848 850
         $field = 'order_sn,order_price,city_name,area_name,cinema_name,address,hall_name,film_sign,film_name,show_date,show_time,sched_seat,number,status,create_time';
849 851
         $movie_order = $this->dao->search($where)
@@ -853,6 +855,21 @@ class MovieRepository extends BaseRepository
853 855
         foreach ($movie_order as $key => $value) {
854 856
             $movie_order[$key]['sched_seat'] = json_decode($value['sched_seat'], true);
855 857
             $movie_order[$key]['cover_img'] = Db::name('movie_film')->where('film_sign', $value['film_sign'])->value('cover_img');
858
+            $movie_order[$key]['time_remaining']= 0;
859
+
860
+            // 0 待支付 1 已支付 2已超时 3已取消 4已成功
861
+            $create_time = strtotime($value['create_time']) + self::tenMinute;
862
+            if ($value['status'] == 0 && ($create_time < $time)) {
863
+                $movie_order[$key]['status'] = 0;
864
+                $movie_order[$key]['state'] = '待付款';
865
+                $movie_order[$key]['time_remaining'] = $time - strtotime($value['create_time']);
866
+            } elseif ($value['status'] == 1) {
867
+                $movie_order[$key]['status'] = 1;
868
+                $movie_order[$key]['state'] = '已支付';
869
+            } else {
870
+                $movie_order[$key]['status'] = 3;
871
+                $movie_order[$key]['state'] = '支付超时,已取消';
872
+            }
856 873
         }
857 874
 
858 875
         $count = $this->dao->search($where)->count();