private ConvertedAssetsDto BuildAssets(string rawCsv, int tenantId) { string[] csvRawLines = ProcessCsvLines(rawCsv); string[] csvHeader = ProcessCsvHeader(csvRawLines[0]); string[] csvLines = RemoveBlankLines(csvRawLines); List <Lookup> lookups = new List <Lookup>(); IList <Asset> assets = new List <Asset>(); IList <List <string> > errors = new List <List <string> >(); for (int i = 1; i < csvLines.Length; i++) { ConvertedAsset convertedAsset = ProcessLineToAsset(csvHeader, csvLines[i], tenantId, i); if (!string.IsNullOrWhiteSpace(convertedAsset.Asset.Model) && !string.IsNullOrWhiteSpace(convertedAsset.Asset.SerialNumber)) { assets.Add(convertedAsset.Asset); errors.Add(convertedAsset.Errors); convertedAsset.Asset.TenantId = tenantId; convertedAsset.Asset.AssetMakeId = convertedAsset.Asset.AssetMake.LookupId; convertedAsset.Asset.CategoryId = convertedAsset.Asset.Category.LookupId; convertedAsset.Asset.WarrantyPeriodId = convertedAsset.Asset.WarrantyPeriod.LookupId; LoadLookupsForAsset(convertedAsset.Asset, lookups); } } ConvertedAssetsDto response = new ConvertedAssetsDto { Errors = errors.ToList(), Assets = assets.ToList() }; return(response); }
private ConvertedAssetsDto BuildAssetsClearLookups(string rawCsv, int tenantId) { ConvertedAssetsDto bulkUpload = BuildAssets(rawCsv, tenantId); //foreach(Asset asset in bulkUpload.Assets) //{ // ClearLookups(asset); //} return(bulkUpload); }
public int ProcessCommit(string batchId, TenantViewModel tenant) { int bulkImportId = int.Parse(batchId); BulkImport bulkImport = BulkImportRepository.Single(x => x.BulkImportId == bulkImportId); ConvertedAssetsDto convertedAssets = BuildAssetsClearLookups(bulkImport.ImportText, tenant.TenantId); CommitImport(convertedAssets.Assets); return(convertedAssets.Assets.Count()); }
private ConvertedAssetsDto BuildAssets(string rawCsv, int tenantId) { string[] csvRawLines = ProcessCsvLines(rawCsv); string[] csvHeader = ProcessCsvHeader(csvRawLines[0]); string[] csvLines = RemoveBlankLines(csvRawLines); List<Lookup> lookups = new List<Lookup>(); IList<Asset> assets = new List<Asset>(); IList<List<string>> errors = new List<List<string>>(); for (int i = 1; i < csvLines.Length; i++) { ConvertedAsset convertedAsset = ProcessLineToAsset(csvHeader, csvLines[i], tenantId, i); if (!string.IsNullOrWhiteSpace(convertedAsset.Asset.Model) && !string.IsNullOrWhiteSpace(convertedAsset.Asset.SerialNumber)) { assets.Add(convertedAsset.Asset); errors.Add(convertedAsset.Errors); convertedAsset.Asset.TenantId = tenantId; convertedAsset.Asset.AssetMakeId = convertedAsset.Asset.AssetMake.LookupId; convertedAsset.Asset.CategoryId = convertedAsset.Asset.Category.LookupId; convertedAsset.Asset.WarrantyPeriodId = convertedAsset.Asset.WarrantyPeriod.LookupId; LoadLookupsForAsset(convertedAsset.Asset, lookups); } } ConvertedAssetsDto response = new ConvertedAssetsDto { Errors = errors.ToList(), Assets = assets.ToList() }; return response; }