You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

72 lines
3.7 KiB

package com.ccsens.carbasics.api;
import com.ccsens.carbasics.bean.dto.QuestionnaireDto;
import com.ccsens.carbasics.bean.po.Questionnaire;
import com.ccsens.carbasics.bean.vo.QuestionnaireVo;
import com.ccsens.carbasics.service.IQuestionnaireService;
import com.ccsens.cloudutil.annotation.MustLogin;
import com.ccsens.common.bean.dto.CPluginDto;
import com.ccsens.util.JsonResponse;
import com.ccsens.util.bean.dto.QueryDto;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
@Api(tags = "问查调卷相关接口" , description = "")
@RestController
@RequestMapping("/questionnaire")
@Slf4j
public class QuestionnaireController {
@Resource
private IQuestionnaireService questionnaireService;
@MustLogin
@ApiOperation(value = "查询地区", notes = "")
@RequestMapping(value = "/area", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<QuestionnaireVo.AreaInfo>> queryPatientList(@ApiParam @Validated @RequestBody QueryDto<QuestionnaireDto.QueryArea> params) throws Exception{
log.info("查询地区开始{}",params);
List<QuestionnaireVo.AreaInfo> areaInfoList = questionnaireService.queryArea(params.getParam(),params.getUserId());
log.info("查询地区结束{}",areaInfoList);
return JsonResponse.newInstance().ok(areaInfoList);
}
@MustLogin
@ApiOperation(value = "查询问卷", notes = "")
@RequestMapping(value = "/query", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<QuestionnaireVo.QuestionnaireInfo> queryQuestionnaire(@ApiParam @Validated @RequestBody QueryDto<QuestionnaireDto.QueryQuestionnaire> params) throws Exception{
log.info("查询问卷开始{}",params);
QuestionnaireVo.QuestionnaireInfo questionnaireInfo = questionnaireService.queryQuestionnaire(params.getParam(),params.getUserId());
log.info("查询问卷结束{}",questionnaireInfo);
return JsonResponse.newInstance().ok(questionnaireInfo);
}
@MustLogin
@ApiOperation(value = "保存调查问卷", notes = "")
@RequestMapping(value = "/save", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse saveQuestionnaire(@ApiParam @Validated @RequestBody QueryDto<QuestionnaireDto.SaveQuestionnaire> params) throws Exception{
log.info("保存调查问卷开始{}",params);
questionnaireService.saveQuestionnaire(params.getParam(),params.getUserId());
log.info("保存调查问卷结束");
return JsonResponse.newInstance().ok();
}
@MustLogin
@ApiOperation(value = "查询医院是否填写了调查问卷", notes = "")
@RequestMapping(value = "/queryNotWrite", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<QuestionnaireVo.WriteStatus>> queryNotWrite(@ApiParam @Validated @RequestBody QueryDto<QuestionnaireDto.QueryNotWrite> params) throws Exception{
log.info("保存调查问卷开始{}",params);
List<QuestionnaireVo.WriteStatus> writeStatusList = questionnaireService.queryNotWrite(params.getParam(),params.getUserId());
log.info("保存调查问卷结束{}",writeStatusList);
return JsonResponse.newInstance().ok(writeStatusList);
}
}