-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy patheasy_lib.py
150 lines (140 loc) · 4.82 KB
/
easy_lib.py
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
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
from combidata import ST_COMBINE
from check_step import FORM_CASES, CHECK
from normal_lib import reg_check, get_all
from texts import PA_NO_SPA, PA_WH_SPA, PA_WH_SPA_NO_NEED, ID_CARD, ID_CARD_BAD_DOC
def check_control_sum(snils_number, fact_sum):
cont = (int(snils_number[8]) * 1) + (int(snils_number[7]) * 2) + (int(snils_number[6]) * 3) + \
(int(snils_number[5]) * 4) + (int(snils_number[4]) * 5) + (int(snils_number[3]) * 6) + \
(int(snils_number[2]) * 7) + (int(snils_number[1]) * 8) + (int(snils_number[0]) * 9)
if cont in (100, 101):
cont = '00'
elif cont > 101:
cont = (cont % 101)
if cont in (100, 101):
cont = '00'
elif cont < 10:
cont = '0' + str(cont)
elif cont < 10:
cont = '0' + str(cont)
return cont == fact_sum
def check_snils(snils_type, sight):
pass
easy_library = {
"cases": {},
"workflow": (ST_COMBINE, FORM_CASES, CHECK),
"tools": {},
"template": {}
}
easy_library["cases"]["PASSPORT"] = {
"C": {
"value": r"^[0-9]{10}$",
"gen_func": reg_check,
"doc": PA_NO_SPA,
"error": "Неправильно заполнено поле PASSPORT",
"name": "PASSPORT (корректно)"
},
"F": {
"value": r"^[0-9]{1,10}$",
"gen_func": reg_check,
"next": "C",
"doc": PA_NO_SPA,
"error": "Неправильно заполнено поле PASSPORT",
"name": "PASSPORT (не корректно по длине)"
},
"E": {
"value": r"^[0-9]{10}$",
"gen_func": reg_check,
"next": "C",
"doc": PA_NO_SPA,
"error": "Неправильно заполнено поле PASSPORT.",
"name": "PASSPORT (не корректно по текстовке точка)"
},
"S": {
"value": r"^[0-9]{2} [0-9]{2} [0-9]{6}$",
"gen_func": reg_check,
"doc": PA_WH_SPA,
"error": "Неправильно заполнено поле PASSPORT",
"name": "PASSPORT (корректно с пробелами)"
},
"N": {
"value": r"^[0-9]{2} [0-9]{2} [0-9]{6}$",
"gen_func": reg_check,
"doc": PA_WH_SPA_NO_NEED,
"error": "Неправильно заполнено поле PASSPORT",
"is_presented": False,
"name": "PASSPORT (необязательно)"
},
"M": {
"value": r"^[0-9]{2} [0-9]{2} [0-9]{6}$",
"gen_func": reg_check,
"next": "N",
"doc": PA_WH_SPA_NO_NEED,
"error": "Неправильно заполнено поле PASSPORT",
"name": "PASSPORT (не корректно по необязательности)"
},
"R": {
"value": r"^[0-9 ]{1,10}$",
"gen_func": reg_check,
"next": "M",
"doc": PA_WH_SPA,
"error": "Неправильно заполнено поле PASSPORT",
"name": "PASSPORT (не корректно по маске)"
}
}
easy_library["cases"]["ID_CARD"] = {
"C": {
"value": r"^[0-9]{9}$",
"gen_func": reg_check,
"doc": ID_CARD,
"error": "Неправильно заполнено поле ID_CARD",
"name": "ID_CARD (корректно)"
},
"F": {
"value": r"^[0-9]{1-9}$",
"gen_func": reg_check,
"next": "C",
"doc": ID_CARD,
"error": "Неправильно заполнено поле ID_CARD",
"name": "ID_CARD (не корректно по длине)"
},
"L": {
"value": r"^[1-9]{9}$",
"gen_func": reg_check,
"next": "F",
"doc": ID_CARD,
"error": "Неправильно заполнено поле ID_CARD",
"name": "ID_CARD (не корректно по одному символу)"
},
"A": {
"value": r"^[0-9]{1-9}$",
"gen_func": get_all,
"next": "L",
"doc": ID_CARD,
"error": "Неправильно заполнено поле ID_CARD",
"name": "ID_CARD (принимает все)"
},
"E": {
"value": r"^[0-9]{9}$",
"gen_func": reg_check,
"next": "F",
"doc": ID_CARD,
"error": "ERROR",
"name": "ID_CARD (не корректно по текстовке)"
},
"D": {
"value": r"^[0-9]{9}$",
"gen_func": reg_check,
"next": "C",
"doc": ID_CARD_BAD_DOC,
"error": "Неправильно заполнено поле ID_CARD",
"name": "ID_CARD (не корректно по документации)"
},
"T": {
"value": r"^[0-9A-Z]{9}$",
"gen_func": reg_check,
"next": "C",
"doc": ID_CARD,
"error": "Неправильно заполнено поле ID_CARD",
"name": "ID_CARD (принимает еще и буквы)"
}
}