public static List <DeviceInfo> GetShortDeviceInventoryList() { if (CashIn == null) { return(null); } return(CashIn.GetShortDeviceInventory()); }
public bool CheckBillValidator() { if (CashIn == null) { return(false); } return(CashIn.CheckBillValidator()); }
public bool CheckCoinAcceptor() { if (CashIn == null) { return(false); } return(CashIn.CheckCoinAcceptor()); }
public bool IsCashDatasetValid() { bool result = false; if (CashIn != null) { result = CashIn.IsDataSetValid(); } return(result); }
private void Subtitution(CashIn cashInDb, CashIn cashInView) { cashInDb.Date = cashInView.Date; cashInDb.Note = cashInView.Note; //delete detail for (int i = cashInDb.CashInDetails.Count - 1; i >= 0; i--) { int idReg = cashInDb.CashInDetails[i].Id; CashInDetail reg = cashInView.CashInDetails.FirstOrDefault(p => p.Id == idReg); if (reg == null) { db.Entry(cashInDb.CashInDetails[i]).State = EntityState.Deleted; //cashoutDb.RegularDetails.RemoveAt(i); } } //add or update detail for (int i = 0; i < cashInView.CashInDetails.Count; i++) { if (cashInView.CashInDetails[i].Id == 0) { cashInDb.CashInDetails.Add(cashInView.CashInDetails[i]); } else { CashInDetail regDetail = cashInView.CashInDetails[i]; CashInDetail detail = cashInDb.CashInDetails.First(p => p.Id == regDetail.Id); detail.Note = regDetail.Note; detail.Amount = regDetail.Amount; } } //image list //delete detail for (int i = cashInDb.ImageDatas.Count - 1; i >= 0; i--) { int idImg = cashInDb.ImageDatas[i].Id; var img = cashInView.ImageDatas.FirstOrDefault(p => p.Id == idImg); if (img == null) { db.Entry(cashInDb.ImageDatas[i]).State = EntityState.Deleted; } } //add or update detail for (int i = 0; i < cashInView.ImageDatas.Count; i++) { if (cashInView.ImageDatas[i].Id == 0) { cashInDb.ImageDatas.Add(cashInView.ImageDatas[i]); } } }
public void addCash(string desc, DateTime date) { CashIn cash = new CashIn() { Date = date, Desc = desc, userName = Program.Username, }; db.CashIns.Add(cash); db.SaveChanges(); }
public void AlterarStatusTemplate_OperacaoPendenteStatusEfetivada_DeveAlterarOStatus() { // Arrange var operacao = new CashIn(); var operacaoServico = new OperacaoServico(null); // Act operacaoServico.AlterarStatusTemplate(operacao, StatusOperacao.Efetivada); //Assert Assert.AreEqual(StatusOperacao.Efetivada, operacao.Status); }
public void PodeAlterarStatus_StatusPendente_DeveRetornarTrue() { // Arrange var operacao = new CashIn(); var operacaoServico = new OperacaoServico(null); // Act var resultado = operacaoServico.PodeAlterarStatus(operacao); //Assert Assert.IsTrue(resultado); }
public void MarcarEfetivada_OperacaoPendente_DeveAlterarOStatus() { // Arrange var operacao = new CashIn(); var operacaoServico = new OperacaoServico(null); // Act operacaoServico.MarcarEfetivada(operacao); //Assert Assert.AreEqual(StatusOperacao.Efetivada, operacao.Status); }
public async Task Gerar(OperacaoUnariaDto dto) { operacaoServico.ValidarDescricao(dto.Descricao); var conta = contaServico.ObterConta(dto.ContaId); var bonificacao = ObterBonificacao(conta.Id, dto.Valor); var cashIn = new CashIn(conta.Id, dto.Valor, dto.Descricao, conta.Saldo, bonificacao); cashInRepositorio.Post(cashIn); contaServico.VincularCashIn(conta, cashIn); await produtorClient.EnfileirarCashIn(new EfetivarOperacaoUnariaDto(cashIn.Id)); }
public void AlterarStatusTemplate_OperacaoEfetivadaStatusComErro_DeveLancarExcecao() { // Arrange var operacao = new CashIn { Status = StatusOperacao.Efetivada }; var operacaoServico = new OperacaoServico(null); // Act operacaoServico.AlterarStatusTemplate(operacao, StatusOperacao.ComErro); //Assert Assert.AreEqual(StatusOperacao.ComErro, operacao.Status); }
public void PodeAlterarStatus_StatusComErro_DeveRetornarFalse() { // Arrange var operacao = new CashIn { Status = StatusOperacao.ComErro }; var operacaoServico = new OperacaoServico(null); // Act var resultado = operacaoServico.PodeAlterarStatus(operacao); //Assert Assert.IsFalse(resultado); }
public void InitializeCashIn() { Log.Debug("Init cashin"); if (!TurnOffCashInInit) { try { cashin = GetCashInManagerInstance(); if (CashIn != null && !CashIn.IsDataSetValid()) { CashinOK = false; Log.Info("Cash validator dataset is invalid!"); throw new CashinDatasetException("Cash validator dataset is invalid!"); } if (CashIn != null && !CashIn.AceptorsFound) { Log.Error("Cash validators are not found! Geldschein- und Münzprüfer nicht gefunden", new Exception()); CashinOK = false; if (!CashinOK) { AsyncConnectCashin(); if (!System.Diagnostics.Debugger.IsAttached) { throw new CashinException("Cashin is not working!"); } } } else { CashinOK = true; // AssignCashInEventEx(); } } catch (CashinException e) { throw; } catch (CashinDatasetException e) { throw; } catch (Exception ex) { Log.Error("Error initialising Cash-Hardware", ex); } } }
public void MarcarComErro_OperacaoPendente_DeveAlterarOStatus() { // Arrange var erro = "teste"; var operacao = new CashIn(); var operacaoServico = new OperacaoServico(null); // Act operacaoServico.MarcarComErro(operacao, erro); //Assert Assert.AreEqual(StatusOperacao.ComErro, operacao.Status); Assert.AreEqual(erro, operacao.Erro); }
public void AlterarStatusTemplate_OperacaoComErroStatusEfetivada_DeveLancarExcecao() { // Arrange var operacao = new CashIn { Status = StatusOperacao.ComErro }; var operacaoServico = new OperacaoServico(null); // Act Action acao = () => operacaoServico.AlterarStatusTemplate(operacao, StatusOperacao.Efetivada); //Assert var excecao = Assert.ThrowsException <CarteiraDigitalException>(acao); Assert.IsTrue(excecao.Message.Contains("Não é possível alterar o status de uma operação Com erro!")); Assert.AreEqual(StatusOperacao.ComErro, operacao.Status); }
public async Task <CashInResponse> Post(CashIn request) { Log.Info(nameof(CashIn)); Log.Info(request?.ToJson()); request.Decrypt(); if (!Constants.AVAILABLE_PAN_NUMBERS.Contains(request?.EncConsumerPAN)) { throw new PANNotExistException(); } var response = await request.GetResponse <CashInResponse> (Constants.PROCESS_REQUEST_URL.PROCESS_POST_CASH_IN); Log.Info(nameof(CashInResponse)); Log.Info(response?.ToJson()); return(response); }
public void addCash(int categoryID, string desc, string receiptID, string price, string type, string TraineeName, string offerName) { CashIn cash = new CashIn() { Date = DateTime.Now, CategoryID = categoryID, Desc = desc, RecieptID = receiptID, Price = price, Type = type, TraineeName = TraineeName, userName = Program.Username, OfferName = offerName, }; db.CashIns.Add(cash); db.SaveChanges(); }
public JsonResult CreateCashInFinal(CashIn cashflow, string log) { try { CashIn cashInActive = cashflow; string usr = User.Identity.GetUserId(); ApplicationUser xx = db.Users.Find(usr); CutOff cutOff = db.CutOffs.FirstOrDefault(p => p.BranchId == xx.BranchId && p.State == StateCutOff.Open) ?? SetCutOff(xx.BranchId.Value); if (cashflow.Id != 0) { cashInActive = db.CashCards.OfType <CashIn>().First(p => p.Id == cashflow.Id); Subtitution(cashInActive, cashflow); } else { db.CashCards.Add(cashInActive); //CashOut.Date = DateTime.Now; cashInActive.CutOffId = cutOff.Id; cashInActive.UserId = usr; } cashInActive.SetToFinal(); cashInActive.LogNote = DateTime.Now.ToString("yyyy-MM-dd HH:mm") + " | " + User.Identity.Name + " | Final | " + log + "<br>" + cashInActive.LogNote; cashInActive.SetTotal(); db.SaveChanges(); return(Json(new { Success = 1, CashOutId = cashflow.Id, ex = "" })); } catch (Exception ex) { return(Json(new { Success = 0, ex = ex.Message })); } }
public void VincularCashIn_PassandoPorParametro_DeveVincular() { // Arrange var conta = new Conta { CashIns = new List <CashIn>() }; var cashIn = new CashIn(); var contaRepositorio = Substitute.For <IContaRepositorio>(); var contaServico = new ContaServico(contaRepositorio); // Act contaServico.VincularCashIn(conta, cashIn); // Assert contaRepositorio.Received(1).Update(conta); Assert.IsTrue(conta.CashIns.Any()); Assert.AreSame(cashIn, conta.CashIns.First()); }
public void AddTestMoNeyFromKeyboard(decimal money) { if (Active == (int)StationSr.STATION_TEST || Debugger.IsAttached) { if (CashIn != null && IsCashInEnabled) { if (money > Limit) { cashin.CashLimitExceededEventHandler.DynamicInvoke(null, null); } else { foreach (Delegate action in CashIn.GetInvocationList()) { action.DynamicInvoke(null, new CashInEventArgs(money, money <= 2)); } } } } }
public JsonResult CreateCashInDraft(CashIn cashIn) { try { CashIn cashInActive = cashIn; string usr = User.Identity.GetUserId(); ApplicationUser xx = db.Users.Find(usr); CutOff cutOff = db.CutOffs.FirstOrDefault(p => p.BranchId == xx.BranchId && p.State == StateCutOff.Open) ?? SetCutOff(xx.BranchId.Value); if (cashIn.Id != 0) { cashInActive = db.CashCards.OfType <CashIn>().First(p => p.Id == cashIn.Id); Subtitution(cashInActive, cashIn); } else { db.CashCards.Add(cashInActive); //CashOut.Date = DateTime.Now; cashInActive.CutOffId = cutOff.Id; cashInActive.UserId = usr; } //set subtotal and total cashInActive.SetToDraft(); cashInActive.SetTotal(); db.SaveChanges(); return(Json(new { Success = 1, CashOutId = cashIn.Id, ex = "" })); } catch (Exception ex) { return(Json(new { Success = 0, ex = ex.Message })); } }
public void EnableCashIn(decimal stake, decimal limit) { try { if (CashIn == null) { InitializeCashIn(); } if (CashIn != null) { CashIn.SetCredit(stake); CashIn.Enable(limit); IsCashInEnabled = limit > stake; Limit = limit; } } catch { } }
public async Task Gerar_PrimeiroCashInValido_DeveRetornarOCashInComBonificacao() { // Arrange var conta = new Conta { Id = 1 }; var descricao = "Teste unitário."; CashIn cashInGerado = null; var cashInRepositorio = Substitute.For <ICashInRepositorio>(); cashInRepositorio.Any(Arg.Any <Expression <Func <CashIn, bool> > >()).Returns(false); cashInRepositorio.When(x => x.Post(Arg.Any <CashIn>())) .Do(x => cashInGerado = x.Arg <CashIn>()); var contaServico = Substitute.For <IContaServico>(); contaServico.ObterConta(conta.Id).Returns(conta); var configuracaoServico = Substitute.For <IConfiguracaoServico>(); configuracaoServico.ObterPercentualBonificacao().Returns(0.1m); var produtorClient = Substitute.For <IProdutorOperacoesClient>(); var operacaoServico = Substitute.For <IOperacaoServico>(); var cashInServico = new CashInServico(cashInRepositorio, operacaoServico, contaServico, configuracaoServico, null, produtorClient); // Act await cashInServico.Gerar(new OperacaoUnariaDto(conta.Id, 10m, descricao)); // Assert Assert.IsNotNull(cashInGerado); Assert.AreEqual(10m, cashInGerado.Valor); Assert.AreEqual(1m, cashInGerado.ValorBonificacao); Assert.AreEqual(descricao, cashInGerado.Descricao); Assert.AreEqual(conta.Id, cashInGerado.ContaId); Assert.AreNotEqual(default, cashInGerado.Data);
private void btnSave_Click(object sender, EventArgs e) { a.addOrder(dtDate, txtDescription.Text, txtTotal.Text, ref orderID); foreach (DataRow dr in dt.Rows) { int productID = Convert.ToInt32(dr["م"]); string sell = dr["سعر الوحدة"].ToString(); string number = dr["العدد"].ToString(); string price = dr["الثمن"].ToString(); string productName = dr["الصنف"].ToString(); a.addOrderDetails(orderID, productID, sell, number, price); var p = db.Products.Find(productID); int categoryID = Convert.ToInt32(p.CategoryID); CashIn cash = new CashIn() { Date = Convert.ToDateTime(dtDate.EditValue), CategoryID = categoryID, Desc = productName, RecieptID = "", Price = price, Type = RGpaymentMethod.Text, TraineeName = "", userName = Program.Username, OfferName = "", }; db.CashIns.Add(cash); db.SaveChanges(); } db.SaveChanges(); if (RGpaymentMethod.SelectedIndex == 0) { u.updateTraffic(Convert.ToDouble(txtTotal.Text), 0); } XtraMessageBox.Show("تم إضافة الفاتورة بنجاح", "إضافة", MessageBoxButtons.OK, MessageBoxIcon.Information); DialogResult = DialogResult.OK; this.Close(); }
public void CashInDisable() { CashIn.Disable(); }
public void VincularCashIn(Conta conta, CashIn cashIn) { conta.CashIns.Add(cashIn); contaRepositorio.Update(conta); }
public IActionResult AddCashIn([FromBody] CashInObj CashInData) { using (var transaction = db.Database.BeginTransaction()) { try { if (CashInData == null) { transaction.Rollback(); return(BadRequest("حذث خطأ في ارسال البيانات الرجاء إعادة الادخال")); } var userId = this.help.GetCurrentUser(HttpContext); if (userId <= 0) { transaction.Rollback(); return(StatusCode(401, "الرجاء الـتأكد من أنك قمت بتسجيل الدخول")); } var UserType = this.help.GetCurrentUserType(HttpContext); if (UserType == 1) { transaction.Rollback(); return(StatusCode(401, "عفوا لايمكن اضافة قيمة نقدية الا عن طريق المصرف")); } CashIn Cash = new CashIn(); Cash.Status = 1; Cash.Refrence = 3; Cash.Valuedigits = CashInData.Valuedigits; Cash.DepositType = 3; Cash.Description = CashInData.description; Cash.NumInvoiceDep = CashInData.NumInvoiceDep; Cash.PersonalId = CashInData.PersonalId; //Cash.BankId =(int) db.BanksysBranch.Where(x => x.BranchId == this.help.GetCurrentBranche(HttpContext)).SingleOrDefault().BankId; db.CashIn.Add(Cash); db.SaveChanges(); BanksysBankActions BA = new BanksysBankActions(); BA.ActionType = 3; BA.Description = "إنشاء عملية نقدية - تأكيد مبدئي"; BA.UserId = userId; BA.CashInId = Cash.CashInId; BA.BranchId = this.help.GetCurrentBranche(HttpContext); BA.UserType = UserType; BA.ActionDate = DateTime.Now; db.BanksysBankActions.Add(BA); db.SaveChanges(); transaction.Commit(); return(Ok("لقد قمت بتسـجيل بيانات العملية النقدية")); } catch (Exception e) { transaction.Rollback(); return(StatusCode(500, e.Message)); } } }
public ActionResult CashIn() { var cash = new CashIn(); return(View(cash)); }