1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- package com.diagbot.facade;
- import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
- import com.diagbot.dto.ConceptBaseDTO;
- import com.diagbot.dto.ConceptWithOrderRes;
- import com.diagbot.entity.Concept;
- import com.diagbot.entity.Lexicon;
- import com.diagbot.entity.wrapper.ConceptWrapper;
- import com.diagbot.enums.IsDeleteEnum;
- import com.diagbot.enums.QuestionTypeEnum;
- import com.diagbot.exception.CommonErrorCode;
- import com.diagbot.exception.CommonException;
- import com.diagbot.service.impl.ConceptServiceImpl;
- import com.diagbot.vo.ConceptBaseVO;
- import com.diagbot.vo.ConceptUsualVO;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Component;
- import java.util.ArrayList;
- import java.util.List;
- /**
- * @Description:
- * @Author:zhaops
- * @time: 2019/5/6 15:04
- */
- @Component
- public class ConceptFacade extends ConceptServiceImpl {
- @Autowired
- LexiconFacade lexiconFacade;
- /**
- * 验证存在并且获取概念基本信息
- *
- * @param conceptBaseVO 概念名称和类型
- * @return 概念基本信息
- */
- public Concept exist(ConceptBaseVO conceptBaseVO) {
- QueryWrapper<Concept> conceptQueryWrapper = new QueryWrapper<>();
- conceptQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey())
- .eq("lib_name", conceptBaseVO.getName())
- .eq("lib_type", conceptBaseVO.getLibType());
- Concept concept = this.getOne(conceptQueryWrapper);
- if (concept == null) {
- throw new CommonException(CommonErrorCode.NOT_EXISTS, "概念不存在");
- }
- return concept;
- }
- /**
- * 获取常用标签
- *
- * @param conceptUsualVO
- * @return
- */
- public List<ConceptBaseDTO> getConceptUsual(ConceptUsualVO conceptUsualVO){
- //将标签类型转换成类型id
- QueryWrapper<Lexicon> lexiconQueryWrapper = new QueryWrapper<>();
- lexiconQueryWrapper.eq("is_deleted",IsDeleteEnum.N.getKey())
- .eq("name",QuestionTypeEnum.getName(conceptUsualVO.getType()));
- Lexicon lexicon = lexiconFacade.getOne(lexiconQueryWrapper);
- //获取标签内容
- ConceptWrapper conceptWrapper = new ConceptWrapper();
- conceptWrapper.setEndAge(conceptUsualVO.getAge());//年龄
- conceptWrapper.setStartId(conceptUsualVO.getDeptId());//科室概念id
- conceptWrapper.setEndSex(conceptUsualVO.getSexType());//性别
- conceptWrapper.setEndType(Integer.parseInt(lexicon.getId().toString()));//标签类型
- List<ConceptWithOrderRes> concepts = this.getConceptWithOrder(conceptWrapper);
- List<ConceptBaseDTO> list = new ArrayList();
- //封装
- ConceptBaseDTO conceptBaseDTO = new ConceptBaseDTO();
- for (ConceptWithOrderRes conceptWithOrderRes: concepts) {
- conceptBaseDTO = new ConceptBaseDTO();
- conceptBaseDTO.setConceptId(conceptWithOrderRes.getEndId());
- conceptBaseDTO.setName(conceptWithOrderRes.getEndName());
- list.add(conceptBaseDTO);
- }
- return list;
- }
- }
|