private void OnProjectChange(object sender, EventArgs <Guid> e) { WcfSearchLookUpEdit ownerIdLookUpEdit = sender as WcfSearchLookUpEdit; if (ownerIdLookUpEdit == null) { return; } Guid projectId = e.Data; var projectMemberList = DynamicDataServiceContext.GetObjects("ProjectMember", new BinaryOperator("ProjectId", projectId), null); var userIds = new List <object>(); foreach (var projectMember in projectMemberList) { userIds.Add(projectMember.AsDyanmic().MemberId); } if (userIds.Count > 0) { ownerIdLookUpEdit.ReloadData(new InOperator("UserId", userIds)); } else { ownerIdLookUpEdit.ReloadData(null); } }
private void HistoryData() { var projectList = DynamicDataServiceContext.GetObjects("Project", new BinaryOperator("ManagerId", AuthorizationManager.CurrentUserId), null); CriteriaOperator filter = new BinaryOperator("OwnerId", AuthorizationManager.CurrentUserId); if (projectList != null && projectList.Count > 0) { List <object> projectIds = new List <object>(); foreach (var projectItem in projectList) { projectIds.Add(projectItem.AsDyanmic().ProjectId); } filter = new InOperator("ProjectId", projectIds); } var managerExtraColumns = new Dictionary <string, string> { { "ProjectName", "Project == null?null:Project.Name" }, { "IterationName", "ProjectIteration == null?null:ProjectIteration.Name" }, { "TaskTimeHistories", "TaskTimeHistories" } }; var projectTasks = DynamicDataServiceContext.GetObjects("ProjectTask", filter, managerExtraColumns); foreach (var taskItem in projectTasks) { var taskDyanmic = taskItem.AsDyanmic(); IList taskTimeHistoryList = taskDyanmic.TaskTimeHistories as IList; AddItems(taskTimeHistoryList, taskDyanmic); } }
private string GetWeekTask(DateTime date, Guid projectid) { DateTime startDate = Utils.Date.WeekBegin(date); DateTime endDate = Utils.Date.WeekEnd(date); CriteriaOperator filter = new BinaryOperator("OwnerId", AuthorizationManager.CurrentUserId); filter &= new BinaryOperator("StartDate", endDate, BinaryOperatorType.LessOrEqual); filter &= new GroupOperator(GroupOperatorType.Or, new UnaryOperator(UnaryOperatorType.IsNull, "EndDate"), new BinaryOperator("EndDate", startDate, BinaryOperatorType.GreaterOrEqual)); filter &= new BinaryOperator("ProjectId", projectid); var weekTasks = DynamicDataServiceContext.GetObjects("ProjectTask", filter, null); string result = ""; foreach (var weekTask in weekTasks) { var dynamic = weekTask.AsDyanmic(); string rowItem = "<tr class='NormalLine'>"; rowItem += "<td class='Left'>" + dynamic.Name + "</td>"; rowItem += "<td class='LineMid'>" + ToShortDate(dynamic.StartDate) + "</td>"; rowItem += "<td class='LineMid'>" + ToShortDate(dynamic.EndDate) + "</td>"; rowItem += "<td class='LineMid'></td>"; double status = dynamic.Effort * 100 / dynamic.ActualWorkHours; rowItem += "<td class='LineMid'>" + status.ToString("0.00") + "%</td>"; rowItem += "<td class='Right'>" + dynamic.Description + "</td>"; rowItem += "</tr>"; result += rowItem; } return(result); }
private void TaskData() { var taskExtraColumns = new Dictionary <string, string> { { "ProjectName", "Project == null?null:Project.Name" }, { "IterationName", "ProjectIteration == null?null:ProjectIteration.Name" }, { "TaskTimeHistories", "TaskTimeHistories" } }; CriteriaOperator filter = new BinaryOperator("TaskId", EntityId, BinaryOperatorType.Equal); var projectTasks = DynamicDataServiceContext.GetObjects("ProjectTask", filter, taskExtraColumns); foreach (var taskItem in projectTasks) { var taskDyanmic = taskItem.AsDyanmic(); IList taskTimeHistoryList = taskDyanmic.TaskTimeHistories as IList; AddItems(taskTimeHistoryList, taskDyanmic); } if (projectTasks.AsQueryable().Count() > 0 && _editTaskTimeHistory.TaskTimeHistoryId == Guid.Empty) { var taskDyanmic = projectTasks.AsQueryable()._First().AsDyanmic(); _editTaskTimeHistory.ProjectName = taskDyanmic.ProjectName; _editTaskTimeHistory.IterationName = taskDyanmic.IterationName; _editTaskTimeHistory.TaskId = taskDyanmic.TaskId; _editTaskTimeHistory.Name = taskDyanmic.Name; _editTaskTimeHistory.ActualWorkHours = taskDyanmic.ActualWorkHours; _editTaskTimeHistory.RecordOn = DateTime.Today; _editTaskTimeHistory.RemainderTime = taskDyanmic.ActualWorkHours - taskDyanmic.Effort; _editTaskTimeHistory.TaskTimeHistoryId = Guid.Empty; _editTaskTimeHistory.RecordPerson = GetUserName(AuthorizationManager.CurrentUserId); } }
static void timer_Elapsed(object sender, System.Timers.ElapsedEventArgs e) { DynamicDataServiceContext dbcontext = new DynamicDataServiceContext(); Dictionary <string, string> additionProperties = new Dictionary <string, string>(); additionProperties.Add("Notification", "Notification"); CriteriaOperator filter = new BinaryOperator("RecipientId", AuthorizationManager.CurrentUserId, BinaryOperatorType.Equal) & new BinaryOperator("NotificationStatus", "NotSend", BinaryOperatorType.Equal); var notificationInfos = dbcontext.GetObjects("NotificationRecipient", filter, additionProperties); if (notificationInfos.ToArrayList().Count <= 0) { return; } if (_workItem == null) { return; } WorkItem workItem = _workItem; RibbonWindowWorkspace workSpace = workItem.RootWorkItem.Items[WorkspaceNames.RibbonWindows] as RibbonWindowWorkspace; if (workSpace == null) { return; } RibbonForm form = workSpace.OwnerForm as RibbonForm; if (form == null) { return; } ShowNotificationDelegate s = new ShowNotificationDelegate(ShowNotifications); form.BeginInvoke(s, notificationInfos, form); }
protected override void OnViewSet() { base.OnViewSet(); _users = DynamicDataServiceContext.GetObjects("User"); View.OnStatusCodeChange += OnStatusCodeChange; View.OnEditItem += OnEditItem; View.InitEditors(); }
protected override void OnViewSet() { View.OnCreateData += OnCreateData; View.OnDeleteData += OnDeleteData; _users = DynamicDataServiceContext.GetObjects("User"); InitData(); InitFilter(); View.Bind(_projectTaskList); }
protected override void OnViewSet() { base.OnViewSet(); View.NewQuoteLineItem += View_NewQuoteLineItem; View.RemoveQuoteLineItem += ViewRemoveQuoteLineItem; View.CalculateTotalAmount += ViewCalculateTotalAmount; View.QuoteLineItemSelectProductChanged += ViewQuoteLineItemSelectProductChanged; productList = DynamicDataServiceContext.GetObjects("Product"); View.PoppulateProducts(productList); }
private RoleViewModel GetRoleViewModel() { var roleViewModel = new RoleViewModel { RoleId = DynamicEntity.RoleId, RoleName = DynamicEntity.RoleName, Description = DynamicEntity.Description }; IList rolePrivilegeList = DynamicEntity.RolePrivileges; var privilegeEntities = DynamicDataServiceContext.GetObjects("PrivilegeEntity"); var privileges = DynamicDataServiceContext.GetObjects("Privilege"); var viewModelList = new Dictionary <string, EntityViewModel>(); foreach (var privilegeEntity in privilegeEntities) { dynamic dynamicEntity = new SysBits.DynamicProxies.DynamicProxy(privilegeEntity); var selectedEntityId = dynamicEntity.PrivilegeEntityId; Guid privilegeId = dynamicEntity.PrivilegeId; string entityName = dynamicEntity.EntityName; EntityViewModel entityViewModel; if (viewModelList.ContainsKey(entityName)) { entityViewModel = viewModelList[entityName]; } else { entityViewModel = new EntityViewModel() { EntityId = selectedEntityId, Name = entityName }; roleViewModel.SelectedEntities.Add(entityViewModel); viewModelList.Add(entityName, entityViewModel); } var privilege = privileges.AsQueryable().Where("PrivilegeId = @0", privilegeId)._First(); dynamic dynamicPrivilege = new SysBits.DynamicProxies.DynamicProxy(privilege); var privilegeViewModel = new PrivilegeViewModel { PrivilegeId = dynamicPrivilege.PrivilegeId, PrivilegeName = dynamicPrivilege.Name, Selected = SelectedPrivilege(rolePrivilegeList, privilegeId) }; entityViewModel.Privileges.Add(privilegeViewModel); } return(roleViewModel); }
protected override void OnViewSet() { View.OnCreateData += OnCreateData; View.OnDeleteData += OnDeleteData; _users = DynamicDataServiceContext.GetObjects("User"); _editTaskTimeHistory = new TaskTimeHistory(); _editTaskTimeHistory.RecordOn = DateTime.Today; InitData(); View.Bind(new List <TaskTimeHistory>() { _editTaskTimeHistory }); }
private IEnumerable GetTasks(DateTime date) { var extraColumns = new Dictionary <string, string> { { "TaskTimeHistories", "TaskTimeHistories" } }; CriteriaOperator filter = new BinaryOperator("OwnerId", AuthorizationManager.CurrentUserId); filter &= new BinaryOperator("StartDate", date, BinaryOperatorType.LessOrEqual); filter &= new GroupOperator(GroupOperatorType.Or, new UnaryOperator(UnaryOperatorType.IsNull, "EndDate"), new BinaryOperator("EndDate", date, BinaryOperatorType.GreaterOrEqual)); return(DynamicDataServiceContext.GetObjects("ProjectTask", filter, extraColumns)); }
private bool CheckSinglePersonData() { CriteriaOperator filter = new BinaryOperator("OwnerId", AuthorizationManager.CurrentUserId); filter &= new BinaryOperator("StartDate", DateTime.Today, BinaryOperatorType.LessOrEqual); filter &= new BinaryOperator(new OperandProperty("ActualWorkHours"), new OperandProperty("Effort"), BinaryOperatorType.Greater); var ownerProjectTasks = DynamicDataServiceContext.GetObjects("ProjectTask", filter, null); if (ownerProjectTasks.AsQueryable().Count() <= 0) { XtraMessageBox.Show(Properties.Resources.NoNewTaskMessage, Properties.Resources.Katrin, MessageBoxButtons.OK, MessageBoxIcon.Information); return(false); } return(true); }
protected override void OnSaving() { bool result = true; View.ValidateResult = result; if (!View.ValidateData()) { return; } DateTime startDate = DynamicEntity.StartDate; DateTime endDate = DynamicEntity.Deadline; if (startDate > endDate) { result = false; XtraMessageBox.Show(Properties.Resources.IterationDateCompareMessage, Properties.Resources.Katrin, MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); } if (result) { CriteriaOperator filter = new BinaryOperator("projectid", DynamicEntity.ProjectId) & new BinaryOperator("ProjectIterationId", DynamicEntity.ProjectIterationId, BinaryOperatorType.NotEqual); var iterationList = DynamicDataServiceContext.GetObjects(EntityName, filter, null); foreach (var iteration in iterationList) { dynamic dynamic = iteration.AsDyanmic(); DateTime iterationStartDate = dynamic.StartDate; DateTime iterationEndDate = dynamic.Deadline; if (startDate < iterationEndDate && endDate > iterationStartDate) { result = false; XtraMessageBox.Show(Properties.Resources.IterationDateErrorMessage, Properties.Resources.Katrin, MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1); break; } } } View.ValidateResult = result; }
private IEnumerable GetTaskHistory(DateTime recordDate, List <Guid> taskListId) { DateTime startDate = Utils.Date.WeekBegin(recordDate); DateTime endDate = Utils.Date.WeekEnd(recordDate); if (taskListId.Count <= 0) { return(null); } CriteriaOperator filter = new BinaryOperator("RecordOn", startDate, BinaryOperatorType.GreaterOrEqual); filter &= new BinaryOperator("RecordOn", endDate, BinaryOperatorType.LessOrEqual); if (taskListId.Count > 0) { filter &= new InOperator("TaskId", taskListId); } return(DynamicDataServiceContext.GetObjects("TaskTimeHistory", filter, null)); }
private void OnProjectChange(object sender, EventArgs <Guid> e) { if (WorkingMode != EntityDetailWorkingMode.Add) { return; } Guid projectId = e.Data; CriteriaOperator filter = new BinaryOperator("ProjectId", projectId); filter &= new BinaryOperator("ProjectIterationId", DynamicEntity.ProjectIterationId, BinaryOperatorType.NotEqual); var iterationList = DynamicDataServiceContext.GetObjects(EntityName, filter, null); DateTime startDate = DateTime.Today; IList projectIterationList = iterationList as IList; if (projectIterationList.Count > 0) { startDate = projectIterationList.AsQueryable().Select("Deadline").Cast <DateTime>().Max(); startDate = startDate.AddDays(1); } DynamicEntity.StartDate = startDate; }
private void SinglePersonData() { var extraColumns = new Dictionary <string, string> { { "Project", "Project" } }; CriteriaOperator filter = new BinaryOperator("OwnerId", AuthorizationManager.CurrentUserId, BinaryOperatorType.Equal); filter &= new BinaryOperator("StartDate", DateTime.Today, BinaryOperatorType.LessOrEqual); filter &= new BinaryOperator(new OperandProperty("ActualWorkHours"), new OperandProperty("Effort"), BinaryOperatorType.Greater); if (EntityId != Guid.Empty) { filter &= new BinaryOperator("TaskId", EntityId, BinaryOperatorType.Equal); } var ownerProjectTasks = DynamicDataServiceContext.GetObjects("ProjectTask", filter, extraColumns); if (ownerProjectTasks != null && ownerProjectTasks.ToArrayList().Count > 0) { foreach (var task in ownerProjectTasks) { TaskTimeHistory item = new TaskTimeHistory(); var dyanmic = task.AsDyanmic(); item.TaskId = dyanmic.TaskId; item.Name = dyanmic.Name; item.ActualWorkHours = dyanmic.ActualWorkHours; item.RecordOn = DateTime.Today; item.RemainderTime = dyanmic.ActualWorkHours - dyanmic.Effort; item.TaskTimeHistoryId = Guid.Empty; item.RecordPerson = GetUserName(AuthorizationManager.CurrentUserId); if (dyanmic.Project != null) { item.ProjectName = dyanmic.Project.Name; } _projectTaskList.Insert(0, item); } } }
private void ShowRelatedView(EntityRelationship entityRelationship) { EntityRelationshipType relationshipType = (EntityRelationshipType)entityRelationship.EntityRelationshipType; var currentEntityRelationRole = entityRelationship.EntityRelationshipRoles.Single(r => r.Entity.PhysicalName == EntityName); string relationTitle = GetLocalizedCaption(currentEntityRelationRole.Entity.PhysicalName) + "-"; if (relationshipType == EntityRelationshipType.OneToMany) { var roleType = (RelationshipRoleType)currentEntityRelationRole.RelationshipRoleType; var relationship = entityRelationship.EntityRelationshipRelationships.Single().Relationship; if (roleType == RelationshipRoleType.OneToMany) { var desiredEntityName = relationship.ReferencingEntity.PhysicalName; var entityId = GetId(_entityListView.SelectedEntity); CriteriaOperator filter = new BinaryOperator(relationship.ReferencingAttribute.Name, entityId, BinaryOperatorType.Equal); var result = DynamicDataServiceContext.GetObjects(desiredEntityName, filter, null); if (result.ToArrayList().Count > 0) { ShowRelatedEntityList(desiredEntityName, relationTitle, filter); } else { XtraMessageBox.Show(Properties.Resources.NoRelatedData, Properties.Resources.Katrin, MessageBoxButtons.OK, MessageBoxIcon.Information); } } else { var entityName = relationship.ReferencedEntity.PhysicalName; string desiredPropertyName = relationship.ReferencingAttribute.PhysicalName; var propertyInfo = _entityListView.SelectedEntity.GetType().GetProperty(desiredPropertyName); var id = propertyInfo.GetValue(_entityListView.SelectedEntity, null); if (id != null) { ShowRelatedEntityDetail(entityName, (Guid)id); } else { XtraMessageBox.Show(_entityListView, Properties.Resources.NoRelatedData, Properties.Resources.Katrin, MessageBoxButtons.OK, MessageBoxIcon.Information); } } } else { var relationshipRole = entityRelationship.EntityRelationshipRoles .Single(r => (RelationshipRoleType)r.RelationshipRoleType == RelationshipRoleType.Relationship); var desiredEntityRole = entityRelationship.EntityRelationshipRoles .Single(r => r != relationshipRole && r != currentEntityRelationRole); var desiredEntityPropertyName = entityRelationship.EntityRelationshipRelationships.Select(r => r.Relationship) .Single(r => r.ReferencedEntity.EntityId == desiredEntityRole.Entity.EntityId). ReferencedAttribute.PhysicalName; var knownPropertyName = entityRelationship.EntityRelationshipRelationships.Select(r => r.Relationship) .Single(r => r.ReferencedEntity.EntityId == currentEntityRelationRole.Entity.EntityId). ReferencedAttribute.PhysicalName; CriteriaOperator filter = new BinaryOperator(knownPropertyName, GetId(_entityListView.SelectedEntity)); var relationships = DynamicDataServiceContext.GetObjects(relationshipRole.Entity.PhysicalName, filter, null); List <object> desiredEntityIds = new List <object>(); CriteriaOperator relatedFilter = null; for (int index = 0; index < relationships.Count; index++) { var relatedObject = relationships[index]; var propertyInfo = relatedObject.GetType().GetProperty(desiredEntityPropertyName); var desiredEntityId = propertyInfo.GetValue(relatedObject, null); desiredEntityIds.Add(desiredEntityId); relatedFilter |= new BinaryOperator(desiredEntityPropertyName, desiredEntityId); } if (desiredEntityIds.Any()) { if (desiredEntityIds.Count == 1) { ShowRelatedEntityDetail(desiredEntityRole.Entity.PhysicalName, (Guid)desiredEntityIds[0]); } else { ShowRelatedEntityList(desiredEntityRole.Entity.PhysicalName, relationTitle, relatedFilter); } } else { XtraMessageBox.Show(_entityListView, Properties.Resources.NoRelatedData, Properties.Resources.Katrin, MessageBoxButtons.OK, MessageBoxIcon.Information); } } }
private void VarifyUser(UserLoginResult result) { if (result.Parameter.ServerName == "") { result.Message = "Please input the server name."; return; } string serverUrl = string.Empty; if (result.Parameter.ServiceName != "") { serverUrl = result.Parameter.ServerName + "/" + result.Parameter.ServiceName; } else { serverUrl = result.Parameter.ServerName; } serverUrl = AppandProtocal(serverUrl); Uri serverUri; if (!Uri.TryCreate(serverUrl, UriKind.Absolute, out serverUri)) { result.Message = "The server or service you entered is incorrect."; return; } bool isServerReachable = CheckConnection(serverUri); if (!isServerReachable) { result.Message = "The server or service you entered is not available."; return; } string loginPageUrl = serverUrl + (serverUrl.EndsWith("/") ? "" : "/") + "Login.aspx"; bool isLogiPageAvaible = IsUrlReachable(loginPageUrl); if (!isLogiPageAvaible) { result.Message = "The server or service you entered is not available."; return; } UpdateSetting(ServerUrlSettingName, serverUrl); LoadMetadata(); string userName = result.Parameter.UserName; string password = result.Parameter.Password; var provider = (ClientFormsAuthenticationMembershipProvider)Membership.Provider; provider.ServiceUri = ConfigurationManager.AppSettings["ServerUrl"] + "/Authentication_JSON_AppService.axd"; if (!Membership.ValidateUser(userName, password)) { result.Message = "The username or password you entered is incorrect."; return; } try { var dynamicDataServiceContext = new DynamicDataServiceContext(); CriteriaOperator userNameFilter = new BinaryOperator("UserName", userName); var user = dynamicDataServiceContext.GetObjects("User", userNameFilter, null)._First(); var userId = (Guid)user.GetType().GetProperty("UserId").GetValue(user, null); var fullName = (string)user.GetType().GetProperty("FullName").GetValue(user, null); var extraColumns = new Dictionary <string, string> { { "Role", "Role" } }; var userRoles = dynamicDataServiceContext.GetObjects("UserRole", new BinaryOperator("UserId", userId), extraColumns); var currentRoles = userRoles.AsQueryable().Select("Role").ToArrayList(); var userPrivileges = new List <Privilege>(); foreach (var role in currentRoles) { dynamicDataServiceContext.LoadProperty(role, "RolePrivileges"); var rolePrivileges = (IList)role.GetType().GetProperty("RolePrivileges").GetValue(role, null); foreach (var rolePrivilege in rolePrivileges) { dynamicDataServiceContext.LoadProperty(rolePrivilege, "Privilege"); var privilege = rolePrivilege.GetType().GetProperty("Privilege").GetValue(rolePrivilege, null); var name = (string)privilege.GetType().GetProperty("Name").GetValue(privilege, null); dynamicDataServiceContext.LoadProperty(privilege, "PrivilegeEntities"); var privilegeEntities = (IList)privilege.GetType().GetProperty("PrivilegeEntities").GetValue(privilege, null); userPrivileges.AddRange(from object privilegeEntity in privilegeEntities select(string) privilegeEntity.GetType().GetProperty("EntityName") .GetValue(privilegeEntity, null) into entityName select new Privilege() { EntityName = entityName, Name = name }); } } var identity = new CustomIdentity(userId, userName, fullName); var principal = new CustomPrincipal(identity, userPrivileges.ToArray()); AppDomain.CurrentDomain.SetThreadPrincipal(principal); result.Result = true; } catch (Exception ex) { result.Message = BuildExceptionString(ex); } }
private void InitUser() { _users = DynamicDataServiceContext.GetObjects("User"); }
protected override void OnViewSet() { _users = DynamicDataServiceContext.GetObjects("User").ToArrayList(); SinglePersonData(); View.Bind(_projectTaskList); }