コード例 #1
0
        /// <summary>
        /// Returns amount of batches and production in each batch, calculated from workload "Zeit" input
        /// </summary>
        /// <param name="workload"></param>
        /// <returns></returns>
        public static Batch[] CalculateBatches(double workload, LineCompatibility line)
        {
            var batches = new List <Batch>();

            if (workload < BATCHDAYSLIMIT)
            {
                batches.Add(new Batch(workload, line));
            }
            else
            {
                int batchCount = (int)(workload / WORKHOURS_PER_WEEK);
                batches.AddRange(Enumerable.Range(0, batchCount).Select(i => new Batch(WORKHOURS_PER_WEEK, line)));
                batches.Add(new Batch(workload - batchCount * WORKHOURS_PER_WEEK, line));
            }
            return(batches.ToArray());
        }
コード例 #2
0
 public Batch(double usedWorkHours, LineCompatibility compatibility)
 {
     UsedWorkHours = usedWorkHours;
     Compatibility = compatibility;
 }