ishanra

detailed_payment_status.py

Jul 16th, 2021
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.58 KB | None | 0 0
  1. from odoo import fields, models, api
  2. import uuid
  3. import requests
  4. import json
  5. from datetime import datetime
  6. import os
  7. from urllib.parse import urlparse
  8. from . import secret_keys
  9. import boto3
  10.  
  11.  
  12. class BeneficiaryTransactionWizard(models.TransientModel):
  13. _name = "openg2p.disbursement.batch.transaction.wizard"
  14.  
  15. file_url = fields.Char(
  16. string="CSV Link", readonly=True, compute="bulk_transfer_detailed_status"
  17. )
  18. csv_data = fields.Text(string="CSV Data", readonly=True)
  19.  
  20. def bulk_transfer_detailed_status(self):
  21. batch = self.env["openg2p.disbursement.batch.transaction"].browse(
  22. self.env.context.get("active_ids")
  23. )
  24. params = (
  25. ("batch_id", str(batch.transaction_batch_id)),
  26. ("detailed", "true"),
  27. )
  28.  
  29. url = "http://15.207.23.72:5000/channel/bulk/transfer"
  30.  
  31. try:
  32. response = requests.get(url, params=params)
  33.  
  34. response_data = response.json()
  35.  
  36. print(response_data)
  37. self.file_url = response_data["file"]
  38.  
  39. url = self.file_url
  40. a = urlparse(url)
  41.  
  42. file_name = os.path.basename(a.path)
  43.  
  44. s3 = boto3.resource(
  45. "s3",
  46. aws_access_key_id=secret_keys.ACCESS_KEY,
  47. aws_secret_access_key=secret_keys.SECRET_KEY,
  48. )
  49.  
  50. s3.Bucket("openg2p-dev").download_file(file_name, file_name)
  51.  
  52. except BaseException as e:
  53. print(e)
  54.  
  55. return {
  56. "type": "ir.actions.do_nothing",
  57. }
  58.  
Advertisement
Add Comment
Please, Sign In to add comment