Exemple #1
0
 public function invitedmemebersAction()
 {
     $re = array("returncode" => ReturnCode::$SUCCESS);
     $user = $this->get('security.context')->getToken()->getUser();
     $request = $this->getRequest();
     $group_id = $request->get("group_id");
     $circle_id = $request->get("circle_id");
     $group_name = $request->get("group_name");
     $fafa_groupid = $request->get('fafa_groupid');
     $invitedmemebers = $request->get("invitedmemebers");
     $im_sender = $this->container->getParameter('im_sender');
     $da = $this->get('we_data_access');
     try {
         if (empty($circle_id) || empty($group_id) || empty($fafa_groupid) || empty($invitedmemebers)) {
             $re["returncode"] = ReturnCode::$SYSERROR;
             $response = new Response($request->get('jsoncallback') ? $request->get('jsoncallback') . "(" . json_encode($re) . ");" : json_encode($re));
             $response->headers->set('Content-Type', 'text/json');
             return $response;
         }
         $invs = explode(";", $invitedmemebers);
         $title = "邀请加入群组";
         $groupStaffs = array();
         $sql = "select login_account from we_group_staff where group_id=?";
         $ds = $da->GetData("group_staffs", $sql, array($group_id));
         if ($ds && $ds["group_staffs"]["recordcount"] > 0) {
             foreach ($ds["group_staffs"]["rows"] as &$row) {
                 $groupStaffs[] = $row['login_account'];
             }
         }
         foreach ($invs as $key => $value) {
             if (empty($value)) {
                 continue;
             }
             if (count($groupStaffs) > 0 && in_array($value, $groupStaffs)) {
                 continue;
             }
             //群编号,被邀请人帐号,network_domain,fafa_groupid
             $encode = DES::encrypt("{$group_id},{$value},{$circle_id}," . $fafa_groupid);
             $activeurl = $this->generateUrl("JustsyBaseBundle_group_invjoin", array('para' => $encode), true);
             $txt = $this->renderView("JustsyBaseBundle:Group:message.html.twig", array("ename" => $user->ename, "realName" => $user->nick_name, "activeurl" => $activeurl, 'gname' => $group_name));
             //发送站内消息
             $msgId = SysSeq::GetSeqNextValue($da, "we_message", "msg_id");
             $sql = "insert into we_message(msg_id,sender,recver,title,content,send_date)values(?,?,?,?,?,now())";
             $da->ExecSQL($sql, array((int) $msgId, (string) $user->getUserName(), (string) $value, "邀请加入群组", $txt));
             //发送即时消息
             $fafa_jid = Utils::getJidByAccount($da, $value);
             //$this->get("logger")->info(Utils::makeHTMLElementTag('employee',$user->fafa_jid,$user->nick_name));
             $message = Utils::makeHTMLElementTag('employee', $user->fafa_jid, $user->nick_name) . "邀请您加入群组【" . Utils::makeHTMLElementTag('group', $fafa_groupid, $group_name) . "】";
             $buttons = array();
             $buttons[] = array("text" => "拒绝", "code" => "agree", "value" => "0");
             $buttons[] = array("text" => "立即加入", "code" => "agree", "value" => "1");
             Utils::sendImMessage($im_sender, $fafa_jid, $title, $message, $this->container, $activeurl . "?invite_user="******"1");
         }
         $re["returncode"] = ReturnCode::$SUCCESS;
     } catch (\Exception $e) {
         $re["returncode"] = ReturnCode::$SYSERROR;
         $this->get('logger')->err($e);
     }
     $response = new Response($request->get('jsoncallback') ? $request->get('jsoncallback') . "(" . json_encode($re) . ");" : json_encode($re));
     $response->headers->set('Content-Type', 'text/json');
     return $response;
 }
