public IHttpActionResult DeleteInformedConsent(int id)
        {
            LinkSubjectStudyInformedConsent consent = db.LinkSubjectStudyInformedConsents.Find(id);

            if (consent == null)
            {
                return(NotFound());
            }

            db.LinkSubjectStudyInformedConsents.Remove(consent);
            db.SaveChanges();

            return(Ok(consent));
        }
        public IHttpActionResult PutPateintConsent(int id, LinkedInformedConsentViewModel informedConsentVM)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != informedConsentVM.SubjectStudyInformedConsentLinkId)
            {
                return(BadRequest());
            }

            var informedConsent = new LinkSubjectStudyInformedConsent()
            {
                SubjectStudyInformedConsentLinkId = informedConsentVM.SubjectStudyInformedConsentLinkId,
                SubjectStudyLinkId = informedConsentVM.SubjectStudyLinkId,
                InformedConsentId  = informedConsentVM.InformedConsentId,
                VerbalConsentDate  = informedConsentVM.VerbalConsentDate,
                VerbalConsentBy    = informedConsentVM.VerbalConsentBy,
                WrittenConsentDate = informedConsentVM.WrittenConsentDate,
                WrittenConsentBy   = informedConsentVM.WrittenConsentBy,
                Status             = informedConsentVM.Status
            };

            db.Entry(informedConsent).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!PersonExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
        public IHttpActionResult PostPateintConsents(LinkedInformedConsentViewModel informedConsentVM)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var informedConsent = new LinkSubjectStudyInformedConsent()
            {
                SubjectStudyLinkId = informedConsentVM.SubjectStudyLinkId,
                InformedConsentId  = informedConsentVM.InformedConsentId,
                VerbalConsentDate  = informedConsentVM.VerbalConsentDate,
                VerbalConsentBy    = informedConsentVM.VerbalConsentBy,
                WrittenConsentDate = informedConsentVM.WrittenConsentDate,
                WrittenConsentBy   = informedConsentVM.WrittenConsentBy,
                Status             = informedConsentVM.Status
            };

            // var informedConsent = Mapper.Map<LinkedInformedConsentViewModel, LinkSubjectStudyInformedConsent>(informedConsentVM);
            db.LinkSubjectStudyInformedConsents.Add(informedConsent);
            db.SaveChanges();

            return(Ok(informedConsent));
        }