public void Add(PlanningApp planningApp, StateInitialiser stateInitialiser)
        {
            var initialStatus     = vegaDbContext.StateStatus.Where(s => s.Name == stateStatusSettings.STATE_ON_TIME).SingleOrDefault();
            var initialStatusList = vegaDbContext.StateStatus.ToList();

            planningApp = planningApp.GeneratePlanningStates(stateInitialiser.States, initialStatusList);
            vegaDbContext.Add(planningApp);
        }
        public static StateInitialiser createGenerator(string name, int nOfStates, int noOfDays, int alertDays)
        {
            var GN = new StateInitialiser();

            GN.Name = name;

            for (int i = 1; i <= nOfStates; i++)
            {
                GN.States.Add(createGeneratorState(name, i, noOfDays, alertDays));
            }

            return(GN);
        }
Exemple #3
0
        public void InsertGenerator(ProjectGenerator projectGenerator, StateInitialiser newGenerator, int SeqId)
        {
            ProjectGeneratorSequence pgs = new ProjectGeneratorSequence();

            pgs.SeqId     = SeqId;
            pgs.Generator = newGenerator;

            projectGenerator.Generators
            .Where(g => g.SeqId >= SeqId)
            .ToList()
            .ForEach(gn => gn.SeqId += 1);

            projectGenerator.Generators.Add(pgs);

            vegaDbContext.Update(projectGenerator);
        }
Exemple #4
0
        public async void RemoveGenerator(ProjectGenerator projectGenerator, StateInitialiser generator)
        {
            var pg = await GetProjectGenerator(projectGenerator.Id);

            var rg = pg.Generators.Where(g => g.Generator.Id == generator.Id).SingleOrDefault();

            var SeqId = rg.SeqId; //Store Sequence

            pg.Generators.Remove(rg);

            projectGenerator.Generators
            .Where(g => g.SeqId >= SeqId)
            .ToList()
            .ForEach(gn => gn.SeqId -= 1);

            vegaDbContext.Update(projectGenerator);
        }
Exemple #5
0
        public void AppendGenerator(ProjectGenerator projectGenerator, StateInitialiser newGenerator)
        {
            ProjectGeneratorSequence pgs = new ProjectGeneratorSequence();

            if (projectGenerator.Generators.Count > 0)
            {
                pgs.SeqId = projectGenerator.Generators.Max(g => g.SeqId) + 1;
            }
            else
            {
                pgs.SeqId = 1;
            }

            pgs.Generator = newGenerator;

            projectGenerator.Generators.Add(pgs);
            vegaDbContext.Update(projectGenerator);
        }
 public void Add(StateInitialiser stateInitialiser)
 {
     vegaDbContext.Add(stateInitialiser);
 }
Exemple #7
0
        public PlanningApp InsertPlanningState(PlanningApp planningApp, int GeneratorOrder, StateInitialiser generator, StateInitialiserState stateInitialiserState)
        {
            if (!CanInsertState(planningApp, GeneratorOrder, stateInitialiserState))
            {
                return(planningApp);
            }

            PlanningAppState newPlanningAppState = new PlanningAppState();

            newPlanningAppState.state = stateInitialiserState;

            foreach (var stateInitialiserStateCustomField in newPlanningAppState.state.StateInitialiserStateCustomFields)
            {
                newPlanningAppState.customFields
                .Add(new PlanningAppStateCustomField {
                    StateInitialiserStateCustomFieldId = stateInitialiserStateCustomField.StateInitialiserCustomFieldId
                });
            }

            //Console.WriteLine("Adding States " + stateInitialiserState.Name + " To Planning App");
            newPlanningAppState.GeneratorOrder = GeneratorOrder;
            newPlanningAppState.GeneratorName  = generator.Name;
            newPlanningAppState.StateStatus    = statusList.Where(s => s.Name == StatusList.OnTime).SingleOrDefault();
            planningApp.PlanningAppStates.Add(newPlanningAppState);
            return(planningApp);
        }