Esempio n. 1
0
 public static function gethotgoods()
 {
     $week = date('W', time());
     $w = date('w', time());
     if ($week == '01') {
         $year = date("Y", time() + 60 * 60 * 24 * 7);
     } else {
         $year = date("Y", time());
     }
     $CarryTime = strtotime($year . '-W' . $week) ? strtotime($year . '-W' . $week) : strtotime($year . '-W0' . $week);
     $selectsql = "select * from cs_carry where CarryTime = " . $CarryTime;
     $carry = Yii::app()->csdb->createCommand($selectsql)->queryAll();
     if ($carry) {
         $selectsql = "select * from cs_carry_goods where CarryID = " . $carry[0]['ID'] . " and Week = " . $w;
         $carry[0]['carrygoods'] = Yii::app()->csdb->createCommand($selectsql)->queryAll();
         if ($carry[0]['carrygoods']) {
             foreach ($carry[0]['carrygoods'] as $k => $v) {
                 $carry[0]['carrygoods'][$k]['Goodsinfo'] = MallService::getredis($v['GoodsID'], 'search');
             }
             return $carry[0];
         } else {
             return 'false';
         }
     } else {
         return 'false';
     }
 }
Esempio n. 2
0
 public function actionGetGoods()
 {
     if (Yii::app()->request->isAjaxRequest) {
         $goodsid = Yii::app()->request->getParam('goodsid');
         $serviceID = Yii::app()->user->getOrganID();
         $result = MallService::getredis($goodsid);
         //商品折扣价
         if ($result['IsPro'] != 1) {
             $PriceRatio = MallService::getDisprice($result['OrganID'], $serviceID);
             if ($PriceRatio > 0 && $PriceRatio < 100) {
                 $result['DisPrice'] = sprintf('%.2f', $result['Price'] * $PriceRatio / 100);
             }
         }
         $result['spec']['UnitName'] = GoodsUnit::model()->findByPk($result['spec']['Unit'])->attributes['UnitName'];
         //单位
         echo json_encode($result, true);
     } else {
         $this->redirect('index');
     }
 }
