diff --git a/src/main/java/com/ccsens/carbasics/api/QuestionnaireController.java b/src/main/java/com/ccsens/carbasics/api/QuestionnaireController.java index 412aaf7..af95e92 100644 --- a/src/main/java/com/ccsens/carbasics/api/QuestionnaireController.java +++ b/src/main/java/com/ccsens/carbasics/api/QuestionnaireController.java @@ -69,4 +69,14 @@ public class QuestionnaireController { log.info("保存调查问卷结束{}",writeStatusList); return JsonResponse.newInstance().ok(writeStatusList); } + + @MustLogin + @ApiOperation(value = "查询职位", notes = "") + @RequestMapping(value = "/queryPosition", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"}) + public JsonResponse> queryPosition(@ApiParam @Validated @RequestBody QueryDto params) throws Exception{ + log.info("查询职位开始{}",params); + List positionInfoList = questionnaireService.queryPosition(params.getUserId()); + log.info("查询职位结束{}",positionInfoList); + return JsonResponse.newInstance().ok(positionInfoList); + } } diff --git a/src/main/java/com/ccsens/carbasics/bean/vo/QuestionnaireVo.java b/src/main/java/com/ccsens/carbasics/bean/vo/QuestionnaireVo.java index 81a2989..f1f8951 100644 --- a/src/main/java/com/ccsens/carbasics/bean/vo/QuestionnaireVo.java +++ b/src/main/java/com/ccsens/carbasics/bean/vo/QuestionnaireVo.java @@ -5,8 +5,6 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; - -import javax.validation.constraints.NotNull; import java.util.List; @Data @@ -64,4 +62,12 @@ public class QuestionnaireVo { } + @Data + @ApiModel("职位信息") + public static class PositionInfo { + @ApiModelProperty("职位id") + private Long id; + @ApiModelProperty("职位名称") + private String name; + } } diff --git a/src/main/java/com/ccsens/carbasics/persist/dao/OrganizationPositionDao.java b/src/main/java/com/ccsens/carbasics/persist/dao/OrganizationPositionDao.java new file mode 100644 index 0000000..09a55cf --- /dev/null +++ b/src/main/java/com/ccsens/carbasics/persist/dao/OrganizationPositionDao.java @@ -0,0 +1,15 @@ +package com.ccsens.carbasics.persist.dao; + +import com.ccsens.carbasics.bean.vo.QuestionnaireVo; +import com.ccsens.carbasics.persist.mapper.OrganizationPositionMapper; + +import java.util.List; + +public interface OrganizationPositionDao extends OrganizationPositionMapper { + + /** + * 查询问卷调查的职位 + * @return 职位列表 + */ + List queryPosition(); +} diff --git a/src/main/java/com/ccsens/carbasics/service/IQuestionnaireService.java b/src/main/java/com/ccsens/carbasics/service/IQuestionnaireService.java index 45a316d..91a6485 100644 --- a/src/main/java/com/ccsens/carbasics/service/IQuestionnaireService.java +++ b/src/main/java/com/ccsens/carbasics/service/IQuestionnaireService.java @@ -39,4 +39,11 @@ public interface IQuestionnaireService { * @return 问卷状态列表 */ List queryNotWrite(QuestionnaireDto.QueryNotWrite param, Long userId); + + /** + * 查询职位 + * @param userId 用户id + * @return + */ + List queryPosition(Long userId); } diff --git a/src/main/java/com/ccsens/carbasics/service/QuestionnaireService.java b/src/main/java/com/ccsens/carbasics/service/QuestionnaireService.java index 73111ff..9951475 100644 --- a/src/main/java/com/ccsens/carbasics/service/QuestionnaireService.java +++ b/src/main/java/com/ccsens/carbasics/service/QuestionnaireService.java @@ -1,20 +1,14 @@ package com.ccsens.carbasics.service; import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.lang.Snowflake; import cn.hutool.core.util.ObjectUtil; import com.ccsens.carbasics.bean.dto.QuestionnaireDto; import com.ccsens.carbasics.bean.po.Organization; -import com.ccsens.carbasics.bean.po.Questionnaire; import com.ccsens.carbasics.bean.po.QuestionnaireDetail; import com.ccsens.carbasics.bean.vo.QuestionnaireVo; -import com.ccsens.carbasics.persist.dao.AreaDao; -import com.ccsens.carbasics.persist.dao.OrganizationDao; -import com.ccsens.carbasics.persist.dao.QuestionnaireDao; -import com.ccsens.carbasics.persist.dao.QuestionnaireDetailDao; -import com.ccsens.carbasics.persist.mapper.OrganizationProjectMapper; -import com.ccsens.carbasics.util.Constant; +import com.ccsens.carbasics.persist.dao.*; +import com.ccsens.carbasics.persist.mapper.OrganizationPositionMapper; import com.ccsens.carbasics.util.DefaultCodeError; import com.ccsens.util.exception.BaseException; import lombok.extern.slf4j.Slf4j; @@ -44,6 +38,8 @@ public class QuestionnaireService implements IQuestionnaireService{ private OrganizationDao organizationDao; @Resource private IAsyncService asyncService; + @Resource + private OrganizationPositionDao positionDao; @Override public List queryArea(QuestionnaireDto.QueryArea param, Long userId) { @@ -61,7 +57,27 @@ public class QuestionnaireService implements IQuestionnaireService{ @Override public void saveQuestionnaire(QuestionnaireDto.SaveQuestionnaire param, Long userId) throws Exception { - // TODO 校验介入治疗字段 + //校验介入治疗字段 + if (1 == param.getPciStatus()) { + if (ObjectUtil.isNull(param.getAisNumberSix())){ + throw new BaseException(DefaultCodeError.PCI_NOT_NULL); + } + if (ObjectUtil.isNull(param.getShouldDirectly())) { + throw new BaseException(DefaultCodeError.PCI_NOT_NULL); + } + if (ObjectUtil.isNull(param.getDptMedianNumber())) { + throw new BaseException(DefaultCodeError.PCI_NOT_NULL); + } + if (ObjectUtil.isNull(param.getPrtMedianNumber())) { + throw new BaseException(DefaultCodeError.PCI_NOT_NULL); + } + if (ObjectUtil.isNull(param.getJmrsNumberTwo())) { + throw new BaseException(DefaultCodeError.PCI_NOT_NULL); + } + if (ObjectUtil.isNull(param.getDetailId())) { + throw new BaseException(DefaultCodeError.PCI_NOT_NULL); + } + } //查询是否有已提交的,如果有只能保存 Long time = System.currentTimeMillis(); @@ -139,7 +155,7 @@ public class QuestionnaireService implements IQuestionnaireService{ //如果医院/部门/用户不存在,则创建对应内容 -// asyncService.createHospitalOfNotExit(param,userId); + asyncService.createHospitalOfNotExit(param,userId); } @@ -164,4 +180,9 @@ public class QuestionnaireService implements IQuestionnaireService{ return new ArrayList<>(); } + @Override + public List queryPosition(Long userId) { + return positionDao.queryPosition(); + } + } diff --git a/src/main/java/com/ccsens/carbasics/util/DefaultCodeError.java b/src/main/java/com/ccsens/carbasics/util/DefaultCodeError.java index 1115115..923d447 100644 --- a/src/main/java/com/ccsens/carbasics/util/DefaultCodeError.java +++ b/src/main/java/com/ccsens/carbasics/util/DefaultCodeError.java @@ -42,6 +42,7 @@ public class DefaultCodeError extends CodeError { public static final Code DATA_STATUS_SAME = new Code(33,"状态一致无需修改", true); public static final Code NOT_APPLY_FOR = new Code(34,"未申请修改,无法修改状态", true); public static final Code HOSPITAL_REPEAT_SUBMIT = new Code(35,"数据已提交,无法修改", true); + public static final Code PCI_NOT_NULL = new Code(36,"介入治疗相关信息不能为空", true); diff --git a/src/main/resources/mapper_dao/OrganizationPositionDao.xml b/src/main/resources/mapper_dao/OrganizationPositionDao.xml new file mode 100644 index 0000000..fbdd577 --- /dev/null +++ b/src/main/resources/mapper_dao/OrganizationPositionDao.xml @@ -0,0 +1,21 @@ + + + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper_dao/QuestionnaireDao.xml b/src/main/resources/mapper_dao/QuestionnaireDao.xml index 7dfa334..ec19ce8 100644 --- a/src/main/resources/mapper_dao/QuestionnaireDao.xml +++ b/src/main/resources/mapper_dao/QuestionnaireDao.xml @@ -12,6 +12,7 @@ + @@ -36,6 +37,7 @@ + @@ -73,7 +75,8 @@ qd.prt_median_number, qd.jmrs_number_two, qd.death_number, - qd.submit_status + qd.submit_status, + qd.pci_status AS pciStatus FROM t_qcp_questionnaire AS q LEFT JOIN t_qcp_questionnaire_detail AS qd ON q.id = qd.questionnaire_id @@ -144,10 +147,10 @@ t_qcp_questionnaire AS q LEFT JOIN t_qcp_questionnaire_detail AS qd ON q.id = qd.questionnaire_id AND qd.rec_status = 0 + AND qd.hospital_name = #{name} + AND qd.submit_status = 1 WHERE q.rec_status = 0 - AND qd.hospital_name = #{name} - AND submit_status = 1 AND q.id = #{qid}