-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
4363584
commit d78431d
Showing
14 changed files
with
542 additions
and
211 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,3 +1,20 @@ | ||
package inn | ||
|
||
import "github.com/sshaplygin/docs-code/models" | ||
|
||
const packageName = "packageName" | ||
|
||
const ( | ||
lengthLegal = 10 | ||
lengthPhysical = 12 | ||
) | ||
|
||
type SerialNumber int | ||
|
||
type INNStruct struct { | ||
taxCode models.TaxRegionCode | ||
serialNumber SerialNumber | ||
hash10 uint | ||
hash11 uint | ||
hash12 uint | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
package kpp | ||
|
||
var supportedRegistrationReason = map[RegistrationReason]string{ | ||
"01": "Постановка на учет в налоговом органе российской организации в качестве налогоплательщика по месту ее нахождения", | ||
"02": "Постановка на учет налогоплательщика - российской организации по месту нахождения ее филиала, исполняющего обязанности организации по уплате налогов и сборов", | ||
"03": "Постановка на учет налогоплательщика - российской организации по месту нахождения ее филиала, не исполняющего обязанности организации по уплате налогов и сборов", | ||
"04": "Постановка на учет налогоплательщика - российской организации по месту нахождения ее представительства, исполняющего обязанности организации по уплате налогов и сборов", | ||
"05": "Постановка на учет налогоплательщика - российской организации по месту нахождения ее представительства, не исполняющего обязанности организации по уплате налогов и сборов", | ||
"06": "Постановка на учет налогоплательщика - российской организации по месту нахождения принадлежащего ему недвижимого имущества (за исключением земельных участков и транспортных средств)", | ||
"07": "Постановка на учет налогоплательщика - российской организации по месту нахождения принадлежащего ему недвижимого имущества (за исключением земельных участков и транспортных средств), имеющей на территории одного налогового органа число объектов имущества, превышающее 999", | ||
"08": "Постановка на учет налогоплательщика - российской организации по месту нахождения принадлежащего ему земельного участка", | ||
"10": "Постановка на учет налогоплательщика - российской организации по месту нахождения принадлежащих ему морских транспортных средств", | ||
"12": "Постановка на учет налогоплательщика - российской организации по месту нахождения принадлежащих ему речных транспортных средств", | ||
"14": "Постановка на учет налогоплательщика - российской организации по месту нахождения принадлежащих ему воздушных транспортных средств", | ||
"16": "Постановка на учет налогоплательщика - российской организации по месту нахождения принадлежащих ему автомобильных транспортных средств", | ||
"17": "Постановка на учет налогоплательщика - российской организации по месту нахождения принадлежащих ему автомобильных транспортных средств, число которых на территории одного налогового органа у данной организации превышает 999", | ||
"18": "Постановка на учет налогоплательщика - российской организации по месту нахождения принадлежащих ему автомобильных транспортных средств, число которых на территории одного налогового органа у данной организации превышает 1998", | ||
"19": "Постановка на учет налогоплательщика - российской организации по месту нахождения принадлежащих ему автомобильных транспортных средств, число которых на территории одного налогового органа у данной организации превышает 2997", | ||
"26": "Постановка на учет налогоплательщика - российской организации по месту нахождения принадлежащих ему иных видов транспортных средств", | ||
"27": "Постановка на учет налогоплательщика - российской организации по месту нахождения принадлежащего ему недвижимого имущества (за исключением земельных участков и транспортных средств), имеющей на территории одного налогового органа число объектов имущества, превышающее 1998", | ||
"28": "Постановка на учет налогоплательщика - российской организации по месту нахождения принадлежащего ему недвижимого имущества (за исключением земельных участков и транспортных средств), имеющей на территории одного налогового органа число объектов имущества, превышающее 2997", | ||
"29": "Постановка на учет налогоплательщика - российской организации по месту нахождения принадлежащих ему автомобильных транспортных средств, число которых на территории одного налогового органа у данной организации превышает 3996", | ||
"30": "Постановка на учет российской организации - налогового агента, не Учтенной в качестве налогоплательщика (по месту ее нахождения)", | ||
"31": "Постановка на учет налогоплательщика - российской организации по месту нахождения обособленного подразделения, в отношении которого не проведена процедура оформления в соответствии с пунктом 3 статьи 55 Гражданского кодекса Российской Федерации, исполняющего обязанности организации по уплате налогов и сборов", | ||
"32": "Постановка на учет налогоплательщика - российской организации по месту нахождения обособленного подразделения, в отношении которого не проведена процедура оформления в соответствии с пунктом 3 статьи 55 Гражданского кодекса Российской Федерации, не исполняющего обязанности организации по уплате налогов и сборов", | ||
"33": "Постановка на учет в налоговом органе организации по месту нахождения участка недр в качестве налогоплательщика налога на добычу полезных ископаемых", | ||
"34": "Учет в налоговом органе организации в качестве налогоплательщика налога на добычу полезных ископаемых на основании сообщений от органов, осуществляющих учет и (или) регистрацию пользователей природными ресурсами, а также лицензирование деятельности, связанной с пользованием этими ресурсами, в случаях, предусмотренных пунктами приказа МНС России", | ||
"35": "Постановка на учет организации - налогоплательщика единого налога на вмененный доход в налоговом органе по месту осуществления деятельности, подлежащей налогообложению единым налогом на вмененный доход.", | ||
"36": "Постановка на учет в налоговом органе организации при выполнении соглашения о разделе продукции", | ||
"37": "Постановка (восстановление с ранее присвоенным ИНН) на учет организации, ранее состоявшей на учете, в связи с внесением в ЕГРЮЛ записи об отмене судом решения о прекращении (ликвидации) юридического лица", | ||
"40": "Учет в налоговом органе организации при возникновении у нее обязанности по уплате отдельных видов налогов, предусмотренных действующим законодательством о налогах и сборах, в случае, когда организация осуществляет деятельность вне места своего нахождения сроком менее 1 месяца, не создавая при этом обособленное подразделение и не имея недвижимое имущество или транспортные средства по месту осуществления деятельности", | ||
"41": "Учет в налоговом органе организации, уплачивающей отдельные виды налогов, в случае отсутствия у нее на территории этого налогового органа оснований для постановки на учет", | ||
"42": "Учет сведений об исполнении организацией - участником договора простого товарищества (договора о совместной деятельности) обязанностей по исчислению и уплате всей суммы акциза, исчисленной по операциям, осуществляемым в рамках договора простого товарищества (договора о совместной деятельности) в налоговом органе по месту ее нахождения", | ||
"49": "Постановка на учет организации в качестве налогоплательщика налога на игорный бизнес в налоговом органе по месту установки объекта налогообложения", | ||
"50": "Постановка на учет в налоговом органе российской организации в качестве крупнейшего налогоплательщика", | ||
"51": "Постановка на учет отделения иностранной организации", | ||
"52": "Постановка на учет отделения иностранной организации в Российской Федерации, созданной филиалом этой иностранной организации в иностранном государстве", | ||
"53": "Постановка на учет отделения иностранной организации, созданной филиалом этой иностранной организации в Российской Федерации", | ||
"60": "Постановка на учет посольства иностранного государства", | ||
"61": "Постановка на учет консульства иностранного государства", | ||
"62": "Постановка на учет представительства иностранного государства, приравненного к дипломатическому", | ||
"63": "Постановка на учет международной организации", | ||
"70": "Постановка на учет иностранной (международной) организации, имеющей недвижимое имущество в Российской Федерации, за исключением транспортных средств, относящихся к недвижимому имуществу", | ||
"71": "Постановка на учет иностранной (международной) организации, имеющей транспортные средства в Российской Федерации, не относящиеся к недвижимому имуществу", | ||
"72": "Постановка на учет иностранной (международной) организации, имеющей морские транспортные средства в Российской Федерации", | ||
"73": "Постановка на учет иностранной (международной) организации, имеющей недвижимое имущество в Российской Федерации, за исключением транспортных средств, относящихся к недвижимому имуществу", | ||
"74": "Постановка на учет иностранной (международной) организации, имеющей воздушные транспортные средства в Российской Федерации", | ||
"75": "Постановка на учет иностранной (международной) организации, имеющей космические объекты в Российской Федерации", | ||
"76": "Постановка на учет иностранной организации, выступающей в качестве инвестора по соглашению о разделе продукции или оператора соглашения", | ||
"87": "Cчет иностранной (международной) организации в связи с открытием счетов в банках на территории Российской Федерации", | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,41 +1,18 @@ | ||
package kpp | ||
|
||
import ( | ||
"github.com/sshaplygin/docs-code/models" | ||
"github.com/sshaplygin/docs-code/utils" | ||
) | ||
|
||
type KPP struct { | ||
Code models.TaxRegionCode | ||
Reason models.ReasonRegistration | ||
SerialNumber models.SerialNumber | ||
} | ||
import "fmt" | ||
|
||
// Validate check to valid KPP format | ||
// example: input format is 773643301 | ||
func Validate(kpp string) (bool, error) { | ||
if len(kpp) != 9 { | ||
return false, &models.CommonError{ | ||
Method: packageName, | ||
Err: models.ErrInvalidLength, | ||
} | ||
} | ||
|
||
_, err := utils.StrToArr(kpp) | ||
kppData, err := ParseKPP(kpp) | ||
if err != nil { | ||
return false, err | ||
} | ||
|
||
// todo: validate tax region/office models.TaxRegionCode(kpp[:4]) | ||
|
||
_, ok := models.SupportedRegistrationReasonSet[models.RegistrationReasonCode(kpp[4:6])] | ||
if !ok { | ||
return false, ErrRegistrationReasonCode | ||
return false, fmt.Errorf("parse %s model: %w", packageName, err) | ||
} | ||
|
||
return true, nil | ||
return kppData.IsValid() | ||
} | ||
|
||
func Generate() string { | ||
panic("not implemented!") | ||
return NewKPP().String() | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.