model

package
v2.11.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 31, 2024 License: MIT Imports: 0 Imported by: 0

Documentation

Index

Constants

View Source
const (
	QCSuccess = 0 // Исходное значение распознано уверенно. Не требуется ручная проверка.
	QCFailure = 1 // Исходное значение распознано с допущениями или не распознано. Требуется ручная проверка.
)

Определите, нужна ли дополнительная проверка оператором, используя код качества (qc):

View Source
const (
	QCCompleteSuitable               = 0  // Пригоден для почтовой рассылки
	QCCompleteNoRegion               = 1  // Не пригоден, нет региона
	QCCompleteNoCity                 = 2  // Не пригоден, нет города
	QCCompleteNoStreet               = 3  // Не пригоден, нет улицы
	QCCompleteNotHome                = 4  // Не пригоден, нет дома
	QCCompleteNoApartment            = 5  // Пригоден для юридических лиц или частных владений (нет квартиры)
	QCCompleteNotSuitable            = 6  // Не пригоден
	QCCompleteCompleteForeignAddress = 7  // Иностранный адрес
	QCCompleteCompleteNoKLADR        = 10 // Пригоден, но низкая вероятность успешной доставки (дом не найден в КЛАДР)
)

Определите пригодность к рассылке, используя код полноты адреса (qc_complete):

View Source
const (
	QCHouseExactMatch        = 2  // Дом найден по точному совпадению (КЛАДР)	Высокая
	QCHouseNotExpansionMatch = 3  // Различие в расширении дома (КЛАДР)	Средняя
	QCHouseRangeMatch        = 4  // Дом найден по диапазону (КЛАДР)	Средняя
	QCHouseNotFound          = 10 // Дом не найден (КЛАДР)	Низкая
)

Определите вероятность успешной доставки письма по адресу, используя код проверки дома (qc_house):

View Source
const (
	QCGeoExactCoordinates = iota // Точные координаты
	QCGeoNearestHouse            // Ближайший дом
	QCGeoStreet                  // Улица
	QCGeoLocality                // Населенный пункт
	QCGeoCity                    // Город
	QCGeoNotDetermined           // Координаты не определены
)

Определите точность координат адреса доставки с помощью кода qc_geo:

View Source
const (
	QCConflictFullMath   = 0 // Телефон соответствует адресу
	QCConflictCityMath   = 2 // Города адреса и телефона отличаются
	QCConflictRegionMath = 3 // Регионы адреса и телефона отличаются
)

Проверьте, указал ли клиент телефон, соответствующий его адресу, с помощью кода qc_conflict (удобно для проверки уровня риска):

View Source
const (
	FMSTypeFMS         = 0 // Подразделение ФМС
	FMSTypeMVD         = 1 // ГУВД или МВД региона
	FMSTypeOVD         = 2 // УВД или ОВД района или города
	FMSTypePoliceState = 3 // Отделение полиции
)

FMS unit type https://dadata.ru/api/suggest/fms_unit/

Variables

This section is empty.

Functions

This section is empty.

Types

type Address

