This commit is contained in:
Mateusz Gruszczyński
2026-03-13 11:03:13 +01:00
commit 35571df778
132 changed files with 11197 additions and 0 deletions

41
app/forms/nfz.py Normal file
View File

@@ -0,0 +1,41 @@
from flask_wtf import FlaskForm
from wtforms import DateField, DecimalField, SelectField, StringField, SubmitField
from wtforms.validators import DataRequired, Optional
NFZ_BRANCH_CHOICES = [
('1070001057-00018', 'Dolnośląski OW NFZ'),
('1070001057-00021', 'Kujawsko-Pomorski OW NFZ'),
('1070001057-00034', 'Lubelski OW NFZ'),
('1070001057-00047', 'Lubuski OW NFZ'),
('1070001057-00050', 'Łódzki OW NFZ'),
('1070001057-00063', 'Małopolski OW NFZ'),
('1070001057-00076', 'Mazowiecki OW NFZ'),
('1070001057-00089', 'Opolski OW NFZ'),
('1070001057-00092', 'Podkarpacki OW NFZ'),
('1070001057-00106', 'Podlaski OW NFZ'),
('1070001057-00119', 'Pomorski OW NFZ'),
('1070001057-00122', 'Śląski OW NFZ'),
('1070001057-00135', 'Świętokrzyski OW NFZ'),
('1070001057-00148', 'Warmińsko-Mazurski OW NFZ'),
('1070001057-00151', 'Wielkopolski OW NFZ'),
('1070001057-00164', 'Zachodniopomorski OW NFZ'),
('1070001057-00177', 'Centrala NFZ'),
]
class NfzInvoiceForm(FlaskForm):
customer_id = SelectField('Odbiorca techniczny', coerce=int, validators=[DataRequired()])
product_id = SelectField('Towar / usługa', coerce=int, validators=[DataRequired()])
invoice_number = StringField('Numer faktury', validators=[Optional()])
nfz_branch_id = SelectField('Oddział NFZ (IDWew)', choices=NFZ_BRANCH_CHOICES, validators=[DataRequired()])
settlement_from = DateField('Okres rozliczeniowy od', validators=[DataRequired()], format='%Y-%m-%d')
settlement_to = DateField('Okres rozliczeniowy do', validators=[DataRequired()], format='%Y-%m-%d')
template_identifier = StringField('Identyfikator szablonu', validators=[Optional()])
provider_identifier = StringField('Identyfikator świadczeniodawcy', validators=[DataRequired()])
service_code = StringField('Kod zakresu / wyróżnik / kod świadczenia', validators=[DataRequired()])
contract_number = StringField('Numer umowy / aneksu', validators=[DataRequired()])
quantity = DecimalField('Ilość', validators=[DataRequired()], default=1)
unit_net = DecimalField('Cena netto', validators=[DataRequired()])
save_submit = SubmitField('Zapisz roboczo')
submit = SubmitField('Zapisz i wyślij do KSeF')