renderError('供应商不存在'); } $page=(new AppPage()) ->where('is_default',1) ->where('page_type',10) ->where('shop_supplier_id',$shop_supplier_id) ->find(); if (!$page) { $page=(new AppPage()) ->where('page_type',10) ->where('shop_supplier_id',$shop_supplier_id) ->find(); } if ($page){ $page_id=$page['page_id']; } // 页面元素 $data = AppPage::getPageData($this->getUser(false), $page_id,'',$shop_supplier_id); //消息条数 $Chat = new ChatModel; $data['msgNum'] = $Chat->mCount($this->getUser(false)); $data['setting'] = array( 'collection' => SettingModel::getItem('collection'), 'officia' => SettingModel::getItem('officia'), 'homepush' => SettingModel::getItem('homepush'), 'store' => SettingModel::getItem('store'), ); // 扫一扫参数 $data['signPackage'] = $this->getScanParams($url)['signPackage']; $data['vars'] = SettingModel::getItem(SettingEnum::NAV.'_'.$shop_supplier_id,$this->app_id,$shop_supplier_id); return $this->renderSuccess('', $data); } /** * 单独获取首页数据 */ public function getPageData($page_id = null,$city_supplier_ids='') { // 页面元素 $data = AppPage::getPageData($this->getUser(false), $page_id,$city_supplier_ids); return $this->renderSuccess('', $data); } /** * 首页 */ public function diy($page_id = null, $url = '') { // 页面元素 $data = AppPage::getPageData($this->getUser(false), $page_id); // 微信公众号分享参数 $data['share'] = $this->getShareParams($url, $data['page']['params']['share_title'], $data['page']['params']['share_title'], '/pages/diy-page/diy-page', $data['page']['style']['toplogo']); return $this->renderSuccess('', $data); } // 公众号客服 public function mpService($shop_supplier_id) { $mp_service = ServiceModel::detail($shop_supplier_id); return $this->renderSuccess('', compact('mp_service')); } //底部导航 public function nav($shop_supplier_id) { $data['vars'] = SettingModel::getItem(SettingEnum::NAV.'_'.$shop_supplier_id,$this->app_id,$shop_supplier_id); $data['theme'] = SettingModel::getItem(SettingEnum::THEME); $data['points_name'] = SettingModel::getPointsName(); return $this->renderSuccess('', $data); } // app更新 public function update($name, $version, $platform) { $result = [ 'update' => false, 'wgtUrl' => '', 'pkgUrl' => '', ]; try { $model = AppUpdateModel::getLast(); if($platform == 'android'){ $compare_version = $model['version_android']; }else{ $compare_version = $model['version_ios']; } // 这里简单判定下,不相等就是有更新。 if($model && $version != $compare_version){ $currentVersions = explode('.', $version); $resultVersions = explode('.', $compare_version); if ($currentVersions[0] < $resultVersions[0]) { // 说明有大版本更新 $result['update'] = true; $result['pkgUrl'] = $platform == 'android' ? $model['pkg_url_android'] : $model['pkg_url_ios']; log_write('大版本'); } else { // 其它情况均认为是小版本更新 $result['update'] = true; $result['wgtUrl'] = $model['wgt_url']; log_write('小版本'.$result['wgtUrl']); } } } catch (\Exception $e) { } return $this->renderSuccess('', compact('result')); } //坐标解析站点并根据站点获取匹配的商户 public function getCitySupplierBycity($city) { $city_id = RegionModel::getIdByCityName($city, 2); $storeData = StoreModel::where('city_id', '=', $city_id)->select()->toArray(); $supplier_ids = array_column($storeData,'shop_supplier_id'); $name = $city; $level = 2; return $this->renderSuccess('', compact('supplier_ids', 'city', 'name', 'level')); } //坐标解析站点并根据站点获取匹配的商户 by yj public function getCitySupplierByRegion($city) { $region_id = RegionModel::getIdByCityName($city, 3); $storeData = StoreModel::where('region_id','=',$region_id)->select()->toArray(); $supplier_ids = array_column($storeData,'shop_supplier_id'); $name = RegionModel::getParentNameById($region_id); $level = 3; return $this->renderSuccess('', compact('supplier_ids','city', 'name', 'level')); } //坐标解析站点并根据站点获取匹配的商户 public function getCitySupplier($longitude,$latitude) { //$city=$this->getAddress($longitude,$latitude); $address = $this->getAddress($longitude,$latitude);//省 $name = $address["city"]; $city = $address["district"]; $region_id = RegionModel::getIdByCityName($city,3); $storeData = StoreModel::where('region_id','=',$region_id)->select()->toArray(); /*$city=$address["city"]; $city_id = RegionModel::getIdByCityName($city,2); if(empty($storeData)){ $storeData=StoreModel::where('city_id','=',$city_id)->select()->toArray(); }*/ $supplier_ids = array_column($storeData,'shop_supplier_id'); $level = 3; return $this->renderSuccess('',compact('supplier_ids', 'city', 'name', 'level')); } //输入经纬度获取地址(腾讯地图) function getAddress($longitude,$latitude) { header("Content-type:text/html;charset=utf-8"); $ak = 'LS7BZ-NHSWK-CWOJQ-AJC7Y-H5HE2-UGBWR';//你腾讯地图的k值 $url = "http://apis.map.qq.com/ws/geocoder/v1/?location={$latitude},{$longitude}&key={$ak}"; $json = file_get_contents($url); $data = json_decode($json,TRUE); //return $data['result']['ad_info']['city'];//获取地址 return $data['result']['ad_info'];//获取地址 } //坐标解析站点并根据站点获取匹配的商户 public function getCityData() { $formData = SettingModel::getItem('store'); $citysData = array(); if(!empty($formData['citysData'])){ $citysData = unserialize($formData['citysData']); } return $this->renderSuccess('', $citysData); } //坐标解析站点并根据站点获取匹配的商户 public function getCityList() { $formData = SettingModel::getItem('store'); $citysData = array(); if(!empty($formData['citysData'])){ $citysData = unserialize($formData['citysData']); } // 整理数据 by lyzflash $cityList = array(); foreach ($citysData as $row) { $cityList = array_merge($cityList, $row['citys']); } $cityList = array_values(array_sort($cityList, 'pinyin')); // 字母列表 $alphabet = array_unique(array_merge(['area', 'record'], array_column($cityList, 'first'))); return $this->renderSuccess('', compact('cityList', 'alphabet')); } //调用接口执行定时器 public function ss(){ event('AgentOrder'); } }