public async Task <IActionResult> EditAccount(AccountBank accountBank) { if (accountBank.Id == null) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(accountBank); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!AccountExists(accountBank.Id)) { return(NotFound()); } else { throw; } } StatusMessage = "Customer record updated."; return(RedirectToAction(nameof(Index))); } return(View(accountBank)); }
internal override void RecieveFunds(Transaction transaction) { try { using (SqlConnection conn = new SqlConnection(DataStore.ConnectionString)) { conn.Open(); var recieveFunds = new SqlCommand("UPDATE tb_bank_account SET balance = @balance WHERE bank_account_id = @bank_account_id", conn); recieveFunds.Parameters.Add(new SqlParameter("bank_account_id", Id)); recieveFunds.Parameters.Add(new SqlParameter("balance", Balance + transaction.Ammount)); recieveFunds.ExecuteNonQuery(); } } catch (Exception ex) { throw ex; } _balance += transaction.Ammount; if (transaction.Sender != AccountBank) { AccountBank.RecieveFunds(transaction); } }
static void Main(string[] args) { //Instancia d Classe AccountBank AccountBank account = new AccountBank(); //Entarda de dados Console.Write("Entre o Numero da Conta: "); account.AddNumConta(int.Parse(Console.ReadLine())); Console.Write("Entre o Titular da Conta: "); account.AddTitular(Console.ReadLine()); Console.Write("Haverá deposito inicial? (s/n): "); account.DepositoInicial(char.Parse(Console.ReadLine())); Console.WriteLine(); Console.WriteLine(account.ToString()); Console.Write("Entre um valor de deposito: "); account.Deposito(double.Parse(Console.ReadLine())); Console.WriteLine(); Console.WriteLine("Dados da Conta Atualizados:"); Console.WriteLine(account.ToString()); Console.WriteLine(); Console.Write("Entre um valor para saque: "); account.Saque(double.Parse(Console.ReadLine())); Console.WriteLine(); Console.WriteLine("Dados da Conta Atualizados:"); Console.WriteLine(account.ToString()); }
static void Main() { AccountBank ab = new AccountBank(); Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new Form1(ab)); }
public ActionResult DeleteConfirmed(int id) { AccountBank accountBank = db.AccountBank.Find(id); db.AccountBank.Remove(accountBank); db.SaveChanges(); return(RedirectToAction("Index")); }
public override void Transfer(int id, double money) { Money -= money; if (Money < 0) { Money -= money * Takeoff; } AccountBank.FindAccountInSystem(id).Replenishment(money); }
public async Task <IActionResult> Add([Bind("AccountBankId,Name,Active,BusinessEntityId,Code,Agency,DigitAgency,Account,DigitAccount")] AccountBank bank, bool continueAdd) { if (ModelState.IsValid) { await _bankServices.AddAsync(bank); return(continueAdd ? RedirectToAction(nameof(Add)) : RedirectToAction(nameof(List))); } return(View(bank)); }
public override void Transfer(int id, double money) { if (!(Money - money > 0)) { return; } Money -= money; AccountBank.FindAccountInSystem(id).Replenishment(money); return; }
public Form1(AccountBank ab) { _accountBank = ab; InitializeComponent(); IList <string> accountNames = ab.GetAllAccountStrings(); foreach (string accountName in accountNames) { this.listBox1.Items.Add(accountName); } UpdateAccount(accountNames[0]); }
public override void Transfer(int id, double money) { if (Lifespan != 0) { return; // Exception: Can't withdraw money from deposit account before it's expiration! } if (Money - money < 0) // Exception: Not enough money on account! { return; } Money -= money; AccountBank.FindAccountInSystem(id).Replenishment(money); }
public ActionResult Edit([Bind(Include = "clientId,bankId,currencyTypeId,accountBank1,titular")] AccountBank accountBank) { if (ModelState.IsValid) { db.Entry(accountBank).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.bankId = new SelectList(db.Bank, "bankId", "name", accountBank.bankId); ViewBag.clientId = new SelectList(db.Client, "clientId", "name", accountBank.clientId); ViewBag.currencyTypeId = new SelectList(db.CurrencyType, "currencyTypeId", "type", accountBank.currencyTypeId); return(View(accountBank)); }
public MemoryStream GetExcel(int bankId, int month, int year, int clientTimeZoneOffset) { string title = "Laporan Mutasi Bank Harian"; AccountBank dataAccountBank = GetAccountBank(bankId).GetAwaiter().GetResult(); if (dataAccountBank.Currency.Code == "IDR") { return(GenerateExcel(dataAccountBank, title, month, year, clientTimeZoneOffset)); } else { return(GenerateExcelValas(dataAccountBank, title, month, year, clientTimeZoneOffset)); } }
public ActionResult Create([Bind(Include = "clientId,bankId,currencyTypeId,accountNumber,titular")] AccountBank accountBank) { if (ModelState.IsValid) { db.AccountBank.Add(accountBank); db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.bankId = new SelectList(db.Bank, "bankId", "name", accountBank.bankId); ViewBag.clientId = new SelectList(db.Client, "clientId", "name", accountBank.clientId); ViewBag.currencyTypeId = new SelectList(db.CurrencyType, "currencyTypeId", "type", accountBank.currencyTypeId); return(View(accountBank)); }
// GET: AccountBanks/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } AccountBank accountBank = db.AccountBank.Find(id); if (accountBank == null) { return(HttpNotFound()); } return(View(accountBank)); }
private void button4_Click(object sender, EventArgs e) { show_name.Text = ""; show_money.Text = ""; BankManage bankM = new BankManage(); AccountBank acc = bankM.GetDetailBank(iban_det.Text); show_name.Text = acc.Name; show_money.Text = acc.Total; }
// GET: AccountBanks/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } AccountBank accountBank = db.AccountBank.Find(id); if (accountBank == null) { return(HttpNotFound()); } ViewBag.bankId = new SelectList(db.Bank, "bankId", "name", accountBank.bankId); ViewBag.clientId = new SelectList(db.Client, "clientId", "name", accountBank.clientId); ViewBag.currencyTypeId = new SelectList(db.CurrencyType, "currencyTypeId", "type", accountBank.currencyTypeId); return(View(accountBank)); }
public override int GetHashCode() { // http://www.aaronstannard.com/overriding-equality-in-dotnet/ // https://stackoverflow.com/questions/263400/what-is-the-best-algorithm-for-an-overridden-system-object-gethashcode/263416#263416 unchecked { var hashCode = 13; hashCode = (hashCode * 397) ^ (!string.IsNullOrEmpty(ArchiveReference) ? ArchiveReference.GetHashCode() : 0); //hashCode = (hashCode * 397) ^ (!string.IsNullOrEmpty(TransactionID) ? TransactionID.GetHashCode() : 0); //hashCode = (hashCode * 397) ^ (!string.IsNullOrEmpty(Type) ? Type.GetHashCode() : 0); hashCode = (hashCode * 397) ^ (!string.IsNullOrEmpty(Text) ? Text.GetHashCode() : 0); hashCode = (hashCode * 397) ^ Date.GetHashCode(); //hashCode = (hashCode * 397) ^ AccountPaypal.GetHashCode(); //hashCode = (hashCode * 397) ^ AccountStripe.GetHashCode(); //hashCode = (hashCode * 397) ^ AccountVipps.GetHashCode(); hashCode = (hashCode * 397) ^ AccountBank.GetHashCode(); return(hashCode); } }
public async Task <IActionResult> Edit(int id, [Bind("AccountBankId,Name,Active,BusinessEntityId,Code,Agency,DigitAgency,Account,DigitAccount")] AccountBank bank, bool continueAdd, bool addTrash) { if (id != bank.AccountBankId) { return(NotFound()); } if (ModelState.IsValid) { try { await _bankServices.UpdateAsync(bank); } catch (DbUpdateConcurrencyException) { throw; } return(continueAdd ? RedirectToAction(nameof(Edit), new { id = bank.AccountBankId }) : RedirectToAction(nameof(List))); } return(View(bank)); }
public void Save(AccountBankModel obj) { try { LaboratoriesEntities ent = new LaboratoriesEntities(); AccountBank accBank = new AccountBank(); accBank.Id = obj.Id; accBank.Name = obj.Name; accBank.UserCreate = obj.UserCreate; accBank.DateCreate = obj.DateCreate; accBank.UserModify = obj.UserModify; accBank.DateModify = obj.DateModify; accBank.IsActive = obj.IsActive; ent.AccountBanks.Add(accBank); ent.SaveChanges(); } catch (Exception ex) { throw new ArgumentException(ex.Message.ToString()); } }
public async Task <IActionResult> AddAccount([FromBody] AccountBank accountBank) { var orgId = getOrg(); if (accountBank != null) { accountBank.Id = Guid.NewGuid(); accountBank.OrganisationId = orgId; try { _context.Add(accountBank); await _context.SaveChangesAsync(); return(Json(new { msg = "Success" })); } catch { return(Json(new { msg = "Failed" })); } //StatusMessage = "New Vendor successfully created."; } //StatusMessage = "Error! Check fields..."; //ViewData["StatusMessage"] = StatusMessage; return(Json(new { msg = "No Data" })); }
private MemoryStream GenerateExcelValas(AccountBank dataAccountBank, string title, int month, int year, int clientTimeZoneOffset) { var Query = GetQuery(dataAccountBank.Id, month, year, clientTimeZoneOffset); string date = new DateTime(year, month, DateTime.DaysInMonth(year, month)).ToString("dd MMMM yyyy"); var garmentCurrency = GetGarmentCurrency(dataAccountBank.Currency.Code).GetAwaiter().GetResult(); string bank = $"Bank {dataAccountBank.BankName} A/C : {dataAccountBank.AccountNumber}"; DataTable result = new DataTable(); result.Columns.Add(new DataColumn() { ColumnName = "Tanggal", DataType = typeof(String) }); result.Columns.Add(new DataColumn() { ColumnName = "Keterangan", DataType = typeof(String) }); result.Columns.Add(new DataColumn() { ColumnName = "Nomor Referensi", DataType = typeof(String) }); result.Columns.Add(new DataColumn() { ColumnName = "Jenis Referensi", DataType = typeof(String) }); result.Columns.Add(new DataColumn() { ColumnName = "Currency", DataType = typeof(String) }); result.Columns.Add(new DataColumn() { ColumnName = "Before", DataType = typeof(String) }); result.Columns.Add(new DataColumn() { ColumnName = "Debit", DataType = typeof(String) }); result.Columns.Add(new DataColumn() { ColumnName = "Debit2", DataType = typeof(String) }); result.Columns.Add(new DataColumn() { ColumnName = "Kredit", DataType = typeof(String) }); result.Columns.Add(new DataColumn() { ColumnName = "Kredit2", DataType = typeof(String) }); result.Columns.Add(new DataColumn() { ColumnName = "After", DataType = typeof(String) }); result.Columns.Add(new DataColumn() { ColumnName = "After2", DataType = typeof(String) }); int index = 0; if (Query.ToArray().Count() == 0) { result.Rows.Add("", "", "", "", "", 0.ToString("#,##0.#0"), 0.ToString("#,##0.#0"), 0.ToString("#,##0.#0"), 0.ToString("#,##0.#0")); // to allow column name to be generated properly for empty data as template } else { var BalanceByMonthAndYear = GetBalanceMonthAndYear(dataAccountBank.Id, month, year, clientTimeZoneOffset); var beforeBalance = BalanceByMonthAndYear.InitialBalance; var beforeBalanceValas = beforeBalance / garmentCurrency.Rate; //var previous = new DailyBankTransactionModel(); foreach (var item in Query) { var debit = item.Status.ToUpper().Equals("IN") ? item.Nominal.ToString("#,##0.#0") : 0.ToString("#,##0.#0"); var kredit = item.Status.ToUpper().Equals("OUT") ? item.Nominal.ToString("#,##0.#0") : 0.ToString("#,##0.#0"); var afterBalance = beforeBalance + (item.Status.Equals("IN") ? (double)item.Nominal : (double)item.Nominal * -1); var debitValas = item.Status.ToUpper().Equals("IN") ? item.NominalValas.ToString("#,##0.#0") : 0.ToString("#,##0.#0"); var kreditValas = item.Status.ToUpper().Equals("OUT") ? item.NominalValas.ToString("#,##0.#0") : 0.ToString("#,##0.#0"); var afterBalanceValas = beforeBalanceValas + (item.Status.Equals("IN") ? (double)item.NominalValas : (double)item.NominalValas * -1); result.Rows.Add(item.Date.ToOffset(new TimeSpan(clientTimeZoneOffset, 0, 0)).ToString("dd MMM yyyy", new CultureInfo("id-ID")), item.Remark, item.ReferenceNo, item.ReferenceType, item.AccountBankCurrencyCode, beforeBalance.ToString("#,##0.#0"), debit, debitValas, kredit, kreditValas, afterBalance.ToString("#,##0.#0"), afterBalanceValas.GetValueOrDefault().ToString("#,##0.#0") ); beforeBalance = afterBalance; beforeBalanceValas = afterBalanceValas; index++; } } var headers = new List <string> { "Tanggal", "Keterangan", "Nomor Referensi", "Jenis Referensi", "Currency", "Before", "DEBIT", "Debit2", "KREDIT", "Kredit2", "SALDO AKHIR", "After2" }; var subHeaders = new List <string> { "Original Amount", "Equivalent", "Original Amount", "Equivalent", "Original Amount", "Equivalent" }; ExcelPackage package = new ExcelPackage(); var sheet = package.Workbook.Worksheets.Add("Mutasi"); sheet.Cells["A2"].Value = "PT. DANLIRIS"; sheet.Cells["A2:D2"].Merge = true; sheet.Cells["A3"].Value = title; sheet.Cells["A3:D3"].Merge = true; sheet.Cells["A4"].Value = bank; sheet.Cells["A4:D4"].Merge = true; sheet.Cells["A5"].Value = $"Per {date}"; sheet.Cells["A5:D5"].Merge = true; sheet.Cells["J6"].Value = "Kurs : Rp."; sheet.Cells["J6"].Style.HorizontalAlignment = ExcelHorizontalAlignment.Right; sheet.Cells["K6"].Value = $" {garmentCurrency.Rate.GetValueOrDefault().ToString("#,##0.#0")}"; sheet.Cells["G7"].Value = headers[6]; sheet.Cells["G7:H7"].Merge = true; sheet.Cells["I7"].Value = headers[8]; sheet.Cells["I7:J7"].Merge = true; sheet.Cells["K7"].Value = headers[10]; sheet.Cells["K7:L7"].Merge = true; foreach (var i in Enumerable.Range(0, 6)) { var col = (char)('A' + i); sheet.Cells[$"{col}7"].Value = headers[i]; sheet.Cells[$"{col}7:{col}8"].Merge = true; } foreach (var i in Enumerable.Range(0, 6)) { var col = (char)('G' + i); sheet.Cells[$"{col}8"].Value = subHeaders[i]; } sheet.Cells["A7:L8"].Style.HorizontalAlignment = ExcelHorizontalAlignment.Center; sheet.Cells["A7:L8"].Style.VerticalAlignment = ExcelVerticalAlignment.Center; sheet.Cells["A7:L8"].Style.Font.Bold = true; sheet.Cells["A9"].LoadFromDataTable(result, false, OfficeOpenXml.Table.TableStyles.Light16); sheet.Cells[sheet.Dimension.Address].AutoFitColumns(); int cells = 9; sheet.Cells[$"F{cells}:L{cells + index}"].Style.HorizontalAlignment = ExcelHorizontalAlignment.Right; MemoryStream stream = new MemoryStream(); package.SaveAs(stream); return(stream); //return Excel.DailyMutationReportExcel(new List<KeyValuePair<DataTable, string>>() { new KeyValuePair<DataTable, string>(result, "Mutasi") }, title, bank, date, true, index); }
public async Task Should_Success_AutoJournalFromDailyBankTransaction() { //Setup var dbContext = GetDbContext(GetCurrentMethod()); var serviceProviderMock = GetServiceProvider(); serviceProviderMock.Setup(s => s.GetService(typeof(FinanceDbContext))).Returns(dbContext); serviceProviderMock .Setup(x => x.GetService(typeof(IHttpClientService))) .Returns(new JournalHttpClientTestService()); Mock <IJournalTransactionService> journalTransactionServiceMock = new Mock <IJournalTransactionService>(); journalTransactionServiceMock.Setup(s => s.CreateAsync(It.IsAny <JournalTransactionModel>())).ReturnsAsync(1); serviceProviderMock .Setup(x => x.GetService(typeof(IJournalTransactionService))) .Returns(journalTransactionServiceMock.Object); var masterCOAServiceMock = new MasterCOAService(serviceProviderMock.Object); serviceProviderMock .Setup(x => x.GetService(typeof(IMasterCOAService))) .Returns(masterCOAServiceMock); var httpClientService = new Mock <IHttpClientService>(); HttpResponseMessage message = new HttpResponseMessage(System.Net.HttpStatusCode.OK); message.Content = new StringContent("{\"data\":{\"Id\":7,\"Code\":\"BB\",\"Rate\":13700.0,\"Date\":\"2018/10/20\"}}"); httpClientService .Setup(x => x.GetAsync(It.IsAny <string>())) .ReturnsAsync(message); serviceProviderMock .Setup(x => x.GetService(typeof(IHttpClientService))) .Returns(httpClientService.Object); var service = new AutoJournalService(dbContext, serviceProviderMock.Object); AccountBank acc1 = new AccountBank() { AccountCOA = "AccountCOA", AccountName = "AccountName", AccountNumber = "AccountNumber", BankCode = "BankCode", BankName = "BankName", Currency = new Currency() { Code = "Rp", Symbol = "IDR" }, }; AccountBank acc2 = new AccountBank() { AccountCOA = "AccountCOA", AccountName = "AccountName", AccountNumber = "AccountNumber", BankCode = "BankCode", BankName = "BankName", Currency = new Currency() { Code = "dolar", Symbol = "USD" }, }; DailyBankTransactionModel dailyModel = new DailyBankTransactionModel() { AccountBankAccountName = "AccountName", AccountBankAccountNumber = "AccountNumber", AccountBankCode = "BankCode", AccountBankCurrencyCode = "CurrencyCode", AccountBankCurrencyId = 1, AccountBankCurrencySymbol = "CurrencySymbol", AccountBankId = 1, AccountBankName = "BankName", AfterNominal = 0, BeforeNominal = 0, BuyerCode = "BuyerCode", BuyerId = 1, BuyerName = "BuyerName", Date = DateTimeOffset.UtcNow, Nominal = 1000, ReferenceNo = "", ReferenceType = "ReferenceType", Remark = "Remark", SourceType = "Pendanaan", SourceFundingType = "Internal", Status = "IN", SupplierCode = "SupplierCode", SupplierName = "SupplierName", SupplierId = 1, DestinationBankAccountName = "AccountName", DestinationBankAccountNumber = "AccountNumber", DestinationBankCode = "BankCode", DestinationBankCurrencyCode = "CurrencyCode", DestinationBankCurrencyId = 1, DestinationBankCurrencySymbol = "CurrencySymbol", DestinationBankId = 1, DestinationBankName = "BankName", IsPosted = true, AfterNominalValas = 1, BeforeNominalValas = 1, TransactionNominal = 1, NominalValas = 1, Receiver = "Receiver", CurrencyRate = 10 }; //Act var result = await service.AutoJournalFromDailyBankTransaction(dailyModel, acc1, acc2); //Assert Assert.NotEqual(0, result); dailyModel.BankCharges = 100; var resultwithBankCharges = await service.AutoJournalFromDailyBankTransaction(dailyModel, acc1, acc2); Assert.NotEqual(0, resultwithBankCharges); dailyModel.DestinationBankCurrencyCode = "IDR"; dailyModel.BankCharges = 100; dailyModel.Rates = 100; var resultDiffCurrencyToIDR = await service.AutoJournalFromDailyBankTransaction(dailyModel, acc1, acc2); Assert.NotEqual(0, resultDiffCurrencyToIDR); dailyModel.DestinationBankCurrencyCode = "IDR"; dailyModel.BankCharges = 0; dailyModel.Rates = 100; var resultDiffCurrencyToIDRNoCharges = await service.AutoJournalFromDailyBankTransaction(dailyModel, acc1, acc2); Assert.NotEqual(0, resultDiffCurrencyToIDR); dailyModel.AccountBankCurrencyCode = "IDR"; dailyModel.DestinationBankCurrencyCode = "USD"; dailyModel.BankCharges = 0; dailyModel.Rates = 100; var resultDiffCurrencyNoCharges = await service.AutoJournalFromDailyBankTransaction(dailyModel, acc1, acc2); Assert.NotEqual(0, resultDiffCurrencyNoCharges); dailyModel.AccountBankCurrencyCode = "IDR"; dailyModel.DestinationBankCurrencyCode = "USD"; dailyModel.BankCharges = 100; dailyModel.Rates = 100; var resultDiffCurrency = await service.AutoJournalFromDailyBankTransaction(dailyModel, acc1, acc2); Assert.NotEqual(0, resultDiffCurrency); }
public IActionResult Add() { var data = new AccountBank(); return(View(data)); }
public async Task <IActionResult> Delete(AccountBank bank) { await _bankServices.DeleteAsync(bank); return(RedirectToAction(nameof(List))); }
static void Main(string[] args) { int option = 0; ISaveMoney account = null; do { Console.WriteLine(); Console.WriteLine("---------------------"); Console.WriteLine("Este es el menú. Por favor elija una opción:"); Console.WriteLine("---------------------"); Console.WriteLine("Para crear tu cuenta: Pulsa 1"); Console.WriteLine("Para ingresar dinero: Pulsa 2"); Console.WriteLine("Para sacar dienro: Pulsa 3"); Console.WriteLine("Para ver tu saldo: Pulsa 4"); Console.WriteLine("Para salir Pulsa 5"); int.TryParse(Console.ReadLine(), out option); switch (option) { case 1: int accountType = 1; Console.WriteLine("De que tipo? 1 Bancaria. 2 Hucha"); int.TryParse(Console.ReadLine(), out accountType); switch (accountType) { case 1: account = new AccountBank(0); break; case 2: account = new MoneyBox(); break; } Console.WriteLine("La cuenta ha sido creada"); break; case 2: if (account != null) { Console.WriteLine("¿Cuanto quieres ingresar?"); decimal.TryParse(Console.ReadLine(), out decimal amount); account.AddMoney(amount); Console.WriteLine("Se ha ingresado el dinero"); } else { Console.WriteLine("No ha creado la cuenta"); } break; case 3: if (account != null) { Console.WriteLine("¿Cuanto quieres sacar?"); decimal.TryParse(Console.ReadLine(), out decimal amountTakeMoney); try { account.TakeMoney(amountTakeMoney); Console.WriteLine("Se ha sacado el dinero"); } catch (Exception) { Console.WriteLine("No se puede sacar tanto dinero"); } } else { Console.WriteLine("No ha creado la cuenta"); } break; case 4: if (account != null) { Console.WriteLine($"{account.GetBalanceWithText()}"); } else { Console.WriteLine("No ha creado la cuenta"); } break; case 5: Console.WriteLine("Hasta pronto!"); break; } } while (option != 5); }
private MemoryStream GenerateExcel(AccountBank dataAccountBank, string title, int month, int year, int clientTimeZoneOffset) { var Query = GetQuery(dataAccountBank.Id, month, year, clientTimeZoneOffset); string date = new DateTime(year, month, DateTime.DaysInMonth(year, month)).ToString("dd MMMM yyyy"); string bank = $"Bank {dataAccountBank.BankName} A/C : {dataAccountBank.AccountNumber}"; DataTable result = new DataTable(); result.Columns.Add(new DataColumn() { ColumnName = "Tanggal", DataType = typeof(String) }); result.Columns.Add(new DataColumn() { ColumnName = "Keterangan", DataType = typeof(String) }); result.Columns.Add(new DataColumn() { ColumnName = "Nomor Referensi", DataType = typeof(String) }); result.Columns.Add(new DataColumn() { ColumnName = "Jenis Referensi", DataType = typeof(String) }); result.Columns.Add(new DataColumn() { ColumnName = "Currency", DataType = typeof(String) }); result.Columns.Add(new DataColumn() { ColumnName = "Before", DataType = typeof(String) }); result.Columns.Add(new DataColumn() { ColumnName = "Debit", DataType = typeof(String) }); result.Columns.Add(new DataColumn() { ColumnName = "Kredit", DataType = typeof(String) }); result.Columns.Add(new DataColumn() { ColumnName = "Saldo", DataType = typeof(String) }); int index = 0; if (Query.ToArray().Count() == 0) { result.Rows.Add("", "", "", "", "", 0.ToString("#,##0.#0"), 0.ToString("#,##0.#0"), 0.ToString("#,##0.#0"), 0.ToString("#,##0.#0")); // to allow column name to be generated properly for empty data as template } else { var BalanceByMonthAndYear = GetBalanceMonthAndYear(dataAccountBank.Id, month, year, clientTimeZoneOffset); var beforeBalance = BalanceByMonthAndYear.InitialBalance; //var previous = new DailyBankTransactionModel(); foreach (var item in Query) { var debit = item.Status.ToUpper().Equals("IN") ? item.Nominal.ToString("#,##0.#0") : 0.ToString("#,##0.#0"); var kredit = item.Status.ToUpper().Equals("OUT") ? item.Nominal.ToString("#,##0.#0") : 0.ToString("#,##0.#0"); var afterBalance = beforeBalance + (item.Status.Equals("IN") ? (double)item.Nominal : (double)item.Nominal * -1); result.Rows.Add(item.Date.ToOffset(new TimeSpan(clientTimeZoneOffset, 0, 0)).ToString("dd MMM yyyy", new CultureInfo("id-ID")), item.Remark, item.ReferenceNo, item.ReferenceType, item.AccountBankCurrencyCode, beforeBalance.ToString("#,##0.#0"), debit, kredit, afterBalance.ToString("#,##0.#0") ); beforeBalance = afterBalance; index++; } } return(Excel.DailyMutationReportExcel(new List <KeyValuePair <DataTable, string> >() { new KeyValuePair <DataTable, string>(result, "Mutasi") }, title, bank, date, true, index)); }
public ICollection <AccountBank> SetJson(string jsonsList) { ICollection <AccountBank> listAccountBanks = new List <AccountBank>(); int ini = 0; int end = 0; int posini = 0; int posfin = 0; bool foundIni = false; bool foundEnd = false; foreach (var objectList in jsonsList) { string trama = objectList.ToString(); string res = ""; //para calcular la position inicial y final ini += 1; if (trama == "[") { foundIni = true; posini = ini; } end += 1; if (trama == "]") { foundEnd = true; posfin = end; ini = posfin + 1; } if (posini < posfin && foundIni && foundEnd) { foundIni = false; foundEnd = false; res = jsonsList.Substring(posini, posfin - posini); var lista = new List <object>(); string temp = ""; for (var i = 0; i < res.Count(); i++) { if (res[i] != '"' && res[i] != '\r' && res[i] != '\n' && res[i] != ',' && res[i] != ' ' && res[i] != ']') { temp += res[i]; } if (res[i] == ',' || res[i] == ']') { i = i + 1; lista.Add(temp); temp = ""; } } AccountBank accounBank = new AccountBank { accountNumber = long.Parse(lista[0].ToString()), bankId = int.Parse(lista[1].ToString()), currencyTypeId = int.Parse(lista[2].ToString()), titular = lista[3].ToString() }; listAccountBanks.Add(accounBank); } } return(listAccountBanks); }
public async Task <int> AutoJournalFromDailyBankTransaction(DailyBankTransactionModel model, AccountBank accountBank, AccountBank accountBankDestination) { await Task.Delay(1000); return(await Task.FromResult(1)); }