Skip to content

Commit 2ee719b

Browse files
committed
Updated JournalEntry.
1 parent 6f56c52 commit 2ee719b

File tree

2 files changed

+54
-30
lines changed

2 files changed

+54
-30
lines changed

quickbooks/objects/journalentry.py

Lines changed: 39 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,50 +1,59 @@
1-
from base import QuickbooksBaseObject, Ref, QuickbooksManagedObject, QuickbooksTransactionEntity, LinkedTxnMixin
1+
from base import QuickbooksBaseObject, Ref, QuickbooksManagedObject, QuickbooksTransactionEntity, \
2+
LinkedTxnMixin
23
from tax import TxnTaxDetail
3-
4-
5-
class Entity(QuickbooksBaseObject):
6-
class_dict = {
7-
"EntityRef": Ref
8-
}
9-
10-
def __init__(self):
11-
super(Entity, self).__init__()
12-
self.Type = ""
13-
self.EntityRef = None
4+
from detailline import DetailLine
145

156

167
class JournalEntryLineDetail(QuickbooksBaseObject):
178
class_dict = {
18-
"AccountRef": Ref,
199
"Entity": Ref
2010
}
2111

2212
def __init__(self):
2313
super(JournalEntryLineDetail, self).__init__()
2414
self.PostingType = ""
15+
self.TaxApplicableOn = ""
16+
self.Type = ""
17+
self.TaxAmount = 0
18+
self.BillableStatus = ""
19+
2520
self.Entity = None
21+
self.EntityRef = None
2622
self.AccountRef = None
27-
28-
def __unicode__(self):
29-
return self.PostingType
23+
self.ClassRef = None
24+
self.DepartmentRef = None
25+
self.TaxCodeRef = None
3026

3127

32-
class JournalEntryLine(QuickbooksBaseObject):
28+
class JournalEntryLine(DetailLine):
3329
class_dict = {
3430
"JournalEntryLineDetail": JournalEntryLineDetail
3531
}
3632

3733
def __init__(self):
3834
super(JournalEntryLine, self).__init__()
39-
self.Description = ""
40-
self.Amount = 0
41-
self.Id = 0
42-
self.LineNum = 0
4335
self.DetailType = "JournalEntryLineDetail"
4436
self.JournalEntryLineDetail = None
4537

46-
def __unicode__(self):
47-
return str(self.Amount)
38+
39+
class DescriptionLineDetail(QuickbooksBaseObject):
40+
class_dict = {
41+
"TaxCodeRef": Ref
42+
}
43+
44+
def __init__(self):
45+
super(DescriptionLineDetail, self).__init__()
46+
self.ServiceDate = ""
47+
48+
49+
class DescriptionOnlyLine(DetailLine):
50+
class_dict = {
51+
"DescriptionLineDetail": DescriptionLineDetail
52+
}
53+
54+
def __init__(self):
55+
super(DescriptionOnlyLine, self).__init__()
56+
self.DetailType = "DescriptionOnly"
4857

4958

5059
class JournalEntry(QuickbooksManagedObject, QuickbooksTransactionEntity, LinkedTxnMixin):
@@ -59,7 +68,8 @@ class JournalEntry(QuickbooksManagedObject, QuickbooksTransactionEntity, LinkedT
5968
"""
6069

6170
class_dict = {
62-
"TxnTaxDetail": TxnTaxDetail
71+
"TxnTaxDetail": TxnTaxDetail,
72+
"CurrencyRef": Ref,
6373
}
6474

6575
list_dict = {
@@ -72,10 +82,15 @@ def __init__(self):
7282
super(JournalEntry, self).__init__()
7383
self.Adjustment = False
7484
self.TxnDate = ""
85+
self.TxnSource = ""
7586
self.DocNumber = ""
87+
self.PrivateNote = ""
7688
self.TotalAmt = 0
89+
self.ExchangeRate = 1
7790
self.Line = []
7891
self.TxnTaxDetail = None
7992

93+
self.CurrencyRef = None
94+
8095
def __unicode__(self):
8196
return str(self.TotalAmt)

tests/unit/objects/test_journalentry.py

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,16 +12,25 @@ def test_unicode(self):
1212

1313

1414
class JournalEntryLineTests(unittest.TestCase):
15-
def test_unicode(self):
15+
def test_init(self):
1616
journalentry = JournalEntryLine()
17-
journalentry.Amount = 100
1817

19-
self.assertEquals(unicode(journalentry), "100")
18+
self.assertEquals(journalentry.DetailType, "JournalEntryLineDetail")
19+
self.assertEquals(journalentry.JournalEntryLineDetail, None)
2020

2121

2222
class JournalEntryLineDetailTests(unittest.TestCase):
23-
def test_unicode(self):
23+
def test_init(self):
2424
journalentry = JournalEntryLineDetail()
25-
journalentry.PostingType = "test"
2625

27-
self.assertEquals(unicode(journalentry), "test")
26+
self.assertEquals(journalentry.PostingType, "")
27+
self.assertEquals(journalentry.TaxApplicableOn, "")
28+
self.assertEquals(journalentry.Type, "")
29+
self.assertEquals(journalentry.TaxAmount, 0)
30+
self.assertEquals(journalentry.BillableStatus, "")
31+
self.assertEquals(journalentry.Entity, None)
32+
self.assertEquals(journalentry.EntityRef, None)
33+
self.assertEquals(journalentry.AccountRef, None)
34+
self.assertEquals(journalentry.ClassRef, None)
35+
self.assertEquals(journalentry.DepartmentRef, None)
36+
self.assertEquals(journalentry.TaxCodeRef, None)

0 commit comments

Comments
 (0)