Beispiel #1
0
        private void PrintResultToLog(TextClassificationResult result)
        {
            string logText = string.Format("{0}: File name: {1} ", getLoggableDateTimeString(), result.DocumentName);

            logText += string.Format("          Docuemnt Class: {0}{1}", result.FoundClass, System.Environment.NewLine);
            rtbLogger.AppendText(logText);
        }
Beispiel #2
0
 public TransactionType?What(TextClassificationResult result, string sentence)
 {
     return(_matchWhat.What(result, sentence));
 }
Beispiel #3
0
        public TransactionType?What(TextClassificationResult result, string sentence)
        {
            CreateNgrams(sentence);
            if (result.Classifier == null)
            {
                return(TransactionType.Unknown);
            }

            switch (result.Classifier.SubCategory)
            {
            case SubCategories.TransferringMoney.CreditCard:
            case SubCategories.BankingFinance.CreditCardPayments:
                return(TransactionType.Credit);

            case SubCategories.TransferringMoney.OtherTransferringMoney:
            case SubCategories.BankingFinance.OtherBankingFinance:
                return(TransactionType.Transfer);

            case SubCategories.BankingFinance.Fees:
                return(TransactionType.Fees);

            case SubCategories.BankingFinance.Interest:
                return(TransactionType.Interest);

            case SubCategories.BankingFinance.Reversal:
                return(TransactionType.Reversal);

            case SubCategories.BankingFinance.LoanRepayments:
                return(TransactionType.Repayments);

            case SubCategories.BankingFinance.Overdrawn:
                return(TransactionType.Overdrawn);
            }

            switch (result.PaymentMethodType)
            {
            case PaymentMethodType.DirectDebit:
            case PaymentMethodType.Eftpos:
                return(TransactionType.Debit);

            case PaymentMethodType.CreditCard:
                return(TransactionType.Credit);
            }

            foreach (var word in WordsCleaned)
            {
                switch (word.Trim())
                {
                case "eftpos":
                case "eftpost":
                    return(TransactionType.Debit);

                case "fee":
                    return(TransactionType.Fees);

                case "transfer":
                case "exchange":
                case "trnsfr":
                    return(TransactionType.Transfer);
                }
            }

            return(TransactionType.Unknown);
        }