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 2fc8c3bc
authored
Apr 13, 2021
by
Owo Sugiana
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
Tambah field pada PBB
1 parent
4380304e
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
39 additions
and
4 deletions
CHANGES.txt
README.rst
contrib/alter-pbb.sql
payment_report/models.py
payment_report/scripts/pbb.py
CHANGES.txt
View file @
2fc8c3b
0.1.2 13-4-2021
---------------
- Penambahan field pada PBB
0.1.1 3-4-2021
--------------
- Tambah PBB
...
...
README.rst
View file @
2fc8c3b
...
...
@@ -113,6 +113,7 @@ Berikan hak akses yang diperlukan user ``report``::
$ sudo su - postgres -c "psql pbb"
GRANT SELECT ON sppt TO report;
GRANT SELECT ON pembayaran_sppt TO report;
GRANT USAGE ON SCHEMA pbb TO report;
GRANT SELECT ON pbb.inquiry TO report;
...
...
contrib/alter-pbb.sql
0 → 100644
View file @
2fc8c3b
ALTER
TABLE
pbb_report
ADD
pbb_yg_harus_dibayar_sppt
float
;
ALTER
TABLE
pbb_report
ALTER
jml_sppt_yg_dibayar
TYPE
bigint
;
ALTER
TABLE
pbb_report
ADD
denda_sppt
bigint
;
ALTER
TABLE
pbb_report
ADD
tgl_inquiry
timestamp
with
time
zone
;
payment_report/models.py
View file @
2fc8c3b
from
sqlalchemy
import
(
Column
,
Integer
,
BigInteger
,
Float
,
String
,
Date
,
...
...
@@ -119,10 +120,16 @@ class Pbb(Base):
kd_jns_op
=
Column
(
String
(
1
),
nullable
=
False
)
# Bit 62 / Invoice ID
thn_pajak_sppt
=
Column
(
String
(
4
),
nullable
=
False
)
# Field sppt.pbb_yg_harus_dibayar_sppt
pbb_yg_harus_dibayar_sppt
=
Column
(
Float
,
nullable
=
False
)
# Field pembayaran_sppt.pembayaran_sppt_ke
pembayaran_sppt_ke
=
Column
(
Integer
,
nullable
=
False
)
# Bit 4
jml_sppt_yg_dibayar
=
Column
(
Integer
,
nullable
=
False
)
jml_sppt_yg_dibayar
=
Column
(
BigInteger
,
nullable
=
False
)
# Field pembayaran_sppt.denda_sppt
denda_sppt
=
Column
(
BigInteger
,
nullable
=
False
)
# Bit 7 / Transmission Date Inquiry
tgl_inquiry
=
Column
(
DateTime
(
timezone
=
True
),
nullable
=
False
)
# Bit 7 / Transmission Date
tgl_pembayaran_sppt
=
Column
(
Date
,
nullable
=
False
)
# Bit 7 / Transmission DateTime
...
...
payment_report/scripts/pbb.py
View file @
2fc8c3b
...
...
@@ -8,9 +8,11 @@ from opensipkd.waktu import (
dmyhms
,
create_datetime
,
)
from
sismiop.models.default
import
PembayaranSppt
from
sismiop.models.default
import
(
Sppt
,
PembayaranSppt
,
)
from
sismiop.services.base
import
get_db_session
from
opensipkd.iso8583.bjb.pbb
import
Doc
from
opensipkd.iso8583.bjb.pbb.structure
import
(
INVOICE_ID
,
...
...
@@ -65,6 +67,7 @@ class App(BaseApp):
self
.
iso_payment_orm
,
self
.
iso_inquiry_orm
)
.
filter
(
self
.
iso_payment_orm
.
inquiry_id
==
self
.
iso_inquiry_orm
.
id
)
self
.
base_q_psppt
=
self
.
prod_session
.
query
(
PembayaranSppt
)
self
.
base_q_sppt
=
self
.
prod_session
.
query
(
Sppt
)
def
get_db_session
(
self
):
# Override
return
get_db_session
()
...
...
@@ -82,6 +85,18 @@ class App(BaseApp):
PembayaranSppt
.
pembayaran_sppt_ke
.
desc
())
return
q
.
first
()
def
get_sppt
(
self
,
p
):
q
=
self
.
base_q_sppt
.
filter_by
(
kd_propinsi
=
p
[
'Propinsi'
],
kd_dati2
=
p
[
'Kabupaten'
],
kd_kecamatan
=
p
[
'Kecamatan'
],
kd_kelurahan
=
p
[
'Kelurahan'
],
kd_blok
=
p
[
'Blok'
],
no_urut
=
p
[
'Urut'
],
kd_jns_op
=
p
[
'Jenis'
],
thn_pajak_sppt
=
p
[
'Tahun'
])
return
q
.
first
()
def
__run_payment
(
self
):
last
=
self
.
get_last_id
(
'pbb payment last id'
)
q_iso
=
self
.
base_q_iso
.
filter
(
self
.
iso_inquiry_orm
.
id
>
last
.
as_int
())
...
...
@@ -101,6 +116,7 @@ class App(BaseApp):
tgl_bayar
=
s_tgl
,
invoice_id
=
d
[
'nomor_bayar'
])
self
.
log
.
error
(
msg
)
continue
sppt
=
self
.
get_sppt
(
p
)
self
.
log
.
info
(
f
'Tgl bayar {s_tgl}, Nomor bayar {d["nomor_bayar"]}, '
f
'STAN {d["stan"]}, NTB {d["ntb"]}, Channel {d["channel"]}'
)
...
...
@@ -113,12 +129,15 @@ class App(BaseApp):
thn_pajak_sppt
=
p
[
'Tahun'
],
pembayaran_sppt_ke
=
psppt
.
pembayaran_sppt_ke
,
jml_sppt_yg_dibayar
=
iso
.
get_amount
(),
denda_sppt
=
psppt
.
denda_sppt
,
tgl_pembayaran_sppt
=
tgl_bayar
.
date
(),
tgl_rekam_byr_sppt
=
tgl_bayar
,
nm_wp_sppt
=
p
[
'Nama'
],
channel_kode
=
iso
.
get_channel
()
.
strip
(),
channel_nama
=
d
[
'channel'
],
user_id
=
iso
.
getBit
(
107
))
user_id
=
iso
.
getBit
(
107
),
pbb_yg_harus_dibayar_sppt
=
sppt
.
pbb_yg_harus_dibayar_sppt
,
tgl_inquiry
=
row_inq
.
tgl
)
last
.
nilai
=
str
(
row_inq
.
id
)
print
(
f
'last.nilai {last.nilai}'
)
with
transaction
.
manager
:
...
...
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