Browse Source

常用标签维护——删除添加标签类型

wangyu 6 years ago
parent
commit
f297a93aee

+ 11 - 0
icssman-service/src/main/java/com/diagbot/facade/QuestionFacade.java

@@ -35,6 +35,7 @@ import com.diagbot.util.EntityUtil;
 import com.diagbot.util.ListUtil;
 import com.diagbot.util.StringUtil;
 import com.diagbot.util.UserUtils;
+import com.diagbot.vo.GetQuestionIdsByTypeVO;
 import com.diagbot.vo.GetQuestionInfoVO;
 import com.diagbot.vo.GetQuestionUsualByDeptVO;
 import com.diagbot.vo.QuestionIdsVO;
@@ -520,6 +521,16 @@ public class QuestionFacade extends QuestionInfoServiceImpl {
         return getQuestionInfoDTOS;
     }
 
+    public List<Long> getQuestionIdsByType(GetQuestionIdsByTypeVO getQuestionIdsByTypeVO){
+        QueryWrapper<QuestionInfo> queryWrapper = new QueryWrapper<>();
+        queryWrapper.in("id",getQuestionIdsByTypeVO.getQuestionIds() )
+                .eq("is_deleted", IsDeleteEnum.N.getKey())
+                .eq("type", getQuestionIdsByTypeVO.getQuestionType());
+        List<QuestionInfo> questionInfoList = this.list(queryWrapper);
+        List<Long> questionIds = questionInfoList.stream().map(questionInfo -> questionInfo.getId()).collect(Collectors.toList());
+        return questionIds;
+    }
+
 
     /**
      * 根据科室id获取常用标签信息

+ 22 - 8
icssman-service/src/main/java/com/diagbot/facade/QuestionUsualFacade.java

@@ -18,6 +18,7 @@ import com.diagbot.util.ListUtil;
 import com.diagbot.util.UserUtils;
 import com.diagbot.vo.DeleteQuestionUsualVO;
 import com.diagbot.vo.GetDeptInfoVO;
+import com.diagbot.vo.GetQuestionIdsByTypeVO;
 import com.diagbot.vo.QuestionUsualVO;
 import com.google.common.collect.Lists;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -42,6 +43,8 @@ public class QuestionUsualFacade extends QuestionUsualServiceImpl {
     @Autowired
     @Qualifier("questionUsualServiceImpl")
     private QuestionUsualService questionUsualService;
+    @Autowired
+    private QuestionFacade questionFacade;
 
     /**
      * 添加常用标签
@@ -105,7 +108,9 @@ public class QuestionUsualFacade extends QuestionUsualServiceImpl {
         QueryWrapper<QuestionUsual> queryWrapper = new QueryWrapper<>();
         queryWrapper.eq("dept_id",deleteQuestionUsualVO.getDeptId());
         List<QuestionUsual> questionUsualList = this.list(queryWrapper);
+        List<Long> questionIds = new ArrayList<>();
         Boolean flag = false;
+        questionUsualList.stream().forEach(questionUsual -> questionIds.add(questionUsual.getQuestionId()));
         for (QuestionUsual questionUsual:questionUsualList) {
             if(questionUsual.getIsDeleted().equals(IsDeleteEnum.N.getKey())){
                 flag = true;
@@ -116,14 +121,23 @@ public class QuestionUsualFacade extends QuestionUsualServiceImpl {
             throw new CommonException(CommonErrorCode.FAIL,
                     "标签已删除");
         }
-        //删除常用标签
-        String userId = UserUtils.getCurrentPrincipleID();
-        UpdateWrapper<QuestionUsual> updateWrapper = new UpdateWrapper<>();
-        updateWrapper.eq("dept_id", deleteQuestionUsualVO.getDeptId())
-                .set("is_deleted", IsDeleteEnum.Y.getKey())
-                .set("modifier", userId)
-                .set("gmt_modified", DateUtil.now());
-        this.update(new QuestionUsual(), updateWrapper);
+        //查询出相关类型的标签id
+        GetQuestionIdsByTypeVO getQuestionIdsByTypeVO = new GetQuestionIdsByTypeVO();
+        getQuestionIdsByTypeVO.setQuestionIds(questionIds);
+        getQuestionIdsByTypeVO.setQuestionType(deleteQuestionUsualVO.getType());
+        List<Long> questionInfoList = questionFacade.getQuestionIdsByType(getQuestionIdsByTypeVO);
+        //如果存在相关类型的数据,就删除
+        if(ListUtil.isNotEmpty(questionInfoList)){
+            //删除常用标签
+            String userId = UserUtils.getCurrentPrincipleID();
+            UpdateWrapper<QuestionUsual> updateWrapper = new UpdateWrapper<>();
+            updateWrapper.eq("dept_id", deleteQuestionUsualVO.getDeptId())
+                    .in("question_id",questionInfoList)
+                    .set("is_deleted", IsDeleteEnum.Y.getKey())
+                    .set("modifier", userId)
+                    .set("gmt_modified", DateUtil.now());
+            this.update(new QuestionUsual(), updateWrapper);
+        }
         return true;
     }
 

+ 8 - 0
icssman-service/src/main/java/com/diagbot/vo/DeleteQuestionUsualVO.java

@@ -11,5 +11,13 @@ import lombok.Setter;
 @Setter
 @Getter
 public class DeleteQuestionUsualVO {
+    /**
+     * 科室id
+     */
     private Long deptId;
+
+    /**
+     * 标签类型
+     */
+    private Integer type;
 }

+ 25 - 0
icssman-service/src/main/java/com/diagbot/vo/GetQuestionIdsByTypeVO.java

@@ -0,0 +1,25 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2019/3/7 11:07
+ */
+@Getter
+@Setter
+public class GetQuestionIdsByTypeVO {
+    /**
+     * 标签id
+     */
+    private List<Long> questionIds;
+
+    /**
+     * 标签类型
+     */
+    private Integer questionType;
+}

+ 3 - 3
icssman-service/src/main/java/com/diagbot/web/QuestionUsualController.java

@@ -49,8 +49,7 @@ public class QuestionUsualController {
     private QuestionFacade questionFacade;
 
     @ApiOperation(value = "常用标签维护——添加和修改[by:wangyu]",
-            notes = "deptCode: 科室编号,必填<br>" +
-                    "hospitalCode: 医院编号,必填<br>" +
+            notes = "deptId: 科室id,必填<br>" +
                     "questionName: 症状名称,必填")
     @PostMapping("/addQuestionUsual")
     @SysLogger("addQuestionUsual")
@@ -61,7 +60,8 @@ public class QuestionUsualController {
     }
 
     @ApiOperation(value = "常用标签维护——删除[by:wangyu]",
-            notes = "id: 常用标签id,必填<br>")
+            notes = "deptId: 科室id,必填<br>" +
+                    "type: 标签类型,必填<br>")
     @PostMapping("/deleteQuestionUsual")
     @SysLogger("deleteQuestionUsual")
     @Transactional