public IHttpActionResult AdmitEnquiry(string referenceId, [FromBody] ResidentRequest resident)
        {
            if (resident == null || string.IsNullOrEmpty(referenceId))
            {
                return(BadRequest("Missing resident data or reference id"));
            }
            if (!GuidConverter.IsValid(resident.EnquiryReferenceId.ToString()))
            {
                return(BadRequest("Connot convert enquiry refence id"));
            }
            if (resident.AdmissionDate == null || resident.AdmissionDate.ToString() == "")
            {
                return(BadRequest("Missing admission date"));
            }

            // ensure enquiry exists?
            var enqExists = _enquiryService.GetByReferenceId(resident.EnquiryReferenceId);

            if (enqExists == null)
            {
                return(BadRequest("Cannot locate enquiry in database. Please verify data"));
            }

            var loggedInUser = HttpContext.Current.User as SecurityPrincipal;

            logger.Info($"Admit an enquiry by {loggedInUser.ForeName}");
            resident.UpdatedBy = loggedInUser.Id;

            var updEnquiry = _residentService.AdmitEnquiry(resident);

            return(Ok(updEnquiry));
        }
Exemple #2
0
        public IHttpActionResult Create([FromBody] Models.ResidentRequest resident)
        {
            // for test database
            var user = _userService.GetUsers().Where(u => u.ForeName == "Major").FirstOrDefault();

            resident.UpdatedBy = user.Id;

            _residentService.AdmitEnquiry(resident);
            return(Created("", "test resident created"));
        }