public ActionResult Index() { CompareBOMViewModel viewModel = new CompareBOMViewModel(); var rls = from r in rclms.VProductDetail.AsEnumerable() select new { FGCode = r.ERPCode, FGName = r.DescriptionCom, Kibble = r.CodeRecipe, Bag = r.CodeBag }; var kpi = from k in lskpi.PackingChecking.AsEnumerable() select new { FGCode = k.FGCode, FGName = k.ProductLocal, Kibble = k.KibbleCode, Bag = k.BagCode }; var rBom = rls.ToList(); var kBom = kpi.ToList(); viewModel.RclmsCnt = rBom.Count(); viewModel.LskpiCnt = kBom.Count(); var kibbleDiff = from r in rBom from k in kBom where r.FGCode == k.FGCode && r.Kibble != k.Kibble select new BomDiff { FGCode = r.FGCode, FGName = k.FGName, RCLMSCode = r.Kibble, RCLMSName = r.Kibble, LSKPICode = k.Kibble, LSKPIName = k.Kibble }; var bagDiff = from r in rBom from k in kBom where r.FGCode == k.FGCode && r.Bag != k.Bag select new BomDiff { FGCode = r.FGCode, FGName = k.FGName, RCLMSCode = r.Bag, RCLMSName = r.Bag, LSKPICode = k.Bag, LSKPIName = k.Bag }; viewModel.KblDiff = kibbleDiff.ToList(); viewModel.PkgDiff = bagDiff.ToList(); var kpiFg = from k in kBom join r in rBom on k.FGCode equals r.FGCode into grp from g in grp.DefaultIfEmpty() where g == null select new FGInfo { FGCode = k.FGCode, FGName = k.FGName, KblCode = k.Kibble, KblName = k.Kibble, PkgCode = k.Bag, PkgName = k.Bag }; var rlsFg = from r in rBom join k in kBom on r.FGCode equals k.FGCode into grp from g in grp.DefaultIfEmpty() where g == null select new FGInfo { FGCode = r.FGCode, FGName = r.FGName, KblCode = r.Kibble, KblName = r.Kibble, PkgCode = r.Bag, PkgName = r.Bag }; viewModel.LskpiFG = kpiFg.ToList(); viewModel.RclmsFG = rlsFg.ToList(); return View(viewModel); }
public ActionResult Test() { CompareBOMViewModel viewModel = new CompareBOMViewModel(); viewModel.LskpiCnt = 344; viewModel.RclmsCnt = 344; viewModel.KblDiff = new List<BomDiff> { new BomDiff{ FGCode="28123022", FGName="SHN ミニ マチュア+8 2kg/61", LSKPICode="X4118", LSKPIName="SHN ミニアダルト", RCLMSCode="X4137", RCLMSName="SHN ミニマチュア" }, new BomDiff{ FGCode="28135022", FGName="SHN ミニ ライト 2kg/6", LSKPICode="X4815", LSKPIName="VPC ジュニアケア", RCLMSCode="X5134", RCLMSName="VPC ウェイトケア 15kg" }, }; viewModel.PkgDiff = new List<BomDiff>{ new BomDiff{ FGCode="28122008", FGName="SHN ミニ アダルト 800g/10", LSKPICode="S17358", LSKPIName="SHN ミニアダルト", RCLMSCode="S17294R", RCLMSName="SHN ミニアダルト" }, new BomDiff{ FGCode="31614022", FGName="FBN メインクーン 2kg/6", LSKPICode="S20092", LSKPIName="P/FBN メインクーン 2kg/6", RCLMSCode="S20092R", RCLMSName="P/FBN メインクーン" }, }; viewModel.RclmsFG = new List<FGInfo>{ new FGInfo{ FGCode="28123022", FGName="SHN ミニ マチュア+8 2kg/61", KblCode="X4137", KblName="SHN ミニマチュア", PkgCode="S17296S", PkgName="P/SHN ミニ マチュア+8 2kg" } }; viewModel.LskpiFG = new List<FGInfo>{ new FGInfo{ FGCode="28135022", FGName="SHN ミニ ライト 2kg/6", KblCode="X5134", KblName="VPC ウェイトケア 15kg", PkgCode="S17364", PkgName="P/SHN ミニ ライト 2kg" } }; return View(viewModel); }