Example #1
0
        public async Task <IActionResult> Update([FromBody] ViewModels.Registration item, string id)
        {
            // the id must be included in the route, the registration must be included, the id on the route must match the one in the payload
            if (string.IsNullOrWhiteSpace(id) || item == null || id != item.Id)
            {
                return(BadRequest(id));
            }
            // if the declaration and consent flag is not set or is false the poster should fix this because they have not provided consent so we cannot accept their registration.
            if (!item.DeclarationAndConsent.HasValue || !item.DeclarationAndConsent.Value)
            {
                ModelState.AddModelError("DeclarationAndConsent", "Declaration And Consent must be set to 'True'");
            }

            // the model must be valid
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            // the external user identifier gets set to the user ID included in the claim
            item.CompletedBy = httpContextAccessor?.HttpContext?.User?.FindFirstValue(EssClaimTypes.USER_ID) ?? "System";

            // update the registration
            await mediator.Send(new UpdateRegistrationCommand(item));

            // return 200
            return(Ok());
        }
Example #2
0
        public async Task <IActionResult> Register(ViewModels.Registration model)
        {
            if (ModelState.IsValid)
            {
                User user = new User {
                    Email = model.Email, UserName = model.Email, Nick = model.Nick, Rep = 0
                };
                // добавляем пользователя
                var result = await _userManager.CreateAsync(user, model.Password);

                if (result.Succeeded)
                {
                    // установка куки
                    await _signInManager.SignInAsync(user, false);

                    return(RedirectToAction("Index", "Post"));
                }
                else
                {
                    foreach (var error in result.Errors)
                    {
                        ModelState.AddModelError(string.Empty, error.Description);
                    }
                }
            }
            return(View(model));
        }
