示例#1
0
 public function actionIndex()
 {
     //        $category = Category::model()->findByPk(5);
     //        $childs = $category->descendants()->findAll();
     //        foreach ($childs as $c)
     //            $ids[] = $c->id;
     //        $ids_string = implode(',', $ids);
     //        $criteria = new CDbCriteria(array(
     //            'condition' => 'status=' . Post::STATUS_PUBLISHED .' AND  category_id in ('.$ids_string.')',
     //            'order' => 'create_time DESC',
     //            'with' => 'commentCount',
     //        ));
     //        if (isset($_GET['tag']))
     //            $criteria->addSearchCondition('tags', $_GET['tag']);
     $search = \Yii::$app->request->get('tag');
     $catgegories = Tree::findOne(['name' => '单页分类']);
     $children = $catgegories->children()->all();
     foreach ($children as $c) {
         $ids[] = $c->id;
     }
     $ids_string = implode(',', $ids);
     $dataProvider = new ActiveDataProvider(['query' => !empty($search) ? Post::find()->where('category_id not in (' . $ids_string . ')')->orderBy('id desc')->andWhere(['like', 'tags', $search]) : Post::find()->where('category_id not in (' . $ids_string . ')')->orderBy('id desc'), 'pagination' => ['pageSize' => 20]]);
     //        $dataProvider = new ActiveDataProvider('Post', array(
     //            'pagination' => array(
     //                'pageSize' => Yii::app()->params['postsPerPage'],
     //            ),
     //            'criteria' => $criteria,
     //        ));
     return $this->render('index', array('dataProvider' => $dataProvider));
 }
示例#2
0
 public static function getSalesOrderBy($categoryId = '')
 {
     $where = '';
     if ($categoryId) {
         $items = Tree::find()->where(['tree_id' => $categoryId])->all();
         $itemIds = ArrayHelper::getColumn($items, 'item_id');
         $where = ' where item_id in (' . implode(',', $itemIds) . ') ';
     }
     $sql = 'SELECT name, count(item_id) as count FROM `order_item` ' . $where . ' group by item_id order by count desc';
     return Yii::$app->db->createCommand($sql)->queryAll();
 }
示例#3
0
 public static function getTreesById($id)
 {
     /** @var \common\models\Tree|\creocoder\nestedsets\NestedSetsBehavior $root */
     $root = static::find()->where(['id' => $id])->one();
     if ($root) {
         $categories = Tree::find()->where('lft >= ' . $root->lft . ' and rgt <= ' . $root->rgt . ' and root = ' . $root->root . ' order by id desc')->indexBy('id')->all();
         return array_map(function ($cate) use($root) {
             return $cate->name;
         }, $categories);
     } else {
         return false;
     }
 }
示例#4
0
 public function actionList()
 {
     $catalog = Yii::$app->request->get('catalog');
     $items = Item::getItemsByCategory($catalog);
     $categories = Tree::getCategoriesById($catalog);
     if ($items && $categories) {
         $pages = new Pagination(['totalCount' => $items->count(), 'pageSize' => '3']);
         $items = $items->offset($pages->offset)->limit($pages->limit)->all();
         if ($items) {
             return $this->render('list', ['currentCategory' => Tree::findOne(['id' => $catalog]), 'categories' => $categories, 'items' => $items, 'pages' => $pages]);
         }
     }
     return $this->render('//site/error', ['name' => 'catalog', 'message' => 'There is no product']);
 }
