70 lines
5.3 KiB
Go
70 lines
5.3 KiB
Go
package models
|
||
|
||
type DealReq struct {
|
||
Name string `json:"name"` // название сделки
|
||
Price int `json:"price"` // бюджет сделки
|
||
StatusID int32 `json:"status_id"` // id статуса (шага в нашем случае) в который добавляется сделка
|
||
PipelineID int32 `json:"pipeline_id"` // ID воронки, в которую добавляется сделка
|
||
CreatedBy int32 `json:"created_by"` // id пользователя amoid который создает сделку (тот кто подключил интеграцию)
|
||
UpdatedBy int `json:"updated_by"` // ID пользователя, изменяющий сделку. При передаче значения 0, сделка будет считаться измененной роботом
|
||
ClosedAt int64 `json:"closed_at"` // Дата закрытия сделки, передается в Unix Timestamp
|
||
CreatedAt int64 `json:"created_at"` // Дата создания сделки, передается в Unix Timestamp
|
||
UpdatedAt int64 `json:"updated_at"` // Дата изменения сделки, передается в Unix Timestamp
|
||
LossReasonID *int `json:"loss_reason_id,omitempty"` // ID причины отказа
|
||
ResponsibleUserID int32 `json:"responsible_user_id"` // ID пользователя, ответственного за сделку, в нашем случае PerformerID
|
||
CustomFieldsValues []FieldsValues `json:"custom_fields_values"` // Массив полей которые заполняются значениями
|
||
TagsToAdd []Tag `json:"tags_to_add"` // Массив тегов для добавления
|
||
Embed Embedd `json:"_embedded"`
|
||
RequestID string `json:"request_id"`
|
||
}
|
||
|
||
type FieldsValues struct {
|
||
FieldID int `json:"field_id"`
|
||
Values []Values `json:"values"`
|
||
}
|
||
|
||
type Values struct {
|
||
Value string `json:"value"` // пока так пока не понятно
|
||
}
|
||
|
||
type Embedd struct {
|
||
Tags []Tag `json:"tags"` // Данные тегов, добавляемых к сделке
|
||
Contact []Contact `json:"contacts"` // Данные контактов, которые будет прикреплены к сделке
|
||
Company []Company `json:"companies"` // Данные компании, которая будет прикреплена к сделке
|
||
Source Source `json:"source"`
|
||
}
|
||
|
||
type Contact struct {
|
||
//ID int32 `json:"id"` // ID контакта
|
||
IsMain bool `json:"is_main"` // Флаг, показывающий, является контакт главным или нет
|
||
Name string `json:"first_name"`
|
||
CreatedAt int64 `json:"created_at"`
|
||
UpdatedBy int `json:"updated_by"`
|
||
ResponsibleUserID int32 `json:"responsible_user_id"` // ID пользователя, ответственного за сделку, в нашем случае PerformerID
|
||
CustomFieldsValues []FieldsValues `json:"custom_fields_values"` // Массив полей которые заполняются значениями
|
||
}
|
||
|
||
type Company struct {
|
||
//ID int32 `json:"id"` // ID компании
|
||
Name string `json:"name"` // Название компании
|
||
ResponsibleUserID int32 `json:"responsible_user_id"` // ID пользователя, ответственного за сделку, в нашем случае PerformerID
|
||
CreatedBy int32 `json:"created_by"` // id пользователя amoid который создает сделку (тот кто подключил интеграцию)
|
||
UpdatedBy int `json:"updated_by"`
|
||
CreatedAt int64 `json:"created_at"`
|
||
UpdatedAt int64 `json:"updated_at"` // Дата изменения сделки, передается в Unix Timestamp
|
||
CustomFieldsValues []FieldsValues `json:"custom_fields_values"` // Массив полей которые заполняются значениями
|
||
}
|
||
|
||
type Source struct {
|
||
ExternalID int `json:"external_id"` // Внешний ID источника
|
||
Type string `json:"type"` // Тип источника. Для сделок, добавляемых интеграциями, поддерживается только widget
|
||
}
|
||
|
||
type DealResp struct {
|
||
DealID int `json:"id"` // ID сделки
|
||
ContactID int `json:"contact_id"` // ID контакта
|
||
CompanyID int `json:"company_id"` // ID компании
|
||
Merged bool `json:"merged"` // Флаг, который показывает, найден дубль подходящий под условия поиска дублей и произведено объединение или нет
|
||
RequestID []string `json:"request_id"` // Массив строк с пользовательскими идентификаторами, которые были переданы с каждой сущностью
|
||
}
|