Bläddra i källkod

我的配套,上课记录,取消记录,过期课程

lizhen_gitee 1 år sedan
förälder
incheckning
d3471f715a
2 ändrade filer med 170 tillägg och 1 borttagningar
  1. 1 0
      application/api/controller/Notify.php
  2. 169 1
      application/api/controller/Usercenter.php

+ 1 - 0
application/api/controller/Notify.php

@@ -142,6 +142,7 @@ class Notify extends Api
                         'paytime'      => $time,
                         'paytime'      => $time,
                         'updatetime'   => $time,
                         'updatetime'   => $time,
                         'package_order_id' => $package_order['id'],
                         'package_order_id' => $package_order['id'],
+                        'paytype' => 1,  //从购买套餐中3,改为 课程套餐1
                     ];
                     ];
                     if($lesson_order['number'] > 1){
                     if($lesson_order['number'] > 1){
                         $update['package_remark'] = ($package_order['sessions'] - $package_order['remain'] + 1) . '-' . ($package_order['sessions'] - $package_order['remain'] + $lesson_order['number']) .'/'. $package_order['sessions'];
                         $update['package_remark'] = ($package_order['sessions'] - $package_order['remain'] + 1) . '-' . ($package_order['sessions'] - $package_order['remain'] + $lesson_order['number']) .'/'. $package_order['sessions'];

+ 169 - 1
application/api/controller/Usercenter.php

@@ -11,7 +11,175 @@ use think\Db;
 class Usercenter extends Api
 class Usercenter extends Api
 {
 {
     protected $noNeedLogin = [];
     protected $noNeedLogin = [];
-    protected $noNeedRight = '*';
+    protected $noNeedRight = ['*'];
+
+    //我的配套
+    public function my_package(){
+        $map = [
+            'order.user_id' => $this->auth->id,
+            'order.order_status' => 1,
+            'order.remain' => ['gt',0],
+        ];
+        $list = Db::name('package_order')->alias('order')
+            ->field('order.id,order.starttime,order.endtime,order.is_gift,order.remain,p.name,p.name_en')
+            ->join('lesson_package p','order.package_id = p.id','LEFT')
+            ->where($map)->order('order.endtime asc')
+            ->autopage()->select();
+
+        $list = $this->list_lang($list,['name']);
+
+        $this->success(1,$list);
+    }
+
+    //上课记录,预约点了名的
+    public function lesson_order_finish(){
+        $map = [
+            'order.user_id' => $this->auth->id,
+            'order.order_status' => 20,//已点名
+            'order.usernumber_sign' => ['gt',0],
+        ];
+        $list = Db::name('lesson_order')->alias('order')
+            ->field('order.id,order.order_amount,order.paytype,order.package_order_id,order.package_remark,lesson.name,lesson.name_en,slot.starttime,slot.hours,slot.address,slot.coach_ids')
+            ->join('lesson_slot slot','order.slot_id = slot.id','LEFt')
+            ->join('lesson','order.lesson_id = lesson.id','LEFT')
+            ->where($map)->order('order.finishtime desc')
+            ->autopage()->select();
+        $list = $this->list_lang($list,['name']);
+
+        //准备教练数据
+        $coach_list = Db::name('coach')->column('id,nickname');
+
+        foreach($list as $key => &$order){
+            //放入教练
+            $coach_text = '';
+            $coach_ids = explode(',',$order['coach_ids']);
+            foreach($coach_ids as $coach_id){
+                $coach_text .= $coach_list[$coach_id].',';
+            }
+            $order['coach_text'] = substr($coach_text,0,-1);
+
+            //放入支付套餐
+            if($order['paytype'] == 1){
+                $package_order = Db::name('package_order')->alias('order')
+                    ->field('p.name,p.name_en,order.starttime,order.endtime')
+                    ->join('lesson_package p','order.package_id = p.id','LEFT')
+                    ->where('order.id',$order['package_order_id'])->find();
+                $order['package_name']      = $package_order['name'];
+                $order['package_name_en']   = $package_order['name_en'];
+                $order['package_starttime'] = $package_order['starttime'];
+                $order['package_endtime']   = $package_order['endtime'];
+            }
+
+        }
+
+        $list = $this->list_lang($list,['package_name']);
+
+        $this->success(1,$list);
+    }
+
+    //取消记录
+    public function lesson_order_cancel(){
+        $map = [
+            'order.user_id' => $this->auth->id,
+            'order.order_status' => 30,//已取消
+        ];
+        $list = Db::name('lesson_order')->alias('order')
+            ->field('order.id,order.order_amount,order.paytype,order.package_order_id,order.package_remark,order.cancel_reason,lesson.name,lesson.name_en,slot.starttime,slot.hours,slot.address,slot.coach_ids')
+            ->join('lesson_slot slot','order.slot_id = slot.id','LEFt')
+            ->join('lesson','order.lesson_id = lesson.id','LEFT')
+            ->where($map)->order('order.cancel_time desc')
+            ->autopage()->select();
+        $list = $this->list_lang($list,['name']);
+
+        //准备教练数据
+        $coach_list = Db::name('coach')->column('id,nickname');
+
+        foreach($list as $key => &$order){
+            //放入教练
+            $coach_text = '';
+            $coach_ids = explode(',',$order['coach_ids']);
+            foreach($coach_ids as $coach_id){
+                $coach_text .= $coach_list[$coach_id].',';
+            }
+            $order['coach_text'] = substr($coach_text,0,-1);
+
+            //放入支付套餐
+            /*if($order['paytype'] == 1){
+                $package_order = Db::name('package_order')->alias('order')
+                    ->field('p.name,p.name_en,order.starttime,order.endtime')
+                    ->join('lesson_package p','order.package_id = p.id','LEFT')
+                    ->where('order.id',$order['package_order_id'])->find();
+                $order['package_name']      = $package_order['name'];
+                $order['package_name_en']   = $package_order['name_en'];
+                $order['package_starttime'] = $package_order['starttime'];
+                $order['package_endtime']   = $package_order['endtime'];
+            }*/
+
+        }
+
+        //$list = $this->list_lang($list,['package_name']);
+
+        $this->success(1,$list);
+    }
+
+    //过期课程。就是过了上课时间,没签到的
+    public function lesson_order_signout(){
+        $map = [
+            'order.user_id' => $this->auth->id,
+            'order.order_status' => 20,//已点名
+            'order.usernumber_sign' => 0,//没签到的
+        ];
+        $list = Db::name('lesson_order')->alias('order')
+            ->field('order.id,order.order_amount,order.paytype,order.package_order_id,order.package_remark,lesson.name,lesson.name_en,slot.starttime,slot.hours,slot.address,slot.coach_ids')
+            ->join('lesson_slot slot','order.slot_id = slot.id','LEFt')
+            ->join('lesson','order.lesson_id = lesson.id','LEFT')
+            ->where($map)->order('order.finishtime desc')
+            ->autopage()->select();
+        $list = $this->list_lang($list,['name']);
+
+        //准备教练数据
+        $coach_list = Db::name('coach')->column('id,nickname');
+
+        foreach($list as $key => &$order){
+            //放入教练
+            $coach_text = '';
+            $coach_ids = explode(',',$order['coach_ids']);
+            foreach($coach_ids as $coach_id){
+                $coach_text .= $coach_list[$coach_id].',';
+            }
+            $order['coach_text'] = substr($coach_text,0,-1);
+
+            //放入支付套餐
+            /*if($order['paytype'] == 1){
+                $package_order = Db::name('package_order')->alias('order')
+                    ->field('p.name,p.name_en,order.starttime,order.endtime')
+                    ->join('lesson_package p','order.package_id = p.id','LEFT')
+                    ->where('order.id',$order['package_order_id'])->find();
+                $order['package_name']      = $package_order['name'];
+                $order['package_name_en']   = $package_order['name_en'];
+                $order['package_starttime'] = $package_order['starttime'];
+                $order['package_endtime']   = $package_order['endtime'];
+            }*/
+
+        }
+
+//        $list = $this->list_lang($list,['package_name']);
+
+        $this->success(1,$list);
+    }
+
+    //赠课记录
+
+    //课程预约,即将到来,试课和售课
+
+    //课程预约,预约记录,试课和售课
+
+    //设置通知方式
+
+    //配套转让申请
+    //配套延期申请
+    //课时退课申请
+    //公司团建活动信息
 
 
 
 
 }
 }