Ejemplo n.º 1
0
        public void CreateConfiguration()
        {
            _config = new ConfigurationGroup();

            var sections = new Dictionary <string, ConfigSection>();

            sections.Add("contentService", new ConfigSection
            {
                Parameters = new Dictionary <string, object>
                {
                    { "create", true },
                    { "delete", false }
                }
            });

            _config.Sections = sections;
        }
 private void AddAircraftGroup(List<IAircraft> aircrafts)
 {
     if (aircrafts.Count == 0)
     {
         return;
     }
     var aircraftGroup = new ConfigurationGroup("selectedAircraftGroup", "aircrafts", "\uE0EB");
     aircraftGroup.Items.Add(new AircraftVersionSelectionGroup(aircraftGroup, aircrafts));
     DataGroupElements.Add(aircraftGroup);
 }
        private void AddUpgradeGroup()
        {
            var currentConfig = _model.GetCurrentConfiguration();
            var upgradeGroup = new ConfigurationGroup("selectedUpgradesGroup", "upgrades", "\uE11C");
            foreach (var upgrade in currentConfig.Upgrades)
            {
                upgradeGroup.Items.Add(new UpgradeItemForConfigurationDetailDataItem(upgrade, upgradeGroup));
            }

            DataGroupElements.Add(upgradeGroup);
        }
 private void AddConfigurationAlternative()
 {
     var alternativeGroup = new ConfigurationGroup("possibleAlternatives", "alternatives", "\uE15E");
     if (ConfigurationGroup.Alternatives.Count < 1)
     {
         return;
     }
     foreach (var alternative in ConfigurationGroup.Alternatives)
     {
          var alternativeDataItem = new AlternativeDataItem(alternative, alternativeGroup);
          alternativeGroup.Items.Add(alternativeDataItem);
          if (ConfigurationGroup.SelectedAlternative != null)
          {
              CheckIfAlternativeIsSelectedAndSetSelected(alternative, alternativeDataItem);
          }
     }
     DataGroupElements.Add(alternativeGroup);
 }
Ejemplo n.º 5
0
 public void OnCommandGroupSelectionChanged(ConfigurationGroup configuration)
 {
     Debug.WriteLine(configuration);
 }