type Address struct {
	Source               string `json:"source"`                  // Исходный адрес одной строкой
	Result               string `json:"result"`                  // Стандартизованный адрес одной строкой
	PostalCode           string `json:"postal_code"`             // Индекс
	Country              string `json:"country"`                 // Страна
	CountryIsoCode       string `json:"country_iso_code"`        // ISO-код страны
	FederalDistrict      string `json:"federal_district"`        // Федеральный округ
	RegionFiasID         string `json:"region_fias_id"`          // Код ФИАС региона
	RegionKladrID        string `json:"region_kladr_id"`         // Код КЛАДР региона
	RegionIsoCode        string `json:"region_iso_code"`         // ISO-код региона
	RegionWithType       string `json:"region_with_type"`        // Регион с типом
	RegionType           string `json:"region_type"`             // Тип региона (сокращенный)
	RegionTypeFull       string `json:"region_type_full"`        // Тип региона
	Region               string `json:"region"`                  // Регион
	AreaFiasID           string `json:"area_fias_id"`            // Код ФИАС района в регионе
	AreaKladrID          string `json:"area_kladr_id"`           // Код КЛАДР района в регионе
	AreaWithType         string `json:"area_with_type"`          // Район в регионе с типом
	AreaType             string `json:"area_type"`               // Тип района в регионе (сокращенный)
	AreaTypeFull         string `json:"area_type_full"`          // Тип района в регионе
	Area                 string `json:"area"`                    // Район в регионе
	CityFiasID           string `json:"city_fias_id"`            // Код ФИАС города
	CityKladrID          string `json:"city_kladr_id"`           // Код КЛАДР города
	CityWithType         string `json:"city_with_type"`          // Город с типом
	CityType             string `json:"city_type"`               // Тип города (сокращенный)
	CityTypeFull         string `json:"city_type_full"`          // Тип города
	City                 string `json:"city"`                    // Город
	CityArea             string `json:"city_area"`               // Административный округ (только для Москвы)
	CityDistrictFiasID   string `json:"city_district_fias_id"`   // Код ФИАС района города (заполняется, только если район есть в ФИАС)
	CityDistrictKladrID  string `json:"city_district_kladr_id"`  // Код КЛАДР района города (не заполняется)
	CityDistrictWithType string `json:"city_district_with_type"` // Район города с типом
	CityDistrictType     string `json:"city_district_type"`      // Тип района города (сокращенный)
	CityDistrictTypeFull string `json:"city_district_type_full"` // Тип района города
	CityDistrict         string `json:"city_district"`           // Район города
	SettlementFiasID     string `json:"settlement_fias_id"`      // Код ФИАС нас. пункта
	SettlementKladrID    string `json:"settlement_kladr_id"`     // Код КЛАДР нас. пункта
	SettlementWithType   string `json:"settlement_with_type"`    // Населенный пункт с типом
	SettlementType       string `json:"settlement_type"`         // Тип населенного пункта (сокращенный)
	SettlementTypeFull   string `json:"settlement_type_full"`    // Тип населенного пункта
	Settlement           string `json:"settlement"`              // Населенный пункт
	StreetFiasID         string `json:"street_fias_id"`          // Код ФИАС улицы
	StreetKladrID        string `json:"street_kladr_id"`         // Код КЛАДР улицы
	StreetWithType       string `json:"street_with_type"`        // Улица с типом
	StreetType           string `json:"street_type"`             // Тип улицы (сокращенный)
	StreetTypeFull       string `json:"street_type_full"`        // Тип улицы
	Street               string `json:"street"`                  // Улица
	HouseFiasID          string `json:"house_fias_id"`           // Код ФИАС дома
	HouseKladrID         string `json:"house_kladr_id"`          // Код КЛАДР дома
	HouseType            string `json:"house_type"`              // Тип дома (сокращенный)
	HouseTypeFull        string `json:"house_type_full"`         // Тип дома
	House                string `json:"house"`                   // Дом
	HouseCadNum          string `json:"house_cadnum"`            // Кадастровый номер дома (22.4+). Заполняется в зависимости от тарифа «Дадаты».
	BlockType            string `json:"block_type"`              // Тип корпуса/строения (сокращенный)
	BlockTypeFull        string `json:"block_type_full"`         // Тип корпуса/строения
	Block                string `json:"block"`                   // Корпус/строение
	Entrance             string `json:"entrance"`                // Подъезд
	Floor                string `json:"floor"`                   // Этаж
	FlatFiasId           string `json:"flat_fias_id"`            // ФИАС-код квартиры
	FlatType             string `json:"flat_type"`               // Тип квартиры (сокращенный)
	FlatTypeFull         string `json:"flat_type_full"`          // Тип квартиры
	Flat                 string `json:"flat"`                    // Квартира
	FlatArea             string `json:"flat_area"`               // Площадь квартиры
	FlatCadNum           string `json:"flat_cadnum"`             // Кадастровый номер квартиры (22.4+). Заполняется в зависимости от тарифа «Дадаты».
	SquareMeterPrice     string `json:"square_meter_price"`      // Рыночная стоимость м²
	FlatPrice            string `json:"flat_price"`              // Рыночная стоимость квартиры
	PostalBox            string `json:"postal_box"`              // Абонентский ящик
	FiasID               string `json:"fias_id"`                 // Код ФИАС
	FiasCode             string `json:"fias_code"`               // Иерархический код адреса в ФИАС (СС+РРР+ГГГ+ППП+СССС+УУУУ+ДДДД)
	FiasLevel            string `json:"fias_level"`              // Уровень детализации, до которого адрес найден в ФИАС
	FiasActualityState   string `json:"fias_actuality_state"`    // Признак актуальности адреса в ФИАС
	KladrID              string `json:"kladr_id"`                // Код КЛАДР
	CapitalMarker        string `json:"capital_marker"`          // Статус центра
	Okato                string `json:"okato"`                   // Код ОКАТО
	Oktmo                string `json:"oktmo"`                   // Код ОКТМО
	TaxOffice            string `json:"tax_office"`              // Код ИФНС для физических лиц
	TaxOfficeLegal       string `json:"tax_office_legal"`        // Код ИФНС для организаций
	Timezone             string `json:"timezone"`                // Часовой пояс
	GeoLat               string `json:"geo_lat"`                 // Координаты: широта
	GeoLon               string `json:"geo_lon"`                 // Координаты: долгота
	BeltwayHit           string `json:"beltway_hit"`             // Внутри кольцевой?
	BeltwayDistance      string `json:"beltway_distance"`        // Расстояние от кольцевой в км.
	// QualityCodeGeoRaw для clean вызовов он int для suggest в адресе банков он string поэтому в поле поставил interface{} чтобы работало и там и там)\
	QualityCodeGeoRaw      interface{} `json:"qc_geo"`         // Код точности координат
	QualityCodeCompleteRaw interface{} `json:"qc_complete"`    // Код полноты
	QualityCodeHouseRaw    interface{} `json:"qc_house"`       // Код проверки дома
	QualityCodeRaw         interface{} `json:"qc"`             // Код качества
	UnparsedParts          string      `json:"unparsed_parts"` // Нераспознанная часть адреса. Для адреса
	Metro                  []*Metro    `json:"metro"`
}

