예제 #1
0
 /**
  * 设置活动开始结束时间接口
  *  @param int  $rel_id  活动产品id
  *  @param str  $start_time 开始时间
  *
  * @return json
  * */
 public function actionSetdate()
 {
     $form = Yii::$app->request->post();
     $rel_id = isset($form['rel_id']) ? intval($form['rel_id']) : '';
     $uid = isset($form['uid']) ? intval($form['uid']) : '';
     $start_time = isset($form['start_time']) ? $form['start_time'] : '';
     if (empty($rel_id) || empty($start_time) || empty($uid)) {
         echo PublicLibrary::format_res_encode('1001', 'param error!');
         exit;
     }
     $mactpro = new ActivityProduct();
     if ($mactpro->searchStartime($start_time)) {
         echo PublicLibrary::format_res_encode('1002', 'start_time error!');
     } else {
         $activitymoedel = new ActivityBase();
         $activity = $activitymoedel->pk(7);
         $component = new BaseAttribute();
         $result = $component->save($rel_id, $uid, 13, $start_time, $activity['config']);
         if ($result) {
             echo PublicLibrary::format_res_encode('0', 'success');
         } else {
             echo PublicLibrary::format_res_encode('1003', 'save error');
         }
     }
 }
예제 #2
0
 /**
  * 修改产品
  * @param  int $rel_id  活动产品id
  * @ http://dev.idaiyan.cn/activity/productactivityedit?rel_id=33113
  * @return array $menu 产品id渲染到活动页面
  */
 public function actionProductactivityedit()
 {
     //用户是否登陆
     $user = PublicLibrary::is_login();
     if (!$user) {
         $this->redirect(['user/login']);
     }
     $parr = Yii::$app->request->get();
     $rel_id = isset($parr['rel_id']) ? intval($parr['rel_id']) : '';
     $start_time = isset($parr['start_time']) ? intval($parr['start_time']) : '';
     /*
         通过rel_id 查询产品相关的信息
     */
     $pmodel = new ActivityProduct();
     $product = $pmodel->pk($rel_id);
     //33104
     $pid = $product['product_id'];
     $aid = $product['acti_id'];
     if ($rel_id == '' || $aid == '') {
         return $this->redirect(['home-page/lists', 'uid' => $_SESSION['user']['uid']]);
         //跳转到完善信息
     }
     //判断该用户是否发布了这个产品
     $session = Yii::$app->session;
     $uid = intval($_SESSION['user']['uid']);
     //查询现有的活动
     $mActiBase = new ActivityBase();
     $activity = $mActiBase->pk($aid);
     if (!$activity) {
         return $this->redirect(['home-page/lists', 'uid' => $_SESSION['user']['uid']]);
         //跳转到完善信息
     }
     //查询是不是该用户发布的产品
     $model = new IProductBase();
     $res = $model->isMyProduct($uid, $pid);
     $basePrice = isset($res[0]['price']) ? $res[0]['price'] : '';
     if (!$res) {
         return $this->redirect(['home-page/lists', 'uid' => $_SESSION['user']['uid']]);
         //跳转到完善信息
     }
     $session->set('acti_config', $activity['config']);
     //活动属性map
     $mactivitypdt = new ActivityProduct();
     $mArag = new ActivityRelAttrGroup();
     $attrMap = $mArag->getAttrMapping($aid);
     //查询该商品有没有参加过该活动
     $one = $mactivitypdt->isinActivity($uid, $aid, $pid);
     //如果从专题页带入了开始时间 修改开始时间属性
     $baseattr_model = new BaseAttribute();
     if ($start_time) {
         //查询该时间是否被占用
         $timeisset = $pmodel->searchStartime($start_time, ActivityBase::GENERAL_ACTIVITY);
         if (!$timeisset) {
             //1是开始时间属性ID
             $baseattr_model->save($rel_id, $uid, 1, $start_time, false, ActivityProductAttrVal::STATUS_FINISHED);
         }
     }
     //查询活动属性
     $ActivityProductAttrVal = new ActivityProductAttrVal();
     $attrval = $ActivityProductAttrVal->getRealAttrVals($rel_id, $aid);
     $attrval = array_merge($attrMap, $attrval);
     // 查询时间属性是否正确 否则设置成未完成(防止提前填写时间,过段时间在完善信息 提交,填写的时间已过期和被占用)
     if (isset($attrval['start_time']['attr_val'])) {
         //查询该时间是否被占用
         $timeisset = $pmodel->searchStartime($attrval['start_time']['attr_val'], ActivityBase::GENERAL_ACTIVITY);
         if ($attrval['start_time']['attr_val'] < time() || $timeisset) {
             $btas = $baseattr_model->save($rel_id, $uid, $attrval['start_time']['attr_id'], $attrval['start_time']['attr_val'], false, 0);
         }
     }
     if (isset($attrval['album']['val']) && is_array($attrval['album']['val'])) {
         foreach ($attrval['album']['val'] as $key => $value) {
             if ($value['type'] == ProductImage::TYPE_CATIONFIRST) {
                 $fourpimag[] = $value;
             }
             if ($value['type'] == ProductImage::TYPE_CATIONINDE) {
                 $fivepimag[] = $value;
             }
         }
     }
     // 查询左侧菜单
     $ActivityAttrGroup = new ActivityAttrGroup();
     $menu = $ActivityAttrGroup->getCompleteStatus($rel_id);
     $this->layout_data = 'uc';
     return $this->render('productactivityedit', ['pid' => $pid, 'rel_id' => $rel_id, 'menu' => $menu, 'attrMap' => $attrMap, 'attrs' => isset($attrval) ? $attrval : '', 'fourpimag' => isset($fourpimag) ? $fourpimag : '', 'fivepimag' => isset($fivepimag) ? $fivepimag : '', 'price' => $basePrice]);
 }