示例#5
0
$form = ActiveForm::begin();
$fieldGroups = [];
$fields = [];
$stations = \core\models\Station::findAll(['enabled' => 1]);
$stationArray = ArrayHelper::map($stations, 'id', 'name');
$fields[] = $form->field($model, 'star_id')->dropDownList($stationArray);
$fields[] = $form->field($model, 'total')->textInput(['maxlength' => true]);
$fields[] = $form->field($model, 'desc')->textarea(['maxlength' => true]);
$fields[] = $form->field($model, 'status')->dropDownList([1 => '是', 0 => '否']);
$fields[] = $form->field($model, 'start_at')->widget(DateTimePicker::className(), ['options' => ['value' => $start_at], 'pluginOptions' => ['language' => 'zh-CN', 'autoclose' => true]]);
$fields[] = $form->field($model, 'end_at')->widget(DateTimePicker::className(), ['options' => ['value' => $end_at], 'pluginOptions' => ['language' => 'zh-CN', 'autoclose' => true]]);
$fieldGroups[] = ['label' => Yii::t('marketing', 'Coupon Info'), 'content' => implode('', $fields)];
$fields = [];
$fields[] = $form->field($model, 'total_price')->textInput(['maxlength' => true]);
$fields[] = $form->field($model, 'qty')->textInput(['maxlength' => true]);
$root = \common\models\Tree::find()->where(['name' => '商品分类'])->one();
$categories = $root->children(1)->all();
$categories = ArrayHelper::map($categories, 'id', 'name');
$fields[] = $form->field($model, 'category_id')->widget(Select2::classname(), ['data' => $categories, 'language' => 'en', 'pluginOptions' => ['placeholder' => 'Select a state ...'], 'options' => ['multiple' => true]]);
$fieldGroups[] = ['label' => Yii::t('marketing', 'Coupon Conditions'), 'content' => implode('', $fields)];
$fields = [];
$fields[] = $form->field($model, 'type')->dropDownList([0 => '满减', 1 => '打折']);
$fields[] = $form->field($model, 'number')->textInput(['maxlength' => true]);
$fields[] = $form->field($model, 'shipping')->dropDownList([0 => '邮费不变', 1 => '减邮费', 2 => '包邮']);
$fields[] = $form->field($model, 'shippingFee')->textInput(['maxlength' => true]);
$fieldGroups[] = ['label' => Yii::t('marketing', 'Coupon Result'), 'content' => implode('', $fields)];
echo Tabs::widget(['items' => $fieldGroups]);
?>

    <div class="form-group">
        <?php 
示例#6
0
 public function actions()
 {
     return ['nodeChildren' => ['class' => 'gilek\\gtreetable\\actions\\NodeChildrenAction', 'treeModelName' => Tree::className()], 'nodeCreate' => ['class' => 'gilek\\gtreetable\\actions\\NodeCreateAction', 'treeModelName' => Tree::className()], 'nodeUpdate' => ['class' => 'gilek\\gtreetable\\actions\\NodeUpdateAction', 'treeModelName' => Tree::className()], 'nodeDelete' => ['class' => 'gilek\\gtreetable\\actions\\NodeDeleteAction', 'treeModelName' => Tree::className()], 'nodeMove' => ['class' => 'gilek\\gtreetable\\actions\\NodeMoveAction', 'treeModelName' => Tree::className()]];
 }
示例#7
0
 /**
  * @return \yii\db\ActiveQuery
  */
 public function getCategory()
 {
     return $this->hasOne(Tree::className(), ['id' => 'category_id']);
 }
示例#8
0
            </fieldset>
            <button type="reset" class="color_dark bg_tr text_cs_hover tr_all_hover"><i
                    class="fa fa-refresh lh_inherit m_right_10"></i>Reset
            </button>
        </form>
    </div>
</figure>
<figure class="widget shadow r_corners wrapper m_bottom_30">
    <figcaption>
        <h3 class="color_light">Categories</h3>
    </figcaption>
    <div class="widget_content">
        <!--Categories list-->
        <ul class="categories_list">
            <?php 
