Example #1
0
 public function actionReplayDelete($id)
 {
     $model = OpenReplayModel::model()->findByPk($id);
     //删除关键字或者menu action
     switch ($model->type) {
         case GiftModel::TYPE_KEYWORDS:
             KeywordsModel::model()->deleteAll('responseId=:responseId and type=:type', array(':responseId' => $id, ':type' => OpenReplayModel::OPEN_TYPE));
             break;
         case GiftModel::TYPE_MENU:
             MenuactionModel::model()->deleteAll('responseId=:responseId and type=:type', array(':responseId' => $id, ':type' => OpenReplayModel::OPEN_TYPE));
             break;
     }
     $model->delete();
     ShowMessage::success('删除成功', Yii::app()->createUrl('open/replay'));
 }
Example #2
0
 public function actionDelete($id)
 {
     $model = WheelModel::model()->findByPk($id);
     //删除关键字或者menu action
     switch ($model->type) {
         case GiftModel::TYPE_KEYWORDS:
             KeywordsModel::model()->deleteAll('responseId=:responseId and type=:type', array(':responseId' => $id, ':type' => Globals::TYPE_SCRATCH));
             break;
         case GiftModel::TYPE_MENU:
             $menuactionModel = MenuactionModel::model()->find('responseId=:responseId', array('responseId' => $model->id));
             $menuactionModel->responseId = 0;
             $menuactionModel->save();
             break;
     }
     $model->delete();
     ShowMessage::success('删除成功', Yii::app()->createUrl('scratch'));
 }
Example #3
0
 protected function saveKeywords($keywords, $responseId, $isAccurate, $type, $oldKeywords = array(), $oldIsAccurate = 0)
 {
     $validate = true;
     if ($oldKeywords) {
         $keywordsAdd = array_unique(array_merge($oldKeywords, $keywords));
         $arrayDel = array_diff($keywordsAdd, $keywords);
         //删除了的关键字
         $arrayAdd = array_diff($keywordsAdd, $oldKeywords);
         //添加的关键字
         $arrayAlive = array_diff($oldKeywords, $arrayAdd);
         //没改变的
         if ($arrayAlive) {
             //是否精准匹配改变了
             foreach ($arrayAlive as $name) {
                 $keywordsModel = KeywordsModel::model()->find('name=:name', array(':name' => $name));
                 $keywordsModel->isAccurate = $isAccurate;
                 $validate &= $keywordsModel->validate();
                 $keywordsModel->save();
             }
         }
         if ($arrayAdd) {
             foreach ($arrayAdd as $k) {
                 //新加关键词
                 $keywordsModel = new KeywordsModel();
                 $keywordsModel->responseId = $responseId;
                 $keywordsModel->name = $k;
                 $keywordsModel->isAccurate = $isAccurate;
                 $keywordsModel->wechatId = $this->wechatInfo->id;
                 $keywordsModel->type = $type;
                 $validate &= $keywordsModel->validate();
                 $keywordsModel->save();
             }
         }
         if ($arrayDel) {
             foreach ($arrayDel as $k) {
                 //删除的关键词
                 $keywordsModel = KeywordsModel::model()->find('responseId=:responseId and name=:name', array(':name' => $k, ':responseId' => $responseId));
                 $keywordsModel->delete();
             }
         }
         if ($oldIsAccurate != $isAccurate) {
             KeywordsModel::model()->updateAll(array('isAccurate' => $isAccurate), 'responseId=:responseId', array(':responseId' => $responseId));
         }
     } else {
         foreach ($keywords as $k) {
             //新加关键词
             $keywordsModel = new KeywordsModel();
             $keywordsModel->responseId = $responseId;
             $keywordsModel->name = $k;
             $keywordsModel->isAccurate = $isAccurate;
             $keywordsModel->wechatId = $this->wechatInfo->id;
             $keywordsModel->type = $type;
             $validate &= $keywordsModel->validate();
             $keywordsModel->save();
         }
     }
     return $validate;
 }
