hive_sales_sync_costarica/orm/fields/one2one.py
Marvin Vallecillo a2663d15be First commit
2024-07-17 04:19:28 -06:00

27 lines
862 B
Python

from .base import AttributeGetter
class One2OneValue(AttributeGetter):
mandatory = ['db_column', 'db_table', 'join']
def __init__(self, db_column=None, db_table=None, join=None, raise_not_found_error=True, *args, **kwargs):
self.db_column = db_column
self.db_table = db_table
self.join = join
self.raise_not_found_error = raise_not_found_error
super().__init__(*args, **kwargs)
def get_where(self):
filters = ' AND '.join([f'{f[1]} = ?' for f in self.join])
return f'WHERE \n {filters}'
def get_select(self):
return f'SELECT \n {self.db_column}'
def get_from(self):
# noinspection SpellCheckingInspection
return f'FROM {self.db_table} (NOLOCK)'
def get_query(self):
return f'{self.get_select()} \n{self.get_from()} \n{self.get_where()}'