小程序满意度

This commit is contained in:
zhangheng 2024-04-29 15:12:23 +08:00
parent 5aa0e7b730
commit 190cab7e7e
4 changed files with 22 additions and 28 deletions

View File

@ -7,7 +7,6 @@ import com.xinelu.manage.domain.patienttaskexecuterecord.PatientTaskExecuteRecor
import com.xinelu.manage.dto.patientquestionsubmitresult.PatientQuestionSubmitResultDTO;
import com.xinelu.mobile.service.homepage.HomePageService;
import com.xinelu.mobile.vo.myfollowup.MyFollowUpVO;
import com.xinelu.mobile.vo.satisfactionquestionnaire.SatisfactionQuestionnaire;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
@ -81,8 +80,6 @@ public class HomePageController extends BaseController {
*/
@GetMapping("/satisfactionQuestionnaire")
private TableDataInfo satisfactionQuestionnaire(Long residentId) {
startPage();
List<SatisfactionQuestionnaire> list = homePageService.satisfactionQuestionnaire(residentId);
return getDataTable(list);
return homePageService.satisfactionQuestionnaire(residentId);
}
}

View File

@ -66,5 +66,5 @@ public interface HomePageService {
* @param residentId 居民信息
* @return SatisfactionQuestionnaire
*/
List<SatisfactionQuestionnaire> satisfactionQuestionnaire(Long residentId);
TableDataInfo satisfactionQuestionnaire(Long residentId);
}

View File

@ -1,6 +1,5 @@
package com.xinelu.mobile.service.homepage.Impl;
import com.xinelu.common.constant.TaskCreateTypeConstant;
import com.xinelu.common.core.domain.AjaxResult;
import com.xinelu.common.core.page.TableDataInfo;
import com.xinelu.common.enums.NodeExecuteStatusEnum;
@ -17,19 +16,16 @@ import com.xinelu.manage.domain.patienttaskexecuterecord.PatientTaskExecuteRecor
import com.xinelu.manage.domain.questioninfo.QuestionInfo;
import com.xinelu.manage.domain.questionsubject.QuestionSubject;
import com.xinelu.manage.domain.scriptInfo.ScriptInfo;
import com.xinelu.manage.domain.signpatientmanageroutenode.SignPatientManageRouteNode;
import com.xinelu.manage.dto.patientquestionoptionresult.PatientQuestionOptionResultDTO;
import com.xinelu.manage.dto.patientquestionsubjectresult.PatientQuestionSubjectResultDTO;
import com.xinelu.manage.dto.patientquestionsubmitresult.PatientQuestionSubmitResultDTO;
import com.xinelu.manage.mapper.patientquestionoptionresult.PatientQuestionOptionResultMapper;
import com.xinelu.manage.mapper.patientquestionsubjectresult.PatientQuestionSubjectResultMapper;
import com.xinelu.manage.mapper.patientquestionsubmitresult.PatientQuestionSubmitResultMapper;
import com.xinelu.manage.mapper.patienttaskexecuterecord.PatientTaskExecuteRecordMapper;
import com.xinelu.manage.mapper.questioninfo.QuestionInfoMapper;
import com.xinelu.manage.mapper.questionsubject.QuestionSubjectMapper;
import com.xinelu.manage.mapper.questionsubjectoption.QuestionSubjectOptionMapper;
import com.xinelu.manage.mapper.scriptInfo.ScriptInfoMapper;
import com.xinelu.manage.mapper.signpatientmanageroutenode.SignPatientManageRouteNodeMapper;
import com.xinelu.manage.vo.questionInfo.QuestionVO;
import com.xinelu.manage.vo.questionsubject.QuestionSubjectVO;
import com.xinelu.manage.vo.questionsubjectoption.QuestionSubjectOptionVO;
@ -74,10 +70,6 @@ public class HomePageServiceImpl implements HomePageService {
private PatientQuestionSubjectResultMapper patientQuestionSubjectResultMapper;
@Resource
private PatientQuestionOptionResultMapper patientQuestionOptionResultMapper;
@Resource
private SignPatientManageRouteNodeMapper signPatientManageRouteNodeMapper;
@Resource
private PatientTaskExecuteRecordMapper patientTaskExecuteRecordMapper;
/**
* 我的随访列表
@ -201,7 +193,7 @@ public class HomePageServiceImpl implements HomePageService {
if (patientQuestionSubjectResultMapper.saveQuestionSubjectList(patientQuestionSubjectResults) <= 0) {
throw new ServiceException("新增患者问卷题目提交结果失败");
}
if (CollectionUtils.isNotEmpty(patientQuestionOptionResults)) {
if (CollectionUtils.isEmpty(patientQuestionOptionResults)) {
return AjaxResult.success();
}
// 初始化患者问卷题目选项提交结果
@ -240,7 +232,16 @@ public class HomePageServiceImpl implements HomePageService {
* @return SatisfactionQuestionnaire
*/
@Override
public List<SatisfactionQuestionnaire> satisfactionQuestionnaire(Long residentId) {
return homePageMapper.satisfactionQuestionnaireByResidentId(residentId, QuestionTypeEnum.SATISFACTION_QUESTIONNAIRE.getInfo(), QuestionnaireStatusEnum.PUBLISHED.getInfo());
public TableDataInfo satisfactionQuestionnaire(Long residentId) {
pageServiceUtil.startPage();
List<SatisfactionQuestionnaire> satisfactionQuestionnaires = homePageMapper.satisfactionQuestionnaireByResidentId(residentId, QuestionTypeEnum.SATISFACTION_QUESTIONNAIRE.getInfo(), QuestionnaireStatusEnum.PUBLISHED.getInfo());
for (SatisfactionQuestionnaire satisfactionQuestionnaire : satisfactionQuestionnaires) {
if (Objects.isNull(satisfactionQuestionnaire.getPatientQuestionSubmitResultId())) {
satisfactionQuestionnaire.setSign("incomplete");
} else {
satisfactionQuestionnaire.setSign("completed");
}
}
return pageServiceUtil.getDataTable(satisfactionQuestionnaires);
}
}

View File

@ -67,23 +67,19 @@
<select id="satisfactionQuestionnaireByResidentId"
resultType="com.xinelu.mobile.vo.satisfactionquestionnaire.SatisfactionQuestionnaire">
SELECT qi.id templateId,
SELECT qi.id templateId,
qi.questionnaire_name,
qi.create_time,
(SELECT id
FROM patient_question_submit_result
WHERE resident_id = #{residentId}
AND question_info_id = templateId) patientQuestionSubmitResultId,
pqsr.create_time executeTime,
pqsr.resident_id,
CASE
WHEN pqsr.resident_id IS NULL THEN 'incomplete'
WHEN pqsr.resident_id = #{residentId} THEN 'completed'
END AS sign
AND question_info_id = qi.id) patientQuestionSubmitResultId,
(SELECT create_time
FROM patient_question_submit_result
WHERE id = patientQuestionSubmitResultId) executeTime
FROM question_info qi
LEFT JOIN patient_question_submit_result pqsr ON pqsr.question_info_id = qi.id
WHERE qi.question_type = #{questionType}
and qi.questionnaire_status = #{questionnaireStatus}
GROUP BY qi.id
ORDER BY pqsr.create_time DESC
AND qi.questionnaire_status = #{questionnaireStatus}
ORDER BY qi.create_time DESC
</select>
</mapper>