Haruki_Kenshin

Untitled

Oct 15th, 2018
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.22 KB | None | 0 0
  1. public ActionResult Import()
  2. {
  3.  
  4. var fileName = string.Format("{0}planilha.xlsx", HttpContext.Request.PhysicalApplicationPath);
  5. var connectionString = string.Format("Provider=Microsoft.ACE.OLEDB.12.0; data source={0}; Extended Properties=Excel 8.0;", fileName);
  6.  
  7. var adapter = new OleDbDataAdapter("SELECT * FROM [Sheet 1$]", connectionString);
  8. var ds = new DataSet();
  9.  
  10. adapter.Fill(ds, "anyNameHere");
  11.  
  12. DataTable data = ds.Tables["anyNameHere"];
  13.  
  14. List<EquipmentBuilder1> EquipmentBuilderList = new List<EquipmentBuilder1>();
  15.  
  16. int RowNumber = 0;
  17.  
  18. foreach (DataRow Row in data.Rows)
  19. {
  20. var productName = Row[1];
  21.  
  22. var equipmentBuilder = Row[8];
  23.  
  24. foreach (var EquipmentBuilder in equipmentBuilder.ToString().Split(';'))
  25. {
  26. var FoundEquipmentBuilder = EquipmentBuilderList.FirstOrDefault(x => x.Builder == EquipmentBuilder);
  27.  
  28. if (FoundEquipmentBuilder == null)
  29. {
  30. //se nao encontarr um fabricante, adicioanr o fabricante mais o produto atual
  31. EquipmentBuilder1 equipmentBuilder1 = new EquipmentBuilder1()
  32. {
  33. Builder = EquipmentBuilder
  34. };
  35.  
  36. equipmentBuilder1.ProductList = new List<Product1>()
  37. {
  38. new Product1(productName.ToString(), RowNumber)
  39. };
  40.  
  41. EquipmentBuilderList.Add(equipmentBuilder1);
  42. }
  43. else
  44. {
  45. //se encontrar um fabricante, adicionar o produto
  46.  
  47. FoundEquipmentBuilder.ProductList.Add(new Product1(productName.ToString(), RowNumber));
  48.  
  49. }
  50. }
  51.  
  52. RowNumber++;
  53. }
  54.  
  55. var UmbracoProduct = Umbraco.TypedContent(1735);
  56.  
  57. foreach (var Category in UmbracoProduct.Children)
  58. {
  59. foreach (var Product in Category.Children)
  60. {
  61.  
  62. }
  63. }
  64.  
  65. var UmbracoBuilders = Umbraco.TypedContent(1297);
  66.  
  67. int ocorrenciasDiferentes = 0;
  68.  
  69. foreach (var Builder in UmbracoBuilders.Children)
  70. {
  71.  
  72. var UmbracoBuilder = EquipmentBuilderList.FirstOrDefault(x => x.Builder == Builder.Name);
  73.  
  74. if (UmbracoBuilder != null)
  75. {
  76. if (UmbracoBuilder.ProductList.Count != Builder.GetPropertyValue<List<IPublishedContent>>("manufacturersComponentItemProduct").Count)
  77. {
  78. ocorrenciasDiferentes++;
  79. //descrepancia numeros diferentes
  80. }
  81. else
  82. {
  83. //ta tudo igual
  84. }
  85. }
  86. else
  87. {
  88. //erro caralho
  89. }
  90.  
  91. }
  92.  
  93.  
  94. return null;
  95. }
Add Comment
Please, Sign In to add comment