0

When I submit the form I want to collect the userConsult information. I then call my repository and call the Insert method. inside the brackets I include e.g.

userRepo.insertoIntoDB(userConsult.getepidemiology);
(I have left the other get methods as it is so long.

I run this and when I check my database I notice that only the fields I didnt use userConsult have items inside.

I think there is something to do with my options/select tag however I am unsure why there is nothing inside it. It works fine when I use input tags. I am using thymeleaf.

The Insert function works fine if I give it test inputs myself.

Please see my code below:

    <form method="POST" th:action="@{/saveConsultation}" th:object="${userConsul}">
        <label for="epidemiology">EPIDEMIOLOGY:</label>
            <select id="epidemiology">
                <option th:each="data : ${consultationData}"
                    th:text="${data.epidemiology}"
                    th:value="${data.epidemiology}">
            </select>
            
                    <a th:href="@{/saveConsultation/{id}(id = ${patient.patientNumber})}"    type="submit">Submit</a>


        <input type="reset" value="Reset diagnosis">
    </form><br>

Consultation Controller:

    @RequestMapping("/saveConsultation/{id}")
public String saveConsultation(@ModelAttribute("userConsul") userConsul userConsul,HttpSession session,Model model,@PathVariable("id") int patientID){
    Object USER_SESSION = session.getAttribute("USER_SESSION");
    if (USER_SESSION == null) {
        session.setAttribute("message", "You need to login to access the Consultation page");
        return "redirect:/login";
    }
    User OldUser = (User) USER_SESSION;

    int userId = OldUser.getID();



    userRepository.insertIntoUserCase(userConsul.getEpidemiology(),userConsul.getComplaints(),userConsul.getExamination(),userConsul.getDiagnosis1(),userConsul.getDiagnosis2(),userConsul.getDiagnosis3(),patientID,userId);

    return "test";

}

0 Answers0