예제 #1
0
        public CrateInventory(ICrate crateType, Vector3Int position, Colony c)
        {
            CrateType = crateType;
            Position  = position;
            Colony    = c;

            StorageTypeLookup[StorageType.Stockpile] = new List <StoredItem>();
            StorageTypeLookup[StorageType.Crate]     = new List <StoredItem>();
        }
        public static ProcessTemplateDO TestProcessTemplateWithSubscribeEvent()
        {
            ProcessTemplateDO processTemplateDO;

            using (var uow = ObjectFactory.GetInstance <IUnitOfWork>())
            {
                DockyardAccountDO testUser = TestDockyardAccount1();
                uow.UserRepository.Add(testUser);

                processTemplateDO = new ProcessTemplateDO()
                {
                    Id                   = 23,
                    Description          = "HealthDemo Integration Test",
                    Name                 = "StandardEventTesting",
                    ProcessTemplateState = ProcessTemplateState.Active,
                    DockyardAccount      = testUser
                };
                uow.ProcessTemplateRepository.Add(processTemplateDO);

                var actionTemplate = ActionTemplate();

                var processDo = new ContainerDO()
                {
                    Id                = 1,
                    CrateStorage      = EnvelopeIdCrateJson(),
                    ProcessTemplateId = processTemplateDO.Id,
                    ContainerState    = 1
                };
                uow.ContainerRepository.Add(processDo);



                ProcessNodeTemplateDO processNodeTemplateDO = new ProcessNodeTemplateDO()
                {
                    ParentActivity = processTemplateDO,
                    StartingProcessNodeTemplate = true
                };
                uow.ProcessNodeTemplateRepository.Add(processNodeTemplateDO);
                processTemplateDO.Activities = new List <ActivityDO> {
                    processNodeTemplateDO
                };
                processTemplateDO.StartingProcessNodeTemplate = processNodeTemplateDO;


                var actionDo = new ActionDO()
                {
                    ParentActivity   = processTemplateDO,
                    ParentActivityId = processTemplateDO.Id,
                    ActionState      = ActionState.Unstarted,
                    Name             = "testaction",

                    Id = 1,
                    ActivityTemplateId = actionTemplate.Id,
                    ActivityTemplate   = actionTemplate,
                    Ordering           = 1
                };
                ICrate crate = ObjectFactory.GetInstance <ICrate>();

                var serializer = new JsonSerializer();
                EventSubscriptionCM eventSubscriptionMS = new EventSubscriptionCM();
                eventSubscriptionMS.Subscriptions = new List <string>();
                eventSubscriptionMS.Subscriptions.Add("DocuSign Envelope Sent");
                eventSubscriptionMS.Subscriptions.Add("Write to SQL AZure");

                var eventReportJSON = serializer.Serialize(eventSubscriptionMS);

                CrateDTO crateDTO = crate.Create("Standard Event Subscriptions", eventReportJSON, "Standard Event Subscriptions");
                actionDo.UpdateCrateStorageDTO(new List <CrateDTO>()
                {
                    crateDTO
                });

                uow.ActionRepository.Add(actionDo);
                processNodeTemplateDO.Activities.Add(actionDo);

                uow.SaveChanges();
            }

            return(processTemplateDO);
        }