$tree = Tree::find()->where(['name' => '商品分类'])->one();
$childrenTags = $tree->children('1')->all();
foreach ($childrenTags as $childrenTag) {
    $secondChildren = $childrenTag->children('1')->all();
    ?>
                <li>
                    <a href="<?php 
    echo Url::to(['/catalog/home/item/list', 'catalog' => $childrenTag->id]);
    ?>
" class="f_size_large color_dark d_block relative">
                        <b><?php 
    echo $childrenTag->name;
    ?>
</b>
                        <span class="bg_light_color_1 r_corners f_right color_dark talign_c"></span>
                    </a>
示例#9
0
use yii\helpers\Html;
use yii\widgets\ActiveForm;
use common\models\Tree;
/* @var $this yii\web\View */
/* @var $model common\modules\blog\models\Post */
/* @var $form yii\widgets\ActiveForm */
?>

<div class="post-form">

    <?php 
$form = ActiveForm::begin();
?>

    <?php 
echo $form->field($model, 'category_id')->dropDownList(Tree::getTreesByName('内容分类'));
?>

    <?php 
echo $form->field($model, 'title')->textInput(['maxlength' => 200]);
?>

    <?php 
echo $form->field($model, 'url')->textInput(['maxlength' => 100]);
?>

    <?php 
echo $form->field($model, 'source')->textInput(['maxlength' => 50]);
?>

    <?php 
示例#10
0
$fields[] = $form->field($model, 'language')->dropDownList(ArrayHelper::map($language, 'language_id', 'name'));
$fieldGroups[] = ['label' => Yii::t('catalog', 'Base Info'), 'content' => implode('', $fields)];
$fields = [];
$fields[] = $form->field($model, 'desc')->widget(CKEditor::className(), ['editorOptions' => ['filebrowserBrowseUrl' => Url::to(['/elfinder/manager', 'filter' => 'image'])]]);
$fieldGroups[] = ['label' => Yii::t('catalog', 'Detailed Info'), 'content' => implode('', $fields)];
$fields = [];
$fields[] = $form->field($model, 'shipping_fee')->textInput(['maxlength' => 255]);
$fields[] = $form->field($model, 'is_show')->radioList(['No', 'Yes']);
$fields[] = $form->field($model, 'is_promote')->radioList(['No', 'Yes']);
$fields[] = $form->field($model, 'is_new')->radioList(['No', 'Yes']);
$fields[] = $form->field($model, 'is_hot')->radioList(['No', 'Yes']);
$fields[] = $form->field($model, 'is_best')->radioList(['No', 'Yes']);
$fieldGroups[] = ['label' => Yii::t('catalog', 'Other Info'), 'content' => implode('', $fields)];
$fields = [];
$fields[] = $form->field($model, 'category_id')->dropDownList(Tree::getTreesByName('商品分类'), ['data-url' => Url::to(['/catalog/core/item/item-props']), 'data-item_id' => $model->item_id, 'data-tree_id' => $model->category_id ? $model->category_id : key(Tree::getTreesByName('商品分类'))]);
$fields[] = $this->render('_form_prop', ['model' => $model, 'tree_id' => $model->category_id ? $model->category_id : key(Tree::getTreesByName('商品分类'))]);
$fieldGroups[] = ['label' => Yii::t('catalog', 'Product Info'), 'content' => implode('', $fields)];
$fields = [];
if ($model->isNewRecord) {
    $fields[] = $form->field($model, 'images[]')->widget(FileInput::classname(), ['options' => ['accept' => 'image/*', 'multiple' => true], 'pluginOptions' => ['allowedFileExtensions' => ['jpg', 'gif', 'png']]]);
} else {
    $itemImages = $model->itemImgs;
    $initialPreview = $initialPreviewConfig = [];
    foreach ($itemImages as $itemImage) {
        $initialPreview[] = "<img src='" . Yii::$app->params['imageDomain'] . '/' . $itemImage->pic . "' class='file-preview-image'>";
        $initialPreviewConfig[] = ['caption' => $itemImage->title, 'url' => Url::to(['/catalog/core/item-img/delete', 'id' => $itemImage->img_id])];
    }
    $fields[] = $form->field($model, 'images[]')->label(Yii::t('catalog', 'Image(If update,Please upload first)'))->widget(FileInput::classname(), ['language' => 'zh', 'options' => ['accept' => 'image/*', 'multiple' => true], 'pluginOptions' => ['initialPreview' => $initialPreview, 'initialPreviewConfig' => $initialPreviewConfig, 'overwriteInitial' => false, 'uploadUrl' => Url::to(['/catalog/core/item-img/create']), 'uploadExtraData' => ['item_id' => $model->item_id, 'position' => count($itemImages)], 'maxFileCount' => 10, 'allowedFileExtensions' => ['jpg', 'gif', 'png']]]);
}
$fieldGroups[] = ['label' => Yii::t('catalog', 'Product Image'), 'content' => implode('', $fields)];
echo Tabs::widget(['items' => $fieldGroups]);
示例#11
0
 public static function getItemsByCategory($id)
 {
     $treeNodes = Tree::getTreesById($id);
     //category has children
     if ($treeNodes) {
         $categories = '(';
         foreach ($treeNodes as $key => $treeNode) {
             $categories = $categories . $key . ',';
         }
         $categories = substr($categories, 0, strlen($categories) - 1) . ')';
         $items = static::find()->where('category_id in ' . $categories);
     } else {
         $tree = Tree::findOne(['id' => $id]);
         if ($tree) {
             $items = static::find()->where(['category_id' => $tree->id]);
         } else {
             return false;
         }
     }
     return $items;
 }