zhoutg 5 роки тому
батько
коміт
d3c2803c5b

+ 53 - 0
knowledgeman-service/src/main/java/com/diagbot/facade/DiagnoseFacade.java

@@ -1,14 +1,30 @@
 package com.diagbot.facade;
 
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.dto.ConceptBaseDTO;
 import com.diagbot.dto.DiagnosePageDTO;
+import com.diagbot.entity.Diagnose;
+import com.diagbot.enums.IsDeleteEnum;
+import com.diagbot.enums.LexiconTypeEnum;
+import com.diagbot.exception.CommonErrorCode;
+import com.diagbot.exception.CommonException;
 import com.diagbot.service.impl.DiagnoseServiceImpl;
+import com.diagbot.util.DateUtil;
+import com.diagbot.vo.DeleteDiagnoseVO;
 import com.diagbot.vo.DiagnosePageVO;
+import com.diagbot.vo.DiseaseIndexVO;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
 
+import java.util.Date;
+import java.util.List;
+
 @Component
 public class DiagnoseFacade extends DiagnoseServiceImpl {
 
+    @Autowired
+    ConceptFacade conceptFacade;
 
     /**
      * 诊断依据分页
@@ -23,4 +39,41 @@ public class DiagnoseFacade extends DiagnoseServiceImpl {
         }
         return res;
     }
+
+
+    /**
+     * 诊断依据删除
+     *
+     * @param deleteDiagnoseVO
+     * @return
+     */
+    public void delete(DeleteDiagnoseVO deleteDiagnoseVO) {
+        if (!(IsDeleteEnum.N.getKey().equals(deleteDiagnoseVO.getIsDeleted())
+                || IsDeleteEnum.Y.getKey().equals(deleteDiagnoseVO.getIsDeleted()))) {
+            throw new CommonException(CommonErrorCode.STATUS_IS_ERROR, "状态值错误【Y】或【N】");
+        }
+        Date now = DateUtil.now();
+        this.update(new Diagnose(), new UpdateWrapper<Diagnose>()
+                .eq("id", deleteDiagnoseVO.getId())
+                .set("gmt_modified", now)
+                .set("modifier", deleteDiagnoseVO.getModifier())
+                .set("is_deleted", deleteDiagnoseVO.getIsDeleted())
+                .set("neo_update", now)
+                .set("remark", deleteDiagnoseVO.getRemark()));
+
+        // TODO 更新图谱
+    }
+
+
+    /**
+     * 诊断检索,过滤已添加的诊断
+     *
+     * @param diseaseIndexVO
+     * @return
+     */
+    public List<ConceptBaseDTO> indexFac(DiseaseIndexVO diseaseIndexVO) {
+        // 设置量表类型
+        diseaseIndexVO.setLibType(LexiconTypeEnum.DIAGNOSIS.getKey());
+        return this.index(diseaseIndexVO);
+    }
 }

+ 13 - 0
knowledgeman-service/src/main/java/com/diagbot/mapper/DiagnoseMapper.java

@@ -2,9 +2,13 @@ package com.diagbot.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.diagbot.dto.ConceptBaseDTO;
 import com.diagbot.dto.DiagnosePageDTO;
 import com.diagbot.entity.Diagnose;
 import com.diagbot.vo.DiagnosePageVO;
+import com.diagbot.vo.DiseaseIndexVO;
+
+import java.util.List;
 
 /**
  * <p>
@@ -24,4 +28,13 @@ public interface DiagnoseMapper extends BaseMapper<Diagnose> {
      */
     public IPage<DiagnosePageDTO> getList(DiagnosePageVO diagnosePageVO);
 
+
+    /**
+     * 诊断依据检索
+     *
+     * @param diseaseIndexVO
+     * @return
+     */
+    public List<ConceptBaseDTO> index(DiseaseIndexVO diseaseIndexVO);
+
 }

+ 13 - 0
knowledgeman-service/src/main/java/com/diagbot/service/DiagnoseService.java

@@ -2,9 +2,13 @@ package com.diagbot.service;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.dto.ConceptBaseDTO;
 import com.diagbot.dto.DiagnosePageDTO;
 import com.diagbot.entity.Diagnose;
 import com.diagbot.vo.DiagnosePageVO;
+import com.diagbot.vo.DiseaseIndexVO;
+
+import java.util.List;
 
 /**
  * <p>
@@ -25,4 +29,13 @@ public interface DiagnoseService extends IService<Diagnose> {
      */
     public IPage<DiagnosePageDTO> getList(DiagnosePageVO diagnosePageVO);
 
+
+    /**
+     * 诊断依据检索
+     *
+     * @param diseaseIndexVO
+     * @return
+     */
+    public List<ConceptBaseDTO> index(DiseaseIndexVO diseaseIndexVO);
+
 }

+ 10 - 1
knowledgeman-service/src/main/java/com/diagbot/service/impl/DiagnoseServiceImpl.java

@@ -1,14 +1,18 @@
 package com.diagbot.service.impl;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.dto.ConceptBaseDTO;
 import com.diagbot.dto.DiagnosePageDTO;
 import com.diagbot.entity.Diagnose;
 import com.diagbot.mapper.DiagnoseMapper;
 import com.diagbot.service.DiagnoseService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.diagbot.vo.DiagnosePageVO;