Address base struct for datdata.Address

type AddressResponse

type AddressResponse struct {
	Value             string   `json:"value"`
	UnrestrictedValue string   `json:"unrestricted_value"`
	Data              *Address `json:"data"`
}

AddressResponse api response for address

type Bank

type Bank struct {
	Opf                  *OrganizationOPF   `json:"opf"`
	Name                 *BankName          `json:"name"`
	Inn                  string             `json:"inn"`                   // ИНН (начиная с версии 20.3)
	Kpp                  string             `json:"kpp"`                   // КПП (начиная с версии 20.3)
	Bic                  string             `json:"bic"`                   // Банковский идентификационный код (БИК) ЦБ РФ
	Swift                string             `json:"swift"`                 // Банковский идентификационный код в системе SWIFT
	Okpo                 string             `json:"okpo"`                  // Код ОКПО
	CorrespondentAccount string             `json:"correspondent_account"` // Корреспондентский счет в ЦБ РФ
	RegistrationNumber   string             `json:"registration_number"`   // Регистрационный номер в ЦБ РФ
	Rkc                  *Bank              `json:"rkc"`                   // Расчетно-кассовый центр. Объект такой же структуры, как сам банк.
	Address              *AddressResponse   `json:"address"`               // см AddressResponse
	Phone                string             `json:"phone"`                 // Не заполняется
	State                *OrganizationState `json:"state"`
}

Bank base struct for dadata.Bank https://confluence.hflabs.ru/pages/viewpage.action?pageId=262996078

type BankName

type BankName struct {
	Payment string `json:"payment"` // Платежное наименование
	Full    string `json:"full"`    // Полное наименование
	Short   string `json:"short"`   // Краткое наименование
}

BankName наименование банка

type Birthday

type Birthday struct {
	Source      string `json:"source"`    // Исходная дата
	Birthdate   string `json:"birthdate"` // Стандартизованная дата
	QualityCode int    `json:"qc"`        // Код качества
}

Birthday base struct for dadata.Birthday

type BoundValue

type BoundValue string

BoundValue type wrapper for suggest bounds full documentation https://confluence.hflabs.ru/pages/viewpage.action?pageId=222888017

