Esempio n. 1
0
        private void DGSalidas_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
        {
            string TarjetaValet = "";

            try
            {
                N_Personal_Enturno N_objPersonal = new N_Personal_Enturno();
                DGSelected = 3;
                rowSalidas = DGSalidas.Rows[e.RowIndex];
                LeerTarjeta LeerTarjeta = new LeerTarjeta("Por favor acerque una tarjeta al lector.", TarjetasActivas, false);
                if (LeerTarjeta.ShowDialog() == DialogResult.OK)
                {
                    TarjetaValet = LeerTarjeta.Tarjeta;//lee la propiedad
                }

                int idpersonal = 0;
                foreach (var employed in Personal)
                {
                    if (employed.CodigoTarjeta == TarjetaValet)
                    {
                        idpersonal = employed.VP_IdPersonal;
                        break;
                    }
                }

                Clases.P_DBExit objExit = new Clases.P_DBExit();
                if (Enturno.Exists(x => x.VP_IdPersonal == idpersonal))
                {
                    objExit = (from act in Clases.P_StatusActual.SalidasPendientes
                               where act.TicketNumber == rowSalidas.Cells[4].Value.ToString() //Numtiquete
                               select act).FirstOrDefault();
                    objExit.IdValetEntrega = idpersonal;
                    RegistrarSalida(objExit, "Entrega", "Procesado", false); //Se inserta movimiento como creado.

                    foreach (var turno in Enturno)
                    {
                        //Actualiza turno
                        if (turno.VP_IdPersonal == idpersonal)
                        {
                            turno.Fecha = DateTime.Now; //Actualiza fecha indicando que el empleado usó su turno y vuelve a la cola
                            N_objPersonal.ActualizandoPersonal_Enturno(turno);
                            CargarEmpleadosEnturno();   //Actualiza lista de personal en turno y datagridview
                            break;
                        }
                    }

                    ConsultarTransacciones(-16);
                }
                else if (!string.IsNullOrEmpty(TarjetaValet))
                {
                    MessageErrorOk Message = new MessageErrorOk("Usted no se encuentra en turno.", 3);
                    Message.ShowDialog();
                }
            }
            catch (Exception ex)
            {
                //Entrada de LOG
                Clases.P_LogWriter objLog = new Clases.P_LogWriter("ValetParking - DGSalidas_CellDoubleClick " + ex.ToString());
            }
        }
Esempio n. 2
0
        private void RegistrarSalida(Clases.P_DBExit Salida, string TextoMovmiento, string TextoStatus, bool Insert)
        {
            try
            {
                DateTime     fecha           = DateTime.Now;
                E_Movimiento E_objMovimiento = new E_Movimiento();
                N_Movimiento N_objMovimiento = new N_Movimiento();

                int tipoMov = (from mov in Clases.P_ListasStatus.TipoMovimiento
                               where mov.Status == TextoMovmiento
                               select mov.IdStatus).FirstOrDefault();

                int tipoStatus = (from status in Clases.P_ListasStatus.StatusMovimiento
                                  where status.Status == TextoStatus
                                  select status.IdStatus).FirstOrDefault();

                E_objMovimiento.VP_IdMovimiento        = Salida.VP_IdMovimiento;
                E_objMovimiento.VP_IdTipo_Movimiento   = tipoMov;
                E_objMovimiento.VP_Id_CupoLlave        = Salida.IdCupoLlave;
                E_objMovimiento.VP_IdPersonal_Asignado = Salida.IdValetAsignado;
                E_objMovimiento.VP_IdPersonal_Servicio = Salida.IdValetEntrega;
                E_objMovimiento.VP_IdZona          = Salida.IdZona;
                E_objMovimiento.VP_IdStatus        = tipoStatus; //Estatus Creado
                E_objMovimiento.FechaInicioProceso = fecha;
                E_objMovimiento.FechaFinProceso    = fecha;
                E_objMovimiento.PlateNumber        = Salida.Placa;
                E_objMovimiento.TicketNumber       = Salida.TicketNumber;
                E_objMovimiento.Device             = Salida.DisositivoNr;
                E_objMovimiento.Carpark            = Salida.Carpark;

                if (Insert)
                {
                    N_objMovimiento.InsertandoMovimiento(E_objMovimiento); //Se inserta movimiento
                }
                else
                {
                    N_objMovimiento.EditandoMovimiento(E_objMovimiento); //Se inserta movimiento
                }
            }
            catch (Exception ex)
            {
                //Entrada de LOG
                Clases.P_LogWriter objLog = new Clases.P_LogWriter("ValetParking - RegistrarSalida " + ex.ToString());
            }
        }