+import com.diagbot.vo.DiseaseIndexVO;
 import org.springframework.stereotype.Service;
 
+import java.util.List;
+
 /**
  * <p>
  * 诊断依据表 服务实现类
@@ -24,4 +28,9 @@ public class DiagnoseServiceImpl extends ServiceImpl<DiagnoseMapper, Diagnose> i
     public IPage<DiagnosePageDTO> getList(DiagnosePageVO diagnosePageVO) {
         return baseMapper.getList(diagnosePageVO);
     }
+
+    @Override
+    public List<ConceptBaseDTO> index(DiseaseIndexVO diseaseIndexVO) {
+        return baseMapper.index(diseaseIndexVO);
+    }
 }

+ 40 - 0
knowledgeman-service/src/main/java/com/diagbot/vo/DeleteDiagnoseVO.java

@@ -0,0 +1,40 @@
+package com.diagbot.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+/**
+ * @Description:
+ * @author: ztg
+ * @time: 2019/1/28 15:45
+ */
+@Getter
+@Setter
+@ApiModel
+public class DeleteDiagnoseVO {
+
+    @NotNull(message="id不能为空")
+    @ApiModelProperty(value = "主键")
+    private Long id;
+
+    @NotBlank(message="状态值不能为空")
+    @ApiModelProperty("是否删除,N:未删除,Y:删除")
+    private String isDeleted;
+
+    @ApiModelProperty("删除备注")
+    @NotBlank(message="备注不能为空")
+    private String remark;
+
+    @ApiModelProperty("诊断名称")
+    @NotBlank(message="诊断名称不能为空")
+    private String disName;
+
+    @ApiModelProperty("修改人")
+    @NotBlank(message="修改人不能为空")
+    private String modifier;
+}

+ 28 - 0
knowledgeman-service/src/main/java/com/diagbot/vo/DiseaseIndexVO.java

@@ -0,0 +1,28 @@
+package com.diagbot.vo;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.NotNull;
+
+/**
+ * @description:
+ * @author: ztg
+ * @date: 2019/5/9 11:27
+ */
+@Getter
+@Setter
+@ApiModel
+public class DiseaseIndexVO {
+    @ApiModelProperty(value = "诊断名称")
+    @NotBlank(message="诊断名称不能为空")
+    private String name;
+
+    @ApiModelProperty(value = "诊断类型,值为18", hidden = true)
+    @NotNull(message="诊断名称不能为空")
+    private int libType;
+
+}

+ 23 - 0
knowledgeman-service/src/main/java/com/diagbot/web/DiagnoseController.java

@@ -3,10 +3,13 @@ package com.diagbot.web;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.annotation.SysLogger;
+import com.diagbot.dto.ConceptBaseDTO;
 import com.diagbot.dto.DiagnosePageDTO;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.facade.DiagnoseFacade;
+import com.diagbot.vo.DeleteDiagnoseVO;
 import com.diagbot.vo.DiagnosePageVO;
+import com.diagbot.vo.DiseaseIndexVO;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -14,6 +17,9 @@ import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RestController;
 
+import javax.validation.Valid;
+import java.util.List;
+
 /**
  * <p>
  * 诊断依据表 前端控制器
@@ -37,4 +43,21 @@ public class DiagnoseController {
         return RespDTO.onSuc(data);
     }
 
+
+    @ApiOperation(value = "诊断依据-删除[by:zhoutg]", notes = "")
+    @PostMapping("/delete")
+    @SysLogger("delete")
+    public RespDTO<Boolean> delete(@Valid @RequestBody DeleteDiagnoseVO deleteDiagnoseVO) {
+        diagnoseFacade.delete(deleteDiagnoseVO);
+        return RespDTO.onSuc(true);
+    }
+
+
+    @ApiOperation(value = "诊断依据-诊断检索[by:zhoutg]", notes = "")
+    @PostMapping("/index")
+    @SysLogger("index")
+    public RespDTO<List<ConceptBaseDTO>> index(@Valid @RequestBody DiseaseIndexVO diseaseIndexVO) {
+        List<ConceptBaseDTO> data = diagnoseFacade.indexFac(diseaseIndexVO);
+        return RespDTO.onSuc(data);
+    }
 }

+ 15 - 0
knowledgeman-service/src/main/resources/mapper/DiagnoseMapper.xml

@@ -31,4 +31,19 @@
         </if>
         ORDER BY a.has_question desc, a.gmt_modified desc
     </select>
+
+    <select id="index" resultType="com.diagbot.dto.ConceptBaseDTO">
+        SELECT a.lib_name name, a.id conceptId FROM kl_concept a
+        WHERE a.lib_type = #{libType}
+        AND a.lib_name LIKE concat('%', #{name}, '%')
+        AND a.is_deleted = 'N'
+        AND NOT EXISTS (
+            SELECT 1 FROM kl_diagnose b
+            WHERE
+                b.is_deleted = 'N'
+            AND a.lib_name = b.dis_name
+        )
+    </select>
+
+
 </mapper>