Esempio n. 3
0
 public function actionDetail()
 {
     $serviceID = Yii::app()->user->getOrganID();
     $goodsid = Yii::app()->request->getParam('goods');
     $result = MallService::getredis($goodsid);
     //$payment = 1;
     //$result = MallService::getGoodByID($goodsid, $payment, 'mall');
     if ($result == 'null') {
         echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />';
         echo "<script>alert('该商品不存在!');window.location.href='" . Yii::app()->createUrl('pap/mall/index') . "'</script>";
         exit;
     } else {
         if ($result == 'nosale') {
             echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />';
             echo "<script>alert('该商品已下架!');window.location.href='" . Yii::app()->createUrl('pap/mall/index') . "'</script>";
             exit;
         }
     }
     $result['GoodsID'] = $result['ID'];
     $result['CommentNo'] = PapGoods::model()->findByPk($result['ID'])->attributes['CommentNo'];
     //商品折扣价
     if ($result['IsPro'] != 1) {
         $PriceRatio = MallService::getDisprice($result['OrganID'], $serviceID);
         if ($PriceRatio > 0 && $PriceRatio < 100) {
             $result['DisPrice'] = sprintf('%.2f', $result['Price'] * $PriceRatio / 100);
         }
     }
     $cookie = Yii::app()->request->getCookies();
     $car = array('make' => $cookie['mallmake']->value, 'series' => $cookie['mallseries']->value, 'year' => $cookie['mallyear']->value, 'model' => $cookie['mallmodel']->value);
     $carmodeltext = MallService::getCarmodeltxt($car);
     $res = array();
     if ($car['make'] && $car['series'] && $car['year'] && $car['model']) {
         $params = $car;
         $params['goodsid'] = $goodsid;
         $res = MallService::checkCarfit($params);
     }
     //店内分类
     $rows = $this->Getmaincate($result['OrganID']);
     $cate = $this->findsub($rows);
     //获取经销商客服列表
     $csparams['organID'] = $result['OrganID'];
     $csparams['type'] = 1;
     $csinfo = CsService::getcslists($csparams);
     //大类、子类、标准名称
     if (is_array($result['gcategory']) && !$result['gcategory']['BigName']) {
         $result['BigName'] = $result['gcategory']['BigName'];
         $result['SubName'] = $result['gcategory']['SubName'];
         $result['sub'] = $result['gcategory']['SubParts'];
     } else {
         $cpArr = MallService::getCategory($result['StandCode']);
         $result['BigName'] = $cpArr['BigParts'];
         $result['SubName'] = $cpArr['SubParts'];
         $result['sub'] = $cpArr['sub'];
     }
     //公告信息
     $model = new PapGoodsSendnotice();
     $sellerID = $result['OrganID'];
     $notice = $model->find("OrganID = {$sellerID}");
     //var_dump($data);die;
     //店家积分
     $result['TotalScore'] = DefaultService::getrecord($result['OrganID']);
     //店家信息
     $organInfo = Organ::model()->findByPk($result['OrganID'])->attributes;
     $result['Address'] = array(Area::getCity($organInfo['Province']), Area::getCity($organInfo['City']), Area::getCity($organInfo['Area']));
     $result['spec']['UnitName'] = GoodsUnit::model()->findByPk($result['spec']['Unit'])->attributes['UnitName'];
     //单位
     //最小交易金额
     $result['MinTurnover'] = PapOrderMinTurnover::model()->find("OrganID=:ID", array(":ID" => $result['OrganID']))->attributes['MinTurnover'];
     $this->pageTitle = Yii::app()->name . '-' . "商品详情";
     $this->render('detail', array('r' => $result, 'cate' => $cate, 'carmodeltext' => $carmodeltext, 'res' => $res, 'csinfo' => $csinfo, 'car' => $car, 'data' => $notice));
 }
