from DepositAPI.libs.db.RDbSql import DbMySql
from DepositAPI.model.BaseModel import BaseModel
from functools import lru_cache


class Configuration(BaseModel):
    def get_detail(self, pk):
        self.table = "tbl_configuration"
        self.primary_key = "ID"
        self.fields = []
        data = self.get_object_detail(pk)
        return data

    def get_list(self, filter, quickFilter, sortBy, descending, rowsPerPage, offset):
        where = self.build_query_by_filter(filter, quickFilter)
        self.fields = []
        self.table = "tbl_configuration"
        self.primary_key = "ID"
        items, totalRow = self.get_list_objects(where, sortBy, descending, rowsPerPage, offset)
        return items, totalRow

    def update(self, request, pk):
        self.table = "tbl_configuration"
        self.primary_key = "ID"
        return self.update_object_detail(request, pk)
