where("user_id", $user['user_id'])->where("store_id", $sid)->find(); session('user', $user0); //覆盖session 中的 user $this->user = $user0; $this->user_id = $user0['user_id']; $this->assign('user', $user0); //存储用户信息 } else { $usrid = Cookie::get('user_id'); if ($usrid) { $user0 = M('users')->where("user_id", $usrid)->where("store_id", $sid)->find(); session('user', $user0); //覆盖session 中的 user $this->user = $user0; $this->user_id = $user0['user_id']; $this->assign('user', $user0); //存储用户信息 } } if (!$this->user_id) { $this->redirect(U('mobile/User/login', array('stoid' => getMobileStoId()))); exit; } } //预约服务列表 public function service_items_list(){ $stoid=getMobileStoId(); $is_ajax=I("is_ajax"); if($is_ajax){ $page=I("p"); $data['storeId']=$stoid; $data['userId']=$this->user_id; $list=getApiData_mini("/api/weshop/marketing/reservation/sm/page",$data,$stoid,'GET',null,$page,10); $list=json_decode($list,true); if($list['code']===0){ $this->assign('list', $list['data']['pageData']); } return $this->fetch('ajax_service_items_list', $stoid); } return $this->fetch('', $stoid); } // 预约服务主页 public function service_homepage(){ $stoid=getMobileStoId(); $store_name=urldecode(urldecode(I("store_name"))); //门店名称 $pick_id=urldecode(urldecode(I("pick_id"))); //门店ID $meisongshi_name=urldecode(I("meisongshi_name")); //美容师名字 $meisongshi_id=urldecode(urldecode(I("meisongshi_name_id"))); //美容师ID $yy_time=urldecode(urldecode(I("yy_time"))); //预约时间 $id=I("id"); //项目ID $ser_id=I("ser_id"); //项目ID $number=I('number'); if($number){ $data['storeId']=$stoid; $data['number']=$number; $data['userId']=$this->user_id; $list=getApiData_mini("/api/weshop/marketing/reservation/reservation/page",$data,$stoid,'GET',null,1,20); $list=json_decode($list,true); if($list['code']===0){ $dd=$list["data"]['pageData'][0]; $id=$dd['ProjectID']; //项目ID $ser_id=$dd['ServiceID']; //服务卡ID $addr=$dd['addr']; //服务卡ID $store_name=$dd['StorageName']; //项目名称 $pick_id=$dd['StorageID']; $meisongshi_id=$dd['BeauticianID']; //美容师ID $meisongshi_name=$dd['BeauticianName']; //美容师名称 } } if($store_name) $this->assign("store_name",$store_name); if($pick_id) $this->assign("pick_id",$pick_id); if($meisongshi_name) $this->assign("meisongshi_name",$meisongshi_name); if($meisongshi_id) $this->assign("meisongshi_id",$meisongshi_id); if($yy_time) $this->assign("yy_time",$yy_time); if($id) $this->assign("id",$id); if($ser_id) $this->assign("ser_id",$ser_id); if($id){ $data['storeId']=$stoid; $data['userId']=$this->user_id; $data['projectId']=urlencode($id); $list=getApiData_mini("/api/weshop/marketing/reservation/sm/page",$data,$stoid,'GET',null,1,10); $list=json_decode($list,true); if($list['code']===0){ $pdata=$list['data']['pageData'][0]; $this->assign('buyType',$pdata['BuyType'] ); $this->assign('effectiveDay',$pdata['Validay'] ); } } return $this->fetch('', $stoid); } //----预约服务的主页的提交---- public function ajax_service_homepage(){ $stoid = I('stoid', 0); $data=I('post.'); $data['storeId']= $stoid; $data['userId']=$this->user_id; $list=getApiData_mini("/api/weshop/marketing/reservation/reservation/insert",$data,$stoid,'POST',null,null,null,null,1); $list=json_decode($list,true); if($list['code']===0){ $accdb = tpCache('shop_info.ERPId',$stoid); $resdata=$list['data']; //推送消息 $url = curHostURL() . "/home/api/poswxcode?typeid=1011&Acc=" .$accdb . "&ErpVipid=" . $this->user['erpvipid'] ."&title=恭喜您成功预约,您的预约号是" . $resdata['Number'] . "&key1=" . $this->user['vipname'] . "&key2=" . $resdata['StorageName'] ."&key3=" . $resdata['Address'] . "&key4=" . $data['arrangeTime'] . "&key5=" . $resdata['ServiceName'] . "&remark=" . $data['Remark'] ."&backurl=" . curHostURL() . "/mobile/yyservice/yy_details/stoid/" . $stoid."/number/".$resdata['Number']; $resp = httpRequest($url, "GET"); return json(['code' => 0, 'msg' => '预约成功','data'=>$resdata['Number']]); } return json(['code' => -1, 'msg' => $list['msg']]); } //预约美容师 public function choice_beautician(){ $stoid = I('stoid', 0); $is_ajax=I("is_ajax"); $pk_name=I("pk_name"); if($pk_name) $this->assign("pk_name",$pk_name); if($is_ajax) { $page = I("p"); $pdata['serviceId']= urlencode(I("itemId")); $pdata['storageId']=urlencode(I("storageId")); $pdata['storeId']=$stoid; $pdata['userId']=$this->user_id; $list=getApiData_mini("/api/weshop/marketing/reservation/staff/page",$pdata,$stoid,'GET',null,$page,10); $list=json_decode($list,true); //$list=getApiData_mini("http://172.20.3.102:8022/api/weshop/yy_fuwu_meirongshi",null,$stoid,'GET',null,$page,10); //$list=json_decode($list,true); if($list['code']===0){ $this->assign('list', $list['data']['pageData']); $this->assign("pro_id",I("pro_id")); $this->assign("ser_id",I("itemId")); } return $this->fetch('ajax_choice_beautician', $stoid); } return $this->fetch('', $stoid); } //----预约评价,有不同的地方跳到评价页面------ public function yy_evaluate(){ $stoid = I('stoid', 0); $number = I('number'); $fromtype=I('fromtype'); $fromid=I('fromid'); $data['storeId']=$stoid; $data['userId']=$this->user_id; $chekc_data=null; $chekc_data['storeId']=$stoid; if($number){ $fromtype=2; $chekc_data['number']= $number; } if($fromid){ $data['formId']=$fromid; $chekc_data['number']= $fromid; } if(empty($chekc_data['number'])){ $this->error("接受参数错误",U('yyservice/service_items_list',['stoid'=>$stoid])); } $this->assign("user_id", $data['userId']); $this->assign("fromid",$fromid); $list=getApiData_mini("/api/weshop/evaluation/evaluate/check",$chekc_data,$stoid,'GET',null,1,20); $list=json_decode($list,true); //---没有评价的时候---- if($list['code']==0 && $list['data']==="0"){ //---增加判断是否有评价--- if($fromtype==2){ //--如果number 是从前端跳转过来的时候-- $data['number']=$number; if(empty($number)){ $data['number']=$fromid; } $this->assign("number",$data['number']); $list=getApiData_mini("/api/weshop/marketing/reservation/reservation/page",$data,$stoid,'GET',null,1,20); $list=json_decode($list,true); if($list['code']===0){ $dd=$list["data"]['pageData'][0]; $dd['WriteTime']=date("Y-m-d H:i:s",strtotime($dd['WriteTime'])); $this->assign("data",$dd); } }else if($fromtype==3){ $this->assign("fromid",$fromid); $list=getApiData_mini("/api/weshop/marketing/reservation/servicewrite/get",$data,$stoid,'GET',null,1,20); $list=json_decode($list,true); if($list['code']===0){ $dd=$list["data"]; $dd['BillDate']=date("Y-m-d H:i:s",strtotime($dd['BillDate'])); $this->assign("data",$dd); }else{ $this->error($list['msg'],U('yyservice/service_items_list',['stoid'=>$stoid])); } } }else if($list['code']==0 && $list['data']==="1"){ $this->assign("is_pj",1); $get_pj_data['storeId']=$stoid; $get_pj_data['number']= $chekc_data['number']; $list=getApiData_mini("/api/weshop/evaluation/evaluate/get",$get_pj_data,$stoid,'GET',null,1,20); $list=json_decode($list,true); if($list['code']===0){ $dd=$list["data"]; $dd['WriteTime']=date("Y-m-d H:i:s",strtotime($dd['WriteTime'])); $dd['EvaluateDatetime']=date("Y-m-d H:i:s",strtotime($dd['EvaluateDatetime'])); $this->assign("data",$dd); } } $this->assign("fromtype",$fromtype); return $this->fetch('', $stoid); } //---美容师预约详情,选择预约时间--- public function yy_beautician_details(){ $stoid = I('stoid', 0); $number=I("number"); $i_tme=I('time'); $m_id=I('m_id'); $pro_id=I('pro_id'); $serviceId=I('serviceId'); $data=null; //---如果有订单号的情况下--- if($number){ $this->assign("number",$number); $data['storeId']=$stoid; $data['number']=$number; $data['userId']=$this->user_id; $list=getApiData_mini("/api/weshop/marketing/reservation/reservation/page",$data,$stoid,'GET',null,1,20); $list=json_decode($list,true); if($list['code']===0) { $dd = $list["data"]['pageData'][0]; $data['beauticianId']=urlencode($dd["BeauticianID"]); $this->assign("pk_name",$dd['StorageName']); //$this->assign("arrangeTime",$dd['ArrangeTime']); $i_tme=$dd['ArrangeTime']; $m_id=$dd["BeauticianID"]; $pro_id=$dd["ProjectID"]; $serviceId=$dd["ServiceID"]; } }else{ $data['beauticianId']=urlencode($m_id); $pk_name=I("pk_name"); if($pk_name) $this->assign("pk_name",$pk_name); } if($m_id) $this->assign("m_id",$m_id); if($pro_id) $this->assign("pro_id",$pro_id); if($serviceId) $this->assign("ser_id",$serviceId); //--如果有时间的话-- if($i_tme) $this->assign("arrangeTime",$i_tme); $data['storeId']=$stoid; //---获取美容师--- $list=getApiData_mini("/api/weshop/marketing/reservation/staff/get",$data,$stoid,'GET',null,1,20); $list=json_decode($list,true); if($list['code']===0){ $this->assign("data",$list["data"]); } $data1['projectId']=urlencode($pro_id); $data1['beauticianId']=urlencode($m_id); $data1['serviceId']=urlencode($serviceId); $data1['storeId']=$stoid; //----获取7天的时间--- $list=getApiData_mini("/api/weshop/marketing/reservation/staff/seven/time/list",$data1,$stoid,'GET',null,1,20); $list=json_decode($list,true); if($list['code']===0){ //--判断所有时间是否都可以预约-- $is_can_yy=0; if($list["data"]){ $arr=$list["data"]; ksort($arr); foreach ($arr as $kk=>$vv){ if(empty($vv)) continue; $item=$vv[count($vv)-1]; if($kk==0){ if( !strpos($item['GroupHour'],'于') && $item['GroupHour']>=date("H:i:S")){ $is_can_yy=1; break; } }else{ if( !strpos($item['GroupHour'],'于')){ $is_can_yy=1; break; } } } } $this->assign("is_can_yy",$is_can_yy); $this->assign("seven", json_encode($list["data"])); } return $this->fetch('', $stoid); } //----历史服务---- public function yy_history(){ $stoid=getMobileStoId(); $is_ajax=I("is_ajax"); if($is_ajax) { $page=I("p"); $start_time=I("beginDate"); $end_time=I("endDate"); $pdata=null; if($start_time) $pdata['beginDate']=$start_time; if($end_time) $pdata['endDate']=$end_time; $pdata['storeId']=$stoid; $pdata['userId']=$this->user_id; $list=getApiData_mini("/api/weshop/marketing/reservation/history/reservation/page",$pdata,$stoid,'GET',null,$page,20); $list=json_decode($list,true); if($list['code']===0){ $this->assign('list', $list['data']['pageData']); $this->assign('total', $list['data']['total']); } return $this->fetch('ajax_yy_history', $stoid); } return $this->fetch('', $stoid); } //---我的预约--- public function yy_order_list() { $stoid=getMobileStoId(); $is_ajax=I("is_ajax"); $data['storeId']=$stoid; if($is_ajax) { $page=I('p'); $state=I("state","-1"); $data['userId']=$this->user_id; if($state!="-1") $data['state']= (int)$state; $list=getApiData_mini("/api/weshop/marketing/reservation/reservation/page",$data,$stoid,'GET',null,$page,20); $list=json_decode($list,true); if($list['code']===0){ $this->assign('list', $list['data']['pageData']); } return $this->fetch('ajax_yy_order_list', $stoid); } return $this->fetch('', $stoid); } //--预约详情-- public function yy_details(){ $stoid=getMobileStoId(); $number = I('number'); $this->assign("number",$number); $data['storeId']=$stoid; $data['number']=$number; $data['userId']=$this->user_id; $list=getApiData_mini("/api/weshop/marketing/reservation/reservation/page",$data,$stoid,'GET',null,1,20); $list=json_decode($list,true); if($list['code']===0){ $dd=$list["data"]['pageData'][0]; $this->assign('list', $dd); } return $this->fetch('', $stoid); } //--获取选择服务的门店-- public function ajax_get_pick(){ $stoid=getMobileStoId(); $page=I('p'); $serviceId=I('ser_id'); $pdata['serviceId']=urlencode($serviceId); $pdata['storeId']=$stoid; $pdata['userId']=$this->user_id; $pdata['longitude']=I('lx'); $pdata['latitude']=I('ly'); $KeyWord=I("sear_key"); if($KeyWord) $pdata['keyWord']= urlencode($KeyWord); $list=getApiData_mini("/api/weshop/marketing/reservation/storage/page",$pdata,$stoid,'GET',null,$page,10); if (empty($list)){ return json(['code'=>-1,'msg'=>'网络繁忙,请重试!']); } $list=json_decode($list,true); if($list['code']===0){ if($list["data"]['total']){ return json(['code'=>0,'msg'=>'获取成功','total'=>$list["data"]['total'],'data'=>$list['data']['pageData']]); }else{ return json(['code'=>-1,'msg'=>'暂无门店']); } } else return json(['code'=>-1,'msg'=>'暂无门店']); } //---获取选择服务的美容师--- public function ajax_get_meirongshi(){ $stoid=getMobileStoId(); $page=I('p'); $pdata['serviceId']=urlencode(I("ser_id")); $pdata['storageId']=urlencode(I("storageId")); $pdata['storeId']=$stoid; $pdata['userId']=$this->user_id; $list=getApiData_mini("/api/weshop/marketing/reservation/staff/page",$pdata,$stoid,'GET',null,$page,100); if (empty($list)){ return json(['code'=>-1,'msg'=>'网络繁忙,请重试!']); } $list=json_decode($list,true); if($list['code']===0){ if($list['data']['pageData']){ return json(['code'=>0,'msg'=>'获取成功','total'=>$list['total'],'data'=>$list['data']['pageData']]); } return json(['code'=>-1,'msg'=>'暂无美容师']); } else return json(['code'=>-1,'msg'=>'暂无美容师']); } //----获取选择服务的美容师的时间---- public function get_meirongshi_time(){ $stoid=getMobileStoId(); //$list=getApiData_mini("http://172.20.3.102:8022/api/weshop/yy_fuwu_meirongshi_time_get",null,$stoid); $data['beauticianId']=urlencode(I('beauticianId')); $data['projectId']=urlencode(I('projectId')); $data['serviceId']=urlencode(I('serviceId')); $data['seekTime']= date('Y-m-d', strtotime(I('SeekTime'))); $data['storeId']=$stoid; $list=getApiData_mini("/api/weshop/marketing/reservation/staff/time/list",$data,$stoid); if (empty($list)){ return json(['code'=>-1,'msg'=>'网络繁忙,请重试!']); } $list=json_decode($list,true); if($list['code']===0){ if($list['data'] && strpos($list['data'][0]['GroupHour'],"于")){ return json(['code'=>-1,'msg'=>$list['data'][0]['GroupHour']]); } return json(['code'=>0,'msg'=>'获取成功','data'=>$list['data']]); } else return json(['code'=>-1,'msg'=>'获取失败']); } //---更改预约时间---- public function fuwu_change_time(){ $stoid=getMobileStoId(); $data['number']=I("number"); $data['storeId']=$stoid; $data['arrangeTime']=I("time"); $list=getApiData_mini("/api/weshop/marketing/reservation/reservation/update",$data,$stoid, "PUT",null,null,null,null,1); if (empty($list)){ return json(['code'=>-1,'msg'=>'网络繁忙,请重试!']); } $list=json_decode($list,true); if($list['code']===0){ return json(['code'=>0,'msg'=>'更改时间成功']); } return json(['code'=>-1,'msg'=>$list['msg']]); } //---取消预约---- public function fuwu_cancle(){ $stoid=getMobileStoId(); $data['number']=I("number"); $data['storeId']=$stoid; $data['states']=3; $list=getApiData_mini("/api/weshop/marketing/reservation/reservation/update",$data,$stoid,"PUT",null,null,null,null,1); if (empty($list)){ return json(['code'=>-1,'msg'=>'网络繁忙,请重试!']); } $list=json_decode($list,true); if($list['code']===0){ return json(['code'=>0,'msg'=>'取消预约成功']); } return json(['code'=>-1,'msg'=>$list['msg']]); } //---获取评价是label---- public function star_lab(){ $stoid=getMobileStoId(); $data['Star']= I("Star/d",1); $data['storeId']= $stoid; $list=getApiData_mini("/api/weshop/marketing/reservation/star/label/list",$data,$stoid); if (empty($list)){ return json(['code'=>-1,'msg'=>'网络繁忙,请重试!']); } $list=json_decode($list,true); if($list['code']===0){ return json($list); }else{ return json(['code'=>-1,'msg'=>'获取失败']); } } //----评价预约---- public function post_evaluate(){ $stoid=getMobileStoId(); $data=I("*."); $data['star']=(int)$data['Star']; $data['storeId']=$stoid; $data['userId']=$this->user_id; if(empty($data['evaLabList'])){ unset($data['evaLabList']); }else{ $dh=explode('|',$data['evaLabList']); $evaLabList=null; foreach ($dh as $k=>$v){ if($v) $evaLabList[]=$v; } $data['evaLabList']=$evaLabList; } $list=getApiData_mini("/api/weshop/evaluation/evaluate/insert",$data,$stoid,"POST", null,null,null,null,1); if (empty($list)){ return json(['code'=>-1,'msg'=>'网络繁忙,请重试!']); } $list=json_decode($list,true); if($list['code']===0){ return json(['code'=>0,'msg'=>"评价成功"]); } return json(['code'=>-1,'msg'=>"评价失败"]); } //---获取可预约人数--- public function can_yy_num(){ $stoid=getMobileStoId(); $data=I("post."); $data['storeId']=$stoid; $data['seekTime']=urlencode(date('Y-m-d H:i:s',strtotime($data['seekTime']))); $list=getApiData_mini("/api/weshop/marketing/reservation/can/reservation/count",$data,$stoid); if (empty($list)){ return json(['code'=>-1,'msg'=>'网络繁忙,请重试!']); } $list=json_decode($list,true); if($list['code']===0){ return json($list); } return json($list); } //------点击预约前判断是否有预约正在进行------- public function check_is_yy_ing(){ $stoid=getMobileStoId(); $serviceId=I("serviceId"); $pdata['state']=0; $pdata['storeId']=$stoid; $pdata['userId']=$this->user_id; $pdata['serviceId']=urlencode($serviceId); $list=getApiData_mini("/api/weshop/marketing/reservation/reservation/check",$pdata,$stoid,'GET',null,1,20); if (empty($list)){ return json(['code'=>-1,'msg'=>'网络繁忙,请重试!']); } $list=json_decode($list,true); if($list['code']===0){ $pd=$list['data']; if($pd) return json(['code'=>0,'data'=>$pd]); } return json(['code'=>-1]); } //------点击预约前判断剩余次数是否足够------- public function check_yy_chishu(){ $stoid=getMobileStoId(); $pro_id=I("pro_id"); $ser_id=I("serviceId"); $pdata['storeId']=$stoid; $pdata['userId']=$this->user_id; $pdata['projectId']=urlencode($pro_id); $pdata['serviceId']=urlencode($ser_id); $list=getApiData_mini("/api/weshop/marketing/reservation/reservation/sm/check",$pdata,$stoid,'GET',null,1,20); if (empty($list)){ return json(['code'=>-1,'msg'=>'网络繁忙,请重试!']); } $list=json_decode($list,true); if($list['code']===0){ return json($list); } return json($list); } }