page = input('page',1); $this->page_num = input('page_num',20); $this->off_set = $this->page * $this->page_num - $this->page_num; } /** * @title 获取商品详情 * @desc 获取商品详情 * @author qc * @url /api/Expedite/getGoodsDetail * @method GET * @header name:Authorization require:1 desc:Token * @param name:goods_id type:int require:1 default:0 desc:商品id * @return name:name type:string default:-- desc:商品名称 * @return name:cover type:string default:-- desc:商品封面图 * @return name:desc type:string default:-- desc:商品简述 * @return name:floor_price type:float default:-- desc:最低价 * @return name:month_sell type:int default:-- desc:月销量 * @return name:video type:string default:-- desc:视频 * @return name:poster type:string default:-- desc:视频封面 * @return name:is_top type:int default:-- desc:是否置顶(1置顶 0 不置顶) * @return name:spec type:string default:-- desc:规格详情 * @return name:first_classify type:int default:-- desc:一级分类id * @return name:second_classify type:int default:-- desc:二级分类id * @return name:third_classify type:int default:-- desc:三级分类id * @return name:detail type:int default:-- desc:商品详情 * @return name:postage type:float default:-- desc:商品运费 * @return name:stock type:float default:-- desc:剩余库存(所有规格总库存) * @return name:is_integral type:int default:-- desc:是否是积分商品 * @return name:integral type:int default:-- desc:积分最大抵扣金额 */ public function getGoodsDetail() { $goods_id = input('goods_id'); $detail = Db::table('store_goods') ->where(['id'=>$goods_id,'status'=>1,'is_deleted'=>0]) ->find($goods_id); if(empty($detail)) $this->error('商品已下架'); $detail['month_sell'] = Db::table('goods_sell_info') ->where(['goods_id'=>$goods_id]) ->where('create_at','> time',date('Y-m-d H:i:s',strtotime('-1 month'))) ->count(); $this->success('oK',$detail); } /** * @title 获取商品列表 * @desc 获取商品列表 * @author qc * @url /api/Expedite/getGoodsList * @method GET * @header name:Authorization require:1 desc:Token * @param name:goods_name type:string require:0 default:-- desc:商品名称 * @return name:name type:string default:-- desc:商品名称 * @return name:cover type:string default:-- desc:商品封面图 * @return name:desc type:string default:-- desc:商品简述 * @return name:floor_price type:float default:-- desc:最低价 * @return name:month_sell type:int default:-- desc:月销量 * @return name:video type:string default:-- desc:视频 * @return name:poster type:string default:-- desc:视频封面 * @return name:is_top type:int default:-- desc:是否置顶(1置顶 0 不置顶) * @return name:spec type:string default:-- desc:规格详情 * @return name:first_classify type:int default:-- desc:一级分类id * @return name:second_classify type:int default:-- desc:二级分类id * @return name:third_classify type:int default:-- desc:三级分类id * @return name:detail type:int default:-- desc:商品详情 * @return name:postage type:float default:-- desc:商品运费 * @return name:stock type:float default:-- desc:剩余库存(所有规格总库存) * @return name:is_integral type:int default:-- desc:是否是积分商品 * @return name:integral type:int default:-- desc:积分最大抵扣金额 */ public function getGoodsList() { $sel_where = []; $sel_where[] = ['status','=',1]; $sel_where[] = ['is_deleted','=',0]; if(input('goods_name')) $sel_where[] = ['name','like',"%".input('goods_name')."%"]; $list = Db::table('store_goods') ->where($sel_where) ->order('sort desc , id desc ') ->limit($this->off_set,$this->page_num) ->select(); $this->success('ok',['list'=>$list]); } /** * @title 获取系统设置(用户须知 && 隐私协议 ) * @desc 获取系统设置(用户须知 && 隐私协议 ) * @author qc * @url /api/Expedite/getSysConfig * @method GET * @param name:type type:string require:0 default:0 desc:获取系统设置类型(0用户须知 ,1隐私协议,2积分规则 ) * @return name:set_info type:string default:-- desc:设置详情 */ public function getSysConfig() { $type = input('get.type',0); $con_name =['agreement','privacy_policy','integral_intro']; $data = [ 'set_info'=>htmlspecialchars_decode(sysconf($con_name[$type])), ]; $this->success('获取成功',$data); } }