-
Notifications
You must be signed in to change notification settings - Fork 4
/
report_stock.go
98 lines (87 loc) · 5.22 KB
/
report_stock.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
package moysklad
// StockAll Расширенный отчет об остатках.
// Ключевое слово: stock
// Документация МойСклад: https://dev.moysklad.ru/doc/api/remap/1.2/reports/#otchety-otchet-ostatki-rasshirennyj-otchet-ob-ostatkah
type StockAll struct {
Image Meta `json:"image"`
Meta Meta `json:"meta"`
Folder StockFolder `json:"folder"`
Uom MetaName `json:"uom"`
Article string `json:"article"`
ExternalCode string `json:"externalCode"`
Code string `json:"code"`
Name string `json:"name"`
InTransit float64 `json:"inTransit"`
Price float64 `json:"price"`
Quantity float64 `json:"quantity"`
Reserve float64 `json:"reserve"`
SalePrice float64 `json:"salePrice"`
Stock float64 `json:"stock"`
StockDays float64 `json:"stockDays"`
}
func (s StockAll) MetaType() MetaType {
return MetaTypeReportStock
}
// StockByOperation Остатки по документам.
// Ключевое слово: stockbyoperation
// Документация МойСклад: https://dev.moysklad.ru/doc/api/remap/1.2/reports/#otchety-otchet-ostatki-ostatki-po-dokumentam
type StockByOperation struct {
Meta Meta `json:"meta"` // Метаданные, представляющие собой ссылку на документ, по которому выдаются Остатки
Positions []StockByOperationPosition `json:"positions"` // Массив объектов, представляющий собой Остаток по каждой из позиций
}
func (s StockByOperation) MetaType() MetaType {
return MetaTypeReportStockByOperation
}
// StockByOperationPosition Остатки по документам (позиция)
// Документация МойСклад: https://dev.moysklad.ru/doc/api/remap/1.2/reports/#otchety-otchet-ostatki-ostatki-po-dokumentam-atributy-pozicii
type StockByOperationPosition struct {
Meta Meta `json:"meta"` // Метаданные склада, по которому выводится Остаток
Name string `json:"name"` // Наименование склада
Stock float64 `json:"stock"` // Остаток
Cost float64 `json:"cost"` // Себестоимость
InTransit float64 `json:"inTransit"` // Ожидание
Reserve float64 `json:"reserve"` // Резерв
Quantity float64 `json:"quantity"` // Доступно
}
// StockByStore Остатки по складам.
// Ключевое слово: stockbystore
// Документация МойСклад: https://dev.moysklad.ru/doc/api/remap/1.2/reports/#otchety-otchet-ostatki-ostatki-po-skladam
type StockByStore struct {
Meta Meta `json:"meta"` // Метаданные позиции, по которой выдается Остаток
StockByStore []StockByStorePosition `json:"stockByStore"` // Остатки по складам
}
func (s StockByStore) MetaType() MetaType {
return MetaTypeReportStockByStore
}
// StockByStorePosition Остатки по складам (позиция)
// Документация МойСклад: https://dev.moysklad.ru/doc/api/remap/1.2/reports/#otchety-otchet-ostatki-ostatki-po-skladam-ostatki-po-skladam
type StockByStorePosition struct {
Meta Meta `json:"meta"`
Name string `json:"name"`
Stock float64 `json:"stock"`
InTransit float64 `json:"inTransit"`
Reserve float64 `json:"reserve"`
}
// StockCurrentAll Краткий отчет об остатках
// Документация МойСклад: https://dev.moysklad.ru/doc/api/remap/1.2/reports/#otchety-otchet-ostatki-poluchit-kratkij-otchet-ob-ostatkah
type StockCurrentAll struct {
AssortmentId string `json:"assortmentId"`
Stock int `json:"stock"`
Quantity int `json:"quantity"`
}
// StockCurrentByStore Краткий отчет об остатках
// Документация МойСклад: https://dev.moysklad.ru/doc/api/remap/1.2/reports/#otchety-otchet-ostatki-poluchit-kratkij-otchet-ob-ostatkah
type StockCurrentByStore struct {
AssortmentId string `json:"assortmentId"` // Выдать в отчёте только указанные товары, модификации и серии
StoreId string `json:"storeId"` // ID склада
Stock float64 `json:"stock"` // Физический остаток на складах, без учёта резерва и ожидания
FreeStock float64 `json:"freeStock"` // Остаток на складах за вычетом резерва
Quantity float64 `json:"quantity"` // Доступно. Учитывает резерв и ожидания
}
// StockFolder Группа
// Документация МойСклад: https://dev.moysklad.ru/doc/api/remap/1.2/reports/#otchety-otchet-ostatki-rasshirennyj-otchet-ob-ostatkah-gruppa
type StockFolder struct {
Meta Meta `json:"meta"` // Метаданные группы товара
Name string `json:"name"` // Наименование группы
PathName string `json:"pathName"` // Наименование родительской группы
}