Exemplo n.º 1
0
 public function actionNavigation_edit()
 {
     $this->setauth();
     //检查有无权限
     $p_db = Yii::app()->p_db;
     $id = $_GET['id'];
     $navigation = VcosNavigation::model()->findByPk($id);
     if ($_POST) {
         $old_name = isset($_POST['old_name']) ? $_POST['old_name'] : '';
         $act_id = isset($_POST['act_id']) ? $_POST['act_id'] : '';
         $name = isset($_POST['name']) ? $_POST['name'] : '';
         $sort = isset($_POST['sort']) ? $_POST['sort'] : '0';
         $type_activity = isset($_POST['type_activity']) ? $_POST['type_activity'] : '';
         $type_shop = isset($_POST['type_shop']) ? $_POST['type_shop'] : '';
         $type_product = isset($_POST['type_product']) ? $_POST['type_product'] : '';
         $state = isset($_POST['state']) ? $_POST['state'] : '0';
         $cruise_id = Yii::app()->params['cruise_id'];
         $show = isset($_POST['show']) ? $_POST['show'] : 0;
         $set_cat = isset($_POST['set_cat']) ? $_POST['set_cat'] : 0;
         $main = isset($_POST['main']) ? $_POST['main'] : 0;
         $nav_type = '';
         $un_activity_product = '';
         if ($type_activity != '') {
             $nav_type .= $type_activity . ',';
         } else {
             if ($type_activity == '') {
                 $un_activity_product .= '4,';
             }
         }
         if ($type_shop != '') {
             $nav_type .= $type_shop . ',';
         } else {
             if ($type_shop == '') {
                 $un_activity_product .= '3,';
             }
         }
         if ($type_product != '') {
             $nav_type .= $type_product . ',';
         } else {
             if ($type_product == '') {
                 $un_activity_product .= '6,';
             }
         }
         $nav_type = trim($nav_type, ',');
         $un_activity_product = trim($un_activity_product, ',');
         if ($old_name != $name) {
             $sql = "UPDATE `vcos_activity` SET activity_name='" . $name . "' WHERE activity_id=" . $act_id;
             Yii::app()->p_db->createCommand($sql)->execute();
         }
         //事务处理
         $transaction = $p_db->beginTransaction();
         try {
             $navigation->navigation_name = $name;
             $navigation->sort_order = $sort;
             $navigation->status = $state;
             $navigation->navigation_style_type = $nav_type;
             $navigation->cruise_id = $cruise_id;
             $navigation->is_show = $show;
             $navigation->is_category = $set_cat;
             $navigation->is_main = $main;
             $navigation->save();
             if ($un_activity_product != '') {
                 $sql = "DELETE FROM `vcos_activity_product` WHERE activity_id='{$act_id}' AND product_type in ({$un_activity_product})";
                 Yii::app()->p_db->createCommand($sql)->execute();
             }
             //商品分类:启用和禁用导航 ,修改相应子类
             if ($set_cat == 1) {
                 $sql = "UPDATE `vcos_navigation_group` SET status='{$state}' WHERE navigation_id='{$id}'";
                 Yii::app()->p_db->createCommand($sql)->execute();
                 $sql = "SELECT navigation_group_id FROM `vcos_navigation_group` WHERE navigation_id='{$id}'";
                 $nav_cats = Yii::app()->p_db->createCommand($sql)->queryAll();
                 $nav_cat_ids = '';
                 foreach ($nav_cats as $row) {
                     $nav_cat_ids .= $row['navigation_group_id'] . ',';
                 }
                 $nav_cat_ids = trim($nav_cat_ids, ',');
                 $sql = "UPDATE `vcos_navigation_group_category` SET status='{$state}' WHERE navigation_group_id in ({$nav_cat_ids})";
                 Yii::app()->p_db->createCommand($sql)->execute();
             }
             $sql = "UPDATE `vcos_activity` SET status='{$state}' WHERE activity_id='{$act_id}'";
             Yii::app()->p_db->createCommand($sql)->execute();
             $transaction->commit();
             Helper::show_message(yii::t('vcos', '修改成功。'), Yii::app()->createUrl("Navigation/navigation_list"));
         } catch (Exception $e) {
             $transaction->rollBack();
             Helper::show_message(yii::t('vcos', '修改失败。'));
         }
     }
     $sql = "SELECT activity_id,activity_name FROM `vcos_activity` WHERE status=1";
     $activity = Yii::app()->p_db->createCommand($sql)->queryAll();
     $this->render('navigation_edit', array('navigation' => $navigation, 'activity' => $activity));
 }
Exemplo n.º 2
0
 public function actionNavigation_edit()
 {
     $this->setauth();
     //检查有无权限
     $p_db = Yii::app()->p_db;
     $id = $_GET['id'];
     $navigation = VcosNavigation::model()->findByPk($id);
     if ($_POST) {
         $name = isset($_POST['name']) ? $_POST['name'] : '';
         $sort = isset($_POST['sort']) ? $_POST['sort'] : '0';
         $activity = isset($_POST['activity']) ? $_POST['activity'] : 0;
         $nav_type = isset($_POST['nav_type']) ? $_POST['nav_type'] : '0';
         $state = isset($_POST['state']) ? $_POST['state'] : '0';
         $cruise_id = Yii::app()->params['cruise_id'];
         $show = isset($_POST['show']) ? $_POST['show'] : 0;
         $set_cat = isset($_POST['set_cat']) ? $_POST['set_cat'] : 0;
         $main = isset($_POST['main']) ? $_POST['main'] : 0;
         //事务处理
         $transaction = $p_db->beginTransaction();
         try {
             $navigation->activity_id = $activity;
             $navigation->navigation_name = $name;
             $navigation->sort_order = $sort;
             $navigation->status = $state;
             $navigation->navigation_style_type = $nav_type;
             $navigation->cruise_id = $cruise_id;
             $navigation->is_show = $show;
             $navigation->is_category = $set_cat;
             $navigation->is_main = $main;
             $navigation->save();
             $transaction->commit();
             Helper::show_message(yii::t('vcos', '修改成功。'), Yii::app()->createUrl("Navigation/navigation_list"));
         } catch (Exception $e) {
             $transaction->rollBack();
             Helper::show_message(yii::t('vcos', '修改失败。'));
         }
     }
     $sql = "SELECT activity_id,activity_name FROM `vcos_activity` WHERE status=1";
     $activity = Yii::app()->p_db->createCommand($sql)->queryAll();
     $this->render('navigation_edit', array('navigation' => $navigation, 'activity' => $activity));
 }