[add]: MIgration to oracle database

This commit is contained in:
VivianDee
2025-07-03 05:02:08 +01:00
parent dff000dbb2
commit d6aabb959e
39 changed files with 265 additions and 1466 deletions
+2 -2
View File
@@ -7,8 +7,8 @@ from sqlalchemy.sql import func
class Offer(db.Model):
__tablename__ = 'offers'
id = db.Column(db.String, primary_key=True)
product_id = db.Column(db.String, nullable=False)
id = db.Column(db.String(50), primary_key=True)
product_id = db.Column(db.String(50), nullable=False)
min_amount = db.Column(db.Float, nullable=False)
max_amount = db.Column(db.Float, nullable=False)
tenor = db.Column(db.Integer, nullable=False)
+18 -5
View File
@@ -3,6 +3,7 @@ from app.extensions import db
from sqlalchemy.orm import relationship
from sqlalchemy.exc import IntegrityError
from uuid import uuid4
import json
from sqlalchemy.types import JSON
from sqlalchemy.sql import func
@@ -11,11 +12,22 @@ class RACCheck(db.Model):
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
transaction_id = db.Column(db.String(50), nullable=False)
customer_id = db.Column(db.String, nullable=False)
account_id = db.Column(db.String, nullable=False)
rac_response = db.Column(db.JSON, nullable=False)
customer_id = db.Column(db.String(50), nullable=False)
account_id = db.Column(db.String(50), nullable=False)
rac_response = db.Column(db.Text, nullable=False)
created_at = db.Column(db.DateTime(timezone=True), server_default=func.now())
updated_at = db.Column(db.DateTime(timezone=True), server_default=func.now(), onupdate=func.now())
@property
def rac_response_data(self):
return json.loads(self.rac_response)
@rac_response_data.setter
def rac_response_data(self, value):
self.rac_response = json.dumps(value)
@classmethod
def add_rac_check(cls, customer_id, account_id, transaction_id, data = None):
@@ -25,10 +37,11 @@ class RACCheck(db.Model):
customer_id = customer_id,
account_id = account_id,
transaction_id = transaction_id,
rac_response = data,
created_at=datetime.now(timezone.utc),
updated_at=datetime.now(timezone.utc)
)
rac_check.rac_response_data = data or {}
try:
db.session.add(rac_check)
@@ -66,7 +79,7 @@ class RACCheck(db.Model):
"transactionId": str(self.transaction_id),
"customerId": self.customer_id,
"accountId": self.account_id,
"racResponse": self.rac_response,
"racResponse": self.rac_response_data,
"createdAt": self.created_at.isoformat(),
"updatedAt": self.updated_at.isoformat() if self.updated_at else None
}