示例#1
0
 /**
  * 推荐产品管理页面
  */
 public function actionRecommend()
 {
     //菜单权限检测
     Yii::$app->util->adminAuth() ? '' : $this->redirect('/admin/login');
     $params = Yii::$app->request->get();
     $params = array_map('trim', $params);
     $params = array_map('intval', $params);
     $mIProductBase = new IProductBase();
     $options = ['page' => isset($params['page']) ? $params['page'] : 1, 'time_status' => isset($params['time_status']) ? $params['time_status'] : 0, 'type' => isset($params['type']) ? $params['type'] : 0, 'order_by' => isset($params['order_by']) ? $params['order_by'] : 0];
     $products = $mIProductBase->search($options, false);
     $pages = new Pagination(['totalCount' => $products->count(), 'pageSize' => IProductBase::PAGE_SIZE]);
     $products = $products->asArray()->all();
     //推荐新品数据
     $mPageCustomBlock = new PageCustomBlock();
     $data = $mPageCustomBlock->block(['customId' => 'product_list_products', 'page' => 1]);
     $data = $data->asArray()->all();
     // $ids = ArrayHelper::getColumn($data, 'id');
     // print_r($ids);
     // print_r($data);exit;
     // $data = ArrayHelper::multisort($data, 'id', $ids);
     // print_r($data);exit;
     //产品分类map
     $mIProductType = new IProductType();
     $typeMap = $mIProductType->getTypeMap();
     return $this->render('recommend', ['pages' => $pages, 'products' => $products, 'options' => $options, 'data' => $data, 'type' => $typeMap]);
 }
示例#2
0
 public function actionSrch()
 {
     $mProduct = new IProductBase();
     $mProduct->search(['type' => 0, 'page' => 1, 'time_status' => 0]);
 }
