public void Save(ChaperoneSignature domain) { using (var adapter = PersistenceLayer.GetDataAccessAdapter()) { var entity = Mapper.Map <ChaperoneSignature, ChaperoneSignatureEntity>(domain); DeactivateAll(domain.EventCustomerId); if (!adapter.SaveEntity(entity)) { throw new PersistenceFailureException("Unable to save Chaperone Signature."); } } }
public bool SaveAnswers(ChaperoneFormModel model, long orgRoleUserId) { var evenntCustomer = _eventCustomerRepository.GetById(model.EventCustomerId); if (evenntCustomer == null) { return(false); } var signatureLocation = _mediaRepository.GetChaperoneSignatureLocation(evenntCustomer.EventId, evenntCustomer.CustomerId); var version = _chaperoneSignatureRepository.GetLatestVersion(model.EventCustomerId); var answers = new List <ChaperoneAnswerModel>(); if (!model.CustomerAnswers.IsNullOrEmpty()) { answers.AddRange(model.CustomerAnswers); } if (!answers.IsNullOrEmpty()) { var chaperoneAnswers = new List <ChaperoneAnswer>(); var answerVersion = _chaperoneAnswerRepository.GetLatestVersion(model.EventCustomerId); foreach (var answer in answers) { var chaperoneAnswer = new ChaperoneAnswer { EventCustomerId = model.EventCustomerId, QuestionId = answer.QuestionId, Answer = answer.Answer, Version = answerVersion + 1, IsActive = true, DateCreated = DateTime.Now, CreatedBy = orgRoleUserId }; chaperoneAnswers.Add(chaperoneAnswer); } _chaperoneAnswerRepository.SaveAnswer(chaperoneAnswers); } var chaperoneSignature = new ChaperoneSignature { EventCustomerId = model.EventCustomerId, Version = version, IsActive = true, CreatedBy = orgRoleUserId, DateCreated = DateTime.Now }; if (!string.IsNullOrWhiteSpace(model.PatientSignatureBytes)) { var fileName = "PatientSignature_" + Guid.NewGuid() + ".jpg"; var patientImageFile = SaveSignatureImage(model.PatientSignatureBytes, orgRoleUserId, signatureLocation, fileName); chaperoneSignature.SignatureFileId = patientImageFile.Id; } if (!string.IsNullOrWhiteSpace(model.StaffSignatureBytes)) { var fileName = "StaffSignature_" + Guid.NewGuid() + ".jpg"; var patientImageFile = SaveSignatureImage(model.StaffSignatureBytes, orgRoleUserId, signatureLocation, fileName); chaperoneSignature.StaffSignatureFileId = patientImageFile.Id; } _chaperoneSignatureRepository.Save(chaperoneSignature); return(true); }