get formData()

in src/app/customers/cases/form/detail/detail.component.ts [258:305]


  get formData(): DetailFormData {
    const paymentTemporalUnit = this.form.get('paymentTemporalUnit').value;
    const dayInWeek = this.form.get('dayInWeek').value;

    const monthSetting: MonthSetting = this.form.get('monthSetting').value;
    const monthSettingDay = this.form.get('monthSettingDay').value;
    const monthSettingDayInWeek = this.form.get('monthSettingDayInWeek').value;
    const monthSettingWeek = this.form.get('monthSettingWeek').value;
    const month = this.form.get('month').value;

    let paymentAlignmentDay: number;
    let paymentAlignmentWeek: number;
    let paymentAlignmentMonth: number;

    if (paymentTemporalUnit === 'WEEKS') {
      paymentAlignmentDay = dayInWeek;
    }

    if (paymentTemporalUnit === 'MONTHS' || paymentTemporalUnit === 'YEARS') {
      if (monthSetting === 'DAY') {
        paymentAlignmentDay = monthSettingDay;
      } else {
        paymentAlignmentDay = monthSettingDayInWeek;
        paymentAlignmentWeek = monthSettingWeek;
      }
    }

    if (paymentTemporalUnit === 'YEARS') {
      paymentAlignmentMonth = month;
    }

    const formData: DetailFormData = {
      identifier: this.form.get('identifier').value,
      productIdentifier: this.form.get('productIdentifier').value,
      interest: this.form.get('interest').value,
      principalAmount: this.form.get('principalAmount').value,
      term: this.form.get('term').value,
      termTemporalUnit: this.form.get('termTemporalUnit').value,
      paymentTemporalUnit,
      paymentPeriod: this.form.get('paymentPeriod').value,
      paymentAlignmentDay,
      paymentAlignmentWeek,
      paymentAlignmentMonth,
      depositAccountIdentifier: this.form.get('depositAccountIdentifier').value
    };

    return formData;
  }