Exemple #2
0
         if ($b) {
             $da->ExecSQLs($sqls, $paras);
             return new Response("1");
         } else {
             return new Response("0");
         }
     } catch (\Exception $e) {
         $logger = $this->get('logger')->err($e);
         return new Response("0");
     }
 }
 public function applyCancelAction($groupid)
 {
     $da = $this->get("we_data_access");
     $user = $this->get('security.context')->getToken()->getUser();
     $apply = new \Justsy\BaseBundle\Management\ApplyMgr($da, null);
     $apply->SetGroupApplyInvalid($user->GetUserName(), $groupid);
     $re = array();
     $re["success"] = "1";
     $response = new Response(json_encode($re));
     $response->headers->set('Content-Type', 'text/json');
     return $response;
 }
 //申请加入群组
 public function applyJoinGroupAction()
 {
     $da = $this->get("we_data_access");
     $user = $this->get('security.context')->getToken()->getUser();
     $group_id = $this->get('request')->request->get('group_id');
     $group_name = $this->get('request')->request->get('group_name');
     $create_staff = $this->get('request')->request->get('create_staff');
     $network_domain = $this->get('request')->request->get('network_domain');
     //判断加入群组数是否超过了限制
     $ec = new \Justsy\BaseBundle\Management\EnoParamManager($da, $this->get('logger'));
     if ($ec->IsBeyondJoinGroup($user->getUserName())) {
         return new Response("-2");
 public function attentionAction($attenaccount)
 {
     $this->get("logger")->err("---------------------------2222222222222222------------------");
     $curuser = $this->get('security.context')->getToken()->getUser();
     $isme = $curuser->getUsername();
     $da = $this->get('we_data_access');
     $staffMgr = new \Justsy\BaseBundle\Management\Staff($da, $this->get('we_data_access_im'), $curuser->getUserName(), $this->get("logger"));
     $staffMgr->attentionTo($attenaccount);
     //变更版本信息
     $eno = $curuser->eno;
     $this->get("logger")->err("----------------------------eno:" . $eno . "----------------------");
     $verchange = new \Justsy\BaseBundle\Management\VersionChange($da, $this->get("logger"));
     $result = $verchange->SetVersionChange(1, $attenaccount, $eno);
     $result = $verchange->SetVersionChange(1, $isme, $eno);
     $this->get("logger")->err("-----------------444444-------------------");
     //发送关注消息
     $msgId = SysSeq::GetSeqNextValue($da, "we_message", "msg_id");
     $sql = "insert into we_message(msg_id,sender,recver,send_date,title,content)values(?,?,?,now(),?,?)";
     $da->ExecSQL($sql, array((int) $msgId, (string) $isme, (string) $attenaccount, "好友请求", "你的好友<a style='cursor:pointer;color:#1A65A5' class='employee_name' login_account='{$isme}'>" . $curuser->nick_name . "</a>关注了你"));
     //查询是否互关注
     $sql = "select f_checkAttentionWithAccount(?,?) cnt";
     $ds = $da->GetData("both", $sql, array((string) $isme, (string) $attenaccount));
     $IsBoth = $ds["both"]["rows"][0]["cnt"];
     $im_sender = $this->container->getParameter('im_sender');
     $fafa_jid = Utils::getJidByAccount($da, $attenaccount);
     if ($IsBoth != 2) {
         //发送即时消息
         $message = "您的好友 " . Utils::makeHTMLElementTag("employee", $curuser->fafa_jid, $curuser->nick_name) . " 关注了您";
         $link = $this->generateUrl("JustsyBaseBundle_component_emp_attention", array("attenaccount" => $isme), true);
         $linkButtons = Utils::makeBusButton(array(array("code" => "action", "text" => "关注TA", "value" => "atten")));
         Utils::sendImMessage($im_sender, $fafa_jid, "好友请求", $message, $this->container, $link, $linkButtons, false, Utils::$systemmessage_code);
         $response = new Response("{\"succeed\":1,\"both\":{$IsBoth}}");
         //提醒交换名片
         $msg_id = SysSeq::GetSeqNextValue($da, "we_message", "msg_id");
         $sql = "insert into we_message (msg_id,sender,recver,send_date,title,content,msg_type) values(?,?,?,now(),?,?,'02')";
         $params = array($msg_id, $isme, $attenaccount, '好友请求', "<a login_account='" . $isme . "' class='account_baseinfo'>" . $curuser->nick_name . "</a>希望与您成为好友");
         $da->ExecSQL($sql, $params);
     } else {
         //互相添加好友
         $staffMgr->bothAddFriend($this->container, $attenaccount);
         //加入对方的人脉圈子
         $msg_id = SysSeq::GetSeqNextValue($da, "we_message", "msg_id");
         $sql = "insert into we_message (msg_id,sender,recver,send_date,title,content,msg_type) values(?,?,?,now(),?,?,'02')";
         $params = array($msg_id, $isme, $attenaccount, '好友消息', "<a login_account='" . $isme . "' class='account_baseinfo'>" . $curuser->nick_name . "</a>与您成为了好友,并进入了您的人脉圈");
         $da->ExecSQL($sql, $params);
         $response = new Response("{\"succeed\":1,\"both\":{$IsBoth},\"msg\":\"\"}");
     }
     $response->headers->set('Content-Type', 'text/json');
     return $response;
 }