public AuditSubjectReviewViewModel GetAuditSubjectReview(int AuditSubjectID, int AuditSubjectReviewID, int LoggedInUserId, int LoggedInOrganizationId) { var audsubrev = GetSingle(AuditSubjectID, AuditSubjectReviewID, LoggedInOrganizationId); AuditSubjectReviewViewModel model = Mapper.Map <AuditSubjectReview, AuditSubjectReviewViewModel>(audsubrev); if (audsubrev.AuditSubject != null) { model.Subject = audsubrev.AuditSubject.Subject; } foreach (var qr in audsubrev.AuditSubjectQuestionResponses) { AuditSubjectReviewQuestionViewModel qrViewModel = model.AuditSubjectQuestionResponses.FirstOrDefault(x => x.AuditSubjectQuestionResponseID == qr.AuditSubjectQuestionResponseID); qrViewModel.QuestionText = qr.AuditSubjectQuestion.QuestionText; if (qr.ObservationStatus == "OB") { qrViewModel.Observation = true; } else if (qr.ObservationStatus == "NC") { qrViewModel.NonCompliance = true; } else if (qr.ObservationStatus == "None") { qrViewModel.None = true; } } return(model); }
public void UpdateAuditSubQueResMaterial(AuditSubjectReviewQuestionViewModel model) { var _auditreviewQusRes = GetSingle(model.AuditSubjectQuestionResponseID); _auditreviewQusRes.ImagePath = model.ImagePath; _auditreviewQusRes.ImageName = model.ImageName; base.Update(_auditreviewQusRes); this._unitOfWork.Save(); }
public async Task <HttpResponseMessage> SaveMaterial() { AuditSubjectReviewQuestionViewModel model = new AuditSubjectReviewQuestionViewModel(); // Send OK Response along with saved file names to the client. var provider = await Request.Content.ReadAsMultipartAsync <InMemoryMultipartFormDataStreamProvider>(new InMemoryMultipartFormDataStreamProvider()); //access form data NameValueCollection formData = provider.FormData; model.AuditSubjectQuestionResponseID = Convert.ToInt32(formData["AuditSubjectQuestionResponseID"]); //access files IList <HttpContent> files = provider.Files; if (files != null && files.Count > 0) { HttpContent file1 = files[0]; var thisFileName = file1.Headers.ContentDisposition.FileName.Trim('\"'); model.ImageName = thisFileName; string filename = String.Empty; Stream input = await file1.ReadAsStreamAsync(); string directoryName = String.Empty; string URL = String.Empty; var path = HttpRuntime.AppDomainAppPath; directoryName = System.IO.Path.Combine(path, "AuditSubjectQuestionResponseDocument"); filename = System.IO.Path.Combine(directoryName, thisFileName); string ext = Path.GetExtension(filename); string guid = Guid.NewGuid().ToString(); //model.FileExtension = ext; filename = System.IO.Path.Combine(directoryName, guid + ext); //Deletion exists file if (File.Exists(filename)) { File.Delete(filename); } Directory.CreateDirectory(@directoryName); using (Stream file = File.Create(filename)) { input.CopyTo(file); //close file file.Close(); } model.ImagePath = "~/AuditSubjectQuestionResponseDocument/" + guid + ext; } this._IAuditSubjectQuestionResponseRepository.UpdateAuditSubQueResMaterial(model); var response = Request.CreateResponse(HttpStatusCode.OK); return(response); }
private void GenerateAuditSubjectReview(AuditSubject z, DateTime duedate) { List <DateTime> occurences = CommonMethods.GenerateAllDateFromCronExpression(z.FrequencyRecurrence, DateTime.Now, duedate); List <AuditSubjectReview> storedallsubrev = _IAuditSubjectReviewRepository.GetAllSubjectReview(z.AuditSubjectID, z.OrganizationID ?? 0); foreach (var sr in storedallsubrev) { bool isExist = occurences.Any(x => x == sr.PlannedAuditDate); if (!isExist) { _IAuditSubjectReviewRepository.Delete(sr.AuditSubjectReviewID); } } this._unitOfWork.Save(); foreach (DateTime auditdate in occurences) { bool isExist = storedallsubrev.Any(x => x.PlannedAuditDate == auditdate); if (!isExist) { AuditSubjectReviewViewModel subrev = new AuditSubjectReviewViewModel(); subrev.AuditID = z.AuditID; subrev.SubjectID = z.AuditSubjectID; subrev.PlannedAuditDate = auditdate; subrev.AuditDate = null; subrev.AuditorID = z.AuditorID; subrev.AuditeeID = z.AuditeeID; subrev.LocationID = z.Location; List <AuditSubjectQuestion> listauditsubjectqus = _IAuditSubjectQuestionRepository.GetAuditSubjectQuestionBuSubjectId(z.AuditSubjectID); foreach (var asubqus in listauditsubjectqus) { AuditSubjectReviewQuestionViewModel asubqusres = new AuditSubjectReviewQuestionViewModel(); asubqusres.AuditSubjectQuestionID = asubqus.AuditSubjectQuestionID; subrev.AuditSubjectQuestionResponses.Add(asubqusres); } subrev.Status = false; _IAuditSubjectReviewRepository.AddUpdateAuditReview(subrev, 0, z.OrganizationID ?? 0); } } }