mirror of
https://github.com/retailcrm/api-client-dotnet.git
synced 2024-11-25 06:16:02 +03:00
Merge pull request #3 from dmamontov/master
new version && upload nuget
This commit is contained in:
commit
22b3950b5a
13
README.md
13
README.md
@ -2,12 +2,23 @@
|
|||||||
=============================
|
=============================
|
||||||
|
|
||||||
.NET-клиент для работы с [RetailCRM API](http://www.retailcrm.ru/docs/rest-api/index.html).
|
.NET-клиент для работы с [RetailCRM API](http://www.retailcrm.ru/docs/rest-api/index.html).
|
||||||
version: 3.0.0
|
|
||||||
|
version: 3.0.2
|
||||||
|
|
||||||
Обязательные требования
|
Обязательные требования
|
||||||
-----------------------
|
-----------------------
|
||||||
* [Newtonsoft.Json](http://james.newtonking.com/json)
|
* [Newtonsoft.Json](http://james.newtonking.com/json)
|
||||||
|
|
||||||
|
Установка через NuGet
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
Для начала требуется скачать и установить сам [NuGet](http://docs.nuget.org/consume/installing-nuget).
|
||||||
|
|
||||||
|
После этого для установки клиента требуется запустить комманду в [Package Manager Console](http://docs.nuget.org/docs/start-here/using-the-package-manager-console)
|
||||||
|
``` bash
|
||||||
|
PM> Install-Package RetailCRM.ApiClient
|
||||||
|
```
|
||||||
|
|
||||||
Примеры использования
|
Примеры использования
|
||||||
---------------------
|
---------------------
|
||||||
|
|
||||||
|
@ -414,6 +414,175 @@ namespace RetailCrm
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Returns filtered orders packs list
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="filter"></param>
|
||||||
|
/// <param name="page"></param>
|
||||||
|
/// <param name="limit"></param>
|
||||||
|
/// <returns>ApiResponse</returns>
|
||||||
|
public ApiResponse packsList(Dictionary<string, object> filter = null, int page = 0, int limit = 0)
|
||||||
|
{
|
||||||
|
Dictionary<string, object> parameters = new Dictionary<string, object>();
|
||||||
|
|
||||||
|
if (filter.Count > 0)
|
||||||
|
{
|
||||||
|
parameters.Add("filter", filter);
|
||||||
|
}
|
||||||
|
if (page > 0)
|
||||||
|
{
|
||||||
|
parameters.Add("page", page);
|
||||||
|
}
|
||||||
|
if (limit > 0)
|
||||||
|
{
|
||||||
|
parameters.Add("limit", limit);
|
||||||
|
}
|
||||||
|
|
||||||
|
return client.makeRequest("/orders/packs", Client.METHOD_GET, parameters);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Create a order pack
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="pack"></param>
|
||||||
|
/// <returns>ApiResponse</returns>
|
||||||
|
public ApiResponse packsCreate(Dictionary<string, object> pack)
|
||||||
|
{
|
||||||
|
if (pack.Count < 1)
|
||||||
|
{
|
||||||
|
throw new ArgumentException("Parameter `pack` must contains a data");
|
||||||
|
}
|
||||||
|
|
||||||
|
return client.makeRequest(
|
||||||
|
"/orders/packs/create",
|
||||||
|
Client.METHOD_POST,
|
||||||
|
new Dictionary<string, object>() {
|
||||||
|
{ "pack", JsonConvert.SerializeObject(pack) }
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Returns a orders history
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="filter"></param>
|
||||||
|
/// <param name="page"></param>
|
||||||
|
/// <param name="limit"></param>
|
||||||
|
/// <returns>ApiResponse</returns>
|
||||||
|
public ApiResponse packsHistory(Dictionary<string, object> filter = null, int page = 0, int limit = 0)
|
||||||
|
{
|
||||||
|
Dictionary<string, object> parameters = new Dictionary<string, object>();
|
||||||
|
|
||||||
|
if (filter.Count > 0)
|
||||||
|
{
|
||||||
|
parameters.Add("filter", filter);
|
||||||
|
}
|
||||||
|
if (page > 0)
|
||||||
|
{
|
||||||
|
parameters.Add("page", page);
|
||||||
|
}
|
||||||
|
if (limit > 0)
|
||||||
|
{
|
||||||
|
parameters.Add("limit", limit);
|
||||||
|
}
|
||||||
|
|
||||||
|
return client.makeRequest("/orders/packs/history", Client.METHOD_GET, parameters);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Get order packs by id
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="id"></param>
|
||||||
|
/// <returns>ApiResponse</returns>
|
||||||
|
public ApiResponse packsGet(string id)
|
||||||
|
{
|
||||||
|
return client.makeRequest("/orders/packs/" + id, Client.METHOD_GET);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Delete order packs by id
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="id"></param>
|
||||||
|
/// <returns>ApiResponse</returns>
|
||||||
|
public ApiResponse packsDelete(string id)
|
||||||
|
{
|
||||||
|
return client.makeRequest("/orders/packs/" + id + "/delete", Client.METHOD_POST);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Edit a order packs
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="id"></param>
|
||||||
|
/// <param name="pack"></param>
|
||||||
|
/// <returns>ApiResponse</returns>
|
||||||
|
public ApiResponse packsEdit(string id, Dictionary<string, object> pack)
|
||||||
|
{
|
||||||
|
if (pack.Count < 1)
|
||||||
|
{
|
||||||
|
throw new ArgumentException("Parameter `pack` must contains a data");
|
||||||
|
}
|
||||||
|
|
||||||
|
return client.makeRequest(
|
||||||
|
"/orders/packs/" + id + "/edit",
|
||||||
|
Client.METHOD_POST,
|
||||||
|
new Dictionary<string, object>() {
|
||||||
|
{ "pack", JsonConvert.SerializeObject(pack) }
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Returns filtered store inventories list
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="filter"></param>
|
||||||
|
/// <param name="page"></param>
|
||||||
|
/// <param name="limit"></param>
|
||||||
|
/// <returns>ApiResponse</returns>
|
||||||
|
public ApiResponse inventoriesList(Dictionary<string, object> filter = null, int page = 0, int limit = 0)
|
||||||
|
{
|
||||||
|
Dictionary<string, object> parameters = new Dictionary<string, object>();
|
||||||
|
|
||||||
|
if (filter.Count > 0)
|
||||||
|
{
|
||||||
|
parameters.Add("filter", filter);
|
||||||
|
}
|
||||||
|
if (page > 0)
|
||||||
|
{
|
||||||
|
parameters.Add("page", page);
|
||||||
|
}
|
||||||
|
if (limit > 0)
|
||||||
|
{
|
||||||
|
parameters.Add("limit", limit);
|
||||||
|
}
|
||||||
|
|
||||||
|
return client.makeRequest("/store/inventories", Client.METHOD_GET, parameters);
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Upload array of the store inventories
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="offers"></param>
|
||||||
|
/// <param name="site"></param>
|
||||||
|
/// <returns>ApiResponse</returns>
|
||||||
|
public ApiResponse inventoriesUpload(Dictionary<string, object> offers, string site = "")
|
||||||
|
{
|
||||||
|
if (offers.Count < 1)
|
||||||
|
{
|
||||||
|
throw new ArgumentException("Parameter `offers` must contains a data");
|
||||||
|
}
|
||||||
|
|
||||||
|
return client.makeRequest(
|
||||||
|
"/store/inventories/upload",
|
||||||
|
Client.METHOD_POST,
|
||||||
|
this.fillSite(
|
||||||
|
site,
|
||||||
|
new Dictionary<string, object>() {
|
||||||
|
{ "offers", JsonConvert.SerializeObject(offers) }
|
||||||
|
}
|
||||||
|
)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Returns deliveryServices list
|
/// Returns deliveryServices list
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -504,6 +673,15 @@ namespace RetailCrm
|
|||||||
return client.makeRequest("/reference/sites", Client.METHOD_GET);
|
return client.makeRequest("/reference/sites", Client.METHOD_GET);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Returns stores list
|
||||||
|
/// </summary>
|
||||||
|
/// <returns>ApiResponse</returns>
|
||||||
|
public ApiResponse storesList()
|
||||||
|
{
|
||||||
|
return client.makeRequest("/reference/stores", Client.METHOD_GET);
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Edit deliveryService
|
/// Edit deliveryService
|
||||||
/// </summary>
|
/// </summary>
|
||||||
@ -693,6 +871,27 @@ namespace RetailCrm
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// Edit stores
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="store"></param>
|
||||||
|
/// <returns>ApiResponse</returns>
|
||||||
|
public ApiResponse storesEdit(Dictionary<string, object> store)
|
||||||
|
{
|
||||||
|
if (store.ContainsKey("code") == false)
|
||||||
|
{
|
||||||
|
throw new ArgumentException("Data must contain \"code\" parameter");
|
||||||
|
}
|
||||||
|
|
||||||
|
return client.makeRequest(
|
||||||
|
"/reference/stores/" + store["code"] + "/edit",
|
||||||
|
Client.METHOD_POST,
|
||||||
|
new Dictionary<string, object>() {
|
||||||
|
{ "store", JsonConvert.SerializeObject(store) }
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Update CRM basic statistic
|
/// Update CRM basic statistic
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
Binary file not shown.
Loading…
Reference in New Issue
Block a user