/// <summary> /// The get vizit. /// </summary> /// <param name="statement"> /// The statement. /// </param> /// <returns> /// The <see cref="VizitType"/> . /// </returns> protected virtual VizitType GetVizit(Statement statement) { var vizit = new VizitType(); vizit.DVIZIT = statement.DateFiling.HasValue ? statement.DateFiling.Value.ToShortDateString() : string.Empty; vizit.PETITION = statement.HasPetition.HasValue ? Convert.ToInt32(statement.HasPetition.Value) : 0; if (statement.ModeFiling != null) { vizit.METHOD = statement.ModeFiling.Code; } if (statement.FormManufacturing != null) { if (statement.AbsentPrevPolicy.HasValue && statement.AbsentPrevPolicy.Value) { vizit.FPOLIS = statement.FormManufacturing.Code; } } if (statement.CauseFiling != null) { if (CauseReinsurance.IsReinsurance(statement.CauseFiling.Id)) { vizit.RSMO = statement.CauseFiling.Code; } else { vizit.RPOLIS = statement.CauseFiling.Code; } } return(vizit); }
/// <summary> /// Заполняет информацию о факте посещения СМО /// </summary> /// <param name="vizit"> /// The vizit. /// </param> /// <param name="statement"> /// The statement. /// </param> protected virtual void FillVizit(VizitType vizit, Statement statement) { var conceptManager = ObjectFactory.GetInstance <IConceptCacheManager>(); DateTime dateFilling; if (!string.IsNullOrEmpty(vizit.DVIZIT) && DateTime.TryParse(vizit.DVIZIT, out dateFilling)) { statement.DateFiling = dateFilling; } statement.HasPetition = vizit.PETITION > 0; // Способ подачи if (!string.IsNullOrEmpty(vizit.METHOD)) { statement.ModeFiling = conceptManager.GetBy(x => x.Code == vizit.METHOD && x.Oid.Id == Oid.Способподачизаявления).FirstOrDefault(); } // Форма полиса if (!string.IsNullOrEmpty(vizit.FPOLIS)) { statement.FormManufacturing = conceptManager.GetBy(x => x.Code == vizit.FPOLIS && x.Oid.Id == Oid.Формаизготовленияполиса).FirstOrDefault(); } // Причина подачи if (!string.IsNullOrEmpty(vizit.RPOLIS)) { statement.CauseFiling = conceptManager.GetBy(x => x.Code == vizit.RPOLIS && x.Oid.Id == Oid.ПричинаподачизаявлениянавыборилизаменуСмо) .FirstOrDefault(); } else { if (!string.IsNullOrEmpty(vizit.RSMO)) { statement.CauseFiling = conceptManager.GetBy(x => x.Code == vizit.RSMO && x.Oid.Id == Oid.Причинаподачизаявлениянавыдачудубликата) .FirstOrDefault(); } } }