getConfig(); return sendSuccessMessage([ 'config' => $config ]); } /** * 获取场次列表 * @date 2022-08-26 */ public function listScene() { $param = input('post.'); $spike_logic = new \app\mall\logic\Spike(); // 获取场次列表 $spike_time = $spike_logic->listScene(); $return_data = [ 'spike_time' => $spike_time ]; return sendSuccessMessage($return_data); } /** * 获取场次产品列表 * @date 2021-05-01 */ public function getProductList() { $param = input('post.'); $token_data = TOKEN_DATA; defined('USER_ID') || define('USER_ID', $token_data['user_id']); $product_model = new MallSpikeProduct(); $where = [ ['MallSpikeProduct.uid', '=', UID], ['start_time', '=', $param['s_time']], ['end_time', '=', $param['e_time']] ]; $field = 'id,product_id,price_spike,number,sales_number'; $list = $product_model->getProductList($where, $param['page'], $field); return sendSuccessMessage([ 'list' => $list ]); } /** * 获取商品详情 * @date 2021-03-01 */ public function getProductDetail() { $param = input('post.'); $token_data = TOKEN_DATA; defined('USER_ID') || define('USER_ID', $token_data['user_id']); $spike_product_model = new MallSpikeProduct(); $spec_model = new MallProductSpec(); $product_model = new MallProduct(); $notice_model = new MallSpikeNotice(); //获取秒杀产品 $data = $spike_product_model->getOneSpikeProduct(['id' => $param['id']], 'id,product_id,price_spike_min as price_min,price_spike_max as price_max,sales_number,number - sales_number as stock,number,start_time,end_time'); if ($data['start_time'] <= time() && $data['end_time'] > time()) { //所在场次状态和间隔时间 $data['status'] = 1; //1--进行中 2--未开始 3--已结束 $data['space_time'] = $data['end_time'] - time(); } else if ($data['start_time'] > time()) { $data['status'] = 2; $data['space_time'] = $data['start_time'] - time(); } else if ($data['end_time'] <= time()) { $data['status'] = 3; $data['space_time'] = 0; } $data['mallProductSku'] = $data['mallSpikeProductSku']; //赋值 为了和商城保持统一 unset($data['mallSpikeProductSku']); unset($data['start_time']); unset($data['end_time']); //获取详情 $product = $product_model->getOneProduct([ ['id', '=', $data['product_id']] ], 'id,name,stock,is_spec_open,price_original,cover_img,video_url,video_cover_img,img_path,description,review_number,sales_origial_number + sales_actual_number as sales_number'); $data['cover_img'] = $product['cover_img']; //封面图 $data['mallAttach'] = $product['mallAttach']; //服务保障 $data['price_original'] = $product['price_original']; //原价 $data['review_number'] = $product['review_number']; //评论数量 $data['name'] = $product['name']; //名称 $data['video_url'] = $product['video_url']; $data['img_path'] = $product['img_path']; $data['description'] = $product['description']; $data['is_spec_open'] = $product['is_spec_open']; $data['video_url'] = $product['video_url']; $data['video_cover_img'] = $product['video_cover_img']; //获取是否提醒 $data['has_appoint_notice'] = 0; if (USER_ID) { $notice_id = $notice_model->getOneData([ ['user_agent', '=', USER_AGENT], ['user_id', '=', USER_ID], ['spike_id', '=', $param['id']] ], 'id'); if (!empty($notice_id)) { $data['has_appoint_notice'] = 1; } } // 同SKU同步封面图 $cover_img = []; foreach ($product['mallProductSku'] as $k => $v) { $cover_img[$v['sku']] = $v['cover_img']; } foreach ($data['mallProductSku'] as $k => $v) { // $data['mallProductSku'][$k]['price'] = $data['mallProductSku'][$k]['price_spike']; // $data['mallProductSku'][$k]['stock'] = $data['mallProductSku'][$k]['number']; $data['mallProductSku'][$k]['cover_img'] = $cover_img[$v['sku']]; } // 获取商品SPEC $spec = $spec_model->listSpec([ ['product_id', '=', $data['product_id']] ], 'id,spec_id,spec_title'); $data['spec'] = $spec; //分享到H5的跳转链接 $data['h5_href'] = Request::domain() . '/h5/#/pages/common/download'; return sendSuccessMessage([ 'data' => $data ]); } }