private static ResultadoTransaccion GuardarProspecto(clsMeta ObjMeta) { ResultadoTransaccion res = new ResultadoTransaccion(); try { //Registrar Llamada Telefonica objParams = SqlHelperParameterCache.GetSpParameterSet(conn, "SP_N_DIRECCION_META"); objParams[0].Value = ObjMeta.ObjClienteMaster.Id; objParams[1].Value = ObjMeta.EstadoMeta; objParams[2].Value = ObjMeta.GlosaClienteTarget; objParams[3].Value = ObjMeta.TipoOportunidad; objParams[4].Value = ObjMeta.TipoTarget; objParams[5].Value = ObjMeta.FechaApertura; objParams[6].Value = ObjMeta.FechaRevision ; objParams[7].Value = ObjMeta.ObjTipoContenedor.Id; objParams[8].Value = ObjMeta.GlosaCommodity ; objParams[9].Value = ObjMeta.ObjMetaAsignacion.ObjVendedorAsignado.Id; objParams[10].Value = ObjMeta.Prioridad.Codigo; objParams[11].Value = ObjMeta.Shipper; objParams[12].Value = ObjMeta.UsuarioAsignador.Id; objParams[13].Direction = ParameterDirection.Output; objParams[14].Direction = ParameterDirection.Output; SqlCommand command = new SqlCommand("SP_N_DIRECCION_META", conn); command.Transaction = transaction; command.Parameters.AddRange(objParams); command.CommandType = CommandType.StoredProcedure; command.ExecuteNonQuery(); //ObjMeta.Id = Convert.ToInt32(command.ExecuteScalar()); ObjMeta.IdNumMeta = objParams[13].Value.ToString(); ObjMeta.Id = Convert.ToInt32(objParams[14].Value); //Ejecutar transaccion res.Estado = Enums.EstadoTransaccion.Aceptada; res.Descripcion = "Se registró la asiganción del prospecto correctamente"; } catch (Exception ex) { Log.EscribirLog(ex.Message); res.Descripcion = ex.Message; res.ArchivoError = "clsMetaAdo.cs"; res.MetodoError = "GuardarProspecto"; res.Estado = Enums.EstadoTransaccion.Rechazada; } finally { } return res; }
public static ResultadoTransaccion ListarProspectoUsuarioEstado(long IdVendedor, string Estados) { ResultadoTransaccion res = new ResultadoTransaccion(); IList<clsMeta> Prospectos = new List<clsMeta>(); try { //Abrir Conexion conn = BaseDatos.Conexion(); objParams = SqlHelperParameterCache.GetSpParameterSet(conn, "SP_C_DIRECCION_METAS_VENDEDOR"); SqlCommand command = new SqlCommand("SP_C_DIRECCION_METAS_VENDEDOR", conn); objParams[0].Value = IdVendedor; objParams[1].Value = Estados; command.Transaction = transaction; command.Parameters.AddRange(objParams); command.CommandType = CommandType.StoredProcedure; dreader = command.ExecuteReader(); while (dreader.Read()) { clsMeta ObjProspecto = new clsMeta(); ObjProspecto.IdNumMeta = dreader[1].ToString().Trim(); ObjProspecto.Id = Convert.ToInt32(dreader[0]); ObjProspecto.Prioridad = new clsItemParametro(); ObjProspecto.Prioridad.Codigo = dreader[2].ToString(); //ObjProspecto.Prioridad.Nombre = dreader[3].ToString(); ObjProspecto.TipoOportunidad = dreader[3].ToString().Trim(); ObjProspecto.GlosaClienteTarget = dreader[4].ToString().Trim(); ObjProspecto.ObjClienteMaster = new clsClienteMaster(true); ObjProspecto.ObjClienteMaster.Id = Convert.ToInt32(dreader[5]); ObjProspecto.ObjClienteMaster.NombreFantasia = dreader[6].ToString().Trim(); ObjProspecto.ObjMetaAsignacion = new clsMetaAsignacion(); ObjProspecto.ObjMetaAsignacion.ObjVendedorAsignado = new clsUsuario(); ObjProspecto.ObjMetaAsignacion.ObjVendedorAsignado.Id = Convert.ToInt32(dreader[7]); ObjProspecto.ObjMetaAsignacion.ObjVendedorAsignado.NombreUsuario = dreader[8].ToString().Trim(); ObjProspecto.ObjMetaAsignacion.ObjVendedorAsignado.Email = dreader[9].ToString().Trim(); ObjProspecto.EstadoMeta = (Enums.EstadosMetas)Convert.ToInt16(dreader[10]); ObjProspecto.FechaApertura = Convert.ToDateTime(dreader[11]); //ObjProspecto.FechaRevision = Convert.ToDateTime(dreader[12]); ObjProspecto.FechaUltActulizacion = Convert.ToDateTime(dreader[13]); ObjProspecto.IdTipoActualizacion = Convert.ToInt32(dreader[14]); ObjProspecto.FechaHoy = Convert.ToDateTime(dreader[15]); ObjProspecto.UsuarioAsignador = new clsUsuario(); ObjProspecto.UsuarioAsignador.Id = Convert.ToInt32(dreader[16]); ObjProspecto.UsuarioAsignador.Email = dreader[17].ToString().Trim(); ObjProspecto.UsuarioAsignador.Nombre = dreader[18].ToString().Trim(); ObjProspecto.FollowUps =clsClienteMasterADO.ObtenerFollowUpActivosClientePorTarget(ObjProspecto.Id32); Prospectos.Add(ObjProspecto); } res.Accion = Entidades.Enums.Enums.AccionTransaccion.Consultar; res.ObjetoTransaccion = Prospectos; } catch (Exception ex) { Log.EscribirLog(ex.Message); res.Descripcion = ex.Message; res.ArchivoError = "clsMetaAdo.cs"; res.MetodoError = "ListarProspectos"; } finally { conn.Close(); } return res; }
public static ResultadoTransaccion ObtenerMetaPorId(Int64 IdMeta) { ResultadoTransaccion res = new ResultadoTransaccion(); clsMeta ObjProspecto = null; try { //Abrir Conexion conn = BaseDatos.Conexion(); objParams = SqlHelperParameterCache.GetSpParameterSet(conn, "SP_C_DIRECCION_META_PORID"); objParams[0].Value = IdMeta; SqlCommand command = new SqlCommand("SP_C_DIRECCION_META_PORID", conn); command.Transaction = transaction; command.Parameters.AddRange(objParams); command.CommandType = CommandType.StoredProcedure; dreader = command.ExecuteReader(); while (dreader.Read()) { ObjProspecto = new clsMeta(); ObjProspecto.FollowUps = clsClienteMasterADO.ObtenerFollowUpActivosClientePorTarget(IdMeta); ObjProspecto.GlosaClienteTarget = dreader["GlosaClienteTarget"].ToString().Trim(); ObjProspecto.GlosaCommodity = dreader["GlosaCommodity"].ToString(); ObjProspecto.ObjTipoContenedor = new clsItemParametro(); ObjProspecto.ObjTipoContenedor.Nombre = dreader["TipoContenedor"].ToString(); //ObjProspecto.FechaRevision = Convert.ToDateTime(dreader["FechaRevision"]); ObjProspecto.ObjMetaAsignacion = new clsMetaAsignacion(); ObjProspecto.ObjMetaAsignacion.ObjVendedorAsignado = new clsUsuario(); //ObjProspecto.ObjMetaAsignacion.ObjVendedorAsignado.Id = Convert.ToInt32(dreader[7]); ObjProspecto.ObjMetaAsignacion.ObjVendedorAsignado.Nombre = dreader["VendedorNombres"].ToString().Trim(); ObjProspecto.ObjMetaAsignacion.ObjVendedorAsignado.ApellidoPaterno = dreader["VendedorPaterno"].ToString().Trim(); ObjProspecto.ObjMetaAsignacion.ObjVendedorAsignado.ApellidoMaterno = dreader["VendedorMaterno"].ToString().Trim(); ObjProspecto.FechaApertura = Convert.ToDateTime(dreader["FechaApertura"]); ObjProspecto.Shipper = dreader["Shipper"].ToString(); ObjProspecto.NombreUsuarioCierra = dreader["UCNombres"].ToString().Trim() + " " + dreader["UCierraPaterno"].ToString().Trim() + " " + dreader["UCierraMaterno"].ToString().Trim(); if (dreader["FechaCierre"] is DBNull) ObjProspecto.FechaCierre = null; else ObjProspecto.FechaCierre = Convert.ToDateTime(dreader["FechaCierre"]); ObjProspecto.Instruction = dreader["Instruction"].ToString(); if (dreader["FechaCancelacion"] is DBNull) ObjProspecto.FechaCancelacion = null; else ObjProspecto.FechaCancelacion = Convert.ToDateTime(dreader["FechaCancelacion"]); ObjProspecto.ObjMetaObservaciones = new clsMetaObservaciones(); ObjProspecto.ObjMetaObservaciones.Observacion = dreader["Observaciones"].ToString(); ObjProspecto.FollowUps = clsClienteMasterADO.ObtenerFollowUpActivosClientePorTarget(ObjProspecto.Id32); } res.Estado = Enums.EstadoTransaccion.Aceptada; res.Accion = Entidades.Enums.Enums.AccionTransaccion.Consultar; res.ObjetoTransaccion = ObjProspecto; } catch (Exception ex) { Log.EscribirLog(ex.Message); res.Descripcion = ex.Message; res.ArchivoError = "clsMetaAdo.cs"; res.MetodoError = "ListarProspectos"; } finally { conn.Close(); } return res; }
public static ResultadoTransaccion GuardarFollowups(IList<clsClienteFollowUp> followDatabase, clsMeta Meta) { ResultadoTransaccion resTransaccion = new ResultadoTransaccion(); foreach (var followUp in Meta.FollowUps) { if (followUp.IsNew) resTransaccion = Clientes.clsClienteMasterADO.AgregarFollowUpClienteMaster(followUp, transaction); else resTransaccion = Clientes.clsClienteMasterADO.ModificarFollowUpClienteMaster(followUp, transaction); if (resTransaccion.Estado == Enums.EstadoTransaccion.Rechazada) throw new Exception(resTransaccion.Descripcion); } if (!Meta.IsNew) { var newlist = Meta.FollowUps.ToList(); foreach (var followUp in followDatabase) { var encontrado = newlist.Find(foo => foo.Id32.Equals(followUp.Id32)); if (encontrado == null) { resTransaccion = Clientes.clsClienteMasterADO.EliminarLogicoFollowUpClienteMaster(followUp, transaction); if (resTransaccion.Estado == Enums.EstadoTransaccion.Rechazada) throw new Exception(resTransaccion.Descripcion); } } } resTransaccion.Estado = Enums.EstadoTransaccion.Aceptada; resTransaccion.Accion = Enums.AccionTransaccion.Insertar; resTransaccion.ObjetoTransaccion = Meta; resTransaccion.Descripcion = "Se registró los Followup Exitosamente"; return resTransaccion; }
private void gridViewProspectos_FocusedRowChanged(object sender, FocusedRowChangedEventArgs e) { int fila_sel = 0; if (gridViewProspectos.RowCount > 0) { fila_sel = gridViewProspectos.GetSelectedRows()[0]; if (fila_sel >= 0) { ObjProspecto = (clsMeta)gridViewProspectos.GetRow(fila_sel); CargarGrillaObservaciones(ObjProspecto.Id); } } }
private Boolean AsignarProspectoGrilla() { clsMeta ObjMeta = new clsMeta(); string Vendedor = ""; long IdCliente = 0; string NombreProspecto = ""; string TipoOportunidad = ""; string Vendedor_paso = ""; long IdCliente_paso = 0; string NombreProspecto_paso = ""; string TipoOportunidad_paso = ""; //ObjRegistroAsignacion.ObjMeta = new clsMeta(); // Prospecto de nueva Cuenta if (this.rbCuenta.Checked == true) { ObjMeta.TipoOportunidad = "C"; ObjMeta.GlosaClienteTarget = this.txtTarget.Text; // Se pone cero para indicar que en este caso no se requiere un valor // para el cliente master ObjMeta.ObjClienteMaster = new clsClienteMaster(true); ObjMeta.ObjClienteMaster.Id = -1; NombreProspecto_paso = ObjMeta.GlosaClienteTarget; } // Prospecto de nuevo Trafico else { ObjMeta.TipoOportunidad = "T"; ObjMeta.GlosaClienteTarget = ""; ObjMeta.ObjClienteMaster = (clsClienteMaster)CboCliente.SelectedItem; IdCliente_paso = ObjMeta.ObjClienteMaster.Id; } ObjMeta.TipoTarget = "P"; ObjMeta.EstadoMeta = Enums.EstadosMetas.Propuesta; ObjMeta.UsuarioAsignador = ProyectoCraft.Base.Usuario.UsuarioConectado.Usuario; TipoOportunidad_paso = ObjMeta.TipoOportunidad; ObjMeta.ObjTipoProducto = new List<clsTipoProducto>(); // AgregaProductosMeta foreach (clsTipoProducto i in lstProductos.CheckedItems) { ObjMeta.ObjTipoProducto.Add(i); } // AgregaProdutosTrafico ObjMeta.ObjMetaGlosasTrafico = (IList<clsMetaGlosasTrafico>)gridTraficos.DataSource; // AgregaCompetencia ObjMeta.ObjMetaCompetencia = (IList<clsMetaCompetencia>)gridCompetencia.DataSource; // AgregaVendedorAsignado ObjMeta.ObjMetaAsignacion = new clsMetaAsignacion(); // ObjRegistroAsignacion.ObjMeta.ObjMetaAsignacion.ObjVendedorAsignado = new clsUsuario(); ObjMeta.ObjMetaAsignacion.ObjVendedorAsignado = (clsUsuario)cboVendedores.SelectedItem; Vendedor_paso = ObjMeta.ObjMetaAsignacion.ObjVendedorAsignado.NombreUsuario; // Fecha Asignacion ObjMeta.ObjMetaAsignacion.FechaAsignacion = DateTime.Today; // Agregar Commodity ObjMeta.GlosaCommodity = this.txtCommodity.Text; // Agregar Fecha Apertura ObjMeta.FechaApertura = this.DateApertura.DateTime; // Agregar Fecha de revisión de avance del prospecto //ObjMeta.FechaRevision = this.DateRevision.DateTime; if (ObjMeta.FollowUps == null) { ObjMeta.FollowUps = new List<clsClienteFollowUp>(); if (ObjMeta.FollowUps.Count==0) { var followup = new clsClienteFollowUp(); followup.FechaFollowUp = this.DateRevision.DateTime; followup.Descripcion = "Primera reunión de seguimiento"; followup.Usuario = ObjMeta.UsuarioAsignador; followup.Activo = true; followup.Cliente = ObjMeta.ObjClienteMaster; ObjMeta.FollowUps.Add(followup); } } // Agregar Tipo Contenedor ObjMeta.ObjTipoContenedor = (clsItemParametro)this.lstTipoContenedor.SelectedItem; // Prioridad ObjMeta.Prioridad = (clsItemParametro)this.cboPrioridad.SelectedItem; // Shipper ObjMeta.Shipper = this.txtShipper.Text; //Obtener el source actual de la grilla if (gridAsignaciones.DataSource != null) { IList<clsMeta> ListaProspectos = (IList<clsMeta>)gridAsignaciones.DataSource; foreach (clsMeta Prospecto in ListaProspectos) { TipoOportunidad = Prospecto.TipoOportunidad; if (TipoOportunidad == "C") { NombreProspecto = Prospecto.GlosaClienteTarget; } else { IdCliente = Prospecto.ObjClienteMaster.Id; } Vendedor = Prospecto.ObjMetaAsignacion.ObjVendedorAsignado.NombreUsuario; if (Vendedor_paso == Vendedor && ((IdCliente == IdCliente_paso) || (NombreProspecto == NombreProspecto_paso)) && (TipoOportunidad == TipoOportunidad_paso)) { return false; } else { ListaProspectos.Add(ObjMeta); } // Agrego el prospecto a la lista de prospectos asignados en la sesion // ListaProspectos.Add(ObjRegistroAsignacion); gridAsignaciones.DataSource = ListaProspectos; gridAsignaciones.RefreshDataSource(); } } else { IList<clsMeta> ListaProspectos = new List<clsMeta>(); ListaProspectos.Add(ObjMeta); gridAsignaciones.DataSource = ListaProspectos; } return true; }
public static ResultadoTransaccion GuardarFollowUps(clsMeta meta) { var followDataBqse = clsClienteMasterADO.ObtenerFollowUpClientePorTarget(meta.Id32); return clsMetaAdo.GuardarFollowups(followDataBqse, meta); }
public ResultadoTransaccion EnviarMailAvisoCierreTarget(clsUsuario UsuarioAsigna, clsMeta Target, string Observacion) { string EmailDestinatario = ""; string Asunto = ""; string EmailBody = ""; string EmailAviso = ""; string NombreDestinatario = ""; string CopiaFijo = ""; string CopiaLCL = ""; string CopiaFCL = ""; string CopiaAereo = ""; ResultadoTransaccion res = new ResultadoTransaccion(); try { EmailAviso = System.Configuration.ConfigurationSettings.AppSettings.Get("EmailCierreTarget"); Asunto = System.Configuration.ConfigurationSettings.AppSettings.Get("AsuntoEmailCierreTarget"); EmailDestinatario = System.Configuration.ConfigurationSettings.AppSettings.Get("EmailAsignadorTarget"); NombreDestinatario = System.Configuration.ConfigurationSettings.AppSettings.Get("NombreAsignadorTarget"); CopiaFijo = System.Configuration.ConfigurationSettings.AppSettings.Get("EmailInformeFijo"); CopiaLCL = System.Configuration.ConfigurationSettings.AppSettings.Get("EmailInformeLCL"); CopiaFCL = System.Configuration.ConfigurationSettings.AppSettings.Get("EmailInformeFCL"); CopiaAereo = System.Configuration.ConfigurationSettings.AppSettings.Get("EmailInformeAereo"); StringBuilder sb = new StringBuilder(Asunto); sb = sb.Replace("[SALTO]", "\n"); Asunto = sb.ToString(); StringBuilder sb2 = new StringBuilder(EmailAviso); sb2.Replace("[DESTINATARIO]", NombreDestinatario); sb2.Replace("[OBSERVACION]", Observacion); if (Target.GlosaClienteTarget != "") { sb2.Replace("[TARGET]", Target.GlosaClienteTarget); } else { sb2.Replace("[TARGET]", Target.ObjClienteMaster.NombreFantasia); } sb2 = sb2.Replace("[SALTO]", "\n"); EmailBody = sb2.ToString(); EmailDestinatario = EmailDestinatario + ";" + UsuarioAsigna.Email; if (CopiaFijo != "") { EmailDestinatario = EmailDestinatario + ";" + CopiaFijo; } EnviarEmail(EmailDestinatario, Asunto, EmailBody); } catch (Exception ex) { res.Estado = Enums.EstadoTransaccion.Rechazada; res.Descripcion = ex.Message; Log.EscribirLog(ex.Message); } return res; }