public void AddNewTransaction(TransactionObj obj)
 {
     try
     {
         StreamWriter stwr = File.AppendText("Transaction.csv");
         stwr.WriteLine($"{obj.TransactionType},{obj.ID},{obj.name},{obj.amount},{obj.date}");
         stwr.Close();
     }
     catch (Exception e)
     {
         Console.WriteLine($"There is an error in records of file {e}");
     }
 }
Example #2
0
    private TransactionObj MapTransactions(IDataReader reader)
    {
        TransactionObj p             = new TransactionObj();
        int            startingIndex = 0;

        p.description         = reader.GetSafeString(startingIndex++);
        p.CategoryId          = reader.GetSafeInt32(startingIndex++);
        p.amount              = reader.GetSafeDecimal(startingIndex++);
        p.transacted_at       = reader.GetSafeDateTime(startingIndex++);
        p.SyncDate            = reader.GetSafeDateTime(startingIndex++);
        p.AtriumTransactionId = reader.GetSafeString(startingIndex++);
        p.AtriumCategory      = reader.GetSafeString(startingIndex++);
        return(p);
    }
        public void CopyTransactionData(List <UserObj> list, int UserId, string type, int cash)
        {
            TransactionsReadWrite tr  = new TransactionsReadWrite();
            TransactionObj        obj = new TransactionObj();

            for (int i = 0; i < list.Count; i++)
            {
                if (list[i].UserID == UserId)
                {
                    obj.TransactionType = type;
                    obj.ID     = list[i].ID;
                    obj.name   = list[i].name;
                    obj.amount = cash;
                    obj.date   = System.Convert.ToDateTime(DateTime.Today.ToString("dd/MM/yyyy"));
                }
            }
            tr.AddNewTransaction(obj);
        }
Example #4
0
    private AtriumTransactionsVM GetTransactionsFromDb(string userId, int page, string bankAccountId = null)
    {
        AtriumTransactionsVM list = new AtriumTransactionsVM();

        list.Transactions = new List <TransactionObj>();
        DataProvider.ExecuteCmd(GetConnection, "dbo.AtriumTransactions_GetByUserId"
                                , inputParamMapper : delegate(SqlParameterCollection paramCollection) {
            paramCollection.AddWithValue("@UserId", userId);
            paramCollection.AddWithValue("@Page", page);
            paramCollection.AddWithValue("@BankAccountId", bankAccountId);
        }
                                , map : delegate(IDataReader reader, short set)
        {
            TransactionObj p = new TransactionObj();
            p = MapTransactions(reader);
            if (list.Transactions == null)
            {
                list.Transactions = new List <TransactionObj>();
            }
            list.Transactions.Add(p);
        }
                                );
        return(list);
    }
        public async Task <FinTransacRegRespObj> PassEntryToFinance(TransactionObj request)
        {
            var    gosGatewayClient = _httpClientFactory.CreateClient("GOSDEFAULTGATEWAY");
            string authorization    = _accessor.HttpContext.Request.Headers["Authorization"];

            gosGatewayClient.DefaultRequestHeaders.Add("Authorization", authorization);
            FinTransacRegRespObj responseObj = new FinTransacRegRespObj();

            var jsonContent = JsonConvert.SerializeObject(request);
            var buffer      = Encoding.UTF8.GetBytes(jsonContent);
            var byteContent = new ByteArrayContent(buffer);

            byteContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");

            return(await _retryPolicy.ExecuteAsync(async() =>
            {
                try
                {
                    result = await gosGatewayClient.PostAsync(ApiRoutes.Finance.PASS_TO_ENTRY, byteContent);
                    if (!result.IsSuccessStatusCode)
                    {
                        var data1 = await result.Content.ReadAsStringAsync();
                        responseObj = JsonConvert.DeserializeObject <FinTransacRegRespObj>(data1);
                        new FinTransacRegRespObj
                        {
                            Status = new APIResponseStatus
                            {
                                Message = new APIResponseMessage {
                                    FriendlyMessage = result.ReasonPhrase
                                }
                            }
                        };
                    }
                    var data = await result.Content.ReadAsStringAsync();
                    responseObj = JsonConvert.DeserializeObject <FinTransacRegRespObj>(data);
                }
                catch (Exception ex) { throw ex; }
                if (responseObj == null)
                {
                    return new FinTransacRegRespObj
                    {
                        Status = new APIResponseStatus
                        {
                            IsSuccessful = false,
                            Message = new APIResponseMessage {
                                FriendlyMessage = "System Error!! Please contact Administrator"
                            }
                        }
                    };
                }
                if (!responseObj.Status.IsSuccessful)
                {
                    return new FinTransacRegRespObj
                    {
                        Status = new APIResponseStatus
                        {
                            IsSuccessful = responseObj.Status.IsSuccessful,
                            Message = responseObj.Status.Message
                        }
                    };
                }
                return new FinTransacRegRespObj
                {
                    Status = new APIResponseStatus
                    {
                        IsSuccessful = responseObj.Status.IsSuccessful,
                        Message = responseObj.Status.Message
                    }
                };
            }));
        }