//MIGRADO //Metodo Para Registrar La Nueva Puntuacion Hacia La Empresa public void RegistrarRango(UEURango rango, String usuario) { NpgsqlConnection conexion = new NpgsqlConnection(ConfigurationManager.ConnectionStrings["Postgresql"].ConnectionString); try { conexion.Open(); NpgsqlCommand comando = new NpgsqlCommand("sp_calificar_empresa_rango", conexion); comando.CommandType = CommandType.StoredProcedure; comando.Parameters.Add("_idemp", NpgsqlTypes.NpgsqlDbType.Integer).Value = rango.IdEmp; comando.Parameters.Add("_calif", NpgsqlTypes.NpgsqlDbType.Double).Value = rango.Rango; comando.Parameters.Add("_comentario", NpgsqlTypes.NpgsqlDbType.Varchar).Value = rango.Comentario; comando.Parameters.Add("_idusr", NpgsqlTypes.NpgsqlDbType.Integer).Value = rango.IdUsr; comando.Parameters.Add("_modif", NpgsqlTypes.NpgsqlDbType.Text).Value = usuario; comando.ExecuteNonQuery(); } catch (Exception e) { throw e; } finally { conexion.Close(); } }
public U_aux_MisComprasUsr RP_PeticionesAceptadas_ItemCommand(String comand, String tb_2, Object session, String tb_1, String comandArg, String redirOrg) { //Funcion Para La Gestion De Las Peticiones Aceptadas U_aux_MisComprasUsr response = new U_aux_MisComprasUsr(); if (comand.Equals("Confirmar")) { if (tb_2.Length == 0) { response.Mensaje = "Antes de confirmar que recibiste el producto, es necesario que califiques a la empresa y des una breve opinión de tu experiencia de compra."; } else { DBUsr daoUsuario = new DBUsr(); //DDAOUsuario daousr = new DDAOUsuario(); DataTable user = (DataTable)session; UEUsuario cliente = new UEUsuario(); cliente.IdUsr = int.Parse(user.Rows[0]["idUsuario"].ToString()); //DataTable empresa = daousr.HistorialCompras(cliente, 2); DataTable empresa = daoUsuario.historial_compras(cliente, 2); UEURango rango = new UEURango(); rango.IdUsr = cliente.IdUsr; rango.IdEmp = int.Parse(empresa.Rows[0]["idEmpresa"].ToString()); rango.Rango = double.Parse(tb_1); rango.Comentario = tb_2; daoUsuario.RegistrarRango(rango, user.Rows[0]["nomUsuario"].ToString()); DB_Admin daoAdministrador = new DB_Admin(); //DDAOadministrador calEmp = new DDAOadministrador(); empresa = daoAdministrador.MostrarEmpresaId(rango.IdEmp); double calAnt = double.Parse(empresa.Rows[0]["calificacionEmpresa"].ToString()); UEUEmpresa emp = new UEUEmpresa(); emp.Calificacion = (calAnt + rango.Rango) / 2; emp.Id = rango.IdEmp; daoUsuario.CalificarEmp(emp, user.Rows[0]["nomUsuario"].ToString()); //daousr.CalificarEmp(emp, user.Rows[0]["nomUsuario"].ToString()); DB_Producto daoProducto = new DB_Producto(); //DDAOProducto confirmar = new DDAOProducto(); int venta = int.Parse(comandArg); int estado = 4; daoProducto.ConfirmarRecibido(venta, estado, user.Rows[0]["nomUsuario"].ToString()); response.Mensaje = "Tu calificación ha sido enviada."; response.Redireccion = "MisComprasUsr.aspx"; if (emp.Calificacion <= 3) { DBUsr dbUsr = new DBUsr(); //DDAOUsuario bl = new DDAOUsuario(); dbUsr.CambiarEstadoEmp(emp.Id, 0, user.Rows[0]["nomUsuario"].ToString()); } } } return(response); }
//pendiente public void CalificarCliente(double rango, String comentario, int idEmpresa, int idCliente, int idVenta, String modif) { using (var db = new Mapeo("public")) { //PÁSO 1 INSERTAR EN RANGO UEURango rang = new UEURango(); rang.Rango = rango; rang.Comentario = comentario; rang.Calificador = 1; rang.FechaRango = DateTime.Now; rang.IdEmp = idEmpresa; rang.IdUsr = idCliente; rang.ModifiBy = modif; db.rangos.Add(rang); db.SaveChanges(); //PASO 2 OBTENER EL ID DEL RANGO var idRango = (from rangods in db.rangos select rangods.IdRango).OrderByDescending(x => x).Take(1); int idrang = idRango.First(); //PASO 3 ACTUALIZAR LAS VENTAS UEUVenta vent = db.ventas.Find(idVenta); vent.CalEmp = idrang; vent.EstadoVenta = 5; vent.modified_by = modif; db.SaveChanges(); //PASO 4 OBTENER CALIFICACION CUENTA Double cal = (from ra in db.rangos where ra.IdUsr == idCliente && ra.Calificador == 1 select ra.Rango).Sum(); int cuenta = (from ra in db.rangos where ra.IdUsr == idCliente && ra.Calificador == 1 select ra.Rango).Count(); Double califi = (cal / cuenta); califi = Math.Round(califi); //PASO 5 ACTUALIZAR EL USUARIO UEUsuario user = db.user.Find(idCliente); user.Calificacion2 = califi; user.ModifBy = modif; db.SaveChanges(); //PASO 6 PREGNTAR SI SE DEBE BLOQUEAR EL USUARIOI if (califi < 3) { UEUsuario updateUsr = db.user.Find(idCliente); updateUsr.EstUsr = 2; updateUsr.ModifBy = modif; db.SaveChanges(); UEUBloqueo bloq = new UEUBloqueo(); bloq.fechaInicio = DateTime.Now; bloq.fechaFinal = DateTime.Now.AddDays(90); bloq.idUsuario = idCliente; bloq.modified_by = modif; db.bloqueos.Add(bloq); db.SaveChanges(); } } }
//METODO PARA REGISTRAR LA NUEVA PUNTUACION HACIA LA EMPRESA public void RegistrarRango(UEURango rango, String usuario) { using (var db = new Mapeo("public")) { rango.Calificador = 0; rango.FechaRango = DateTime.Now; rango.ModifiBy = usuario; db.rangos.Add(rango); db.SaveChanges(); EAcceso acc = new EAcceso(); acc.Ip = EAcceso.obtenerIP(); acc.Mac = EAcceso.obtenerMAC(); acc.Id = 0; acc.IdUsuario = 0; acc.FechaInicio = DateTime.Now.ToString(); acc.FechaFin = DateTime.Now.ToString(); DBAuditoria.insert(rango, acc, "dbo", "Rango"); } }
public void calificar_empresa(int id_Empresa, string nomUser, string correoUser, double rang) { DBUsr daoUsr = new DBUsr(); UEUsuario client = daoUsr.get_usr_email(correoUser); UEURango rango = new UEURango(); rango.IdUsr = client.IdUsr; rango.IdEmp = id_Empresa; rango.Rango = rang; rango.Comentario = "Calificacion Api"; //Registramos el Rango en la Tabla De Los Rnagos daoUsr.RegistrarRango(rango, client.NomUsr); //Registramos este dato para la empresa Seleccionada DB_Admin daoAdministrador = new DB_Admin(); DataTable empresa = daoAdministrador.MostrarEmpresaId(rango.IdEmp); double calAnt = double.Parse(empresa.Rows[0]["calificacionEmpresa"].ToString()); UEUEmpresa emp = new UEUEmpresa(); emp.Calificacion = (calAnt + rango.Rango) / 2; emp.Id = rango.IdEmp; daoUsr.CalificarEmp(emp, client.NomUsr); }