Ejemplo n.º 6
0
 public ConfigTime(ConfigurationGroup group, DateTime time)
 {
     Group = group;
     Time  = time;
 }
        //public static SampleDataItem GetItem(string uniqueId)
        //{
        //    // Simple linear search is acceptable for small data sets
        //    var matches = _sampleDataSource.AllGroups.SelectMany(group => group.Items).Where((item) => item.UniqueId.Equals(uniqueId));
        //    if (matches.Count() == 1) return matches.First();
        //    return null;
        //}
        public SampleDataSource()
        {
            String ITEM_CONTENT = String.Format("Item Content: {0}\n\n{0}\n\n{0}\n\n{0}\n\n{0}\n\n{0}\n\n{0}",
                        "Curabitur class aliquam vestibulum nam curae maecenas sed integer cras phasellus suspendisse quisque donec dis praesent accumsan bibendum pellentesque condimentum adipiscing etiam consequat vivamus dictumst aliquam duis convallis scelerisque est parturient ullamcorper aliquet fusce suspendisse nunc hac eleifend amet blandit facilisi condimentum commodo scelerisque faucibus aenean ullamcorper ante mauris dignissim consectetuer nullam lorem vestibulum habitant conubia elementum pellentesque morbi facilisis arcu sollicitudin diam cubilia aptent vestibulum auctor eget dapibus pellentesque inceptos leo egestas interdum nulla consectetuer suspendisse adipiscing pellentesque proin lobortis sollicitudin augue elit mus congue fermentum parturient fringilla euismod feugiat");

            var group1 = new DataGroup("Group-1",
                    "basic aircraft",
                    "Assets/DarkGray.png"
                    );
            group1.Items.Add(new BasicDataItem("", "A320", "Assets/aircrafts/a320_transparent.png", group1, 60, 80));

            var group2 = new DataGroup("Group-1",
                    "upgrades",
                    "Assets/DarkGray.png"
                    );
            group2.Items.Add(new BasicDataItem("", "A320", "Assets/aircrafts/a320_transparent.png", group1, 40, 80));
            this.AircraftVersion.Add(group1);
            this.AircraftVersion.Add(group2);

            AircraftType.Add(new BasicDataItem("", "A318", "Assets/aircrafts/a320_transparent.png", group1, 60, 80));
            AircraftType.Add(new BasicDataItem("", "A319", "Assets/aircrafts/a320_transparent.png", group1, 60, 80));
            AircraftType.Add(new BasicDataItem("", "A320", "Assets/aircrafts/a320_transparent.png", group1, 60, 80));
            AircraftType.Add(new BasicDataItem("", "A321", "Assets/aircrafts/a320_transparent.png", group1, 60, 80));

            var group3 = new DataGroup("Group-1",
                    "AFR01",
                    "Assets/DarkGray.png"
                    );
            group3.Items.Add(new BasicDataItem("", "A320", "Assets/aircrafts/a320_transparent.png", group3, 25, 25));
            group3.Items.Add(new BasicDataItem("", "A320", "Assets/aircrafts/a320_transparent.png", group3, 25, 25));
            group3.Items.Add(new BasicDataItem("", "A320", "Assets/aircrafts/a320_transparent.png", group3, 25, 25));
            group3.Items.Add(new BasicDataItem("", "A320", "Assets/aircrafts/a320_transparent.png", group3, 25, 25));

            var group4 = new DataGroup("Group-1",
                    "AFR02",
                    "Assets/DarkGray.png"
                    );
            group4.Items.Add(new BasicDataItem("first", "A320", "Assets/aircrafts/a320_transparent.png", group4, 25, 25));
            group4.Items.Add(new BasicDataItem("sec", "A320", "Assets/aircrafts/a320_transparent.png", group4, 25, 25));
            group4.Items.Add(new BasicDataItem("thi", "A320", "Assets/aircrafts/a320_transparent.png", group4, 25, 25));
            group4.Items.Add(new BasicDataItem("fou", "A320", "Assets/aircrafts/a320_transparent.png", group4, 25, 25));
            group4.Items.Add(new BasicDataItem("fift", "A320", "Assets/aircrafts/a320_transparent.png", group4, 25, 25));
            this.AircraftVersion.Add(group3);
            this.AircraftVersion.Add(group4);

            _SampleDataItems = new ObservableCollection<SampleDataItem>()
                {
                    new SampleDataItem("communicationAta", "Communications","","","","",null),
                    new SampleDataItem("electricalPowerAta", "Electrical Power","","","","",null),
                    new SampleDataItem("equipmentAta", "Equipment/furnishings","","","","",null),
                    new SampleDataItem("navigationAta", "Navigation","","","","",null),
                    new SampleDataItem("autoFlightAta", "Auto flight","","","","",null),
                    new SampleDataItem("fireProtectionAta", "Fire protection","","","","",null),
                    new SampleDataItem("oxygenAta", "Oxygen","","","","",null),
                    new SampleDataItem("informationSystemsAta", "InformationSystems","","","","",null),
                    new SampleDataItem("windowsAta", "Windows","","","","",null)
                };
            //group1.Items.Add(new SampleDataItem("Group-1-Item-2",
            //        "Item Title: 2",
            //        "Item Subtitle: 2",
            //        "Assets/HubPage/3.jpg",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group1) { Date = "Nov.25.2011", Sub = "CNN has multiple crews in Gaza, Israel and neighboring" });

            //group1.Items.Add(new SampleDataItem("Group-1-Item-3",
            //        "Item Title: 3",
            //        "Item Subtitle: 3",
            //        "Assets/HubPage/3.jpg",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group1) { Date = "Nov.25.2011", Sub = "CNN has multiple crews in Gaza, Israel and neighboring" });

            //group1.Items.Add(new SampleDataItem("Group-1-Item-4",
            //        "Item Title: 4",
            //        "Item Subtitle: 4",
            //        "Assets/HubPage/3.jpg",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group1) { Date = "Nov.25.2011", Sub = "CNN has multiple crews in Gaza, Israel and neighboring" });
            //group1.Items.Add(new SampleDataItem("Group-1-Item-5",
            //        "Item Title: 5",
            //        "Item Subtitle: 5",
            //        "Assets/HubPage/3.jpg",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group1) { Date = "Nov.25.2011", Sub = "CNN has multiple crews in Gaza, Israel and neighboring" });
            //group1.Items.Add(new SampleDataItem("Group-1-Item-5",
            //          "Item Title: 5",
            //          "Item Subtitle: 5",
            //          "Assets/HubPage/3.jpg",
            //          "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //          ITEM_CONTENT,
            //          group1) { Date = "Nov.25.2011", Sub = "CNN has multiple crews in Gaza, Israel and neighboring" });
            //group1.Items.Add(new SampleDataItem("Group-1-Item-6",
            //           "Item Title: 5",
            //           "Item Subtitle: 5",
            //           "Assets/HubPage/3.jpg",
            //           "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //           ITEM_CONTENT,
            //           group1) { Date = "Nov.25.2011", Sub = "CNN has multiple crews in Gaza, Israel and neighboring" });
            //group1.Items.Add(new SampleDataItem("Group-1-Item-7",
            //           "Item Title: 5",
            //           "Item Subtitle: 5",
            //           "Assets/HubPage/3.jpg",
            //           "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //           ITEM_CONTENT,
            //           group1) { Date = "Nov.25.2011", Sub = "CNN has multiple crews in Gaza, Israel and neighboring" });
            //group1.Items.Add(new SampleDataItem("Group-1-Item-8",
            //            "Item Title: 5",
            //            "Item Subtitle: 5",
            //            "Assets/HubPage/3.jpg",
            //            "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //            ITEM_CONTENT,
            //            group1) { Date = "Nov.25.2011", Sub = "CNN has multiple crews in Gaza, Israel and neighboring" });
            //group1.Items.Add(new SampleDataItem("Group-1-Item-9",
            //            "Item Title: 5",
            //            "Item Subtitle: 5",
            //            "Assets/HubPage/3.jpg",
            //            "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //            ITEM_CONTENT,
            //            group1) { Date = "Nov.25.2011", Sub = "CNN has multiple crews in Gaza, Israel and neighboring" });

            var group = new HubDataGroup("aircraft programm goup");
            var aircraftSelection = new SummarySelectionDataItem("aircraftSelection", "Select aircrafts", "E0EB", group, 0);
            var upgradeSelection = new SummarySelectionDataItem("aircraftSelection", "Select aircrafts", "", group,1);
            //group.Items.Add(aircraftProgramm);
            //group.Items.Add(aircraftSelection);
            group.Items.Add(new CompleteSampleDataItem(group));

            var newGroup = new ConfigurationGroup("confGroup1", "Group 1", "");

            this.AllGroups.Add(group);
            this.AllGroups.Add(group);
            //var group2 = new SampleDataGroup("Group-2",
            //        "Group Title: 2",
            //        "Group Subtitle: 2",
            //        "Assets/LightGray.png",
            //        "Group Description: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus tempor scelerisque lorem in vehicula. Aliquam tincidunt, lacus ut sagittis tristique, turpis massa volutpat augue, eu rutrum ligula ante a ante");
            //group2.Items.Add(new SampleDataItem("Group-2-Item-1",
            //        "Item Title: 1",
            //        "Item Subtitle: 1",
            //        "Assets/DarkGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group2));
            //group2.Items.Add(new SampleDataItem("Group-2-Item-2",
            //        "Item Title: 2",
            //        "Item Subtitle: 2",
            //        "Assets/MediumGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group2));
            //group2.Items.Add(new SampleDataItem("Group-2-Item-3",
            //        "Item Title: 3",
            //        "Item Subtitle: 3",
            //        "Assets/LightGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group2));
            //this.AllGroups.Add(group2);

            //var group3 = new SampleDataGroup("Group-3",
            //        "Group Title: 3",
            //        "Group Subtitle: 3",
            //        "Assets/MediumGray.png",
            //        "Group Description: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus tempor scelerisque lorem in vehicula. Aliquam tincidunt, lacus ut sagittis tristique, turpis massa volutpat augue, eu rutrum ligula ante a ante");
            //group3.Items.Add(new SampleDataItem("Group-3-Item-1",
            //        "Item Title: 1",
            //        "Item Subtitle: 1",
            //        "Assets/MediumGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group3));
            //group3.Items.Add(new SampleDataItem("Group-3-Item-2",
            //        "Item Title: 2",
            //        "Item Subtitle: 2",
            //        "Assets/LightGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group3));
            //group3.Items.Add(new SampleDataItem("Group-3-Item-3",
            //        "Item Title: 3",
            //        "Item Subtitle: 3",
            //        "Assets/DarkGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group3));
            //group3.Items.Add(new SampleDataItem("Group-3-Item-4",
            //        "Item Title: 4",
            //        "Item Subtitle: 4",
            //        "Assets/LightGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group3));
            //group3.Items.Add(new SampleDataItem("Group-3-Item-5",
            //        "Item Title: 5",
            //        "Item Subtitle: 5",
            //        "Assets/MediumGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group3));
            //group3.Items.Add(new SampleDataItem("Group-3-Item-6",
            //        "Item Title: 6",
            //        "Item Subtitle: 6",
            //        "Assets/DarkGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group3));
            //group3.Items.Add(new SampleDataItem("Group-3-Item-7",
            //        "Item Title: 7",
            //        "Item Subtitle: 7",
            //        "Assets/MediumGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group3));
            //this.AllGroups.Add(group3);

            //var group4 = new SampleDataGroup("Group-4",
            //        "Group Title: 4",
            //        "Group Subtitle: 4",
            //        "Assets/LightGray.png",
            //        "Group Description: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus tempor scelerisque lorem in vehicula. Aliquam tincidunt, lacus ut sagittis tristique, turpis massa volutpat augue, eu rutrum ligula ante a ante");
            //group4.Items.Add(new SampleDataItem("Group-4-Item-1",
            //        "Item Title: 1",
            //        "Item Subtitle: 1",
            //        "Assets/DarkGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group4));
            //group4.Items.Add(new SampleDataItem("Group-4-Item-2",
            //        "Item Title: 2",
            //        "Item Subtitle: 2",
            //        "Assets/LightGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group4));
            //group4.Items.Add(new SampleDataItem("Group-4-Item-3",
            //        "Item Title: 3",
            //        "Item Subtitle: 3",
            //        "Assets/DarkGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group4));
            //group4.Items.Add(new SampleDataItem("Group-4-Item-4",
            //        "Item Title: 4",
            //        "Item Subtitle: 4",
            //        "Assets/LightGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group4));
            //group4.Items.Add(new SampleDataItem("Group-4-Item-5",
            //        "Item Title: 5",
            //        "Item Subtitle: 5",
            //        "Assets/MediumGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group4));
            //group4.Items.Add(new SampleDataItem("Group-4-Item-6",
            //        "Item Title: 6",
            //        "Item Subtitle: 6",
            //        "Assets/LightGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group4));
            //this.AllGroups.Add(group4);

            //var group5 = new SampleDataGroup("Group-5",
            //        "Group Title: 5",
            //        "Group Subtitle: 5",
            //        "Assets/MediumGray.png",
            //        "Group Description: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus tempor scelerisque lorem in vehicula. Aliquam tincidunt, lacus ut sagittis tristique, turpis massa volutpat augue, eu rutrum ligula ante a ante");
            //group5.Items.Add(new SampleDataItem("Group-5-Item-1",
            //        "Item Title: 1",
            //        "Item Subtitle: 1",
            //        "Assets/LightGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group5));
            //group5.Items.Add(new SampleDataItem("Group-5-Item-2",
            //        "Item Title: 2",
            //        "Item Subtitle: 2",
            //        "Assets/DarkGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group5));
            //group5.Items.Add(new SampleDataItem("Group-5-Item-3",
            //        "Item Title: 3",
            //        "Item Subtitle: 3",
            //        "Assets/LightGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group5));
            //group5.Items.Add(new SampleDataItem("Group-5-Item-4",
            //        "Item Title: 4",
            //        "Item Subtitle: 4",
            //        "Assets/MediumGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group5));
            //this.AllGroups.Add(group5);

            //var group6 = new SampleDataGroup("Group-6",
            //        "Group Title: 6",
            //        "Group Subtitle: 6",
            //        "Assets/DarkGray.png",
            //        "Group Description: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus tempor scelerisque lorem in vehicula. Aliquam tincidunt, lacus ut sagittis tristique, turpis massa volutpat augue, eu rutrum ligula ante a ante");
            //group6.Items.Add(new SampleDataItem("Group-6-Item-1",
            //        "Item Title: 1",
            //        "Item Subtitle: 1",
            //        "Assets/LightGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group6));
            //group6.Items.Add(new SampleDataItem("Group-6-Item-2",
            //        "Item Title: 2",
            //        "Item Subtitle: 2",
            //        "Assets/DarkGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group6));
            //group6.Items.Add(new SampleDataItem("Group-6-Item-3",
            //        "Item Title: 3",
            //        "Item Subtitle: 3",
            //        "Assets/MediumGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group6));
            //group6.Items.Add(new SampleDataItem("Group-6-Item-4",
            //        "Item Title: 4",
            //        "Item Subtitle: 4",
            //        "Assets/DarkGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group6));
            //group6.Items.Add(new SampleDataItem("Group-6-Item-5",
            //        "Item Title: 5",
            //        "Item Subtitle: 5",
            //        "Assets/LightGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group6));
            //group6.Items.Add(new SampleDataItem("Group-6-Item-6",
            //        "Item Title: 6",
            //        "Item Subtitle: 6",
            //        "Assets/MediumGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group6));
            //group6.Items.Add(new SampleDataItem("Group-6-Item-7",
            //        "Item Title: 7",
            //        "Item Subtitle: 7",
            //        "Assets/DarkGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group6));
            //group6.Items.Add(new SampleDataItem("Group-6-Item-8",
            //        "Item Title: 8",
            //        "Item Subtitle: 8",
            //        "Assets/LightGray.png",
            //        "Item Description: Pellentesque porta, mauris quis interdum vehicula, urna sapien ultrices velit, nec venenatis dui odio in augue. Cras posuere, enim a cursus convallis, neque turpis malesuada erat, ut adipiscing neque tortor ac erat.",
            //        ITEM_CONTENT,
            //        group6));
            //this.AllGroups.Add(group6);
        }
