diff --git a/api/src/main/java/org/openmrs/module/drawing/elements/DrawingSubmissionElement.java b/api/src/main/java/org/openmrs/module/drawing/elements/DrawingSubmissionElement.java index 973ebb7..402d300 100644 --- a/api/src/main/java/org/openmrs/module/drawing/elements/DrawingSubmissionElement.java +++ b/api/src/main/java/org/openmrs/module/drawing/elements/DrawingSubmissionElement.java @@ -25,6 +25,9 @@ import org.openmrs.obs.ComplexData; import org.openmrs.web.WebConstants; +import java.text.SimpleDateFormat; +import java.util.Date; + //public class DrawingSubmissionElement { public class DrawingSubmissionElement implements HtmlGeneratorElement, FormSubmissionControllerAction { @@ -71,12 +74,14 @@ public void handleSubmission(FormEntrySession session, HttpServletRequest submis try { AnnotatedImage ai = new AnnotatedImage(DrawingUtil.base64ToImage(encodedImage)); ai.setAnnotations(DrawingUtil.getAnnotations(submission, id)); - if (session.getContext().getMode() == Mode.EDIT && existingObs != null) + if (session.getContext().getMode() == Mode.EDIT && existingObs != null){ session.getSubmissionActions().modifyObs(existingObs, questionConcept, new ComplexData(existingObs.getComplexData().getTitle(), ai), null, null); - else - session.getSubmissionActions().createObs(questionConcept, new ComplexData("drawingObs.png", ai), null, null); - + }else{ + String filename = "drawingObs" + new SimpleDateFormat("yyyyMMddhhmmssSSSSSSS").format(new Date()) + ".png"; + session.getSubmissionActions().createObs(questionConcept, new ComplexData(filename, ai), null, null); + //session.getSubmissionActions().createObs(questionConcept, new ComplexData("drawingObs.png", ai), null, null); + } } catch (Exception e) { log.error("cannot create obs :" + e.getMessage(), e); diff --git a/omod/src/main/java/org/openmrs/module/drawing/web/controller/DrawingWindowController.java b/omod/src/main/java/org/openmrs/module/drawing/web/controller/DrawingWindowController.java index 55a0701..ccf248e 100644 --- a/omod/src/main/java/org/openmrs/module/drawing/web/controller/DrawingWindowController.java +++ b/omod/src/main/java/org/openmrs/module/drawing/web/controller/DrawingWindowController.java @@ -27,6 +27,9 @@ import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestParam; +import java.text.SimpleDateFormat; +import java.util.Date; + @Controller public class DrawingWindowController { @@ -50,7 +53,10 @@ public String saveDrawing(@RequestParam(value = "encodedImage", required = true) o.setEncounter(encounter); AnnotatedImage ai = new AnnotatedImage(DrawingUtil.base64ToImage(encodedImage)); ai.setAnnotations(DrawingUtil.getAnnotations(request, "")); - o.setComplexData(new ComplexData("drawingObs.png", ai)); + String filename = "drawingObs" + new SimpleDateFormat("yyyyMMddhhmmssSSSSSSS").format(new Date()) + ".png"; + o.setComplexData(new ComplexData(filename, ai)); +// o.setComplexData(new ComplexData("drawingObs.png", ai)); + Errors obsErrors = new BindException(o, "obs"); ValidationUtils.invokeValidator(new ObsValidator(), o, obsErrors); if (!obsErrors.hasErrors()) {