void AddContract() { // Получаем номер int num = 0; var col = Session.DataModel.EntrantContracts.ToList(); if (col.Count > 0) { num = (from c in col select int.Parse(c.Number.WithoutLetters())).Max(); } // Создаем договор var contract = new EntrantContract { Date = DateTime.Now, Entrant = SelectedClaim.Person, Number = string.Format("{0}{1}{2}", num + 1, SelectedClaim.FirstDirection.ShortName, SelectedClaim.EducationForm.Name[0]) }; // Создаем ВМ и редактор var vm = new EntrantContractEditorViewModel(contract); if (DialogLayer.ShowEditor(EditingContent.EntrantContract, vm)) { SelectedClaim.Entrants.First().EntrantContracts.Add(contract); Session.DataModel.SaveChanges(); } }
/// <summary> /// Возвращает заявление, в котором Ф.И.О. абитуриента содержит входной параметр (регистронезависимо) /// </summary> /// <param name="entrantName">Ф.И.О. абитуриента</param> /// <returns></returns> EntrantContract GetClaimByEntrantName(string entrantName) { string searchedValue = entrantName.ToLower(); EntrantContract searchResult = null; foreach (var contract in Contracts) { var claim = contract.Entrant.Claim; var entrant = claim.Entrants.First(); string currentValue = string.Format("{0} {1} {2}", entrant.LastName, entrant.FirstName, entrant.Patronymic); currentValue = currentValue.ToLower(); if (currentValue.Contains(searchedValue)) { searchResult = contract; break; } } return(searchResult); }
public EntrantContractDocument(EntrantContract contract) { _contract = contract; DocumentType = OpenXmlDocumentType.Document; }
public EntrantContractEditorViewModel(EntrantContract contract) { Contract = contract; }