refactoring: invoice form.

refactoring: receipt form.
refactoring: bill form.
refactoring: estimate form.
This commit is contained in:
a.bouhuolia
2021-02-15 16:23:58 +02:00
parent 151bd9bc54
commit e8458e2b36
37 changed files with 410 additions and 903 deletions

View File

@@ -0,0 +1,39 @@
import moment from 'moment';
import { transformToForm, repeatValue } from 'utils';
export const MIN_LINES_NUMBER = 4;
export const defaultBillEntry = {
index: 0,
item_id: '',
rate: '',
discount: 0,
quantity: 1,
description: '',
};
export const defaultBill = {
vendor_id: '',
bill_number: '',
bill_date: moment(new Date()).format('YYYY-MM-DD'),
due_date: moment(new Date()).format('YYYY-MM-DD'),
reference_no: '',
note: '',
open: '',
entries: [...repeatValue(defaultBillEntry, MIN_LINES_NUMBER)],
};
export const transformToEditForm = (bill) => {
return {
...transformToForm(bill, defaultBill),
entries: [
...bill.entries.map((bill) => ({
...transformToForm(bill, defaultBill.entries[0]),
})),
...repeatValue(
defaultBill,
Math.max(MIN_LINES_NUMBER - bill.entries.length, 0),
),
],
};
}