Exemplo n.º 1
0
        private cxc_cobro_Info armar_cobro(fa_notaCreDeb_Info info)
        {
            try
            {
                cxc_cobro_Info cobro = new cxc_cobro_Info
                {
                    IdEmpresa         = info.IdEmpresa,
                    IdSucursal        = info.IdSucursal,
                    IdCobro           = 0,
                    IdCobro_tipo      = info.CreDeb.Trim() == "C" ? "NTCR" : "NTDB",
                    cr_fecha          = info.no_fecha,
                    cr_fechaCobro     = info.no_fecha,
                    cr_fechaDocu      = info.no_fecha,
                    cr_NumDocumento   = info.CodDocumentoTipo + (info.NaturalezaNota == "SRI" ? ("-" + info.Serie1 + "-" + info.Serie2 + "-" + info.NumNota_Impresa) : info.IdNota.ToString("000000000")),
                    cr_observacion    = info.CodDocumentoTipo + (info.NaturalezaNota == "SRI" ? ("-" + info.Serie1 + "-" + info.Serie2 + "-" + info.NumNota_Impresa) : info.IdNota.ToString("000000000")),
                    cr_TotalCobro     = Math.Round(info.lst_cruce.Sum(q => q.Valor_Aplicado), 2, MidpointRounding.AwayFromZero),
                    IdCaja            = 1,
                    IdCliente         = info.IdCliente,
                    IdUsuario         = info.IdUsuario,
                    IdTipoNotaCredito = info.IdTipoNota,
                    lst_det           = new List <cxc_cobro_det_Info>()
                };

                int Secuencia = 1;
                foreach (var item in info.lst_cruce)
                {
                    cobro.lst_det.Add(new cxc_cobro_det_Info
                    {
                        IdEmpresa        = cobro.IdEmpresa,
                        IdSucursal       = cobro.IdSucursal,
                        IdCobro          = cobro.IdCobro,
                        secuencial       = Secuencia++,
                        IdCobro_tipo_det = cobro.IdCobro_tipo,
                        IdBodega_Cbte    = item.IdBodega_fac_nd_doc_mod,
                        IdCbte_vta_nota  = item.IdCbteVta_fac_nd_doc_mod,
                        dc_TipoDocumento = item.vt_tipoDoc,
                        dc_ValorPago     = item.Valor_Aplicado,
                    });
                }

                return(cobro);
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 2
0
        private cxc_cobro_Info armar_cobro_x_tipo(cxc_cobro_Info _cobro)
        {
            try
            {
                cxc_cobro_Info info_cobro = new cxc_cobro_Info();

                info_cobro.IdEmpresa       = info_factura.IdEmpresa;
                info_cobro.IdSucursal      = info_factura.IdSucursal;
                info_cobro.IdCobro_tipo    = _cobro.IdCobro_tipo;
                info_cobro.IdCliente       = info_factura.IdCliente;
                info_cobro.cr_TotalCobro   = _cobro.dc_ValorPago;
                info_cobro.cr_fecha        = de_fecha.DateTime.Date;
                info_cobro.cr_fechaCobro   = de_fecha.DateTime.Date;
                info_cobro.cr_fechaDocu    = de_fecha.DateTime.Date;
                info_cobro.cr_observacion  = "Canc./: FACT-" + Convert.ToDecimal(info_factura.vt_NumFactura).ToString();
                info_cobro.cr_Banco        = _cobro.IdBanco == null ? "" : lst_banco.FirstOrDefault(q => q.IdBanco == _cobro.IdBanco).ba_descripcion;
                info_cobro.cr_cuenta       = _cobro.cr_cuenta;
                info_cobro.cr_NumDocumento = _cobro.cr_NumDocumento;
                info_cobro.cr_es_anticipo  = "N";
                info_cobro.IdCaja          = Convert.ToInt32(info_factura.IdCaja);

                info_cobro.ListaCobro = new List <cxc_cobro_Det_Info>();
                cxc_cobro_Det_Info det = new cxc_cobro_Det_Info();
                det.IdEmpresa        = info_factura.IdEmpresa;
                det.IdSucursal       = info_factura.IdSucursal;
                det.dc_TipoDocumento = info_factura.vt_tipoDoc;
                det.IdBodega_Cbte    = info_factura.IdBodega;
                det.IdCbte_vta_nota  = info_factura.IdCbteVta;
                det.dc_ValorPago     = _cobro.dc_ValorPago;
                det.IdUsuario        = param.IdUsuario;
                det.nom_pc           = param.nom_pc;
                det.ip = param.ip;
                info_cobro.ListaCobro.Add(det);

                return(info_cobro);
            }
            catch (Exception ex)
            {
                string NameMetodo = System.Reflection.MethodBase.GetCurrentMethod().Name;
                NameMetodo = NameMetodo + " - " + ex.ToString();
                MessageBox.Show(NameMetodo + " " + param.Get_Mensaje_sys(enum_Mensajes_sys.Error_comunicarse_con_sistemas)
                                , param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
                Log_Error_bus.Log_Error(NameMetodo + " - " + ex.ToString());
                return(new cxc_cobro_Info());
            }
        }
Exemplo n.º 3
0
        public ActionResult Anular(cxc_cobro_Info model)
        {
            model.lst_det = List_det.get_list(Convert.ToDecimal(SessionFixed.IdTransaccionSessionActual));
            if (!validar(model, ref mensaje))
            {
                ViewBag.mensaje = mensaje;
                return(View(model));
            }
            if (model.IdCobro != 0)
            {
                if (!bus_cobro.anularDB(model))
                {
                    ViewBag.mensaje = "No se ha podido modificar el registro";
                    return(View(model));
                }
            }

            return(RedirectToAction("Index"));
        }
Exemplo n.º 4
0
        private bool guardarDB()
        {
            try
            {
                bool   res     = true;
                string mensaje = "";
                if (!validar())
                {
                    return(false);
                }

                foreach (var item in blst_det)
                {
                    cxc_cobro_Info info_cobro = new cxc_cobro_Info();
                    info_cobro = armar_cobro_x_tipo(item);
                    if (!bus_cobro.GuardarDB(Cl_Enumeradores.PantallaEjecucion.COBROS, ref info_cobro, ref mensaje, 0))
                    {
                        res = false;
                    }

                    if (!res)
                    {
                        return(false);
                    }
                }

                if (res)
                {
                    MessageBox.Show("Cobranza realizada exitosamente", param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                }

                return(res);
            }
            catch (Exception ex)
            {
                string NameMetodo = System.Reflection.MethodBase.GetCurrentMethod().Name;
                NameMetodo = NameMetodo + " - " + ex.ToString();
                MessageBox.Show(NameMetodo + " " + param.Get_Mensaje_sys(enum_Mensajes_sys.Error_comunicarse_con_sistemas)
                                , param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
                Log_Error_bus.Log_Error(NameMetodo + " - " + ex.ToString());
                return(false);
            }
        }
Exemplo n.º 5
0
        public ActionResult Modificar(cxc_cobro_Info model)
        {
            model.lst_det = list_det.get_list(model.IdTransaccionSession);
            if (!validar(model, ref mensaje))
            {
                ViewBag.mensaje = mensaje;
                cargar_combos(model.IdEmpresa, model.IdSucursal);
                return(View(model));
            }
            model.IdUsuarioUltMod = SessionFixed.IdUsuario;
            if (!bus_cobro.modificarDB(model))
            {
                ViewBag.mensaje = mensaje;
                cargar_combos(model.IdEmpresa, model.IdSucursal);
                return(View(model));
            }

            return(RedirectToAction("Modificar", new { IdEmpresa = model.IdEmpresa, IdSucursal = model.IdSucursal, IdCobro = model.IdCobro, Exito = true }));
        }
Exemplo n.º 6
0
        public ActionResult Modificar(cxc_cobro_Info model)
        {
            model.lst_det = list_det.get_list(model.IdTransaccionSession);
            if (!validar(model, ref mensaje))
            {
                ViewBag.mensaje = mensaje;
                cargar_combos(model.IdEmpresa);
                return(View(model));
            }
            model.IdUsuarioUltMod = SessionFixed.IdUsuario;
            if (!bus_cobro.modificarDB(model))
            {
                ViewBag.mensaje = mensaje;
                cargar_combos(model.IdEmpresa);
                return(View(model));
            }

            return(RedirectToAction("Index"));
        }
        public ActionResult Consultar(int IdSucursal = 0, int IdBodega = 0, decimal IdCbteVta = 0, string CodTipoDocumento = "", bool Exito = false)
        {
            int IdEmpresa = Convert.ToInt32(SessionFixed.IdEmpresa);

            cxc_cobro_Info model = bus_cobro.get_info_para_retencion(IdEmpresa, IdSucursal, IdBodega, IdCbteVta, CodTipoDocumento);

            if (model == null)
            {
                return(RedirectToAction("Index"));
            }

            #region Permisos
            seg_Menu_x_Empresa_x_Usuario_Info info = bus_permisos.get_list_menu_accion(Convert.ToInt32(SessionFixed.IdEmpresa), SessionFixed.IdUsuario, "CuentasPorCobrar", "CobranzaRetenciones", "Index");
            if (!info.Nuevo)
            {
                return(RedirectToAction("Index"));
            }
            #endregion

            model.lst_det = bus_det.get_list(IdEmpresa, IdSucursal, IdBodega, IdCbteVta, CodTipoDocumento);
            if (model.lst_det.Count == 0)
            {
                model.cr_fechaCobro   = DateTime.Now.Date;
                model.cr_NumDocumento = string.Empty;
            }
            else
            {
                model.IdCobro         = model.lst_det[0].IdCobro;
                model.cr_fecha        = model.lst_det[0].cr_fecha;
                model.cr_NumDocumento = model.lst_det[0].cr_NumDocumento;
                model.cr_TotalCobro   = Math.Round(model.lst_det.Sum(q => q.dc_ValorPago), 2, MidpointRounding.AwayFromZero);
            }
            model.IdTransaccionSession = Convert.ToDecimal(SessionFixed.IdTransaccionSession);
            List_det.set_list(model.lst_det, model.IdTransaccionSession);

            if (Exito)
            {
                ViewBag.MensajeSuccess = MensajeSuccess;
            }

            return(View(model));
        }
Exemplo n.º 8
0
        private void gridView_cobros_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
        {
            try
            {
                cxc_cobro_Info row = (cxc_cobro_Info)gridView_cobros.GetRow(e.RowHandle);
                if (row == null)
                {
                    return;
                }

                if (e.Column == col_tipo_cobro)
                {
                    cxc_cobro_tipo_Info row_cobro_tipo = lst_cobro_tipo.FirstOrDefault(q => q.IdCobro_tipo == row.IdCobro_tipo);
                    if (row_cobro_tipo != null)
                    {
                        if (row_cobro_tipo.ESRetenFTE == "S")
                        {
                            row.dc_ValorPago = Math.Round((info_factura.Subtotal * row_cobro_tipo.PorcentajeRet) / 100, 2, MidpointRounding.AwayFromZero);
                        }
                        else
                        if (row_cobro_tipo.ESRetenIVA == "S")
                        {
                            row.dc_ValorPago = Math.Round((info_factura.IVA * row_cobro_tipo.PorcentajeRet) / 100, 2, MidpointRounding.AwayFromZero);
                        }
                    }
                }

                if (e.Column == col_valor)
                {
                    calcular_saldo();
                }
            }
            catch (Exception ex)
            {
                string NameMetodo = System.Reflection.MethodBase.GetCurrentMethod().Name;
                NameMetodo = NameMetodo + " - " + ex.ToString();
                MessageBox.Show(NameMetodo + " " + param.Get_Mensaje_sys(enum_Mensajes_sys.Error_comunicarse_con_sistemas)
                                , param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
                Log_Error_bus.Log_Error(NameMetodo + " - " + ex.ToString());
            }
        }
Exemplo n.º 9
0
 public cxc_cobro_x_tarjeta_Info Get(cxc_cobro_Info info, decimal idcobro, string idtipocobro)
 {
     try
     {
         cxc_cobro_x_tarjeta_Info inf = new cxc_cobro_x_tarjeta_Info();
         inf.IdEmpresa             = param.IdEmpresa;
         inf.IdSucursal            = info.IdSucursal;
         inf.IdCobro               = info.IdCobro;
         inf.IdCobro_Aplicado      = idcobro;
         inf.IdCobro_tipo          = info.IdCobro_tipo;
         inf.IdCobro_tipo_Aplicado = idtipocobro;
         inf.IdCbte_vta_aplicado   = info.IdCbte_vta_nota;
         return(inf);
     }
     catch (Exception ex)
     {
         Log_Error_bus.Log_Error(ex.ToString());
         MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
         return(new cxc_cobro_x_tarjeta_Info());
     }
 }
Exemplo n.º 10
0
        public ActionResult Modificar(cxc_cobro_Info model)
        {
            model.lst_det = list_det.get_list(model.IdTransaccionSession);
            if (!validar(model, ref mensaje))
            {
                ViewBag.mensaje = mensaje;
                SessionFixed.IdTransaccionSessionActual = model.IdTransaccionSession.ToString();
                cargar_combos(model.IdEmpresa, model.IdSucursal);
                return(View(model));
            }
            model.IdUsuarioUltMod = SessionFixed.IdUsuario;
            if (!bus_cobro.modificarDB(model))
            {
                ViewBag.mensaje = "Ha ocurrido un error al modificar, comuníquese con sistemas";
                SessionFixed.IdTransaccionSessionActual = model.IdTransaccionSession.ToString();
                cargar_combos(model.IdEmpresa, model.IdSucursal);
                return(View(model));
            }

            return(RedirectToAction("Consultar", new { IdEmpresa = model.IdEmpresa, IdSucursal = model.IdSucursal, IdCobro = model.IdCobro, Exito = true }));
        }
Exemplo n.º 11
0
        public ActionResult Anular(int IdEmpresa = 0, int IdSucursal = 0, decimal IdCobro = 0)
        {
            #region Validar Session
            if (string.IsNullOrEmpty(SessionFixed.IdTransaccionSession))
            {
                return(RedirectToAction("Login", new { Area = "", Controller = "Account" }));
            }
            SessionFixed.IdTransaccionSession       = (Convert.ToDecimal(SessionFixed.IdTransaccionSession) + 1).ToString();
            SessionFixed.IdTransaccionSessionActual = SessionFixed.IdTransaccionSession;
            #endregion
            #region Permisos
            seg_Menu_x_Empresa_x_Usuario_Info info = bus_permisos.get_list_menu_accion(Convert.ToInt32(SessionFixed.IdEmpresa), SessionFixed.IdUsuario, "CuentasPorCobrar", "Cobranza", "Index");
            if (!info.Anular)
            {
                return(RedirectToAction("Index"));
            }
            #endregion
            cxc_cobro_Info model = bus_cobro.get_info(IdEmpresa, IdSucursal, IdCobro);
            if (model == null)
            {
                return(RedirectToAction("Index"));
            }
            model.IdTransaccionSession = Convert.ToDecimal(SessionFixed.IdTransaccionSession);
            model.lst_det = bus_det.get_list(IdEmpresa, IdSucursal, IdCobro);
            list_det.set_list(model.lst_det, model.IdTransaccionSession);
            model.IdEntidad = model.IdCliente;
            cargar_combos(IdEmpresa, model.IdSucursal);

            #region Validacion Periodo
            ViewBag.MostrarBoton = true;
            if (!bus_periodo.ValidarFechaTransaccion(IdEmpresa, model.cr_fecha, cl_enumeradores.eModulo.CXC, model.IdSucursal, ref mensaje))
            {
                ViewBag.mensaje      = mensaje;
                ViewBag.MostrarBoton = false;
            }
            #endregion

            return(View(model));
        }
Exemplo n.º 12
0
 public ActionResult Anular(int IdEmpresa = 0, int IdSucursal = 0, decimal IdCobro = 0)
 {
     #region Validar Session
     if (string.IsNullOrEmpty(SessionFixed.IdTransaccionSession))
     {
         return(RedirectToAction("Login", new { Area = "", Controller = "Account" }));
     }
     SessionFixed.IdTransaccionSession       = (Convert.ToDecimal(SessionFixed.IdTransaccionSession) + 1).ToString();
     SessionFixed.IdTransaccionSessionActual = SessionFixed.IdTransaccionSession;
     #endregion
     cxc_cobro_Info model = bus_cobro.get_info(IdEmpresa, IdSucursal, IdCobro);
     if (model == null)
     {
         return(RedirectToAction("Index"));
     }
     model.IdTransaccionSession = Convert.ToDecimal(SessionFixed.IdTransaccionSession);
     model.lst_det = bus_det.get_list(IdEmpresa, IdSucursal, IdCobro);
     list_det.set_list(model.lst_det, model.IdTransaccionSession);
     model.IdEntidad = model.IdCliente;
     cargar_combos(IdEmpresa);
     return(View(model));
 }
Exemplo n.º 13
0
        public Boolean GuardarDB(fa_devol_venta_Info Info, ref string msg)
        {
            try
            {
                // nota de credito
                fa_notaCredDeb_Bus         BusBNotaDB = new fa_notaCredDeb_Bus();
                in_movi_inve_Info          invCabInfo = new in_movi_inve_Info();
                in_movi_inve_Bus           inBus      = new in_movi_inve_Bus();
                cxc_cobro_Info             Cobro      = new cxc_cobro_Info();
                cl_parametrosGenerales_Bus param      = cl_parametrosGenerales_Bus.Instance;
                string  mensaje_cbte_cble             = "";
                decimal idNota                = 0;
                string  codigoNota            = "";
                string  mensajeDocumentoDupli = "";
                string  mensajeError          = "";
                string  numDocumento          = "";


                if (BusBNotaDB.GuardarDB(Info.InfoNotaCreDeb, ref idNota, ref mensajeDocumentoDupli, ref mensajeError))
                {
                    Info.IdNota = idNota;
                    data.GuardarDB(Info, ref msg);
                    invCabInfo = setInventarioMovi(Info);
                    inBus.GrabarDB(invCabInfo, ref idNota, ref mensaje_cbte_cble, ref msg);
                }


                return(true);
            }
            catch (Exception ex)
            {
                Core.Erp.Info.Log_Exception.LoggingManager.Logger.Log(Core.Erp.Info.Log_Exception.LoggingCategory.Error, ex.Message);
                throw new Core.Erp.Info.Log_Exception.DalException(string.Format("", "GuardarDB", ex.Message), ex)
                      {
                          EntityType = typeof(fa_devol_venta_Bus)
                      };
            }
        }
Exemplo n.º 14
0
        public ActionResult Modificar(int IdEmpresa = 0, int IdSucursal = 0, decimal IdCobro = 0, bool Exito = false)
        {
            #region Validar Session
            if (string.IsNullOrEmpty(SessionFixed.IdTransaccionSession))
            {
                return(RedirectToAction("Login", new { Area = "", Controller = "Account" }));
            }
            SessionFixed.IdTransaccionSession       = (Convert.ToDecimal(SessionFixed.IdTransaccionSession) + 1).ToString();
            SessionFixed.IdTransaccionSessionActual = SessionFixed.IdTransaccionSession;
            #endregion
            cxc_cobro_Info model = bus_cobro.get_info(IdEmpresa, IdSucursal, IdCobro);
            if (model == null)
            {
                return(RedirectToAction("Index"));
            }
            model.IdTransaccionSession = Convert.ToDecimal(SessionFixed.IdTransaccionSession);
            model.lst_det = bus_det.get_list(IdEmpresa, IdSucursal, IdCobro);
            list_det.set_list(model.lst_det, model.IdTransaccionSession);
            model.IdEntidad = model.IdCliente;
            cargar_combos(IdEmpresa, model.IdSucursal);

            if (Exito)
            {
                ViewBag.MensajeSuccess = MensajeSuccess;
            }

            #region Validacion Periodo
            ViewBag.MostrarBoton = true;
            if (!bus_periodo.ValidarFechaTransaccion(IdEmpresa, model.cr_fecha, cl_enumeradores.eModulo.CXC, model.IdSucursal, ref mensaje))
            {
                ViewBag.mensaje      = mensaje;
                ViewBag.MostrarBoton = false;
            }
            #endregion

            return(View(model));
        }
Exemplo n.º 15
0
        public ActionResult Nuevo(int IdEmpresa = 0)
        {
            int IdSucursal = Convert.ToInt32(SessionFixed.IdSucursal);
            var param_caja = bus_param_caja.get_info(IdEmpresa);

            #region Validar Session
            if (string.IsNullOrEmpty(SessionFixed.IdTransaccionSession))
            {
                return(RedirectToAction("Login", new { Area = "", Controller = "Account" }));
            }
            SessionFixed.IdTransaccionSession       = (Convert.ToDecimal(SessionFixed.IdTransaccionSession) + 1).ToString();
            SessionFixed.IdTransaccionSessionActual = SessionFixed.IdTransaccionSession;
            #endregion
            #region Permisos
            seg_Menu_x_Empresa_x_Usuario_Info info = bus_permisos.get_list_menu_accion(Convert.ToInt32(SessionFixed.IdEmpresa), SessionFixed.IdUsuario, "CuentasPorCobrar", "Cobranza", "Index");
            if (!info.Nuevo)
            {
                return(RedirectToAction("Index"));
            }
            #endregion

            cxc_cobro_Info model = new cxc_cobro_Info
            {
                IdTransaccionSession = Convert.ToDecimal(SessionFixed.IdTransaccionSession),
                IdEmpresa            = IdEmpresa,
                IdSucursal           = IdSucursal,
                cr_fecha             = DateTime.Now.Date,
                IdCobro_tipo         = "EFEC",
                lst_det = new List <cxc_cobro_det_Info>(),
            };
            list_det.set_list(new List <cxc_cobro_det_Info>(), model.IdTransaccionSession);
            List_x_Cruzar.set_list(new List <cxc_cobro_det_Info>(), model.IdTransaccionSession);

            cargar_combos(IdEmpresa, model.IdSucursal);
            return(View(model));
        }
Exemplo n.º 16
0
        private void repositorydc_ValorPago_ParseEditValue(object sender, DevExpress.XtraEditors.Controls.ConvertEditValueEventArgs e)
        {
            try
            {
                this.txtSubtotal.Focus();

                row = (cxc_cobro_Info)gridView_detalle.GetRow(gridView_detalle.FocusedRowHandle);
                double sumEFEC      = 0;
                double sumDEPO      = 0;
                double sumCXC       = 0;
                double sumCHQF      = 0;
                double sumOTROS     = 0;
                double sumCHQV_TARJ = 0;


                if (row.IdCobro_tipo == "" || row.IdCobro_tipo == null)
                {
                    MessageBox.Show("Seleccione primero el tipo de cobro", "Sistemas");
                    gridView_detalle.DeleteRow(gridView_detalle.FocusedRowHandle);
                }

                else
                {
                    //   foreach (var item in lst)
                    foreach (var item in lstCobro)
                    {
                        string caseSwitch = item.IdCobro_tipo;
                        switch (caseSwitch)
                        {
                        case "EFEC":
                            sumEFEC = sumEFEC + item.dc_ValorPago;
                            this.txtEfectivo.EditValue = sumEFEC;
                            break;

                        case "DEPO":
                            sumDEPO = sumDEPO + item.dc_ValorPago;
                            this.txtDeposito.EditValue = sumDEPO;
                            break;

                        case "CXC":
                            sumCXC = sumCXC + item.dc_ValorPago;
                            this.txtCXC.EditValue = sumCXC;
                            break;

                        case "CHQF":
                            sumCHQF = sumCHQF + item.dc_ValorPago;
                            this.txtCHQF.EditValue = sumCHQF;
                            break;

                        case "CHQV":
                            sumCHQV_TARJ = sumCHQV_TARJ + item.dc_ValorPago;
                            this.txtChq_Tarj.EditValue = sumCHQV_TARJ;
                            break;

                        case "TARJ":
                            sumCHQV_TARJ = sumCHQV_TARJ + item.dc_ValorPago;
                            this.txtChq_Tarj.EditValue = sumCHQV_TARJ;
                            break;

                        default:
                            sumOTROS = sumOTROS + item.dc_ValorPago;
                            this.txtOtros.EditValue = sumOTROS;
                            break;
                        }
                    } // fin for
                }     // fin else
                  // fin col_valor


                this.txtTotalCobrado.EditValue = sumEFEC + sumDEPO + sumCXC + sumCHQF + sumCHQV_TARJ + sumOTROS;
                txeSaldo.EditValue             = Convert.ToDouble(txeTotalDoc.EditValue) - Convert.ToDouble(txtTotalCobrado.EditValue);
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
            }
        }
Exemplo n.º 17
0
        void Grabar()
        {
            try
            {
                // List<cxc_cobro_Info> listax = new List<cxc_cobro_Info>();
                //BindingList<cxc_cobro_Info> lista_Cobro = new BindingList<cxc_cobro_Info>();
                get_Cobro();
                List <cxc_cobro_Info> rLst1 = new List <cxc_cobro_Info>();
                cxc_cobro_Det_Info    lista_det;
                if (lstCobroNew.Count() == 0)
                {
                    // MessageBox.Show("No se pudo Ingresar los Cobros", "SISTEMA", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }

                else
                {
                    cxc_cobro_Info Info_CobroNew;
                    foreach (var item in lstCobroNew)
                    {
                        Info_CobroNew = new cxc_cobro_Info();

                        Info_CobroNew.IdEmpresa  = item.IdEmpresa;
                        Info_CobroNew.IdSucursal = item.IdSucursal;
                        Info_CobroNew.IdCliente  = item.IdCliente;
                        // Info_Cobro.cr_TotalCobro = item.cr_TotalCobro;
                        Info_CobroNew.cr_TotalCobro = item.dc_ValorPago;
                        Info_CobroNew.cr_Banco      = item.cr_Banco;

                        Info_CobroNew.cr_Tarjeta = item.cr_Tarjeta;

                        Info_CobroNew.IdCobro_a_aplicar = item.IdCobro_a_aplicar;
                        Info_CobroNew.cr_observacion    = item.cr_observacion;
                        Info_CobroNew.IdCobro_tipo      = item.IdCobro_tipo;
                        Info_CobroNew.cr_Banco          = item.cr_Banco;
                        Info_CobroNew.cr_fechaDocu      = Convert.ToDateTime(item.cr_fechaDocu.ToShortDateString());
                        Info_CobroNew.cr_fecha          = Convert.ToDateTime(item.cr_fecha.ToShortDateString());
                        Info_CobroNew.cr_fechaCobro     = Convert.ToDateTime(item.cr_fechaCobro.ToShortDateString());
                        Info_CobroNew.cr_cuenta         = item.cr_cuenta;
                        Info_CobroNew.cr_NumDocumento   = item.cr_NumDocumento;
                        Info_CobroNew.dc_ValorPago      = item.dc_ValorPago;
                        Info_CobroNew.dc_TipoDocumento  = item.dc_TipoDocumento;
                        Info_CobroNew.IdCbte_vta_nota   = item.IdCbte_vta_nota;
                        Info_CobroNew.IdEmpresa         = item.IdEmpresa;
                        Info_CobroNew.secuencial        = 1;
                        Info_CobroNew.nom_pc            = item.nom_pc;
                        Info_CobroNew.ip            = item.ip;
                        Info_CobroNew.Fecha_Transac = Convert.ToDateTime(DateTime.Now);
                        Info_CobroNew.IdUsuario     = item.IdUsuario;
                        Info_CobroNew.IdBodega_Cbte = item.IdBodega_Cbte;

                        Info_CobroNew.IdCaja = item.IdCaja;

                        lista_det = new cxc_cobro_Det_Info();

                        lista_det.IdEmpresa        = Info_CobroNew.IdEmpresa;
                        lista_det.IdEmpresa        = item.IdEmpresa;
                        lista_det.IdSucursal       = Info_CobroNew.IdSucursal;
                        lista_det.IdCobro          = Info_CobroNew.IdCobro;
                        lista_det.secuencial       = Info_CobroNew.secuencial;
                        lista_det.dc_TipoDocumento = Info_CobroNew.dc_TipoDocumento;
                        lista_det.IdBodega_Cbte    = Info_CobroNew.IdBodega_Cbte;
                        lista_det.IdCbte_vta_nota  = Info_CobroNew.IdCbte_vta_nota;
                        lista_det.dc_ValorPago     = Info_CobroNew.dc_ValorPago;
                        lista_det.IdUsuario        = Info_CobroNew.IdUsuario;

                        lista_det.Fecha_Transac = Convert.ToDateTime(DateTime.Now);
                        lista_det.nom_pc        = Info_CobroNew.nom_pc;
                        lista_det.ip            = Info_CobroNew.ip;


                        Info_CobroNew.ListaCobro = new List <cxc_cobro_Det_Info>();

                        Info_CobroNew.ListaCobro.Add(lista_det);

                        string MsgError = "";
                        if (cobroBus.GuardarDB(Cl_Enumeradores.PantallaEjecucion.COBROS, ref Info_CobroNew, ref MsgError))
                        {
                            //lista_Cobro.Add(Info_CobroNew);
                        }
                        else
                        {
                            //MessageBox.Show("No se pudo Ingresar los Cobros", "SISTEMA", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }

                    btnGuardar.Enabled      = false;
                    btnGuardarSalir.Enabled = false;
                    MessageBox.Show("Cobros Ingresados correctamente", "SISTEMA", MessageBoxButtons.OK, MessageBoxIcon.Information);

                    //lista = new BindingList<cxc_cobro_x_caj_Caja_Movimiento_Info>();

                    //lst = new BindingList<cxc_cobro_Info>(lista_Cobro);

                    //this.gridControl_NCND.DataSource = carga_grid_caj_Movimiento(lst, lista);

                    //vwcxc_cartera_x_cobrar_Info cartera = new vwcxc_cartera_x_cobrar_Info();
                    //cartera = cartera_B.ConsultaInfo(cartera_I.IdEmpresa, cartera_I.IdSucursal, cartera_I.IdBodega, cartera_I.IdComprobante);
                    //txt_saldo.Value = Convert.ToDecimal(cartera.Saldo);
                }
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
            }
        }
Exemplo n.º 18
0
        public Boolean GuardarDB(cxc_cobro_x_Anticipo_Info infoAnticipo, ref string mensaje, Boolean Generar_Cobro_x_det, Cl_Enumeradores.PantallaEjecucion Accion)
        {
            try
            {
                Boolean resGrabar = true;

                if (validar_objeto(infoAnticipo, ref mensaje))
                {
                    cxc_cobro_Bus cobroBus = new cxc_cobro_Bus();
                    //grabando cabecera de anticipo
                    resGrabar = data.GrabarDB(infoAnticipo, ref mensaje);

                    foreach (var item in infoAnticipo.listDetalle_Anticipo)
                    {
                        item.IdEmpresa  = infoAnticipo.IdEmpresa;
                        item.IdAnticipo = infoAnticipo.IdAnticipo;
                    }
                    //grabando detalle de anticipo
                    data_det.GuardarDB(infoAnticipo.listDetalle_Anticipo, ref mensaje);


                    if (Generar_Cobro_x_det)
                    {
                        int contCobro = 1;
                        foreach (var item in infoAnticipo.listCobros)
                        {
                            cxc_cobro_x_Anticipo_det_Info AnticipoDetalle = new cxc_cobro_x_Anticipo_det_Info();
                            cxc_cobro_Info infoCobro = item;

                            AnticipoDetalle = infoAnticipo.listDetalle_Anticipo.Find(v => v.IdFila == contCobro);
                            infoCobro.Infocxc_cobro_x_Anticipo_det = AnticipoDetalle;
                            decimal IdCobro = 0;

                            if (cobroBus.GuardarDB(Accion, ref infoCobro, ref mensaje) == false)
                            {
                                return(false);
                            }

                            AnticipoDetalle.IdEmpresa_Cobro  = infoCobro.IdEmpresa;
                            AnticipoDetalle.IdCobro_cobro    = infoCobro.IdCobro;
                            AnticipoDetalle.IdSucursal_cobro = infoCobro.IdSucursal;

                            contCobro++;
                        }
                    }
                }
                else
                {
                    resGrabar = false;
                }


                return(resGrabar);
            }
            catch (Exception ex)
            {
                Core.Erp.Info.Log_Exception.LoggingManager.Logger.Log(Core.Erp.Info.Log_Exception.LoggingCategory.Error, ex.Message);
                throw new Core.Erp.Info.Log_Exception.DalException(string.Format("", "Get_List_Cobro_Tipo", ex.Message), ex)
                      {
                          EntityType = typeof(cxc_cobro_x_Anticipo_Bus)
                      };
            }
        }
Exemplo n.º 19
0
        public void setInfo(fa_factura_Info Info_FACT, fa_notaCreDeb_Info Info_ND, string NomCliente, int idCaja, string _Tipo_documento)
        {
            try
            {
                Tipo_documento = _Tipo_documento;
                int     IdSucursal = Tipo_documento == "FACT" ? Info_FACT.IdSucursal : Info_ND.IdSucursal;
                int     IdBodega   = Tipo_documento == "FACT" ? Info_FACT.IdBodega : Info_ND.IdBodega;
                decimal IdCbteVta  = Tipo_documento == "FACT" ? Info_FACT.IdCbteVta : Info_ND.IdNota;

                switch (Tipo_documento)
                {
                case "FACT":
                    InfoFactura        = Info_FACT;
                    txttipoDoc.Text    = Info_FACT.vt_tipoDoc.Trim();
                    IDCaja             = idCaja;
                    txtNCobro.Text     = Info_FACT.vt_NumFactura;
                    txtNomCliente.Text = NomCliente;
                    txtSubtotal.Text   = Convert.ToString(Info_FACT.Subtotal);
                    txtIVA.Text        = Convert.ToString(Info_FACT.IVA);
                    txtTotal.Text      = Convert.ToString(Info_FACT.Total);
                    break;

                case "NTDB":
                    InfoNota           = Info_ND;
                    txttipoDoc.Text    = Tipo_documento;
                    IDCaja             = idCaja;
                    txtNCobro.Text     = Info_ND.NumNota_Impresa;
                    txtNomCliente.Text = NomCliente;
                    txtSubtotal.Text   = Convert.ToString(Info_ND.Subtotal);
                    txtIVA.Text        = Convert.ToString(Info_ND.Iva);
                    txtTotal.Text      = Convert.ToString(Info_ND.Total);
                    break;
                }

                List <vwcxc_cobros_x_vta_nota_x_Ret_Info> ListaRFU  = busCobro.Get_List_cobro_x_RteFte(param.IdEmpresa, IdSucursal, IdBodega, IdCbteVta, Tipo_documento);
                List <vwcxc_cobros_x_vta_nota_x_Ret_Info> ListaRIVA = busCobro.Get_List_cobro_x_RteIVA(param.IdEmpresa, IdSucursal, IdBodega, IdCbteVta, Tipo_documento);

                ListaRFU.ForEach(var => { var.Modificable = false; contRetFU = 1; });
                ListaRIVA.ForEach(var => { var.Modificable = false; contRetIVA = 1; });

                ListBindRtFU  = new BindingList <vwcxc_cobros_x_vta_nota_x_Ret_Info>(ListaRFU);
                ListBindRtIVA = new BindingList <vwcxc_cobros_x_vta_nota_x_Ret_Info>(ListaRIVA);

                ListaGrabar = new List <cxc_cobro_Info>();

                foreach (var item in ListaRFU)
                {
                    cxc_cobro_Info info_cobro = new cxc_cobro_Info();
                    info_cobro.IdEmpresa  = param.IdEmpresa;
                    info_cobro.IdSucursal = item.IdSucursal;
                    info_cobro.IdCobro    = item.IdCobro;
                    ListaGrabar.Add(info_cobro);
                }
                foreach (var item in ListaRIVA)
                {
                    cxc_cobro_Info info_cobro = new cxc_cobro_Info();
                    info_cobro.IdEmpresa  = param.IdEmpresa;
                    info_cobro.IdSucursal = item.IdSucursal;
                    info_cobro.IdCobro    = item.IdCobro;
                    ListaGrabar.Add(info_cobro);
                }

                gridControlRteFU.DataSource  = ListBindRtFU;
                gridControlRteIVA.DataSource = ListBindRtIVA;
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Exemplo n.º 20
0
        private Boolean getInfo()
        {
            Boolean res = true;

            ListaGrabar = new List <cxc_cobro_Info>();
            try
            {
                foreach (var item in ListBindRtFU)
                {
                    if (item.Modificable == true)
                    {
                        cxc_cobro_Info     info = new cxc_cobro_Info();
                        cxc_cobro_Det_Info det  = new cxc_cobro_Det_Info();
                        ///cabecera
                        ///
                        info.IdEmpresa      = det.IdEmpresa = param.IdEmpresa;
                        info.IdSucursal     = det.IdSucursal = Tipo_documento == "FACT" ? InfoFactura.IdSucursal : InfoNota.IdSucursal;
                        info.IdBodega_Cbte  = det.IdBodega_Cbte = Tipo_documento == "FACT" ? InfoFactura.IdBodega : InfoNota.IdBodega;
                        info.IdCliente      = Tipo_documento == "FACT" ? InfoFactura.IdCliente : InfoNota.IdCliente;
                        det.IdCbte_vta_nota = Tipo_documento == "FACT" ? InfoFactura.IdCbteVta : InfoNota.IdNota;

                        info.IdCaja          = IDCaja;
                        info.IdCobro_tipo    = item.IdCobro_tipo;
                        info.cr_NumDocumento = item.cr_NumDocumento;

                        info.cr_fecha      = Convert.ToDateTime(item.cr_fecha.ToShortDateString());
                        info.cr_fechaDocu  = Convert.ToDateTime(item.cr_fechaDocu.ToShortDateString());
                        info.cr_fechaCobro = Convert.ToDateTime(item.cr_fechaDocu.ToShortDateString());



                        info.cr_observacion = txtObservaciones.EditValue + "Ret:FTE" + item.PorcentajeRet + "% ";
                        info.estado         = "A";
                        info.IdUsuario      = det.IdUsuario = param.IdUsuario;
                        info.Fecha_Transac  = det.Fecha_Transac = param.Fecha_Transac;
                        info.ip             = param.ip;
                        info.nom_pc         = param.nom_pc;
                        info.IdBanco        = null;

                        ///detalle
                        ///
                        det.dc_TipoDocumento = txttipoDoc.Text.Trim();
                        det.secuencial       = 1;
                        info.cr_TotalCobro   = det.dc_ValorPago = Convert.ToDouble(item.dc_ValorPago);
                        info.ListaCobro      = new List <cxc_cobro_Det_Info>();
                        info.ListaCobro.Add(det);
                        ListaGrabar.Add(info);
                    }
                }

                foreach (var item in ListBindRtIVA)
                {
                    if (item.Modificable == true)
                    {
                        cxc_cobro_Info     info = new cxc_cobro_Info();
                        cxc_cobro_Det_Info det  = new cxc_cobro_Det_Info();
                        ///cabecera
                        ///
                        info.IdEmpresa       = det.IdEmpresa = param.IdEmpresa;
                        info.IdSucursal      = det.IdSucursal = Tipo_documento == "FACT" ? InfoFactura.IdSucursal : InfoNota.IdSucursal;
                        info.IdBodega_Cbte   = det.IdBodega_Cbte = Tipo_documento == "FACT" ? InfoFactura.IdBodega : InfoNota.IdBodega;
                        info.IdCliente       = Tipo_documento == "FACT" ? InfoFactura.IdCliente : InfoNota.IdCliente;
                        info.IdCaja          = IDCaja;
                        info.IdCobro_tipo    = item.IdCobro_tipo;
                        info.cr_NumDocumento = item.cr_NumDocumento;

                        info.cr_fecha      = Convert.ToDateTime(item.cr_fecha.ToShortDateString());
                        info.cr_fechaDocu  = Convert.ToDateTime(item.cr_fechaDocu.ToShortDateString());
                        info.cr_fechaCobro = Convert.ToDateTime(item.cr_fechaDocu.ToShortDateString());

                        info.cr_observacion = txtObservaciones.EditValue + "Ret:IVA" + item.PorcentajeRet + "% ";
                        info.estado         = "A";
                        info.IdUsuario      = det.IdUsuario = param.IdUsuario;
                        info.Fecha_Transac  = det.Fecha_Transac = param.Fecha_Transac;
                        info.ip             = param.ip;
                        info.nom_pc         = param.nom_pc;
                        info.IdBanco        = null;
                        ///detalle
                        ///
                        det.dc_TipoDocumento = txttipoDoc.Text.Trim();
                        det.IdCbte_vta_nota  = Tipo_documento == "FACT" ? InfoFactura.IdCbteVta : InfoNota.IdNota;
                        det.secuencial       = 1;
                        info.cr_TotalCobro   = det.dc_ValorPago = Convert.ToDouble(item.dc_ValorPago);
                        info.ListaCobro      = new List <cxc_cobro_Det_Info>();
                        info.ListaCobro.Add(det);
                        ListaGrabar.Add(info);
                    }
                }
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                res = false;
            }
            return(res);
        }
Exemplo n.º 21
0
        private Boolean grabar()
        {
            txtSubtotal.Focus();
            Boolean res = true;

            string mensajeE = "";

            try
            {
                if (validar())
                {
                    foreach (var item in ListaGrabar)
                    {
                        cxc_cobro_Info info = item;
                        if (!busCobro.GuardarDB(Cl_Enumeradores.PantallaEjecucion.COBROS, ref info, ref mensajeE))
                        {
                            mensajeE = mensajeE + " \n\n" + " Tipo Cobro: " + info.IdCobro_tipo + " Valor:" + info.dc_ValorPago;
                            res      = false;
                        }
                        else
                        {
                            item.IdSucursal = info.IdSucursal;
                            item.IdCobro    = info.IdCobro;
                        }
                    }

                    if (res == false)
                    {
                        MessageBox.Show("al menos uno de los cobros no se guardo.. :" + mensajeE, param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    else
                    {
                        MessageBox.Show("Se guardo con exito la retención.", param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Information);

                        if (MessageBox.Show("¿Desea imprimir la retención?", param.Nombre_sistema, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                        {
                            switch (param.IdCliente_Ven_x_Default)
                            {
                            case Cl_Enumeradores.eCliente_Vzen.GRAFINPRENT:
                                CargarReporte();
                                break;

                            case Cl_Enumeradores.eCliente_Vzen.NATURISA:
                                CargarReporte_diarios();
                                break;

                            default:
                                CargarReporte();
                                if (MessageBox.Show("¿Desea imprimir los diarios de la retención?", param.Nombre_sistema, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                                {
                                    CargarReporte_diarios();
                                }
                                break;
                            }
                        }
                    }

                    btnGuardar.Enabled      = false;
                    btnGuardarSalir.Enabled = false;
                }
                else
                {
                    res = false;
                }
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                res = false;
            }
            return(res);
        }
Exemplo n.º 22
0
        public bool modificarDB(fa_notaCreDeb_Info info)
        {
            try
            {
                #region Variables
                int Secuencia               = 1;
                ct_cbtecble_Data odata_ct   = new ct_cbtecble_Data();
                cxc_cobro_Data   odata_cobr = new cxc_cobro_Data();
                #endregion

                using (Entities_facturacion db_f = new Entities_facturacion())
                {
                    #region Nota de debito credito

                    #region Cabecera
                    var entity = db_f.fa_notaCreDeb.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdSucursal == info.IdSucursal && q.IdBodega == info.IdBodega && q.IdNota == info.IdNota).FirstOrDefault();
                    if (entity == null)
                    {
                        return(false);
                    }

                    entity.IdPuntoVta = info.IdPuntoVta;
                    //entity.CodNota = info.CodNota;
                    entity.CreDeb             = info.CreDeb.Trim();
                    entity.CodDocumentoTipo   = info.CodDocumentoTipo;
                    entity.Serie1             = info.Serie1;
                    entity.Serie2             = info.Serie2;
                    entity.NumNota_Impresa    = info.NumNota_Impresa;
                    entity.NumAutorizacion    = info.NumAutorizacion;
                    entity.Fecha_Autorizacion = info.Fecha_Autorizacion;
                    entity.IdCliente          = info.IdCliente;
                    entity.IdContacto         = info.IdContacto;
                    entity.no_fecha           = info.no_fecha.Date;
                    entity.no_fecha_venc      = info.no_fecha_venc.Date;
                    entity.IdTipoNota         = info.IdTipoNota;
                    entity.sc_observacion     = info.sc_observacion;
                    entity.NaturalezaNota     = info.NaturalezaNota;
                    entity.IdCtaCble_TipoNota = info.IdCtaCble_TipoNota;
                    entity.IdUsuarioUltMod    = info.IdUsuarioUltMod;
                    entity.Fecha_UltMod       = DateTime.Now;

                    #endregion

                    #region Detalle
                    var lst = db_f.fa_notaCreDeb_det.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdSucursal == info.IdSucursal && q.IdBodega == info.IdBodega && q.IdNota == info.IdNota).ToList();
                    db_f.fa_notaCreDeb_det.RemoveRange(lst);

                    foreach (var item in info.lst_det)
                    {
                        db_f.fa_notaCreDeb_det.Add(new fa_notaCreDeb_det
                        {
                            IdEmpresa           = info.IdEmpresa,
                            IdSucursal          = info.IdSucursal,
                            IdBodega            = info.IdBodega,
                            IdNota              = info.IdNota,
                            Secuencia           = Secuencia++,
                            IdProducto          = item.IdProducto,
                            sc_cantidad         = item.sc_cantidad,
                            sc_cantidad_factura = item.sc_cantidad_factura,
                            sc_Precio           = item.sc_Precio,
                            sc_descUni          = item.sc_descUni,
                            sc_PordescUni       = item.sc_PordescUni,
                            sc_precioFinal      = item.sc_precioFinal,
                            vt_por_iva          = item.vt_por_iva,
                            sc_iva              = item.sc_iva,
                            IdCod_Impuesto_Iva  = item.IdCod_Impuesto_Iva,
                            sc_estado           = "A",
                            sc_subtotal         = item.sc_subtotal,
                            sc_total            = item.sc_total,

                            IdCentroCosto = item.IdCentroCosto,
                            IdCentroCosto_sub_centro_costo = item.IdCentroCosto_sub_centro_costo,
                            IdPunto_Cargo       = item.IdPunto_Cargo,
                            IdPunto_cargo_grupo = item.IdPunto_cargo_grupo
                        });
                    }
                    #endregion

                    #region Cruce
                    var lst_cruce = db_f.fa_notaCreDeb_x_fa_factura_NotaDeb.Where(q => q.IdEmpresa_nt == info.IdEmpresa && q.IdSucursal_nt == info.IdSucursal && q.IdBodega_nt == info.IdBodega && q.IdNota_nt == info.IdNota).ToList();
                    db_f.fa_notaCreDeb_x_fa_factura_NotaDeb.RemoveRange(lst_cruce);
                    Secuencia = 1;
                    foreach (var item in info.lst_cruce)
                    {
                        db_f.fa_notaCreDeb_x_fa_factura_NotaDeb.Add(new fa_notaCreDeb_x_fa_factura_NotaDeb
                        {
                            IdEmpresa_nt              = info.IdEmpresa,
                            IdSucursal_nt             = info.IdSucursal,
                            IdBodega_nt               = info.IdBodega,
                            IdNota_nt                 = info.IdNota,
                            secuencia                 = Secuencia++,
                            IdEmpresa_fac_nd_doc_mod  = item.IdEmpresa_fac_nd_doc_mod,
                            IdSucursal_fac_nd_doc_mod = item.IdSucursal_fac_nd_doc_mod,
                            IdBodega_fac_nd_doc_mod   = item.IdBodega_fac_nd_doc_mod,
                            IdCbteVta_fac_nd_doc_mod  = item.IdCbteVta_fac_nd_doc_mod,
                            vt_tipoDoc                = item.vt_tipoDoc,
                            Valor_Aplicado            = item.Valor_Aplicado,
                            fecha_cruce               = DateTime.Now,
                        });
                    }
                    #endregion

                    db_f.SaveChanges();

                    #endregion

                    #region Parametros
                    var parametros = db_f.fa_parametro.Where(q => q.IdEmpresa == info.IdEmpresa).FirstOrDefault();
                    var cliente    = db_f.fa_cliente.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdCliente == info.IdCliente).FirstOrDefault();
                    #endregion

                    #region Contabilidad
                    if (parametros != null && parametros.IdTipoCbteCble_NC != null && parametros.IdTipoCbteCble_ND != null)
                    {
                        var rel_conta           = db_f.fa_notaCreDeb_x_ct_cbtecble.Where(q => q.no_IdEmpresa == info.IdEmpresa && q.no_IdSucursal == info.IdSucursal && q.no_IdBodega == info.IdBodega && q.no_IdNota == info.IdNota).FirstOrDefault();
                        ct_cbtecble_Info diario = armar_diario(info, info.CreDeb.Trim() == "C" ? (int)parametros.IdTipoCbteCble_NC : (int)parametros.IdTipoCbteCble_ND, cliente.IdCtaCble_cxc_Credito, info.IdCtaCble_TipoNota);
                        if (diario != null)
                        {
                            if (rel_conta == null)
                            {
                                if (odata_ct.guardarDB(diario))
                                {
                                    db_f.fa_notaCreDeb_x_ct_cbtecble.Add(new fa_notaCreDeb_x_ct_cbtecble
                                    {
                                        no_IdEmpresa  = info.IdEmpresa,
                                        no_IdSucursal = info.IdSucursal,
                                        no_IdBodega   = info.IdBodega,
                                        no_IdNota     = info.IdNota,

                                        ct_IdEmpresa  = diario.IdEmpresa,
                                        ct_IdTipoCbte = diario.IdTipoCbte,
                                        ct_IdCbteCble = diario.IdCbteCble,

                                        observacion = info.CodDocumentoTipo + (info.NaturalezaNota == "SRI" ? ("-" + info.Serie1 + "-" + info.Serie2 + "-" + info.NumNota_Impresa) : info.IdNota.ToString("000000000"))
                                    });
                                    db_f.SaveChanges();
                                }
                            }
                            else
                            {
                                diario.IdCbteCble = rel_conta.ct_IdCbteCble;
                                odata_ct.modificarDB(diario);
                            }
                        }
                    }
                    #endregion

                    #region Cobranza
                    if (info.CreDeb.Trim() == "C" && info.lst_cruce.Count != 0)
                    {
                        cxc_cobro_Info cobro = armar_cobro(info);
                        if (cobro != null)
                        {
                            var rel_cobr = db_f.fa_notaCreDeb_x_cxc_cobro.Where(q => q.IdEmpresa_nt == info.IdEmpresa && q.IdSucursal_nt == info.IdSucursal && q.IdBodega_nt == info.IdBodega && q.IdNota_nt == info.IdNota).FirstOrDefault();
                            if (rel_cobr == null)
                            {
                                if (odata_cobr.guardarDB(cobro))
                                {
                                    db_f.fa_notaCreDeb_x_cxc_cobro.Add(new fa_notaCreDeb_x_cxc_cobro
                                    {
                                        IdEmpresa_nt   = info.IdEmpresa,
                                        IdSucursal_nt  = info.IdSucursal,
                                        IdBodega_nt    = info.IdBodega,
                                        IdNota_nt      = info.IdNota,
                                        IdEmpresa_cbr  = cobro.IdEmpresa,
                                        IdSucursal_cbr = cobro.IdSucursal,
                                        IdCobro_cbr    = cobro.IdCobro,
                                        Valor_cobro    = Math.Round(info.lst_cruce.Sum(q => q.Valor_Aplicado), 2, MidpointRounding.AwayFromZero)
                                    });
                                    db_f.SaveChanges();
                                }
                            }
                            else
                            {
                                cobro.IdCobro = rel_cobr.IdCobro_cbr;
                                odata_cobr.modificarDB(cobro);
                            }
                        }
                    }

                    #endregion
                }

                return(true);
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 23
0
        public Boolean GETINFOCXC()
        {
            try
            {
                cxccinfoLst = new List <cxc_cobro_Info>();
                int numeroPosicion = 0;

                foreach (var item in cobroAntiBininfo)
                {
                    numeroPosicion++;
                    info = new cxc_cobro_Info();

                    info.IdFila = numeroPosicion;

                    foreach (var item2 in BancoLst)
                    {
                        if (item2.ba_descripcion == item.cr_Banco)
                        {
                            info.cr_Banco = item2.ba_descripcion;
                        }
                    }

                    info.cr_fecha = (Convert.ToDateTime(dtpFecha.EditValue)).Date;

                    if (item.cr_fechaCobro == Convert.ToDateTime("01/01/0001"))
                    {
                        info.cr_fechaCobro = DateTime.Now.Date;
                    }
                    else
                    {
                        info.cr_fechaCobro = item.cr_fechaCobro.Date;
                    }



                    if (item.cr_fechaDocu == Convert.ToDateTime("01/01/0001"))
                    {
                        info.cr_fechaDocu = item.cr_fechaCobro.Date;
                    }
                    else
                    {
                        info.cr_fechaDocu = item.cr_fechaDocu.Date;
                    }



                    info.Fecha_Transac     = param.Fecha_Transac.Date;
                    info.Fecha_UltAnu      = null;
                    info.Fecha_UltMod      = null;
                    info.nom_pc            = param.nom_pc;
                    info.IdCobro_a_aplicar = null;
                    info.cr_observacion    = "Cobro x Ant. x  " + info.IdCobro_tipo + " #Anticipo:" + cobroAntiinfo.IdAnticipo + " a Cliente:" + ucFa_Cliente.get_ClienteInfo().Nombre_Cliente + " " + Convert.ToString(txtObservacion.EditValue);
                    info.IdCliente         = ucFa_Cliente.get_ClienteInfo().IdCliente;
                    info.nom_pc            = param.nom_pc;
                    info.ip              = param.ip;
                    info.IdUsuario       = param.IdUsuario;
                    info.IdEmpresa       = param.IdEmpresa;
                    info.IdSucursal      = param.IdSucursal;
                    info.cr_TotalCobro   = Convert.ToDouble(item.Valor);
                    info.cr_cuenta       = item.cr_cuenta;
                    info.cr_NumDocumento = item.cr_NumDocumento;
                    info.cr_Tarjeta      = item.cr_Tarjeta;
                    info.IdBanco         = Convert.ToInt32(item.IdBanco);
                    info.IdCobro_tipo    = item.IdCobro_tipo;
                    //03/02/2014 Derek Mejía Soria
                    info.IdCobro = (item.IdCobro_cobro == 0) ? 0 : item.IdCobro_cobro;
                    if (info.IdCobro_tipo != "" && info.IdCobro_tipo != null)
                    {
                        var tipCobro = cobroTipoInfoLst.Where(q => q.IdCobro_tipo == info.IdCobro_tipo).First();
                        if (tipCobro.tc_EsCheque == "S")
                        {
                            if (info.cr_Banco == "" || info.cr_Banco == null)
                            {
                                MessageBox.Show("Se debe seleccionar un banco en registro: " + numeroPosicion, "Operación Cancelada", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                return(false);
                                //break;
                            }
                        }

                        //if (tipCobro.tc_SePuede_Depositar == "S")
                        //{
                        //    if (info.IdBanco == 0 || info.IdBanco == null)
                        //    {
                        //        MessageBox.Show("Se debe seleccionar un banco a depositar en registro: " + numeroPosicion, "Operación Cancelada", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        //        return false;
                        //    }
                        //}
                    }
                    else
                    {
                        if (info.IdCobro_tipo == "" || info.IdCobro_tipo != null)
                        {
                            MessageBox.Show("Se debe seleccionar un tipo de cobro en el registro: " + numeroPosicion, "Operación Cancelada", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            return(false);
                        }
                    }

                    info.IdSucursal = cobroAntiinfo.IdSucursal;
                    info.IdCaja     = Convert.ToInt32(cmbCaja.EditValue);
                    cxccinfoLst.Add(info);
                }
                return(true);
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return(false);
            }
        }
Exemplo n.º 24
0
        private void btnProtestar_Click(object sender, EventArgs e)
        {
            try
            {
                string mensajeDocumentoDupli = "";
                string mensajeError          = "";
                string numDocumento          = "";
                list_Cobro_EstadoCobro = new List <cxc_cobro_x_EstadoCobro_Info>();
                textBox1.Focus();
                var s = from q in (List <cxc_cobro_Info>)gridConsulta.DataSource
                        where (q.IdEstadoCobro == "COBR" || q.IdCobro_tipo == "CHQV") && q.chek == true
                        select q;

                foreach (var item in s)
                {
                    cxc_Parametros_x_cheqProtesto_Info Info_Param = InfoParam_cxc.LstParamProtesto.FirstOrDefault(v => v.IdEmpresa == param.IdEmpresa &&
                                                                                                                  v.pa_IdSucursal_x_default_x_cheqProtes == item.IdSucursal);

                    Info_cobro_x_EstadoCobro               = new cxc_cobro_x_EstadoCobro_Info();
                    Info_cobro_x_EstadoCobro.Fecha         = Convert.ToDateTime(DateTime.Now.ToShortDateString());
                    Info_cobro_x_EstadoCobro.IdCobro       = item.IdCobro;
                    Info_cobro_x_EstadoCobro.IdCobro_tipo  = item.IdCobro_tipo;
                    Info_cobro_x_EstadoCobro.IdEmpresa     = param.IdEmpresa;
                    Info_cobro_x_EstadoCobro.IdEstadoCobro = "PRTS";
                    Info_cobro_x_EstadoCobro.IdSucursal    = item.IdSucursal;
                    Info_cobro_x_EstadoCobro.nt_IdBodega   = Convert.ToInt32(Info_Param.pa_IdBodega_x_default_x_cheqProtes);
                    Info_Cobro = item;
                    Info_cobro_x_EstadoCobro.nt_IdSucursal = Info_Cobro.IdSucursal;


                    list_Cobro_EstadoCobro.Add(Info_cobro_x_EstadoCobro);
                }

                if (list_Cobro_EstadoCobro.Count() == 0)
                {
                    MessageBox.Show("No ha seleccionado ningun registro Valido", "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return;
                }
                if (list_Cobro_EstadoCobro.Count() > 1)
                {
                    MessageBox.Show("Solo debe Seleccionar un cheque a Protestar", "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return;
                }
                frmCxcMantenimiento_Cheques_Multa frm = new frmCxcMantenimiento_Cheques_Multa();
                if (MessageBox.Show("¿Desea Continuar?", "Sistema", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    frm.idSucursal    = Info_Cobro.IdSucursal;
                    frm.idCobro       = Info_Cobro.IdCobro;
                    frm.txtNCh.Text   = Info_Cobro.cr_NumDocumento;
                    frm.txtCta.Text   = Info_Cobro.cr_cuenta;
                    frm.txtBanco.Text = Info_Cobro.cr_Banco;
                    frm.ShowDialog();
                    ObservacionProtesta = frm.txtObservacion.Text;
                    if (frm.protestar)
                    {
                        GetNotaDC();
                        GetNotaDCDetalle();

                        Info_NDC.CobroInfo = Info_Cobro;
                        Bus_NotaDB.GuardarDB(Info_NDC, ref d, ref mensajeDocumentoDupli, ref mensajeError);
                        foreach (var item in list_Cobro_EstadoCobro)
                        {
                            item.nt_IdNota   = d;
                            item.observacion = ObservacionProtesta;
                            item.IdBanco     = idBanco;
                        }
                        msg = "PROS";
                        if (BusCobroEstado.GuardarDB_Verifica_si_es_Protestado(list_Cobro_EstadoCobro, ref msg))
                        {
                            MessageBox.Show("Guardado con exito", "", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        }
                        else
                        {
                            MessageBox.Show(msg, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                }
                cargarGrid();
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
        public Boolean Anular(cxc_cobro_x_Anticipo_Info info)
        {
            try
            {
                //Motivo por Anulación
                string motiAnulacion     = "";
                FrmGe_MotivoAnulacion fr = new FrmGe_MotivoAnulacion();
                fr.ShowDialog();
                motiAnulacion      = fr.motivoAnulacion;
                info.MotiAnula     = motiAnulacion;
                info.Fecha_Transac = param.Fecha_Transac.Date;
                info.Fecha_UltAnu  = DateTime.Now.Date;
                info.Fecha_UltMod  = DateTime.Now.Date;
                info.nom_pc        = param.nom_pc;
                info.ip            = param.ip;

                info.IdUsuario = param.IdUsuario;
                info.Estado    = "I";
                infodet        = new List <cxc_cobro_x_Anticipo_det_Info>(infodetBus.Get_List_cobro_x_Anticipo_det(info.IdEmpresa, Convert.ToInt32(info.IdAnticipo), ref mensaje));
                if (infodet == null)
                {
                    return(false);
                }
                cxcinfoList = new List <cxc_cobro_Info>();
                foreach (var item in infodet)
                {
                    cxc_cobro_Info cxcinfo = new cxc_cobro_Info();
                    item.Fecha_Transac = param.Fecha_Transac.Date;
                    item.Fecha_UltAnu  = DateTime.Now.Date;
                    item.Fecha_UltMod  = DateTime.Now.Date;
                    item.nom_pc        = param.nom_pc;
                    item.ip            = param.ip;

                    item.IdUsuario = param.IdUsuario;
                    item.Estado    = "I";

                    cxcinfo = cxcBus.Get_Info_cobro_x_cliente(item.IdEmpresa, Convert.ToInt32(item.IdSucursal_cobro), Convert.ToInt32(item.IdCobro_cobro), Convert.ToInt32(info.IdCliente));
                    if (cxcinfo == null)
                    {
                        return(false);
                    }
                    else
                    {
                        if (cxcBus.AnularDB(cxcinfo) == false)
                        {
                            return(false);
                        }
                    }
                }

                if (cxcCABus.ModificarDB(info, ref mensaje) == false)
                {
                    return(false);
                }

                if (infodetBus.ModificarD(infodet, ref mensaje) == false)
                {
                    return(false);
                }
                return(true);
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return(false);
            }
        }
Exemplo n.º 26
0
        public Boolean GuardarDB(cxc_conciliacion_Info Item, ct_Cbtecble_Info CbteCbleInfo, Cl_Enumeradores.TipoConciliacion TipoConciliacion, ref decimal Id, ref string mensaje)
        {
            string mensajeError = "";

            try
            {
                cxc_cobro_Info                 CobrosInfo       = new cxc_cobro_Info();
                cxc_cobro_Det_Info             CobroDetalleInfo = new cxc_cobro_Det_Info();
                List <cxc_cobro_Det_Info>      lstCobDetInfo    = new List <cxc_cobro_Det_Info>();
                fa_notaCreDeb_x_cxc_cobro_Info info_NotaCreDeb  = new fa_notaCreDeb_x_cxc_cobro_Info();
                decimal IdCobroDet  = 0;
                Boolean resultCobro = true;
                oData.Guardar_Conciliacion(Item, ref Id, ref mensaje);
                decimal idConciliacion = Id;

                //si es por anticipo solo inserto el detalle del cobro
                if (Cl_Enumeradores.TipoConciliacion.ANT_CLI == TipoConciliacion)
                {
                    ct_Cbtecble_Bus CbteCbleBus = new ct_Cbtecble_Bus();
                    string          codCbteCble = "";
                    decimal         idCbteCble  = 0;
                    lstCobDetInfo         = GetDetalleCobro(Item, ref IdCobroDet);
                    CobrosInfo            = cobro_B.Get_Info_cobro_x_cliente(Item.IdEmpresa, Item.IdSucursal, IdCobroDet, Convert.ToInt32(Item.IdCliente));
                    CobrosInfo.ListaCobro = lstCobDetInfo;
                    cxc_cobro_Det_Bus BusDet_cobro = new cxc_cobro_Det_Bus();
                    resultCobro = BusDet_cobro.GuardarDB(CobrosInfo.ListaCobro);
                    //inserto la contabilidad de los registros
                    if (CbteCbleBus.GrabarDB(CbteCbleInfo, ref idCbteCble, ref mensaje))
                    {
                        //actualizo la cabecera de la concilacion con los id del cbte cble
                        Item.IdEmpresa_cbte_cble  = CbteCbleInfo.IdEmpresa;
                        Item.IdTipoCbte_cbte_cble = CbteCbleInfo.IdTipoCbte;
                        Item.IdCbteCble_cbte_cble = idCbteCble;
                        Item.IdConciliacion       = Id;
                        oData.ModificarConciliacion(Item, ref mensaje);
                    }
                }
                else
                {
                    CobrosInfo = Get_Cobro(Item, ref Id);
                    decimal IdCobro = 0;
                    resultCobro = cobro_B.GuardarDB(Cl_Enumeradores.PantallaEjecucion.COBROS, ref CobrosInfo, ref mensaje);
                }

                if (resultCobro)
                {
                    ModificarDB(Item, CobrosInfo, Id, ref mensaje);
                    info_NotaCreDeb = Get_faNotaCreDeb_x_Cobro(CobrosInfo, Item);
                    Bus_NotaCreDeb.GuardarDB(info_NotaCreDeb, ref mensaje);
                }


                return(true);
            }
            catch (Exception ex)
            {
                Core.Erp.Info.Log_Exception.LoggingManager.Logger.Log(Core.Erp.Info.Log_Exception.LoggingCategory.Error, ex.Message);
                throw new Core.Erp.Info.Log_Exception.DalException(string.Format("", "Get_List_cobro_x_EstadoCobro", ex.Message), ex)
                      {
                          EntityType = typeof(cxc_cobro_x_EstadoCobro_Bus)
                      };
            }
        }
Exemplo n.º 27
0
        public void cargarGrid()
        {
            try
            {
                List <cxc_cobro_x_EstadoCobro_Info> TEMP = new List <cxc_cobro_x_EstadoCobro_Info>();
                List <cxc_cobro_Info> ListCobro          = new List <cxc_cobro_Info>();
                List <cxc_cobro_Info> ListCobroTodo      = new List <cxc_cobro_Info>();
                ListCobroTodo = Bus_Cobro.Get_List_cobro(param.IdEmpresa, ultraComboEditorTipoTransaccion.EditValue.ToString(), ultraComboEditorEstado.EditValue.ToString(), Convert.ToDateTime(dtpFechaIni.Value.ToShortDateString()), Convert.ToDateTime(dtpFechaFin.Value.ToShortDateString()), porfecha);
                cxc_cobro_x_EstadoCobro_Bus Cobro_x_EstadoCobro = new cxc_cobro_x_EstadoCobro_Bus();
                var LstCbr = Cobro_x_EstadoCobro.Get_List_cobro_x_EstadoCobro(param.IdEmpresa);

                var EstadoCobro = Bus_Cobro.Get_List_CobroEstado();

                var Join = from q in LstCbr
                           join w in EstadoCobro
                           on new { q.IdEstadoCobro } equals new { w.IdEstadoCobro }
                select new { q.IdCobro, w.posicion, q.IdSucursal };

                foreach (var item in Join)
                {
                    if (item.IdCobro == 4)
                    {
                        var temp2 = Join.ToList().FindAll(v => v.IdCobro == item.IdCobro && v.IdSucursal == item.IdSucursal);
                    }
                    var temp1  = Join.ToList().FindAll(v => v.IdCobro == item.IdCobro && v.IdSucursal == item.IdSucursal);
                    int maximo = temp1.Max(v => v.posicion);
                    var Obj    = temp1.First(p => p.posicion == maximo);
                    var Item   = LstCbr.First(v => v.IdCobro == Obj.IdCobro && v.posicion == Obj.posicion && v.IdSucursal == Obj.IdSucursal);
                    TEMP.Add(Item);
                }

                var ListaGrid = TEMP.GroupBy(v => v).ToList();

                List <cxc_cobro_x_EstadoCobro_Info> Lst2 = new List <cxc_cobro_x_EstadoCobro_Info>();

                var pru = TEMP.Where(q => q.IdSucursal == 2 && q.IdCobro == 4);

                foreach (var item in ListaGrid)
                {
                    cxc_cobro_x_EstadoCobro_Info info = new cxc_cobro_x_EstadoCobro_Info();

                    info.Fecha           = item.Key.Fecha;
                    info.IdBanco         = item.Key.IdBanco;
                    info.IdCbte_vta_nota = item.Key.IdCbte_vta_nota;
                    info.IdCobro         = item.Key.IdCobro;
                    info.IdCobro_tipo    = item.Key.IdCobro_tipo;
                    info.IdEmpresa       = item.Key.IdEmpresa;
                    info.IdEstadoCobro   = item.Key.IdEstadoCobro;
                    info.IdSucursal      = item.Key.IdSucursal;
                    info.nt_IdBodega     = item.Key.nt_IdBodega;
                    info.nt_IdNota       = item.Key.nt_IdNota;
                    info.nt_IdSucursal   = item.Key.nt_IdSucursal;
                    info.observacion     = item.Key.observacion;
                    info.posicion        = item.Key.posicion;

                    Lst2.Add(info);
                }


                var lst = Lst2.ToList().FindAll(c => c.IdEstadoCobro == ultraComboEditorEstado.EditValue.ToString());



                foreach (var item in lst)
                {
                    foreach (var item2 in ListCobroTodo)
                    {
                        if (item.IdCobro == item2.IdCobro && item.IdEmpresa == item2.IdEmpresa && item.IdSucursal == item2.IdSucursal)
                        {
                            cxc_cobro_Info info = new cxc_cobro_Info();

                            info.BancoCuenta         = item2.BancoCuenta;
                            info.BancoTarjeta        = item2.BancoTarjeta;
                            info.Caja                = item2.Caja;
                            info.chequeTarjeta       = item2.chequeTarjeta;
                            info.cr_Banco            = item2.cr_Banco;
                            info.cr_Codigo           = item2.cr_Codigo;
                            info.cr_cuenta           = item2.cr_cuenta;
                            info.cr_estado           = item2.cr_estado;
                            info.cr_fecha            = item2.cr_fecha;
                            info.cr_estadoCobro      = item2.cr_estadoCobro;
                            info.cr_fechaCobro       = item2.cr_fechaCobro;
                            info.IdBanco             = item2.IdBanco;
                            info.IdBodega_Cbte       = item2.IdBodega_Cbte;
                            info.IdCbte_vta_nota     = item2.IdCbte_vta_nota;
                            info.IdCbteCble_MoviCaja = item2.IdCbteCble_MoviCaja;
                            info.IdCliente           = item2.IdCliente;
                            info.IdCobro             = item2.IdCobro;
                            info.IdCobro_tipo        = item2.IdCobro_tipo;
                            info.IdEmpresa           = item.IdEmpresa;
                            info.IdEstadoCobro       = item.IdEstadoCobro;
                            info.IdSucursal          = item.IdSucursal;
                            info.IdTipocbte_MoviCaja = item2.IdTipocbte_MoviCaja;
                            info.IdTipoNotaCredito   = item2.IdTipoNotaCredito;
                            info.IdVendedorCliente   = item2.IdVendedorCliente;
                            info.nCliente            = item2.nCliente;
                            info.nSucursal           = item2.nSucursal;
                            info.RF              = item2.RF;
                            info.RI              = item2.RI;
                            info.secuencial      = item2.secuencial;
                            info.Tipo            = item2.Tipo;
                            info.TipoPagoTarjeta = item2.TipoPagoTarjeta;
                            info.ValorCheque     = item2.ValorCheque;
                            info.valorComision   = item2.valorComision;
                            info.valorRF         = item2.valorRF;
                            info.valorRI         = item2.valorRI;
                            info.cr_TotalCobro   = item2.cr_TotalCobro;
                            info.cr_NumDocumento = item2.cr_NumDocumento;
                            info.IdCaja          = item2.IdCaja;
                            ListCobro.Add(info);
                        }
                    }
                }

                gridConsulta.DataSource = ListCobro;//ListCobro;
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Exemplo n.º 28
0
        private bool validar(cxc_cobro_Info i_validar, ref string msg)
        {
            i_validar.IdEntidad = i_validar.IdCliente;
            if (i_validar.cr_TotalCobro == 0)
            {
                msg = "No ha seleccionado documentos para realizar la cobranza";
                return(false);
            }
            if (Math.Round(i_validar.cr_saldo, 2, MidpointRounding.AwayFromZero) < 0)
            {
                msg = "El valor aplicado a los documentos es mayor al total a cobrar";
                return(false);
            }
            i_validar.lst_det = list_det.get_list(i_validar.IdTransaccionSession);
            if (i_validar.lst_det.Count == 0)
            {
                msg = "No ha seleccionado documentos para realizar la cobranza";
                return(false);
            }
            if (i_validar.lst_det.Where(q => q.dc_ValorPago == 0).Count() > 0)
            {
                msg = "Existen documentos con valor aplicado 0";
                return(false);
            }
            if (i_validar.IdCobro > 0 && i_validar.lst_det.Where(q => Math.Round(q.dc_ValorPago, 2, MidpointRounding.AwayFromZero) > Math.Round((double)q.Saldo, 2, MidpointRounding.AwayFromZero)).Count() > 0)
            {
                msg = "Existen documentos cuyo valor aplicado es mayor al saldo de la factura";
                return(false);
            }
            string observacion = "Canc./ ";

            foreach (var item in i_validar.lst_det)
            {
                observacion += item.vt_NumDocumento + "/";
            }
            i_validar.cr_observacion = observacion;
            i_validar.cr_fechaCobro  = i_validar.cr_fecha;
            i_validar.cr_fechaDocu   = i_validar.cr_fecha;

            if (!string.IsNullOrEmpty(i_validar.IdCobro_tipo))
            {
                i_validar.lst_det.ForEach(q => q.IdCobro_tipo_det = i_validar.IdCobro_tipo);
            }



            switch (i_validar.IdCobro_tipo)
            {
            case "DEPO":
                if (i_validar.IdBanco == null)
                {
                    msg = "El campo cuenta bancaria es obligatorio para depositos";
                    return(false);
                }
                break;

            case "CHQF":
                if (string.IsNullOrEmpty(i_validar.cr_Banco))
                {
                    msg = "El campo banco es obligatorio para cheques";
                    return(false);
                }
                if (string.IsNullOrEmpty(i_validar.cr_cuenta))
                {
                    msg = "El campo cuenta es obligatorio para cheques";
                    return(false);
                }
                if (string.IsNullOrEmpty(i_validar.cr_NumDocumento))
                {
                    msg = "El campo # cheque es obligatorio para cheques";
                    return(false);
                }
                i_validar.IdBanco = null;
                break;

            case "CHQV":
                if (string.IsNullOrEmpty(i_validar.cr_Banco))
                {
                    msg = "El campo banco es obligatorio para cheques";
                    return(false);
                }
                if (string.IsNullOrEmpty(i_validar.cr_cuenta))
                {
                    msg = "El campo cuenta es obligatorio para cheques";
                    return(false);
                }
                if (string.IsNullOrEmpty(i_validar.cr_NumDocumento))
                {
                    msg = "El campo # cheque es obligatorio para cheques";
                    return(false);
                }
                i_validar.IdBanco = null;
                break;

            default:
                i_validar.IdBanco  = null;
                i_validar.cr_Banco = null;
                break;
            }
            return(true);
        }
Exemplo n.º 29
0
        private bool validar(cxc_cobro_Info i_validar, ref string msg)
        {
            i_validar.IdEntidad = i_validar.IdCliente;
            if (i_validar.cr_TotalCobro == 0)
            {
                msg = "No ha seleccionado documentos para realizar la cobranza";
                return(false);
            }

            i_validar.lst_det = list_det.get_list(i_validar.IdTransaccionSession);
            if (i_validar.lst_det.Count == 0)
            {
                msg = "No ha seleccionado documentos para realizar la cobranza";
                return(false);
            }
            if (i_validar.lst_det.Where(q => q.dc_ValorPago == 0).Count() > 0)
            {
                msg = "Existen documentos con valor aplicado 0";
                return(false);
            }
            if (i_validar.IdCobro > 0 && i_validar.lst_det.Where(q => Math.Round(q.dc_ValorPago, 2, MidpointRounding.AwayFromZero) > Math.Round((double)q.Saldo, 2, MidpointRounding.AwayFromZero)).Count() > 0)
            {
                msg = "Existen documentos cuyo valor aplicado es mayor al saldo de la factura";
                return(false);
            }

            if (i_validar.IdCobro_tipo == "DEPO")
            {
                i_validar.cr_NumDocumento = i_validar.cr_NumDocumento_Dep;
            }

            string observacion = "Canc./ ";

            foreach (var item in i_validar.lst_det)
            {
                observacion += item.vt_NumDocumento + "/";
            }
            i_validar.cr_observacion = observacion;
            i_validar.cr_fechaCobro  = i_validar.cr_fecha;
            i_validar.cr_fechaDocu   = i_validar.cr_fecha;
            i_validar.IdUsuario      = SessionFixed.IdUsuario;
            if (!string.IsNullOrEmpty(i_validar.IdCobro_tipo))
            {
                i_validar.lst_det.ForEach(q => q.IdCobro_tipo_det = i_validar.IdCobro_tipo);
            }

            switch (i_validar.IdCobro_tipo)
            {
            case "DEPO":
                if (i_validar.IdBanco == null)
                {
                    msg = "El campo cuenta bancaria es obligatorio para depositos";
                    return(false);
                }
                break;

            case "CHQF":
                if (string.IsNullOrEmpty(i_validar.cr_Banco))
                {
                    msg = "El campo banco es obligatorio para cheques";
                    return(false);
                }
                if (string.IsNullOrEmpty(i_validar.cr_cuenta))
                {
                    msg = "El campo cuenta es obligatorio para cheques";
                    return(false);
                }
                if (string.IsNullOrEmpty(i_validar.cr_NumDocumento))
                {
                    msg = "El campo # cheque es obligatorio para cheques";
                    return(false);
                }
                i_validar.IdBanco = null;
                break;

            case "CHQV":
                if (string.IsNullOrEmpty(i_validar.cr_Banco))
                {
                    msg = "El campo banco es obligatorio para cheques";
                    return(false);
                }
                if (string.IsNullOrEmpty(i_validar.cr_cuenta))
                {
                    msg = "El campo cuenta es obligatorio para cheques";
                    return(false);
                }
                if (string.IsNullOrEmpty(i_validar.cr_NumDocumento))
                {
                    msg = "El campo # cheque es obligatorio para cheques";
                    return(false);
                }
                i_validar.IdBanco = null;
                break;

            default:
                i_validar.IdBanco  = null;
                i_validar.cr_Banco = null;
                break;
            }

            foreach (var item in i_validar.lst_det)
            {
                if (i_validar.cr_fecha < item.vt_fecha)
                {
                    msg = "Existen comprobantes de venta con fecha mayor a la fecha del cobro aplicado";
                    return(false);
                }

                msg = bus_cobro.ValidarSaldoDocumento(item.IdEmpresa, item.IdSucursal, item.IdBodega_Cbte ?? 0, item.IdCbte_vta_nota, item.dc_TipoDocumento, item.dc_ValorPago, item.dc_ValorPagoAnterior);
                if (msg.Length > 0)
                {
                    return(false);
                }
            }
            return(true);
        }
Exemplo n.º 30
0
        Boolean Grabar()
        {
            try
            {
                Boolean bolResult = false;
                // List<cxc_cobro_Info> listax = new List<cxc_cobro_Info>();
                BindingList <cxc_cobro_Info> lista_Cobro = new BindingList <cxc_cobro_Info>();

                get_Cobro();
                List <cxc_cobro_Info> rLst1 = new List <cxc_cobro_Info>();

                if (LstCobros.Count() == 0)
                {
                    bolResult = false;
                }

                else
                {
                    foreach (var item in LstCobros)
                    {
                        cxc_cobro_Info Info_Cobro = new cxc_cobro_Info();

                        Info_Cobro.IdEmpresa     = item.IdEmpresa;
                        Info_Cobro.IdSucursal    = item.IdSucursal;
                        Info_Cobro.IdCliente     = item.IdCliente;
                        Info_Cobro.cr_TotalCobro = item.dc_ValorPago;
                        Info_Cobro.cr_Banco      = item.cr_Banco;

                        Info_Cobro.cr_Tarjeta = item.cr_Tarjeta;

                        Info_Cobro.cr_observacion   = item.cr_observacion;
                        Info_Cobro.IdCobro_tipo     = item.IdCobro_tipo;
                        Info_Cobro.cr_Banco         = item.cr_Banco;
                        Info_Cobro.cr_fechaDocu     = Convert.ToDateTime(item.cr_fechaDocu.ToShortDateString());
                        Info_Cobro.cr_fecha         = Convert.ToDateTime(item.cr_fecha.ToShortDateString());
                        Info_Cobro.cr_fechaCobro    = Convert.ToDateTime(item.cr_fechaCobro.ToShortDateString());
                        Info_Cobro.cr_cuenta        = item.cr_cuenta;
                        Info_Cobro.cr_NumDocumento  = item.cr_NumDocumento;
                        Info_Cobro.dc_ValorPago     = item.dc_ValorPago;
                        Info_Cobro.dc_TipoDocumento = item.dc_TipoDocumento;
                        Info_Cobro.IdCbte_vta_nota  = item.IdCbte_vta_nota;
                        Info_Cobro.IdEmpresa        = item.IdEmpresa;
                        Info_Cobro.secuencial       = 1;
                        Info_Cobro.nom_pc           = item.nom_pc;
                        Info_Cobro.ip            = item.ip;
                        Info_Cobro.Fecha_Transac = Convert.ToDateTime(DateTime.Now);
                        Info_Cobro.IdUsuario     = item.IdUsuario;
                        Info_Cobro.IdBodega_Cbte = item.IdBodega_Cbte;

                        Info_Cobro.IdCaja = item.IdCaja;

                        cxc_cobro_Det_Info lista_det = new cxc_cobro_Det_Info();

                        lista_det.IdEmpresa        = Info_Cobro.IdEmpresa;
                        lista_det.IdEmpresa        = item.IdEmpresa;
                        lista_det.IdSucursal       = Info_Cobro.IdSucursal;
                        lista_det.IdCobro          = Info_Cobro.IdCobro;
                        lista_det.secuencial       = Info_Cobro.secuencial;
                        lista_det.dc_TipoDocumento = Info_Cobro.dc_TipoDocumento;
                        lista_det.IdBodega_Cbte    = Info_Cobro.IdBodega_Cbte;
                        lista_det.IdCbte_vta_nota  = Info_Cobro.IdCbte_vta_nota;
                        lista_det.dc_ValorPago     = Info_Cobro.dc_ValorPago;
                        lista_det.IdUsuario        = Info_Cobro.IdUsuario;

                        lista_det.Fecha_Transac = Convert.ToDateTime(DateTime.Now);
                        lista_det.nom_pc        = Info_Cobro.nom_pc;
                        lista_det.ip            = Info_Cobro.ip;


                        Info_Cobro.ListaCobro = new List <cxc_cobro_Det_Info>();

                        Info_Cobro.ListaCobro.Add(lista_det);
                        string MsgError = "";


                        if (cobro_B.GuardarDB(Cl_Enumeradores.PantallaEjecucion.COBROS, ref Info_Cobro, ref MsgError))
                        {
                            lista_Cobro.Add(Info_Cobro);
                        }
                    }

                    ucGe_Menu.Visible_btnGuardar         = false;
                    ucGe_Menu.Visible_bntGuardar_y_Salir = false;
                    ucGe_Menu.Enabled_btnImprimirSoporte = false;

                    MessageBox.Show("Cobros Ingresados correctamente", "SISTEMA", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    bolResult = true;
                    lista     = new BindingList <cxc_cobro_x_caj_Caja_Movimiento_Info>();

                    lst = new BindingList <cxc_cobro_Info>(lista_Cobro);

                    this.gridControl_NCND.DataSource = carga_grid_caj_Movimiento(lst, lista);

                    vwcxc_cartera_x_cobrar_Info cartera = new vwcxc_cartera_x_cobrar_Info();
                    cartera             = cartera_B.Get_Info_cartera_x_cobrar(cartera_I.IdEmpresa, cartera_I.IdSucursal, cartera_I.IdBodega, cartera_I.IdComprobante, cartera_I.vt_tipoDoc);
                    txe_saldo.EditValue = Convert.ToDouble(cartera.Saldo);

                    if (MessageBox.Show("¿Desea Imprimir el Cobro \n" + "Imprimir", param.Nombre_sistema, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        ucGe_Menu_event_btnImprimirSoporte_Click(null, null);
                    }
                }
                return(bolResult);
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return(false);
            }
        }