コード例 #1
0
        protected override void OnWizardClosed(DialogResult result)
        {
            if (result == DialogResult.OK)
            {
                foreach(var item in newProjectSupplyPage.TypedPage.CatalogSupplyViewModel)
                {
                    var command = new CreateNewProjectSupplyCommand(
                        projectId,
                        item.CatalogId,
                        item.Id,
                        item.Quantity);

                    this.EventBroker.Publish(command, Topics.COMMANDS);
                }
            }
        }
コード例 #2
0
ファイル: ProjectService.cs プロジェクト: grozeille/chiffrage
        public void ProcessAction(CreateNewProjectSupplyCommand eventObject)
        {
            var catalog = this.catalogRepository.FindById(eventObject.CatalogId);
            var supply = catalog.Supplies.Where(x => x.Id == eventObject.SupplyId).First();
            var project = this.projectRepository.FindById(eventObject.ProjectId);

            var projectSupply = MapProjectSupply(supply, new ProjectSupply(), eventObject.Quantity, catalog);
            project.Supplies.Add(projectSupply);

            var index = project.Supplies.IndexOf(projectSupply);

            this.projectRepository.Save(project);
            projectSupply = project.Supplies[index];

            this.eventBroker.Publish(new ProjectSupplyCreatedEvent(project.Id, projectSupply.Id), Topics.EVENTS);
        }