| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129 |
- <?php
- /**
- *
- * @author: xaboy<365615158@qq.com>
- * @day: 2017/12/12
- */
- namespace app\wap\controller;
- use app\wap\model\store\StoreCombination;
- use app\admin\model\system\SystemGroup;
- use app\admin\model\system\SystemGroupData;
- use app\wap\model\store\StoreCategory;
- use app\wap\model\store\StoreCouponIssue;
- use app\wap\model\store\StoreProduct;
- use app\wap\model\wap\ArticleCategory;
- use service\JsonService;
- use service\UtilService;
- use think\Cache;
- class PublicApi
- {
- public function get_cid_article($cid = 0,$first = 0,$limit = 8)
- {
- $list = ArticleCategory::cidByArticleList($cid,$first,$limit,'id,title,image_input,visit,add_time,synopsis,url')?:[];
- foreach ($list as &$article){
- $article['add_time'] = date('Y-m-d H:i',$article['add_time']);
- }
- return JsonService::successful('ok',$list);
- }
- public function get_video_list($key = '', $first = 0,$limit = 8)
- {
- $gid = SystemGroup::where('config_name',$key)->value('id');
- if(!$gid){
- $list = [];
- }else{
- $video = SystemGroupData::where('gid',$gid)->where('status',1)->order('sort DESC,add_time DESC')->limit($first,$limit)->select();
- $list = SystemGroupData::tidyList($video);
- }
- return JsonService::successful('ok',$list);
- }
- public function get_issue_coupon_list($limit = 2)
- {
- $list = StoreCouponIssue::validWhere('A')->join('__STORE_COUPON__ B','A.cid = B.id')
- ->field('A.*,B.coupon_price,B.use_min_price')->order('id DESC')->limit($limit)->select()->toArray();
- return JsonService::successful($list);
- }
- public function get_category_product_list($limit = 4)
- {
- $cateInfo = StoreCategory::where('is_show',1)->where('pid',0)->field('id,cate_name,pic')
- ->order('sort DESC')->select()->toArray();
- $result = [];
- $StoreProductModel = new StoreProduct;
- foreach ($cateInfo as $k=>$cate){
- $cate['product'] = $StoreProductModel::alias('A')->where('A.is_del',0)->where('A.is_show',1)
- ->where('A.mer_id',0)->where('B.pid',$cate['id'])
- ->join('__STORE_CATEGORY__ B','B.id = A.cate_id')
- ->order('A.is_benefit DESC,A.sort DESC,A.add_time DESC')
- ->limit($limit)->field('A.id,A.image,A.store_name,A.sales,A.price,A.unit_name')->select()->toArray();
- if(count($cate['product']))
- $result[] = $cate;
- }
- return JsonService::successful($result);
- }
- /** 首页获取推荐产品
- * @param int $first
- * @param int $limit
- */
- public function get_product_list($first = 0,$limit = 8)
- {
- $StoreProductmodel = StoreProduct::validWhere();
- if(input('type')=='is_best')
- $StoreProductmodel = $StoreProductmodel->where('is_best',1);
- if(input('type')=='is_hot')
- $StoreProductmodel = $StoreProductmodel->where('is_hot',1);
- if(input('type')=='is_benefit')
- $StoreProductmodel = $StoreProductmodel->where('is_benefit',1);
- if(input('type')=='is_new')
- $StoreProductmodel = $StoreProductmodel->where('is_new',1);
- if(input('type')=='is_postage')
- $StoreProductmodel = $StoreProductmodel->where('is_postage',1);
- $list = $StoreProductmodel->where('mer_id',0)->order('is_best DESC,sort DESC,add_time DESC')
- ->limit($first,$limit)->field('id,image,store_name,sales,price,unit_name')->select()->toArray();
- return JsonService::successful($list);
- }
- public function get_best_product_list($first = 0,$limit = 8)
- {
- $list = StoreProduct::validWhere()->where('mer_id',0)->order('is_best DESC,sort DESC,add_time DESC')
- ->limit($first,$limit)->field('id,image,store_name,sales,price,unit_name')->select()->toArray();
- return JsonService::successful($list);
- }
- public function wechat_media_id_by_image($mediaIds = '')
- {
- if(!$mediaIds) return JsonService::fail('参数错误');
- $mediaIds = explode(',',$mediaIds);
- $temporary = \service\WechatService::materialTemporaryService();
- $pathList = [];
- foreach ($mediaIds as $mediaId){
- if(!$mediaId) continue;
- try{
- $content = $temporary->getStream($mediaId);
- }catch (\Exception $e){
- continue;
- }
- $name = substr(md5($mediaId),12,20).'.jpg';
- $path = '.'.DS.'public'.DS.'uploads'.DS.'wechat'.DS.'media'.DS.$name;
- $res = file_put_contents($path,$content);
- if($res) $pathList[] = UtilService::pathToUrl($path);
- }
- return JsonService::successful($pathList);
- }
- public function get_pink_host($limit = 0){
- $list = StoreCombination::getCombinationHost($limit);
- if($list) return JsonService::successful($list);
- else return JsonService::successful([]);
- }
- }
|