public void OnPost()
        {
            if (Files == null || Files.Length < 1)
            {
                AddCookie(Cookies.UploadFile.ToString(), true);
                return;
            }

            var ofxs = new List <Library.Model.Ofx>();

            var oldOfx = ofxManager.GetOfxFile();

            if (oldOfx != null)
            {
                ofxs.Add(oldOfx);
            }

            foreach (var file in Files)
            {
                var readFile  = file.OpenReadStream();
                var ofxReader = new OfxReader(readFile);
                var ofx       = ofxReader.Parse();

                ofxs.Add(ofx);
            }

            var mergedOfx = ofxManager.JoinOfxs(ofxs);

            ofxManager.SaveOfxFile(mergedOfx);

            AddCookie(Cookies.UploadFile.ToString(), true);
        }
Esempio n. 2
0
        public void WhenParseMinimumFileMustReturnSignOnMessageAttributesCorrectly()
        {
            var      reader = new OfxReader();
            OfxModel ofx    = reader.Load(TestData.BASIC);

            Assert.AreEqual("0", ofx.Ofx.SignOnMessage.Status.Code);
            Assert.AreEqual("INFO", ofx.Ofx.SignOnMessage.Status.Severity);
            Assert.AreEqual("20210417", ofx.Ofx.SignOnMessage.DateServer);
            Assert.AreEqual("POR", ofx.Ofx.SignOnMessage.Language);

            Assert.AreEqual("Banco XXX", ofx.Ofx.SignOnMessage.Fi.Organization);
            Assert.AreEqual("123", ofx.Ofx.SignOnMessage.Fi.Fid);
        }
Esempio n. 3
0
        public void WhenParseMinimumFileMustReturnHeaderAttributesCorrectly()
        {
            var      reader = new OfxReader();
            OfxModel ofx    = reader.Load(TestData.BASIC);

            Assert.AreEqual("100", ofx.Header);
            Assert.AreEqual("OFXSGML", ofx.Data);
            Assert.AreEqual("102", ofx.Version);
            Assert.AreEqual("NONE", ofx.Security);
            Assert.AreEqual("1252", ofx.Charset);
            Assert.AreEqual("NONE", ofx.Compression);
            Assert.AreEqual("NONE", ofx.OldFileUID);
            Assert.AreEqual("NONE", ofx.NewFileUID);
        }
Esempio n. 4
0
        public void WhenParseMinimumFileWithTwoTransactionsMustParseCorrectly()
        {
            var      reader = new OfxReader();
            OfxModel ofx    = reader.Load(TestData.BASIC_TWO_TRANSACTIONS);

            Assert.AreEqual(2, ofx.Ofx.BankMessages.Stmttrns.AccountFrom.TransacionList.Transactions.Count);

            Assert.AreEqual("PAYMENT", ofx.Ofx.BankMessages.Stmttrns.AccountFrom.TransacionList.Transactions[0].Type);
            Assert.AreEqual("20210305", ofx.Ofx.BankMessages.Stmttrns.AccountFrom.TransacionList.Transactions[0].Date);
            Assert.AreEqual("-1400.77", ofx.Ofx.BankMessages.Stmttrns.AccountFrom.TransacionList.Transactions[0].Ammount);
            Assert.AreEqual("05/03/2021077", ofx.Ofx.BankMessages.Stmttrns.AccountFrom.TransacionList.Transactions[0].FITID);
            Assert.AreEqual("077", ofx.Ofx.BankMessages.Stmttrns.AccountFrom.TransacionList.Transactions[0].CHECKNUM);
            Assert.AreEqual("077", ofx.Ofx.BankMessages.Stmttrns.AccountFrom.TransacionList.Transactions[0].REFNUM);
            Assert.AreEqual("Payment", ofx.Ofx.BankMessages.Stmttrns.AccountFrom.TransacionList.Transactions[0].MEMO);
        }
Esempio n. 5
0
        public void WhenParseMinimumFileMustReturnBankMessageAttributesCorrectly()
        {
            var      reader = new OfxReader();
            OfxModel ofx    = reader.Load(TestData.BASIC);

            Assert.AreEqual("1001", ofx.Ofx.BankMessages.Stmttrns.Trnuid);
            Assert.AreEqual("0", ofx.Ofx.BankMessages.Stmttrns.Status.Code);
            Assert.AreEqual("INFO", ofx.Ofx.BankMessages.Stmttrns.Status.Severity);
            Assert.AreEqual("BRL", ofx.Ofx.BankMessages.Stmttrns.Currency);
            Assert.AreEqual("077", ofx.Ofx.BankMessages.Stmttrns.AccountFrom.Id);
            Assert.AreEqual("XXXX-X", ofx.Ofx.BankMessages.Stmttrns.AccountFrom.BranchID);
            Assert.AreEqual("12345678", ofx.Ofx.BankMessages.Stmttrns.AccountFrom.AccountID);
            Assert.AreEqual("CHECKING", ofx.Ofx.BankMessages.Stmttrns.AccountFrom.AccountType);
            Assert.AreEqual("20210301", ofx.Ofx.BankMessages.Stmttrns.AccountFrom.TransacionList.StartDate);
            Assert.AreEqual("20210331", ofx.Ofx.BankMessages.Stmttrns.AccountFrom.TransacionList.EndDate);
        }
Esempio n. 6
0
        private Ofx ImportOfx(string filePath)
        {
            var ofxReader = new OfxReader(filePath);

            return(ofxReader.Parse());
        }