Beispiel #1
0
        public List <DowntimeParts> GetBreaksDowntimeParts(
            List <DowntimeDto> downtime,
            SwotTargetWithDeptId swotTarget
            )
        {
            var breaksDowntime = downtime
                                 .Where(x => x.Reason2.ToLower().Contains("breaks"))
                                 .GroupBy(x => new { x.Line, x.ShifDate, x.Shift })
                                 .Select(
                x =>
            {
                var pph = swotTarget?.TargetPartsPerHour ?? 0;
                var ppm = (decimal)pph / 60;

                var downtimeMinutes = x.Sum(d => d.DowntimeLoss ?? 0);
                var downtimeParts   = downtimeMinutes * ppm;

                return(new DowntimeParts
                {
                    Line = x.Key.Line,
                    ShiftDate = x.Key.ShifDate,
                    Shift = x.Key.Shift,
                    Downtime = downtimeMinutes,
                    DowntimeInParts = downtimeParts
                });
            }
                )
                                 .ToList();

            return(breaksDowntime);
        }
        public decimal GetScrapTarget(SwotTargetWithDeptId data, string scrapType)
        {
            switch (scrapType)
            {
            case "Foundry":
                return(data.FoundryScrapTarget);

            case "Machining":
                return(data.MachineScrapTarget);

            case "Anodize":
            case "Skirt Coat":
            case "Assembly":
                return(data.AfScrapTarget);
            }

            return(0);
        }