callback.py
938 Bytes
import logging
from opensipkd.pasar.models.produk import PartnerPay, PartnerProduk
log = logging.getLogger(__name__)
from . import Vendor
def proses(data):
code = "resultCd" in data and data["resultCd"] and int(data["resultCd"]) or 0
message = "resultMsg" in data and data["resultMsg"] or ""
if code!=0:
return dict(form="Error in NV CALLBACK {}, {}".format(code, message), code=code, message=message)
vend_inv_no = data["tXid"]
cus_inv_no = data["referenceNo"]
invoice_det = PartnerPay.query_vend_inv_no(vend_inv_no)\
.filter_by(cust_inv_no=cus_inv_no).first()
if not invoice_det:
return
vendor_produk = PartnerProduk.query()\
.filter_by(partner_id=invoice_det.vendor_id,
produk_id=invoice_det.produk_id).first()
vendor = Vendor(vendor_produk, invoice_det)
result = vendor.callback(data)
print("callback.py", result)
return result