/** * duplicates form resources from one form to another * * @param source the form to copy resources from * @param destination the form to copy resources to */ private void duplicateFormResources(Form source, Form destination) { FormService service = Context.getFormService(); for (FormResource resource : service.getFormResourcesForForm(source)) { FormResource newResource = new FormResource(resource); newResource.setForm(destination); service.saveFormResource(newResource); } }
resource.setValue(previous); Context.getFormService().saveFormResource(resource); Date expected = new SimpleDateFormat("yyyy-MM-dd").parse("2010-10-16"); resource.setValue(expected); Context.getFormService().saveFormResource(resource);
@Override public FormResource save(FormResource delegate) { return Context.getFormService().saveFormResource(delegate); }
/** * @throws ParseException * @see FormService#saveFormResource(org.openmrs.FormResource) */ @Test public void saveFormResource_shouldPersistAFormResource() throws ParseException { Form form = Context.getFormService().getForm(1); FormResource resource = new FormResource(); resource.setForm(form); resource.setName("Start Date"); resource.setDatatypeClassname("org.openmrs.customdatatype.datatype.DateDatatype"); Date expected = new SimpleDateFormat("yyyy-MM-dd").parse("2011-10-16"); resource.setValue(expected); Context.getFormService().saveFormResource(resource); Integer resourceId = resource.getFormResourceId(); Context.clearSession(); FormResource actual = Context.getFormService().getFormResource(resourceId); Assert.assertNotNull(actual); Assert.assertEquals(expected, actual.getValue()); }
resource.setDatatypeClassname("org.openmrs.customdatatype.datatype.LongFreeTextDatatype"); resource.setValue(expected); Context.getFormService().saveFormResource(resource);
/** * @throws ParseException * @see FormService#duplicateForm(Form) */ @Test public void duplicateForm_shouldCopyResourcesForOldFormToNewForm() throws ParseException { // save an original resource Form form = Context.getFormService().getForm(1); String name = "Start Date"; FormResource resource = new FormResource(); resource.setForm(form); resource.setName(name); resource.setDatatypeClassname("org.openmrs.customdatatype.datatype.DateDatatype"); Date expected = new SimpleDateFormat("yyyy-MM-dd").parse("2011-10-16"); resource.setValue(expected); resource = Context.getFormService().saveFormResource(resource); Integer resourceId = resource.getFormResourceId(); // duplicate the form Form newForm = Context.getFormService().duplicateForm(form); // get the resource FormResource actual = Context.getFormService().getFormResource(newForm, name); // check it Assert.assertNotNull(actual); Assert.assertEquals(expected, actual.getValue()); }
resource.setValue(previous); resource = Context.getFormService().saveFormResource(resource); Integer resourceId = resource.getFormResourceId();
@RequestMapping(value = "/rest/" + RestConstants.VERSION_1 + "/form/{uuid}/resource/{resourceUuid}/value", method = RequestMethod.POST, headers = { "Content-Type=multipart/form-data" }) @ResponseBody public Object createResourceValue(@PathVariable("uuid") String formUuid, @PathVariable("resourceUuid") String resourceUuid, @RequestParam("value") MultipartFile file, HttpServletRequest request, HttpServletResponse response) throws Exception { //Get the resource FormResource resource = formService.getFormResourceByUuid(resourceUuid); if (resource == null) { throw new IllegalArgumentException("No form resource with uuid " + resourceUuid + " found"); } String clobUuid = clobDatatypeStorageController.create(file, request, response); resource.setValueReferenceInternal(clobUuid); formService.saveFormResource(resource); return new FormResourceResource1_9().asDefaultRep(resource); }
resource.setValue(expected); Context.getFormService().saveFormResource(resource);