Subida y gestión de imágenes completa

This commit is contained in:
Roberto Orden Erena
2019-12-29 13:10:38 +01:00
parent 9cd602f8cf
commit 5fa3d1525a
2 changed files with 108 additions and 51 deletions

View File

@@ -2,16 +2,18 @@ package managedbean.medicalTest;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Base64;
import java.util.List;
import javax.annotation.PostConstruct;
import javax.faces.application.FacesMessage;
import javax.faces.component.html.HtmlSelectOneMenu;
import javax.faces.event.AjaxBehaviorEvent;
import javax.faces.view.ViewScoped;
import javax.inject.Named;
import org.primefaces.event.FileUploadEvent;
import org.primefaces.event.SelectEvent;
import org.primefaces.model.UploadedFile;
import TO.MedicalTestTO;
import TO.PatientTO;
@@ -32,6 +34,7 @@ public class MedicalTestMBean extends ManagedBeanBase implements Serializable {
private MedicalTestTO selected;
private PatientTO patSelected;
private boolean addNewMode = false;
private UploadedFile imageUpload;
public MedicalTestMBean() {
}
@@ -55,15 +58,31 @@ public class MedicalTestMBean extends ManagedBeanBase implements Serializable {
}
public void addImage() {
getRemoteManagerMedicalTest().addImage(this.selected.getId(), this.selected.getHighresimage());
if(this.imageUpload != null ) {
String content = "data:"+imageUpload.getContentType()+";base64," + Base64.getEncoder().encodeToString(imageUpload.getContents());
System.out.println("FILE Content base64: ");
System.out.println(content);
this.selected.setHighresimage(content);
getRemoteManagerMedicalTest().addImage(this.selected.getId(), content);
this.loadMedicalTests();
this.imageUpload = null;
}else {
System.out.println("IMAGEN SUBIDA ES NULA");
}
}
public UploadedFile getImageUpload() {
return imageUpload;
}
public void updateImage() {
getRemoteManagerMedicalTest().updateImage(this.selected.getId(), this.selected.getHighresimage());
public void setImageUpload(UploadedFile imageUpload) {
this.imageUpload = imageUpload;
}
public void removeImage() {
this.selected.setHighresimage(null);
getRemoteManagerMedicalTest().removeImage(this.selected.getId());
this.loadMedicalTests();
}
public MedicalTestTO getSelected() {
@@ -97,8 +116,7 @@ public class MedicalTestMBean extends ManagedBeanBase implements Serializable {
} else {
// Nothing todo
this.medicalTests = new ArrayList<MedicalTestTO>();
}
System.out.println(this.medicalTests);
}
}
public List<PatientTO> getPatients() {
@@ -196,15 +214,21 @@ public class MedicalTestMBean extends ManagedBeanBase implements Serializable {
}
public void setMedicalTestTypeSelected(String val) {
System.out.println("********************************");
System.out.println(val);
System.out.println("********************************");
MedicalTestType mt;
if (val.equals(MedicalTestType.BLOOD_TEST)) {
if (val.equals("BLOOD_TEST")) {
mt = MedicalTestType.BLOOD_TEST;
} else if (val.equals(MedicalTestType.CT_SCAN)) {
} else if (val.equals("CT_SCAN")) {
mt = MedicalTestType.CT_SCAN;
} else {
mt = MedicalTestType.MAGNETIC_RESONANCE_IMAGING;
}
this.selected.setType(mt);
System.out.println("********************************");
System.out.println(this.selected.getType());
System.out.println("********************************");
}
public void save() {