示例#3
0
 public function actionIndex($page = 1)
 {
     $session = Yii::$app->session;
     $session->isActive ? '' : $session->open();
     $session->remove('backurl');
     $session->remove('form');
     $form = Yii::$app->request->post('product');
     //查询活动
     $Activity = new ActivityBase();
     $res_activity = $Activity->getByFeature();
     foreach ($res_activity as $key => $val) {
         $key = $val['id'];
         $res_activity[$key] = $val;
     }
     //查询类别
     $ProductType = new IProductType();
     $p_type = $ProductType->product_type_list();
     // print_r($type);
     $model = new IProductBase();
     // 计算产品“模糊”数量
     $productCount = $model->getCount();
     if ($productCount) {
         $productCount = $this->calVagueCount($productCount);
     }
     // $type_id =  Yii::$app->request->get('type_id') ? Yii::$app->request->get('type_id') : 0;
     $type_id = Yii::$app->request->get('type_id', 0);
     //参数过滤
     $type_id = intval($type_id);
     if (Yii::$app->request->get('order_by')) {
         // $order_by = Yii::$app->request->get('type_id') ? Yii::$app->request->get('type_id') : 1;
         $order_by = Yii::$app->request->get('order_by', 2);
         //参数过滤
         $order_by = is_numeric($order_by) ? $order_by : 2;
     } else {
         $order_by = 2;
     }
     if ($_GET) {
         // $time_status =  Yii::$app->request->get('time_status') ? Yii::$app->request->get('time_status') : 0;
         $time_status = Yii::$app->request->get('time_status', 0);
         //参数过滤
         $time_status = intval($time_status);
         if (intval($time_status) > 3) {
             $time_status = 0;
         } else {
             $time_status = Yii::$app->request->get('time_status', 0);
             //参数过滤
             $time_status = intval($time_status);
         }
     } else {
         $time_status = 0;
     }
     //筛选条件
     $options = ['type' => $type_id, 'page' => $page, 'time_status' => intval($time_status), 'order_by' => $order_by];
     $ar = $model->search($options, false);
     // $re = $ar->asArray()->all();
     // echo count($re);
     // echo "<br/>";
     // echo $ar-> count();
     // echo "<br/>";
     $pages = new Pagination(['totalCount' => $ar->count(), 'pageSize' => IProductBase::PAGE_SIZE]);
     // print_r($pages);exit;
     $form = Yii::$app->request->get();
     //参数过滤
     $form = array_map('intval', $form);
     //拼凑一对多的产品关系
     $res = $ar->asArray()->all();
     //查询产品ids
     $ids = array_keys($res);
     //产品活动和图片数据
     $ex = $model->extrData($ids);
     // print_r($ex);
     // print_r($ids);
     // print_r($res);exit;
     // echo "zhanglu";
     // print_r($res_activity);exit;
     // die;
     $dist_model = new District();
     foreach ($res as $key => $val) {
         //拼凑活动,图片数据
         $res[$key]['aproduct'] = $ex[$key]['aproduct'];
         $res[$key]['image'] = $ex[$key]['image'];
         foreach ($ex[$key]['aproduct'] as $keya => $vaa) {
             if (!empty($res_activity[$vaa['acti_id']])) {
                 // print_r($vaa);
                 // print_r($res_activity[$vaa['acti_id']]);exit;
                 //当活动为1.1 或 活动状态不为 3时  去掉改活动数据
                 if ($vaa['acti_id'] == ActivityBase::FANS_FESTIVAL || $vaa['status'] != ActivityProduct::STATUS_VERIFY_THROUGH) {
                     unset($res[$key]['aproduct'][$keya]);
                 } else {
                     $res[$key]['aproduct'][$keya]['feature'] = $res_activity[$vaa['acti_id']]['feature'];
                     $res[$key]['aproduct'][$keya]['subject'] = $res_activity[$vaa['acti_id']]['subject'];
                     $res[$key]['aproduct'][$keya]['summary'] = $res_activity[$vaa['acti_id']]['summary'];
                     $res[$key]['aproduct'][$keya]['config'] = $res_activity[$vaa['acti_id']]['config'];
                     $res[$key]['aproduct'][$keya]['mark'] = $res_activity[$vaa['acti_id']]['mark'];
                     $res[$key]['aproduct'][$keya]['activity_start_time'] = $res_activity[$vaa['acti_id']]['start_time'];
                     $res[$key]['aproduct'][$keya]['activity_end_time'] = $res_activity[$vaa['acti_id']]['end_time'];
                 }
                 // $start = $res[$key]['aproduct'][$keya]['start_time'];
                 // $end = $res[$key]['aproduct'][$keya]['end_time'];
                 // $now = time();
                 // if ($start > $now) {
                 //     $step = "即将开始";
                 // } if ($end < $now ) {
                 //     $step = "已结束";
                 // } else {
                 //     $step ="预定中";
                 // }
                 // $res[$key]['aproduct'][$keya]['step'] = $step;
                 // $res[$key]['aproduct'][$keya]['status'] = $res_activity[$vaa['acti_id']]['status'];
                 //$res[$key]['aproduct'][$keya] = $res_activity[$vaa['acti_id']];
             }
         }
         if ($val['user']['city'] == 0) {
             $res[$key]['user']['city'] = '北京市';
         } else {
             $dist = $dist_model->getByCity($val['user']['city']);
             $adrs = $dist['province'] . ',' . $dist['name'];
             $res[$key]['user']['city'] = $adrs;
         }
     }
     // echo '<pre>';
     // print_r($res);die;
     // print_r($res_activity);exit;
     //获取推荐产品数据
     // $res=[];
     if (empty($res)) {
         $data = $this->getRecommendProduct($page, $res_activity);
         if ($data) {
             $products = isset($data['products']) ? $data['products'] : '';
             $recommendPages = isset($data['recommendPages']) ? $data['recommendPages'] : '';
         }
     }
     // echo "<pre>";
     // print_r($res);die;
     // print_r($data);die;
     return $this->render('index', ['model' => $res, 'p_type' => $p_type, 'pages' => $pages, 'recommendPages' => isset($recommendPages) ? $recommendPages : '', 'product_count' => $productCount, 'products' => isset($products) ? $products : '', 'options' => $options]);
 }