private void CargarAsistentesParaConfirmacion() { ResultadoTransaccion res = LogicaNegocios.Calendarios.clsCalendarios.ListarAsistentesConTopeDeHorario( Base.Usuario.UsuarioConectado.Usuario, VisitaActual.FechaHoraComienzo, VisitaActual.FechaHoraTermino, VisitaActual.Id); IList<clsUsuario> asistentesTope = new List<clsUsuario>(); if (res.Estado == Enums.EstadoTransaccion.Aceptada) { asistentesTope = (IList<clsUsuario>)res.ObjetoTransaccion; } //lstAsistentesConfirmacion.Items.Clear(); if (VisitaActual.EstadoBD == Enums.VisitaEstado.Confirmada) { foreach (var asistente in VisitaActual.AsistentesCraft) { AsistentesCraft asisCraft = new AsistentesCraft(); asisCraft.Usuario = asistente.Usuario; asisCraft.TieneTopeHorario = false; if (asistente.Confirmo == Enums.VisitaEstadoAsistente.ConfirmoAsistencia) asisCraft.Asiste = true; else asisCraft.Asiste = false; } } else { IList<AsistentesCraft> listaasistentes = new List<AsistentesCraft>(); foreach (var asistente in VisitaActual.AsistentesCraft) { AsistentesCraft asisCraft = new AsistentesCraft(); asisCraft.Usuario = asistente.Usuario; asisCraft.Asiste = true; foreach (var tope in asistentesTope) { if (asistente.Usuario.Id == tope.Id) asisCraft.TieneTopeHorario = true; } listaasistentes.Add(asisCraft); } grdAsistentesConfirmacion.DataSource = listaasistentes; grdAsistentesConfirmacion.RefreshDataSource(); //foreach (var asistente in VisitaActual.AsistentesCraft) //{ // lstAsistentesConfirmacion.Items.Add(asistente.Usuario, true); //} } }
private void CargarUsuariosAsistentes() { IList<clsUsuario> usuarios = new List<clsUsuario>(); ResultadoTransaccion res = LogicaNegocios.Usuarios.clsUsuarios.ListarUsuarios(Enums.Estado.Habilitado, Enums.CargosUsuarios.Todos); if (res.Estado == Enums.EstadoTransaccion.Aceptada) { usuarios = (IList<clsUsuario>)res.ObjetoTransaccion; } //asistentes con tope de horario res = LogicaNegocios.Calendarios.clsCalendarios.ListarAsistentesConTopeDeHorario( Base.Usuario.UsuarioConectado.Usuario, VisitaActual.FechaHoraComienzo.AddSeconds(1), VisitaActual.FechaHoraTermino, VisitaActual.Id); IList<clsUsuario> asistentesTope = new List<clsUsuario>(); if (res.Estado == Enums.EstadoTransaccion.Aceptada) { asistentesTope = (IList<clsUsuario>)res.ObjetoTransaccion; } IList<AsistentesCraft> listAsistentesCraft = new List<AsistentesCraft>(); foreach (var user in usuarios) { AsistentesCraft asis = new AsistentesCraft(); asis.Usuario = user; asis.Asiste = false; asis.TieneTopeHorario = false; foreach (var tope in asistentesTope) { if (user.Id == tope.Id) asis.TieneTopeHorario = true; } listAsistentesCraft.Add(asis); } //lstAsistentesCraft.DataSource = usuarios; //lstAsistentesCraft.Refresh(); grdAsistentesCraft.DataSource = listAsistentesCraft; }
public void CargarFormulario() { Int64 IdVisita = 0; if (Accion == Enums.TipoAccionFormulario.Consultar) IdVisita = IdVisitaConsulta; else IdVisita = Convert.ToInt64(AppointmentCalendario.CustomFields["IdVisita"]); clsVisita visita = LogicaNegocios.Calendarios.clsCalendarios.ObtenerVisitaPorId(IdVisita); //obtener produtos del cliente //visita.Cliente.ProductosPreferidos = // LogicaNegocios.Clientes.clsClientesMaster.ObtenerProductosPreferidos(visita.Cliente.Id); if (visita == null) return; VisitaActual = visita; txtAsunto.Text = VisitaActual.Asunto; txtUbicacion.Text = VisitaActual.Ubicacion; if (Accion != Enums.TipoAccionFormulario.Nuevo) { txtFechaComienzo.Text = VisitaActual.FechaHoraComienzo.ToShortDateString(); txtHoraComienzo.Time = VisitaActual.FechaHoraComienzo; txtFechaTermino.Text = VisitaActual.FechaHoraTermino.ToShortDateString(); txtHoraTermino.Time = VisitaActual.FechaHoraTermino; } else { txtFechaComienzo.Text = AppointmentCalendario.Start.ToShortDateString(); txtHoraComienzo.Time = AppointmentCalendario.Start; txtFechaTermino.Text = AppointmentCalendario.End.ToShortDateString(); txtHoraTermino.Time = AppointmentCalendario.End; } txtDescripcion.Text = VisitaActual.Descripcion; if (VisitaActual.Cliente != null) { txtCliente.Text = VisitaActual.Cliente.ToString(); cboCliente.SelectedItem = visita.Cliente; ClienteMaster = VisitaActual.Cliente; } CargarContactos(); cboNivelImportancia.SelectedItem = VisitaActual.NivelImportancia; for (int i = 0; i <= lstAsistentesCliente.Items.Count - 1; i++) { clsContacto contacto = (clsContacto)lstAsistentesCliente.Items[i]; foreach (clsVisitaAsistente asistente in VisitaActual.Asistentes) { if (asistente.TipoAsistente == Enums.VisitaTipoAsistente.Contacto) { if (contacto.Id == asistente.Contacto.Id) { lstAsistentesCliente.SetItemChecked(i, true); break; } } } } //grdAsistentesConfirmacion.DataSource = VisitaActual.AsistentesCraft; IList<AsistentesCraft> asistentes = (IList<AsistentesCraft>)grdAsistentesCraft.DataSource; foreach (var usuario in asistentes) { foreach (clsVisitaAsistente asistente in VisitaActual.Asistentes) { if (asistente.TipoAsistente == Enums.VisitaTipoAsistente.Usuario) { if (usuario.Usuario.Id == asistente.Usuario.Id) { usuario.Asiste = true; //if (asistente.Confirmo == Enums.VisitaEstadoAsistente.ConfirmoAsistencia) // usuario.Asiste = true; //else // usuario.Asiste = false; } } } } grdAsistentesCraft.DataSource = asistentes; grdAsistentesCraft.RefreshDataSource(); //Confirmados asistentes = new List<AsistentesCraft>(); foreach (clsVisitaAsistente asistente in VisitaActual.AsistentesCraft) { AsistentesCraft asistio = new AsistentesCraft(); if (asistente.Confirmo == Enums.VisitaEstadoAsistente.ConfirmoAsistencia) asistio.Asiste = true; else asistio.Asiste = false; asistio.Usuario = asistente.Usuario; asistio.TieneTopeHorario = false; asistentes.Add(asistio); } grdAsistentesConfirmacion.DataSource = asistentes; grdAsistentesConfirmacion.RefreshDataSource(); //for (int i = 0; i <= lstAsistentesCraft.Items.Count - 1; i++) //{ // clsUsuario usuario = (clsUsuario)lstAsistentesCraft.Items[i]; // foreach (clsVisitaAsistente asistente in VisitaActual.Asistentes) // { // if (asistente.TipoAsistente == Enums.VisitaTipoAsistente.Usuario) // { // if (usuario.Id == asistente.Usuario.Id) // { // lstAsistentesCraft.SetItemChecked(i, true); // if (asistente.Confirmo == Enums.VisitaEstadoAsistente.ConfirmoAsistencia) // lstAsistentesConfirmacion.Items.Add(asistente.Usuario, true); // else // lstAsistentesConfirmacion.Items.Add(asistente.Usuario, false); // break; // } // } // } //} txtEstado.Text = Convert.ToString(VisitaActual.EstadoBD).Replace("_", " "); txtMotivoCancelacion.Text = VisitaActual.DescripcionCancelacion; txtFechaCancelacion.Text = VisitaActual.FechaCancelacion.ToShortDateString(); chkReplanificada.Checked = VisitaActual.EsReplanificada; txtOrganizador.Text = visita.UsuarioOrganizador.NombreCompleto; if (VisitaActual.Vendedor != null) { for (int i = 0; i < cboVendedor.Properties.Items.Count; i++) { if (cboVendedor.Properties.Items[i].ToString().Trim() == VisitaActual.Vendedor.NombreCompleto.Trim()) cboVendedor.SelectedIndex = i; } //cboVendedor.SelectedItem = VisitaActual.Vendedor; txtVendedor.Text = VisitaActual.Vendedor.NombreCompleto; } chkReunionInterna.Checked = visita.EsReunionInterna; //if (VisitaActual.EstadoBD == Enums.VisitaEstado.Incompleta) // txtEstado.Text = "Visita Incompleta"; //if (VisitaActual.EstadoBD == Enums.VisitaEstado.Planificada_Por_confirmar) // txtEstado.Text = "Planificada"; //if (VisitaActual.EstadoBD == Enums.VisitaEstadoBD.PendienteRegistro) // txtEstado.Text = "Visita realizada, Informe Pendiente"; //if (VisitaActual.EstadoBD == Enums.VisitaEstadoBD.Realizada) // txtEstado.Text = "Visita Realizada"; //if (VisitaActual.EstadoBD == Enums.VisitaEstadoBD.NoRealizada) // txtEstado.Text = "Visita no Realizada"; //if (VisitaActual.EstadoBD == Enums.VisitaEstadoBD.Cancelada) // txtEstado.Text = "Visita Cancelada"; }