private NavSubdivision getSubdivision(UserConnection userConnection, string name) { var esq = new EntitySchemaQuery(userConnection.EntitySchemaManager, "NavSubdivision"); esq.UseAdminRights = false; esq.AddAllSchemaColumns(); esq.Filters.Add(esq.CreateFilterWithParameters(FilterComparisonType.Equal, "NavName", name)); var collection = esq.GetEntityCollection(userConnection); NavSubdivision result; if (collection.IsEmpty()) { _logger.Info("Подразделение не " + name + " найдено."); result = new NavSubdivision(userConnection); result.UseAdminRights = false; result.SetDefColumnValues(); result.NavName = name; result.Save(); _logger.Info("Создали новую запись в Бд."); } else { result = (NavSubdivision)collection.First(); } return(result); }
private NavSubdivisionEmployee CreateSubEmployee(UserConnection userConnection, Contact contact, NavSubdivision subdivision, int subdivisonNumber) { _logger.Info("Создаем новую запись в развязочной таблице"); var subEmployee = new NavSubdivisionEmployee(userConnection); subEmployee.UseAdminRights = false; subEmployee.SetDefColumnValues(); subEmployee.NavContactId = contact.Id; subEmployee.NavSubdivisionNavName = subdivision.NavName; subEmployee.NavNumber = subdivisonNumber; subEmployee.NavSubdivisionId = subdivision.Id; subEmployee.NavSynchronizedWithLDAP = true; subdivision.Save(); _logger.Info("Создалась новая запись."); return(subEmployee); }