Пример #1
0
        public AuthResponse RegisterGraduate(GraduateRegisterVM graduate)
        {
            var dbUser  = this._repository.Users.FindByLoginPassword(graduate.User.Login.Login, graduate.User.Login.Password);
            var context = new AuthResponse();

            if (dbUser == null)
            {
                var entity         = this._mapper.Map <Graduate>(graduate);
                var journal        = new GraduateJournal();
                var educationPhase = new EducationPhase();
                var attestaion     = new Attestation();
                attestaion.DepartmentProtocol = new Protocol();
                attestaion.CommissionProtocol = new Protocol();
                educationPhase.Attestations.Add(attestaion);

                journal.EducationYears.Add(educationPhase);
                journal.RationalInfo.Protocol = new Protocol();
                journal.WorkPlans.Add(new WorkPlan());

                entity.GraduateJournals.Add(journal);
                entity.User.RoleId = this.GetOrAddRole(RoleNames.Graduate);

                this._repository.Graduates.Add(entity);
                this._repository.Save();

                context.User                 = this._mapper.Map <UserContext>(entity.User);
                context.User.Role            = RoleNames.Graduate;
                context.User.SpecifiedUserId = entity.GraduateId;

                return(context);
            }

            context.Alert = Config.LoginExist;
            return(context);
        }
Пример #2
0
        public IActionResult RegisterGraduate([FromBody] GraduateRegisterVM graduate)
        {
            if (graduate is null)
            {
                return(Ok(new { Alert = Config.BadRequest }));
            }

            var authContext = this._userManager.RegisterGraduate(graduate);

            if (authContext.User != null)
            {
                authContext.Token = this._tokenProvider.GenerateToken(authContext.User.Login, authContext.User.Role);
                return(Ok(authContext));
            }

            return(Ok(authContext));
        }