public FirstNoticeOfLossEditViewModel GetAllDocuments(FirstNoticeOfLossEditViewModel model) { var allInvoices = _fis.GetInvoiceDocumentName(model.Id); model.Invoices = new List <FileDescriptionViewModel>(); foreach (var invoice in allInvoices) { var file = new FileDescriptionViewModel(); file.FileName = invoice; file.FilePath = "~/DocumentsFirstNoticeOfLoss/Invoices/" + file.FileName; model.Invoices.Add(file); } var isHealthInsurance = _fis.IsHealthInsuranceByAdditionalInfoId(model.AdditionalInfoId); var allDoc = _fis.GetHealthLuggageDocumentName(model.Id); model.InsuranceInfoDoc = new List <FileDescriptionViewModel>(); foreach (var doc in allDoc) { var file = new FileDescriptionViewModel(); file.FileName = doc; file.FilePath = isHealthInsurance ? "~/DocumentsFirstNoticeOfLoss/HealthInsurance/" + file.FileName : "~/DocumentsFirstNoticeOfLoss/LuggageInsurance/" + file.FileName; model.InsuranceInfoDoc.Add(file); } return(model); }
public ActionResult Edit(FirstNoticeOfLossEditViewModel model, IEnumerable <HttpPostedFileBase> invoices, IEnumerable <HttpPostedFileBase> documentsHealth, IEnumerable <HttpPostedFileBase> documentsLuggage) { if (model.AccidentDateTimeHealth < model.DepartDateTime || model.AccidentDateTimeHealth > model.ArrivalDateTime) { ViewBag.Message = InsuredTraveling.Resource.FNOL_AccidentDateTimeHealthWrongRange; model = GetAllDocuments(model); return(View(model)); } if (model.DoctorVisitDateTime < model.DepartDateTime || model.DoctorVisitDateTime > model.ArrivalDateTime) { ViewBag.Message = InsuredTraveling.Resource.FNOL_DoctorVisitDateTimehWrongRange; model = GetAllDocuments(model); return(View(model)); } if (model.AccidentDateTimeLuggage < model.DepartDateTime || model.AccidentDateTimeLuggage > model.ArrivalDateTime) { ViewBag.Message = InsuredTraveling.Resource.FNOL_AccidentDateTimeHealthWrongRange; model = GetAllDocuments(model); return(View(model)); } model.PolicyHolderBankAccountNumber = model.PolicyHolderBankAccountNumber.Trim(); model.ClaimantBankAccountNumber = model.ClaimantBankAccountNumber.Trim(); model.ModifiedBy = _us.GetUserIdByUsername(System.Web.HttpContext.Current.User.Identity.Name); UpdateFirstNoticeOfLossHelper.UpdateFirstNoticeOfLoss(model, _fis, _bas, _ais, _his, _lis, _firstNoticeLossArchiveService, invoices, documentsHealth, documentsLuggage); return(RedirectToAction("View", new { id = model.Id })); }
public ActionResult Edit(int?id) { var model = new FirstNoticeOfLossEditViewModel(); if (id != null && id != 0) { var data = _fis.GetById(Convert.ToInt32(id)); model = Mapper.Map <first_notice_of_loss, FirstNoticeOfLossEditViewModel>(data); //for filling the dropdown lists for existent banks model.ClaimantBankAccounts = _bas.BankAccountsByInsuredId(model.ClaimantId); model.PolicyHolderBankAccounts = _bas.BankAccountsByInsuredId(model.PolicyHolderId); //documents and invoices model.Invoices = new List <FileDescriptionViewModel>(); model.InsuranceInfoDoc = new List <FileDescriptionViewModel>(); model = GetAllDocuments(model); } return(View(model)); }
public static void UpdateAdditionalInfo(FirstNoticeOfLossEditViewModel model, IFirstNoticeOfLossService _fnol, IAdditionalInfoService _ais, ILuggageInsuranceService _lis, IHealthInsuranceService _his) { var fnol = _fnol.GetById(model.Id); var additionalInfo = fnol.additional_info; if (fnol.additional_info.health_insurance_info != null) { var healthInfo = fnol.additional_info.health_insurance_info; additionalInfo.Accident_place = model.AccidentPlaceHealth; additionalInfo.Datetime_accident = model.AccidentDateTimeHealth ?? new DateTime(0, 0, 0); additionalInfo.Datetime_accident.Add(model.AccidentTimeHealth ?? new TimeSpan(0, 0, 0)); healthInfo.Datetime_doctor_visit = model.DoctorVisitDateTime; healthInfo.Doctor_info = model.DoctorInfo; healthInfo.Medical_case_description = model.MedicalCaseDescription; healthInfo.Previous_medical_history = model.PreviousMedicalHistory; healthInfo.Responsible_institution = model.ResponsibleInstitution; _ais.UpdateAdditionalAndHealthInfo(additionalInfo, healthInfo); } else { var luggageInfo = fnol.additional_info.luggage_insurance_info; additionalInfo.Accident_place = model.AccidentPlaceLuggage; additionalInfo.Datetime_accident = model.AccidentDateTimeLuggage ?? new DateTime(0, 0, 0); //additionalInfo.Datetime_accident.Add(model.AccidentTimeLuggage ?? new TimeSpan(0, 0, 0)); var a = additionalInfo.Datetime_accident.Date + model.AccidentTimeLuggage; additionalInfo.Datetime_accident = a ?? new DateTime(0, 0, 0); luggageInfo.Place_description = model.PlaceDescription; luggageInfo.Detail_description = model.DetailDescription; luggageInfo.Report_place = model.ReportPlace; luggageInfo.Floaters = model.Floaters; luggageInfo.Floaters_value = Int64.Parse(model.FloatersValue); luggageInfo.Luggage_checking_Time = model.LugaggeCheckingTime ?? new TimeSpan(0, 0, 0); _ais.UpdateAdditionalAndLuggageInfo(additionalInfo, luggageInfo); } }
public static void UpdateFirstNoticeOfLoss(FirstNoticeOfLossEditViewModel model, IFirstNoticeOfLossService _fnol, IBankAccountService _bas, IAdditionalInfoService _ais, IHealthInsuranceService _his, ILuggageInsuranceService _lis, IFirstNoticeOfLossArchiveService _firstNoticeLossArchive, IEnumerable <HttpPostedFileBase> invoices, IEnumerable <HttpPostedFileBase> documentsHealth, IEnumerable <HttpPostedFileBase> documentsLuggage) { var fnol = _fnol.GetById(model.Id); //bank accounts update var isArchived = ArchiveFirstNoticeOfLossHelper.ArchiveFirstNoticeOfLoss(fnol, model.ModifiedBy, _fnol, _firstNoticeLossArchive); if (!fnol.Claimant_bank_account_info.Account_Number.ToString().Equals(model.ClaimantBankAccountNumber) || !fnol.Claimant_bank_account_info.bank.Name.Equals(model.ClaimantBankName)) { var bankAccountId = UpdateBankAccountInfoHelper.UpdateBankAccountInfo(fnol.Claimant_bank_accountID, model.ClaimantBankAccountNumber.Trim(), model.ClaimantBankName, fnol.ClaimantId, _bas); _fnol.UpdateClaimantBankAccountId(fnol.ID, bankAccountId); } if (!fnol.Policy_holder_bank_account_info.Account_Number.ToString().Equals(model.PolicyHolderBankAccountNumber) || !fnol.Policy_holder_bank_account_info.bank.Name.Equals(model.PolicyHolderBankName)) { var bankAccountId = UpdateBankAccountInfoHelper.UpdateBankAccountInfo(fnol.Policy_holder_bank_accountID, model.PolicyHolderBankAccountNumber.Trim(), model.PolicyHolderBankName, fnol.travel_policy.Policy_HolderID, _bas); _fnol.UpdatePolicyHolderBankAccountId(fnol.ID, bankAccountId); } UpdateAdditionalInfoHelper.UpdateAdditionalInfo(model, _fnol, _ais, _lis, _his); //jos vkupna vrednost i dokumenti var newFnol = fnol; newFnol.Modified_Datetime = DateTime.Now; newFnol.ModifiedBy = model.ModifiedBy; newFnol.Destination = model.Destination; newFnol.Depart_Date_Time = model.DepartDateTime.Date; newFnol.Depart_Date_Time = model.DepartDateTime.Date + (model.DepartTime ?? new TimeSpan(0, 0, 0)); //newFnol.Depart_Date_Time = new DateTime(model.DepartDateTime.Year,); newFnol.Arrival_Date_Time = model.ArrivalDateTime.Date; newFnol.Arrival_Date_Time = model.ArrivalDateTime.Date + (model.ArriveTime ?? new TimeSpan(0, 0, 0)); newFnol.Transport_means = model.TransportMeans; newFnol.Relation_claimant_policy_holder = model.RelationClaimantPolicyHolder; newFnol.Total_cost = model.TotalCost; _fnol.Update(newFnol); if (invoices != null) { foreach (var file in invoices) { if (file != null && file.ContentLength > 0) { var path = @"~/DocumentsFirstNoticeOfLoss/Invoices/" + file.FileName; file.SaveAs(System.Web.HttpContext.Current.Server.MapPath(path)); var document = new document(); document.Name = file.FileName; var documentID = _fnol.AddDocument(document); _fnol.AddInvoice(documentID); _fnol.AddDocumentToFirstNoticeOfLoss(documentID, fnol.ID); } } } if (documentsHealth != null) { foreach (var file in documentsHealth) { if (file != null && file.ContentLength > 0) { var path = @"~/DocumentsFirstNoticeOfLoss/HealthInsurance/" + file.FileName; file.SaveAs(System.Web.HttpContext.Current.Server.MapPath(path)); var document = new document(); document.Name = file.FileName; var documentID = _fnol.AddDocument(document); _fnol.AddDocumentToFirstNoticeOfLoss(documentID, fnol.ID); } } } if (documentsLuggage != null) { foreach (var file in documentsLuggage) { if (file != null && file.ContentLength > 0) { var path = @"~/DocumentsFirstNoticeOfLoss/LuggageInsurance/" + file.FileName; file.SaveAs(System.Web.HttpContext.Current.Server.MapPath(path)); var document = new document(); document.Name = file.FileName; var documentID = _fnol.AddDocument(document); _fnol.AddDocumentToFirstNoticeOfLoss(documentID, fnol.ID); } } } }