field('id,name,cover') ->where(['is_deleted'=>0]) ->order('sort desc ,id desc') ->select(); $this->success('ok',$list); } /** * @title 首页藏品列表 * @desc 首页藏品列表 * @author Gavin * @url /api/Index/indexCollectionList * @method POST * @header name:Authorization require:1 desc:Token * * @return name:name type:string default:-- desc:藏品名称 * @return name:cover type:string default:-- desc:藏品图 * @return name:label type:string default:-- desc:标签 * @return name:price type:DECIMAL default:-- desc:价格 * @return name:inventory type:int default:-- desc:库存 * @return name:now_inventory type:int default:-- desc:剩余库存 * @return name:state type:float default:-- desc:藏品状态(1:进行中2:即将开售3:已售罄) * @return name:sell_time type:string default:-- desc:发行时间 * @return name:is_remind type:string default:-- desc:是否设置提醒true:已设置false:未设置 */ public function indexCollectionList(){ checkCollectionState(); parent::set_uid(); $type = input('type',1); $list = Db::name('store_collection') ->where('is_deleted',0) ->where('status',1) ->whereIn('type',$type) ->field('id,cover,name,label,price,inventory,now_inventory,state,sell_time,detail_img,sold_out,buy_count') ->order('state asc,sell_time desc') ->select(); foreach ($list as &$v){ $now_inventory = getCollectionInventory($v['id']); $v['now_inventory'] = $now_inventory<=0 ? 0 : $now_inventory; if (!$v['sold_out']){ $v['state'] =3; $v['now_inventory'] = 0; } $v['id'] = (string)$v['id']; $v['is_remind'] = getRemind($this->uid,$v['id']) ? true : false; } $this->success('成功',$list); } /** * @title 发售日历 * @desc 发售日历 * @author Gavin * @url /api/Index/CollectionCalendar * @method POST * @header name:Authorization require:1 desc:Token * * @return name:name type:string default:-- desc:藏品名称 * @return name:cover type:string default:-- desc:藏品图 * @return name:label type:string default:-- desc:标签 * @return name:price type:DECIMAL default:-- desc:价格 * @return name:inventory type:int default:-- desc:库存 * @return name:now_inventory type:int default:-- desc:剩余库存 * @return name:state type:float default:-- desc:藏品状态(1:进行中2:即将开售3:已售罄) * @return name:sell_time type:string default:-- desc:发行时间 * @return name:date type:string default:-- desc:日期 * @return name:time type:string default:-- desc:时间 * @return name:is_remind type:string default:-- desc:是否设置提醒true:已设置false:未设置 */ public function CollectionCalendar(){ checkCollectionState(); parent::set_uid(); $datelist = Db::name('store_collection') ->where('is_deleted',0) ->where('status',1) ->where('state',2) ->whereIn('type','1,3') ->where('date','>=',date('Y-m-d',time())) ->group('date') ->order('date asc') ->column('date'); if ($datelist){ foreach ($datelist as $k=>&$v){ $array[$k]['date'] = $v; $list = Db::name('store_collection') ->where('is_deleted',0) ->where('status',1) ->where('state',2) ->where('date',$v) ->field('id,cover,name,label,price,inventory,now_inventory,state,sell_time,date,detail_img,sold_out,buy_count') ->order('state asc,sell_time asc') ->select(); foreach ($list as &$a){ $a['time'] = date('H:i',strtotime($a['sell_time'])); $a['is_remind'] = getRemind($this->uid,$a['id']) ? true : false; $now_inventory = getCollectionInventory($a['id']); $a['now_inventory'] = $now_inventory<=0 ? 0 : $now_inventory; if (!$a['sold_out']){ $a['state'] =3; $a['now_inventory'] = 0; } $a['id'] = (string)$a['id']; } $array[$k]['list'] = $list; } }else $array=[]; $this->success('成功',$array); } /** * @title 藏品详情 * @desc 藏品详情 * @author Gavin * @url /api/Index/CollectionDetail * @method POST * @header name:Authorization require:1 desc:Token * * @param name:id type:string require:1 default:-- desc:藏品ID * * @return name:name type:string default:-- desc:藏品名称 * @return name:cover type:string default:-- desc:藏品图 * @return name:label type:string default:-- desc:标签 * @return name:price type:DECIMAL default:-- desc:价格 * @return name:inventory type:int default:-- desc:库存 * @return name:now_inventory type:int default:-- desc:剩余库存 * @return name:state type:float default:-- desc:藏品状态(1:进行中2:即将开售3:已售罄) * @return name:sell_time type:string default:-- desc:发行时间 * @return name:describe type:string default:-- desc:商品描述 * @return name:buy_count type:int default:1 desc:限购数量 * @return name:instructions type:int default:1 desc:权益说明 * @return name:buy_notice type:int default:1 desc:购买须知 * @return name:warm_prompt type:int default:1 desc:温馨提示 * @return name:auth_img type:int default:1 desc:作者头像 * @return name:auth_name type:int default:1 desc:作者姓名 * @return name:is_remind type:string default:-- desc:是否设置提醒true:已设置false:未设置 * @return name:share_img type:string default:-- desc:分享二维码 */ public function CollectionDetail(){ parent::set_uid(); $collect_id = input('id'); if (!$collect_id) $this->error('参数错误'); checkCollectionState($collect_id); $info = Db::name('store_collection') //->where('is_deleted',0) //->where('status',1) ->whereIn('type','1,3') ->where('id',$collect_id) ->field('id,cover,name,label,price,inventory,now_inventory,state,sell_time,describe,buy_count,instructions,buy_notice,warm_prompt,auth_img,auth_name,share_img,intro,detail_img,format,sold_out') ->find(); if (!$info) $this->error('藏品不存在'); $info['describe'] = explode('|',$info['describe']); $info['is_remind'] = getRemind($this->uid,$info['id']) ? true : false; $now_inventory = getCollectionInventory($info['id']); $info['now_inventory'] = $now_inventory<=0 ? 0 : $now_inventory; if (!$info['sold_out']){ $info['state'] =3; $info['now_inventory'] = 0; } $info['id'] = (string)$info['id']; $this->success('成功',$info); } /** * @title 设置提醒 * @desc 设置提醒 * @author Gavin * @url /api/Index/setRemind * @method POST * @header name:Authorization require:1 desc:Token * * @param name:id type:string require:1 default:-- desc:藏品ID */ public function setRemind(){ parent::check_login(); $id = input('id'); if (!$id) $this->error('参数错误'); $remind = Db::name('store_collection_remind') ->where('mid',$this->uid) ->where('c_id',$id) ->count(); if ($remind) $this->error('已设置过'); $data = [ 'c_id'=>$id, 'mid'=>$this->uid, 'mobile'=>Db::name('store_member')->where('id',$this->uid)->value('phone') ]; if (Db::name('store_collection_remind')->insert($data)) $this->success('设置成功'); $this->error('设置失败'); } public function jytest(){ $lot_number = input('lot_number'); $captcha_output = input('captcha_output'); $pass_token = input('pass_token'); $gen_time = input('gen_time'); $jy = new Jiyan(); $jy->jy($lot_number,$captcha_output,$pass_token,$gen_time,2); } }