const (
	SuggestBoundCountry    BoundValue = "country"    // Страна
	SuggestBoundRegion     BoundValue = "region"     // Регион
	SuggestBoundArea       BoundValue = "area"       // Район
	SuggestBoundCity       BoundValue = "city"       // Город
	SuggestBoundSettlement BoundValue = "settlement" // Населенный пункт
	SuggestBoundStreet     BoundValue = "street"     // Улица
	SuggestBoundHouse      BoundValue = "house"      // Дом
)

const for SuggestBound

type Country

type Country struct {
	Code      string `json:"code"`
	Alfa2     string `json:"alfa2"`
	Alfa3     string `json:"alfa3"`
	NameShort string `json:"name_short"`
	Name      string `json:"name"`
}

Country base struct for dadata.Country

type Email

type Email struct {
	Source      string `json:"source"` // Исходный e-mail
	Email       string `json:"email"`  // Стандартизованный e-mail
	QualityCode int    `json:"qc"`     // Код качества
}

Email base struct for dadata.Email

type FIO

type FIO struct {
	Surname    string `json:"surname"`    // Фамилия
	Name       string `json:"name"`       // Имя
	Patronymic string `json:"patronymic"` // Отчество
	Gender     Gender `json:"gender"`     // Пол
	// Код качества.
	// 0 - если все части ФИО найдены в справочниках.
	// 1 - если в ФИО есть часть не из справочника.
	QC     string `json:"qc"`
	Source string `json:"source"`
}

type FMSUnit

type FMSUnit struct {
	Code       string `json:"code"`
	Name       string `json:"name"`
	RegionCode string `json:"region_code"`
	Type       string `json:"type"`
}

FMSUnit is a FMS unit data model https://dadata.ru/api/suggest/fms_unit/

type Gender

type Gender string
const (
	GenderMale    Gender = "MALE"
	GenderFemale  Gender = "FEMALE"
	GenderUnknown Gender = "UNKNOWN" // Не удалось однозначно определить
)

type Metro

type Metro struct {
	Name     string  `json:"name"`
	Line     string  `json:"line"`
	Distance float64 `json:"distance"`
}

Metro base struct for dadata.Metro

type Name

type Name struct {
	Source         string      `json:"source"`          // Исходное ФИО одной строкой
	Result         string      `json:"result"`          // Стандартизованное ФИО одной строкой
	ResultGenitive string      `json:"result_genitive"` // ФИО в родительном падеже (кого?)
	ResultDative   string      `json:"result_dative"`   // ФИО в дательном падеже (кому?)
	ResultAblative string      `json:"result_ablative"` // ФИО в творительном падеже (кем?)
	Surname        string      `json:"surname"`         // Фамилия
	Name           string      `json:"name"`            // Имя
	Patronymic     string      `json:"patronymic"`      // Отчество
	Gender         string      `json:"gender"`          // Пол
	QualityCodeRaw interface{} `json:"qc"`              // Код качества
}

Name base struct for dadata.Name

type OrganizationOPF

type OrganizationOPF struct {
	Code  string `json:"code"`  // код ОКОПФ
	Type  string `json:"type"`  // Тип кредитной организации
	Full  string `json:"full"`  // Тип кредитной организации (на русском)
	Short string `json:"short"` // Тип кредитной организации (на русском, сокращенный)
}

OrganizationOPF Тип Кредитной организации

type OrganizationState

type OrganizationState struct {
	Status string `json:"status"` // Статус организации:
	//  ACTIVE      — действующая
	//  LIQUIDATING — ликвидируется
	//  LIQUIDATED  — ликвидирована
	ActualityDate    int64 `json:"actuality_date"`    // Дата актуальности сведений
	RegistrationDate int64 `json:"registration_date"` // Дата регистрации
	LiquidationDate  int64 `json:"liquidation_date"`  // Дата ликвидации
}

OrganizationState Статус организации

type Party

