我想在DM中等待消息!
但是它是如何工作的?
import java.util.List;
import javax.faces.application.FacesMessage;
import javax.faces.bean.SessionScoped;
import javax.faces.bean.ManagedBean;
import javax.faces.context.FacesContext;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import javax.persistence.Query;
@ManagedBean()
@SessionScoped
public class producto {
public String codigo = "";
public String nombre = "";
public String precio = "";
public String mensaje = "";
public float prom = 0;
EntityManagerFactory factory = Persistence.createEntityManagerFactory("lab_CRUD_PFPU");
EntityManager em1 = factory.createEntityManager();
public producto() {
}
public String getCodigo() {
return codigo;
}
public void setCodigo(String codigo) {
this.codigo = codigo;
}
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public String getPrecio() {
return precio;
}
public void setPrecio(String precio) {
this.precio = precio;
}
public String getMensaje() {
return mensaje;
}
public void setMensaje(String mensaje) {
this.mensaje = mensaje;
}
public void insertar() {
String sql = "insert into producto (codigo,nombre, precio) values ('" + codigo + "'" + "," + "'" + nombre + "'" + "," + precio + ")";
em1.getTransaction().begin();
Query qe = em1.createNativeQuery(sql);
try {
qe.executeUpdate();
em1.getTransaction().commit();
//mensaje = "Se insertó satisfactoriamente";
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, "Se insertó satisfactoriamente", "Se insertó satisfactoriamente"));
} catch (Exception ex) {
em1.getTransaction().rollback();
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_WARN, "No se insertó satisfactoriamente", "Se insertó satisfactoriamente"));
}
}
public void eliminar() {
String sql = "delete from producto where codigo='" + codigo + "'";
em1.getTransaction().begin();
Query qe = em1.createNativeQuery(sql);
int li_filas = qe.executeUpdate();
if (li_filas >= 1) {
em1.getTransaction().commit();
//mensaje = "Se eliminó satisfactoriamente";
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, "Se eliminó satisfactoriamente", "Se insertó satisfactoriamente"));
} else {
em1.getTransaction().rollback();
//mensaje = "No se pudo eliminar";
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_WARN, "No se pudo eliminar", "Se insertó satisfactoriamente"));
}
}
public void modificar() {
String sql = "update producto set nombre='" + nombre + "', precio=" + precio + " where codigo='" + codigo + "'";
//String sql = "update vehiculo set marca='" + marca + "' where placa='" + placa + "'";
em1.getTransaction().begin();
Query qe = em1.createNativeQuery(sql);
int li_filas = qe.executeUpdate();
if (li_filas >= 1) {
em1.getTransaction().commit();
//mensaje = "Se actualizó satisfactoriamente";
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, "Se modificó satisfactoriamente", "Se insertó satisfactoriamente"));
} else {
em1.getTransaction().rollback();
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_WARN, "No se pudo modificar", "Se insertó satisfactoriamente"));
}
}
public void buscar() {
String sql = "select * from producto where codigo=" + "'" + codigo + "'";
Query qe = em1.createNativeQuery(sql);
List l1 = qe.getResultList();
if (l1.size() >= 1) {
Object[] ar_objeto = (Object[]) (l1.get(0));
String ls_nombre = ar_objeto[1].toString();
String ls_precio = ar_objeto[2].toString();
nombre = ls_nombre;
precio = ls_precio;
mensaje = "";
} else {
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_WARN, "No se pudo buscar el producto", "Se insertó satisfactoriamente"));
}
}
public void promedio() {
String sql = "SELECT AVG(precio) from producto";
Query qe = em1.createNativeQuery(sql);
String aa = String.valueOf(qe.getSingleResult());
mensaje = " Promedio: " + aa;
FacesContext.getCurrentInstance().addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, mensaje, "Se insertó satisfactoriamente"));
}
}```
答案 0 :(得分:0)
与TextChannel
中的工作方式几乎相同,
在您的选项中,您还需要设置属性错误并将时间定义为错误。
//msg.author.dmChannel doesn't always exist and if it doesn't it will throw an error
//so call <User>.createDM() first if you don't know it exists yet
msg.author.dmChannel.awaitMessages({ max: 1, time: 10000, errors: ["time"] })
.then(async collected => {
})
.catch(() => {});
https://discord.js.org/#/docs/main/stable/class/DMChannel?scrollTo=awaitMessages