Архитектура класса для валидации и логирования данных
Задача: есть несколько интеграций у которых нужно провалидировать и конвертировать все передаваемые атрибуты. Также необходимо логирование в БД всех данных, которые не прошли валидацию. Все интеграции реализованы через pandas и валидируются df.
На текущий момент реализован класс, в котором и происходит вся валидация, конвертация и формирование JSON для логирования.
ValidateData = ValidateDFData(df, ListIntAttr=['subj_giving', 'subj_accept', 'opf_giving', 'opf_accept'],
ListDateAttr=['reg_date'],
DictAttr=MapAttrWithDict,
ColumnNameFromFile=OldAttributeName,
ColumnNameForDB=AttributeName,
Connection=connection)
то есть передается df, и списки атрибутов которые необходимо провалидировать.
Далее по-отдельности запускаются методы валидации
ValidateData.ConvertAndValidateDateData()
ValidateData.ConvertAndValidateIntData()
В этих же методах формируются JSON с данными об ошибках.
Ну и после всех манипуляций с данными внутри этого класса, забирается отформатированный df и JSON со всеми данными об ошибках
df = ValidateData.df
BrackData = ValidateData.ListBrackJSON
И что-то меня смущает во всем этом.
Как правильно оформить данный класс?