Ejemplo n.º 1
0
        public void SaveEntityAttribute(EntityAttribute attribute, Relationship relationShip, bool isAdd)
        {
            Guid displayId = Guid.Empty;

            if (relationShip != null)
            {
                displayId             = attribute.OptionSetId ?? Guid.Empty;
                attribute.OptionSetId = null;
            }
            using (var context = KatrinEntities.CreateInstance())
            {
                context.Configuration.ProxyCreationEnabled = false;
                if (isAdd)
                {
                    context.EntityAttributes.Add(attribute);
                    AddRelationShip(relationShip, context, displayId);
                }
                else
                {
                    context.EntityAttributes.Attach(attribute);
                    context.Entry(attribute).State = EntityState.Modified;
                    DeleteRelationShip(attribute.AttributeId, context);
                    AddRelationShip(relationShip, context, displayId);
                }
                context.SaveChanges();
            }
        }
Ejemplo n.º 2
0
 public void SaveEntity(Entity entity, bool isAdd)
 {
     using (var context = KatrinEntities.CreateInstance())
     {
         context.Configuration.ProxyCreationEnabled = false;
         if (isAdd)
         {
             context.Entities.Add(entity);
         }
         else
         {
             Entity saveEntity = new Entity();
             saveEntity.EntityId       = entity.EntityId;
             saveEntity.Name           = entity.Name;
             saveEntity.PhysicalName   = entity.PhysicalName;
             saveEntity.LogicalName    = entity.LogicalName;
             saveEntity.TableName      = entity.TableName;
             saveEntity.IsAuditEnabled = entity.IsAuditEnabled;
             foreach (EntityAttribute att in entity.Attributes)
             {
                 var attribute = GetEntityAttribute(att.AttributeId);
                 attribute.IsNullable     = att.IsNullable;
                 attribute.IsPKAttribute  = att.IsPKAttribute;
                 attribute.IsAuditEnabled = att.IsAuditEnabled;
                 SaveEntityAttribute(attribute, null, false);
             }
             context.Entities.Attach(saveEntity);
             context.Entry(saveEntity).State = EntityState.Modified;
         }
         context.SaveChanges();
     }
 }
Ejemplo n.º 3
0
 public Entity GetMetaEntityById(Guid entityId)
 {
     using (var context = KatrinEntities.CreateInstance())
     {
         var query = GetMeataEntityQuery(context);
         return(query.Single(e => e.EntityId == entityId));
     }
 }
Ejemplo n.º 4
0
 public List <SavedQuery> GetSavedQuery(Guid entityId)
 {
     using (var context = KatrinEntities.CreateInstance())
     {
         context.Configuration.ProxyCreationEnabled = false;
         return(context.SavedQueries.Where(q => q.ReturnedTypeId == entityId).ToList());
     }
 }
Ejemplo n.º 5
0
 public List <OptionSet> GetOptionSet()
 {
     using (var context = KatrinEntities.CreateInstance())
     {
         context.Configuration.ProxyCreationEnabled = false;
         return(context.OptionSets.ToList());
     }
 }
Ejemplo n.º 6
0
 public List <LocalizedLabel> GetLocalizedLabels(int languageId)
 {
     using (var context = KatrinEntities.CreateInstance())
     {
         context.Configuration.ProxyCreationEnabled = false;
         return(context.LocalizedLabels.ToList());
     }
 }
Ejemplo n.º 7
0
 public EntityAttribute GetEntityAttribute(Guid attributeId)
 {
     using (var context = KatrinEntities.CreateInstance())
     {
         context.Configuration.ProxyCreationEnabled = false;
         return(context.EntityAttributes.FirstOrDefault(c => c.AttributeId == attributeId));
     }
 }
Ejemplo n.º 8
0
 public List <AttributeType> GetAttributeType()
 {
     using (var context = KatrinEntities.CreateInstance())
     {
         context.Configuration.ProxyCreationEnabled = false;
         return(context.AttributeTypes.ToList());
     }
 }
