修改自测表
This commit is contained in:
@@ -1,12 +1,17 @@
|
|||||||
package com.peanut.modules.common.controller;
|
package com.peanut.modules.common.controller;
|
||||||
|
|
||||||
import com.peanut.common.utils.R;
|
import com.peanut.common.utils.R;
|
||||||
|
import com.peanut.common.utils.ShiroUtils;
|
||||||
|
import com.peanut.modules.common.entity.SelfEvaluationForm;
|
||||||
|
import com.peanut.modules.common.service.SelfEvaluationFormService;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@@ -18,26 +23,54 @@ import java.util.Map;
|
|||||||
@RequestMapping("common/selfEvaluationForm")
|
@RequestMapping("common/selfEvaluationForm")
|
||||||
public class SelfEvaluationFormController {
|
public class SelfEvaluationFormController {
|
||||||
|
|
||||||
/*
|
@Autowired
|
||||||
中国大陆用户
|
private SelfEvaluationFormService selfEvaluationFormService;
|
||||||
SDS的评定结果以标准分来定:
|
|
||||||
标准分小于52分为无抑郁;标准分大于等于52分且小于62分为轻微至轻度抑郁;标准分大于等于62分且小于72分为中至重度抑郁;标准分大于等于72分为重度抑郁。
|
|
||||||
|
|
||||||
其它国家和地区
|
|
||||||
标准分小于50分为无抑郁;标准分大于等于50分且小于60分为轻微至轻度抑郁;标准分大于等于60分且小于70分为中至重度抑郁;标准分大于等于70分为重度抑郁。
|
|
||||||
|
|
||||||
计分规则:
|
//自测表列表
|
||||||
SDS评定采用1—4制记分,评分时间为过去一周内。
|
@RequestMapping("/formList")
|
||||||
正向题,依次评为粗分1、2、3、4分 (1 3 4 7 8 9 10 13 15 19)
|
public R formList() {
|
||||||
反向题,依次评为粗分4、3、2、1分 (2 5 6 11 12 14 16 17 18 20)
|
List res = new ArrayList();
|
||||||
20项相加得到原始分,原始分分乘以1.25以后取整,得到标准分。
|
res.add(yiyu);
|
||||||
|
// res.add(jiaolv);
|
||||||
|
// res.add(zibi);
|
||||||
|
// res.add(zaokuang);
|
||||||
|
// res.add(zilian);
|
||||||
|
return R.ok().put("formList",res);
|
||||||
|
}
|
||||||
|
|
||||||
*/
|
//题目列表
|
||||||
|
@RequestMapping("/formSubjectList")
|
||||||
|
public R formSubjectList(@RequestBody Map<String,Object> params) {
|
||||||
|
List list = null;
|
||||||
|
if ("yiyu".equals(params.get("type").toString())){
|
||||||
|
list = yiyuList;
|
||||||
|
}
|
||||||
|
return R.ok().put("list",list);
|
||||||
|
}
|
||||||
|
|
||||||
//打分
|
//打分
|
||||||
@RequestMapping("/calculationForm")
|
@RequestMapping("/countForm")
|
||||||
public R calculationForm(@RequestBody Map<String,Object> params) {
|
public R countForm(@RequestBody Map<String,Object> params) {
|
||||||
|
R res = R.error();
|
||||||
List<Integer> list = (List) params.get("resList");
|
List<Integer> list = (List) params.get("resList");
|
||||||
|
String country = params.get("country").toString();
|
||||||
|
String city = params.get("city").toString();
|
||||||
|
if ("yiyu".equals(params.get("type").toString())){
|
||||||
|
res = countyiyu(list,country);
|
||||||
|
}
|
||||||
|
SelfEvaluationForm f = new SelfEvaluationForm();
|
||||||
|
f.setType(params.get("type").toString());
|
||||||
|
f.setUserId(ShiroUtils.getUId());
|
||||||
|
f.setCountry(country);
|
||||||
|
f.setCity(city);
|
||||||
|
f.setStatus(res.get("status").toString());
|
||||||
|
selfEvaluationFormService.save(f);
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public R countyiyu(List<Integer> list,String country) {
|
||||||
int total = 0;
|
int total = 0;
|
||||||
for (int i=0;i < list.size(); i++) {
|
for (int i=0;i < list.size(); i++) {
|
||||||
//反向题
|
//反向题
|
||||||
@@ -56,47 +89,117 @@ SDS评定采用1—4制记分,评分时间为过去一周内。
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
total = (int)(total*1.25);
|
total = (int)(total*1.25);
|
||||||
String country = params.get("country").toString();
|
if ("中国".equals(country)){
|
||||||
if ("CN".equals(country)){
|
|
||||||
total = total - 2;
|
total = total - 2;
|
||||||
}
|
}
|
||||||
String res ="无抑郁";
|
String status ="无抑郁";
|
||||||
if (total>=70){
|
if (total>=70){
|
||||||
res ="重度抑郁";
|
status ="重度抑郁";
|
||||||
}else if (total >= 60) {
|
}else if (total >= 60) {
|
||||||
res ="中至重度抑郁";
|
status ="中至重度抑郁";
|
||||||
}else if (total >= 50) {
|
}else if (total >= 50) {
|
||||||
res ="轻微至轻度抑郁";
|
status ="轻微至轻度抑郁";
|
||||||
}
|
}
|
||||||
return R.ok().put("res",res);
|
return R.ok().put("total",total).put("status",status);
|
||||||
}
|
}
|
||||||
|
|
||||||
//自评表题目列表
|
|
||||||
@RequestMapping("/getSelfEvaluationFormList")
|
|
||||||
public R getSelfEvaluationFormList() {
|
|
||||||
List list = new ArrayList();
|
|
||||||
list.add("我觉得闷闷不乐,情绪低沉");
|
|
||||||
list.add("我觉得一天之中早晨最好");
|
private static final Map<String, Object> yiyu;
|
||||||
list.add("我一阵阵哭出来或觉得想哭");
|
// private static final Map<String, Object> jiaolv;
|
||||||
list.add("我晚上睡眠不好");
|
// private static final Map<String, Object> zibi;
|
||||||
list.add("我吃得跟平常一样多");
|
// private static final Map<String, Object> zaokuang;
|
||||||
list.add("我与异性密切接触时和以往一样感到愉快");
|
// private static final Map<String, Object> zilian;
|
||||||
list.add("我发觉我的体重下降");
|
private static final List yiyuList;
|
||||||
list.add("我有便秘的苦恼");
|
// private static final List jiaolvList;
|
||||||
list.add("我心跳比平时快");
|
// private static final List zibiList;
|
||||||
list.add("我无缘无故地感到疲乏");
|
// private static final List zaokuangList;
|
||||||
list.add("我的头脑跟平常一样清楚");
|
// private static final List zilianList;
|
||||||
list.add("觉得经常做的事情并没有困难");
|
|
||||||
list.add("我觉得不安而平静不下来");
|
static {
|
||||||
list.add("我对将来抱有希望");
|
yiyu = new HashMap<>();
|
||||||
list.add("我比平常容易生气激动");
|
yiyu.put("title","SDS抑郁自评量表");
|
||||||
list.add("我觉得作出决定是容易的");
|
yiyu.put("des","抑郁自测量表SDS由W.K.Zung编制于1965年,为美国教育卫生福利部推荐的用于精神药理学研究的量表之一。因使用简便,能相当直观地反映病人抑郁的主观感受及其在治疗中的变化,当前已广泛应用于抑郁测试。");
|
||||||
list.add("我觉得自己是个有用的人,有人需要我");
|
yiyu.put("num","20道题目");
|
||||||
list.add("我的生活过得很有意思");
|
yiyu.put("tip","请仔细阅读每道题目,把意思弄明白,然后根据最近一周的实际感觉,选择适当的选项。");
|
||||||
list.add("我认为如果我死了别人会生活得好些");
|
yiyu.put("cnRes","SDS的评定结果以标准分来定:\n" +
|
||||||
list.add("我平常感兴趣的事我仍然照样感兴趣");
|
"标准分小于52分为无抑郁;\n" +
|
||||||
return R.ok().put("list",list);
|
"标准分大于等于52分且小于62分为轻微至轻度抑郁;\n" +
|
||||||
|
"标准分大于等于62分且小于72分为中至重度抑郁;\n" +
|
||||||
|
"标准分大于等于72分为重度抑郁。\n" +
|
||||||
|
"抑郁评定的临界值为T分52,分值越高,抑郁倾向越明显");
|
||||||
|
yiyu.put("worldRes","SDS的评定结果以标准分来定:\n" +
|
||||||
|
"标准分小于50分为无抑郁;\n" +
|
||||||
|
"标准分大于等于50分且小于60分为轻微至轻度抑郁;\n" +
|
||||||
|
"标准分大于等于60分且小于70分为中至重度抑郁;\n" +
|
||||||
|
"标准分大于等于70分为重度抑郁。\n" +
|
||||||
|
"抑郁评定的临界值为T分50,分值越高,抑郁倾向越明显。");
|
||||||
|
yiyu.put("role","SDS评定采用1—4制记分,评分时间为过去一周内。\n" +
|
||||||
|
"正向题,依次评为粗分1、2、3、4分 (1 3 4 7 8 9 10 13 15 19)\n" +
|
||||||
|
"反向题,依次评为粗分4、3、2、1分 (2 5 6 11 12 14 16 17 18 20)\n" +
|
||||||
|
"20项相加得到原始分,原始分分乘以1.25以后取整,得到标准分。");
|
||||||
|
yiyuList = new ArrayList();
|
||||||
|
yiyuList.add("我觉得闷闷不乐,情绪低沉");
|
||||||
|
yiyuList.add("我觉得一天之中早晨最好");
|
||||||
|
yiyuList.add("我一阵阵哭出来或觉得想哭");
|
||||||
|
yiyuList.add("我晚上睡眠不好");
|
||||||
|
yiyuList.add("我吃得跟平常一样多");
|
||||||
|
yiyuList.add("我与异性密切接触时和以往一样感到愉快");
|
||||||
|
yiyuList.add("我发觉我的体重下降");
|
||||||
|
yiyuList.add("我有便秘的苦恼");
|
||||||
|
yiyuList.add("我心跳比平时快");
|
||||||
|
yiyuList.add("我无缘无故地感到疲乏");
|
||||||
|
yiyuList.add("我的头脑跟平常一样清楚");
|
||||||
|
yiyuList.add("觉得经常做的事情并没有困难");
|
||||||
|
yiyuList.add("我觉得不安而平静不下来");
|
||||||
|
yiyuList.add("我对将来抱有希望");
|
||||||
|
yiyuList.add("我比平常容易生气激动");
|
||||||
|
yiyuList.add("我觉得作出决定是容易的");
|
||||||
|
yiyuList.add("我觉得自己是个有用的人,有人需要我");
|
||||||
|
yiyuList.add("我的生活过得很有意思");
|
||||||
|
yiyuList.add("我认为如果我死了别人会生活得好些");
|
||||||
|
yiyuList.add("我平常感兴趣的事我仍然照样感兴趣");
|
||||||
|
|
||||||
|
// jiaolv = new HashMap<>();
|
||||||
|
// jiaolv.put("title","焦虑量表");
|
||||||
|
// jiaolv.put("des","你焦虑吗");
|
||||||
|
// jiaolv.put("num","20道题目");
|
||||||
|
// jiaolv.put("tip","请仔细阅读每道题目,把意思弄明白,然后根据最近一周的实际感觉,选择适当的选项。");
|
||||||
|
// jiaolv.put("cnRes","否");
|
||||||
|
// jiaolv.put("worldRes","否");
|
||||||
|
// jiaolv.put("role","大于0就焦虑");
|
||||||
|
|
||||||
|
// zibi = new HashMap<>();
|
||||||
|
// zibi.put("title","自闭量表");
|
||||||
|
// zibi.put("des","你自闭了吗");
|
||||||
|
// zibi.put("num","20道题目");
|
||||||
|
// zibi.put("tip","请仔细阅读每道题目,把意思弄明白,然后根据最近一周的实际感觉,选择适当的选项。");
|
||||||
|
// zibi.put("cnRes","否");
|
||||||
|
// zibi.put("worldRes","否");
|
||||||
|
// zibi.put("role","大于0就自闭");
|
||||||
|
|
||||||
|
// zaokuang = new HashMap<>();
|
||||||
|
// zaokuang.put("title","躁狂量表");
|
||||||
|
// zaokuang.put("des","不要躁狂");
|
||||||
|
// zaokuang.put("num","20道题目");
|
||||||
|
// zaokuang.put("tip","请仔细阅读每道题目,把意思弄明白,然后根据最近一周的实际感觉,选择适当的选项。");
|
||||||
|
// zaokuang.put("cnRes","否");
|
||||||
|
// zaokuang.put("worldRes","否");
|
||||||
|
// zaokuang.put("role","大于0就躁狂");
|
||||||
|
|
||||||
|
// zilian = new HashMap<>();
|
||||||
|
// zilian.put("title","自恋型人格量表");
|
||||||
|
// zilian.put("des","我很帅");
|
||||||
|
// zilian.put("num","20道题目");
|
||||||
|
// zilian.put("tip","请仔细阅读每道题目,把意思弄明白,然后根据最近一周的实际感觉,选择适当的选项。");
|
||||||
|
// zilian.put("cnRes","否");
|
||||||
|
// zilian.put("worldRes","否");
|
||||||
|
// zilian.put("role","大于0就自恋");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,9 @@
|
|||||||
|
package com.peanut.modules.common.dao;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import com.peanut.modules.common.entity.SelfEvaluationForm;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
|
@Mapper
|
||||||
|
public interface SelfEvaluationFormDao extends BaseMapper<SelfEvaluationForm> {
|
||||||
|
}
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
package com.peanut.modules.common.entity;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@TableName("self_evaluation_form")
|
||||||
|
public class SelfEvaluationForm implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L; @TableId
|
||||||
|
|
||||||
|
private Integer id;
|
||||||
|
private String type;
|
||||||
|
private String country;
|
||||||
|
private String city;
|
||||||
|
private String status;
|
||||||
|
private Integer userId;
|
||||||
|
private Date createTime;
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
package com.peanut.modules.common.service;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
import com.peanut.modules.common.entity.SelfEvaluationForm;
|
||||||
|
|
||||||
|
public interface SelfEvaluationFormService extends IService<SelfEvaluationForm> {
|
||||||
|
}
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
package com.peanut.modules.common.service.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import com.peanut.modules.common.dao.SelfEvaluationFormDao;
|
||||||
|
import com.peanut.modules.common.entity.SelfEvaluationForm;
|
||||||
|
import com.peanut.modules.common.service.SelfEvaluationFormService;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
@Slf4j
|
||||||
|
@Service("commonSelfEvaluationFormService")
|
||||||
|
public class SelfEvaluationFormServiceImpl extends ServiceImpl<SelfEvaluationFormDao, SelfEvaluationForm> implements SelfEvaluationFormService {
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user