from flask_wtf import FlaskForm from wtforms import BooleanField, DecimalField, SelectField, StringField, SubmitField from wtforms.validators import DataRequired, Optional class IssuedInvoiceForm(FlaskForm): customer_id = SelectField('Klient', coerce=int, validators=[DataRequired()]) numbering_template = SelectField('Format numeracji', choices=[('monthly', 'Miesięczny'), ('yearly', 'Roczny'), ('custom', 'Własny')], validators=[DataRequired()]) invoice_number = StringField('Numer faktury', validators=[Optional()]) product_id = SelectField('Towar / usługa', coerce=int, validators=[DataRequired()]) quantity = DecimalField('Ilość', validators=[DataRequired()], default=1) unit_net = DecimalField('Cena netto', validators=[Optional()]) split_payment = BooleanField('Split payment') save_submit = SubmitField('Generuj fakturę') submit = SubmitField('Wyślij do KSeF')