namespace WebApplication1;
privateLimitedCompany = 3
public bool AddUser(string firname, string secondname, ClientType status, string email, DateTime birthdate, int clientId) {
if (string.IsNullOrEmpty(firname) || string.IsNullOrEmpty(secondname))
if (!CheckEmail(email)) return false;
int age = n.Year - birthdate.Year;
if (n.Month < birthdate.Month || (n.Month == birthdate.Month && n.Day < birthdate.Day))
var repo = new ClientRepository();
var client = repo.GetById(clientId);
if (client.Title == "VeryImportantClient")
using (var userCreditService = new UserCreditServiceClient())
var creditLimit = userCreditService.GetCreditLimit(user.Firstname, user.Surname, user.DateOfBirth);
if (creditLimit != null || creditLimit > 0)
userCreditService.SetCreditLimit(user.Firstname, user.Surname, user.DateOfBirth, -1);
user.HasCreditLimit = false;
else if (client.Title == "ImportantClient")
user.HasCreditLimit = true;
using (var userCreditService = new UserCreditServiceClient())
var creditLimit = userCreditService.GetCreditLimit(user.Firstname, user.Surname, user.DateOfBirth);
creditLimit = creditLimit * 2;
user.CreditLimit = creditLimit;
user.HasCreditLimit = true;
using (var userCreditService = new UserCreditServiceClient())
var creditLimit = userCreditService.GetCreditLimit(user.Firstname, user.Surname, user.DateOfBirth);
user.CreditLimit = creditLimit;
if (user.HasCreditLimit && user.CreditLimit < 500)
UserDataAccess.AddUser(user);
public bool CheckEmail(string email) {
bool valid = email.Contains("@") && !email.Contains(".");