Commit 42227c16 by Solo Group

odeo inq

1 parent 43664213
......@@ -18,6 +18,8 @@ from . import notify
urllib3.disable_warnings()
timeout = 30
class Vendor(VendorClass):
def __init__(self, vendor_produk, invoice_det):
VendorClass.__init__(self, vendor_produk, invoice_det=invoice_det)
......@@ -59,9 +61,14 @@ class Vendor(VendorClass):
except Exception as e:
log.info(e)
return
return resp
def inquiry(self):
if not self.v_produk_kd or not self.id_pel:
return self.set_response(message='Parameter tidak lengkap')
resp = self._inquiry()
if not resp.text:
log.info("Resp Tidak Ada, {} {}".format(resp))
log.info("Resp Tidak Ada, {}".format(resp))
return
try:
......@@ -74,21 +81,28 @@ class Vendor(VendorClass):
if resp.status_code == 200:
self.status = 1 # sukses
data = "data" in result and result["data"] or None
return self.pars_data(data)
else:
return
parsd = self.pars_data(data)
return self.set_success(parsd) # parsd
elif resp.status_code == 400:
data = "data" in result and result["data"] or None
message = ""
if data and "errors" in data:
msg = data["errors"][0]
pos = msg.find("Sisa saldo")
message = pos > -1 and msg[:pos] or msg
parsd = self.pars_data(data)
return self.set_failed(parsd, message=message, typ="payment")
def inquiry(self):
if not self.v_produk_kd or not self.id_pel:
return self.set_response(message='Parameter tidak lengkap')
parsd = self._inquiry()
if not parsd:
return self.set_failed() # parsd
return self.set_success(parsd) # parsd
return
# parsd = self._inquiry()
# if not parsd:
# return self.set_failed() # parsd
def payment(self):
#Jika kategory bukan e-pulsa Call Inquiry First
# Jika kategory bukan e-pulsa Call Inquiry First
parsd = None
if self.vendor_produk.produk.kategori.kode != "e-pulsa":
parsd = self._inquiry()
......@@ -206,7 +220,7 @@ class Vendor(VendorClass):
self.status = 1 # sukses
data = "data" in result and result["data"] or None
parsd = self.pars_data(data)
return self.set_success(parsd,"payment")
return self.set_success(parsd, "payment")
elif resp.status_code == 400:
self.status = -3
parsd = dict(code=resp.status_code,
......@@ -239,21 +253,21 @@ class Vendor(VendorClass):
if "power" in data:
rincian['power'] = data["power"]
if self.v_produk_kd[:3] == "PLN" and self.v_produk_kd != "PLNPASCA":
#harga = "price" in data and data["price"] or 0
#pokok = harga and int(re.sub("\D","", self.v_produk_kd))*1000 or 0
# harga = "price" in data and data["price"] or 0
# pokok = harga and int(re.sub("\D","", self.v_produk_kd))*1000 or 0
pokok = int(self.vendor_produk.produk.harga)
admin = 0
rincian["pokok"] = pokok
rincian["admin"] = admin
rincian["denda"] = 0
rincian["total"] = pokok+admin
rincian["total"] = pokok + admin
rincian["token"] = "token" in data and data["token"] or ""
log.info(">Rincian: {}".format(rincian))
elif self.v_produk_kd == "PLNPASCA":
if 'tarif' in rincian and rincian['tarif']:
p = rincian['tarif'].split('/')
if len(p)>1:
if len(p) > 1:
rincian["power"] = p[1][:-2]
if "subscriber_id" in data and data["subscriber_id"]:
rincian['no_meter'] = data["subscriber_id"]
......@@ -274,7 +288,7 @@ class Vendor(VendorClass):
i = 0
log.info(inquirieses)
for inquiries in inquirieses:
#odeo ngerubah data inquiry
# odeo ngerubah data inquiry
if "tariff" in inquiries and inquiries["tariff"]:
rincian['tarif'] = inquiries["tariff"]
if "number" in inquiries:
......@@ -360,7 +374,7 @@ class Vendor(VendorClass):
rincian["denda"] = denda
admin = int(self.vendor_produk.produk.harga * i)
rincian["admin"] = admin
rincian["total"] = pokok+denda+admin
rincian["total"] = pokok + denda + admin
rincian["period"] = period
if not 'jml_bulan' in rincian:
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!