老年人能力评估系统web端#5

对表的逻辑进行了优化,有些内容自动生成,不需要填写,如日常生活表中总得分按选择计算,后对其进行分级

package com.xxx.web;

import com.xxx.pojo.Daliy;
import com.xxx.service.DaliyService;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet("/addDaily")
public class DailyServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
    private DaliyService daliyService = new DaliyService();

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        request.setCharacterEncoding("utf-8");
        // 获取前端表单数据
        // 获取所有的参数
        String id = request.getParameter("id");
        String eating = request.getParameter("eating");
        String bathing = request.getParameter("bathing");
        String grooming = request.getParameter("grooming");
        String dressing = request.getParameter("dressing");
        String bowelControl = request.getParameter("bowel_control");
        String bladderControl = request.getParameter("bladder_control");
        String toileting = request.getParameter("toileting");
        String bedChairTransfer = request.getParameter("bed_chair_transfer");
        String walking = request.getParameter("walking");
        String stairs = request.getParameter("stairs");

// 计算总分:假设每个项目的值是一个整数
        int totalScore = Integer.parseInt(eating) + Integer.parseInt(bathing) + Integer.parseInt(grooming) +
                Integer.parseInt(dressing) + Integer.parseInt(bowelControl) + Integer.parseInt(bladderControl) +
                Integer.parseInt(toileting) + Integer.parseInt(bedChairTransfer) + Integer.parseInt(walking) +
                Integer.parseInt(stairs);

// 根据 totalScore 设置 activityLevel
        String activityLevel;
        if (totalScore == 100) {
            activityLevel = "0"; // 能力完好
        } else if (totalScore >= 65 && totalScore <= 95) {
            activityLevel = "1"; // 轻度受损
        } else if (totalScore >= 45 && totalScore <= 60) {
            activityLevel = "2"; // 中度受损
        } else if (totalScore <= 40) {
            activityLevel = "3"; // 重度受损
        } else {
            activityLevel = "Unknown"; // 无法确定的情况
        }

// 打印 totalScore 和 activityLevel
        System.out.println("Total Score: " + totalScore);
        System.out.println("Activity Level: " + activityLevel);


        // 创建 Daliy 对象
        Daliy daliy = new Daliy();
        daliy.setId(id);
        daliy.setEating(eating);
        daliy.setBathing(bathing);
        daliy.setGrooming(grooming);
        daliy.setDressing(dressing);
        daliy.setBowel_control(bowelControl);
        daliy.setBladder_control(bladderControl);
        daliy.setToileting(toileting);
        daliy.setBed_chair_transfer(bedChairTransfer);
        daliy.setWalking(walking);
        daliy.setStairs(stairs);
        daliy.setTotal_score(String.valueOf(totalScore));
        daliy.setActivity_level(activityLevel);

        // 调用 service 保存数据
        daliyService.add(daliy);

        // 重定向到一个成功页面或展示录入的信息
        response.sendRedirect("menu.jsp");
    }

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        this.doPost(req, resp);
    }
}

package com.xxx.web;

import com.xxx.pojo.Mental;
import com.xxx.service.MentalService;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;

@WebServlet("/mentalServlet")
public class MentalServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;

    // 创建MentalService实例
    private MentalService mentalService = new MentalService();

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // 如果是GET请求,跳转到输入页面
        this.doPost(request, response);
    }

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        request.setCharacterEncoding("utf-8");
        // 获取表单数据
        // 获取所有的参数
        String id = request.getParameter("id");
        String clock_test = request.getParameter("clock_test");
        String recall_words = request.getParameter("recall_words");
        String aggression_behavior = request.getParameter("aggression_behavior");
        String depression_symptoms = request.getParameter("depression_symptoms");

// 计算总分:假设每个项目的值是一个整数
        int totalScore = Integer.parseInt(clock_test) + Integer.parseInt(recall_words) + Integer.parseInt(aggression_behavior) +
                Integer.parseInt(depression_symptoms);

// 根据 totalScore 设置 mental_state_level
        String mental_state_level;
        if (totalScore == 0) {
            mental_state_level = "0"; // 能力完好
        } else if (totalScore == 1) {
            mental_state_level = "1"; // 轻度受损
        } else if (totalScore == 2 || totalScore == 3) {
            mental_state_level = "2"; // 中度受损
        } else if (totalScore >= 4 && totalScore <= 6) {
            mental_state_level = "3"; // 重度受损
        } else {
            mental_state_level = "Unknown"; // 无法确定的情况
        }



        // 创建Mental对象并填充数据
        Mental mental = new Mental();
        mental.setId(id);
        mental.setClock_test(clock_test);
        mental.setRecall_words(recall_words);
        mental.setAggression_behavior(aggression_behavior);
        mental.setDepression_symptoms(depression_symptoms);
        mental.setTotal_score(String.valueOf(totalScore));
        mental.setMental_state_level(mental_state_level);

        // 调用MentalService的add方法插入数据
        mentalService.add(mental);

        // 插入成功后跳转到确认页面或显示成功信息
        System.out.println(mental);
        response.sendRedirect("menu.jsp");  // 或者返回到输入页面,或显示成功信息
    }
}

package com.xxx.web;

import com.xxx.pojo.Social;
import com.xxx.service.SocialService;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet("/addSocial")
public class SocialServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
    private SocialService socialService = new SocialService();

    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        request.setCharacterEncoding("utf-8");
        // 获取表单数据
        // 获取所有的参数
        String id = request.getParameter("id");
        String lifeAbility = request.getParameter("life_ability");
        String workAbility = request.getParameter("work_ability");
        String timeSpaceOrientation = request.getParameter("time_space_orientation");
        String personOrientation = request.getParameter("person_orientation");
        String socialInteractionAbility = request.getParameter("social_interaction_ability");

// 计算总分:假设每个项目的值是一个整数
        int totalScore = Integer.parseInt(lifeAbility) + Integer.parseInt(workAbility) + Integer.parseInt(timeSpaceOrientation) +
                Integer.parseInt(personOrientation) + Integer.parseInt(socialInteractionAbility);

// 根据 totalScore 设置 participationLevel
        String participationLevel;
        if (totalScore >= 0 && totalScore <= 2) {
            participationLevel = "0"; // 能力完好
        } else if (totalScore >= 3 && totalScore <= 7) {
            participationLevel = "1"; // 轻度受损
        } else if (totalScore >= 8 && totalScore <= 13) {
            participationLevel = "2"; // 中度受损
        } else if (totalScore >= 14 && totalScore <= 20) {
            participationLevel = "3"; // 重度受损
        } else {
            participationLevel = "Unknown"; // 总分不在规定范围内
        }

// 打印 totalScore 和 participationLevel
        System.out.println("Total Score: " + totalScore);
        System.out.println("Participation Level: " + participationLevel);


        // 创建Social对象
        Social social = new Social();
        social.setId(id);
        social.setLife_ability(lifeAbility);
        social.setWork_ability(workAbility);
        social.setTime_space_orientation(timeSpaceOrientation);
        social.setPerson_orientation(personOrientation);
        social.setSocial_interaction_ability(socialInteractionAbility);
        social.setTotal_score(String.valueOf(totalScore));
        social.setParticipation_level(participationLevel);

        // 调用Service层方法
        socialService.add(social);
        System.out.println(social.toString());

        // 重定向到成功页面
        response.sendRedirect("menu.jsp");
    }

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        this.doPost(req, resp);
    }
}

使用默认值进行测试:

生成成功

posted @ 2025-02-19 21:29  花落水无痕  阅读(23)  评论(0)    收藏  举报