public ActionResult Anular(cp_orden_pago_Info model)
        {
            string mensaje = "";

            if (bus_cancelacion.si_existe_cancelacion(model.IdEmpresa, model.IdOrdenPago))
            {
                mensaje = "La orden de pago tiene cancelaciones no se puede anular";
                cargar_combos(model.IdEmpresa);
                cargar_combos_detalle();
                ViewBag.mensaje = mensaje;
                return(View(model));
            }

            bus_orden_pago        = new cp_orden_pago_Bus();
            model.IdUsuarioUltAnu = SessionFixed.IdUsuario.ToString();
            if (bus_orden_pago.anularDB(model))
            {
                return(RedirectToAction("Index"));
            }
            else
            {
                cargar_combos(model.IdEmpresa);
                cargar_combos_detalle();
                return(View(model));
            }
        }
        public ActionResult Modificar(int IdEmpresa = 0, int IdOrdenPago = 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

            bus_orden_pago = new cp_orden_pago_Bus();
            cargar_combos(IdEmpresa);
            cargar_combos_detalle();

            cp_orden_pago_Info model = bus_orden_pago.get_info(IdEmpresa, IdOrdenPago);
            if (model == null)
            {
                return(RedirectToAction("Index"));
            }

            SessionFixed.TipoPersona   = model.IdTipo_Persona;
            model.IdTransaccionSession = Convert.ToDecimal(SessionFixed.IdTransaccionSessionActual);

            comprobante_contable_fp.set_list(model.info_comprobante.lst_ct_cbtecble_det, model.IdTransaccionSession);
            lis_cp_orden_pago_det_Info.set_list(model.detalle, model.IdTransaccionSession);

            return(View(model));
        }
示例#3
0
        public ActionResult Modificar(cp_orden_pago_Info model)
        {
            string mensaje = "";

            bus_orden_pago_tipo = new cp_orden_pago_tipo_x_empresa_Bus();
            bus_orden_pago      = new cp_orden_pago_Bus();
            bus_cancelacion     = new cp_orden_pago_cancelaciones_Bus();
            if (bus_cancelacion.si_existe_cancelacion(IdEmpresa, model.IdOrdenPago))
            {
                mensaje = "La orden de pago tiene cancelaciones no se puede modificar";
                cargar_combos(model.IdEmpresa);
                cargar_combos_detalle();
                ViewBag.mensaje = mensaje;
                return(View(model));
            }
            if (model.IdTipo_op == cl_enumeradores.eTipoOrdenPago.FACT_PROVEE.ToString())
            {
                mensaje = "No se puede modificar una orden de pago de tipo factura por proveedor";
                cargar_combos(model.IdEmpresa);
                cargar_combos_detalle();
                ViewBag.mensaje = mensaje;
                return(View(model));
            }

            if (!validar(model, ref mensaje))
            {
                cargar_combos(model.IdEmpresa);
                ViewBag.mensaje = mensaje;
                return(View(model));
            }
            model.detalle = lis_cp_orden_pago_det_Info.get_list();
            model.info_comprobante.lst_ct_cbtecble_det = comprobante_contable_fp.get_list();
            model.IdEmpresa = Convert.ToInt32(Session["IdEmpresa"]);
            info_param_op   = bus_orden_pago_tipo.get_info(model.IdEmpresa, model.IdTipo_op);
            model.info_comprobante.IdTipoCbte = (int)info_param_op.IdTipoCbte_OP;
            model.IdEstadoAprobacion          = info_param_op.IdEstadoAprobacion;
            mensaje = bus_orden_pago.validar(model);
            if (mensaje != "")
            {
                cargar_combos(model.IdEmpresa);
                ViewBag.mensaje = mensaje;
                cargar_combos_detalle();
                return(View(model));
            }
            else
            {
                if (bus_orden_pago.modificarDB(model))
                {
                    return(RedirectToAction("Index"));
                }
                else
                {
                    ViewBag.mensaje = mensaje;
                    cargar_combos(model.IdEmpresa);
                    cargar_combos_detalle();
                    return(View(model));
                }
            }
        }