Esempio n. 4
0
 public static function getGoodsData($params)
 {
     $serviceID = $params['organID'];
     Yii::import("widgets.default.WSphinxResult");
     $searchCriteria = new stdClass();
     $searchCriteria->select = 'goodsid,sales,commentno,ispro,standsort,price';
     if ($params['SellerID'] && $params['IsSale'] == 0) {
         $filters = array('isdelete' => 1, 'issale' => 0, 'organid' => $params['SellerID']);
     } else {
         $filters = array('isdelete' => 1, 'issale' => 1);
     }
     $query = '';
     //子类、标准名称
     if ($params['sub']) {
         //标准名称code查询
         if ($params['code']) {
             $filters['standcode'] = base_convert($params['code'], 36, 10);
         } else {
             //子类查询
             $codeArr = self::getstandcode($params['sub']);
             $filters['standcode'] = $codeArr;
         }
     }
     //search页面关键字搜索
     if ($params['type'] == 1) {
         if ($params['keyword']) {
             $params['keyword'] = str_replace("\"", "'", $params['keyword']);
             $query = $query ? $query . ' ' . $params['keyword'] : $params['keyword'];
         } else {
             $filters['organid'] = '-1';
         }
     }
     //获取经销商商品列表
     if ($params['dealerid']) {
         $filters['organid'] = $params['dealerid'];
     } else {
         //获取联盟内的商品
         if (is_array($params['union']) && !empty($params['union'])) {
             $filters['organid'] = $params['union'];
         }
     }
     //品牌查询
     if ($params['brand']) {
         $brandArr = self::getbrandid($params['brand']);
         $filters['brandid'] = $brandArr;
     }
     //配件档次查询
     if ($params['partslevel']) {
         $filters['partslevel'] = ord($params['partslevel']);
     }
     //厂家、车系、车型查询
     if ($params['car']['make']) {
         $filters['make'] = $params['car']['make'];
         if ($params['car']['series']) {
             $filters['car'] = $params['car']['series'];
         }
         if ($params['car']['year']) {
             $filters['year'] = $params['car']['year'];
         }
         if ($params['car']['model']) {
             $filters['model'] = $params['car']['model'];
         }
     }
     //是否促销
     if ($params['ispro'] == 1) {
         $filters['ispro'] = 1;
     } else {
         if ($params['ispro'] == 2) {
             $filters['ispro'] = 0;
         }
     }
     //价格区间
     if (!empty($params['price']) && is_array($params['price'])) {
         $filters['range'] = array('price' => $params['price']);
     }
     //商品排序
     $order = '';
     if ($params['order']) {
         $orderby = $params['order'];
         if ($orderby == 'sales_l') {
             // 按销量从多到少
             $order = " sales DESC";
         } elseif ($orderby == 'sales_h') {
             // 按销量从少到多
             $order = " sales ASC";
         } elseif ($orderby == 'price_l') {
             //总价从高到低
             $order = " price DESC";
         } elseif ($orderby == 'price_h') {
             // 总价从低到高
             $order = " price ASC";
         } elseif ($orderby == 'comment_l') {
             // 评论数从高到低
             $order = " CommentNo DESC";
         } elseif ($orderby == 'comment_h') {
             // 评论数从低到高
             $order = " CommentNo ASC";
         }
         $order .= ",";
         //            elseif ($orderby == 'ctime_l') {  // 上架时间从高到低
         //                $order = " order by dg.UpdateTime DESC";
         //            } elseif ($orderby == 'ctime_h') {  // 上架时间从低到高
         //                $order = " order by dg.UpdateTime ASC";
         //            }
     }
     $order .= 'standsort DESC,standcode asc,price ASC';
     //
     $searchCriteria->groupby = array('field' => 'goodsid', 'mode' => 4, 'order' => $order);
     $searchCriteria->filters = $filters;
     $searchCriteria->query = $query;
     //$searchCriteria->query = '@title ' . 1 . '*';
     // $searchCriteria->orders = $order;
     $searchCriteria->from = "main";
     $model = new WSphinxResult($searchCriteria, array('pagination' => array('pageSize' => 12)));
     //搜索机构
     if ($params['type'] != 3 && !$params['dealerid']) {
         $searchCriteria1 = clone $searchCriteria;
         $dealerdata = self::getDealerArr($searchCriteria1);
     }
     //搜索品牌
     if ($params['type'] != 3 && !$params['brand']) {
         $searchCriteria2 = clone $searchCriteria;
         $branddata = self::getBrandArr($searchCriteria2);
     }
     //搜索子类、标准名称
     if ($params['type'] == 1) {
         $searchCriteria3 = clone $searchCriteria;
         $codemodel = self::getCodeTree($searchCriteria3);
     }
     $data = $model->getData();
     foreach ($data as $key => $value) {
         $goods = MallService::getredis($value['attrs']['goodsid'], 'search');
         $goods['standsort'] = $value['attrs']['standsort'];
         $goods['Sales'] = $value['attrs']['sales'];
         //            $goods['CommentNo'] = $value['attrs']['commentno'];
         if ($goods['IsPro'] == 1) {
             $goods['ppp'] = $goods['ProPrice'];
         } else {
             $priceratio = self::getDisprice($goods['OrganID'], $serviceID);
             if (!$priceratio) {
                 $goods['ppp'] = $goods['Price'];
             } else {
                 $goods['ppp'] = sprintf('%2f', $goods['Price'] * $priceratio / 100);
             }
         }
         $goods['CommentNo'] = PapGoods::model()->findByPk($goods['ID'])->attributes['CommentNo'];
         $data[$key] = $goods;
     }
     $model->setData($data);
     return array('dataProvider' => $model, 'count' => count($data) == 0 ? 0 : $model->totalNum, 'branddata' => $branddata, 'dealerdata' => $dealerdata, 'codedata' => $codemodel);
 }