Ejemplo n.º 9
0
 public List <NotificationVariable> GetNotificationVariablesById(Guid rootVariableId)
 {
     using (var context = KatrinEntities.CreateInstance())
     {
         context.Configuration.ProxyCreationEnabled = false;
         var query = context.NotificationVariables.Where(c => c.ParentId == rootVariableId || c.NotificationVariableId == rootVariableId);
         return(query.ToList());
     }
 }
Ejemplo n.º 10
0
 public void DeleteEntityView(Guid savedQueryId)
 {
     using (var context = KatrinEntities.CreateInstance())
     {
         context.Configuration.ProxyCreationEnabled = false;
         var savedQueries = context.SavedQueries.FirstOrDefault(c => c.SavedQueryId == savedQueryId);
         context.SavedQueries.Attach(savedQueries);
         context.SavedQueries.Remove(savedQueries);
         context.SaveChanges();
     }
 }
Ejemplo n.º 11
0
 public void DeleteEntity(Guid entityId)
 {
     using (var context = KatrinEntities.CreateInstance())
     {
         context.Configuration.ProxyCreationEnabled = false;
         var entity = GetMetaEntityById(entityId);
         entity.Attributes.ToList().ForEach(c => DeleteRelationShip(c.AttributeId, context));
         context.Entities.Attach(entity);
         context.Entities.Remove(entity);
         context.SaveChanges();
     }
 }
Ejemplo n.º 12
0
 public void DeleteEntityAttribute(Guid attributeId)
 {
     using (var context = KatrinEntities.CreateInstance())
     {
         context.Configuration.ProxyCreationEnabled = false;
         var entityAttribute = GetEntityAttribute(attributeId);
         DeleteRelationShip(attributeId, context);
         context.EntityAttributes.Attach(entityAttribute);
         context.EntityAttributes.Remove(entityAttribute);
         context.SaveChanges();
     }
 }
Ejemplo n.º 13
0
 public List <OptionSetDTO> GetOptionSetById(Guid optionSetId, int languageId)
 {
     using (var context = KatrinEntities.CreateInstance())
     {
         context.Configuration.ProxyCreationEnabled = false;
         //var query = context.OptionSets
         //    .FetchMany(r=>r.AttributePicklistValues);
         var optionSetQuery = from o in context.OptionSets
                              join p in context.AttributePicklistValues.OrderBy(c => c.DisplayOrder)
                              on o.OptionSetId equals p.OptionSetId into pickupList
                              join local in context.LocalizedLabels.Where(c => c.LanguageId == languageId)
                              on o.OptionSetId equals local.ObjectId into locals
                              where o.OptionSetId == optionSetId
                              select new
         {
             optionset  = o,
             pList      = pickupList,
             localLabls = locals
         };
         return(optionSetQuery.ToList().Select(r =>
         {
             var item = new OptionSetDTO();
             var description = r.localLabls.Where(c => c.ObjectColumnName == "Description").FirstOrDefault();
             item.Description = description != null ? description.Label : "";
             var displayName = r.localLabls.Where(c => c.ObjectColumnName == "DisplayName").FirstOrDefault();
             item.DisplayName = displayName != null ? displayName.Label : "";
             item.IsCustomizable = r.optionset.IsCustomizable;
             item.Name = r.optionset.Name;
             item.OptionSetId = r.optionset.OptionSetId;
             item.OptionList = new List <OptionDTO>();
             r.pList.ToList().ForEach(p =>
             {
                 var option = new OptionDTO();
                 var itemDescription = context.LocalizedLabels.SingleOrDefault(c => c.ObjectId == p.AttributePicklistValueId &&
                                                                               c.ObjectColumnName == "Description" &&
                                                                               c.LanguageId == languageId);
                 option.Description = itemDescription != null ? itemDescription.Label : "";
                 var itemDisplayName = context.LocalizedLabels.Single(c => c.ObjectId == p.AttributePicklistValueId &&
                                                                      c.ObjectColumnName == "DisplayName" &&
                                                                      c.LanguageId == languageId);
                 option.DisplayName = itemDisplayName != null ? itemDisplayName.Label : "";
                 option.DisplayOrder = p.DisplayOrder;
                 option.OptionId = p.AttributePicklistValueId;
                 option.Value = p.Value;
                 item.OptionList.Add(option);
             });
             return item;
         }
                                               ).ToList());
     }
 }
Ejemplo n.º 14
0
 public List <Entity> GetMetaEntities()
 {
     try
     {
         using (var context = KatrinEntities.CreateInstance())
         {
             var query = GetMeataEntityQuery(context);
             return(query.ToList());
         }
     }
     catch (Exception ex)
     {
         throw;
     }
 }
Ejemplo n.º 15
0
 public void SaveOptionSet(OptionSetDTO optionSet, int languageId, bool isAdd)
 {
     using (var context = KatrinEntities.CreateInstance())
     {
         context.Configuration.ProxyCreationEnabled = false;
         if (isAdd)
         {
             AddOptionSet(optionSet, languageId, context);
         }
         else
         {
             UpdateOptionSet(optionSet, languageId, context);
         }
         context.SaveChanges();
     }
 }
Ejemplo n.º 16
0
        public List <EntityRelationshipRole> GetEntityRelationshipRoles()
        {
            using (var context = KatrinEntities.CreateInstance())
            {
                context.Configuration.ProxyCreationEnabled = false;
                var query = context.EntityRelationshipRoles.Include("Entity");
                query.Include("EntityRelationship");
                query.Include("EntityRelationship.EntityRelationshipRelationships");
                query.Include("EntityRelationship.EntityRelationshipRelationships.Relationship.ReferencedAttribute");
                query.Include("EntityRelationship.EntityRelationshipRelationships.Relationship.ReferencingAttribute");
                query.Include("EntityRelationship.EntityRelationshipRelationships.Relationship.ReferencedEntity");
                query.Include("EntityRelationship.EntityRelationshipRelationships.Relationship.ReferencingEntity");

                var result = query.ToList();
                return(result);
            }
        }
Ejemplo n.º 17
0
 public void SaveSavedQuery(SavedQuery savedQuery)
 {
     using (var context = KatrinEntities.CreateInstance())
     {
         context.Configuration.ProxyCreationEnabled = false;
         if (savedQuery.SavedQueryId == Guid.Empty)
         {
             savedQuery.SavedQueryId = Guid.NewGuid();
             context.SavedQueries.Add(savedQuery);
         }
         else
         {
             context.SavedQueries.Attach(savedQuery);
             context.Entry(savedQuery).State = EntityState.Modified;
         }
         context.SaveChanges();
     }
 }
Ejemplo n.º 18
0
 public List <NotificationProfile> GetNotificationProfiles()
 {
     using (var context = KatrinEntities.CreateInstance())
     {
         context.Configuration.ProxyCreationEnabled = false;
         var query = context.NotificationProfiles.Include("NotificationRecipientAttributes");
         query.Include("NotificationRecipientAttributes.Criterion");
         query.Include("NotificationRecipientAttributes.Criterion.CriteriaNodes");
         query.Include("Criterion");
         query.Include("Criterion.CriteriaNodes");
         query.Include("NotificationTemplate");
         query.Include("SubjectNotificationTemplate");
         query.Include("ProfileVariables");
         query.Include("ProfileVariables.NotificationVariable");
         query.Include("Subscriptions");
         return(query.ToList());
     }
 }
Ejemplo n.º 19
0
 public List <ColumnMapping> GetColumnMapping(string mappingName, string sourceEntityName, string targetEntityName)
 {
     using (var context = KatrinEntities.CreateInstance())
     {
         context.Configuration.ProxyCreationEnabled = false;
         var  mapping     = context.ImportMaps.Where(c => c.Name == mappingName).ToList().FirstOrDefault();
         Guid importMapId = Guid.Empty;
         if (mapping != null)
         {
             importMapId = mapping.ImportMapId;
         }
         var query = context.ColumnMappings.Where(c => c.ImportMapId == importMapId);
         if (sourceEntityName != "")
         {
             query = query.Where(c => c.SourceEntityName == sourceEntityName);
         }
         if (targetEntityName != "")
         {
             query = query.Where(c => c.TargetEntityName == targetEntityName);
         }
         return(query.ToList());
     }
 }