public override void LoadPeriods() { DirectoryInfo dir = new DirectoryInfo(ConnectionString); // Get year directories foreach (DirectoryInfo subDir in dir.GetDirectories()) { string year = subDir.Name; // Get months in the directory foreach (FileInfo file in subDir.GetFiles()) { int startIndex = file.Name.LastIndexOf(file.Extension, StringComparison.CurrentCulture); string month = file.Name.Remove(startIndex); Period period = new XlPeriod(year, month, connectionString); period.LoadBrews(); string periodName = year + "-" + month; if (!periods.ContainsKey(periodName)) { periods.Add(periodName, period); } else { periods[periodName] = period; } } } }
public WorkSheetSaver(XlPeriod xlPeriod) { period = xlPeriod; this.fileInfo = xlPeriod.FileInfo; this.xlPackage = new ExcelPackage(xlPeriod.FileInfo); this.xlRawDataWorksheet = xlPackage.Workbook.Worksheets[xlPeriod.RawDataSheetName]; this.xlBrewingFormWorksheet = xlPackage.Workbook.Worksheets[xlPeriod.BrewingFormSheetName]; }
private void DeletePeriodWorkBook(Period period) { XlPeriod xlPeriod = (XlPeriod)period; using (xlExcelPackage = new ExcelPackage(xlPeriod.FileInfo)) { Byte[] bin = xlExcelPackage.GetAsByteArray(); FileInfo file = xlPeriod.FileInfo; File.Delete(file.FullName); } }
public override void DeletePeriod(Period period) { XlPeriod xlPeriod = (XlPeriod)period; using (xlExcelPackage = new ExcelPackage(xlPeriod.FileInfo)) { if (periods.ContainsKey(period.PeriodName) && xlPeriod.FileInfo.Exists) { DeletePeriodWorkBook(period); periods.Remove(period.PeriodName); } } }
public override void AddPeriod(Period period) { XlPeriod xlPeriod = (XlPeriod)period; using (xlExcelPackage = new ExcelPackage(xlPeriod.FileInfo)) { if (!periods.ContainsKey(period.PeriodName)) { CreateNewPeriodWorkBook(period); periods.Add(period.PeriodName, period); } } }
private string CreateNewPeriodWorkBook(Period period) { XlPeriod xlPeriod = (XlPeriod)period; using (xlExcelPackage = new ExcelPackage(template, true)) { Byte[] bin = xlExcelPackage.GetAsByteArray(); FileInfo file = xlPeriod.FileInfo; // if year folder does not exist create it CheckOrCreatePeriodFolder(period); File.WriteAllBytes(file.FullName, bin); return(file.FullName); } }
// TODO: Create LoadPeriod for lazy loading public override Period LoadPeriod(string year, string month) { Period period = new XlPeriod(year, month, connectionString); period.LoadBrews(); string periodName = year + "-" + month; if (!periods.ContainsKey(periodName)) { periods.Add(periodName, period); } else { periods[periodName] = period; } return(period); }
public override Period CreatePeriod(string year, string month) { Period period = new XlPeriod(year, month, this.connectionString); return(period); }