Exemplo n.º 1
0
 private function getValuefromRedis($eventId, $action, $object, $uin)
 {
     $paramsArr = array('event_id' => $eventId, 'action' => $action, 'object' => $object, 'uin' => $uin);
     $retArr = ServiceHelper::Call("event.getActionUserByRedis", $paramsArr);
     if (empty($retArr)) {
         $retArr = ServiceHelper::Call("event.getActionUserByRedis", $paramsArr);
     }
     return $retArr;
 }
Exemplo n.º 2
0
 private function getClientIPFromRedis($eventId, $action, $object, $ip)
 {
     $ip = md5($ip);
     $paramsArr = array('event_id' => $eventId, 'action' => $action, 'object' => $object, 'uin' => $ip);
     $retArr = ServiceHelper::Call("event.getActionUserByRedis", $paramsArr);
     return !empty($retArr) ? json_decode($retArr, true) : array();
 }
Exemplo n.º 3
0
 private function is_vip()
 {
     $params = array('uin' => is_numeric(Utils::GetValue("uin")) ? Utils::GetValue("uin") : 0);
     $ret = ServiceHelper::Call("user.checkVipUser", $params);
     unset($ret['svip_state']);
     unset($ret['auth_state']);
     return $ret;
     //	    $this->return_format($ret);
 }
Exemplo n.º 4
0
 public function getUserInfo($uin)
 {
     $params = array();
     $params['uin'] = $uin;
     $params['fields'] = "nick";
     return ServiceHelper::Call("user.getUserInfo", $params);
 }
Exemplo n.º 5
0
 protected function addPacketToRedisList($actionId, $uin, $object, $actionVol, $actionVal, $reserve1, $reserve2, $terminal = 1)
 {
     $paramsArr = array();
     $paramsArr['action_id'] = $actionId;
     $paramsArr['uin'] = $uin;
     $paramsArr['object'] = $object;
     $paramsArr['terminal'] = $terminal;
     $paramsArr['action_vol'] = $actionVol;
     $paramsArr['action_val'] = $actionVal;
     $paramsArr['reserve1'] = $reserve1;
     $paramsArr['reserve2'] = $reserve2;
     $paramsArr['ctime'] = time();
     $data = array('key' => "ac:event:cf201507:real:list", 'value' => json_encode($paramsArr), 'terminal' => 10);
     return ServiceHelper::Call("redis.rPush", $data);
 }
Exemplo n.º 6
0
 /**
  * 调用mpboss接口发送游戏道具
  * @param type $uin QQ号
  * @param type $mpId 活动营销号
  * @param type $giftName 道具名
  * @param type $zoneId 区域id
  * @param type $roleId 角色id
  * @param type $count 赠送道具数量
  */
 protected function sendPacketByMp($uin, $mpId, $giftName, $zoneId, $roleId, $count = 1)
 {
     $params = array('uin' => $uin, 'mpId' => $mpId, 'giftName' => $giftName, 'giftCount' => $count, 'zoneId' => $zoneId, 'roleId' => $roleId);
     return ServiceHelper::Call("esales.getPropByMp", $params);
 }
Exemplo n.º 7
0
 /**
  * mpboss平台获得得cdkey方法
  * @param type $uin QQ号
  * @param type $mpId 活动营销号
  * @param type $clientIp 用户的ip
  * 返回值:
  * array(
  *   "ret"=>2,
  *   "msg"=>"XXXXXX",
  *   "cdkey"=>"XXXXXXXXX"
  * )
  */
 protected function getCdkeyByMp($uin, $mpId, $clientIp)
 {
     $params = array('uin' => $uin, 'mpId' => $mpId, 'clientIp' => $clientIp);
     return ServiceHelper::Call("esales.getCdkeyByMp", $params);
 }
Exemplo n.º 8
0
 /**
  * 获取礼包领取的数量
  */
 private function getEventPacketTotal($paramsArr)
 {
     $valArr = ServiceHelper::Call("event.getActionStatsByRedis", $paramsArr);
     return !empty($valArr["count"]) ? intval($valArr["count"]) : 0;
 }