Example #3
0
 public static RegistrationQueryResponse Success(ViewModels.Registration registration)
 {
     return(new RegistrationQueryResponse
     {
         Status = ResponseStatus.Success,
         Registration = registration
     });
 }
        public async Task <IActionResult> Create([FromBody] ViewModels.Registration item)
        {
            if (item != null && (!item.DeclarationAndConsent.HasValue || !item.DeclarationAndConsent.Value))
            {
                ModelState.AddModelError("DeclarationAndConsent", "Declaration And Consent must be set to 'True'");
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            return(Json(await mediator.Send(new CreateNewRegistrationCommand(item))));
        }
        private Models.Registration CreateRegistration(ViewModels.Registration registration)
        {
            string classCode   = registration.ClassCode;
            var    courseClass = Context.CourseClass
                                 .Include(cc => cc.Course)
                                 .Where(cc => cc.CourseClassCode == classCode)
                                 .FirstOrDefault();
            var convertedRegistration = new Models.Registration()
            {
                Status        = true,
                SemesterId    = registration.Semester,
                StudentId     = registration.StudentId,
                CourseId      = courseClass.Course.Id,
                CourseClassId = courseClass.CourseClassId
            };

            return(convertedRegistration);
        }
Example #6
0
        public static ViewModels.Registration ToViewModel(this Models.Db.EvacueeRegistration source)
        {
            var result = new ViewModels.Registration
            {
                Id                          = source.EssFileNumber.ToString(),
                Active                      = source.Active,
                EssFileNumber               = source.EssFileNumber,
                RestrictedAccess            = source.RestrictedAccess,
                RegisteringFamilyMembers    = source.RegisteringFamilyMembers,
                DietaryNeeds                = source.DietaryNeeds,
                DietaryNeedsDetails         = source.DietaryNeedsDetails,
                MedicationNeeds             = source.MedicationNeeds,
                HasThreeDayMedicationSupply = source.HasThreeDayMedicationSupply,
                HasPets                     = source.HasPets,
                InsuranceCode               = source.InsuranceCode,
                RequiresSupport             = source.RequiresSupport,
                RequiresFood                = source.RequiresFood,

                RequiresClothing       = source.RequiresClothing,
                RequiresAccommodation  = source.RequiresAccommodation,
                RequiresIncidentals    = source.RequiresIncidentals,
                RequiresTransportation = source.RequiresTransportation,
                Facility = source.Facility,
                DisasterAffectDetails       = source.DisasterAffectDetails,
                ExternalReferralsDetails    = source.ExternalReferralsDetails,
                FamilyRecoveryPlan          = source.FamilyRecoveryPlan,
                InternalCaseNotes           = source.FollowUpDetails,
                HasInquiryReferral          = source.HasInquiryReferral,
                HasHealthServicesReferral   = source.HasHealthServicesReferral,
                HasFirstAidReferral         = source.HasFirstAidReferral,
                HasPersonalServicesReferral = source.HasPersonalServicesReferral,
                HasChildCareReferral        = source.HasChildCareReferral,
                HasPetCareReferral          = source.HasPetCareReferral,
                SelfRegisteredDate          = source.SelfRegisteredDate,
                RegistrationCompletionDate  = source.RegistrationCompletionDate,
                HeadOfHousehold             = source.Evacuees.Single(e => e.EvacueeType == EvacueeType.HeadOfHousehold).ToViewModel(source) as ViewModels.HeadOfHousehold,
                HostCommunity         = mapper.Map <ViewModels.Community>(source.HostCommunity),
                IncidentTask          = source.IncidentTask?.ToViewModel(),
                DeclarationAndConsent = source.DeclarationAndConsent,
                IsFinalized           = source.IsFinalized
            };

            return(result);
        }
Example #7
0
        public async Task <IActionResult> Create([FromBody] ViewModels.Registration item)
        {
            // if the included registration isn't null, and the consent isn't null AND is set true
            if (item != null && (!item.DeclarationAndConsent.HasValue || !item.DeclarationAndConsent.Value))
            {
                ModelState.AddModelError("DeclarationAndConsent", "Declaration And Consent must be set to 'True'");
            }
            // the model must be valid
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            // set the completedBy
            // the external user identifier is set to the user ID included in the security claim
            item.CompletedBy = httpContextAccessor?.HttpContext?.User?.FindFirstValue(EssClaimTypes.USER_ID) ?? "System";

            // return the complete registration so that the ESS number can be displayed to a self-registering user
            return(Json(await mediator.Send(new CreateNewRegistrationCommand(item))));
        }
        public async Task <IActionResult> Update([FromBody] ViewModels.Registration item, string id)
        {
            if (string.IsNullOrWhiteSpace(id) || item == null || id != item.Id)
            {
                return(BadRequest(id));
            }
            if (!item.DeclarationAndConsent.HasValue || !item.DeclarationAndConsent.Value)
            {
                ModelState.AddModelError("DeclarationAndConsent", "Declaration And Consent must be set to 'True'");
            }
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            item.CompletedBy = new ViewModels.Volunteer
            {
                Externaluseridentifier = httpContextAccessor?.HttpContext?.User?.FindFirstValue(EssClaimTypes.USER_ID)
            };

            await mediator.Send(new UpdateRegistrationCommand(item));

            return(Ok());
        }
Example #9
0
        public static Models.Db.EvacueeRegistration ToModel(this ViewModels.Registration source)
        {
            var result = new Models.Db.EvacueeRegistration
            {
                RestrictedAccess = source.RestrictedAccess,

                PhoneNumber    = source.HeadOfHousehold.PhoneNumber,
                PhoneNumberAlt = source.HeadOfHousehold.PhoneNumberAlt,
                Email          = source.HeadOfHousehold.Email,

                RegisteringFamilyMembers    = source.RegisteringFamilyMembers,
                DietaryNeeds                = source.DietaryNeeds,
                DietaryNeedsDetails         = source.DietaryNeedsDetails,
                MedicationNeeds             = source.MedicationNeeds,
                HasThreeDayMedicationSupply = source.HasThreeDayMedicationSupply,
                HasPets         = source.HasPets,
                InsuranceCode   = source.InsuranceCode,
                RequiresSupport = source.RequiresSupport,
                RequiresFood    = source.RequiresFood,

                RequiresClothing       = source.RequiresClothing,
                RequiresAccommodation  = source.RequiresAccommodation,
                RequiresIncidentals    = source.RequiresIncidentals,
                RequiresTransportation = source.RequiresTransportation,
                Facility = source.Facility,
                DisasterAffectDetails       = source.DisasterAffectDetails,
                ExternalReferralsDetails    = source.ExternalReferralsDetails,
                FamilyRecoveryPlan          = source.FamilyRecoveryPlan,
                FollowUpDetails             = source.InternalCaseNotes,
                HasInquiryReferral          = source.HasInquiryReferral,
                HasHealthServicesReferral   = source.HasHealthServicesReferral,
                HasFirstAidReferral         = source.HasFirstAidReferral,
                HasPersonalServicesReferral = source.HasPersonalServicesReferral,
                HasChildCareReferral        = source.HasChildCareReferral,
                HasPetCareReferral          = source.HasPetCareReferral,
                SelfRegisteredDate          = source.SelfRegisteredDate,
                RegistrationCompletionDate  = source.RegistrationCompletionDate,
                DeclarationAndConsent       = source.DeclarationAndConsent,
                CompletedById   = source.CompletedBy?.Externaluseridentifier,
                HostCommunityId = source.HostCommunity == null ? (Guid?)null : Guid.Parse(source.HostCommunity.Id),
                IncidentTaskId  = source.IncidentTask == null ? (Guid?)null : Guid.Parse(source.IncidentTask.Id),
            };

            result.Evacuees.Add(source.HeadOfHousehold.ToModel());
            foreach (var familyMember in source.HeadOfHousehold.FamilyMembers)
            {
                var evacuee = familyMember.ToModel();
                if (string.IsNullOrEmpty(familyMember.Id))
                {
                    evacuee.EvacueeSequenceNumber = result.Evacuees.Count() + 1;
                }
                result.Evacuees.Add(evacuee);
            }

            result.EvacueeRegistrationAddresses.Add(source.HeadOfHousehold.PrimaryResidence.ToModel(Models.Db.Enumerations.AddressType.Primary));
            if (source.HeadOfHousehold.MailingAddress != null)
            {
                result.EvacueeRegistrationAddresses.Add(source.HeadOfHousehold.MailingAddress.ToModel(Models.Db.Enumerations.AddressType.Mailing));
            }

            if (source.Id != null)
            {
                result.EssFileNumber = long.Parse(source.Id);
            }
            if (source.Active.HasValue)
            {
                result.Active = source.Active.Value;
            }

            return(result);
        }
 public RegistrationCreated(string essFileNumber, ViewModels.Registration registration) : base(essFileNumber)
 {
     Registration = registration;
 }
 public UpdateRegistrationCommand(ViewModels.Registration registration)
 {
     Registration = registration;
 }