public AuditableLog(ILoggableEntity entity, string observation, AuditableLogTypesEnum auditLogTypesEnum, int createdById, string createdBy) { if (!(entity is object)) { throw new AuditableLogException($"Varivavel {nameof(entity)} não pode ser null"); } EntityType = entity.Type; EntityId = entity.EntityId; EntityIdentifier = entity.EntityIdentifier; Observation = $"O Usuário '{createdBy}' " + observation; AuditLogType = (int)auditLogTypesEnum; CreatedById = createdById; CreatedBy = createdBy; CreatedOn = DateTime.Now; }
public AuditableLog(ILogger logger, AuditableLogTypesEnum auditLogTypesEnum, int createdById, string createdBy) { if (!(logger is object)) { throw new AuditableLogException($"Varivavel {nameof(logger)} não pode ser null"); } EntityType = logger.Type; EntityId = logger.EntityId; EntityIdentifier = logger.EntityIdentifier; Observation = $"O Usuário '{createdBy}' " + auditLogTypesEnum switch { AuditableLogTypesEnum.Create => logger.MessageWhenCreated, AuditableLogTypesEnum.Update => logger.MessageWhenUpdated, AuditableLogTypesEnum.Delete => logger.MessageWhenDeleted, _ => throw new AuditableLogException($"Valor {auditLogTypesEnum} não configurado") }; AuditLogType = (int)auditLogTypesEnum; CreatedById = createdById; CreatedBy = createdBy; CreatedOn = DateTime.Now; }