type Party struct {
	Kpp        string        `json:"kpp"`
	Capital    *PartyCapital `json:"capital"` // Уставной капитал компании
	Management *struct {
		Name         string `json:"name"`         // ФИО руководителя
		Post         string `json:"post"`         // Должность руководителя
		Disqualified *bool  `json:"disqualified"` // true, если в состав руководства входят дисквалифицированные лица (19.7+)
	} `json:"management"` // Руководитель
	Founders    []*PartyFounder    `json:"founders"` // Учредители компании
	Managers    []*PartyManager    `json:"managers"` // Руководители компании
	BranchType  string             `json:"branch_type"`
	BranchCount int                `json:"branch_count"`
	Source      string             `json:"source"`
	QC          string             `json:"qc"`
	Hid         string             `json:"hid"`
	Type        string             `json:"type"`
	State       *OrganizationState `json:"state"`
	Opf         *OrganizationOPF   `json:"opf"`
	Name        *struct {
		FullWithOpf  string `json:"full_with_opf"`
		ShortWithOpf string `json:"short_with_opf"`
		Latin        string `json:"latin"`
		Full         string `json:"full"`
		Short        string `json:"short"`
	} `json:"name"`
	Inn    string `json:"inn"`
	Ogrn   string `json:"ogrn"`
	Okato  string `json:"okato"`
	Oktmo  string `json:"oktmo"`
	Okpo   string `json:"okpo"`
	Okogu  string `json:"okogu"`
	Okfs   string `json:"okfs"`
	Okved  string `json:"okved"`
	Fio    *FIO   `json:"fio"`
	Okveds []*struct {
		Main bool   `json:"main"`
		Type string `json:"type"`
		Code string `json:"code"`
		Name string `json:"name"`
	} `json:"okveds"`
	Authorities *struct {
		FtsRegistration *PartyAuthority `json:"fts_registration"` // ИФНС регистрации
		FtsReport       *PartyAuthority `json:"fts_report"`       // ИФНС отчётности
		Pf              *PartyAuthority `json:"pf"`               // Отделение Пенсионного фонда
		Sif             *PartyAuthority `json:"sif"`              // Отделение Фонда соц. страхования
	} `json:"authorities"` // Сведения о налоговой, ПФР и ФСС
	Documents *struct {
		FtsRegistration *PartyDocument `json:"fts_registration"` // Свидетельство о регистрации в налоговой
		FtsReport       *PartyDocument `json:"fts_report"`       // Сведения об учете в налоговом органе
		PfRegistration  *PartyDocument `json:"pf_registration"`  // Свидетельство о регистрации в Пенсионном фонде
		SifRegistration *PartyDocument `json:"sif_registration"` // Свидетельство о регистрации в Фонде соц. страхования
		Smb             *struct {
			Type      string           `json:"type"`       // Тип документа
			Category  PartySMBCategory `json:"category"`   // Категория (MICRO, SMALL, MEDIUM)
			IssueDate int64            `json:"issue_date"` // Дата включения организации в реестр
		} `json:"smb"` // Запись в реестре малого и среднего предпринимательства (19.6+)
	} `json:"documents"` // Документы
	Licenses  []*PartyLicense  `json:"licenses"` // Лицензии
	Address   *AddressResponse `json:"address"`
	Phones    []*PartyPhone    `json:"phones"` // Телефоны
	Emails    []*PartyEmail    `json:"emails"` // Адреса эл. почты
	OgrnDate  int64            `json:"ogrn_date"`
	OkvedType string           `json:"okved_type"`
}

Party base struct for dadata.Party (rus Организация) https://confluence.hflabs.ru/pages/viewpage.action?pageId=204669122

type PartyAuthority

type PartyAuthority struct {
	Type    string `json:"type"`    // Код гос. органа
	Code    string `json:"code"`    // Код отделения
	Name    string `json:"name"`    // Наименование отделения
	Address string `json:"address"` // Адрес отделения одной строкой
}

type PartyCapital

type PartyCapital struct {
	Type  string  `json:"type"`  // Тип капитала
	Value float64 `json:"value"` // Размер капитала
}

PartyCapital - уставной капитал компании

type PartyDocument

type PartyDocument struct {
	Type           string `json:"type"`            // Тип документа
	Series         string `json:"series"`          // Серия документа
	Number         string `json:"number"`          // Номер документа
	IssueDate      int64  `json:"issue_date"`      // Дата выдачи
	IssueAuthority string `json:"issue_authority"` // Код подразделения
}

PartyDocument - документ

type PartyEmail

type PartyEmail struct {
	Value             string `json:"value"`              // Адрес эл. почты одной строкой
	UnrestrictedValue string `json:"unrestricted_value"` // Адрес эл. почты одной строкой
}

