|
@@ -62,7 +62,9 @@ class Usercenter extends Api
|
|
|
'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')
|
|
|
+ ->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')
|
|
@@ -107,7 +109,9 @@ class Usercenter extends Api
|
|
|
'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')
|
|
|
+ ->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')
|
|
@@ -153,7 +157,9 @@ class Usercenter extends Api
|
|
|
'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')
|
|
|
+ ->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')
|
|
@@ -191,19 +197,258 @@ class Usercenter extends Api
|
|
|
$this->success(1,$list);
|
|
|
}
|
|
|
|
|
|
+ //课程预约,即将到来3天,售课
|
|
|
+ public function lesson_order_near(){
|
|
|
+ $starttime = strtotime(date('Y-m-d')); //今天早上
|
|
|
+ $todaytime = strtotime(date('Y-m-d')) + 86400*3 - 1; //后天晚上
|
|
|
|
|
|
+ $map = [
|
|
|
+ 'order.user_id' => $this->auth->id,
|
|
|
+ 'order.order_status' => 10,
|
|
|
+ 'slot.starttime' => ['BETWEEN',[$starttime,$todaytime]],
|
|
|
+ ];
|
|
|
+
|
|
|
+ $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);
|
|
|
+
|
|
|
+ //24小时内可以申请取消
|
|
|
+ if($order['starttime'] - time() > 86400){
|
|
|
+ $order['can_cancel'] = 1;
|
|
|
+ }else{
|
|
|
+ $order['can_cancel'] = 0;
|
|
|
+ }
|
|
|
+
|
|
|
+ //放入支付套餐
|
|
|
+ /*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(){
|
|
|
+ $map = [
|
|
|
+ 'order.user_id' => $this->auth->id,
|
|
|
+ 'order.order_status' => 10
|
|
|
+ ];
|
|
|
+ $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);
|
|
|
+ }
|
|
|
+
|
|
|
+ //课程预约,即将到来 or 预约记录,试课
|
|
|
+ public function trylesson_order(){
|
|
|
+ $map = [
|
|
|
+ 'order.user_id' => $this->auth->id,
|
|
|
+ 'order.order_status' => ['neq',0]
|
|
|
+ ];
|
|
|
+
|
|
|
+ $list = Db::name('trylesson_order')->alias('order')
|
|
|
+ ->field('order.id,order.order_amount,order.paytime,order.order_status,
|
|
|
+ trylesson.name,trylesson.name_en')
|
|
|
+ ->join('trylesson','order.trylesson_id = trylesson.id','LEFT')
|
|
|
+ ->where($map)->order('order.paytime desc')
|
|
|
+ ->autopage()->select();
|
|
|
+ $list = $this->list_lang($list,['name']);
|
|
|
+
|
|
|
+ $this->success(1,$list);
|
|
|
+ }
|
|
|
|
|
|
//设置通知方式
|
|
|
|
|
|
+ //可以转让的、延期的配套
|
|
|
+ public function package_list(){
|
|
|
+ $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.remain desc,order.endtime asc')
|
|
|
+ ->select();
|
|
|
+
|
|
|
+ $list = $this->list_lang($list,['name']);
|
|
|
+
|
|
|
+ $this->success(1,$list);
|
|
|
+ }
|
|
|
+
|
|
|
//配套转让申请
|
|
|
+ public function package_move(){
|
|
|
+ $field = ['name','mobile','email','reason','reason_files','package_order_id','sessions','to_name','to_mobile','to_email','remark'];
|
|
|
+
|
|
|
+ $data = request_post_hub($field);
|
|
|
+
|
|
|
+ $data['user_id'] = $this->auth->id;
|
|
|
+ $data['createtime'] = time();
|
|
|
+
|
|
|
+ Db::name('package_move')->insertGetId($data);
|
|
|
+
|
|
|
+ $this->success('申请成功,请等待审核');
|
|
|
+ }
|
|
|
+
|
|
|
//配套延期申请
|
|
|
+ public function package_delay(){
|
|
|
+ $field = ['name','mobile','email','package_order_id','delay_week','reason','remark','reason_files'];
|
|
|
+
|
|
|
+ $data = request_post_hub($field);
|
|
|
+
|
|
|
+ $data['user_id'] = $this->auth->id;
|
|
|
+ $data['createtime'] = time();
|
|
|
+
|
|
|
+ Db::name('package_move')->insertGetId($data);
|
|
|
+
|
|
|
+ $this->success('申请成功,请等待审核');
|
|
|
+ }
|
|
|
+
|
|
|
+ //可以申请退课的
|
|
|
+ public function refund_lesson_order(){
|
|
|
+ //试课单
|
|
|
+ $map = [
|
|
|
+ 'order.user_id' => $this->auth->id,
|
|
|
+ 'order.order_status' => 10
|
|
|
+ ];
|
|
|
+
|
|
|
+ $list = Db::name('trylesson_order')->alias('order')
|
|
|
+ ->field('order.id,order.order_amount,order.paytime,
|
|
|
+ trylesson.name,trylesson.name_en')
|
|
|
+ ->join('trylesson','order.trylesson_id = trylesson.id','LEFT')
|
|
|
+ ->where($map)->order('order.paytime desc')
|
|
|
+ ->select();
|
|
|
+ $trylist = $this->list_lang($list,['name']);
|
|
|
+
|
|
|
+
|
|
|
+ //售课单(已支付开课24小时内不能取消的,已点名实到人不足的),已取消只是个暂时状态,后台处理完会改成已退课
|
|
|
+ $map = [
|
|
|
+ 'order.user_id' => $this->auth->id,
|
|
|
+ ];
|
|
|
+ $map2 = '( (order.order_status = 10 ) or (order.order_status = 20 and order.usernumber_sign != order.usernumber) )';
|
|
|
+
|
|
|
+ $list = Db::name('lesson_order')->alias('order')
|
|
|
+ ->field('order.id,order.order_amount,
|
|
|
+ lesson.name,lesson.name_en,
|
|
|
+ slot.starttime,slot.hours,slot.endtime')
|
|
|
+ ->join('lesson_slot slot','order.slot_id = slot.id','LEFt')
|
|
|
+ ->join('lesson','order.lesson_id = lesson.id','LEFT')
|
|
|
+ ->where($map)
|
|
|
+ ->where($map2)
|
|
|
+ ->order('order.createtime desc')
|
|
|
+ ->select();
|
|
|
+ $lesson = $this->list_lang($list,['name']);
|
|
|
+
|
|
|
+ //
|
|
|
+ $result = [
|
|
|
+ 'trylesson' => $trylist,
|
|
|
+ 'lesson' => $lesson,
|
|
|
+ ];
|
|
|
+
|
|
|
+ $this->success(1,$result);
|
|
|
+ }
|
|
|
+
|
|
|
//课时退课申请
|
|
|
+ public function order_refund(){
|
|
|
+ $field = ['name','mobile','email','order_table','order_id','remark','reason_files'];
|
|
|
+
|
|
|
+ $data = request_post_hub($field);
|
|
|
+
|
|
|
+ $data['user_id'] = $this->auth->id;
|
|
|
+ $data['createtime'] = time();
|
|
|
+
|
|
|
+ //冗余三个字段
|
|
|
+ /*if($data['order_table'] == 'trylesson'){
|
|
|
+
|
|
|
+ }else{
|
|
|
+
|
|
|
+ }*/
|
|
|
+ //try_createtime,slot_starttime,paytype
|
|
|
+
|
|
|
+ Db::name('order_refund')->insertGetId($data);
|
|
|
+
|
|
|
+ $this->success('申请成功,请等待审核');
|
|
|
+ }
|
|
|
+
|
|
|
//公司团建活动信息
|
|
|
+ public function company_apply(){
|
|
|
+ $field = ['name','mobile','email','company_name','company_type','remark'];
|
|
|
+
|
|
|
+ $data = request_post_hub($field);
|
|
|
+
|
|
|
+ $data['user_id'] = $this->auth->id;
|
|
|
+ $data['createtime'] = time();
|
|
|
+
|
|
|
+ Db::name('company_apply')->insertGetId($data);
|
|
|
+
|
|
|
+ $this->success('申请成功,请等待审核');
|
|
|
+ }
|
|
|
|
|
|
|
|
|
}
|