예제 #1
0
 private bool Filter(PlantOrderModel plantOrder, string filter)
 {
     return(plantOrder.Number?.Contains(filter, StringComparison.InvariantCultureIgnoreCase) == true ||
            plantOrder.Name?.Contains(filter, StringComparison.InvariantCultureIgnoreCase) == true ||
            plantOrder.Description?.Contains(filter, StringComparison.InvariantCultureIgnoreCase) == true ||
            plantOrder.Section?.Contains(filter, StringComparison.InvariantCultureIgnoreCase) == true);
 }
예제 #2
0
        private void DataGridPlantOrder_LoadingRowGroup(object sender, DataGridRowGroupHeaderEventArgs e)
        {
            ICollectionViewGroup group = e.RowGroupHeader.CollectionViewGroup;
            PlantOrderModel      item  = group.GroupItems[0] as PlantOrderModel;

            e.RowGroupHeader.PropertyValue = PlantOrderViewModel.GetPlantOrderMainNumber(item.Number);
        }
예제 #3
0
        private async Task GetElements(PlantOrderModel plantOrder, DivisionModel division)
        {
            PlantOrder = plantOrder;
            List <ElementModel> elements;

            var filters = await Proxy.GetFiltersAsync(plantOrder.Id, CurrentEmployee.EmployeeId);

            FilterCollection.Load(filters);

            if (division.DivisionType.DivisionType == Contracts.Domain.Core.Enums.DivisionType.Profile)
            {
                elements = await Proxy.GetElementProfiles(plantOrder.Id, division.DivisionId);

                DataGridElementView.Columns[2].Header = "Profil";
            }
            else
            {
                elements = await Proxy.GetElements();

                DataGridElementView.Columns[2].Header = "Position";
                foreach (var element in elements)
                {
                    element.Contraction = (element.Count % 2 == 0) ? "Bl" : "Fl";

                    Random rnd = new Random();
                    element.Amount = Math.Round(rnd.NextDouble() * element.Count);
                }
            }

            for (int i = 0; i < DivisionComboBox.Items.Count; i++)
            {
                if (DivisionComboBox.Items[i] is DivisionModel item)
                {
                    if (item.DivisionId == division.DivisionId)
                    {
                        DivisionComboBox.SelectedIndex = i;
                        break;
                    }
                }
            }

            PlantOrderHeaderText.Text = string.Format("{0:s} - {1:s} - {2:s} - {3:s}", plantOrder.Number, plantOrder.Name, plantOrder.Section, plantOrder.Description);
            LastRefreshText.Text      = DateTime.Now.ToString("hh:mm:ss - ddd d MMM", CultureInfo.CreateSpecificCulture("de-DE"));

            var session = new ElementViewSession()
            {
                Divison = division, PlantOder = plantOrder
            };

            if (await ElementViewSession.SaveAsync(session) == false)
            {
                NotificationControl.Show("Die aktuelle Sitzung konnte nicht gespeichert werden", 4000);
            }

            ElementCollection.Load(elements);
        }
예제 #4
0
        public ProjectPlantOrderSession Find(PlantOrderModel plantOrder)
        {
            foreach (var item in PlantOrderSession)
            {
                if (item.PlantOrder == plantOrder)
                {
                    return(item);
                }
            }

            return(null);
        }
예제 #5
0
        public Task <bool> Update(PlantOrderModel plantOrder, DivisionModel division)
        {
            if (PlantOrderSession != null)
            {
                foreach (var item in PlantOrderSession)
                {
                    if (item.PlantOrder.Id == plantOrder.Id)
                    {
                        item.Division = division;
                    }
                }
                return(Save());
            }

            return(Task.FromResult(false));
        }
예제 #6
0
        private string GetProjectIdentifier(PlantOrderModel plantOrder, FileEntryModel fileEntry)
        {
            if (fileEntry != null)
            {
                if (fileEntry.FileInfo != null)
                {
                    return($"{fileEntry.FileInfo.ProjectIdentifier}    {fileEntry.FileInfo.Section}");
                }

                return(fileEntry.Name);
            }
            else if (plantOrder != null)
            {
                return($"{plantOrder.Number}    {plantOrder.Section}");
            }
            else
            {
                return(null);
            }
        }
예제 #7
0
        public FileEntryModel FindFilename(PlantOrderModel plantOrder)
        {
            var projectIdentifier = plantOrder.Number.Replace('.', '-').Trim();

            foreach (var folder in SelectedProject.SubFolders)
            {
                foreach (var entry in folder.Value.Files)
                {
                    var fileInfo = entry.Value.FileInfo;
                    if (fileInfo != null)
                    {
                        if (projectIdentifier == fileInfo.ProjectIdentifier)
                        {
                            return(entry.Value);
                        }
                    }
                }
            }

            return(null);
        }
예제 #8
0
        public Task <bool> Remove(PlantOrderModel plantOrder)
        {
            bool result = false;

            for (int i = PlantOrderSession.Count - 1; i >= 0; i--)
            {
                if (PlantOrderSession[i].PlantOrder == plantOrder)
                {
                    PlantOrderSession.RemoveAt(i);
                    result = true;
                    break;
                }
            }

            if (result)
            {
                return(Save());
            }
            else
            {
                return(Task.FromResult(false));
            }
        }
예제 #9
0
 private void SaveProject(PlantOrderModel plantOrder, DivisionModel division)
 {
 }