示例#1
0
        private void RecibirResguardo()
        {
            // Se obtiene la lista de los resugardos posibles para traspaso
            var oResg = Datos.GetListOf<ContaPolizasDetalleAvanzadoView>(c => c.ContaCuentaAuxiliarID == Cat.ContaCuentasAuxiliares.Resguardo
                && c.SucursalID != Cat.Sucursales.Matriz && c.Cargo > 0).OrderBy(c => c.SucursalID).ToList();
            // Se quintan los resguardos marcados para ocultar manualmente, y también los no mover
            for (int i = 0; i < oResg.Count; i++)
            {
                int iPolDetID = oResg[i].ContaPolizaDetalleID;
                if (Datos.Exists<ContaPolizaResguardoOcultar>(c => c.ContaPolizaDetalleID == iPolDetID))
                {
                    oResg.RemoveAt(i--);
                    continue;
                }

                // Para quitar los resguardos de "NO MOVER"
                if (oResg[i].Referencia == "NO MOVER")
                    oResg.RemoveAt(i--);
            }
            // Se crea el formulario para el listado
            var frmListado = new ObtenerElementoLista("Selecciona el resguardo a recibir", oResg);
            frmListado.MostrarColumnas("Sucursal", "FechaPoliza", "Cargo");
            frmListado.dgvDatos.Columns["Sucursal"].DisplayIndex = 0;
            frmListado.dgvDatos.Columns["FechaPoliza"].HeaderText = "Fecha";
            frmListado.dgvDatos.Columns["Cargo"].HeaderText = "Importe";
            frmListado.dgvDatos.Columns["Cargo"].FormatoMoneda();
            // Se agrega opción (con menú contextual) para ocultar resguardos
            var cmsMenu = new ContextMenuStrip();
            cmsMenu.Items.Add("Ocultar");
            frmListado.dgvDatos.MouseClick += new MouseEventHandler((s, e) =>
            {
                if (e.Button != MouseButtons.Right) return;
                if (frmListado.dgvDatos.CurrentRow == null) return;
                cmsMenu.Show(frmListado.dgvDatos, new Point(e.X, e.Y));
            });
            cmsMenu.Items[0].Click += new EventHandler((s, e) =>
            {
                // if (frmListado.dgvDatos.CurrentRow == null) return;
                int iPolizaDetID = Util.Entero(frmListado.dgvDatos.CurrentRow.Cells["ContaPolizaDetalleID"].Value);
                var oOcultar = new ContaPolizaResguardoOcultar() { ContaPolizaDetalleID = iPolizaDetID };
                Datos.Guardar<ContaPolizaResguardoOcultar>(oOcultar);
                int iFila = frmListado.dgvDatos.CurrentRow.Index;
                frmListado.dgvDatos.CurrentCell = null;
                frmListado.dgvDatos.Rows[iFila].Visible = false;
            });
            // Se muestra el formulario con el listado
            if (frmListado.ShowDialog(Principal.Instance) == DialogResult.OK)
            {
                // Se pide el usuario
                var oResU = UtilLocal.ValidarObtenerUsuario();
                if (oResU.Exito)
                {
                    // Se procede a guardar la póliza
                    var oPolizaV = (frmListado.Seleccion as ContaPolizasDetalleAvanzadoView);
                    string sFecha = DateTime.Now.ToString(GlobalClass.FormatoFecha);
                    // Se modifica la póliza original, para quitar el resguardo
                    var oPolResguardo = Datos.GetEntity<ContaPolizaDetalle>(c => c.ContaPolizaID == oPolizaV.ContaPolizaID
                        && c.ContaCuentaAuxiliarID == Cat.ContaCuentasAuxiliares.Resguardo);
                    oPolResguardo.Cargo = 0;
                    Datos.Guardar<ContaPolizaDetalle>(oPolResguardo);
                    var oPoliza = Datos.GetEntity<ContaPoliza>(c => c.ContaPolizaID == oPolizaV.ContaPolizaID);
                    oPoliza.Concepto = string.Format("{0} / {1} / {2} / {3}", oPolizaV.Sucursal, sFecha, oResU.Respuesta.NombreUsuario, oPoliza.Concepto);
                    Datos.Guardar<ContaPoliza>(oPoliza);
                    // Ahora se crea una nueva póliza, para meter el resguadro a matriz
                    oPoliza = ContaProc.CrearPoliza(Cat.ContaTiposDePoliza.Diario, string.Format("RESGUARDO / {1} / {2} / {3}", DateTime.Now, oPolizaV.Sucursal
                        , sFecha, oResU.Respuesta.NombreUsuario), Cat.ContaCuentasAuxiliares.Resguardo, Cat.ContaCuentasAuxiliares.Caja, oPolizaV.Cargo, "RESGUARDO"
                        , null, null, Cat.Sucursales.Matriz);
                    var oPolCaja = Datos.GetEntity<ContaPolizaDetalle>(c => c.ContaPolizaID == oPoliza.ContaPolizaID
                        && c.ContaCuentaAuxiliarID == Cat.ContaCuentasAuxiliares.Caja);
                    oPolCaja.Abono = 0;
                    Datos.Guardar<ContaPolizaDetalle>(oPolCaja);

                    //
                    this.LlenarArbol();
                }
            }
            frmListado.Dispose();
        }
