Skip to content
Toggle navigation
Projects
Groups
Snippets
Help
Owo Sugiana
/
payment-report
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit e6e71033
authored
May 17, 2023
by
Owo Sugiana
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
PBB memahami tabel log_iso universal
1 parent
e6687c42
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
34 additions
and
3 deletions
CHANGES.txt
payment_report/pbb/default.py
CHANGES.txt
View file @
e6e7103
3.0.2 2023-05-17
----------------
- PBB kini memahami tabel log_iso dengan struktur universal (JSON).
3.0.1 2023-04-14
----------------
- Tambah tabel pbb_invoice yang merupakan salinan tabel sppt. Tabel ini diisi
...
...
payment_report/pbb/default.py
View file @
e6e7103
...
...
@@ -37,6 +37,7 @@ from ..common import (
get_channel_info_by_iso
,
get_channel_name_by_row
,
get_channel_name_by_dict
,
get_channel_name
,
BaseApp
,
one_day
,
VaInvoice
,
...
...
@@ -129,6 +130,12 @@ class App(BaseApp):
if
'h2h_db_url'
in
self
.
conf
:
factory
=
self
.
get_factory
(
'h2h_db_url'
)
self
.
h2h_session
=
factory
()
try
:
self
.
h2h_session
.
query
(
UniversalLog
.
bits
)
.
first
()
self
.
is_universal_log
=
True
except
ProgrammingError
:
self
.
h2h_session
.
rollback
()
self
.
is_universal_log
=
False
self
.
base_q_log
=
self
.
get_base_q_log
()
elif
self
.
prod_session
:
try
:
...
...
@@ -145,9 +152,17 @@ class App(BaseApp):
else
:
self
.
json_session
=
None
def
get_log_model
(
self
):
return
self
.
is_universal_log
and
UniversalLog
or
Log
def
get_base_q_log
(
self
):
return
self
.
h2h_session
.
query
(
Log
)
.
filter_by
(
mti
=
'0210'
,
bit_003
=
PAYMENT_CODE
,
bit_039
=
'00'
)
Log
=
self
.
get_log_model
()
q
=
self
.
h2h_session
.
query
(
Log
)
.
filter_by
(
mti
=
'0210'
)
if
self
.
is_universal_log
:
return
q
.
filter
(
Log
.
bits
.
op
(
'->>'
)(
'3'
)
==
PAYMENT_CODE
,
Log
.
bits
.
op
(
'->>'
)(
'39'
)
==
'00'
)
return
q
.
filter_by
(
bit_003
=
PAYMENT_CODE
,
bit_039
=
'00'
)
def
get_sppt
(
self
,
psppt
):
q
=
self
.
base_q_sppt
.
filter_by
(
...
...
@@ -217,11 +232,23 @@ class App(BaseApp):
def
get_iso_v2
(
self
):
if
not
self
.
h2h_session
:
return
q
=
self
.
base_q_log
.
filter_by
(
bit_061
=
self
.
invoice_id
)
Log
=
self
.
get_log_model
()
q
=
self
.
base_q_log
if
self
.
is_universal_log
:
q
=
q
.
filter
(
Log
.
bits
.
op
(
'->>'
)(
'61'
)
==
self
.
invoice_id
)
else
:
q
=
q
.
filter_by
(
bit_061
=
self
.
invoice_id
)
q
=
q
.
order_by
(
Log
.
id
.
desc
())
row
=
q
.
first
()
if
not
row
:
return
if
self
.
is_universal_log
:
channel_id
=
row
.
bits
[
'18'
]
.
strip
()
channel_nama
=
get_channel_name
(
row
.
bits
[
'18'
],
row
.
bits
[
'32'
],
row
.
bits
[
'41'
],
row
.
bits
[
'42'
],
row
.
bits
[
'43'
])
return
channel_id
,
channel_nama
,
row
.
bits
[
'11'
],
\
row
.
bits
[
'48'
]
.
strip
(),
row
.
bits
[
'32'
],
row
.
bits
[
'107'
]
channel_id
=
row
.
bit_018
.
strip
()
channel_nama
=
get_channel_name_by_row
(
row
)
return
channel_id
,
channel_nama
,
row
.
bit_011
,
\
...
...
Write
Preview
Markdown
is supported
Attach a file
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to post a comment