diff --git a/api/src/main/java/org/openmrs/FormField.java b/api/src/main/java/org/openmrs/FormField.java index e1ebc9a6e8e..59f6da8836b 100755 --- a/api/src/main/java/org/openmrs/FormField.java +++ b/api/src/main/java/org/openmrs/FormField.java @@ -12,6 +12,14 @@ import java.io.Serializable; import java.util.Comparator; +import jakarta.persistence.Column; +import jakarta.persistence.Entity; +import jakarta.persistence.GeneratedValue; +import jakarta.persistence.GenerationType; +import jakarta.persistence.Id; +import jakarta.persistence.JoinColumn; +import jakarta.persistence.ManyToOne; +import jakarta.persistence.Table; import org.codehaus.jackson.annotate.JsonIgnore; import org.hibernate.envers.Audited; @@ -24,32 +32,50 @@ * @see org.openmrs.Field */ @Audited +@Entity +@Table(name = "form_field") public class FormField extends BaseChangeableOpenmrsMetadata implements java.io.Serializable, Comparable { public static final long serialVersionUID = 3456L; // Fields - + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + @Column(name = "form_field_id", nullable = false) protected Integer formFieldId; - + + @ManyToOne + @JoinColumn(name = "parent_form_field") protected FormField parent; - + + @ManyToOne(optional = false) + @JoinColumn(name = "form_id", nullable = false) protected Form form; - + + @ManyToOne(optional = false) + @JoinColumn(name = "field_id", nullable = false) protected Field field; - + + @Column(name = "field_number", length = 11) protected Integer fieldNumber; - + + @Column(name = "field_part", length = 5) protected String fieldPart; - + + @Column(name = "page_number", length = 11) protected Integer pageNumber; - + + @Column(name = "min_occurs", length = 11, nullable = false) protected Integer minOccurs; - + + @Column(name = "max_occurs", length = 11) protected Integer maxOccurs; - + + @Column(name = "required", nullable = false) protected Boolean required = false; - + + @Column(name = "sort_weight") protected Float sortWeight; // Constructors diff --git a/api/src/main/resources/hibernate.cfg.xml b/api/src/main/resources/hibernate.cfg.xml index 3a12ab71b2b..dea6b969294 100644 --- a/api/src/main/resources/hibernate.cfg.xml +++ b/api/src/main/resources/hibernate.cfg.xml @@ -30,7 +30,6 @@ - diff --git a/api/src/main/resources/org/openmrs/api/db/hibernate/FormField.hbm.xml b/api/src/main/resources/org/openmrs/api/db/hibernate/FormField.hbm.xml deleted file mode 100644 index 8cbbd9003b8..00000000000 --- a/api/src/main/resources/org/openmrs/api/db/hibernate/FormField.hbm.xml +++ /dev/null @@ -1,79 +0,0 @@ - - - - - - - - - - form_field_form_field_id_seq - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/api/src/test/java/org/openmrs/api/OrderServiceTest.java b/api/src/test/java/org/openmrs/api/OrderServiceTest.java index bb55bb4be7c..707edf8e9fb 100644 --- a/api/src/test/java/org/openmrs/api/OrderServiceTest.java +++ b/api/src/test/java/org/openmrs/api/OrderServiceTest.java @@ -44,6 +44,7 @@ import org.openmrs.DrugOrder; import org.openmrs.Encounter; import org.openmrs.EncounterRole; +import org.openmrs.FormField; import org.openmrs.FreeTextDosingInstructions; import org.openmrs.GlobalProperty; import org.openmrs.Location; @@ -2915,6 +2916,7 @@ public void saveOrder_shouldFailIfTheJavaTypeOfThePreviousOrderDoesNotMatch() th .addAnnotatedClass(ConceptClass.class) .addAnnotatedClass(ConceptMap.class) .addAnnotatedClass(FormResource.class) + .addAnnotatedClass(FormField.class) .addAnnotatedClass(VisitType.class) .addAnnotatedClass(ProviderRole.class) .addAnnotatedClass(EncounterRole.class)