Skip to content
Toggle navigation
Projects
Groups
Snippets
Help
Kunto
/
backoffice
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 b7b49ee0
authored
Oct 03, 2019
by
Solo Group
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
penambahan cek sukses dan Noref+1
1 parent
ee79d93c
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
81 additions
and
167 deletions
src/agratek/api/merchant/views/tangselpjk/bphtb.py
src/agratek/api/merchant/views/tangselpjk/pbb.py
src/agratek/api/merchant/views/tangselpjk/pdl.py
src/agratek/api/merchant/views/tangselpjk/bphtb.py
View file @
b7b49ee
...
@@ -80,13 +80,6 @@ class Vendor(VendorClass):
...
@@ -80,13 +80,6 @@ class Vendor(VendorClass):
message
=
resp
[
"responseDesc"
]
message
=
resp
[
"responseDesc"
]
return
dict
(
code
=
code
,
message
=
message
)
return
dict
(
code
=
code
,
message
=
message
)
# if code == 54:
# raise JsonRpcBillAllreadyPaidError()
# elif code == 55:
# raise JsonRpcBillNotFoundError()
# else:
# raise JsonRpcError(code=code, message=message)
def
response_field
(
self
):
def
response_field
(
self
):
resp
=
self
.
response
resp
=
self
.
response
if
resp
[
"responseCode"
]
==
"00"
:
if
resp
[
"responseCode"
]
==
"00"
:
...
@@ -182,7 +175,7 @@ class Vendor(VendorClass):
...
@@ -182,7 +175,7 @@ class Vendor(VendorClass):
def
_inquiry
(
self
):
def
_inquiry
(
self
):
if
not
self
.
v_produk_kd
or
not
self
.
id_pel
:
if
not
self
.
v_produk_kd
or
not
self
.
id_pel
:
return
self
.
set_response
(
message
=
'Parameter tidak lengkap'
)
return
self
.
request
=
self
.
inquiry_field
()
self
.
request
=
self
.
inquiry_field
()
log
.
info
(
"Inquiry Request: url: {} params {}"
.
format
(
self
.
inq_url
,
self
.
request
))
log
.
info
(
"Inquiry Request: url: {} params {}"
.
format
(
self
.
inq_url
,
self
.
request
))
...
@@ -208,6 +201,7 @@ class Vendor(VendorClass):
...
@@ -208,6 +201,7 @@ class Vendor(VendorClass):
result
=
resp
.
text
result
=
resp
.
text
self
.
response
=
result
self
.
response
=
result
self
.
save_log
(
"inquiry"
)
log
.
info
(
"Inquiry Response:
%
s"
%
self
.
response
)
log
.
info
(
"Inquiry Response:
%
s"
%
self
.
response
)
return
resp
return
resp
...
@@ -216,12 +210,18 @@ class Vendor(VendorClass):
...
@@ -216,12 +210,18 @@ class Vendor(VendorClass):
if
resp
is
None
:
if
resp
is
None
:
return
self
.
set_failed
(
typ
=
"inquiry"
)
return
self
.
set_failed
(
typ
=
"inquiry"
)
if
resp
.
status_code
=
=
200
:
if
resp
.
status_code
!
=
200
:
parsd
=
self
.
response_field
(
)
return
self
.
set_failed
(
typ
=
"inquiry"
)
return
self
.
set_success
(
parsd
,
typ
=
"inquiry"
)
el
se
:
if
"responseCode"
not
in
self
.
respon
se
:
return
self
.
set_failed
(
typ
=
"inquiry"
)
return
self
.
set_failed
(
typ
=
"inquiry"
)
if
self
.
response
[
"responseCode"
]
!=
"00"
:
return
self
.
inquiry_error
(
self
.
response
)
parsd
=
self
.
response_field
()
return
self
.
set_success
(
parsd
,
typ
=
"inquiry"
)
def
payment
(
self
):
def
payment
(
self
):
resp
=
self
.
_inquiry
()
resp
=
self
.
_inquiry
()
if
not
resp
:
if
not
resp
:
...
@@ -230,93 +230,43 @@ class Vendor(VendorClass):
...
@@ -230,93 +230,43 @@ class Vendor(VendorClass):
if
self
.
response
[
"responseCode"
]
!=
"00"
:
if
self
.
response
[
"responseCode"
]
!=
"00"
:
return
self
.
inquiry_error
(
self
.
response
)
return
self
.
inquiry_error
(
self
.
response
)
self
.
response
[
"noRef"
]
=
int
(
self
.
response
[
"noRef"
])
+
1
params
=
json
.
dumps
(
self
.
response
)
params
=
json
.
dumps
(
self
.
response
)
log
.
info
(
"Payment url: {} params: {}"
.
format
(
self
.
pay_url
,
params
))
log
.
info
(
"Payment url: {} params: {}"
.
format
(
self
.
pay_url
,
params
))
try
:
try
:
resp
=
requests
.
post
(
self
.
pay_url
,
data
=
params
,
verify
=
False
,
resp
=
requests
.
post
(
self
.
pay_url
,
data
=
params
,
verify
=
False
,
headers
=
self
.
get_headers
(),
timeout
=
15
)
headers
=
self
.
get_headers
(),
timeout
=
15
)
except
:
except
Exception
as
e
:
self
.
response
=
e
resp
=
None
resp
=
None
if
resp
is
None
:
if
resp
is
None
:
self
.
status
=
0
self
.
status
=
0
return
self
.
set_pending
()
return
self
.
set_pending
()
if
resp
.
status_code
!=
200
:
result
=
resp
.
text
self
.
response
=
result
log
.
info
(
"Payment Response:
%
s"
%
self
.
response
)
return
self
.
set_pending
()
try
:
try
:
result
=
json
.
loads
(
resp
.
text
)
result
=
json
.
loads
(
resp
.
text
)
self
.
response
=
result
self
.
response
=
result
log
.
info
(
"Payment Response:
%
s"
%
self
.
response
)
log
.
info
(
"Payment Response:
%
s"
%
self
.
response
)
except
:
except
:
result
=
resp
.
text
self
.
response
=
resp
.
text
self
.
response
=
result
log
.
info
(
"Payment Response:
%
s"
%
self
.
response
)
log
.
info
(
"Payment Response:
%
s"
%
self
.
response
)
self
.
status
=
0
return
self
.
set_pending
()
return
self
.
set_pending
()
if
resp
.
status_code
==
200
:
parsd
=
self
.
response_field
()
parsd
=
self
.
response_field
()
if
self
.
response
[
"responseCode"
]
!=
"00"
:
return
self
.
inquiry_error
(
self
.
response
)
self
.
status
=
1
# sukses
self
.
serial_number
=
'ntb'
in
result
and
result
[
"ntb"
]
.
strip
()
\
or
self
.
serial_number
parsd
[
"rincian"
]
.
update
(
dict
(
ntb
=
self
.
serial_number
,
ntp
=
'ntp'
in
result
and
result
[
"ntp"
]
.
strip
()
or
''
))
return
self
.
set_success
(
parsd
)
else
:
self
.
serial_number
=
'ntb'
in
result
and
result
[
"ntb"
]
.
strip
()
\
self
.
status
=
0
or
self
.
serial_number
return
self
.
set_pending
()
parsd
[
"rincian"
]
.
update
(
dict
(
ntb
=
self
.
serial_number
,
ntp
=
'ntp'
in
result
and
result
[
"ntp"
]
.
strip
()
or
''
))
return
self
.
set_success
(
parsd
)
def
advice
(
self
):
def
advice
(
self
):
raise
JsonRpcError
(
message
=
"Not Implemented"
)
raise
JsonRpcError
(
message
=
"Not Implemented"
)
# if not self.v_produk_kd or not self.id_pel or not self.invoice_det:
# return dict(code=9999,
# message='Parameter tidak lengkap')
#
# if self.kategori == 'e-payment':
# order_id = self.invoice_det.vend_inv_no
# url = self.get_url('/order/{order_id}'.format(order_id=order_id))
# params = None
# self.request = url
# else:
# params = dict(
# data=dict(
# denom=self.v_produk_kd,
# number=self.id_pel
# )
# )
# self.request = params
# url = self.get_url('/prepaid/purchase-get')
#
# self.save_log("advice")
# try:
# resp = requests.get(url, params=params, verify=False,
# headers=self.get_headers(), timeout=15)
# except:
# return self.set_response()
#
# try:
# result = json.loads(resp.text)
# except:
# result = resp.text
#
# self.response = result
# if resp.ok:
# self.status = 1 # sukses
# data = "data" in result and result["data"] or None
# parsd = self.pars_data(data)
#
# elif resp.status_code == 400:
# self.status = -3
# parsd = dict(code=resp.status_code,
# message=resp.text)
# else:
# self.status = -4
# parsd = dict(code=500,
# message="Other Error")
#
# self.save_log('advice')
# return parsd
src/agratek/api/merchant/views/tangselpjk/pbb.py
View file @
b7b49ee
...
@@ -131,6 +131,7 @@ class Vendor(VendorClass):
...
@@ -131,6 +131,7 @@ class Vendor(VendorClass):
result
=
resp
.
text
result
=
resp
.
text
self
.
response
=
result
self
.
response
=
result
self
.
save_log
(
"inquiry"
)
log
.
info
(
"Inquiry Response:
%
s"
%
self
.
response
)
log
.
info
(
"Inquiry Response:
%
s"
%
self
.
response
)
return
resp
return
resp
...
@@ -157,9 +158,11 @@ class Vendor(VendorClass):
...
@@ -157,9 +158,11 @@ class Vendor(VendorClass):
if
resp
is
None
or
resp
and
resp
.
status_code
!=
200
:
if
resp
is
None
or
resp
and
resp
.
status_code
!=
200
:
return
self
.
set_pending
()
return
self
.
set_pending
()
if
"responseCode"
not
in
self
.
response
\
if
"responseCode"
not
in
self
.
response
:
or
self
.
response
[
"responseCode"
]
!=
"00"
:
return
self
.
set_pending
()
return
self
.
set_failed
()
if
self
.
response
[
"responseCode"
]
!=
"00"
:
return
self
.
inquiry_error
(
self
.
response
)
# ditambahkan disini karena minta noRefnya Berbeda
# ditambahkan disini karena minta noRefnya Berbeda
self
.
response
[
"noRef"
]
=
int
(
self
.
response
[
"noRef"
])
+
1
self
.
response
[
"noRef"
]
=
int
(
self
.
response
[
"noRef"
])
+
1
...
@@ -168,7 +171,8 @@ class Vendor(VendorClass):
...
@@ -168,7 +171,8 @@ class Vendor(VendorClass):
try
:
try
:
resp
=
requests
.
post
(
self
.
pay_url
,
data
=
params
,
verify
=
False
,
resp
=
requests
.
post
(
self
.
pay_url
,
data
=
params
,
verify
=
False
,
headers
=
self
.
get_headers
(),
timeout
=
15
)
headers
=
self
.
get_headers
(),
timeout
=
15
)
except
:
except
Exception
as
e
:
self
.
response
=
e
resp
=
None
resp
=
None
if
resp
is
None
:
if
resp
is
None
:
...
...
src/agratek/api/merchant/views/tangselpjk/pdl.py
View file @
b7b49ee
...
@@ -94,13 +94,6 @@ class Vendor(VendorClass):
...
@@ -94,13 +94,6 @@ class Vendor(VendorClass):
result
=
self
.
get_price
(
sub_total
)
result
=
self
.
get_price
(
sub_total
)
admin
=
int
(
self
.
vendor_produk
.
produk
.
harga
)
admin
=
int
(
self
.
vendor_produk
.
produk
.
harga
)
# todo: cek kembali harga apakah wajar atau tidak
# adm_biller = int(resp["diskon"] or '0')
# jika harga admin biller > dari admin
# if self.amt_buy < sub_total+adm_biller:
# raise
# if admin < adm_biller:
# admin = adm_biller
rincian
=
dict
(
rincian
=
dict
(
pokok
=
pokok
,
pokok
=
pokok
,
denda
=
denda
,
denda
=
denda
,
...
@@ -126,7 +119,7 @@ class Vendor(VendorClass):
...
@@ -126,7 +119,7 @@ class Vendor(VendorClass):
def
_inquiry
(
self
):
def
_inquiry
(
self
):
if
not
self
.
v_produk_kd
or
not
self
.
id_pel
:
if
not
self
.
v_produk_kd
or
not
self
.
id_pel
:
return
self
.
set_response
(
message
=
'Parameter tidak lengkap'
)
return
self
.
request
=
self
.
inquiry_field
()
self
.
request
=
self
.
inquiry_field
()
log
.
info
(
"Inquiry Request: url: {} params {}"
.
format
(
self
.
inq_url
,
self
.
request
))
log
.
info
(
"Inquiry Request: url: {} params {}"
.
format
(
self
.
inq_url
,
self
.
request
))
...
@@ -138,20 +131,27 @@ class Vendor(VendorClass):
...
@@ -138,20 +131,27 @@ class Vendor(VendorClass):
verify
=
False
,
verify
=
False
,
headers
=
self
.
get_headers
(),
headers
=
self
.
get_headers
(),
timeout
=
20
)
timeout
=
20
)
except
:
except
Exception
as
e
:
log
.
info
(
"Biller Error"
)
self
.
response
=
e
log
.
info
(
"Biller Error: {}"
.
format
(
e
))
return
return
if
not
resp
:
if
not
resp
:
log
.
info
(
"No Response From Biller"
)
msg
=
"No Response From Biller"
log
.
info
(
msg
)
self
.
response
=
msg
return
return
try
:
try
:
result
=
json
.
loads
(
resp
.
text
)
result
=
json
.
loads
(
resp
.
text
)
except
:
except
:
result
=
resp
.
text
result
=
resp
.
text
self
.
response
=
result
log
.
info
(
"Inquiry Response:
%
s"
%
self
.
response
)
return
self
.
response
=
result
self
.
response
=
result
self
.
save_log
(
"inquiry"
)
log
.
info
(
"Inquiry Response:
%
s"
%
self
.
response
)
log
.
info
(
"Inquiry Response:
%
s"
%
self
.
response
)
return
resp
return
resp
...
@@ -160,104 +160,64 @@ class Vendor(VendorClass):
...
@@ -160,104 +160,64 @@ class Vendor(VendorClass):
if
resp
is
None
:
if
resp
is
None
:
return
self
.
set_failed
(
typ
=
"inquiry"
)
return
self
.
set_failed
(
typ
=
"inquiry"
)
if
resp
.
status_code
==
200
:
if
resp
.
status_code
!=
200
:
parsd
=
self
.
response_field
()
return
self
.
set_success
(
parsd
,
typ
=
"inquiry"
)
else
:
return
self
.
set_failed
(
typ
=
"inquiry"
)
return
self
.
set_failed
(
typ
=
"inquiry"
)
if
"responseCode"
not
in
self
.
response
:
return
self
.
set_failed
(
typ
=
"inquiry"
)
if
self
.
response
[
"responseCode"
]
!=
"00"
:
return
self
.
inquiry_error
(
self
.
response
)
parsd
=
self
.
response_field
()
return
self
.
set_success
(
parsd
,
typ
=
"inquiry"
)
def
payment
(
self
):
def
payment
(
self
):
resp
=
self
.
_inquiry
()
resp
=
self
.
_inquiry
()
if
not
resp
:
if
not
resp
:
return
self
.
set_failed
()
return
self
.
set_failed
()
if
self
.
response
[
"responseCode"
]
!=
"00"
:
if
self
.
response
[
"responseCode"
]
!=
"00"
:
return
self
.
inquiry_error
(
self
.
response
)
return
self
.
inquiry_error
(
self
.
response
)
self
.
response
[
"noRef"
]
=
int
(
self
.
response
[
"noRef"
])
+
1
params
=
json
.
dumps
(
self
.
response
)
params
=
json
.
dumps
(
self
.
response
)
log
.
info
(
"Payment url: {} params: {}"
.
format
(
self
.
pay_url
,
params
))
log
.
info
(
"Payment url: {} params: {}"
.
format
(
self
.
pay_url
,
params
))
try
:
try
:
resp
=
requests
.
post
(
self
.
pay_url
,
data
=
params
,
verify
=
False
,
resp
=
requests
.
post
(
self
.
pay_url
,
data
=
params
,
verify
=
False
,
headers
=
self
.
get_headers
(),
timeout
=
15
)
headers
=
self
.
get_headers
(),
timeout
=
15
)
except
:
except
Exception
as
e
:
self
.
response
=
e
resp
=
None
resp
=
None
if
resp
is
None
:
if
resp
is
None
:
self
.
status
=
0
return
self
.
set_pending
()
return
self
.
set_pending
()
if
resp
.
status_code
!=
200
:
self
.
response
=
resp
.
text
log
.
info
(
"Payment Response:
%
s"
%
self
.
response
)
return
self
.
set_pending
()
try
:
try
:
result
=
json
.
loads
(
resp
.
text
)
result
=
json
.
loads
(
resp
.
text
)
self
.
response
=
result
log
.
info
(
"Payment Response:
%
s"
%
self
.
response
)
except
:
except
:
result
=
resp
.
text
result
=
resp
.
text
self
.
response
=
result
self
.
response
=
result
log
.
info
(
"Payment Response:
%
s"
%
self
.
response
)
log
.
info
(
"Payment Response:
%
s"
%
self
.
response
)
self
.
status
=
0
return
self
.
set_pending
()
return
self
.
set_pending
()
if
resp
.
status_code
==
200
:
self
.
response
=
result
self
.
status
=
1
# sukses
log
.
info
(
"Payment Response:
%
s"
%
self
.
response
)
parsd
=
self
.
response_field
()
if
self
.
response
[
"responseCode"
]
!=
"00"
:
return
self
.
inquiry_error
(
self
.
response
)
self
.
serial_number
=
'ntb'
in
result
and
result
[
"ntb"
]
.
strip
()
\
or
self
.
serial_number
parsd
[
"rincian"
]
.
update
(
dict
(
ntb
=
self
.
serial_number
,
ntp
=
'ntp'
in
result
and
result
[
"ntp"
]
.
strip
()
or
''
))
return
self
.
set_success
(
parsd
)
else
:
parsd
=
self
.
response_field
()
self
.
status
=
0
self
.
serial_number
=
'ntb'
in
result
and
result
[
"ntb"
]
.
strip
()
\
return
self
.
set_pending
()
or
self
.
serial_number
parsd
[
"rincian"
]
.
update
(
dict
(
ntb
=
self
.
serial_number
,
ntp
=
'ntp'
in
result
and
result
[
"ntp"
]
.
strip
()
or
''
))
return
self
.
set_success
(
parsd
)
def
advice
(
self
):
def
advice
(
self
):
raise
JsonRpcError
(
message
=
"Not Implemented"
)
raise
JsonRpcError
(
message
=
"Not Implemented"
)
# if not self.v_produk_kd or not self.id_pel or not self.invoice_det:
# return dict(code=9999,
# message='Parameter tidak lengkap')
#
# if self.kategori == 'e-payment':
# order_id = self.invoice_det.vend_inv_no
# url = self.get_url('/order/{order_id}'.format(order_id=order_id))
# params = None
# self.request = url
# else:
# params = dict(
# data=dict(
# denom=self.v_produk_kd,
# number=self.id_pel
# )
# )
# self.request = params
# url = self.get_url('/prepaid/purchase-get')
#
# self.save_log("advice")
# try:
# resp = requests.get(url, params=params, verify=False,
# headers=self.get_headers(), timeout=15)
# except:
# return self.set_response()
#
# try:
# result = json.loads(resp.text)
# except:
# result = resp.text
#
# self.response = result
# if resp.ok:
# self.status = 1 # sukses
# data = "data" in result and result["data"] or None
# parsd = self.pars_data(data)
#
# elif resp.status_code == 400:
# self.status = -3
# parsd = dict(code=resp.status_code,
# message=resp.text)
# else:
# self.status = -4
# parsd = dict(code=500,
# message="Other Error")
#
# self.save_log('advice')
# return parsd
\ No newline at end of file
\ No newline at end of file
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