示例#1
0
            public static BalanceGroup FromRecord(Record r)
            {
                var g = new BalanceGroup()
                {
                    GroupName = r.Name
                };

                return(g);
            }
示例#2
0
        private List <BalanceGroup> Parse()
        {
            var groups = new List <BalanceGroup>();
            var row    = 0;

            using (var excel = new ExcelPackage(new System.IO.FileInfo(_appArgs.InFileName)))
            {
                var ws = excel.Workbook.Worksheets.First();

                BalanceGroup group = null !;

                //parse records
                for (row = 2; row <= ws.Dimension.End.Row; row++)
                {
                    var r = Record.FromExcel(ws.Cells, row);

                    if (r.IsEmpty)
                    {
                        continue;
                    }

                    if (r.IsGroupHeader)
                    {
                        group = BalanceGroup.FromRecord(r);
                        groups.Add(group);
                        continue;
                    }

                    if (r.IsBalanceRow)
                    {
                        group.Records.Add(BalanceRecord.FromRecord(r));
                        continue;
                    }

                    if (r.IsTotalRow)
                    {
                        group.Total = BalanceRecord.FromRecord(r);
                        continue;
                    }
                }
            }
            return(groups);
        }