public async Task <Employee> AuthenticationAsync(dynamic request)
        {
            Employee employee = Converter.ConvertTo <Employee>(request);

            var validateUsername = EmployeeScope.ValidateUsername(employee);

            if (!validateUsername.Any())
            {
                var employeeAuth = _employeeService.AuthenticationByUsernameAsync(employee);
                if (employeeAuth?.Result != null)
                {
                    return(await employeeAuth);
                }

                AddNotification("Employee", string.Format(Messages.ERROR_INVALID_AUTHENTICATION, "username/password"));
                return(null);
            }


            if (validateUsername.Any())
            {
                AddNotification("Employee", Messages.ERROR_AUTHENTICATION_ISNULL);
            }

            else if (validateUsername.Any())
            {
                AddNotifications(validateUsername);
            }

            return(null);
        }
Exemple #2
0
        public void Test1()
        {
            var anemicModel = Employee.CreateTest(NewComplexKey());
            var operations  = new List <IAggregateBusinessOperation <IEmployee> >
            {
                new Create(),
                new ChangeSecondName(),
            };
            var validators = new[] { new NamesValidator(), }.ToList();
            var scope     = new EmployeeScope(operations, validators);
            var aggregate = Aggregate <IEmployee> .CreateInstance(anemicModel, scope);

            var create = aggregate.Operations.TryGetValue(nameof(Create), out var operation) ? operation : null;

            Assert.NotNull(create);
            var aggregateCreateResult = create.Handle(anemicModel, NewCommand(), scope);

            Assert.NotNull(aggregateCreateResult);

            var aggregateResult = aggregateCreateResult.Aggregate
                                  .Operations[nameof(ChangeSecondName)]
                                  .Handle(Employee.CreateChangeNameTest(NewComplexKey()), NewCommand(), scope);

            Assert.NotNull(aggregateResult);
        }