PartyEmail - email организации

type PartyFounder

type PartyFounder struct {
	Ogrn string           `json:"ogrn"` // ОГРН учредителя (для юрлиц)
	Inn  string           `json:"inn"`  // ИНН учредителя
	Name string           `json:"name"` // Наименование учредителя (для юрлиц)
	Hid  string           `json:"hid"`  // Внутренний идентификатор
	Type PartyFounderType `json:"type"` // Тип учредителя (LEGAL / PHYSICAL)
	Fio  *FIO             `json:"fio"`  // ФИО учредителя (для физлиц)
}

PartyFounder - учредитель компании.

type PartyFounderType

type PartyFounderType string

PartyFounderType - тип учредителя

const (
	PartyFounderTypeLegal    PartyFounderType = "LEGAL"
	PartyFounderTypePhysical PartyFounderType = "PHYSICAL"
)

type PartyLicense

type PartyLicense struct {
	Series string `json:"series"` // Серия документа
	Number string `json:"number"` // Номер документа

}

PartyLicense - лицензия

type PartyManager

type PartyManager struct {
	Ogrn string           `json:"ogrn"` // ОГРН руководителя (для юрлиц)
	Inn  string           `json:"inn"`  // ИНН руководителя
	Name string           `json:"name"` // Наименование руководителя (для юрлиц)
	Post string           `json:"post"` // Должность руководителя (для физлиц)
	Hid  string           `json:"hid"`  // Внутренний идентификатор
	Type PartyManagerType `json:"type"` // Тип руководителя
	Fio  *FIO             `json:"fio"`  // ФИО руководителя (для физлиц)
}

PartyManager - руководитель компании

type PartyManagerType

type PartyManagerType string

PartyManagerType - тип руководителя

const (
	PartyManagerTypeEmployee  PartyManagerType = "EMPLOYEE"
	PartyManagerTypeForeigner PartyManagerType = "FOREIGNER"
	PartyManagerTypeLegal     PartyManagerType = "LEGAL"
)

type PartyPhone

type PartyPhone struct {
	Value             string `json:"value"`              // Телефон одной строкой
	UnrestrictedValue string `json:"unrestricted_value"` // Телефон одной строкой
}

PartyPhone - телефон организации

type PartySMBCategory

type PartySMBCategory string
const (
	PartySMBCategoryMicro  PartySMBCategory = "MICRO"
	PartySMBCategorySmall  PartySMBCategory = "SMALL"
	PartySMBCategoryMedium PartySMBCategory = "MEDIUM"
)

type Passport

type Passport struct {
	Source      string `json:"source"` // Исходная серия и номер одной строкой
	Series      string `json:"series"` // Серия
	Number      string `json:"number"` // Номер
	QualityCode int    `json:"qc"`     // Код проверки
}

Passport base struct for dadata.Passport

type Phone

type Phone struct {
	Source              string `json:"source"`       // Исходный телефон одной строкой
	Type                string `json:"type"`         // Тип телефона
	Phone               string `json:"phone"`        // Стандартизованный телефон одной строкой
	CountryCode         string `json:"country_code"` // Код страны
	CityCode            string `json:"city_code"`    // Код города / DEF-код
	Number              string `json:"number"`       // Локальный номер телефона
	Extension           string `json:"extension"`    // Добавочный номер
	Provider            string `json:"provider"`     // Оператор связи
	Country             string `json:"country"`      // Страна
	Region              string `json:"region"`       // Регион
	City                string `json:"city"`         // Город
	Timezone            string `json:"timezone"`     // Часовой пояс
	QualityCodeConflict int    `json:"qc_conflict"`  // Признак конфликта телефона с адресом
	QualityCode         int    `json:"qc"`           // Код качества
}

Phone base struct for dadata.Phone

type Vehicle

type Vehicle struct {
	Source      string `json:"source"` // Исходное значение
	Result      string `json:"result"` // Стандартизованное значение
	Brand       string `json:"brand"`  // Марка
	Model       string `json:"model"`  // Модель
	QualityCode int    `json:"qc"`     // Код проверки
}

Vehicle base struct for dadata.Vehicle

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL