protected void SetUserGlobalAttribute(Guid userID, String attributeName, String value) { var globalAttr = (from n in HbSession.Query <UM_User>() join m in HbSession.Query <UM_AttributeValue>() on n.ID equals m.ParentID where n.ID == userID where m.DateDeleted == null let node = m.AttributeField let schema = node.AttributeSchema where node != null && node.Name == attributeName && schema.ProjectID == null select m).FirstOrDefault(); if (globalAttr == null) { globalAttr = new UM_AttributeValue { ID = Guid.NewGuid(), DateCreated = DateTime.Now, ParentID = userID, }; var globalAttrNode = (from n in HbSession.Query <UM_AttributeField>() where n.Name == attributeName && n.DateDeleted == null let schema = n.AttributeSchema where schema.ProjectID == null select n).SingleOrDefault(); if (globalAttrNode == null) { var globalSchema = (from n in HbSession.Query <UM_AttributeSchema>() where n.DateDeleted == null && n.ProjectID == null select n).Single(); globalAttrNode = new UM_AttributeField { ID = Guid.NewGuid(), Name = attributeName, DateCreated = DateTime.Now, AttributeSchema = globalSchema, }; } globalAttr.AttributeField = globalAttrNode; } globalAttr.Value = value; HbSession.SubmitInsert(globalAttr); }
public static AttributeValueContract ToContract(this UM_AttributeValue entity) { if (entity == null) { return(null); } var contract = new AttributeValueContract(); contract.DateChanged = entity.DateChanged; contract.DateCreated = entity.DateCreated; contract.DateDeleted = entity.DateDeleted; contract.ID = entity.ID; contract.AttributeFieldID = entity.AttributeFieldID; return(contract); }
public static UM_AttributeValue ToEntity(this AttributeValueContract contract) { if (contract == null) { return(null); } var entity = new UM_AttributeValue(); entity.DateChanged = contract.DateChanged; entity.DateCreated = contract.DateCreated; entity.DateDeleted = contract.DateDeleted; entity.ID = contract.ID; entity.ParentID = contract.ParentID; entity.AttributeFieldID = contract.AttributeFieldID; entity.Value = contract.Value; return(entity); }
protected void btAttributeOK_Click(object sender, EventArgs e) { var model = objectAttributeControl.Model; var groupID = model.ParentID; var nodeID = model.FieldID; var group = HbSession.Query <UM_Group>().FirstOrDefault(n => n.ID == groupID); if (group == null) { return; } var node = HbSession.Query <UM_AttributeField>().FirstOrDefault(n => n.ID == nodeID); if (node == null) { return; } var attributeValue = (from v in HbSession.Query <UM_AttributeValue>() where v.ParentID == @group.ID && v.AttributeFieldID == node.ID select v).FirstOrDefault(); if (attributeValue == null) { attributeValue = new UM_AttributeValue { ID = Guid.NewGuid(), DateCreated = DateTime.Now }; } var converter = new AttributeValueModelEntityConverter(HbSession); converter.FillObject(attributeValue, model); HbSession.SubmitChanges(attributeValue); mpeGroupAttributes.Show(); }