Example #1
0
    function act_feedbackChangeMutilMessage()
    {
        include WEB_PATH . "lib/feedback/ebaylibrary/ebay_config.php";
        //print_r($_POST);//exit;
        $bills = isset($_POST['bill']) ? $_POST['bill'] : '';
        $content = isset($_POST['content']) ? $_POST['content'] : '';
        $content = htmlspecialchars($content);
        $content = str_replace("\\", "", $content);
        if ($bills == '' || $content == '') {
            self::$errCode = '001';
            self::$errMsg = "参数错误!";
            return false;
        }
        $accountArr = array();
        foreach ($bills as $bill) {
            $accountArr[] = $bill['account'];
        }
        $accountArr = array_unique($accountArr);
        $accountStr = implode("','", $accountArr);
        $accAct = new AccountAct();
        $accountInfo = $accAct->act_getAccountList('account,token', "where account in ('{$accountStr}') and is_delete = 0");
        $accountTokens = array();
        foreach ($accountInfo as $v) {
            $accountTokens[$v['account']] = $v['token'];
        }
        foreach ($bills as &$bill) {
            $bill['token'] = $accountTokens[$bill['account']];
            $where = " where account = '{$bill['account']}' and CommentingUser = '******'ebayUserId']}' limit 1";
            $lists = EbayFeedbackModel::getOrderList('itemID', $where);
            $bill['itemID'] = $lists[0]['itemID'];
        }
        //print_r($bills);exit;
        $verb = 'AddMemberMessageAAQToPartner';
        foreach ($bills as $bil) {
            //$feedbackid	= $bill['feedbackID'];
            $userid = $bil['ebayUserId'];
            $itemid = $bil['itemID'];
            $account = $bil['account'];
            $token = $bil['token'];
            $requestXmlBody = '<?xml version="1.0" encoding="utf-8"?>
			<AddMemberMessageAAQToPartnerRequest xmlns="urn:ebay:apis:eBLBaseComponents">
				<RequesterCredentials>
					<eBayAuthToken>' . $token . '</eBayAuthToken>
				</RequesterCredentials>
				<ItemID>' . $itemid . '</ItemID>
				<MemberMessage>
					<EmailCopyToSender>true</EmailCopyToSender>
					<Body>' . $content . '</Body>
					<QuestionType>General</QuestionType>
					<RecipientID>' . $userid . '</RecipientID>
				</MemberMessage>
			</AddMemberMessageAAQToPartnerRequest>';
            $session = new eBaySession($token, $devID, $appID, $certID, $serverUrl, $compatabilityLevel, $siteID, $verb);
            //print_r($session);
            //continue;//exit;
            $responseXml = $session->sendHttpRequest($requestXmlBody);
            if (stristr($responseXml, 'HTTP 404') || $responseXml == '') {
                self::$errCode = '002';
                self::$errMsg = 'id not found';
                return false;
            }
            $data = XML_unserialize($responseXml);
            $ack = $data['AddMemberMessageAAQToPartnerResponse']['Ack'];
            $error = $data['AddMemberMessageAAQToPartnerResponse']['Errors']['LongMessage'];
            if ($ack != "Failure") {
                $data = array('reply_feedback' => $content);
                $where = " and FeedbackID='{$feedbackid}' ";
                EbayFeedbackModel::update($data, $where);
                return 'ok';
            } else {
                self::$errCode = '003';
                self::$errMsg = "批量Message失败!" . $error;
                return false;
            }
        }
    }