Esempio n. 1
0
        internal List <Operation> GetSortedByRouteOperationsByWorkshopId(ProductionItemQuantum productionItemQuantum, int?workshopId)
        {
            var opers = new List <Operation>();

            var operationsInWorkshops = workshopId.HasValue
            ? productionItemQuantum.Detail.Routes.First().Operations.Where(o => o.Equipment.WorkshopId == workshopId)
            : productionItemQuantum.Detail.Routes.First().Operations.Where(o => o.Equipment.Workshop != null);


            var opersSequence = Array.ConvertAll(productionItemQuantum.Detail.Routes.First().OperationsSequence.Split(','), int.Parse).ToList();

            foreach (var operId in opersSequence)
            {
                var oper = operationsInWorkshops.FirstOrDefault(o => o.Id == operId);
                if (oper != null)
                {
                    opers.Add(oper);
                }
            }

            if (!workshopId.HasValue)
            {
                opers = opers.GroupBy(o => o.Equipment.WorkshopId).SelectMany(g => g.ToList()).ToList();
            }

            return(opers);
        }
Esempio n. 2
0
        internal ProductionItemQuantum ConvertProductDto(ProductDto productDto)
        {
            var productionItemQuantum = new ProductionItemQuantum()
            {
                Count    = productDto.Count,
                DetailId = productDto.Id,
            };

            return(productionItemQuantum);
        }
Esempio n. 3
0
        internal ProductionItemQuantum ConvertProductionItemQuantum(ProductionItemQuantumDto productionItemQuantumDto)
        {
            var productionItemQuantum = new ProductionItemQuantum()
            {
                Count  = productionItemQuantumDto.Count,
                Detail = ConvertDetail(productionItemQuantumDto.Detail),
            };

            return(productionItemQuantum);
        }
Esempio n. 4
0
        internal ProductionItemQuantumDto ConvertProductionItemQuantum(ProductionItemQuantum productionItemQuantum)
        {
            var productionItemQuantumDto = new ProductionItemQuantumDto()
            {
                Count            = productionItemQuantum.Count,
                Detail           = ConvertDetail(productionItemQuantum.Detail),
                Id               = productionItemQuantum.Id,
                ProductionItemId = productionItemQuantum.ProductionItemId
            };

            return(productionItemQuantumDto);
        }
Esempio n. 5
0
        internal ProductionItemQuantumDto ConvertProductionItemQuantumForViewing(ProductionItemQuantum productionItemQuantum)
        {
            var productionItemQuantumDto = new ProductionItemQuantumDto()
            {
                Count              = productionItemQuantum.Count,
                Detail             = ConvertDetailForViewing(productionItemQuantum.Detail),
                Id                 = productionItemQuantum.Id,
                ProductionItemId   = productionItemQuantum.ProductionItemId,
                EndTimes           = productionItemQuantum.EndTimes.Select(a => a.Ticks).ToList(),
                MachiningDurations = productionItemQuantum.MachiningDurations.Select(a => a.Ticks).ToList(),
                StartTimes         = productionItemQuantum.StartTimes.Select(a => a.Ticks).ToList()
            };

            return(productionItemQuantumDto);
        }