from orm import fields, model class PaymentModel(model.Model): def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.payment_type = fields.ThisModelValue( db_column='concat(Order_Pay_Type_Code, Credit_Card_ID)', db_alias='payment_type' ) self.reference = fields.ThisModelValue(db_column='OrdPayEPayRefNumber') self.amount = fields.ThisModelDecimalValue( db_column='sum(OrdPayAmt)', db_alias='amount', decimal_places=4 ) class Conf: db_table = 'pos.dbo.OrderPayments2' filters = ('Location_Code', 'Order_Date', 'Order_Number') def get_where(self): where = super().get_where() return f'{where} ' \ f'AND OrdPayStatusCode != 3 \n' \ f'GROUP BY concat(Order_Pay_Type_Code, Credit_Card_ID), OrdPayEPayRefNumber'