<?php

namespace app\api\controller;

use app\common\controller\Api;
use think\Db;
/**
 * 首页接口
 */
class Index extends Api
{
    protected $noNeedLogin = ['*'];
    protected $noNeedRight = ['*'];


    public function index()
    {
        $this->success();
    }

    /**
     * 首页
     *
     */
    public function home(){

        //轮播图
        $banner = Db::name('banner')->field('id, title, image, url')->where(['status' => 1])->order('weigh', 'desc')->select();
        $banner = list_domain_image($banner, ['image']);

        //四个顶部分类
        $top_category = Db::name('unishop_category')->field('id, name, image')->where(['status' => 'normal','is_top' => 1])->order('weigh', 'asc')->limit(4)->select();
        $top_category = list_domain_image($top_category, ['image']);
        foreach($top_category as $key => $val){
            $val['type'] = 'product';
            if($key == 3){
                $val['type'] = 'news';
            }

            $top_category[$key] = $val;
        }

        //底部所有分类
        $buttom_category = Db::name('unishop_category')->field('id, name, image')->where(['status' => 'normal','is_top' => 0])->order('weigh', 'asc')->select();
        $buttom_category = list_domain_image($buttom_category, ['image']);


        //
        $result = [
            'banner' => $banner,
            'top_category' => $top_category,
            'buttom_category' => $buttom_category,
        ];
        $this->success(1,$result);
    }

    //是否有可领取的优惠券
    public function new_coupon(){
        //未领取的优惠券
        $coupon = (object)[];
        if($this->auth->isLogin()){
            //我拥有的
            $user_coupon = Db::name('unishop_coupon_user')->where('user_id',$this->auth->id)->column('coupon_id');
            //我没有的,可领取的
            $coupon = Db::name('unishop_coupon')->field('id,title,least,value,number')
                ->where('id','NOTIN',$user_coupon)
                ->where('deletetime',NULL)
                ->where('switch',1)
                ->where('starttime','<',time())
                ->where('endtime','>',time())
                ->order('id asc')->find();

            if(empty($coupon)){
                $coupon = (object)[];
            }else{
                $coupon['value'] = intval($coupon['value']);
            }
        }

        $this->success(1,$coupon);
    }

    //领取优惠券
    public function get_coupon(){
        $coupon_id = input('coupon_id',0);

        $coupon = Db::name('unishop_coupon')->field('id,title,least,value,number')
            ->where('id',$coupon_id)
            ->where('deletetime',NULL)
            ->where('switch',1)
            ->where('starttime','<',time())
            ->where('endtime','>',time())
            ->find();

        $user_coupon = Db::name('unishop_coupon_user')->where('user_id',$this->auth->id)->where('coupon_id',$coupon_id)->find();

        if($coupon && empty($user_coupon)){
            $data = [];
            for($i=1;$i<=$coupon['number'];$i++){
                $data[] = [
                    'coupon_id' => $coupon_id,
                    'user_id'   => $this->auth->id,
                ];
            }
            Db::name('unishop_coupon_user')->insertAll($data);
        }

        $this->success('领取成功');
    }

    //吃喝玩乐
    //列表
    public function chihewanle_list(){
        $list = Db::name('chihewanle')->field('id, title, info, image')->where(['status' => 1])->order('weigh', 'desc')->select();
        $list = list_domain_image($list, ['image']);

        $this->success(1,$list);
    }

    //吃喝玩乐
    //详情
    public function chihewanle_info(){
        $id = input('id',0);
        $info = Db::name('chihewanle')->field('id, title, info, image, content')->where('id',$id)->order('weigh', 'desc')->find();
        $info = info_domain_image($info, ['image']);

        $this->success(1,$info);
    }
}