public Driver(string paramFilePath) { string optionName = this.GetType().Name; var dt = ConvertCSVtoDataTable(paramFilePath); var newSort = (from row in dt.AsEnumerable() group row by new { ID = row.Field <string>("Product ID"), Workcenter = row.Field <string>("Work Center") } into grp //orderby grp.Key select new { Product = grp.Key.ID, workcenter = grp.Key.Workcenter, Sum = grp.Sum(r => Double.Parse(r.Field <string>("UNIT TIME (MIN)"))) }).ToList(); using (var db = new TimeContext()) { foreach (var row in newSort) { ProdTB.AddInstance(row.Product, row.workcenter); OptionTB.AddInstance(optionName, row.Sum); ProdTB.AddOption(row.Product, row.workcenter, optionName, row.Sum); } } }
public ChicPle(string paramFilePath) { string optionName = this.GetType().Name; var dt = ConvertCSVtoDataTable(paramFilePath); var newSort = (from row in dt.AsEnumerable() group row by new { ID = row.Field <string>("Product ID"), Length = row.Field <string>("Length"), Workcenter = row.Field <string>("Work Center") } into grp //orderby grp.Key select new { Product = grp.Key.ID, length = Int32.Parse(grp.Key.Length), workcenter = grp.Key.Workcenter, Sum = grp.Sum(r => Double.Parse(r.Field <string>("Time(min)"))) }).ToList(); foreach (var row in newSort) { ProdTB.AddInstance(row.Product, row.workcenter); OptionTB.AddInstance(optionName, row.Sum, row.length); ProdTB.AddOption(row.Product, row.workcenter, optionName, row.Sum, row.length); } }
public Hanger(string paramFilePath) { string optionName = this.GetType().Name; var dt = ConvertCSVtoDataTable(paramFilePath); var newSort = (from row in dt.AsEnumerable() group row by new { ID = row.Field <string>("Product ID"), SectionType = row.Field <string>("Section Type"), Workcenter = row.Field <string>("Work Center") } into grp //orderby grp.Key select new { Product = grp.Key.ID, sectionType = grp.Key.SectionType, workcenter = grp.Key.Workcenter, Sum = grp.Sum(r => Double.Parse(r.Field <string>("Total Time (min)"))) }).ToList(); foreach (var row in newSort) { OptionTB.AddInstance(optionName, row.Sum); ProdTB.AddInstance(row.Product, row.workcenter); ParametersTB.AddInstance("SectionType", row.sectionType); ProdTB.AddOption(row.Product, row.workcenter, optionName, row.Sum); OptionTB.AddParam(optionName, row.Sum, "SectionType", row.sectionType); } }
public Housing(string paramFilePath) { string optionName = this.GetType().Name; var dt = ConvertCSVtoDataTable(paramFilePath); var newSort = (from row in dt.AsEnumerable() group row by new { ID = row.Field <string>("Product ID"), Length = row.Field <string>("Length"), mounting = row.Field <string>("Flange"), section = row.Field <string>("Section"), Workcenter = row.Field <string>("Work Center") } into grp //orderby grp.Key select new { Product = grp.Key.ID, length = Int32.Parse(grp.Key.Length), workcenter = grp.Key.Workcenter, section = grp.Key.section, mounting = grp.Key.mounting, Sum = grp.Sum(r => Double.Parse(r.Field <string>("Time(min)"))) }).ToList(); foreach (var row in newSort) { var mounting = row.mounting; switch (mounting) { case "Spackle Flange": mounting = "DS"; break; case "Flangeless": mounting = "D"; break; default: mounting = "-"; break; } OptionTB.AddInstance(optionName, row.Sum, row.length); ProdTB.AddInstance(row.Product, row.workcenter); Dictionary <string, string> parameters = new Dictionary <string, string>(); parameters.Add("Section", row.section); parameters.Add("Mounting", mounting); foreach (var instace in parameters) { ParametersTB.AddInstance(instace.Key, instace.Value); OptionTB.AddParam(optionName, row.Sum, instace.Key, instace.Value, row.length); } ProdTB.AddOption(row.Product, row.workcenter, optionName, row.Sum, row.length); } }
public Pack(string paramFilePath) { string optionName = this.GetType().Name; var dt = ConvertCSVtoDataTable(paramFilePath); var newSort = (from row in dt.AsEnumerable() group row by new { ID = row.Field <string>("Product ID"), mounting = row.Field <string>("Description"), Workcenter = row.Field <string>("Work Center"), Length = row.Field <string>("Length") } into grp //orderby grp.Key select new { Product = grp.Key.ID, workcenter = grp.Key.Workcenter, mounting = grp.Key.mounting, Length = grp.Key.Length, Sum = grp.Sum(r => Double.Parse(r.Field <string>("Time (min)"))) }).ToList(); using (var db = new TimeContext()) { foreach (var row in newSort) { int length = Int32.Parse(row.Length); string mounting = row.mounting; switch (mounting) { case "Spackle Flange": mounting = "DS"; break; case "Flangeless": mounting = "D"; break; default: mounting = "-"; break; } ProdTB.AddInstance(row.Product, row.workcenter); OptionTB.AddInstance(optionName, row.Sum, length); ParametersTB.AddInstance("Mounting", mounting); ProdTB.AddOption(row.Product, row.workcenter, optionName, row.Sum); OptionTB.AddParam(optionName, row.Sum, "Mounting", mounting, length); } } }
public CartBoard(string paramFilePath) { string optionName = this.GetType().Name; var dt = ConvertCSVtoDataTable(paramFilePath); var newSort = (from row in dt.AsEnumerable() group row by new { ID = row.Field <string>("Cartridge/Board"), Desc = row.Field <string>("Description"), Type = row.Field <string>("Type"), Workcenter = row.Field <string>("Work Center") } into grp //orderby grp.Key select new { cartboard = grp.Key.ID, desc = grp.Key.Desc, type = grp.Key.Type, workcenter = grp.Key.Workcenter, Sum = grp.Sum(r => Double.Parse(r.Field <string>("Total Time"))) }).ToList(); bool morepage; var products = UD03BO.GetRows(@"Key1 = 'PRODUCTID'", "", 0, 0, out morepage); foreach (var row in newSort) { var prodlist = (from myRow in products.UD03.AsEnumerable() where myRow.Field <string>("CartBoard_c") == row.cartboard && myRow.Field <string>("Direct_C") == row.desc select myRow.Field <string>("Key2")).ToList(); foreach (var prod in prodlist) { using (var db = new TimeContext()) { ProdTB.AddInstance(prod, row.workcenter); OptionTB.AddInstance(optionName, row.Sum); ParametersTB.AddInstance("Type", row.type); ProdTB.AddOption(prod, row.workcenter, optionName, row.Sum); OptionTB.AddParam(optionName, row.Sum, "Type", row.type); } } } }