示例#2
0
        private void RecibirResguardo()
        {
            // Se obtiene la lista de los resugardos posibles para traspaso
            var oResg = Datos.GetListOf <ContaPolizasDetalleAvanzadoView>(c => c.ContaCuentaAuxiliarID == Cat.ContaCuentasAuxiliares.Resguardo &&
                                                                          c.SucursalID != Cat.Sucursales.Matriz && c.Cargo > 0).OrderBy(c => c.SucursalID).ToList();

            // Se quintan los resguardos marcados para ocultar manualmente, y también los no mover
            for (int i = 0; i < oResg.Count; i++)
            {
                int iPolDetID = oResg[i].ContaPolizaDetalleID;
                if (Datos.Exists <ContaPolizaResguardoOcultar>(c => c.ContaPolizaDetalleID == iPolDetID))
                {
                    oResg.RemoveAt(i--);
                    continue;
                }

                // Para quitar los resguardos de "NO MOVER"
                if (oResg[i].Referencia == "NO MOVER")
                {
                    oResg.RemoveAt(i--);
                }
            }
            // Se crea el formulario para el listado
            var frmListado = new ObtenerElementoLista("Selecciona el resguardo a recibir", oResg);

            frmListado.MostrarColumnas("Sucursal", "FechaPoliza", "Cargo");
            frmListado.dgvDatos.Columns["Sucursal"].DisplayIndex  = 0;
            frmListado.dgvDatos.Columns["FechaPoliza"].HeaderText = "Fecha";
            frmListado.dgvDatos.Columns["Cargo"].HeaderText       = "Importe";
            frmListado.dgvDatos.Columns["Cargo"].FormatoMoneda();
            // Se agrega opción (con menú contextual) para ocultar resguardos
            var cmsMenu = new ContextMenuStrip();

            cmsMenu.Items.Add("Ocultar");
            frmListado.dgvDatos.MouseClick += new MouseEventHandler((s, e) =>
            {
                if (e.Button != MouseButtons.Right)
                {
                    return;
                }
                if (frmListado.dgvDatos.CurrentRow == null)
                {
                    return;
                }
                cmsMenu.Show(frmListado.dgvDatos, new Point(e.X, e.Y));
            });
            cmsMenu.Items[0].Click += new EventHandler((s, e) =>
            {
                // if (frmListado.dgvDatos.CurrentRow == null) return;
                int iPolizaDetID = Util.Entero(frmListado.dgvDatos.CurrentRow.Cells["ContaPolizaDetalleID"].Value);
                var oOcultar     = new ContaPolizaResguardoOcultar()
                {
                    ContaPolizaDetalleID = iPolizaDetID
                };
                Datos.Guardar <ContaPolizaResguardoOcultar>(oOcultar);
                int iFila = frmListado.dgvDatos.CurrentRow.Index;
                frmListado.dgvDatos.CurrentCell         = null;
                frmListado.dgvDatos.Rows[iFila].Visible = false;
            });
            // Se muestra el formulario con el listado
            if (frmListado.ShowDialog(Principal.Instance) == DialogResult.OK)
            {
                // Se pide el usuario
                var oResU = UtilLocal.ValidarObtenerUsuario();
                if (oResU.Exito)
                {
                    // Se procede a guardar la póliza
                    var    oPolizaV = (frmListado.Seleccion as ContaPolizasDetalleAvanzadoView);
                    string sFecha   = DateTime.Now.ToString(GlobalClass.FormatoFecha);
                    // Se modifica la póliza original, para quitar el resguardo
                    var oPolResguardo = Datos.GetEntity <ContaPolizaDetalle>(c => c.ContaPolizaID == oPolizaV.ContaPolizaID &&
                                                                             c.ContaCuentaAuxiliarID == Cat.ContaCuentasAuxiliares.Resguardo);
                    oPolResguardo.Cargo = 0;
                    Datos.Guardar <ContaPolizaDetalle>(oPolResguardo);
                    var oPoliza = Datos.GetEntity <ContaPoliza>(c => c.ContaPolizaID == oPolizaV.ContaPolizaID);
                    oPoliza.Concepto = string.Format("{0} / {1} / {2} / {3}", oPolizaV.Sucursal, sFecha, oResU.Respuesta.NombreUsuario, oPoliza.Concepto);
                    Datos.Guardar <ContaPoliza>(oPoliza);
                    // Ahora se crea una nueva póliza, para meter el resguadro a matriz
                    oPoliza = ContaProc.CrearPoliza(Cat.ContaTiposDePoliza.Diario, string.Format("RESGUARDO / {1} / {2} / {3}", DateTime.Now, oPolizaV.Sucursal
                                                                                                 , sFecha, oResU.Respuesta.NombreUsuario), Cat.ContaCuentasAuxiliares.Resguardo, Cat.ContaCuentasAuxiliares.Caja, oPolizaV.Cargo, "RESGUARDO"
                                                    , null, null, Cat.Sucursales.Matriz);
                    var oPolCaja = Datos.GetEntity <ContaPolizaDetalle>(c => c.ContaPolizaID == oPoliza.ContaPolizaID &&
                                                                        c.ContaCuentaAuxiliarID == Cat.ContaCuentasAuxiliares.Caja);
                    oPolCaja.Abono = 0;
                    Datos.Guardar <ContaPolizaDetalle>(oPolCaja);

                    //
                    this.LlenarArbol();
                }
            }
            frmListado.Dispose();
        }