amocrm/internal/models/createDeal.go

70 lines
5.3 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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"` // Массив строк с пользовательскими идентификаторами, которые были переданы с каждой сущностью
}