Commit ec4e3f1b by Solo Group

vsi_pln_post

1 parent 2d78aa0f
...@@ -251,28 +251,40 @@ class ViewHome(BaseView): ...@@ -251,28 +251,40 @@ class ViewHome(BaseView):
# form_params = dict(scripts=None) # form_params = dict(scripts=None)
settings = get_settings() settings = get_settings()
if request.POST: if request.POST:
controls = request.POST.items()
try:
c = form.validate(controls)
except ValidationFailure as e:
form.set_appstruct(e.cstruct)
return dict(form=form, params=form_params_edit)
values = dict(c.items())
if 'trx_id' not in values or not values['trx_id']:
values['trx_id'] = get_random_number(10)
result = []
if 'inquiry' in request.POST: if 'inquiry' in request.POST:
controls = request.POST.items()
try:
c = form.validate(controls)
except ValidationFailure as e:
form.set_appstruct(e.cstruct)
return dict(form=form, params=form_params_edit)
values = dict(c.items())
if 'trx_id' not in values or not values['trx_id']:
values['trx_id'] = get_random_number(10)
result = build_request('inquiry', values) result = build_request('inquiry', values)
if not result: elif 'payment' in request.POST:
session.flash('Data Tidak Ditemukan', 'error') result = build_request('payment', values)
elif 'advice' in request.POST:
if result and 'error' in result: result = build_request('payment', values)
session.flash(result['error'], 'error') elif 'advice' in request.POST:
if result: result = build_request('advice', values)
values['result'] = json.dumps(result, indent=4) elif 'info' in request.POST:
result = build_request('info', values)
form.render(values)
return dict(form=form, params=form_params_view) if not result:
session.flash('Data Tidak Ditemukan', 'error')
if result and 'error' in result:
session.flash(result['error'], 'error')
if result:
values['result'] = json.dumps(result, indent=4)
values['ref_no'] = 'ref_no' in result and result["ref_no"] or None
form.render(values)
return dict(form=form, params=form_params_view)
return dict(form=form, params=form_params_edit) return dict(form=form, params=form_params_edit)
......
...@@ -37,7 +37,7 @@ class Vendor(VendorClass): ...@@ -37,7 +37,7 @@ class Vendor(VendorClass):
return self.auth return self.auth
def get_params(self, cmd, msn=None, idpel=None, modul=None): def get_params(self, cmd, msn=None, idpel=None, modul=None):
tanggal = datetime.now().strftime('%Y%m%d %H%%m%s') tanggal = datetime.now().strftime('%Y%m%d %H%%M%S')
params = dict( params = dict(
cid=self.mid, cid=self.mid,
dt=tanggal, dt=tanggal,
......
...@@ -88,19 +88,24 @@ class Vendor(VendorClass): ...@@ -88,19 +88,24 @@ class Vendor(VendorClass):
data = dict(error=result.status_code) data = dict(error=result.status_code)
self.response = data self.response = data
self.save_log('inquiry', row) self.save_log('inquiry', row)
if "status" in data and data["status"] and data["status"] == "SUCCESS":
data = {
"bill_no": "subid" in data and data["subid"] or self.bill_no,
"nama": "nama" in data and data["nama"] or "NO-NAME",
"pokok": "tagihan" in data and data["tagihan"] or 0,
"admin": "admin" in data and data["admin"] or 0,
"total": "total" in data and data["total"] or 0,
"trx_id": "trxid" in data and data["trxid"] or row.id,
"ref_no": "refnum" in data and data["refnum"] or "",
"jml_bulan": "bulan" in data and data["bulan"] or "",
"tgh_bulan": "blth" in data and data["blth"] or "",
"tarif": "tarif" in data and data["tarif"] or "",
}
elif "status" in data and data["status"] and data["status"] == "ERROR":
data = dict(error=data["rcm"],
code=data["rc"])
return { return data
"bill_no": data["subid"],
"nama": data["nama"],
"pokok": data["tagihan"],
"admin": data["admin"],
"total": data["total"],
"trx_id": data["trxid"],
"ref_no": data["refnum"],
"jml_bulan": data["bulan"],
"tgh_bulan": data["blth"],
"tarif": data["tarif"],
}
def payment(self): def payment(self):
""" """
...@@ -157,6 +162,7 @@ class Vendor(VendorClass): ...@@ -157,6 +162,7 @@ class Vendor(VendorClass):
params["idpel"] = self.bill_no params["idpel"] = self.bill_no
# params["voucherid"] = self.v_produk_kd # params["voucherid"] = self.v_produk_kd
self.request = params self.request = params
# todo: apakah harus di cek dulu data inquirynya
row = self.save_log('payment') row = self.save_log('payment')
params['trxid'] = self.partner_log_id params['trxid'] = self.partner_log_id
result = requests.get(self.url, params=params) result = requests.get(self.url, params=params)
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!