Exemplo n.º 9
0
 /**
  * 回答问题
  */
 private function reply()
 {
     $answer = Utils::GetValue("answer");
     $answer = trim($answer);
     if (empty($answer)) {
         echo '{"status":0, "msg":"请选择答案"}';
         exit;
     }
     $type = intval(Utils::GetValue("type"));
     if (!in_array($type, array(1, 2))) {
         echo '{"status":0,"msg":"提示:参数出现错误!"}';
         exit;
     }
     //验证活动
     $this->checkEvent();
     //获取活动配置数据
     $tpsEventDataArr = $this->getEventInfofromConf();
     $questionArr = $this->getQuestionFromConf();
     if (empty($tpsEventDataArr) || empty($questionArr)) {
         echo json_encode(array("status" => 0, "msg" => '提示:获取活动数据发生错误!请点<a href="http://support.qq.com/write.shtml?fid=744"  style="color:#ff0000;width:111px;display:inline;font-family:microsoft yahei;font-size:16px;" target="_blank">【反馈建议】</a>投诉!'));
         exit;
     }
     $questionNum = $tpsEventDataArr[0]["id"];
     $eventType = $tpsEventDataArr[0]["eventType"];
     //当后台已经更换题型,但是用户未刷新页面,所以需要验证题型是否一致
     if ($type != $eventType) {
         echo '{"status":0,"msg":"提示:活动题型有变化,请刷新页面后再继续!"}';
         exit;
     }
     $action = $this->packetArr[$eventType]["action"];
     $object = $this->packetArr[$eventType]["object"];
     //答题规则,每天限1次,无论对错,回答正确不能再回答
     //判断是否答对此题记录,action_val:题号; reserve1:答题时间; reserve2:答题结果
     $paramsArr = array('event_id' => $this->eventId, 'action' => "question", 'object' => "answer", 'uin' => $this->uin, 'action_val' => $questionNum, 'reserve1' => '', 'reserve2' => 1);
     $answerArr = ServiceHelper::Call("event.getAction", $paramsArr);
     if (!empty($answerArr) && $answerArr["reserve2"] == 1) {
         //正确回答了问题,但是没领取礼包的情况
         $paramsArr = array('event_id' => $this->eventId, 'action' => $action, 'object' => $object, 'uin' => $this->uin, 'action_val' => $questionNum);
         $isGotPacketArr = ServiceHelper::Call("event.getAction", $paramsArr);
         if (empty($isGotPacketArr)) {
             echo '{"status":2, "msg":"您已经回答过此题,快去领取礼包吧!"}';
             exit;
         } else {
             echo '{"status":0, "msg":"您已经回答过此题,期待下次挑战吧!"}';
             exit;
         }
     }
     //当天是否有答题记录
     $paramsArr = array('event_id' => $this->eventId, 'action' => "question", 'object' => "answer", 'uin' => $this->uin, 'action_val' => $questionNum, 'reserve1' => date("Y-m-d"));
     $logArr = ServiceHelper::Call("event.getAction", $paramsArr);
     if (!empty($logArr) && $logArr["reserve2"] == -1) {
         echo '{"status":0, "msg":"你今天回答机会已经用完了,明天继续哦!"}';
         exit;
     }
     //答题
     $isCorrect = 0;
     foreach ($questionArr as $value) {
         if (trim($value["title"]) == $answer && trim($value["answer"]) == 1) {
             $isCorrect = 1;
             break;
         }
     }
     $paramsArr['ctime'] = time();
     if ($isCorrect) {
         //记录答案
         $paramsArr['reserve2'] = 1;
         $rs = ServiceHelper::Call("event.addAction", $paramsArr);
         if ($rs["status"] == 2) {
             echo '{"status": 1, "msg":"干得漂亮,礼包已激活。速速领取吧!"}';
             exit;
         }
     } else {
         $paramsArr['reserve2'] = -1;
         $rs = ServiceHelper::Call("event.addAction", $paramsArr);
         if ($rs["status"] == 2) {
             echo '{"status":0, "msg":"差一点就答对了!再回顾下漫画,明天继续哦!"}';
             exit;
         }
     }
     echo '{"status":0, "msg":"写入数据发生错误!"}';
 }