Browse Source

修改提交返回值

master
ma 4 years ago
parent
commit
9e2359e8f3
  1. 8
      src/main/java/com/ccsens/carbasics/api/QuestionnaireController.java
  2. 15
      src/main/java/com/ccsens/carbasics/bean/vo/QuestionnaireVo.java
  3. 9
      src/main/java/com/ccsens/carbasics/persist/dao/QuestionnaireDetailDao.java
  4. 3
      src/main/java/com/ccsens/carbasics/service/FirstAidService.java
  5. 2
      src/main/java/com/ccsens/carbasics/service/IQuestionnaireService.java
  6. 30
      src/main/java/com/ccsens/carbasics/service/QuestionnaireService.java
  7. 20
      src/main/resources/mapper_dao/QuestionnaireDetailDao.xml

8
src/main/java/com/ccsens/carbasics/api/QuestionnaireController.java

@ -85,11 +85,11 @@ public class QuestionnaireController {
@MustLogin
@ApiOperation(value = "提交问卷", notes = "")
@RequestMapping(value = "/submit", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<Long> submitQuestionnaire(@ApiParam @Validated @RequestBody QueryDto<QuestionnaireDto.SubmitQuestionnaire> params) throws Exception{
public JsonResponse<QuestionnaireVo.SubmitInfo> submitQuestionnaire(@ApiParam @Validated @RequestBody QueryDto<QuestionnaireDto.SubmitQuestionnaire> params) throws Exception{
log.info("提交问卷开始{}",params);
Long projectId = questionnaireService.submitQuestionnaire(params.getParam(), params.getUserId(), params.getPhone());
log.info("提交问卷结束,项目id:{}",projectId);
return JsonResponse.newInstance().ok(projectId);
QuestionnaireVo.SubmitInfo submitInfo= questionnaireService.submitQuestionnaire(params.getParam(), params.getUserId(), params.getPhone());
log.info("提交问卷结束,项目id:{}",submitInfo);
return JsonResponse.newInstance().ok(submitInfo);
}
@MustLogin

15
src/main/java/com/ccsens/carbasics/bean/vo/QuestionnaireVo.java

@ -71,4 +71,19 @@ public class QuestionnaireVo {
@ApiModelProperty("问卷id")
private Long id;
}
@Data
@ApiModel("提交后的提示信息")
public static class SubmitInfo {
@ApiModelProperty("项目id")
private Long projectId;
@ApiModelProperty("类型(0-创建,1-加入)")
private Byte type;
@ApiModelProperty("姓名")
private String name;
@ApiModelProperty("科室")
private String department;
@ApiModelProperty("职务")
private String position;
}
}

9
src/main/java/com/ccsens/carbasics/persist/dao/QuestionnaireDetailDao.java

@ -64,5 +64,12 @@ public interface QuestionnaireDetailDao extends QuestionnaireDetailMapper {
* @param name 医院名称
* @return 大于0为已提交
*/
Integer queryIsSubmit(@Param("name") String name);
Long queryIsSubmit(@Param("name") String name);
/**
* 查询提交人的信息
* @param submitId 问卷详情id
* @return 提交人信息
*/
List<QuestionnaireVo.QuestionnaireInfo> querySubmitter(@Param("submitId") Long submitId);
}

3
src/main/java/com/ccsens/carbasics/service/FirstAidService.java

@ -178,9 +178,6 @@ public class FirstAidService implements IFirstAidService{
firstAidMember.setId(snowflake.nextId());
firstAidMember.setFirstAidId(firstAid.getId());
firstAidMember.setCreateUserId(userId);
if(position == 1){
firstAidMember.setRecordUserId(userId);
}
firstAidMemberDao.insertSelective(firstAidMember);
//添加急救日志表(创建信息)
FirstAidLog firstAidLog = new FirstAidLog();

2
src/main/java/com/ccsens/carbasics/service/IQuestionnaireService.java

@ -54,7 +54,7 @@ public interface IQuestionnaireService {
* @param param 问卷详情id
* @param userId 用户id
*/
Long submitQuestionnaire(QuestionnaireDto.SubmitQuestionnaire param, Long userId,String phone) throws Exception;
QuestionnaireVo.SubmitInfo submitQuestionnaire(QuestionnaireDto.SubmitQuestionnaire param, Long userId,String phone) throws Exception;
/**
* 为用户创建问卷详情

30
src/main/java/com/ccsens/carbasics/service/QuestionnaireService.java

@ -149,7 +149,7 @@ public class QuestionnaireService implements IQuestionnaireService{
@Override
public Long submitQuestionnaire(QuestionnaireDto.SubmitQuestionnaire param, Long userId,String phone) throws Exception {
public QuestionnaireVo.SubmitInfo submitQuestionnaire(QuestionnaireDto.SubmitQuestionnaire param, Long userId,String phone) throws Exception {
QuestionnaireDetail questionnaireDetail = questionnaireDetailDao.selectByPrimaryKey(param.getDetailId());
if (ObjectUtil.isNull(questionnaireDetail)) {
throw new BaseException(DefaultCodeError.QUESTIONNAIRE_DETAIL_ERROR);
@ -167,11 +167,24 @@ public class QuestionnaireService implements IQuestionnaireService{
}
}
//2.校验是否已经有提交
Integer submitNum = questionnaireDetailDao.queryIsSubmit(param.getName());
if (0 < submitNum) {
Long submitId = questionnaireDetailDao.queryIsSubmit(param.getName());
if (ObjectUtil.isNotNull(submitId)) {
//加入项目
Long projectId = createHospitalOfNotExit(phone, userId);
return projectId;
List<QuestionnaireVo.QuestionnaireInfo> infoList = questionnaireDetailDao.querySubmitter(submitId);
HashMap<String, String> codeAndAnswer = new HashMap<>();
if (ObjectUtil.isNotNull(infoList)) {
for (QuestionnaireVo.QuestionnaireInfo questionnaireInfo : infoList) {
codeAndAnswer.put(questionnaireInfo.getCode(),questionnaireInfo.getAnswer());
}
}
QuestionnaireVo.SubmitInfo submitInfo = new QuestionnaireVo.SubmitInfo();
submitInfo.setProjectId(projectId);
submitInfo.setType((byte)1);
submitInfo.setDepartment(codeAndAnswer.get(Constant.BasicInformation.department.code));
submitInfo.setName(codeAndAnswer.get(Constant.BasicInformation.person.code));
submitInfo.setPosition(codeAndAnswer.get(Constant.BasicInformation.position.code));
return submitInfo;
}
QuestionnaireDetail detail = new QuestionnaireDetail();
detail.setId(param.getDetailId());
@ -179,7 +192,10 @@ public class QuestionnaireService implements IQuestionnaireService{
questionnaireDetailDao.updateByPrimaryKeySelective(detail);
//创建项目
Long projectId = createHospitalOfNotExit(phone,userId);
return projectId;
QuestionnaireVo.SubmitInfo submitInfo = new QuestionnaireVo.SubmitInfo();
submitInfo.setProjectId(projectId);
submitInfo.setType((byte)0);
return submitInfo;
}
@ -390,9 +406,9 @@ public class QuestionnaireService implements IQuestionnaireService{
ProjectDto.SaveProjectDto saveProjectDto = new ProjectDto.SaveProjectDto();
saveProjectDto.setId(copyProjectInfo.getId());
saveProjectDto.setName(copyProject.getProjectName());
saveProjectDto.setStartTime(System.currentTimeMillis()-315360000000L);
saveProjectDto.setStartTime(System.currentTimeMillis());
saveProjectDto.setEndTime(System.currentTimeMillis()+315360000000L);
saveProjectDto.setUrl(PropUtil.path);
saveProjectDto.setUrl(PropUtil.domain);
Set<Long> userIds = new HashSet<>();
userIds.add(userId);
saveProjectDto.setUserIdList(userIds);

20
src/main/resources/mapper_dao/QuestionnaireDetailDao.xml

@ -89,9 +89,9 @@
AND cp.rec_status = 0
</select>
<select id="queryIsSubmit" resultType="java.lang.Integer">
<select id="queryIsSubmit" resultType="Long">
SELECT
COUNT(qd.id)
qd.id
FROM
t_qcp_questionnaire_detail AS qd
LEFT JOIN t_qcp_questionnaire_record AS qr ON qd.id = qr.questionnaire_detail_id
@ -102,4 +102,20 @@
AND qr.rec_status = 0
</select>
<select id="querySubmitter" resultType="com.ccsens.carbasics.bean.vo.QuestionnaireVo$QuestionnaireInfo">
SELECT
qrr.question_code AS code,
qrr.answer
FROM
t_qcp_questionnaire_detail AS qdd
LEFT JOIN t_qcp_questionnaire_record AS qrr ON qdd.id = qrr.questionnaire_detail_id
WHERE
qrr.questionnaire_detail_id = #{submitId}
AND qrr.question_code IN (
'HOS-MAN',
'HOS-KESHI',
'HOS-ZHIWU'
)
</select>
</mapper>

Loading…
Cancel
Save