private IList <ImportProductData> GetDataRow(DataSet ds) { string proName; string catName; string serial; string bunit; int psize; decimal price; string cName = ""; ProductType category = null; int rowno = 0; bool haserror; ProductType defaultPt = DataRepository.GetProductTypeByName(MasterProduct.GetDefaultCategoryName); string rapidTest; string specification; int minSize; DateTime pricedate; if (defaultPt == null) { defaultPt = new ProductType(); defaultPt.TypeName = MasterProduct.GetDefaultCategoryName; DataRepository.SaveOrUpdateProductType(defaultPt); } IList <ImportProductData> rdlist = new List <ImportProductData>(); foreach (DataRow dr in ds.Tables[0].Rows) { rowno++; haserror = false; proName = Convert.ToString(dr[0]).Trim(); catName = Convert.ToString(dr[1]).Trim(); serial = Convert.ToString(dr[2]); bunit = Convert.ToString(dr[4]); category = DataRepository.GetProductTypeByName(catName); specification = Convert.ToString(dr[3]); bool testrapid = false; try { if (category.UseInDemography) { string[] group = Enum.GetNames(typeof(TestingSpecificationGroup)); if (category.ClassOfTestToEnum == ClassOfMorbidityTestEnum.RapidTest) { for (int i = 0; i < group.Length; i++) { if (Convert.ToString(dr[6]) == group[i]) { testrapid = true; } } if (testrapid) { rapidTest = Convert.ToString(dr[6]);//b } else { rapidTest = null; } } else { rapidTest = null; } } else { rapidTest = null; } } catch { rapidTest = null; } try { psize = int.Parse(Convert.ToString(dr[8])); } catch { psize = 1; } try //b { minSize = int.Parse(Convert.ToString(dr[5])); //b } catch { minSize = 1; } try { price = decimal.Parse(Convert.ToString(dr[7])); } catch { price = 1; } try { pricedate = DateTime.Parse(Convert.ToString(dr[9])); } catch { pricedate = DateTime.Now; } ImportProductData rd = new ImportProductData(proName, catName, serial, bunit, psize, price, rowno, specification, minSize, rapidTest, pricedate); if (cName != catName) { if (!string.IsNullOrEmpty(catName)) { category = DataRepository.GetProductTypeByName(catName); if (category == null) { category = new ProductType(); category.TypeName = catName; DataRepository.SaveOrUpdateProductType(category); } } else { category = defaultPt; } cName = catName; } rd.Category = category; if (!String.IsNullOrEmpty(proName)) { rd.IsExist = DataRepository.GetProductByName(proName) != null; } else { haserror = true; } rd.HasError = haserror; rdlist.Add(rd); } return(rdlist); }
private IList<ImportProductData> GetDataRow(DataSet ds) { string proName; string catName; string serial; string bunit; int psize; decimal price; string cName = ""; ProductType category = null; int rowno = 0; bool haserror; ProductType defaultPt = DataRepository.GetProductTypeByName(MasterProduct.GetDefaultCategoryName); string rapidTest; string specification; int minSize; DateTime pricedate; if (defaultPt == null) { defaultPt = new ProductType(); defaultPt.TypeName = MasterProduct.GetDefaultCategoryName; DataRepository.SaveOrUpdateProductType(defaultPt); } IList<ImportProductData> rdlist = new List<ImportProductData>(); foreach (DataRow dr in ds.Tables[0].Rows) { rowno++; haserror = false; proName = Convert.ToString(dr[0]).Trim(); catName = Convert.ToString(dr[1]).Trim(); serial = Convert.ToString(dr[2]); bunit = Convert.ToString(dr[4]); category = DataRepository.GetProductTypeByName(catName); specification = Convert.ToString(dr[3]); bool testrapid = false; try { if (category.UseInDemography) { string[] group= Enum.GetNames(typeof(TestingSpecificationGroup)); if (category.ClassOfTestToEnum == ClassOfMorbidityTestEnum.RapidTest) { for (int i = 0; i < group.Length; i++) { if (Convert.ToString(dr[6]) == group[i]) testrapid = true; } if (testrapid) rapidTest = Convert.ToString(dr[6]);//b else rapidTest = null; } else rapidTest = null; } else rapidTest = null; } catch { rapidTest = null; } try { psize = int.Parse(Convert.ToString(dr[8])); } catch { psize = 1; } try//b { minSize = int.Parse(Convert.ToString(dr[5]));//b } catch { minSize = 1; } try { price = decimal.Parse(Convert.ToString(dr[7])); } catch { price = 1; } try { pricedate = DateTime.Parse(Convert.ToString(dr[9])); } catch { pricedate = DateTime.Now; } ImportProductData rd = new ImportProductData(proName, catName, serial, bunit, psize, price, rowno, specification,minSize, rapidTest,pricedate); if (cName != catName) { if (!string.IsNullOrEmpty(catName)) { category = DataRepository.GetProductTypeByName(catName); if (category == null) { category = new ProductType(); category.TypeName = catName; DataRepository.SaveOrUpdateProductType(category); } } else { category = defaultPt; } cName = catName; } rd.Category = category; if (!String.IsNullOrEmpty(proName)) { rd.IsExist = DataRepository.GetProductByTypeandName(proName,category.TypeName) != null; } else haserror = true; rd.HasError = haserror; rdlist.Add(rd); } return rdlist; }