Fix expense model
This commit is contained in:
parent
366e8f30af
commit
f669a01308
|
|
@ -5,25 +5,28 @@ import 'package:invoiceninja/data/models/entities.dart';
|
|||
|
||||
part 'expense_model.g.dart';
|
||||
|
||||
abstract class ExpenseListResponse implements Built<ExpenseListResponse, ExpenseListResponseBuilder> {
|
||||
|
||||
abstract class ExpenseListResponse
|
||||
implements Built<ExpenseListResponse, ExpenseListResponseBuilder> {
|
||||
BuiltList<ExpenseEntity> get data;
|
||||
|
||||
ExpenseListResponse._();
|
||||
factory ExpenseListResponse([updates(ExpenseListResponseBuilder b)]) = _$ExpenseListResponse;
|
||||
static Serializer<ExpenseListResponse> get serializer => _$expenseListResponseSerializer;
|
||||
factory ExpenseListResponse([updates(ExpenseListResponseBuilder b)]) =
|
||||
_$ExpenseListResponse;
|
||||
static Serializer<ExpenseListResponse> get serializer =>
|
||||
_$expenseListResponseSerializer;
|
||||
}
|
||||
|
||||
abstract class ExpenseItemResponse implements Built<ExpenseItemResponse, ExpenseItemResponseBuilder> {
|
||||
|
||||
abstract class ExpenseItemResponse
|
||||
implements Built<ExpenseItemResponse, ExpenseItemResponseBuilder> {
|
||||
ExpenseEntity get data;
|
||||
|
||||
ExpenseItemResponse._();
|
||||
factory ExpenseItemResponse([updates(ExpenseItemResponseBuilder b)]) = _$ExpenseItemResponse;
|
||||
static Serializer<ExpenseItemResponse> get serializer => _$expenseItemResponseSerializer;
|
||||
factory ExpenseItemResponse([updates(ExpenseItemResponseBuilder b)]) =
|
||||
_$ExpenseItemResponse;
|
||||
static Serializer<ExpenseItemResponse> get serializer =>
|
||||
_$expenseItemResponseSerializer;
|
||||
}
|
||||
|
||||
|
||||
class ExpenseFields {
|
||||
static const String privateNotes = 'privateNotes';
|
||||
static const String publicNotes = 'publicNotes';
|
||||
|
|
@ -52,112 +55,111 @@ class ExpenseFields {
|
|||
static const String isDeleted = 'isDeleted';
|
||||
}
|
||||
|
||||
abstract class ExpenseEntity extends Object with BaseEntity implements Built<ExpenseEntity, ExpenseEntityBuilder> {
|
||||
|
||||
abstract class ExpenseEntity extends Object
|
||||
with BaseEntity
|
||||
implements Built<ExpenseEntity, ExpenseEntityBuilder> {
|
||||
static int counter = 0;
|
||||
factory ExpenseEntity() {
|
||||
return _$ExpenseEntity._(
|
||||
id: --ExpenseEntity.counter,
|
||||
privateNotes: '',
|
||||
publicNotes: '',
|
||||
shouldBeInvoiced: false,
|
||||
transactionId: '',
|
||||
transactionReference: '',
|
||||
bankId: '',
|
||||
expenseCurrencyId: 0,
|
||||
exchangeCurrencyId: 0,
|
||||
amount: 0.0,
|
||||
expenseDate: '',
|
||||
exchangeRate: 0.0,
|
||||
invoiceCurrencyId: 0,
|
||||
taxName1: '',
|
||||
taxRate1: '',
|
||||
taxRate2: '',
|
||||
clientId: 0,
|
||||
invoiceId: 0,
|
||||
vendorId: 0,
|
||||
customValue1: '',
|
||||
customValue2: '',
|
||||
);
|
||||
}
|
||||
|
||||
@nullable
|
||||
@BuiltValueField(wireName: 'private_notes')
|
||||
String get privateNotes;
|
||||
|
||||
@nullable
|
||||
@BuiltValueField(wireName: 'public_notes')
|
||||
String get publicNotes;
|
||||
|
||||
@nullable
|
||||
@BuiltValueField(wireName: 'should_be_invoiced')
|
||||
bool get shouldBeInvoiced;
|
||||
|
||||
@nullable
|
||||
@BuiltValueField(wireName: 'transaction_id')
|
||||
String get transactionId;
|
||||
|
||||
@nullable
|
||||
@BuiltValueField(wireName: 'transaction_reference')
|
||||
String get transactionReference;
|
||||
|
||||
@nullable
|
||||
@BuiltValueField(wireName: 'bank_id')
|
||||
String get bankId;
|
||||
|
||||
@nullable
|
||||
@BuiltValueField(wireName: 'expense_currency_id')
|
||||
int get expenseCurrencyId;
|
||||
|
||||
@nullable
|
||||
@BuiltValueField(wireName: 'expense_category_id')
|
||||
int get exchangeCurrencyId;
|
||||
|
||||
@nullable
|
||||
double get amount;
|
||||
|
||||
@nullable
|
||||
@BuiltValueField(wireName: 'expense_date')
|
||||
String get expenseDate;
|
||||
|
||||
@nullable
|
||||
@BuiltValueField(wireName: 'exchange_rate')
|
||||
double get exchangeRate;
|
||||
|
||||
@nullable
|
||||
@BuiltValueField(wireName: 'invoiceCurrencyId')
|
||||
int get invoiceCurrencyId;
|
||||
|
||||
@nullable
|
||||
@BuiltValueField(wireName: 'tax_name1')
|
||||
String get taxName1;
|
||||
|
||||
@nullable
|
||||
@BuiltValueField(wireName: 'tax_rate1')
|
||||
String get taxRate1;
|
||||
|
||||
@nullable
|
||||
@BuiltValueField(wireName: 'tax_rate2')
|
||||
String get taxRate2;
|
||||
|
||||
@nullable
|
||||
@BuiltValueField(wireName: 'client_id')
|
||||
int get clientId;
|
||||
|
||||
@nullable
|
||||
@BuiltValueField(wireName: 'invoice_id')
|
||||
int get invoiceId;
|
||||
|
||||
@nullable
|
||||
@BuiltValueField(wireName: 'vendor_id')
|
||||
int get vendorId;
|
||||
|
||||
@nullable
|
||||
@BuiltValueField(wireName: 'custom_value1')
|
||||
String get customValue1;
|
||||
|
||||
@nullable
|
||||
@BuiltValueField(wireName: 'custom_value2')
|
||||
String get customValue2;
|
||||
|
||||
@nullable
|
||||
@BuiltValueField(wireName: 'expense_category')
|
||||
BuiltList<ExpenseCategoryEntity> get expenseCtegories;
|
||||
|
||||
|
||||
int compareTo(ExpenseEntity expense, String sortField, bool sortAscending) {
|
||||
int response = 0;
|
||||
ExpenseEntity creditA = sortAscending ? this : expense;
|
||||
ExpenseEntity creditB = sortAscending ? expense: this;
|
||||
ExpenseEntity creditB = sortAscending ? expense : this;
|
||||
|
||||
switch (sortField) {
|
||||
case ExpenseFields.amount:
|
||||
response = creditA.amount.compareTo(creditB.amount);
|
||||
}
|
||||
|
||||
|
||||
return response;
|
||||
}
|
||||
|
||||
|
||||
bool matchesSearch(String search) {
|
||||
if (search == null || search.isEmpty) {
|
||||
return true;
|
||||
|
|
@ -165,17 +167,19 @@ abstract class ExpenseEntity extends Object with BaseEntity implements Built<Exp
|
|||
|
||||
return privateNotes.contains(search);
|
||||
}
|
||||
|
||||
|
||||
ExpenseEntity._();
|
||||
static Serializer<ExpenseEntity> get serializer => _$expenseEntitySerializer;
|
||||
}
|
||||
|
||||
abstract class ExpenseCategoryEntity extends Object with BaseEntity implements Built<ExpenseCategoryEntity, ExpenseCategoryEntityBuilder> {
|
||||
|
||||
@nullable
|
||||
abstract class ExpenseCategoryEntity extends Object
|
||||
with BaseEntity
|
||||
implements Built<ExpenseCategoryEntity, ExpenseCategoryEntityBuilder> {
|
||||
String get name;
|
||||
|
||||
ExpenseCategoryEntity._();
|
||||
factory ExpenseCategoryEntity([updates(ExpenseCategoryEntityBuilder b)]) = _$ExpenseCategoryEntity;
|
||||
static Serializer<ExpenseCategoryEntity> get serializer => _$expenseCategoryEntitySerializer;
|
||||
}
|
||||
factory ExpenseCategoryEntity([updates(ExpenseCategoryEntityBuilder b)]) =
|
||||
_$ExpenseCategoryEntity;
|
||||
static Serializer<ExpenseCategoryEntity> get serializer =>
|
||||
_$expenseCategoryEntitySerializer;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue