Example #1
0
        public async Task DeleteProject(int userId, int projectId)
        {
            ProjectStatus?projectStatus;

            InstanceItem project = await _instanceRepository.GetInstanceProjectAsync(projectId, userId, fromAdminPortal : true);

            if (!TryGetProjectStatusIfProjectExist(project, out projectStatus))
            {
                throw new ResourceNotFoundException(
                          I18NHelper.FormatInvariant(ErrorMessages.ProjectWasDeletedByAnotherUser, project.Id,
                                                     project.Name), ErrorCodes.ResourceNotFound);
            }

            if (projectStatus == ProjectStatus.Live)
            {
                Func <IDbTransaction, long, Task> action = async(transaction, transactionId) =>
                {
                    var revisionId = await _instanceRepository.RemoveProject(userId, projectId, transaction);

                    await _instanceRepository.DeactivateWorkflowsWithLastAssignmentForDeletedProject(projectId, transaction);

                    var artifactIds = await _instanceRepository.GetProjectArtifactIds(projectId, revisionId - 1, userId, transaction : transaction);
                    await PostOperation(artifactIds, revisionId, userId, transactionId, transaction);
                };

                await _instanceRepository.RunInTransactionAsync(action);
            }
            else
            {
                await _instanceRepository.PurgeProject(projectId, project);
            }
        }
        private void LoadTextBox(InstanceItem tradeInstance)
        {
            this.tbInstanceId.Text   = string.Format("{0}", tradeInstance.InstanceId);
            this.tbInstanceCode.Text = tradeInstance.InstanceCode;

            this.tbNotes.Text = tradeInstance.Notes ?? string.Empty;
        }
Example #3
0
        public void OnNext(EventData e)
        {
            var mainWindow = (MainWindow)Application.Current.MainWindow;

            Category category  = e.Category;
            DateTime timestamp = e.Timestamp;

            CategoryItem categoryItem = MachineItem.CategoryItems.FirstOrDefault(item => item.Name == category.Name);

            if (categoryItem == null)
            {
                return;
            }

            foreach (Counter counter in category.Counters)
            {
                CounterItem counterItem = categoryItem.CounterItems.FirstOrDefault(item => item.Name == counter.Name);
                if (counterItem == null)
                {
                    continue;
                }

                if (!counter.Instances.Any())
                {
                    if (!counterItem.InstanceItems.Contains(MainWindow.NoneItem))
                    {
                        counterItem.InstanceItems.Clear();
                        counterItem.InstanceItems.Add(MainWindow.NoneItem);
                    }
                }
                else
                {
                    counterItem.InstanceItems.Remove(MainWindow.NoneItem);
                }

                counter.Instances.Sort((a, b) => a.Name.CompareTo(b.Name));

                foreach (Instance instance in counter.Instances)
                {
                    InstanceItem instanceItem = counterItem.InstanceItems.FirstOrDefault(item => item.Name == instance.Name);

                    if (instanceItem == null)
                    {
                        instanceItem = new InstanceItem(instance.Name, counterItem);
                        counterItem.InstanceItems.Add(instanceItem);
                    }

                    mainWindow.UpdateSeries(instanceItem.Path, timestamp, instance.Value);
                }
            }
        }
Example #4
0
        /// <summary>
        ///  This method takes the projectId and checks if the project is still exist in the database and not marked as deleted
        /// </summary>
        /// <param name="project">Project</param>
        /// <param name="projectStatus">If the project exists it returns ProjectStatus as output If the Project does not exists projectstatus = null</param>
        /// <returns>Returns true if project exists in the database and not marked as deleted for that specific revision</returns>
        private bool TryGetProjectStatusIfProjectExist(InstanceItem project, out ProjectStatus?projectStatus)
        {
            if (project == null)
            {
                projectStatus = null;
                return(false);
            }
            if (project.ParentFolderId == null)
            {
                projectStatus = null;
                return(false);
            }

            projectStatus = GetProjectStatus(project.ProjectStatus);
            return(true);
        }
Example #5
0
        private void PopulateAvailableItems()
        {
            ArrayList list1 = new ArrayList();

            //load unassingned items
            foreach (RadGalleryGroupItem item1 in defaultElement.Groups)
            {
                list1.Add(item1);
            }
            foreach (RadGalleryGroupFilter filter1 in defaultElement.Filters)
            {
                FilteredItemsEditorUI.RemoveItemsContainedInFilter(list1, filter1.Items);
            }
            for (int i = 0; i < list1.Count; i++)
            {
                list1[i] = new InstanceItem((list1[i] as RadGalleryGroupItem), null, defaultElement);
            }

            //load assingned to other groups items
            ArrayList list2 = new ArrayList();

            foreach (RadGalleryGroupFilter filter1 in defaultElement.Filters)
            {
                if (filter1 != defaultFilter)
                {
                    foreach (RadGalleryGroupItem item1 in filter1.Items)
                    {
                        list2.Add(new InstanceItem(item1, filter1, defaultElement));
                    }
                }
            }

            // set the unassigned items box
            this.AvailableItemsBox.BeginUpdate();
            this.AvailableItemsBox.Items.Clear();
            this.AvailableItemsBox.Items.AddRange(list1.ToArray());
            this.AvailableItemsBox.EndUpdate();

            // set the assigned to other groups items box
            this.AvailableItemsBox2.BeginUpdate();
            this.AvailableItemsBox2.Items.Clear();
            this.AvailableItemsBox2.Items.AddRange(list2.ToArray());
            this.AvailableItemsBox2.EndUpdate();

            this.SetButtonsEnabledState();
        }
Example #6
0
        private void PopulateAvailableItems()
        {
            ArrayList list1 = new ArrayList();

            if (this.FilterTypeBox.SelectedIndex == 0)
            {
                //load all items
                foreach (RadGalleryItem item1 in defaultElement.Items)
                {
                    if (!(bool)item1.GetValue(RadItem.IsAddNewItemProperty))
                    {
                        list1.Add(item1);
                    }
                }
                foreach (RadGalleryGroupItem group1 in defaultElement.Groups)
                {
                    GroupedItemsEditorUI.RemoveItemsContainedInGroup(list1, group1.Items);
                }
                for (int i = 0; i < list1.Count; i++)
                {
                    list1[i] = new InstanceItem((list1[i] as RadGalleryItem), defaultElement);
                }
            }
            else if (this.FilterTypeBox.SelectedIndex == 1)
            {
                foreach (RadGalleryGroupItem group1 in defaultElement.Groups)
                {
                    if (group1 != defaultGroup)
                    {
                        //load all items
                        foreach (RadGalleryItem item1 in group1.Items)
                        {
                            list1.Add(new InstanceItem(item1, defaultElement));
                        }
                    }
                }
            }

            // set the items box
            this.AvailableItemsBox.BeginUpdate();
            this.AvailableItemsBox.Items.Clear();
            this.AvailableItemsBox.Items.AddRange(list1.ToArray());
            this.AvailableItemsBox.EndUpdate();
            this.SetButtonsEnabledState();
        }
        private bool Form_LoadData(object sender, object data)
        {
            if (data == null || !(data is InstanceItem))
            {
                return(false);
            }

            _originTradeInstance = (InstanceItem)data;

            LoadTextBox(_originTradeInstance);
            LoadMonitorUnits(_originTradeInstance.MonitorUnitId);
            LoadTemplates(_originTradeInstance.TemplateId);
            LoadFund(_originTradeInstance.FundCode);
            LoadAssetUnit(_originTradeInstance.AssetUnitCode);
            LoadPortfolio(_originTradeInstance.PortfolioCode);

            return(true);
        }
        public async Task GetInstanceFolderAsync_Success()
        {
            // Arrange
            var folderId = 99;
            var folder   = new InstanceItem {
                Id = folderId
            };

            _instanceRepositoryMock
            .Setup(r => r.GetInstanceFolderAsync(folderId, UserId, It.IsAny <bool>()))
            .ReturnsAsync(folder);

            // Act
            var result = await _controller.GetInstanceFolderAsync(folderId);

            // Assert
            Assert.AreSame(folder, result);
        }
Example #9
0
        private static void FillInsanceList()
        {
            instanceList = new List <InstanceItem>();

            InstanceItem i1 = new InstanceItem(17853304562301331301, "UI");

            instanceList.Add(i1);

            InstanceItem i2 = new InstanceItem(276629261527189132, "Sims3GameplaySystems");

            instanceList.Add(i2);

            InstanceItem i3 = new InstanceItem(13387248806640466954, "Sims3GameplayObjects");

            instanceList.Add(i3);

            InstanceItem i4 = new InstanceItem(913698793160290995, "Sims3StoreObjects");

            instanceList.Add(i4);

            InstanceItem i5 = new InstanceItem(14075683330528566594, "SimIFace");

            instanceList.Add(i5);

            InstanceItem i6 = new InstanceItem(8705296405063601231, "ScriptCore");

            instanceList.Add(i6);

            InstanceItem i7 = new InstanceItem(6921925570339643313, "Sims3Metadata");

            instanceList.Add(i7);

            InstanceItem i8 = new InstanceItem(7692430820452187889, "System.Xml");

            instanceList.Add(i8);

            InstanceItem i9 = new InstanceItem(3760189319211327004, "System");

            instanceList.Add(i9);

            InstanceItem i10 = new InstanceItem(2949467670798616126, "mscorlib");

            instanceList.Add(i10);
        }
        public async Task GetInstanceProjectAsyncFromAdminPortal_Success()
        {
            // Arrange
            var projectId = 99;
            var project   = new InstanceItem {
                Id = projectId
            };
            var fromAdminPortal = true;

            _instanceRepositoryMock
            .Setup(r => r.GetInstanceProjectAsync(projectId, UserId, fromAdminPortal))
            .ReturnsAsync(project);

            // Act
            var result = await _controller.GetInstanceProjectAsync(projectId, fromAdminPortal);

            // Assert
            Assert.AreSame(project, result);
        }
Example #11
0
        public List <InstanceItem> GetAllInstanceItem()
        {
            var allInstances = GetAllInstance();
            var portolios    = _productBLL.GetAll();
            var instItems    = new List <InstanceItem>();
            var currentUser  = LoginManager.Instance.GetUser();

            foreach (var instance in allInstances)
            {
                InstanceItem instItem = new InstanceItem
                {
                    InstanceId      = instance.InstanceId,
                    InstanceCode    = instance.InstanceCode,
                    PortfolioId     = instance.PortfolioId,
                    PortfolioCode   = instance.PortfolioCode,
                    PortfolioName   = instance.PortfolioName,
                    TemplateId      = instance.TemplateId,
                    TemplateName    = instance.TemplateName,
                    MonitorUnitId   = instance.MonitorUnitId,
                    MonitorUnitName = instance.MonitorUnitName,
                    DCreatedDate    = instance.CreatedDate,
                    Owner           = instance.Owner,
                    Notes           = instance.Notes,
                };

                instItem.Creator = GetUserName(instItem.Owner, currentUser);

                var portfolio = portolios.Find(p => p.PortfolioId == instItem.PortfolioId);
                if (portfolio != null)
                {
                    instItem.FundCode      = portfolio.FundCode;
                    instItem.FundName      = portfolio.FundName;
                    instItem.AssetUnitCode = portfolio.AssetNo;
                    instItem.AssetUnitName = portfolio.AssetName;
                }

                instItems.Add(instItem);
            }

            return(instItems);
        }
Example #12
0
        public ExecutionStageThreeViewModel(bool IsReload, InstanceItem instanceitem)
        {
            if (IsReload)
            {
                ApiSrv                    = new Services.ApiService(ApiConsult.ApiMenuB);
                this.InstanceItem         = instanceitem;
                this.IsExecution          = instanceitem.LogItem.IsExecution;
                this.IsEventual           = instanceitem.LogItem.IsEventual;
                this.ToolBarIsVisible     = false;
                this.ActionIcon           = "actions";
                this.CheckIcon            = "check";
                this.ViewIcon             = "view_b";
                this.FullViewIsVisible    = true;
                this.CompactViewIsVisible = false;
                this.IsVisibleEmptyView   = false;

                GetCommandsByInstance(this.InstanceItem.IdInstance);

                //GetFakeData();
            }
        }
        public async Task GetInstanceFolderAsync_CheckViewProjectsPermissionsWithoutPermissions_ReturnForbiddenErrorResult()
        {
            // Arrange
            var folderId = 99;
            var folder   = new InstanceItem {
                Id = folderId
            };
            var fromAdminPortal = true;

            _instanceRepositoryMock
            .Setup(r => r.GetInstanceFolderAsync(folderId, UserId, It.IsAny <bool>()))
            .ReturnsAsync(folder);
            _privilegeRepositoryMock
            .Setup(r => r.GetInstanceAdminPrivilegesAsync(UserId))
            .ReturnsAsync(InstanceAdminPrivileges.ViewAdminRoles);

            // Act
            await _controller.GetInstanceFolderAsync(folderId, fromAdminPortal);

            // Assert
            // Exception
        }
        public async Task PurgeProject(int projectId, InstanceItem project)
        {
            var parameters = new DynamicParameters();

            parameters.Add("@projectId", projectId);
            parameters.Add("@result", dbType: DbType.Int32, direction: ParameterDirection.Output);

            await _connectionWrapper.ExecuteScalarAsync <int>("PurgeProject", parameters,
                                                              commandType : CommandType.StoredProcedure);

            var errorCode = parameters.Get <int?>("result");

            if (errorCode.HasValue)
            {
                switch (errorCode.Value)
                {
                case -2:     // Instance project issue
                    throw new ConflictException(
                              I18NHelper.FormatInvariant(
                                  ErrorMessages.ForbidToPurgeSystemInstanceProjectForInternalUseOnly, project.Id),
                              ErrorCodes.Conflict);

                case -1:     // Cross project move issue
                    throw new ResourceNotFoundException(
                              I18NHelper.FormatInvariant(ErrorMessages.ArtifactWasMovedToAnotherProject, project.Id),
                              ErrorCodes.ResourceNotFound);

                case 0:
                    // Success
                    break;

                default:
                    throw new Exception(ErrorMessages.GeneralErrorOfUpdatingProject);
                }
            }
        }
 public InstanceNotificationsViewModel(InstanceItem instanceitem)
 {
     //TODO: Remplazar por el consumo de datos del webservices
     InstanceTitle = instanceitem.NameInstance;
     GetFakeData(instanceitem.IdInstance);
 }
Example #16
0
 //交给子类去实现
 protected virtual void Z_OnUnitGotInstanceItem(InstanceZone zone, InstanceUnit unit, InstanceItem item)
 {
     //TODO
 }
Example #17
0
        private void stylableElements_SelectedIndexChanged(object sender, EventArgs e)
        {
            InstanceItem instanceItem = this.stylableElements.SelectedItem as InstanceItem;

            this.propertyGrid1.SelectedObject = (instanceItem != null) ? instanceItem.Instance : null;
        }