mirror of
https://github.com/bigcapitalhq/bigcapital.git
synced 2026-02-16 12:50:38 +00:00
feat: localize resource fields.
This commit is contained in:
@@ -47,9 +47,11 @@ export default class ResourceController extends BaseController {
|
||||
tenantId,
|
||||
resourceModel
|
||||
);
|
||||
return res
|
||||
.status(200)
|
||||
.send({ resource_meta: this.transfromToResponse(resourceMeta) });
|
||||
return res.status(200).send({
|
||||
resource_meta: this.transfromToResponse(
|
||||
resourceMeta,
|
||||
),
|
||||
});
|
||||
} catch (error) {
|
||||
next(error);
|
||||
}
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
"Other Liability": "التزمات اخري",
|
||||
"Equity": "حقوق الملكية",
|
||||
"Expense": "مصروف",
|
||||
"Income": "دخل",
|
||||
"Income": "إيراد",
|
||||
"Accounts Receivable (A/R)": "الذمم المدينة",
|
||||
"Accounts Receivable": "الذمم المدينة",
|
||||
"Accounts Payable (A/P)": "الذمم الدائنة",
|
||||
@@ -76,7 +76,7 @@
|
||||
"Journal type": "نوع القيد",
|
||||
"Date": "تاريخ",
|
||||
"Asset": "أصل",
|
||||
"Liability": "مسؤلية",
|
||||
"Liability": "التزام",
|
||||
"First-in first-out (FIFO)": "الوارد أولاً يصرف أولاً (FIFO)",
|
||||
"Last-in first-out (LIFO)": "الوارد أخيرًا يصرف أولاً (LIFO)",
|
||||
"Average rate": "المعدل المتوسط",
|
||||
@@ -187,5 +187,181 @@
|
||||
"receipt.paper.receipt_number": "رقم الإيصال",
|
||||
"receipt.paper.conditions_title": "الشروط والأحكام",
|
||||
"receipt.paper.notes_title": "ملاحظات",
|
||||
"receipt.paper.receipt_amount": "قيمة الإيصال"
|
||||
"receipt.paper.receipt_amount": "قيمة الإيصال",
|
||||
"account.field.name": "إسم الحساب",
|
||||
"account.field.description": "الوصف",
|
||||
"account.field.slug": "Account slug",
|
||||
"account.field.code": "رقم الحساب",
|
||||
"account.field.root_type": "جذر الحساب",
|
||||
"account.field.normal": "طبيعة الحساب",
|
||||
"account.field.normal.credit": "دائن",
|
||||
"account.field.normal.debit": "مدين",
|
||||
"account.field.type": "نوع الحساب",
|
||||
"account.field.active": "Activity",
|
||||
"account.field.balance": "الرصيد",
|
||||
"account.field.created_at": "أنشئت في",
|
||||
"item.field.type": "نوع الصنف",
|
||||
"item.field.type.inventory": "مخزون",
|
||||
"item.field.type.service": "خدمة",
|
||||
"item.field.type.non-inventory": "Non inventory",
|
||||
"item.field.name": "اسم الصنف",
|
||||
"item.field.code": "رمز الصنف",
|
||||
"item.field.sellable": "قابل للبيع",
|
||||
"item.field.purchasable": "قابل للشراء",
|
||||
"item.field.cost_price": "سعر التكلفة",
|
||||
"item.field.cost_account": "حساب التكلفة",
|
||||
"item.field.sell_account": "حساب البيع",
|
||||
"item.field.sell_description": "وصف البيع",
|
||||
"item.field.inventory_account": "حساب المخزون",
|
||||
"item.field.purchase_description": "وصف الشراء",
|
||||
"item.field.quantity_on_hand": "الكمية",
|
||||
"item.field.note": "ملاحظة",
|
||||
"item.field.category": "التصنيف",
|
||||
"item.field.active": "Active",
|
||||
"item.field.created_at": "أنشئت في",
|
||||
"item_category.field.name": "الاسم",
|
||||
"item_category.field.description": "الوصف",
|
||||
"item_category.field.count": "العدد",
|
||||
"item_category.field.created_at": "أنشئت في",
|
||||
"invoice.field.customer": "الزبون",
|
||||
"invoice.field.invoice_date": "تاريخ الفاتورة",
|
||||
"invoice.field.due_date": "تاريخ الاستحقاق",
|
||||
"invoice.field.invoice_no": "رقم الفاتورة",
|
||||
"invoice.field.reference_no": "رقم الإشاري",
|
||||
"invoice.field.invoice_message": "رسالة الفاتورة",
|
||||
"invoice.field.terms_conditions": "الشروط والأحكام",
|
||||
"invoice.field.amount": "القيمة",
|
||||
"invoice.field.payment_amount": "القيمة المدفوعة",
|
||||
"invoice.field.due_amount": "القيمة المستحقة",
|
||||
"invoice.field.status": "الحالة",
|
||||
"invoice.field.status.paid": "مدفوعة",
|
||||
"invoice.field.status.partially-paid": "المدفوعة جزئيا",
|
||||
"invoice.field.status.overdue": "متأخرة",
|
||||
"invoice.field.status.unpaid": "غير مدفوعة",
|
||||
"invoice.field.status.delivered": "تم تسليمها",
|
||||
"invoice.field.status.draft": "مسودة",
|
||||
"invoice.field.created_at": "أنشئت في",
|
||||
"estimate.field.amount": "القيمة",
|
||||
"estimate.field.estimate_number": "رقم العرض",
|
||||
"estimate.field.customer": "الزبون",
|
||||
"estimate.field.estimate_date": "تاريخ العرض",
|
||||
"estimate.field.expiration_date": "تاريخ انتهاء الصلاحية",
|
||||
"estimate.field.reference_no": "رقم الإشاري",
|
||||
"estimate.field.note": "ملاحظة",
|
||||
"estimate.field.terms_conditions": "الشروط والأحكام",
|
||||
"estimate.field.status": "الحالة",
|
||||
"estimate.field.status.delivered": "تم تسليمها",
|
||||
"estimate.field.status.rejected": "مرفوضة",
|
||||
"estimate.field.status.approved": "تم الموافقة",
|
||||
"estimate.field.status.draft": "مسودة",
|
||||
"estimate.field.created_at": "أنشئت في",
|
||||
"payment_receive.field.customer": "الزبون",
|
||||
"payment_receive.field.payment_date": "تاريخ الدفع",
|
||||
"payment_receive.field.amount": "القيمة",
|
||||
"payment_receive.field.reference_no": "رقم الإشاري",
|
||||
"payment_receive.field.deposit_account": "حساب الإيداع",
|
||||
"payment_receive.field.payment_receive_no": "رقم عملية الدفع",
|
||||
"payment_receive.field.statement": "البيان",
|
||||
"payment_receive.field.created_at": "أنشئت في",
|
||||
"bill_payment.field.vendor": "المورد",
|
||||
"bill_payment.field.amount": "القيمة",
|
||||
"bill_payment.field.due_amount": "قيمة المستحقة",
|
||||
"bill_payment.field.payment_account": "حساب الدفع",
|
||||
"bill_payment.field.payment_number": "قيمة الدفع",
|
||||
"bill_payment.field.payment_date": "تاريخ الدفع",
|
||||
"bill_payment.field.reference_no": "رقم الإشاري",
|
||||
"bill_payment.field.description": "الوصف",
|
||||
"bill_payment.field.created_at": "أنشئت في",
|
||||
"bill.field.vendor": "المورد",
|
||||
"bill.field.bill_number": "رقم الفاتورة",
|
||||
"bill.field.bill_date": "تاريخ الفاتورة",
|
||||
"bill.field.due_date": "تاريخ الاستحقاق",
|
||||
"bill.field.reference_no": "رقم الإشاري",
|
||||
"bill.field.status": "الحالة",
|
||||
"bill.field.status.paid": "مدفوعة",
|
||||
"bill.field.status.partially-paid": "مدفوعة جزئيا",
|
||||
"bill.field.status.unpaid": "غير مدفوعة",
|
||||
"bill.field.status.opened": "مفتوحة",
|
||||
"bill.field.status.draft": "مسودة",
|
||||
"bill.field.status.overdue": "متأخرة",
|
||||
"bill.field.amount": "القيمة",
|
||||
"bill.field.payment_amount": "قيم الدفع",
|
||||
"bill.field.note": "ملاحظة",
|
||||
"bill.field.created_at": "أنشئت في",
|
||||
"inventory_adjustment.field.date": "التاريخ",
|
||||
"inventory_adjustment.field.type": "النوع",
|
||||
"inventory_adjustment.field.type.increment": "زيادة",
|
||||
"inventory_adjustment.field.type.decrement": "نقصان",
|
||||
"inventory_adjustment.field.adjustment_account": "حساب التسوية",
|
||||
"inventory_adjustment.field.reason": "السبب",
|
||||
"inventory_adjustment.field.reference_no": "رقم الإشاري",
|
||||
"inventory_adjustment.field.description": "الوصف",
|
||||
"inventory_adjustment.field.published_at": "نشرت في",
|
||||
"inventory_adjustment.field.created_at": "أنشئت في",
|
||||
"expense.field.payment_date": "تاريخ الدفع",
|
||||
"expense.field.payment_account": "حساب الدفع",
|
||||
"expense.field.amount": "القيمة",
|
||||
"expense.field.reference_no": "رقم الإشاري",
|
||||
"expense.field.description": "الوصف",
|
||||
"expense.field.published": "Published",
|
||||
"expense.field.status": "الحالة",
|
||||
"expense.field.status.draft": "مسودة",
|
||||
"expense.field.status.published": "نشرت",
|
||||
"expense.field.created_at": "أنشئت في",
|
||||
"manual_journal.field.date": "التاريخ",
|
||||
"manual_journal.field.journal_number": "رقم القيد",
|
||||
"manual_journal.field.reference": "رقم الإشاري",
|
||||
"manual_journal.field.journal_type": "نوع القيد",
|
||||
"manual_journal.field.amount": "القيمة",
|
||||
"manual_journal.field.description": "الوصف",
|
||||
"manual_journal.field.status": "الحالة",
|
||||
"manual_journal.field.created_at": "أنشئت في",
|
||||
"receipt.field.amount": "القيمة",
|
||||
"receipt.field.deposit_account": "حساب الإيداع",
|
||||
"receipt.field.customer": "الزبون",
|
||||
"receipt.field.receipt_date": "تاريخ الإيصال",
|
||||
"receipt.field.receipt_number": "رقم الإيصال",
|
||||
"receipt.field.reference_no": "رقم الإشاري",
|
||||
"receipt.field.receipt_message": "رسالة الإيصال",
|
||||
"receipt.field.statement": "البيان",
|
||||
"receipt.field.created_at": "أنشئت في",
|
||||
"receipt.field.status": "الحالة",
|
||||
"receipt.field.status.draft": "مسودة",
|
||||
"receipt.field.status.closed": "مغلقة",
|
||||
"customer.field.first_name": "الاسم الأول",
|
||||
"customer.field.last_name": "الاسم الاخير",
|
||||
"customer.field.display_name": "اسم العرض",
|
||||
"customer.field.email": "بريد الالكتروني",
|
||||
"customer.field.work_phone": "هاتف عمل",
|
||||
"customer.field.personal_phone": "هاتف شخصي",
|
||||
"customer.field.company_name": "اسم الشركة",
|
||||
"customer.field.website": "موقع الكتروني",
|
||||
"customer.field.opening_balance_at": "الرصيد الافتتاحي في",
|
||||
"customer.field.opening_balance": "الرصيد الافتتاحي",
|
||||
"customer.field.created_at": "أنشئت في",
|
||||
"customer.field.balance": "الرصيد",
|
||||
"customer.field.status": "الحالة",
|
||||
"customer.field.currency": "العملة",
|
||||
"customer.field.status.active": "مفعل",
|
||||
"customer.field.status.inactive": "غير مفعل",
|
||||
"customer.field.status.overdue": "متأخر",
|
||||
"customer.field.status.unpaid": "غير دافع",
|
||||
"vendor.field.first_name": "الاسم الأول",
|
||||
"vendor.field.last_name": "الاسم الاخير",
|
||||
"vendor.field.display_name": "اسم العرض",
|
||||
"vendor.field.email": "بريد الالكتروني",
|
||||
"vendor.field.work_phone": "هاتف عمل",
|
||||
"vendor.field.personal_phone": "هاتف شخصي",
|
||||
"vendor.field.company_name": "اسم الشركة",
|
||||
"vendor.field.website": "موقع الكتروني",
|
||||
"vendor.field.opening_balance_at": "الرصيد الافتتاحي في",
|
||||
"vendor.field.opening_balance": "الرصيد الافتتاحي",
|
||||
"vendor.field.created_at": "أنشئت في",
|
||||
"vendor.field.balance": "الرصيد",
|
||||
"vendor.field.status": "الحالة",
|
||||
"vendor.field.currency": "العملة",
|
||||
"vendor.field.status.active": "مفعل",
|
||||
"vendor.field.status.inactive": "غير مفعل",
|
||||
"vendor.field.status.overdue": "متأخر",
|
||||
"vendor.field.status.unpaid": "غير دافع"
|
||||
}
|
||||
@@ -187,5 +187,181 @@
|
||||
"receipt.paper.expiration_date": "Expiration date",
|
||||
"receipt.paper.conditions_title": "Conditions & terms",
|
||||
"receipt.paper.notes_title": "Notes",
|
||||
"receipt.paper.receipt_amount": "Receipt amount"
|
||||
"receipt.paper.receipt_amount": "Receipt amount",
|
||||
"account.field.name": "Account name",
|
||||
"account.field.description": "Description",
|
||||
"account.field.slug": "Account slug",
|
||||
"account.field.code": "Account code",
|
||||
"account.field.root_type": "Root type",
|
||||
"account.field.normal": "Account normal",
|
||||
"account.field.normal.credit": "Credit",
|
||||
"account.field.normal.debit": "Debit",
|
||||
"account.field.type": "Type",
|
||||
"account.field.active": "Activity",
|
||||
"account.field.balance": "Balance",
|
||||
"account.field.created_at": "Created at",
|
||||
"item.field.type": "Item type",
|
||||
"item.field.type.inventory": "Inventory",
|
||||
"item.field.type.service": "Service",
|
||||
"item.field.type.non-inventory": "Non inventory",
|
||||
"item.field.name": "Name",
|
||||
"item.field.code": "Code",
|
||||
"item.field.sellable": "Sellable",
|
||||
"item.field.purchasable": "Purchasable",
|
||||
"item.field.cost_price": "Cost price",
|
||||
"item.field.cost_account": "Cost account",
|
||||
"item.field.sell_account": "Sell account",
|
||||
"item.field.sell_description": "Sell description",
|
||||
"item.field.inventory_account": "Inventory account",
|
||||
"item.field.purchase_description": "Purchase description",
|
||||
"item.field.quantity_on_hand": "Quantity on hand",
|
||||
"item.field.note": "Note",
|
||||
"item.field.category": "Category",
|
||||
"item.field.active": "Active",
|
||||
"item.field.created_at": "Created at",
|
||||
"item_category.field.name": "Name",
|
||||
"item_category.field.description": "Description",
|
||||
"item_category.field.count": "Count",
|
||||
"item_category.field.created_at": "Created at",
|
||||
"invoice.field.customer": "Customer",
|
||||
"invoice.field.invoice_date": "Invoice date",
|
||||
"invoice.field.due_date": "Due date",
|
||||
"invoice.field.invoice_no": "Invoice No.",
|
||||
"invoice.field.reference_no": "Reference No.",
|
||||
"invoice.field.invoice_message": "Invoice message",
|
||||
"invoice.field.terms_conditions": "Terms & conditions",
|
||||
"invoice.field.amount": "Amount",
|
||||
"invoice.field.payment_amount": "Payment amount",
|
||||
"invoice.field.due_amount": "Due amount",
|
||||
"invoice.field.status": "Status",
|
||||
"invoice.field.status.paid": "Paid",
|
||||
"invoice.field.status.partially-paid": "Partially paid",
|
||||
"invoice.field.status.overdue": "Overdue",
|
||||
"invoice.field.status.unpaid": "Unpaid",
|
||||
"invoice.field.status.delivered": "Delivered",
|
||||
"invoice.field.status.draft": "Draft",
|
||||
"invoice.field.created_at": "Created at",
|
||||
"estimate.field.amount": "Amount",
|
||||
"estimate.field.estimate_number": "Estimate number",
|
||||
"estimate.field.customer": "Customer",
|
||||
"estimate.field.estimate_date": "Estimate date",
|
||||
"estimate.field.expiration_date": "Expiration date",
|
||||
"estimate.field.reference_no": "Reference No.",
|
||||
"estimate.field.note": "Note",
|
||||
"estimate.field.terms_conditions": "Terms & conditions",
|
||||
"estimate.field.status": "Status",
|
||||
"estimate.field.status.delivered": "Delivered",
|
||||
"estimate.field.status.rejected": "Rejected",
|
||||
"estimate.field.status.approved": "Approved",
|
||||
"estimate.field.status.draft": "Draft",
|
||||
"estimate.field.created_at": "Created at",
|
||||
"payment_receive.field.customer": "Customer",
|
||||
"payment_receive.field.payment_date": "Payment date",
|
||||
"payment_receive.field.amount": "Amount",
|
||||
"payment_receive.field.reference_no": "Reference No.",
|
||||
"payment_receive.field.deposit_account": "Deposit account",
|
||||
"payment_receive.field.payment_receive_no": "Payment receive No.",
|
||||
"payment_receive.field.statement": "Statement",
|
||||
"payment_receive.field.created_at": "Created at",
|
||||
"bill_payment.field.vendor": "Vendor",
|
||||
"bill_payment.field.amount": "Amount",
|
||||
"bill_payment.field.due_amount": "Due amount",
|
||||
"bill_payment.field.payment_account": "Payment account",
|
||||
"bill_payment.field.payment_number": "Payment number",
|
||||
"bill_payment.field.payment_date": "Payment date",
|
||||
"bill_payment.field.reference_no": "Reference No.",
|
||||
"bill_payment.field.description": "Description",
|
||||
"bill_payment.field.created_at": "Created at",
|
||||
"bill.field.vendor": "Vendor",
|
||||
"bill.field.bill_number": "Bill number",
|
||||
"bill.field.bill_date": "Bill date",
|
||||
"bill.field.due_date": "Due date",
|
||||
"bill.field.reference_no": "Reference No.",
|
||||
"bill.field.status": "Status",
|
||||
"bill.field.status.paid": "Paid",
|
||||
"bill.field.status.partially-paid": "Partially paid",
|
||||
"bill.field.status.unpaid": "Unpaid",
|
||||
"bill.field.status.opened": "Opened",
|
||||
"bill.field.status.draft": "Draft",
|
||||
"bill.field.status.overdue": "overdue",
|
||||
"bill.field.amount": "Amount",
|
||||
"bill.field.payment_amount": "Payment amount",
|
||||
"bill.field.note": "Note",
|
||||
"bill.field.created_at": "Created at",
|
||||
"inventory_adjustment.field.date": "Date",
|
||||
"inventory_adjustment.field.type": "Type",
|
||||
"inventory_adjustment.field.type.increment": "Increment",
|
||||
"inventory_adjustment.field.type.decrement": "Decrement",
|
||||
"inventory_adjustment.field.adjustment_account": "Adjustment account",
|
||||
"inventory_adjustment.field.reason": "Reason",
|
||||
"inventory_adjustment.field.reference_no": "Reference No.",
|
||||
"inventory_adjustment.field.description": "Description",
|
||||
"inventory_adjustment.field.published_at": "Published at",
|
||||
"inventory_adjustment.field.created_at": "Created at",
|
||||
"expense.field.payment_date": "Payment date",
|
||||
"expense.field.payment_account": "Payment account",
|
||||
"expense.field.amount": "Amount",
|
||||
"expense.field.reference_no": "Reference No.",
|
||||
"expense.field.description": "Description",
|
||||
"expense.field.published": "Published",
|
||||
"expense.field.status": "Status",
|
||||
"expense.field.status.draft": "Draft",
|
||||
"expense.field.status.published": "Published",
|
||||
"expense.field.created_at": "Created at",
|
||||
"manual_journal.field.date": "Date",
|
||||
"manual_journal.field.journal_number": "Journal number",
|
||||
"manual_journal.field.reference": "Reference No.",
|
||||
"manual_journal.field.journal_type": "Journal type",
|
||||
"manual_journal.field.amount": "Amount",
|
||||
"manual_journal.field.description": "Description",
|
||||
"manual_journal.field.status": "Status",
|
||||
"manual_journal.field.created_at": "Created at",
|
||||
"receipt.field.amount": "Amount",
|
||||
"receipt.field.deposit_account": "Deposit account",
|
||||
"receipt.field.customer": "Customer",
|
||||
"receipt.field.receipt_date": "Receipt date",
|
||||
"receipt.field.receipt_number": "Receipt number",
|
||||
"receipt.field.reference_no": "Reference No.",
|
||||
"receipt.field.receipt_message": "Receipt message",
|
||||
"receipt.field.statement": "Statement",
|
||||
"receipt.field.created_at": "Created at",
|
||||
"receipt.field.status": "Status",
|
||||
"receipt.field.status.draft": "Draft",
|
||||
"receipt.field.status.closed": "Closed",
|
||||
"customer.field.first_name": "First name",
|
||||
"customer.field.last_name": "Last name",
|
||||
"customer.field.display_name": "Display name",
|
||||
"customer.field.email": "Email",
|
||||
"customer.field.work_phone": "Work phone",
|
||||
"customer.field.personal_phone": "Personal phone",
|
||||
"customer.field.company_name": "Company name",
|
||||
"customer.field.website": "Website",
|
||||
"customer.field.opening_balance_at": "Opening balance at",
|
||||
"customer.field.opening_balance": "Opening balance",
|
||||
"customer.field.created_at": "Created at",
|
||||
"customer.field.balance": "Balance",
|
||||
"customer.field.status": "Status",
|
||||
"customer.field.currency": "Curreny",
|
||||
"customer.field.status.active": "Active",
|
||||
"customer.field.status.inactive": "Inactive",
|
||||
"customer.field.status.overdue": "Overdue",
|
||||
"customer.field.status.unpaid": "Unpaid",
|
||||
"vendor.field.first_name": "First name",
|
||||
"vendor.field.last_name": "Last name",
|
||||
"vendor.field.display_name": "Display name",
|
||||
"vendor.field.email": "Email",
|
||||
"vendor.field.work_phone": "Work phone",
|
||||
"vendor.field.personal_phone": "Personal phone",
|
||||
"vendor.field.company_name": "Company name",
|
||||
"vendor.field.website": "Website",
|
||||
"vendor.field.opening_balance_at": "Opening balance at",
|
||||
"vendor.field.opening_balance": "Opening balance",
|
||||
"vendor.field.created_at": "Created at",
|
||||
"vendor.field.balance": "Balance",
|
||||
"vendor.field.status": "Status",
|
||||
"vendor.field.currency": "Curreny",
|
||||
"vendor.field.status.active": "Active",
|
||||
"vendor.field.status.inactive": "Inactive",
|
||||
"vendor.field.status.overdue": "Overdue",
|
||||
"vendor.field.status.unpaid": "Unpaid"
|
||||
}
|
||||
@@ -1,4 +1,3 @@
|
||||
import { IModelMeta } from 'interfaces';
|
||||
import { ACCOUNT_TYPES } from 'data/AccountTypes';
|
||||
|
||||
export default {
|
||||
@@ -9,29 +8,29 @@ export default {
|
||||
},
|
||||
fields: {
|
||||
name: {
|
||||
name: 'Account name',
|
||||
name: 'account.field.name',
|
||||
column: 'name',
|
||||
fieldType: 'text',
|
||||
},
|
||||
description: {
|
||||
name: 'Description',
|
||||
name: 'account.field.description',
|
||||
column: 'description',
|
||||
fieldType: 'text',
|
||||
},
|
||||
slug: {
|
||||
name: 'Account slug',
|
||||
name: 'account.field.slug',
|
||||
column: 'slug',
|
||||
fieldType: 'text',
|
||||
columnable: false,
|
||||
filterable: false,
|
||||
},
|
||||
code: {
|
||||
name: 'Account code',
|
||||
name: 'account.field.code',
|
||||
column: 'code',
|
||||
fieldType: 'text',
|
||||
},
|
||||
root_type: {
|
||||
name: 'Root type',
|
||||
name: 'account.field.root_type',
|
||||
fieldType: 'enumeration',
|
||||
options: [
|
||||
{ key: 'asset', label: 'Asset' },
|
||||
@@ -44,17 +43,17 @@ export default {
|
||||
sortable: false,
|
||||
},
|
||||
normal: {
|
||||
name: 'Account normal',
|
||||
name: 'account.field.normal',
|
||||
fieldType: 'enumeration',
|
||||
options: [
|
||||
{ key: 'debit', label: 'Debit' },
|
||||
{ key: 'credit', label: 'Credit' },
|
||||
{ key: 'debit', label: 'account.field.normal.debit' },
|
||||
{ key: 'credit', label: 'account.field.normal.credit' },
|
||||
],
|
||||
filterCustomQuery: NormalTypeFieldFilterQuery,
|
||||
sortable: false,
|
||||
},
|
||||
type: {
|
||||
name: 'Type',
|
||||
name: 'account.field.type',
|
||||
column: 'account_type',
|
||||
fieldType: 'enumeration',
|
||||
options: ACCOUNT_TYPES.map((accountType) => ({
|
||||
@@ -63,24 +62,24 @@ export default {
|
||||
})),
|
||||
},
|
||||
active: {
|
||||
name: 'Active',
|
||||
name: 'account.field.active',
|
||||
column: 'active',
|
||||
fieldType: 'boolean',
|
||||
filterable: false,
|
||||
},
|
||||
balance: {
|
||||
name: 'Account balance',
|
||||
name: 'account.field.balance',
|
||||
column: 'amount',
|
||||
fieldType: 'number',
|
||||
},
|
||||
currency: {
|
||||
name: 'Currency',
|
||||
name: 'account.field.currency',
|
||||
column: 'currency_code',
|
||||
fieldType: 'text',
|
||||
filterable: false,
|
||||
},
|
||||
created_at: {
|
||||
name: 'Created at',
|
||||
name: 'account.field.created_at',
|
||||
column: 'created_at',
|
||||
fieldType: 'date',
|
||||
},
|
||||
|
||||
@@ -9,7 +9,7 @@ export default {
|
||||
},
|
||||
fields: {
|
||||
vendor: {
|
||||
name: 'Vendor',
|
||||
name: 'bill.field.vendor',
|
||||
column: 'vendor_id',
|
||||
fieldType: 'relation',
|
||||
|
||||
@@ -20,61 +20,61 @@ export default {
|
||||
relationEntityKey: 'id',
|
||||
},
|
||||
bill_number: {
|
||||
name: 'Bill number',
|
||||
name: 'bill.field.bill_number',
|
||||
column: 'bill_number',
|
||||
columnable: true,
|
||||
fieldType: 'text',
|
||||
},
|
||||
bill_date: {
|
||||
name: 'Bill date',
|
||||
name: 'bill.field.bill_date',
|
||||
column: 'bill_date',
|
||||
columnable: true,
|
||||
fieldType: 'date',
|
||||
},
|
||||
due_date: {
|
||||
name: 'Due date',
|
||||
name: 'bill.field.due_date',
|
||||
column: 'due_date',
|
||||
columnable: true,
|
||||
fieldType: 'date',
|
||||
},
|
||||
reference_no: {
|
||||
name: 'Reference No.',
|
||||
name: 'bill.field.reference_no',
|
||||
column: 'reference_no',
|
||||
columnable: true,
|
||||
fieldType: 'text',
|
||||
},
|
||||
status: {
|
||||
name: 'Status',
|
||||
name: 'bill.field.status',
|
||||
fieldType: 'enumeration',
|
||||
columnable: true,
|
||||
options: [
|
||||
{ label: 'Paid', key: 'paid' },
|
||||
{ label: 'Partially paid', key: 'partially-paid' },
|
||||
{ label: 'Overdue', key: 'overdue' },
|
||||
{ label: 'Unpaid', key: 'unpaid' },
|
||||
{ label: 'Opened', key: 'opened' },
|
||||
{ label: 'Draft', key: 'draft' },
|
||||
{ label: 'bill.field.status.paid', key: 'paid' },
|
||||
{ label: 'bill.field.status.partially-paid', key: 'partially-paid' },
|
||||
{ label: 'bill.field.status.overdue', key: 'overdue' },
|
||||
{ label: 'bill.field.status.unpaid', key: 'unpaid' },
|
||||
{ label: 'bill.field.status.opened', key: 'opened' },
|
||||
{ label: 'bill.field.status.draft', key: 'draft' },
|
||||
],
|
||||
filterCustomQuery: StatusFieldFilterQuery,
|
||||
sortCustomQuery: StatusFieldSortQuery,
|
||||
},
|
||||
amount: {
|
||||
name: 'Amount',
|
||||
name: 'bill.field.amount',
|
||||
column: 'amount',
|
||||
fieldType: 'number',
|
||||
},
|
||||
payment_amount: {
|
||||
name: 'Payment amount',
|
||||
name: 'bill.field.payment_amount',
|
||||
column: 'payment_amount',
|
||||
fieldType: 'number',
|
||||
},
|
||||
note: {
|
||||
name: 'Note',
|
||||
name: 'bill.field.note',
|
||||
column: 'note',
|
||||
fieldType: 'text',
|
||||
},
|
||||
created_at: {
|
||||
name: 'Created at',
|
||||
name: 'bill.field.created_at',
|
||||
column: 'created_at',
|
||||
fieldType: 'date',
|
||||
},
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
|
||||
export default {
|
||||
defaultFilterField: 'vendor',
|
||||
defaultSort: {
|
||||
@@ -6,8 +5,8 @@ export default {
|
||||
sortField: 'bill_date',
|
||||
},
|
||||
fields: {
|
||||
'vendor': {
|
||||
name: 'Vendor name',
|
||||
vendor: {
|
||||
name: 'bill_payment.field.vendor',
|
||||
column: 'vendor_id',
|
||||
fieldType: 'relation',
|
||||
|
||||
@@ -17,18 +16,18 @@ export default {
|
||||
relationEntityLabel: 'display_name',
|
||||
relationEntityKey: 'id',
|
||||
},
|
||||
'amount': {
|
||||
name: 'Amount',
|
||||
amount: {
|
||||
name: 'bill_payment.field.amount',
|
||||
column: 'amount',
|
||||
fieldType: 'number',
|
||||
},
|
||||
'due_amount': {
|
||||
name: 'Due amount',
|
||||
due_amount: {
|
||||
name: 'bill_payment.field.due_amount',
|
||||
column: 'due_amount',
|
||||
fieldType: 'number',
|
||||
},
|
||||
'payment_account': {
|
||||
name: 'Payment account',
|
||||
payment_account: {
|
||||
name: 'bill_payment.field.payment_account',
|
||||
column: 'payment_account_id',
|
||||
|
||||
fieldType: 'relation',
|
||||
@@ -38,28 +37,28 @@ export default {
|
||||
relationLabelField: 'name',
|
||||
relationKeyField: 'slug',
|
||||
},
|
||||
'payment_number': {
|
||||
name: 'Payment number',
|
||||
payment_number: {
|
||||
name: 'bill_payment.field.payment_number',
|
||||
column: 'payment_number',
|
||||
fieldType: 'number',
|
||||
},
|
||||
'payment_date': {
|
||||
name: 'Payment date',
|
||||
payment_date: {
|
||||
name: 'bill_payment.field.payment_date',
|
||||
column: 'payment_date',
|
||||
fieldType: 'date',
|
||||
},
|
||||
'reference_no': {
|
||||
name: 'Reference No.',
|
||||
reference_no: {
|
||||
name: 'bill_payment.field.reference_no',
|
||||
column: 'reference',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'description': {
|
||||
name: 'Description',
|
||||
description: {
|
||||
name: 'bill_payment.field.description',
|
||||
column: 'description',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'created_at': {
|
||||
name: 'Created at',
|
||||
created_at: {
|
||||
name: 'bill_payment.field.created_at',
|
||||
column: 'created_at',
|
||||
fieldType: 'date',
|
||||
},
|
||||
|
||||
@@ -1,79 +1,79 @@
|
||||
export default {
|
||||
fields: {
|
||||
first_name: {
|
||||
name: 'First name',
|
||||
name: 'customer.field.first_name',
|
||||
column: 'first_name',
|
||||
fieldType: 'text',
|
||||
},
|
||||
last_name: {
|
||||
name: 'Last name',
|
||||
name: 'customer.field.last_name',
|
||||
column: 'last_name',
|
||||
fieldType: 'text',
|
||||
},
|
||||
display_name: {
|
||||
name: 'Display name',
|
||||
name: 'customer.field.display_name',
|
||||
column: 'display_name',
|
||||
fieldType: 'text',
|
||||
},
|
||||
email: {
|
||||
name: 'Email',
|
||||
name: 'customer.field.email',
|
||||
column: 'email',
|
||||
fieldType: 'text',
|
||||
},
|
||||
work_phone: {
|
||||
name: 'Work phone',
|
||||
name: 'customer.field.work_phone',
|
||||
column: 'work_phone',
|
||||
fieldType: 'text',
|
||||
},
|
||||
personal_phone: {
|
||||
name: 'Personal phone',
|
||||
name: 'customer.field.personal_phone',
|
||||
column: 'personal_phone',
|
||||
fieldType: 'text',
|
||||
},
|
||||
company_name: {
|
||||
name: 'Company name',
|
||||
name: 'customer.field.company_name',
|
||||
column: 'company_name',
|
||||
fieldType: 'text',
|
||||
},
|
||||
website: {
|
||||
name: 'Website',
|
||||
name: 'customer.field.website',
|
||||
column: 'website',
|
||||
fieldType: 'text',
|
||||
},
|
||||
created_at: {
|
||||
name: 'Created at',
|
||||
name: 'customer.field.created_at',
|
||||
column: 'created_at',
|
||||
fieldType: 'date',
|
||||
},
|
||||
balance: {
|
||||
name: 'Balance',
|
||||
name: 'customer.field.balance',
|
||||
column: 'balance',
|
||||
fieldType: 'number',
|
||||
},
|
||||
opening_balance: {
|
||||
name: 'Opening balance',
|
||||
name: 'customer.field.opening_balance',
|
||||
column: 'opening_balance',
|
||||
fieldType: 'number',
|
||||
},
|
||||
opening_balance_at: {
|
||||
name: 'Opening balance at',
|
||||
name: 'customer.field.opening_balance_at',
|
||||
column: 'opening_balance_at',
|
||||
filterable: false,
|
||||
fieldType: 'date',
|
||||
},
|
||||
currency_code: {
|
||||
name: 'Curreny',
|
||||
name: 'customer.field.currency',
|
||||
column: 'currency_code',
|
||||
fieldType: 'text',
|
||||
},
|
||||
status: {
|
||||
name: 'Status',
|
||||
name: 'customer.field.status',
|
||||
fieldType: 'enumeration',
|
||||
options: [
|
||||
{ key: 'active', label: 'Active' },
|
||||
{ key: 'inactive', label: 'Inactive' },
|
||||
{ key: 'overdue', label: 'Overdue' },
|
||||
{ key: 'unpaid', label: 'Unpaid' },
|
||||
{ key: 'active', label: 'customer.field.status.active' },
|
||||
{ key: 'inactive', label: 'customer.field.status.inactive' },
|
||||
{ key: 'overdue', label: 'customer.field.status.overdue' },
|
||||
{ key: 'unpaid', label: 'customer.field.status.unpaid' },
|
||||
],
|
||||
filterCustomQuery: statusFieldFilterQuery,
|
||||
},
|
||||
|
||||
@@ -9,12 +9,12 @@ export default {
|
||||
},
|
||||
fields: {
|
||||
'payment_date': {
|
||||
name: 'Payment date',
|
||||
name: 'expense.field.payment_date',
|
||||
column: 'payment_date',
|
||||
fieldType: 'date',
|
||||
},
|
||||
'payment_account': {
|
||||
name: 'Payment account',
|
||||
name: 'expense.field.payment_account',
|
||||
column: 'payment_account_id',
|
||||
fieldType: 'relation',
|
||||
|
||||
@@ -25,37 +25,37 @@ export default {
|
||||
relationEntityKey: 'slug',
|
||||
},
|
||||
'amount': {
|
||||
name: 'Amount',
|
||||
name: 'expense.field.amount',
|
||||
column: 'total_amount',
|
||||
fieldType: 'number',
|
||||
},
|
||||
'reference_no': {
|
||||
name: 'Reference No.',
|
||||
name: 'expense.field.reference_no',
|
||||
column: 'reference_no',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'description': {
|
||||
name: 'Description',
|
||||
name: 'expense.field.description',
|
||||
column: 'description',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'published': {
|
||||
name: 'Published',
|
||||
name: 'expense.field.published',
|
||||
column: 'published_at',
|
||||
fieldType: 'date',
|
||||
},
|
||||
'status': {
|
||||
name: 'Status',
|
||||
name: 'expense.field.status',
|
||||
fieldType: 'enumeration',
|
||||
options: [
|
||||
{ key: 'draft', label: 'Draft' },
|
||||
{ key: 'published', label: 'Published' },
|
||||
{ label: 'expense.field.status.draft', key: 'draft' },
|
||||
{ label: 'expense.field.status.published', key: 'published' },
|
||||
],
|
||||
filterCustomQuery: StatusFieldFilterQuery,
|
||||
sortCustomQuery: StatusFieldSortQuery,
|
||||
},
|
||||
'created_at': {
|
||||
name: 'Created at',
|
||||
name: 'expense.field.created_at',
|
||||
column: 'created_at',
|
||||
fieldType: 'date',
|
||||
},
|
||||
|
||||
@@ -5,22 +5,22 @@ export default {
|
||||
sortField: 'date',
|
||||
},
|
||||
fields: {
|
||||
'date': {
|
||||
name: 'Date',
|
||||
date: {
|
||||
name: 'inventory_adjustment.field.date',
|
||||
column: 'date',
|
||||
fieldType: 'date',
|
||||
},
|
||||
'type': {
|
||||
name: 'Adjustment type',
|
||||
type: {
|
||||
name: 'inventory_adjustment.field.type',
|
||||
column: 'type',
|
||||
fieldType: 'enumeration',
|
||||
options: [
|
||||
{ key: 'increment', name: 'Increment' },
|
||||
{ key: 'decrement', name: 'Decrement' },
|
||||
{ key: 'increment', name: 'inventory_adjustment.field.type.increment' },
|
||||
{ key: 'decrement', name: 'inventory_adjustment.field.type.decrement' },
|
||||
],
|
||||
},
|
||||
'adjustment_account': {
|
||||
name: 'Adjustment account',
|
||||
adjustment_account: {
|
||||
name: 'inventory_adjustment.field.adjustment_account',
|
||||
column: 'adjustment_account_id',
|
||||
fieldType: 'relation',
|
||||
|
||||
@@ -30,28 +30,28 @@ export default {
|
||||
relationEntityLabel: 'name',
|
||||
relationEntityKey: 'slug',
|
||||
},
|
||||
'reason': {
|
||||
name: 'Reason',
|
||||
reason: {
|
||||
name: 'inventory_adjustment.field.reason',
|
||||
column: 'reason',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'reference_no': {
|
||||
name: 'Reference No.',
|
||||
reference_no: {
|
||||
name: 'inventory_adjustment.field.reference_no',
|
||||
column: 'reference_no',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'description': {
|
||||
name: 'Description',
|
||||
description: {
|
||||
name: 'inventory_adjustment.field.description',
|
||||
column: 'description',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'published_at': {
|
||||
name: 'Published at',
|
||||
published_at: {
|
||||
name: 'inventory_adjustment.field.published_at',
|
||||
column: 'published_at',
|
||||
fieldType: 'date',
|
||||
},
|
||||
'created_at': {
|
||||
name: 'Created at',
|
||||
created_at: {
|
||||
name: 'inventory_adjustment.field.created_at',
|
||||
column: 'created_at',
|
||||
fieldType: 'date',
|
||||
},
|
||||
|
||||
@@ -6,47 +6,47 @@ export default {
|
||||
},
|
||||
fields: {
|
||||
'type': {
|
||||
name: 'Item type',
|
||||
name: 'item.field.type',
|
||||
column: 'type',
|
||||
fieldType: 'enumeration',
|
||||
options: [
|
||||
{ key: 'inventory', label: 'Inventory', },
|
||||
{ key: 'service', label: 'Service' },
|
||||
{ key: 'non-inventory', label: 'Non Inventory', },
|
||||
{ key: 'inventory', label: 'item.field.type.inventory', },
|
||||
{ key: 'service', label: 'item.field.type.service' },
|
||||
{ key: 'non-inventory', label: 'item.field.type.non-inventory', },
|
||||
],
|
||||
},
|
||||
'name': {
|
||||
name: 'Name',
|
||||
name: 'item.field.name',
|
||||
column: 'name',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'code': {
|
||||
name: 'Code',
|
||||
name: 'item.field.code',
|
||||
column: 'code',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'sellable': {
|
||||
name: 'Sellable',
|
||||
name: 'item.field.sellable',
|
||||
column: 'sellable',
|
||||
fieldType: 'boolean',
|
||||
},
|
||||
'purchasable': {
|
||||
name: 'Purchasable',
|
||||
name: 'item.field.purchasable',
|
||||
column: 'purchasable',
|
||||
fieldType: 'boolean',
|
||||
},
|
||||
'sell_price': {
|
||||
name: 'Sell price',
|
||||
name: 'item.field.cost_price',
|
||||
column: 'sell_price',
|
||||
fieldType: 'number',
|
||||
},
|
||||
'cost_price': {
|
||||
name: 'Cost price',
|
||||
name: 'item.field.cost_account',
|
||||
column: 'cost_price',
|
||||
fieldType: 'number',
|
||||
},
|
||||
'cost_account': {
|
||||
name: 'Cost account',
|
||||
name: 'item.field.sell_account',
|
||||
column: 'cost_account_id',
|
||||
fieldType: 'relation',
|
||||
|
||||
@@ -57,7 +57,7 @@ export default {
|
||||
relationEntityKey: 'slug',
|
||||
},
|
||||
'sell_account': {
|
||||
name: 'Sell account',
|
||||
name: 'item.field.sell_description',
|
||||
column: 'sell_account_id',
|
||||
fieldType: 'relation',
|
||||
|
||||
@@ -68,7 +68,7 @@ export default {
|
||||
relationEntityKey: 'slug',
|
||||
},
|
||||
'inventory_account': {
|
||||
name: 'Inventory account',
|
||||
name: 'item.field.inventory_account',
|
||||
column: 'inventory_account_id',
|
||||
|
||||
relationType: 'enumeration',
|
||||
@@ -88,17 +88,17 @@ export default {
|
||||
fieldType: 'text',
|
||||
},
|
||||
'quantity_on_hand': {
|
||||
name: 'Quantity on hand',
|
||||
name: 'item.field.quantity_on_hand',
|
||||
column: 'quantity_on_hand',
|
||||
fieldType: 'number',
|
||||
},
|
||||
'note': {
|
||||
name: 'Note',
|
||||
name: 'item.field.note',
|
||||
column: 'note',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'category': {
|
||||
name: 'Category',
|
||||
name: 'item.field.category',
|
||||
column: 'category_id',
|
||||
|
||||
relationType: 'enumeration',
|
||||
@@ -108,13 +108,13 @@ export default {
|
||||
relationEntityKey: 'id',
|
||||
},
|
||||
'active': {
|
||||
name: 'Active',
|
||||
name: 'item.field.active',
|
||||
column: 'active',
|
||||
fieldType: 'boolean',
|
||||
filterable: false,
|
||||
},
|
||||
'created_at': {
|
||||
name: 'Created at',
|
||||
name: 'item.field.created_at',
|
||||
column: 'created_at',
|
||||
columnType: 'date',
|
||||
fieldType: 'date',
|
||||
|
||||
@@ -6,23 +6,23 @@ export default {
|
||||
},
|
||||
fields: {
|
||||
name: {
|
||||
name: 'Name',
|
||||
name: 'item_category.field.name',
|
||||
column: 'name',
|
||||
fieldType: 'text',
|
||||
},
|
||||
description: {
|
||||
name: 'Description',
|
||||
name: 'item_category.field.description',
|
||||
column: 'description',
|
||||
fieldType: 'text',
|
||||
},
|
||||
count: {
|
||||
name: 'Count',
|
||||
name: 'item_category.field.count',
|
||||
column: 'count',
|
||||
fieldType: 'number',
|
||||
virtualColumn: true,
|
||||
},
|
||||
created_at: {
|
||||
name: 'Created at',
|
||||
name: 'item_category.field.created_at',
|
||||
column: 'created_at',
|
||||
columnType: 'date',
|
||||
},
|
||||
|
||||
@@ -6,37 +6,37 @@ export default {
|
||||
},
|
||||
fields: {
|
||||
'date': {
|
||||
name: 'Date',
|
||||
name: 'manual_journal.field.date',
|
||||
column: 'date',
|
||||
fieldType: 'date',
|
||||
},
|
||||
'journal_number': {
|
||||
name: 'Journal number',
|
||||
name: 'manual_journal.field.journal_number',
|
||||
column: 'journal_number',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'reference': {
|
||||
name: 'Reference No.',
|
||||
name: 'manual_journal.field.reference',
|
||||
column: 'reference',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'journal_type': {
|
||||
name: 'Journal type',
|
||||
name: 'manual_journal.field.journal_type',
|
||||
column: 'journal_type',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'amount': {
|
||||
name: 'Amount',
|
||||
name: 'manual_journal.field.amount',
|
||||
column: 'amount',
|
||||
fieldType: 'number',
|
||||
},
|
||||
'description': {
|
||||
name: 'Description',
|
||||
name: 'manual_journal.field.description',
|
||||
column: 'description',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'status': {
|
||||
name: 'Status',
|
||||
name: 'manual_journal.field.status',
|
||||
column: 'status',
|
||||
fieldType: 'enumeration',
|
||||
options: [
|
||||
@@ -46,7 +46,7 @@ export default {
|
||||
sortCustomQuery: StatusFieldSortQuery,
|
||||
},
|
||||
'created_at': {
|
||||
name: 'Created at',
|
||||
name: 'manual_journal.field.created_at',
|
||||
column: 'created_at',
|
||||
fieldType: 'date',
|
||||
},
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
export default {
|
||||
fields: {
|
||||
customer: {
|
||||
name: 'Customer',
|
||||
name: 'payment_receive.field.customer',
|
||||
column: 'customer_id',
|
||||
fieldType: 'relation',
|
||||
|
||||
@@ -13,22 +13,22 @@ export default {
|
||||
relationEntityKey: 'id',
|
||||
},
|
||||
payment_date: {
|
||||
name: 'Payment date',
|
||||
name: 'payment_receive.field.payment_date',
|
||||
column: 'payment_date',
|
||||
fieldType: 'date',
|
||||
},
|
||||
amount: {
|
||||
name: 'Amount',
|
||||
name: 'payment_receive.field.amount',
|
||||
column: 'amount',
|
||||
fieldType: 'number',
|
||||
},
|
||||
reference_no: {
|
||||
name: 'Reference No.',
|
||||
name: 'payment_receive.field.reference_no',
|
||||
column: 'reference_no',
|
||||
fieldType: 'text',
|
||||
},
|
||||
deposit_account: {
|
||||
name: 'Deposit account',
|
||||
name: 'payment_receive.field.deposit_account',
|
||||
column: 'deposit_account_id',
|
||||
fieldType: 'relation',
|
||||
|
||||
@@ -39,17 +39,17 @@ export default {
|
||||
relationEntityKey: 'slug',
|
||||
},
|
||||
payment_receive_no: {
|
||||
name: 'Payment receive No.',
|
||||
name: 'payment_receive.field.payment_receive_no',
|
||||
column: 'payment_receive_no',
|
||||
fieldType: 'text',
|
||||
},
|
||||
statement: {
|
||||
name: 'Statement',
|
||||
name: 'payment_receive.field.statement',
|
||||
column: 'statement',
|
||||
fieldType: 'text',
|
||||
},
|
||||
created_at: {
|
||||
name: 'Created at',
|
||||
name: 'payment_receive.field.created_at',
|
||||
column: 'created_at',
|
||||
fieldDate: 'date',
|
||||
},
|
||||
|
||||
@@ -6,17 +6,17 @@ export default {
|
||||
},
|
||||
fields: {
|
||||
'amount': {
|
||||
name: 'Amount',
|
||||
name: 'estimate.field.amount',
|
||||
column: 'amount',
|
||||
fieldType: 'number',
|
||||
},
|
||||
'estimate_number': {
|
||||
name: 'Estimate number',
|
||||
name: 'estimate.field.estimate_number',
|
||||
column: 'estimate_number',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'customer': {
|
||||
name: 'Customer',
|
||||
name: 'estimate.field.customer',
|
||||
column: 'customer_id',
|
||||
fieldType: 'relation',
|
||||
|
||||
@@ -27,45 +27,44 @@ export default {
|
||||
relationEntityKey: 'id',
|
||||
},
|
||||
'estimate_date': {
|
||||
name: 'Estimate date',
|
||||
name: 'estimate.field.estimate_date',
|
||||
column: 'estimate_date',
|
||||
fieldType: 'date',
|
||||
},
|
||||
'expiration_date': {
|
||||
name: 'Expiration date',
|
||||
name: 'estimate.field.expiration_date',
|
||||
column: 'expiration_date',
|
||||
fieldType: 'date',
|
||||
},
|
||||
'reference_no': {
|
||||
name: 'Reference No.',
|
||||
name: 'estimate.field.reference_no',
|
||||
column: 'reference',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'note': {
|
||||
name: 'Note',
|
||||
name: 'estimate.field.note',
|
||||
column: 'note',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'terms_conditions': {
|
||||
name: 'Terms & conditions',
|
||||
name: 'estimate.field.terms_conditions',
|
||||
column: 'terms_conditions',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'status': {
|
||||
name: 'Status',
|
||||
name: 'estimate.field.status',
|
||||
fieldType: 'enumeration',
|
||||
options: [
|
||||
{ label: 'Delivered', key: 'delivered' },
|
||||
{ label: 'Rejected', key: 'rejected' },
|
||||
{ label: 'Approved', key: 'approved' },
|
||||
{ label: 'Delivered', key: 'delivered' },
|
||||
{ label: 'Draft', key: 'draft' },
|
||||
{ label: 'estimate.field.status.delivered', key: 'delivered' },
|
||||
{ label: 'estimate.field.status.rejected', key: 'rejected' },
|
||||
{ label: 'estimate.field.status.approved', key: 'approved' },
|
||||
{ label: 'estimate.field.status.draft', key: 'draft' },
|
||||
],
|
||||
filterCustomQuery: StatusFieldFilterQuery,
|
||||
sortCustomQuery: StatusFieldSortQuery,
|
||||
},
|
||||
'created_at': {
|
||||
name: 'Created at',
|
||||
name: 'estimate.field.created_at',
|
||||
column: 'created_at',
|
||||
columnType: 'date',
|
||||
},
|
||||
|
||||
@@ -6,7 +6,7 @@ export default {
|
||||
},
|
||||
fields: {
|
||||
customer: {
|
||||
name: 'Customer',
|
||||
name: 'invoice.field.customer',
|
||||
column: 'customer_id',
|
||||
fieldType: 'relation',
|
||||
|
||||
@@ -17,70 +17,71 @@ export default {
|
||||
relationEntityKey: 'id',
|
||||
},
|
||||
invoice_date: {
|
||||
name: 'Invoice date',
|
||||
name: 'invoice.field.invoice_date',
|
||||
column: 'invoice_date',
|
||||
fieldType: 'date',
|
||||
},
|
||||
due_date: {
|
||||
name: 'Due date',
|
||||
name: 'invoice.field.due_date',
|
||||
column: 'due_date',
|
||||
fieldType: 'date',
|
||||
},
|
||||
invoice_no: {
|
||||
name: 'Invoice No.',
|
||||
name: 'invoice.field.invoice_no',
|
||||
column: 'invoice_no',
|
||||
fieldType: 'text',
|
||||
},
|
||||
reference_no: {
|
||||
name: 'Reference No.',
|
||||
name: 'invoice.field.reference_no',
|
||||
column: 'reference_no',
|
||||
fieldType: 'text',
|
||||
},
|
||||
invoice_message: {
|
||||
name: 'Invoice message',
|
||||
name: 'invoice.field.invoice_message',
|
||||
column: 'invoice_message',
|
||||
fieldType: 'text',
|
||||
},
|
||||
terms_conditions: {
|
||||
name: 'Terms & conditions',
|
||||
name: 'invoice.field.terms_conditions',
|
||||
column: 'terms_conditions',
|
||||
fieldType: 'text',
|
||||
},
|
||||
amount: {
|
||||
name: 'Invoice amount',
|
||||
name: 'invoice.field.amount',
|
||||
column: 'balance',
|
||||
fieldType: 'number',
|
||||
},
|
||||
payment_amount: {
|
||||
name: 'Payment amount',
|
||||
name: 'invoice.field.payment_amount',
|
||||
column: 'payment_amount',
|
||||
fieldType: 'number',
|
||||
},
|
||||
due_amount: { // calculated.
|
||||
name: 'Due amount',
|
||||
due_amount: {
|
||||
// calculated.
|
||||
name: 'invoice.field.due_amount',
|
||||
column: 'due_amount',
|
||||
fieldType: 'number',
|
||||
virtualColumn: true,
|
||||
},
|
||||
status: {
|
||||
name: 'Status',
|
||||
name: 'invoice.field.status',
|
||||
fieldType: 'enumeration',
|
||||
options: [
|
||||
{ key: 'draft', label: 'Draft' },
|
||||
{ key: 'delivered', label: 'Delivered' },
|
||||
{ key: 'unpaid', label: 'Unpaid' },
|
||||
{ key: 'overdue', label: 'Overdue' },
|
||||
{ key: 'partially-paid', label: 'Partially paid' },
|
||||
{ key: 'paid', label: 'Paid' },
|
||||
{ key: 'draft', label: 'invoice.field.status.draft' },
|
||||
{ key: 'delivered', label: 'invoice.field.status.delivered' },
|
||||
{ key: 'unpaid', label: 'invoice.field.status.unpaid' },
|
||||
{ key: 'overdue', label: 'invoice.field.status.overdue' },
|
||||
{ key: 'partially-paid', label: 'invoice.field.status.partially-paid' },
|
||||
{ key: 'paid', label: 'invoice.field.status.paid' },
|
||||
],
|
||||
filterCustomQuery: StatusFieldFilterQuery,
|
||||
sortCustomQuery: StatusFieldSortQuery,
|
||||
},
|
||||
created_at: {
|
||||
name: 'Created at',
|
||||
name: 'invoice.field.created_at',
|
||||
column: 'created_at',
|
||||
fieldType: 'date',
|
||||
},
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
@@ -6,13 +6,13 @@ export default {
|
||||
},
|
||||
fields: {
|
||||
'amount': {
|
||||
name: 'Amount',
|
||||
name: 'receipt.field.amount',
|
||||
column: 'amount',
|
||||
fieldType: 'number',
|
||||
},
|
||||
'deposit_account': {
|
||||
column: 'deposit_account_id',
|
||||
name: 'Deposit account',
|
||||
name: 'receipt.field.deposit_account',
|
||||
fieldType: 'relation',
|
||||
|
||||
relationType: 'enumeration',
|
||||
@@ -22,8 +22,8 @@ export default {
|
||||
relationEntityKey: 'slug',
|
||||
},
|
||||
'customer': {
|
||||
label: 'Customer',
|
||||
name: 'customer_id',
|
||||
name: 'receipt.field.customer',
|
||||
column: 'customer_id',
|
||||
fieldType: 'relation',
|
||||
|
||||
relationType: 'enumeration',
|
||||
@@ -33,42 +33,42 @@ export default {
|
||||
relationEntityKey: 'id',
|
||||
},
|
||||
'receipt_date': {
|
||||
name: 'Receipt date',
|
||||
name: 'receipt.field.receipt_date',
|
||||
column: 'receipt_date',
|
||||
fieldType: 'date',
|
||||
|
||||
},
|
||||
'receipt_number': {
|
||||
name: 'Receipt No.',
|
||||
name: 'receipt.field.receipt_number',
|
||||
column: 'receipt_number',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'reference_no': {
|
||||
name: 'Reference No.',
|
||||
name: 'receipt.field.reference_no',
|
||||
column: 'reference_no',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'receipt_message': {
|
||||
name: 'Receipt message',
|
||||
name: 'receipt.field.receipt_message',
|
||||
column: 'receipt_message',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'statement': {
|
||||
name: 'Statement',
|
||||
name: 'receipt.field.statement',
|
||||
column: 'statement',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'created_at': {
|
||||
name: 'Created at',
|
||||
name: 'receipt.field.created_at',
|
||||
column: 'created_at',
|
||||
fieldType: 'date',
|
||||
},
|
||||
'status': {
|
||||
name: 'Status',
|
||||
name: 'receipt.field.status',
|
||||
fieldType: 'enumeration',
|
||||
options: [
|
||||
{ key: 'draft', label: 'Draft' },
|
||||
{ key: 'closed', label: 'Closed' },
|
||||
{ key: 'draft', label: 'receipt.field.status.draft' },
|
||||
{ key: 'closed', label: 'receipt.field.status.closed' },
|
||||
],
|
||||
filterCustomQuery: StatusFieldFilterQuery,
|
||||
sortCustomQuery: StatusFieldSortQuery,
|
||||
|
||||
@@ -6,76 +6,76 @@ export default {
|
||||
},
|
||||
fields: {
|
||||
first_name: {
|
||||
name: 'First name',
|
||||
name: 'vendor.field.first_name',
|
||||
column: 'first_name',
|
||||
fieldType: 'text',
|
||||
},
|
||||
last_name: {
|
||||
name: 'Last name',
|
||||
name: 'vendor.field.last_name',
|
||||
column: 'last_name',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'display_name': {
|
||||
name: 'Display name',
|
||||
display_name: {
|
||||
name: 'vendor.field.display_name',
|
||||
column: 'display_name',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'email': {
|
||||
name: 'Email',
|
||||
email: {
|
||||
name: 'vendor.field.email',
|
||||
column: 'email',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'work_phone': {
|
||||
name: 'Work phone',
|
||||
work_phone: {
|
||||
name: 'vendor.field.work_phone',
|
||||
column: 'work_phone',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'personal_phone': {
|
||||
name: 'Personal phone',
|
||||
personal_phone: {
|
||||
name: 'vendor.field.personal_pone',
|
||||
column: 'personal_phone',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'company_name': {
|
||||
name: 'Company name',
|
||||
company_name: {
|
||||
name: 'vendor.field.company_name',
|
||||
column: 'company_name',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'website': {
|
||||
name: 'Website',
|
||||
website: {
|
||||
name: 'vendor.field.website',
|
||||
column: 'website',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'created_at': {
|
||||
name: 'Created at',
|
||||
created_at: {
|
||||
name: 'vendor.field.created_at',
|
||||
column: 'created_at',
|
||||
fieldType: 'date',
|
||||
},
|
||||
'balance': {
|
||||
name: 'Balance',
|
||||
balance: {
|
||||
name: 'vendor.field.balance',
|
||||
column: 'balance',
|
||||
fieldType: 'number',
|
||||
},
|
||||
'opening_balance': {
|
||||
name: 'Opening balance',
|
||||
opening_balance: {
|
||||
name: 'vendor.field.opening_balance',
|
||||
column: 'opening_balance',
|
||||
fieldType: 'number',
|
||||
},
|
||||
'opening_balance_at': {
|
||||
name: 'Opening balance at',
|
||||
opening_balance_at: {
|
||||
name: 'vendor.field.opening_balance_at',
|
||||
column: 'opening_balance_at',
|
||||
fieldType: 'date',
|
||||
},
|
||||
'currency_code': {
|
||||
name: 'Currency code',
|
||||
currency_code: {
|
||||
name: 'vendor.field.currency',
|
||||
column: 'currency_code',
|
||||
fieldType: 'text',
|
||||
},
|
||||
'status': {
|
||||
name: 'Status',
|
||||
status: {
|
||||
name: 'vendor.field.status',
|
||||
type: 'enumeration',
|
||||
options: [
|
||||
{ key: 'overdue', label: 'Overdue' },
|
||||
{ key: 'unpaid', label: 'Unpaid' },
|
||||
{ key: 'overdue', label: 'vendor.field.status.overdue' },
|
||||
{ key: 'unpaid', label: 'vendor.field.status.unpaid' },
|
||||
],
|
||||
filterCustomQuery: (query, role) => {
|
||||
switch (role.value) {
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
import * as R from 'ramda';
|
||||
import * as qim from 'qim';
|
||||
import HasTenancyService from 'services/Tenancy/TenancyService';
|
||||
import { Service, Inject } from 'typedi';
|
||||
|
||||
@@ -44,4 +46,19 @@ export default class I18nService {
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
public i18nApply(
|
||||
paths: (string|Function)[][],
|
||||
data: Array<any>,
|
||||
tenantId: number,
|
||||
) {
|
||||
const i18n = this.tenancy.i18n(tenantId);
|
||||
const applyCurry = R.curryN(3, qim.apply);
|
||||
|
||||
const transform = (value) => i18n.__(value) || value;
|
||||
|
||||
const curriedCallbacks = paths.map((path) => applyCurry(path, transform));
|
||||
|
||||
return R.compose(...curriedCallbacks)(data);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,10 +1,12 @@
|
||||
import { Service, Inject } from 'typedi';
|
||||
import { camelCase, upperFirst } from 'lodash';
|
||||
import * as qim from 'qim';
|
||||
import pluralize from 'pluralize';
|
||||
import { buildFilter } from 'objection-filter';
|
||||
import { IModel, IModelMeta } from 'interfaces';
|
||||
import { IModelMeta } from 'interfaces';
|
||||
import TenancyService from 'services/Tenancy/TenancyService';
|
||||
import { ServiceError } from 'exceptions';
|
||||
import I18nService from 'services/I18n/I18nService';
|
||||
import { tenantKnexConfig } from 'config/knexConfig';
|
||||
|
||||
const ERRORS = {
|
||||
RESOURCE_MODEL_NOT_FOUND: 'RESOURCE_MODEL_NOT_FOUND',
|
||||
@@ -15,6 +17,9 @@ export default class ResourceService {
|
||||
@Inject()
|
||||
tenancy: TenancyService;
|
||||
|
||||
@Inject()
|
||||
i18nService: I18nService;
|
||||
|
||||
/**
|
||||
* Transform resource to model name.
|
||||
* @param {string} resourceName
|
||||
@@ -50,6 +55,25 @@ export default class ResourceService {
|
||||
metakey?: string
|
||||
): IModelMeta {
|
||||
const resourceModel = this.getResourceModel(tenantId, modelName);
|
||||
return resourceModel.getMeta(metakey);
|
||||
|
||||
// Retrieve the resource meta.
|
||||
const resourceMeta = resourceModel.getMeta(metakey);
|
||||
|
||||
// Localization the fields names.
|
||||
return this.getResourceMetaLocalized(resourceMeta, tenantId);
|
||||
}
|
||||
|
||||
/**
|
||||
* Retrieve the resource meta localized based on the current user language.
|
||||
*/
|
||||
public getResourceMetaLocalized(meta, tenantId) {
|
||||
const $enumerationType = (field) =>
|
||||
field.fieldType === 'enumeration' ? field : undefined;
|
||||
|
||||
const naviagations = [
|
||||
['fields', qim.$each, 'name'],
|
||||
['fields', qim.$each, $enumerationType, 'options', qim.$each, 'label'],
|
||||
];
|
||||
return this.i18nService.i18nApply(naviagations, meta, tenantId);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user