UNPKG

ns2-front-module-common

Version:
133 lines 5.83 kB
import { Injectable } from '@angular/core'; import { URLSearchParams } from '@angular/http'; import { HttpService } from './http.service'; var ChatsService = (function () { function ChatsService(httpService) { this.httpService = httpService; } /** * Получение всех чатов для текущего пользователя * @param {string} lastChatGuid Идентфиикатор последнего чата * @param {string} stopChatGuid Идентификатор чата, до которого получить информацию * @param {any} query Дополнительные параметры * @returns {Promise<ResponseListModel<ChatInfoModel>>} */ ChatsService.prototype.getAllChats = function (lastChatGuid, stopChatGuid, query) { var _this = this; return new Promise(function (resolve, reject) { var url = _this.messagesEndPoint + "chats/get-all-chats"; if (lastChatGuid) { url += "/" + lastChatGuid; if (stopChatGuid) { url += "/" + stopChatGuid; } } var params = new URLSearchParams(); if (query) { var keys = Object.keys(query); for (var i = 0; i < keys.length; i++) { var key = keys[i]; params.set(key, query[key]); } } _this.httpService.get(url, { params: params }) .map(function (response) { return response.json(); }) .map(function (response) { return response.data; }) .subscribe(resolve, reject); }); }; /** * Получение всех чатов для пересылки сообщений * @param {string} lastChatGuid Идентификатор последнего чата * @param {string} stopChatGuid Идентификатор чата, до которого получить информацию * @param {any} query Дополнительные параметры * @returns {Promise<ResponseListModel<ChatInfoModel>>} */ ChatsService.prototype.getForwardedChats = function (lastChatGuid, stopChatGuid, query) { var _this = this; return new Promise(function (resolve, reject) { var url = _this.messagesEndPoint + "chats/get-forwarded-chats"; if (lastChatGuid) { url += "/" + lastChatGuid; if (stopChatGuid) { url += "/" + stopChatGuid; } } var params = new URLSearchParams(); if (query) { var keys = Object.keys(query); for (var i = 0; i < keys.length; i++) { var key = keys[i]; params.set(key, query[key]); } } _this.httpService.get(url, { params: params }) .map(function (response) { return response.json(); }) .map(function (response) { return response.data; }) .subscribe(resolve, reject); }); }; /** * Поиск по всем чатам текущего пользователя * @param {string} queryText Поисковой запрос * @param {any} query Дополнительные параметры запроса * @returns {Promise<ChatInfoModel[]>} */ ChatsService.prototype.searchAllChats = function (queryText, query) { var _this = this; return new Promise(function (resolve, reject) { var url = _this.messagesEndPoint + "chats/search?q=" + queryText; var params = new URLSearchParams(); if (query) { var keys = Object.keys(query); for (var i = 0; i < keys.length; i++) { var key = keys[i]; params.set(key, query[key]); } } return _this.httpService.get(url, { params: params }) .map(function (response) { return response.json(); }) .map(function (response) { return response.data; }) .subscribe(resolve, reject); }); }; /** * Поиск по всем чатам текущего пользователя * @param {string} queryText Поисковой запрос * @param {any} query Дополнительные параметры запроса * @returns {Promise<ChatInfoModel[]>} */ ChatsService.prototype.searchForwardedChats = function (queryText, query) { var _this = this; return new Promise(function (resolve, reject) { var url = _this.messagesEndPoint + "chats/forwarded-search?q=" + queryText; var params = new URLSearchParams(); if (query) { Object.keys(query).forEach(function (key) { params.set(key, query[key]); }); } return _this.httpService.get(url, { params: params }) .map(function (response) { return response.json(); }) .map(function (response) { return response.data; }) .subscribe(resolve, reject); }); }; /** * Установка точки входа в микросервис сообщений * @param {string} endPoint */ ChatsService.prototype.setMessagesEndPoint = function (endPoint) { this.messagesEndPoint = endPoint; }; return ChatsService; }()); export { ChatsService }; ChatsService.decorators = [ { type: Injectable }, ]; /** @nocollapse */ ChatsService.ctorParameters = function () { return [ { type: HttpService, }, ]; }; //# sourceMappingURL=chats.service.js.map