示例#4
0
        public ActionResult Consultar(int IdEmpresa = 0, int IdOrdenPago = 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

            bus_orden_pago = new cp_orden_pago_Bus();
            cargar_combos(IdEmpresa);

            cp_orden_pago_Info model = bus_orden_pago.get_info(IdEmpresa, IdOrdenPago);
            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, "CuentasPorPagar", "OrdenPago", "Index");
            if (model.Estado == "I" || model.EstadoCancelacion == "CANCELADA")
            {
                info.Modificar = false;
                info.Anular    = false;
            }
            model.Nuevo     = (info.Nuevo == true ? 1 : 0);
            model.Modificar = (info.Modificar == true ? 1 : 0);
            model.Anular    = (info.Anular == true ? 1 : 0);
            #endregion

            SessionFixed.TipoPersona   = model.IdTipo_Persona;
            model.IdTransaccionSession = Convert.ToDecimal(SessionFixed.IdTransaccionSessionActual);

            list_ct_cbtecble_det.set_list(model.info_comprobante.lst_ct_cbtecble_det, model.IdTransaccionSession);
            lis_cp_orden_pago_det_Info.set_list(model.detalle, model.IdTransaccionSession);

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

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

            return(View(model));
        }
示例#5
0
        public ActionResult Modificar(cp_orden_pago_Info model)
        {
            string mensaje = "";

            bus_orden_pago_tipo = new cp_orden_pago_tipo_x_empresa_Bus();
            bus_orden_pago      = new cp_orden_pago_Bus();
            bus_cancelacion     = new cp_orden_pago_cancelaciones_Bus();
            model.IdUsuario     = SessionFixed.IdUsuario;

            if (bus_cancelacion.si_existe_cancelacion(model.IdEmpresa, model.IdOrdenPago))
            {
                mensaje = "La orden de pago tiene cancelaciones no se puede modificar";
                SessionFixed.IdTransaccionSessionActual = model.IdTransaccionSession.ToString();
                cargar_combos(model.IdEmpresa);
                ViewBag.mensaje = mensaje;
                return(View(model));
            }

            if (!validar(model, ref mensaje))
            {
                cargar_combos(model.IdEmpresa);
                ViewBag.mensaje = mensaje;
                return(View(model));
            }
            model.detalle = lis_cp_orden_pago_det_Info.get_list(model.IdTransaccionSession);
            model.info_comprobante.lst_ct_cbtecble_det = list_ct_cbtecble_det.get_list(model.IdTransaccionSession);

            info_param_op = bus_orden_pago_tipo.get_info(model.IdEmpresa, model.IdTipo_op);
            model.info_comprobante.IdTipoCbte = (int)info_param_op.IdTipoCbte_OP;
            model.IdEstadoAprobacion          = info_param_op.IdEstadoAprobacion;
            mensaje = bus_orden_pago.validar(model);
            if (mensaje != "")
            {
                cargar_combos(model.IdEmpresa);
                ViewBag.mensaje = mensaje;
                return(View(model));
            }
            else
            {
                if (bus_orden_pago.modificarDB(model))
                {
                    //return RedirectToAction("Index");
                    return(RedirectToAction("Modificar", new { IdEmpresa = model.IdEmpresa, IdOrdenPago = model.IdOrdenPago, Exito = true }));
                }
                else
                {
                    ViewBag.mensaje = mensaje;
                    cargar_combos(model.IdEmpresa);
                    return(View(model));
                }
            }
        }
示例#6
0
        public ActionResult Modificar(int IdEmpresa = 0, int IdOrdenPago = 0)
        {
            bus_orden_pago = new cp_orden_pago_Bus();
            cargar_combos(IdEmpresa);
            cargar_combos_detalle();
            IdEmpresa = Convert.ToInt32(Session["IdEmpresa"]);

            cp_orden_pago_Info model = new cp_orden_pago_Info();

            model = bus_orden_pago.get_info(IdEmpresa, IdOrdenPago);
            SessionFixed.TipoPersona = model.IdTipo_Persona;
            comprobante_contable_fp.set_list(model.info_comprobante.lst_ct_cbtecble_det);
            lis_cp_orden_pago_det_Info.set_list(model.detalle);

            return(View(model));
        }
