Exemplo n.º 1
0
        public static decimal CalculateProjectCost(DateTime start, DateTime end, ArchitectureTypeEnum type)
        {
            var time = (end - start).Days;

            return(type switch
            {
                ArchitectureTypeEnum.OBIEKT_BIUROWY => (4500 * time),
                ArchitectureTypeEnum.OBIEKT_MIESZKALNY => (6000 * time),
                ArchitectureTypeEnum.OBIEKT_USLUGOWY => (10000 * time),
                _ => 0
            });
Exemplo n.º 2
0
        private bool CreateConnection(ArchitectureTypeEnum type)
        {
            var projects   = _projectHandler.ScheduledProjects[type];
            var architects = _architectHandler.AvailableArchitects[type];

            if (IsAnyArchitectAndProjectAvailable(projects, architects))
            {
                return(false);
            }
            var project = projects[0];

            if (IsProjectOrdered(project))
            {
                return(false);
            }
            CreateDoneProject(architects, project);
            UpdateProject(projects, project.Id);
            UpdateOuterProjects(project.Id);
            UpdateSupervision(project, architects);
            projects.RemoveAll(p => p.Id == project.Id);
            return(true);
        }
Exemplo n.º 3
0
 private void ShuffleArchitects(ArchitectureTypeEnum type)
 {
     AvailableArchitects[type] = Architects.FindAll(a => a.Specialization == type);
     AvailableArchitects[type] = ShuffleList(AvailableArchitects[type]);
     var tmp = AvailableArchitects[type].ToList().GroupBy(a => a.Id).ToList();
 }