Message IManterTOTAL_TRANSACTIONS.Salvar(Total_Transactions transactions) { Message msg = new Message(); try { using (var contexto = new Dominio.Entidades.HostelEntities()) { if (transactions.ID != 0) { contexto.Entry(transactions).State = EntityState.Modified; } else { contexto.Total_Transactions.Add(transactions); } contexto.SaveChanges(); } } catch (Exception ex) { msg.Exception = ex; } return(msg); }
public ActionResult Index([Bind(Include = "")] Total_Transactions transaction) { if (ModelState.IsValid) { string lastFirstName = Convert.ToString(Request["txtCopied"]); string listLastFirstName = string.Empty; if (!string.IsNullOrEmpty(lastFirstName)) { listLastFirstName = getLastFirstName(lastFirstName); } return(RedirectToAction("IndexValid", "LISTS", new { msg = listLastFirstName })); } //else //return RedirectToAction("CreateVerifyBooking", "LISTS", new { msg = "Guest encontra-se dentro do limite dos " + txtDays + " Dias" }); return(View()); }
public ActionResult Create([Bind(Include = "cmbReport_Type, txtCopied")] Dominio.Mensagens.TelaTransactions transaction) { if (ModelState.IsValid) { string txtCopied = Convert.ToString(Request["txtCopied"]); decimal txtTotalLastCashierVagner = 0; if (!string.IsNullOrEmpty(Request["TotalLastCashierVagner"])) { txtTotalLastCashierVagner = Convert.ToDecimal(Request["TotalLastCashierVagner"]); } decimal totalLastEnvelope = 0, totalTransactions = 0; int idLastCalc = 0; List <Transaction> listTrans = new List <Transaction>(); var lsTabTransaction = UtilsLibrary.GetListEnum(typeof(TabTransaction_Type)); var lsTabPayment = UtilsLibrary.GetListEnum(typeof(TabPayment_Type)); foreach (string row in txtCopied.Split(new String[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries)) { int i = 0; Transaction trans = new Transaction(); if (!string.IsNullOrEmpty(row)) { foreach (string cell in row.Split('\t')) { if (i == 0) { trans.DT_Reg = Convert.ToDateTime(cell); } else if (i == 1) { trans.DT_Reg = trans.DT_Reg.AddHours(Convert.ToDateTime(cell).Hour).AddMinutes(Convert.ToDateTime(cell).Minute).AddSeconds(Convert.ToDateTime(cell).Second); } else if (i == 2) { trans.LogLogin = cell; } else if (i == 3) { trans.Reservation_Number = cell; } else if (i == 4) { trans.GuestName = cell; } else if (i == 5) { if (!string.IsNullOrEmpty(cell)) { trans.ID_Transaction_Type = Convert.ToInt32(lsTabTransaction.Where(w => w.StringDescription.Trim().ToUpper() == cell.Trim().ToUpper()).Select(s => s.StringValue).FirstOrDefault()); } } else if (i == 6) { if (!string.IsNullOrEmpty(cell)) { trans.ID_Payment_Type = Convert.ToInt32(lsTabPayment.Where(w => w.StringDescription.Trim().ToUpper() == cell.Trim().ToUpper()).Select(s => s.StringValue).FirstOrDefault()); } i++; } else if (i == 8) { trans.Description = cell; } else if (i == 9) { string[] totalT = cell.Split('€'); if (totalT[0].Contains("-")) { trans.Total = Convert.ToDecimal("-" + totalT[1].Trim()); } else if (totalT[0].Contains("(")) { trans.Total = Convert.ToDecimal("-" + totalT[1].Trim().Split(')')[0]); } else { trans.Total = Convert.ToDecimal(totalT[1].Trim()); } totalTransactions += trans.Total; } i++; } listTrans.Add(trans); } } var msgTotalLastCalc = Fachada.Repositorio.CALC.GetTotalLastCalc(); if (msgTotalLastCalc != null) { idLastCalc = msgTotalLastCalc.Instance.ID; } var totalTransaction = new Total_Transactions(); totalTransaction.ID_Report_Type = (int)TabReport_Type.Bank; var msgEnvelope = Fachada.Repositorio.MONEY_COUNT.GetLastMoney_CountByIdCalcType((int)TabCalc_Type.Envelope); if (msgEnvelope != null) { totalLastEnvelope = msgEnvelope.Instance.Total; } totalTransaction.Last_Cashier_Total = txtTotalLastCashierVagner; totalTransaction.TotalTransactions = totalTransactions; totalTransaction.TotalFinal = (totalTransactions + txtTotalLastCashierVagner) - totalLastEnvelope; totalTransaction.LogLogin = (User != null && User.Identity != null && !string.IsNullOrEmpty(User.Identity.Name)) ? User.Identity.Name : string.Empty; totalTransaction.DT_Reg = DateTime.UtcNow; totalTransaction.ID_Calc = idLastCalc; var msgSaveTotal_Transactions = Fachada.Negocio.ManterTOTAL_TRANSACTIONS.Salvar(totalTransaction); if (msgSaveTotal_Transactions.Result != Message.ResultType.Success) { return(Content(msgSaveTotal_Transactions.Description)); } foreach (var item in listTrans) { item.ID_Total_Transactions = totalTransaction.ID; } var msgSaveTransactions = Fachada.Negocio.ManterTRANSACTIONS.SaveList(listTrans.ToArray()); if (msgSaveTransactions.Result != Message.ResultType.Success) { return(Content(msgSaveTransactions.Description)); } return(RedirectToAction("Details", "Bank", new { id = totalTransaction.ID })); } return(View(transaction)); }
public ActionResult CreateVerifyBooking([Bind(Include = "")] Total_Transactions transaction) { if (ModelState.IsValid) { string txtCopied = Convert.ToString(Request["txtCopied"]); int txtDays = Convert.ToInt32(Request["txtDays"]); int cmbReport_Type = Convert.ToInt32(Request["cmbReport_Type"]); decimal totalTransactions = 0; var listStocks = new List <Camada.Dominio.Entidades.Stock>(); List <LIST> listLITS = new List <LIST>(); string[] splitTxtCopied = txtCopied.Split(new String[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries); int countSplit = 0; DateTime dtTest = DateTime.Now; LIST list = new LIST(); foreach (string row in splitTxtCopied) { if (countSplit == 0 && DateTime.TryParse(row, out dtTest)) { countSplit++; continue; } else if (countSplit == 0) { continue; } if (countSplit == 2 || countSplit == 3) { countSplit++; continue; } int i = 0; if (!string.IsNullOrEmpty(row)) { string[] splitRow = row.Split('\t'); if (splitRow.Count() > 1) { foreach (string cell in splitRow) { if (i == 1) { list.CHECK_IN = Convert.ToDateTime(cell); } else if (i == 2) { list.CHECK_OUT = Convert.ToDateTime(cell); listLITS.Add(list); list = new LIST(); } i++; } } else { if (countSplit == 1) { list.FIRST_NAME_GUEST = row.Split(',')[0]; list.LAST_NAME_GUEST = row.Split(',')[1]; } } } countSplit++; if (countSplit >= 4) { countSplit = 0; } } int totalDifference = 0; foreach (var item in listLITS) { int aux = (item.CHECK_OUT.Value - item.CHECK_IN.Value).Days; if (aux < 0) { aux = (item.CHECK_OUT.Value.AddYears(1) - item.CHECK_IN.Value).Days; } totalDifference += aux; } if (totalDifference > txtDays) { list = new LIST(); list.DT_START_BLOCK = listLITS.OrderByDescending(o => o.CHECK_OUT).FirstOrDefault().CHECK_OUT; list.DT_START_BOOK = list.DT_START_BLOCK.Value.AddMonths(1); list.FIRST_NAME_GUEST = listLITS.FirstOrDefault().FIRST_NAME_GUEST; list.LAST_NAME_GUEST = listLITS.FirstOrDefault().LAST_NAME_GUEST; list.ID_LIST_TYPE = Convert.ToInt32(UtilsLibrary.GetListEnum(typeof(TabList_Type)).Where(w => w.Name == TabList_Type.VERIFY_BOOKING.ToString()).Select(s => s.StringValue).FirstOrDefault()); list.LOGLOGIN = User.Identity.Name; var msgSaveList = Fachada.Negocio.ManterLIST.Save(list); if (msgSaveList.Result != Message.ResultType.Success) { return(Content(msgSaveList.Description)); } return(RedirectToAction("EditVerifyBooking", "LISTS", new { id = list.ID, uploadImage = true })); } else { return(RedirectToAction("CreateVerifyBooking", "LISTS", new { msg = "Guest encontra-se dentro do limite dos " + txtDays + " Dias" })); } } return(View()); }
public ActionResult Create([Bind(Include = "cmbSHIFT_TYPE, cmbReport_Type, txtCopied, ID_Last_Calc, TotalCalc, ID_Last_Transaction, TotalLastCashier, ID_Last_TransactionVagner, TotalLastCashierVagner, ID_Last_TransactionCard, TotalLastCashierCard")] Dominio.Mensagens.TelaTransactions transaction) { if (string.IsNullOrEmpty(transaction.txtCopied)) { ShowDialogMessage(TabDialogMessage.Danger, "Please, fill out the field: 'Past the Sheet here'"); } if (transaction.cmbReport_Type == 0) { ShowDialogMessage(TabDialogMessage.Danger, "Please, select the Report Type"); } if (ModelState.IsValid) { string txtCopied = Convert.ToString(Request["txtCopied"]); int cmbReport_Type = Convert.ToInt32(Request["cmbReport_Type"]); decimal totalTransactions = 0; var listStocks = new List <Camada.Dominio.Entidades.Stock>(); List <Transaction> listTrans = new List <Transaction>(); var lsTabTransaction = UtilsLibrary.GetListEnum(typeof(TabTransaction_Type)); var lsTabPayment = UtilsLibrary.GetListEnum(typeof(TabPayment_Type)); var lsTabCard = UtilsLibrary.GetListEnum(typeof(TabCard_Type)); var lsTabProduct = UtilsLibrary.GetListEnum(typeof(TabProduct_Type)); if (cmbReport_Type > 0) { foreach (string row in txtCopied.Split(new String[] { "\r\n" }, StringSplitOptions.RemoveEmptyEntries)) { int i = 0; Transaction trans = new Transaction(); if (!string.IsNullOrEmpty(row)) { foreach (string cell in row.Split('\t')) { if (i == 0) { trans.DT_Reg = Convert.ToDateTime(cell); } else if (i == 1) { trans.DT_Reg = trans.DT_Reg.AddHours(Convert.ToDateTime(cell).Hour).AddMinutes(Convert.ToDateTime(cell).Minute).AddSeconds(Convert.ToDateTime(cell).Second); } else if (i == 2) { trans.LogLogin = cell; } else if (i == 3) { trans.Reservation_Number = cell; } else if (i == 4) { trans.GuestName = cell; } else if (i == 5) { if (!string.IsNullOrEmpty(cell)) { trans.ID_Transaction_Type = Convert.ToInt32(lsTabTransaction.Where(w => w.StringDescription.Trim().ToUpper() == cell.Trim().ToUpper()).Select(s => s.StringValue).FirstOrDefault()); } } else if (i == 6) { if (!string.IsNullOrEmpty(cell)) { trans.ID_Payment_Type = Convert.ToInt32(lsTabPayment.Where(w => w.StringDescription.Trim().ToUpper() == cell.Trim().ToUpper()).Select(s => s.StringValue).FirstOrDefault()); //if (trans.ID_Payment_Type != (int)TabPayment_Type.Card) // i++; } } else if (i == 7) { if (!string.IsNullOrEmpty(cell) && trans.ID_Payment_Type == (int)TabPayment_Type.Card) { trans.ID_Card_Type = Convert.ToInt32(lsTabCard.Where(w => w.StringDescription.Trim().ToUpper() == cell.Trim().ToUpper()).Select(s => s.StringValue).FirstOrDefault()); } } else if (i == 8) { string stock = string.Empty; if (!string.IsNullOrEmpty(cell) && (transaction.cmbReport_Type == (int)TabReport_Type.Cash || transaction.cmbReport_Type == (int)TabReport_Type.Card)) { stock = lsTabProduct.Where(w => w.StringDescription.Trim().ToUpper().Contains(cell.Trim().ToUpper())).Select(s => s.StringDescription).FirstOrDefault(); if (!string.IsNullOrEmpty(stock)) { var msgstock = new Camada.Dominio.Entidades.Stock(); msgstock.AMOUNT = 1; msgstock.DT_Entrada = DateTime.UtcNow; msgstock.ID_ACTION_TYPE = (int)TabAction_Type.Sold; msgstock.ID_PRODUCT_TYPE = Convert.ToInt32(stock); msgstock.LOGLOGIN = User.Identity.Name; listStocks.Add(msgstock); } } trans.Description = !string.IsNullOrEmpty(stock) ? stock : cell; } else if (i == 9) { string[] totalT = cell.Split('€'); if (totalT[0].Contains("-")) { trans.Total = Convert.ToDecimal("-" + totalT[1].Trim()); } else if (totalT[0].Contains("(")) { trans.Total = Convert.ToDecimal("-" + totalT[1].Trim().Split(')')[0]); } else { trans.Total = Convert.ToDecimal(totalT[1].Trim()); } totalTransactions += trans.Total; } i++; } listTrans.Add(trans); } } decimal totalLastCashier = 0, totalFinal = 0, totalLastCalc = 0; int idLastCalc = 0; var msgTotalLastCalc = Fachada.Repositorio.CALC.GetTotalLastCalc(); if (msgTotalLastCalc != null) { totalLastCalc = msgTotalLastCalc.Instance.Total; idLastCalc = msgTotalLastCalc.Instance.ID; } var totalTransaction = new Total_Transactions(); totalTransaction.ID_Report_Type = cmbReport_Type; if (cmbReport_Type == (int)TabReport_Type.Cash) { var msgTotalLastCashier = Fachada.Repositorio.TOTAL_TRANSACTIONS.GetLastTotal_Transaction(); if (msgTotalLastCashier != null && msgTotalLastCashier.Instance != null && msgTotalLastCashier.Instance.TotalFinal.HasValue) { totalTransaction.ID_Last_Transaction = msgTotalLastCashier.Instance.ID; totalLastCashier = msgTotalLastCashier.Instance.TotalFinal.Value; } totalFinal = totalTransactions + totalLastCashier; totalTransaction.Last_Cashier_Total = totalLastCashier; } else if (cmbReport_Type == (int)TabReport_Type.Vagner) { var msgTotalLastCashierVagner = Fachada.Repositorio.TOTAL_TRANSACTIONS.GetLastTotal_Vagner(); if (msgTotalLastCashierVagner != null && msgTotalLastCashierVagner.Instance != null && msgTotalLastCashierVagner.Instance.TotalFinal.HasValue) { totalTransaction.ID_Last_Transaction = msgTotalLastCashierVagner.Instance.ID; totalLastCashier = msgTotalLastCashierVagner.Instance.TotalFinal.Value; } totalFinal = totalTransactions + totalLastCashier; totalTransaction.Last_Cashier_Total = totalLastCashier; } else if (cmbReport_Type == (int)TabReport_Type.Card) { var msgTotalLastCashierCard = Fachada.Repositorio.TOTAL_TRANSACTIONS.GetLastTotal_Card(); if (msgTotalLastCashierCard != null && msgTotalLastCashierCard.Instance != null && msgTotalLastCashierCard.Instance.TotalFinal.HasValue) { totalTransaction.ID_Last_Transaction = msgTotalLastCashierCard.Instance.ID; totalLastCashier = msgTotalLastCashierCard.Instance.TotalFinal.Value; } totalFinal = totalTransactions + totalLastCashier; totalTransaction.Last_Cashier_Total = totalLastCashier; DateTime dtDayMonthYearReference = DateTime.UtcNow; if (dtDayMonthYearReference.Hour >= 0 && dtDayMonthYearReference.Hour <= 5) { dtDayMonthYearReference = dtDayMonthYearReference.AddDays(-1); } totalTransaction.DayMonthYearReference = dtDayMonthYearReference.Date; } if (cmbReport_Type != (int)TabReport_Type.Card) { totalTransaction.ID_Calc = idLastCalc; totalTransaction.DifferenceFinalCalc = totalLastCalc - totalFinal; totalTransaction.DayMonthYearReference = DateTime.UtcNow.Date; } totalTransaction.ID_SHIFT_TYPE = transaction.cmbSHIFT_TYPE; totalTransaction.TotalTransactions = totalTransactions; totalTransaction.TotalFinal = totalFinal; totalTransaction.LogLogin = (User != null && User.Identity != null && !string.IsNullOrEmpty(User.Identity.Name)) ? User.Identity.Name : string.Empty; totalTransaction.DT_Reg = DateTime.UtcNow; var msgSaveTotal_Transactions = Fachada.Negocio.ManterTOTAL_TRANSACTIONS.Salvar(totalTransaction); if (msgSaveTotal_Transactions.Result != Message.ResultType.Success) { return(Content(msgSaveTotal_Transactions.Description)); } foreach (var item in listStocks) { item.ID_TOTAL_TRANSACTION = totalTransaction.ID; var msgSaveStock = Fachada.Negocio.ManterSTOCK.Save(item); if (msgSaveStock.Result != Message.ResultType.Success) { return(Content(msgSaveStock.Description)); } } foreach (var item in listTrans) { item.ID_Total_Transactions = totalTransaction.ID; } var msgSaveTransactions = Fachada.Negocio.ManterTRANSACTIONS.SaveList(listTrans.ToArray()); if (msgSaveTransactions.Result != Message.ResultType.Success) { return(Content(msgSaveTransactions.Description)); } return(RedirectToAction("Details", "TotalTransactions", new { id = totalTransaction.ID })); } } carregaCombos(); return(View(transaction)); }
public ActionResult CreateStart(Total_Transactions transaction) { if (ModelState.IsValid) { decimal txtTotal = Convert.ToDecimal(Request["TotalFinal"]); var totalTransaction = new Total_Transactions(); totalTransaction.ID_Report_Type = (int)TabReport_Type.Cash; totalTransaction.TotalFinal = txtTotal; totalTransaction.LogLogin = (User != null && User.Identity != null && !string.IsNullOrEmpty(User.Identity.Name)) ? User.Identity.Name : string.Empty; totalTransaction.DT_Reg = DateTime.UtcNow; int idLasCashier = 0, idLastCalc = 0; decimal totalLastCashier = 0, totalLastCalc = 0; var msgTotalLastCalc = Fachada.Repositorio.CALC.GetTotalLastCalc(); if (msgTotalLastCalc != null) { totalLastCalc = msgTotalLastCalc.Instance.Total; idLastCalc = msgTotalLastCalc.Instance.ID; } var msgTotalLastCashier = Fachada.Repositorio.TOTAL_TRANSACTIONS.GetLastTotal_Transaction(); if (msgTotalLastCashier != null && msgTotalLastCashier.Instance != null && msgTotalLastCashier.Instance.TotalFinal.HasValue) { totalLastCashier = msgTotalLastCashier.Instance.TotalFinal.Value; idLasCashier = msgTotalLastCashier.Instance.ID; totalTransaction.ID_Last_Transaction = idLasCashier; } totalTransaction.DifferenceFinalCalc = totalLastCalc - txtTotal; totalTransaction.TotalTransactions = txtTotal; totalTransaction.ID_Calc = idLastCalc; var msgSaveTotal_Transactions = Fachada.Negocio.ManterTOTAL_TRANSACTIONS.Salvar(totalTransaction); if (msgSaveTotal_Transactions.Result != Message.ResultType.Success) { return(Content(msgSaveTotal_Transactions.Description)); } List <Transaction> listTrans = new List <Transaction>(); Transaction trans = new Transaction(); trans.DT_Reg = DateTime.UtcNow; trans.LogLogin = User.Identity.Name; trans.Reservation_Number = string.Empty; trans.GuestName = string.Empty; trans.Total = txtTotal; trans.ID_Transaction_Type = (int)TabTransaction_Type.Payment; trans.ID_Payment_Type = (int)TabPayment_Type.Cash; trans.ID_Total_Transactions = totalTransaction.ID; trans.Description = string.Empty; listTrans.Add(trans); var msgSaveTransactions = Fachada.Negocio.ManterTRANSACTIONS.SaveList(listTrans.ToArray()); if (msgSaveTransactions.Result != Message.ResultType.Success) { return(Content(msgSaveTransactions.Description)); } return(RedirectToAction("Details", "TotalTransactions", new { id = totalTransaction.ID })); } return(View()); }