1, 'status'=>1]) ->field('id,title,image,url') ->order('list_order asc,id asc') ->select(); $datas = $datas? $datas->toArray() : []; if($datas){ foreach ($datas as &$v){ $v['image'] = $v['image']? cmf_get_image_preview_url($v['image']) : ''; } unset($v); PRedis::set($cacheKey, $datas, rand(10, 300)); } showJson(1005, 1001, $datas); } /** * 图文 * @throws \think\exception\DbException */ public function getPicList(){ $page = input('page', 1); $type = input('type', 1); $pageSize = input('pageSize', 1); $cacheKey = "cache:pics:index:{$type}_{$page}_{$pageSize}"; $datas = PRedis::get($cacheKey); if($datas){ showJson(1005, 1001, $datas); } $datas = PortalPostModel::alias('p') ->leftJoin('sg_user u','u.id=p.user_id') ->where(['p.post_status'=>1,'p.post_type'=>3]) ->where(function (Query $query) use ($type) { if($type){ $query->where('p.type', $type); } }) ->field('p.id,p.post_title,p.post_type,p.type,p.user_id,p.published_time,p.post_excerpt,p.thumbnail,p.albums,p.post_status,u.user_nickname,u.avatar') ->order("p.is_top DESC,p.published_time DESC") ->paginate($pageSize) ->each(function($item, $k){ $albums = isset($item['albums']) && $item['albums']? explode(',', $item['albums']) : []; foreach ($albums as &$v){ $v = $v? cmf_get_image_preview_url($v) : ''; } unset($v); $item['avatar'] = $item['avatar']? cmf_get_image_preview_url($item['avatar']) : ''; $item['published_time_text'] = $item['published_time']? date('Y-m-d H:i:s',$item['published_time']) : ''; $item['albums'] = $albums; return $item; }); if($datas){ PRedis::set($cacheKey, $datas, rand(10, 30)); } showJson(1005, 1001, $datas); } /** * 获取JSSDK参数 */ public function getJssdkParams(){ $url = input('url', ''); $jssdkParams = Wechat::getJssdkParams($url); $siteInfo = $siteInfo = cmf_get_site_info(); $jssdkParams['mapKey'] = isset($siteInfo['map_key'])? trim($siteInfo['map_key']) : ''; PRedis::set('shares:'.date('YmdHis'), ['url'=> $url,'params'=> $jssdkParams], 600); showJson(1005,1001, $jssdkParams); } /** * 获取微信信息 */ public function getWxInfo(){ $wxInfo = session('wxInfo'); showJson(1005,1001, $wxInfo); } /** * 获取条件参数 */ public function params(){ $type = input('type', 1); if($type == 1){ $params['ages'] = config('weixin.ages'); $params['heights'] = config('weixin.heights'); $params['weights'] = config('weixin.weights'); $params['incomes'] = config('weixin.incomes'); $params['educations'] = config('weixin.educations'); $params['positions'] = config('weixin.positions'); $params['marrieds'] = config('weixin.marrieds'); $params['propertys'] = config('weixin.propertys'); $params['tags'] = config('weixin.tags'); $params['incomeTypes'] = config('weixin.incomeTypes'); }else if($type == 2){ $params['complainTypes'] = config('weixin.complainTypes'); }else if($type == 3){ $params['adviceTypes'] = config('weixin.adviceTypes'); } showJson(1005,1001, $params); } /** * 获取网站信息 */ public function getSiteInfo(){ $siteInfo = $siteInfo = cmf_get_site_info(); $chooseNum = isset($siteInfo['choose_num'])? intval($siteInfo['choose_num']) : 0; $data = [ 'site_name'=> isset($siteInfo['site_name'])? $siteInfo['site_name'] : '', 'site_seo_title'=> isset($siteInfo['site_seo_title'])? $siteInfo['site_seo_title'] : '', 'site_seo_keywords'=> isset($siteInfo['site_seo_keywords'])? $siteInfo['site_seo_keywords'] : '', 'site_seo_description'=> isset($siteInfo['site_seo_description'])? $siteInfo['site_seo_description'] : '', 'choose_num'=> $chooseNum? $chooseNum : 3, 'contact_type'=> isset($siteInfo['contact_type'])? $siteInfo['contact_type'] : 1, 'custom_intro'=> isset($siteInfo['custom_intro'])? htmlspecialchars_decode($siteInfo['custom_intro']) : '', ]; showJson(1005,1001, $data); } /** * 获取广告列表 */ public function getAdvertList(){ $id = input('type', 1); $pages = config('config.pages'); $slideNum = isset($pages['slideNum'])? intval($pages['slideNum']) : 0; $dataList = db('slide')->alias('s') ->join('slide_item si','si.slide_id=s.id','left') ->where(['s.id'=> $id,'s.status'=> 1]) ->field('si.id,si.title,si.image,si.url,si.description') ->order('si.list_order') ->limit($slideNum? $slideNum :6) ->select() ->toArray(); foreach($dataList as &$item){ $item['image'] = $item['image']? cmf_get_image_preview_url($item['image']) : ''; } showJson(1005,1001, $dataList); } /** * 获取单页文章内容 */ public function getPage(){ $info = []; $type = input('type', 'about'); $articles = config('weixin.articles'); $articleId = isset($articles[$type])? intval($articles[$type]) : 0; if($articleId){ $field = 'id,thumbnail,post_title,post_excerpt,post_content,published_time,post_source,user_id'; $info = PortalPostModel::where(['id'=> $articleId,'post_type'=> 2,'post_status'=>1]) ->field($field) ->find(); if($info){ $info['post_content'] = htmlspecialchars_decode($info['post_content']); } } $info['version'] = config('weixin.version'); showJson(1005,1001, $info); } /** * 获取客服列表 */ public function getCustomList(){ $params = input(); $pageSize = input('pageSize', 20); $dataList = Article::getList($params, $pageSize); showJson(1005, 1001, $dataList); } } ?>