示例#7
0
        public ActionResult Modificar(int IdEmpresa = 0, int IdOrdenPago = 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

            bus_orden_pago = new cp_orden_pago_Bus();
            cargar_combos(IdEmpresa);
            cargar_combos_detalle();

            cp_orden_pago_Info model = bus_orden_pago.get_info(IdEmpresa, IdOrdenPago);
            if (model == null)
            {
                return(RedirectToAction("Index"));
            }

            SessionFixed.TipoPersona   = model.IdTipo_Persona;
            model.IdTransaccionSession = Convert.ToDecimal(SessionFixed.IdTransaccionSessionActual);

            comprobante_contable_fp.set_list(model.info_comprobante.lst_ct_cbtecble_det, model.IdTransaccionSession);
            lis_cp_orden_pago_det_Info.set_list(model.detalle, model.IdTransaccionSession);

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

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

            return(View(model));
        }
示例#8
0
        public ActionResult Nuevo(cp_orden_pago_Info model)
        {
            bus_orden_pago_tipo = new cp_orden_pago_tipo_x_empresa_Bus();
            bus_orden_pago      = new cp_orden_pago_Bus();
            model.detalle       = lis_cp_orden_pago_det_Info.get_list(model.IdTransaccionSession);
            model.info_comprobante.lst_ct_cbtecble_det = comprobante_contable_fp.get_list(model.IdTransaccionSession);
            info_param_op   = bus_orden_pago_tipo.get_info(model.IdEmpresa, model.IdTipo_op);
            model.IdEmpresa = Convert.ToInt32(SessionFixed.IdEmpresa);
            model.info_comprobante.IdTipoCbte = (int)info_param_op.IdTipoCbte_OP;
            model.IdEstadoAprobacion          = info_param_op.IdEstadoAprobacion;
            model.IdUsuario = SessionFixed.IdUsuario;
            string mensaje = bus_orden_pago.validar(model);

            if (!validar(model, ref mensaje))
            {
                cargar_combos(model.IdEmpresa);
                ViewBag.mensaje = mensaje;
                return(View(model));
            }
            if (mensaje != "")
            {
                cargar_combos(model.IdEmpresa);
                ViewBag.mensaje = mensaje;
                cargar_combos_detalle();
                return(View(model));
            }
            else
            {
                if (bus_orden_pago.guardarDB(model))
                {
                    //return RedirectToAction("Index");
                    return(RedirectToAction("Modificar", new { IdEmpresa = model.IdEmpresa, IdOrdenPago = model.IdOrdenPago, Exito = true }));
                }
                else
                {
                    ViewBag.mensaje = mensaje;
                    cargar_combos(model.IdEmpresa);
                    cargar_combos_detalle();
                    return(View(model));
                }
            }
        }
        public Boolean GrabarDB(ref caj_Caja_Movimiento_Info info, ref string MensajeError)
        {
            try
            {
                Boolean res = true;
                // grabar diario caja
                ct_Cbtecble_Bus CbteCble_Data = new ct_Cbtecble_Bus();
                decimal         idCbteCble    = 0;

                if (CbteCble_Data.GrabarDB(info.Info_CbteCble_x_Caja_Movi, ref idCbteCble, ref MensajeError))
                {
                    //  GrabarDB caja
                    info.IdCbteCble = idCbteCble;
                    info.IdTipocbte = info.Info_CbteCble_x_Caja_Movi.IdTipoCbte;
                    string IdTipo_Docu = string.Empty;
                    if (info.cm_Signo == "+")
                    {
                        IdTipo_Docu = "RECIB_CAJA";
                    }
                    else
                    {
                        IdTipo_Docu = "VALE_CAJA";
                    }

                    info.IdPeriodo = info.Info_CbteCble_x_Caja_Movi.IdPeriodo;
                    if (data.GrabarDB(info, ref MensajeError))
                    {
                        string mensaje = "";
                        cp_orden_pago_cancelaciones_Bus bus_pagoCance = new cp_orden_pago_cancelaciones_Bus();

                        foreach (var item in info.List_OrdenCan)
                        {
                            if (item.IdOrdenPago_op > 0)
                            {
                                item.IdEmpresa_pago  = info.Info_CbteCble_x_Caja_Movi.IdEmpresa;
                                item.IdCbteCble_pago = idCbteCble;
                                item.IdTipoCbte_pago = info.Info_CbteCble_x_Caja_Movi.IdTipoCbte;
                                bus_pagoCance.GuardarDB(item, info.Info_CbteCble_x_Caja_Movi.IdEmpresa, ref mensaje);
                            }
                            else
                            {
                                //// no hay OP hay q generarla
                                cp_orden_pago_Bus             BusOP            = new cp_orden_pago_Bus();
                                cp_orden_pago_Info            InfoOP           = new cp_orden_pago_Info();
                                cp_orden_pago_det_Info        Info_det_OP      = new cp_orden_pago_det_Info();
                                List <cp_orden_pago_det_Info> List_Info_det_OP = new List <cp_orden_pago_det_Info>();
                                decimal IdOP = 0;

                                InfoOP.IdEmpresa          = info.Info_CbteCble_x_Caja_Movi.IdEmpresa;
                                InfoOP.IdEntidad          = Convert.ToDecimal(item.IdEntidad);
                                InfoOP.IdEstadoAprobacion = "APRO";
                                InfoOP.IdFormaPago        = "EFEC";
                                InfoOP.IdTipo_Persona     = item.IdTipo_Persona;
                                InfoOP.IdOrdenPago        = 0;
                                InfoOP.IdPersona          = item.IdPersona;
                                InfoOP.IdTipo_op          = item.IdTipo_op;
                                InfoOP.Observacion        = "O/P x Generada por Cruze con EG/Cja..";
                                InfoOP.Saldo           = 0;
                                InfoOP.Total_cancelado = Convert.ToDecimal(item.MontoAplicado);
                                InfoOP.Total_OP        = Convert.ToDecimal(item.MontoAplicado);

                                /////////////

                                Info_det_OP.IdEmpresa   = InfoOP.IdEmpresa;
                                Info_det_OP.IdOrdenPago = 0;
                                Info_det_OP.Secuencia   = 1;

                                Info_det_OP.IdEmpresa_cxp  = item.IdEmpresa_cxp;
                                Info_det_OP.IdTipoCbte_cxp = item.IdTipoCbte_cxp;
                                Info_det_OP.IdCbteCble_cxp = item.IdCbteCble_cxp;

                                Info_det_OP.Valor_a_pagar = item.MontoAplicado;
                                Info_det_OP.Referencia    = "";

                                Info_det_OP.IdFormaPago        = "EFEC";
                                Info_det_OP.Fecha_Pago         = DateTime.Now;
                                Info_det_OP.IdEstadoAprobacion = "APRO";

                                Info_det_OP.Idbanco = 1;

                                Info_det_OP.IdUsuario_Aproba  = "";
                                Info_det_OP.fecha_hora_Aproba = DateTime.Now;
                                Info_det_OP.Motivo_aproba     = "x conciliacion con NC cxp";

                                List_Info_det_OP.Add(Info_det_OP);
                                InfoOP.Detalle = List_Info_det_OP;

                                BusOP.GuardaDB(InfoOP, ref IdOP, ref mensaje);



                                item.IdEmpresa_pago  = info.Info_CbteCble_x_Caja_Movi.IdEmpresa;
                                item.IdCbteCble_pago = info.Info_CbteCble_x_Caja_Movi.IdCbteCble;
                                item.IdTipoCbte_pago = info.Info_CbteCble_x_Caja_Movi.IdTipoCbte;
                                item.IdEmpresa_op    = InfoOP.IdEmpresa;
                                item.IdOrdenPago_op  = IdOP;
                                item.Secuencia_op    = Info_det_OP.Secuencia;
                                item.Observacion     = "Cruze /Egr Caja";
                                bus_pagoCance.GuardarDB(item, info.Info_CbteCble_x_Caja_Movi.IdEmpresa, ref mensaje);

                                //info.DetalleMovCaja

                                caj_Caja_Movimiento_det_Bus BusDetCaja = new caj_Caja_Movimiento_det_Bus();
                                BusDetCaja.ModificarDB_IdOP_x_Det(info.Info_CbteCble_x_Caja_Movi.IdEmpresa, info.Info_CbteCble_x_Caja_Movi.IdCbteCble, info.Info_CbteCble_x_Caja_Movi.IdTipoCbte, item.Secuencia, InfoOP.IdEmpresa, IdOP, ref mensaje);
                            }
                        }
                    }
                    else
                    {
                        res = false;
                    }
                }
                else
                {
                    res = false;
                }
                return(res);
            }
            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("", "GrabarDB", ex.Message), ex)
                      {
                          EntityType = typeof(caj_Caja_Movimiento_Bus)
                      };
            }
        }