/** * 设置活动开始结束时间接口 * @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'); } } }
/** * 修改产品 * @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]); }