Example #4
0
 private function _getRegistration($responseId, $openId, $type)
 {
     $active = ActiveModel::model()->findByPk($responseId);
     if (!$type) {
         $keywords = KeywordsModel::model()->find('type=:type and responseId=:responseId', array(':type' => Globals::TYPE_ACTIVE, ':responseId' => $responseId));
         $content = '参与' . $active->title . '请回复:正版(混版,pps)' . $keywords->name . '参与活动。回复:' . $keywords->name . '中奖查询,查询中奖信息';
         $responseObj = new WeChatTextResponse($content);
         return $responseObj;
     }
     if ($type == -1) {
         $content = $this->_getActiveAwards($openId, $responseId, Globals::TYPE_REGISTRATION);
     } else {
         if ($active->startTime > date('Y-m-d H:i:s')) {
             $content = $active->unstartMsg ? $active->unstartMsg : "抱歉,还未开始呢";
         } elseif ($active->endTime < date('Y-m-d H:i:s')) {
             $content = $active->endMsg ? $active->endMsg : "抱歉,你来晚了";
         } elseif ($active->status == 0) {
             $content = $active->pauseMsg ? $active->pauseMsg : "抱歉,活动暂时停止";
         } else {
             $string = $openId . '|' . $responseId . '|' . $type;
             $code = Globals::authcode($string, 'ENCODE');
             $url = Yii::app()->params['siteUrl'] . Yii::app()->createUrl('registration/handle', array('code' => $code));
             $responseObj = new WeChatArticleResponse();
             $responseObj->add_article($active->title, '', Yii::app()->params['siteUrl'] . '/wechat/upload/market/registration/active.jpg', $url);
         }
     }
     $responseObj = isset($responseObj) ? $responseObj : new WeChatTextResponse($content);
     return $responseObj;
 }
Example #5
0
 public function actionUpdate($id)
 {
     $model = MenuModel::model()->with('menu_action')->findByPk($id);
     if ($_POST) {
         $status = 1;
         $msg = '更新成功';
         $model->name = $_POST['name'];
         $model->type = $_POST['type'];
         if (!$model->parentId && $_POST['parentId']) {
             $status = -1;
             $msg = '此菜单含有子菜单,不能做此修改';
         } else {
             $model->parentId = $_POST['parentId'] ? $_POST['parentId'] : 0;
             $modelAction = MenuactionModel::model()->findByPk($model->menu_action->id);
             $modelAction->action = $_POST['type'] == Globals::TYPE_URL ? $_POST['url'] : $_POST['action'];
             //responseId 响应ID
             if ($_POST['type'] == Globals::TYPE_KEYWORDS || $_POST['type'] == Globals::TYPE_GIFT) {
                 //如果是关键词则需要找到对应的responseId
                 $keyword = KeywordsModel::model()->find("wechatId=:wechatId and name like concat('%',:name,'%') order by id desc", array(':wechatId' => $this->wechatInfo->id, ':name' => $_POST['action']));
                 if (!empty($keyword)) {
                     $modelAction->responseId = $keyword->responseId;
                 } else {
                     $msg = '不存在该关键词';
                 }
             }
             if ($model->validate() && $modelAction->validate()) {
                 $modelAction->save();
                 $model->save();
             } else {
                 $status = -1;
                 $error = $model->getErrors();
                 if ($error) {
                     foreach ($error as $e) {
                         $msg .= $e[0];
                     }
                 }
             }
         }
         echo json_encode(array('status' => $status, 'msg' => $msg));
     } else {
         $result['name'] = $model->name;
         $result['type'] = $model->type;
         $result['url'] = $result['action'] = isset($model->menu_action->action) ? $model->menu_action->action : '';
         $result['actionId'] = isset($model->menu_action->id) ? $model->menu_action->id : 0;
         echo json_encode($result);
     }
 }
Example #6
0
 public function actionGiftDelete($id)
 {
     $model = GiftModel::model()->findByPk($id);
     /* $codeTable = sprintf(GiftModel::CREATE_CODE_TABLE_NAME, $this->wechatInfo->id);
        GiftCodeModel::model($codeTable)->deleteAll('giftId=:giftId', array(':giftId' => $id));*/
     //删除关键字或者menu action
     switch ($model->type) {
         case GiftModel::TYPE_KEYWORDS:
             KeywordsModel::model()->deleteAll('responseId=:responseId and type=:type', array(':responseId' => $id, ':type' => GiftModel::GIFT_TYPE));
             break;
         case GiftModel::TYPE_MENU:
             $menuactionModel = MenuactionModel::model()->find('responseId=:responseId', array('responseId' => $model->id));
             $menuactionModel->responseId = 0;
             $menuactionModel->save();
             break;
     }
     $model->delete();
     ShowMessage::success('删除成功', Yii::app()->createUrl('market/gift'));
 }