DataPaymentInvoice constructor

DataPaymentInvoice({
  1. required int partnerId,
  2. String? companyName,
  3. String? address,
  4. String? phoneNumber,
  5. String? invoiceTitle,
  6. required String invoiceNumber,
  7. required String date,
  8. required String recipientName,
  9. required String amount,
  10. required String note,
  11. required String totalAccount,
  12. required String totalPaid,
  13. required String authorizedSignature,
  14. String language = 'fa',
})

Implementation

DataPaymentInvoice({
  required this.partnerId,
  this.companyName,
  this.address,
  this.phoneNumber,
  this.invoiceTitle,
  required this.invoiceNumber,
  required this.date,
  required this.recipientName,
  required this.amount,
  required this.note,
  required this.totalAccount,
  required this.totalPaid,
  required this.authorizedSignature,
  this.language = 'fa',
}) {
  amountInWords = language == 'en'
      ? convertNumberToEnglishWords(double.parse(cleanString(amount)).toInt())
      : (language == 'ar'
          ? convertNumberToArabicWords(
              double.parse(cleanString(amount)).toInt())
          : convertNumberToKurdishWords(
              double.parse(cleanString(amount)).toInt()));
  var suffix = '';
  if (amount.trim().endsWith('\$')) {
    suffix = language == 'en'
        ? 'dollar'
        : (language == 'ar' ? 'الدولار' : 'دۆلار');
  } else {
    suffix =
        language == 'en' ? 'dinar' : (language == 'ar' ? 'دینار' : 'دینار');
  }
  amountInWords = '${amountInWords!} $suffix';

  companyName = partners[partnerId]?.getCompanyName(language) ??
      'Kurdish Voice Casting';
  address = partners[partnerId]?.getAddress(language) ?? 'Sulaimanya';
  phoneNumber =
      partners[partnerId]?.getPhoneNumber(language) ?? '07748133883';
  invoiceTitle =
      partners[partnerId]?.getInvoiceTitle(language) ?? 'Contact Invoice';
}