2021-12-12 10:00:50 +00:00
|
|
|
import { DateTime } from 'luxon';
|
2022-01-10 11:20:53 +00:00
|
|
|
import { stateCodeMap } from '../../accounting/gst';
|
2021-12-30 09:33:03 +00:00
|
|
|
import { titleCase } from '../../src/utils';
|
2021-11-04 10:31:26 +00:00
|
|
|
|
2021-12-30 09:33:03 +00:00
|
|
|
const stateList = Object.keys(stateCodeMap).map(titleCase).sort();
|
2021-12-28 11:34:39 +00:00
|
|
|
|
2021-11-04 10:31:26 +00:00
|
|
|
export default {
|
2019-07-19 13:24:31 +00:00
|
|
|
filterFields: [
|
2019-02-18 05:42:04 +00:00
|
|
|
{
|
2021-12-30 09:33:03 +00:00
|
|
|
fieldtype: 'AutoComplete',
|
2019-07-19 13:24:31 +00:00
|
|
|
label: 'Place',
|
2019-08-14 07:43:49 +00:00
|
|
|
size: 'small',
|
|
|
|
placeholder: 'Place',
|
2021-12-16 11:15:31 +00:00
|
|
|
fieldname: 'place',
|
2021-12-30 09:33:03 +00:00
|
|
|
getList: () => stateList,
|
2019-02-18 05:42:04 +00:00
|
|
|
},
|
|
|
|
{
|
2019-07-19 13:24:31 +00:00
|
|
|
fieldtype: 'Date',
|
|
|
|
label: 'From Date',
|
2019-08-14 07:43:49 +00:00
|
|
|
size: 'small',
|
|
|
|
placeholder: 'From Date',
|
2021-12-16 11:15:31 +00:00
|
|
|
fieldname: 'fromDate',
|
2021-12-14 17:59:36 +00:00
|
|
|
default: () => DateTime.local().minus({ months: 3 }).toISODate(),
|
2019-02-18 05:42:04 +00:00
|
|
|
},
|
|
|
|
{
|
2019-07-19 13:24:31 +00:00
|
|
|
fieldtype: 'Date',
|
|
|
|
label: 'To Date',
|
2019-08-14 07:43:49 +00:00
|
|
|
size: 'small',
|
|
|
|
placeholder: 'To Date',
|
2021-12-16 11:15:31 +00:00
|
|
|
fieldname: 'toDate',
|
2021-12-14 17:59:36 +00:00
|
|
|
default: () => DateTime.local().toISODate(),
|
2021-12-16 11:15:31 +00:00
|
|
|
},
|
2019-07-19 13:24:31 +00:00
|
|
|
],
|
2021-12-29 05:22:31 +00:00
|
|
|
getColumns({ filters }) {
|
|
|
|
const columns = [
|
2019-07-19 13:24:31 +00:00
|
|
|
{
|
2021-12-02 08:34:26 +00:00
|
|
|
label: 'Party',
|
2019-07-19 13:24:31 +00:00
|
|
|
fieldtype: 'Data',
|
2019-07-22 09:56:30 +00:00
|
|
|
fieldname: 'partyName',
|
2021-12-02 08:34:26 +00:00
|
|
|
width: 1.5,
|
2019-07-19 13:24:31 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
label: 'Invoice No.',
|
|
|
|
fieldname: 'invNo',
|
|
|
|
fieldtype: 'Data',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: 'Invoice Value',
|
|
|
|
fieldname: 'invAmt',
|
|
|
|
fieldtype: 'Currency',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: 'Invoice Date',
|
|
|
|
fieldname: 'invDate',
|
|
|
|
fieldtype: 'Date',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: 'Place of supply',
|
|
|
|
fieldname: 'place',
|
|
|
|
fieldtype: 'Data',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: 'Rate',
|
|
|
|
fieldname: 'rate',
|
|
|
|
fieldtype: 'Data',
|
2021-12-02 08:34:26 +00:00
|
|
|
width: 0.5,
|
2019-07-19 13:24:31 +00:00
|
|
|
},
|
|
|
|
{
|
2019-07-25 09:50:48 +00:00
|
|
|
label: 'Taxable Value',
|
|
|
|
fieldname: 'taxVal',
|
2019-07-19 13:24:31 +00:00
|
|
|
fieldtype: 'Currency',
|
|
|
|
},
|
2019-07-25 09:50:48 +00:00
|
|
|
{
|
|
|
|
label: 'Reverse Chrg.',
|
|
|
|
fieldname: 'reverseCharge',
|
|
|
|
fieldtype: 'Data',
|
|
|
|
},
|
2019-07-19 13:24:31 +00:00
|
|
|
{
|
|
|
|
label: 'Intergrated Tax',
|
|
|
|
fieldname: 'igstAmt',
|
|
|
|
fieldtype: 'Currency',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: 'Central Tax',
|
|
|
|
fieldname: 'cgstAmt',
|
|
|
|
fieldtype: 'Currency',
|
|
|
|
},
|
|
|
|
{
|
|
|
|
label: 'State Tax',
|
|
|
|
fieldname: 'sgstAmt',
|
|
|
|
fieldtype: 'Currency',
|
2021-12-16 11:15:31 +00:00
|
|
|
},
|
2019-02-18 05:42:04 +00:00
|
|
|
];
|
2021-12-29 05:22:31 +00:00
|
|
|
|
|
|
|
const transferType = filters.transferType || 'B2B';
|
|
|
|
if (transferType === 'B2B') {
|
|
|
|
columns.unshift({
|
|
|
|
label: 'GSTIN No.',
|
|
|
|
fieldname: 'gstin',
|
|
|
|
fieldtype: 'Data',
|
|
|
|
width: 1.5,
|
|
|
|
});
|
|
|
|
}
|
|
|
|
|
|
|
|
return columns;
|
2021-12-16 11:15:31 +00:00
|
|
|
},
|
2019-07-19 13:24:31 +00:00
|
|
|
};
|