Ejemplo n.º 8
0
 public DuplicateConfigurationGroupNameException(string duplicateName, ConfigurationGroup existingGroup)
     : base(string.Format("A configuration group name '{0}' has already been defined:\n" +
                          "Existing group:\n{1}\n" +
                          duplicateName, existingGroup))
 {
 }
        public Tuple <Machine, ConfigurationGroup, int> GetBestMachine(ProductMasterItem nextItem, string lineToRunOn)
        {
            Machine            bestMachine = null;
            int                lineIndex   = 0;
            ConfigurationGroup configGroup = null;

            List <Machine> otherMachines = new List <Machine>();

            foreach (var shiftLogic in scheduleLine.ChildrenLogic)
            {
                otherMachines.AddRange(from proLogic in shiftLogic.ChildrenLogic select proLogic as CoatingScheduleProduct into prod where prod != null && prod.Machine != null select prod.Machine);
            }

            // get machines that can make
            List <Machine> machines = MachineHandler.Instance.MachineList.Where(machine => machine.LinesCanRunOn.Any(l => l.Equals(lineToRunOn)) &&
                                                                                machine.ConfigurationList.Any(conf => conf.CanMake(nextItem))).ToList();

            foreach (var machine in machines)
            {
                if (otherMachines.Any(mac => mac.MachineConflicts.Contains(machine.Name)))
                {
                    continue;                                                                        // if other machines conflict with this, continue
                }
                if (otherMachines.Any(otherMachine => machine.MachineConflicts.Contains(otherMachine.Name)))
                {
                    continue;                                                                                          // if this machine conflicts with others, skip
                }
                // remove this machine if line conflicts
                bool conflicted = scheduleLine.ChildrenLogic.Any(shift => shift.ChildrenLogic.Any(x => x is CoatingScheduleProduct) && machine.LineConflicts.Contains(shift.CoatingLine));
                if (conflicted)
                {
                    continue;
                }

                bestMachine = machine;
                //get option that works
                lineIndex = StaticFactoryValuesManager.CoatingLines.IndexOf(lineToRunOn);
                var groups = machine.GetConfigGroups(nextItem);
                if (GenerationData.LastRunMachine.ContainsKey(bestMachine))
                {
                    var configTime = GenerationData.LastRunMachine[bestMachine];
                    // check if machine config is not the same
                    if (!groups.Any(c => c.Equals(configTime.Group)))
                    {
                        // check if the machine will be ready on time
                        if (configTime.Time <=
                            StaticFunctions.GetDayAndTime(scheduleLine.Date, scheduleLine.Shift.StartTime))
                        {
                            configGroup = machine.ConfigurationList.FirstOrDefault(c => c.CanMake(nextItem));
                            break;
                        }
                        else
                        {
                            // can't use the config yet - not ready
                            StaticFunctions.OutputDebugLine(
                                $"Machine {machine.Name} can't be used. It is unavailable until {GenerationData.LastRunMachine[machine].Time /*+ config.ChangeTime*/}. It is needed by {nextItem.Description} by {StaticFunctions.GetDayAndTime(scheduleLine.Date, scheduleLine.Shift.StartTime)}");
                            bestMachine = null;
                            lineIndex   = 0;
                            configGroup = null;
                        }
                    }
                    else
                    {
                        break;
                    }
                }
                else // no last use. No change time assumed.
                {
                    // check for last used config
                    if (GenerationData.LastRunMachine.ContainsKey(bestMachine))
                    {
                        configGroup = GenerationData.LastRunMachine[bestMachine].Group;
                    }
                    else // assuming first thing to be made on line
                    {
                        configGroup = bestMachine.ConfigurationList.FirstOrDefault(c => c.CanMake(nextItem));
                    }
                    break;
                }
            }

            return(new Tuple <Machine, ConfigurationGroup, int>(bestMachine, configGroup, lineIndex));
        }