private static Comentario GetFromDataReader(SqlDataReader reader) { var comentario = new Comentario{ Id = Convert.ToInt16(reader["id"].ToString()), Id32 = Convert.ToInt16(reader["id"].ToString()), EsHistorial = Convert.ToBoolean(reader["EsHistorial"].ToString()), Observacion = reader["Comentario"].ToString(), Fecha = Convert.ToDateTime(reader["fecha"].ToString()) }; comentario.Usuario = Usuarios.clsUsuarioADO.ObtenerTransaccionUsuarioPorId(Convert.ToInt32(reader["idUsuario"])).ObjetoTransaccion as clsUsuario; return comentario; }
private static ResultadoTransaccion Guardar(String storeName, Int64 idCotizacionORopcion, Comentario comentario) { var res = new ResultadoTransaccion(); SqlTransaction trans = null; //Abrir Conexion var conn = BaseDatos.Conexion(); try { var command = new SqlCommand(storeName, conn){Transaction = conn.BeginTransaction()}; trans = command.Transaction; command.CommandType = CommandType.StoredProcedure; command.Parameters.AddWithValue("@EsHistorial", comentario.EsHistorial); command.Parameters.AddWithValue("@Comentario", comentario.Observacion); command.Parameters.AddWithValue("@idUsuario", comentario.Usuario.Id32); command.Parameters.AddWithValue("@idOpcion_o_Cotizacion", idCotizacionORopcion); command.CommandType = CommandType.StoredProcedure; var outParam = command.Parameters.Add("@Id", SqlDbType.BigInt); outParam.Direction = ParameterDirection.Output; command.ExecuteScalar(); comentario.Id = Convert.ToInt16(outParam.Value); comentario.Id32 = Convert.ToInt32(outParam.Value); command.Transaction.Commit(); res.Accion = Entidades.Enums.Enums.AccionTransaccion.Consultar; res.ObjetoTransaccion = comentario; res.Descripcion = "El comentario guardo Exitosamente"; } catch (Exception ex) { comentario.Id = comentario.Id32 = 0; if (trans != null) trans.Rollback(); Log.EscribirLog(ex.Message); res.Descripcion = ex.Message; res.ArchivoError = NombreClase; res.MetodoError = MethodBase.GetCurrentMethod().Name; } finally { conn.Close(); } return res; }
public static ResultadoTransaccion Guardar(Opcion opcionDirecta, Comentario comentario) { return Guardar("SP_N_COTIZACION_DIRECTA_COMENTARIOS", opcionDirecta.Id32, comentario); }
private static ResultadoTransaccion Guardar(Opcion opcion, Comentario comentario) { return ClsComentarioDao.Guardar(opcion, comentario); }
public static ResultadoTransaccion Guardar(CotizacionDirecta cotizacionDirecta, Comentario comentario) { return Guardar("SP_N_COTIZACION_COMENTARIOS", cotizacionDirecta.Id32, comentario); }
private static ResultadoTransaccion Guardar(CotizacionDirecta cotizacionDirecta, Comentario comentario) { return ClsComentarioDao.Guardar(cotizacionDirecta, comentario); }
public static ResultadoTransaccion GuardarMensaje(Opcion opcion, Comentario comentario) { comentario.EsHistorial = false; return Guardar(opcion, comentario); }
public static ResultadoTransaccion GuardarMensaje(CotizacionDirecta cotizacionDirecta, Comentario comentario) { comentario.EsHistorial = false; return Guardar(cotizacionDirecta, comentario); }
public static ResultadoTransaccion GuardarHistorial(Opcion opcion, Comentario comentario) { comentario.EsHistorial = true; return Guardar(opcion, comentario); }
private void btnGuardarComentario_Click(object sender, EventArgs e) { var exito = true; Estado Estado = new Estado(); //Valida Datos Obligatorios if (this.cboEstado.SelectedItem == null || this.cboEstado.SelectedIndex < 0) { ctrldxError.SetError(this.cboEstado, "Debe Seleccionar un Tipo de Comentario", ErrorType.Critical); return; } else { ctrldxError.SetError(cboEstado, "", ErrorType.None); } if (txtComentario.Text == "") { ctrldxError.SetError(txtComentario, "Debe Ingresar un Comentario", ErrorType.Critical); return; } else { ctrldxError.SetError(this.txtComentario, "", ErrorType.None); } Cursor.Current = Cursors.WaitCursor; if (!ctrldxError.HasErrors) { ResultadoTransaccion resultado = new ResultadoTransaccion(); var comentario = new Comentario { EsHistorial = false, Observacion = txtComentario.Text, Usuario = Base.Usuario.UsuarioConectado.Usuario }; var cotizacion = GetSelectedRow(gridViewSLeads); resultado = ClsComentario.GuardarMensaje(cotizacion, comentario); var comentarios = gridComentarios.DataSource as List<Comentario>; /*emailInformeFijo = System.Configuration.ConfigurationSettings.AppSettings.Get("EmailInformeFijo"); emailInformeFcl = System.Configuration.ConfigurationSettings.AppSettings.Get("EmailInformeFCL"); */ var mailFijo = System.Configuration.ConfigurationSettings.AppSettings.Get("EmailInformeFijo"); var xmldoc = new XmlDocument(); xmldoc.Load(Path.Combine(Application.StartupPath, @"Cotizaciones\CotizacionSetting.xml")); var mailFCL = xmldoc.SelectSingleNode("/setting/cotizacionDirecta/notificaciones/FCL").InnerText; mailFijo = mailFijo + ";" + mailFCL; var listMail = new List<String>(); foreach (var mail in mailFijo.Split(';')) { if (!listMail.Contains(mail)) listMail.Add(mail); } foreach (var c in comentarios) { if (!listMail.Contains(c.Usuario.Email)) listMail.Add(c.Usuario.Email); } var cot = ClsCotizacionDirecta.ObtieneCotizacionDirecta(cotizacion.Id32).ObjetoTransaccion as CotizacionDirecta; if (!listMail.Contains(cot.Usuario.Email)) listMail.Add(cot.Usuario.Email); var subjectComenterio = xmldoc.SelectSingleNode("/setting/cotizacionDirecta/comentarios/subject").InnerText; var bodyComentario = xmldoc.SelectSingleNode("/setting/cotizacionDirecta/comentarios/body").InnerText; var subjectCambioEstado = xmldoc.SelectSingleNode("/setting/cotizacionDirecta/cambiosDeEstado/subject").InnerText; var bodyCambioEstado = xmldoc.SelectSingleNode("/setting/cotizacionDirecta/cambiosDeEstado/body").InnerText; var body = String.Empty; var subject = String.Empty; if (cboEstado.SelectedIndex != 0) { body = bodyCambioEstado; subject = subjectCambioEstado; } else { body = bodyComentario; subject = subjectComenterio; } subject = subject.Replace("[numero]", cotizacion.Numero + " - " + cotizacion.Cliente); body = body.Replace("[usuario]", comentario.Usuario.NombreCompleto); body = body.Replace("[estado]", ((Estado)cboEstado.SelectedItem).Nombre); body = body.Replace("[comentario]", comentario.Observacion); var destinatarios = String.Join(";", listMail.ToArray()); new EnvioMailObject().EnviarEmail(destinatarios, subject, body); if (cboEstado.SelectedIndex != 0) { Estado = (Estado)cboEstado.SelectedItem; resultado = CotizacionDirectaEstado.ModificarEstado(cotizacion.Id32, Estado.Id32); if (resultado.Estado == Enums.EstadoTransaccion.Aceptada) { LimpiarFormularioMensaje(); CargarGrillaCotizaciones(); MessageBox.Show(resultado.Descripcion, "Sistema Comercial Craft", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show(resultado.Descripcion, "Sistema Comercial Craft", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { LimpiarFormularioMensaje(); } Cursor.Current = Cursors.Default; if (Seleccion == "cot") FocusCotizacion(); } }