}
public void editarItem(Item item, Miembro nuevoResponsable,
String descripcion, String prioridad, String fichaTrabajo) {
Session session = null;
EstadoItem estadoItem = item.getEstadoActual();
estadoItem.setFichaDeTrabajo(fichaTrabajo);
item.setDescripcion(descripcion);
item.setPrioridad(Integer.parseInt(prioridad));
if (!estadoItem.getResponsable().equals(nuevoResponsable))
{
EstadoItem nuevoEstadoItem = new EstadoItem();
nuevoEstadoItem.setEstado(estadoItem.getEstado());
nuevoEstadoItem.setFechaInicio(new Date());
nuevoEstadoItem.setResponsable(nuevoResponsable);
nuevoEstadoItem.setItem(item);
session = HibernateUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
EstadoItem savedEstadoItem = (EstadoItem) session.merge(nuevoEstadoItem);
session.getTransaction().commit();
estadoItem.setFechaFin(new Date());
item.setEstadoActual(savedEstadoItem);
item.setResponsable(nuevoResponsable);
this.nuevoEstadoHistorico(estadoItem, savedEstadoItem);
}
//Actualizamos EstadoItem
session = HibernateUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
session.update(estadoItem);
session.getTransaction().commit();
//Actualizamos Item
session = HibernateUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
session.update(item);
session.getTransaction().commit();
}