where(['id'=>$data['admin_id']])->value('agent_name'); return $name; } } /** * @author chenniang * @DataTime: 2020-09-29 11:04 * @功能说明:添加 */ public function dataAdd($data){ $data['create_time'] = time(); $res = $this->insert($data); return $res; } /** * @author chenniang * @DataTime: 2020-09-29 11:05 * @功能说明:编辑 */ public function dataUpdate($dis,$data){ $res = $this->where($dis)->update($data); return $res; } /** * @author chenniang * @DataTime: 2020-09-29 11:06 * @功能说明:列表 */ public function dataList($dis,$page){ $data = $this->where($dis)->order('status desc,id desc')->paginate($page)->toArray(); return $data; } /** * @author chenniang * @DataTime: 2023-01-31 10:15 * @功能说明:推荐技师下拉框 */ public function indexDataList($dis,$alh,$page=10){ $data = $this->where($dis) ->field(['title,cover,star,total_num,positive_rate,id,start_time,end_time,order_rate', $alh]) ->order('distance asc,id desc') ->paginate($page) ->toArray(); return $data; } /** * @author chenniang * @DataTime: 2023-01-31 10:15 * @功能说明:推荐技师下拉框 */ public function indexDataListV2($dis,$alh,$page=10){ $data = $this->alias('a') ->join('shequshop_school_admin b','a.admin_id = b.id') ->where($dis) ->field(['a.title,a.cover,a.star,a.total_num,a.positive_rate,a.id,a.start_time,a.end_time,a.order_rate', $alh]) ->order('distance asc,id desc') ->paginate($page) ->toArray(); return $data; } /** * @param $store_id * @功能说明:获取门店的技师id 门店的代理商必须和技师的代理商相同 * @author chenniang * @DataTime: 2023-04-15 23:50 */ public function getStoreCoachId($store_id){ $coach_model = new Coach(); $dis = [ 'a.store_id' => $store_id, 'b.status' => 1, 'c.status' => 1 ]; $data = $coach_model->alias('a') ->join('massage_store_list b','a.store_id = b.id') ->join('shequshop_school_admin c','a.admin_id = c.id AND b.admin_id = c.id') ->where($dis) ->column('a.id'); return $data; } /** * @author chenniang * @DataTime: 2020-09-29 11:43 * @功能说明: */ public function dataInfo($dis){ $data = $this->where($dis)->find(); return !empty($data)?$data->toArray():[]; } /** * @author chenniang * @DataTime: 2023-03-29 16:45 * @功能说明:获取门店营业状态 */ public function workStatus($store){ $start_time = strtotime($store['start_time']); $end_time = strtotime($store['end_time']); //跨日 if($end_time <=$start_time){ //查看此时处于上一个周期还是这个周期 //上一个周期 if(time()<$end_time){ $start_time -= 86400; }else{ //当前周期 $end_time += 86400; } } if(time()>=$start_time&&time()<=$end_time){ return 1; }else{ return 0; } } /** * @author chenniang * @DataTime: 2023-03-29 18:42 * @功能说明:根据技师获取绑定的门店 */ public function checkStoreStatus($store_id,$start_time,$end_time){ if(empty($store_id)){ return true; } $store = $this->dataInfo(['status'=>1,'id'=>$store_id]); if(empty($store)){ return ['code'=>500,'msg'=>'门店已经下架']; } $work_status = $this->checkStoreTime($store,$start_time,$end_time); if(!empty($work_status['code'])){ return $work_status; } return true; } /** * @param $coach * @param $start_time * @param $end_time * @功能说明:校验技师时间 * @author chenniang * @DataTime: 2023-03-02 14:48 */ public function checkStoreTime($store,$start_time,$end_time){ $all_day = 1; //判断不是全体24小时上班 if($store['start_time']!=$store['end_time']){ $all_day = 0; } //全天不判断 if($all_day==0){ //门店上班时间 $coach_start_time = strtotime($store['start_time'])-strtotime(date('Y-m-d',time()))+strtotime(date('Y-m-d',$start_time)); //门店下班时间 $coach_end_time = strtotime($store['end_time'])-strtotime(date('Y-m-d',time()))+strtotime(date('Y-m-d',$start_time)); if($end_time<$coach_start_time){ $coach_start_time -= 86400; $coach_end_time -= 86400; } $coach_end_time = $coach_end_time>$coach_start_time?$coach_end_time:$coach_end_time+86400; if($start_time<$coach_start_time||$end_time>$coach_end_time){ return ['code'=>500,'msg'=>'不在门店营业时间内,门店营业时间:'.$store['start_time'].'-'.$store['end_time']]; } } return true; } }