Browse Source

Merge branch 'dev/icss' into dev/icssNCD

gaodm 6 years ago
parent
commit
d9fe671655
30 changed files with 374 additions and 104 deletions
  1. 16 0
      icssman-service/src/main/java/com/diagbot/dto/DeptInfoDTO.java
  2. 4 8
      icssman-service/src/main/java/com/diagbot/dto/DisclaimerInformationDTO.java
  3. 19 0
      icssman-service/src/main/java/com/diagbot/dto/GetQuestionUsualAndTypeDTO.java
  4. 3 1
      icssman-service/src/main/java/com/diagbot/dto/VersionWrapperDTO.java
  5. 3 3
      icssman-service/src/main/java/com/diagbot/enums/DisclaimerCodeEnum.java
  6. 51 3
      icssman-service/src/main/java/com/diagbot/facade/DeptInfoFacade.java
  7. 8 4
      icssman-service/src/main/java/com/diagbot/facade/DeptVitalFacade.java
  8. 35 14
      icssman-service/src/main/java/com/diagbot/facade/DisclaimerInformationFacade.java
  9. 11 0
      icssman-service/src/main/java/com/diagbot/facade/QuestionFacade.java
  10. 22 26
      icssman-service/src/main/java/com/diagbot/facade/QuestionUsualFacade.java
  11. 10 0
      icssman-service/src/main/java/com/diagbot/mapper/QuestionUsualMapper.java
  12. 9 0
      icssman-service/src/main/java/com/diagbot/service/QuestionUsualService.java
  13. 7 0
      icssman-service/src/main/java/com/diagbot/service/impl/QuestionUsualServiceImpl.java
  14. 8 0
      icssman-service/src/main/java/com/diagbot/vo/DeleteQuestionUsualVO.java
  15. 1 1
      icssman-service/src/main/java/com/diagbot/vo/DeptVitalVO.java
  16. 2 2
      icssman-service/src/main/java/com/diagbot/vo/DisclaimerInformationAllVO.java
  17. 2 0
      icssman-service/src/main/java/com/diagbot/vo/DisclaimerInformationIdVO.java
  18. 25 0
      icssman-service/src/main/java/com/diagbot/vo/GetQuestionIdsByTypeVO.java
  19. 15 0
      icssman-service/src/main/java/com/diagbot/vo/GetQuestionInfoVO.java
  20. 21 0
      icssman-service/src/main/java/com/diagbot/vo/GetQuestionUsualAndTypeVO.java
  21. 7 7
      icssman-service/src/main/java/com/diagbot/web/DeptVitalController.java
  22. 12 11
      icssman-service/src/main/java/com/diagbot/web/DisclaimerInformationController.java
  23. 6 4
      icssman-service/src/main/java/com/diagbot/web/QuestionUsualController.java
  24. 16 3
      icssman-service/src/main/java/com/diagbot/web/UploadController.java
  25. 26 8
      icssman-service/src/main/java/com/diagbot/web/VersionDetailController.java
  26. 13 6
      icssman-service/src/main/resources/mapper/DeptInfoMapper.xml
  27. 1 1
      icssman-service/src/main/resources/mapper/DisclaimerInformationMapper.xml
  28. 7 1
      icssman-service/src/main/resources/mapper/QuestionInfoMapper.xml
  29. 13 0
      icssman-service/src/main/resources/mapper/QuestionUsualMapper.xml
  30. 1 1
      icssman-service/src/main/resources/mapper/VersionInfoMapper.xml

+ 16 - 0
icssman-service/src/main/java/com/diagbot/dto/DeptInfoDTO.java

@@ -1,11 +1,27 @@
 package com.diagbot.dto;
 
 import com.diagbot.entity.DeptInfo;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
 
 /**
  * @Description:
  * @author: wangyu
  * @time: 2018/11/19 18:56
  */
+@Getter
+@Setter
 public class DeptInfoDTO extends DeptInfo {
+
+    /**
+     *  归属类型
+     */
+    private List<Integer> type;
+
+    /**
+     * 常用标签
+     */
+    private List<GetQuestionUsualAndTypeDTO> questionUsuals;
 }

+ 4 - 8
icssman-service/src/main/java/com/diagbot/dto/DisclaimerInformationDTO.java

@@ -1,12 +1,8 @@
 package com.diagbot.dto;
 
-import java.util.Date;
-
-import com.diagbot.entity.DisclaimerInformation;
 import com.diagbot.enums.DisclaimerCodeEnum;
 
-import lombok.Getter;
-import lombok.Setter;
+import java.util.Date;
 
 /**
  * 
@@ -120,12 +116,12 @@ public class DisclaimerInformationDTO {
 	}
 
 	public String getDisclaimerCode() {
-		if (disclaimerCode.equals("0")) {
-			return DisclaimerCodeEnum.getName(0);
-		} else if (disclaimerCode.equals("1")) {
+		if (disclaimerCode.equals("1")) {
 			return DisclaimerCodeEnum.getName(1);
 		} else if (disclaimerCode.equals("2")) {
 			return DisclaimerCodeEnum.getName(2);
+		} else if (disclaimerCode.equals("3")) {
+			return DisclaimerCodeEnum.getName(3);
 		} else {
 			return disclaimerCode;
 		}

+ 19 - 0
icssman-service/src/main/java/com/diagbot/dto/GetQuestionUsualAndTypeDTO.java

@@ -0,0 +1,19 @@
+package com.diagbot.dto;
+
+import com.diagbot.entity.QuestionUsual;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2019/3/7 16:13
+ */
+@Getter
+@Setter
+public class GetQuestionUsualAndTypeDTO extends QuestionUsual {
+    /**
+     * 标签类型
+     */
+    private Integer type;
+}

+ 3 - 1
icssman-service/src/main/java/com/diagbot/dto/VersionWrapperDTO.java

@@ -3,6 +3,8 @@ package com.diagbot.dto;
 import java.util.Date;
 import java.util.List;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
+
 import lombok.Getter;
 import lombok.Setter;
 
@@ -32,7 +34,7 @@ public class VersionWrapperDTO {
 	 * 名称
 	 */
 	private String name;
-
+	@JsonFormat(pattern = "yyyy-MM-dd")
 	private Date refreshTime;
 
 	/**

+ 3 - 3
icssman-service/src/main/java/com/diagbot/enums/DisclaimerCodeEnum.java

@@ -6,9 +6,9 @@ import lombok.Setter;
 
 public enum DisclaimerCodeEnum implements KeyedNamed{
 	
-	DiagnoseDisclaimer(0, "诊断免责信息"),
-	PushLiability(1, "推送免责信息"),
-	Disclaimer(2,"免责申明");
+	DiagnoseDisclaimer(1, "诊断免责信息"),
+	PushLiability(2, "推送免责信息"),
+	Disclaimer(3,"免责声明");
 	
 	@Setter
     private Integer key;

+ 51 - 3
icssman-service/src/main/java/com/diagbot/facade/DeptInfoFacade.java

@@ -5,19 +5,23 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.client.UserServiceClient;
 import com.diagbot.dto.DeptInfoDTO;
 import com.diagbot.dto.GetDeptInfoDTO;
+import com.diagbot.dto.GetQuestionUsualAndTypeDTO;
 import com.diagbot.dto.RespDTO;
 import com.diagbot.entity.DeptInfo;
 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.DeptInfoServiceImpl;
 import com.diagbot.util.BeanUtil;
 import com.diagbot.util.DateUtil;
+import com.diagbot.util.ListUtil;
 import com.diagbot.util.UserUtils;
 import com.diagbot.vo.AddDeptInfoVO;
 import com.diagbot.vo.DeleteDeptInfoVO;
 import com.diagbot.vo.GetDeptInfoDetialsVO;
 import com.diagbot.vo.GetDeptInfoVO;
+import com.diagbot.vo.GetQuestionUsualAndTypeVO;
 import com.diagbot.vo.UpdateDeptInfoVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Component;
@@ -37,7 +41,10 @@ public class DeptInfoFacade extends DeptInfoServiceImpl {
 
     @Autowired
     private UserServiceClient userServiceClient;
-
+    @Autowired
+    private QuestionUsualFacade questionUsualFacade;
+    @Autowired
+    private QuestionFacade questionFacade;
     /**
      * 添加科室信息
      *
@@ -140,8 +147,49 @@ public class DeptInfoFacade extends DeptInfoServiceImpl {
      * @return
      */
     public List<DeptInfoDTO> getAllDeptInfo() {
-        List<DeptInfoDTO> deptInfoList = this.getDeptName();
-        return deptInfoList;
+        //查询所有科室
+        QueryWrapper<DeptInfo> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq("is_deleted",IsDeleteEnum.N.getKey());
+        List<DeptInfo> deptInfoList = this.list(queryWrapper);
+        List<DeptInfoDTO> deptInfoDTOList = BeanUtil.listCopyTo(deptInfoList,DeptInfoDTO.class);
+        List<Long> deptIds = new ArrayList<>();
+        deptInfoList.stream().forEach(deptInfoDTO -> deptIds.add(deptInfoDTO.getId()));
+        //在常用标签中查询所有相关标签
+        GetQuestionUsualAndTypeVO getQuestionUsualAndTypeVO = new GetQuestionUsualAndTypeVO();
+        getQuestionUsualAndTypeVO.setDeptIds(deptIds);
+        List<GetQuestionUsualAndTypeDTO> getQuestionUsualAndTypeDTOS = questionUsualFacade.getQuestionUsualByDeptIds(getQuestionUsualAndTypeVO);
+        List<GetQuestionUsualAndTypeDTO> questionUsuals = new ArrayList<>();
+        List<Integer> typeList = new ArrayList<>();
+        List<DeptInfoDTO> deptInfoDTOS = new ArrayList<>();
+        //将标签明细放入科室信息中,并排除类型
+        for (DeptInfoDTO deptInfoDTO : deptInfoDTOList) {
+            typeList = new ArrayList<>();
+            questionUsuals = new ArrayList<>();
+            for (GetQuestionUsualAndTypeDTO getQuestionUsualAndTypeDTO : getQuestionUsualAndTypeDTOS) {
+                    if (deptInfoDTO.getId().intValue() == getQuestionUsualAndTypeDTO.getDeptId().intValue()){
+                        questionUsuals.add(getQuestionUsualAndTypeDTO);
+                    }
+            }
+            deptInfoDTO.setQuestionUsuals(questionUsuals);
+            List<Integer> questionType = new ArrayList<>();
+            deptInfoDTO.getQuestionUsuals().forEach(getQuestionUsualAndTypeDTO -> questionType.add(getQuestionUsualAndTypeDTO.getType()));
+            //对类型进行筛选,已经添加过得类型不再显示
+            if(!questionType.contains(QuestionTypeEnum.Symptom.getKey())){
+                typeList.add(QuestionTypeEnum.Symptom.getKey());
+            }
+            if(!questionType.contains(QuestionTypeEnum.Lis.getKey())){
+                typeList.add(QuestionTypeEnum.Lis.getKey());
+            }
+            if(!questionType.contains(QuestionTypeEnum.Pacs.getKey())){
+                typeList.add(QuestionTypeEnum.Pacs.getKey());
+            }
+            deptInfoDTO.setType(typeList);
+            //对总体类型进行筛选,若该科室已经添加过疾病,化验,复检的常用标签,则该科室不再显示
+            if(ListUtil.isNotEmpty(deptInfoDTO.getType())){
+                deptInfoDTOS.add(deptInfoDTO);
+            }
+        }
+        return deptInfoDTOS;
     }
 
     /**

+ 8 - 4
icssman-service/src/main/java/com/diagbot/facade/DeptVitalFacade.java

@@ -164,16 +164,20 @@ public class DeptVitalFacade extends DeptVitalServiceImpl {
         List<Long> vitalIds = deptVitalList.stream()
                 .map(deptVitals -> deptVitals.getVitalId())
                 .collect(Collectors.toList());
-        List<QuestionInfo> vitalList = Lists.newArrayList(questionFacade.listByIds(vitalIds));
-        List<QuestionShortDTO> vitals = BeanUtil.listCopyTo(vitalList, QuestionShortDTO.class);
-        deptVitalDTO.setVitals(vitals);
+        if (vitalIds.size() > 0) {
+            List<QuestionInfo> vitalList = Lists.newArrayList(questionFacade.listByIds(vitalIds));
+            List<QuestionShortDTO> vitals = BeanUtil.listCopyTo(vitalList, QuestionShortDTO.class);
+            deptVitalDTO.setVitals(vitals);
+        }
 
         //未关联查体
         QueryWrapper<QuestionInfo> unSelectedVitalQueryWrapper = new QueryWrapper<>();
         unSelectedVitalQueryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey()).
                 eq("sub_type", 0).
-                notIn("id", vitalIds).
                 eq("type", QuestionTypeEnum.Vital.getKey());
+        if (vitalIds.size() > 0) {
+            unSelectedVitalQueryWrapper.notIn("id", vitalIds);
+        }
         List<QuestionInfo> unSelectedVitalList = questionFacade.list(unSelectedVitalQueryWrapper);
         List<QuestionShortDTO> unSelectedVitals = BeanUtil.listCopyTo(unSelectedVitalList, QuestionShortDTO.class);
         deptVitalDTO.setUnSelectedVitals(unSelectedVitals);

+ 35 - 14
icssman-service/src/main/java/com/diagbot/facade/DisclaimerInformationFacade.java

@@ -1,5 +1,14 @@
 package com.diagbot.facade;
 
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -20,14 +29,6 @@ import com.diagbot.util.UserUtils;
 import com.diagbot.vo.DisclaimerInformationAllVO;
 import com.diagbot.vo.DisclaimerInformationIdVO;
 import com.diagbot.vo.DisclaimerInformationVO;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.stream.Collectors;
 
 /**
  * @author wangfeng
@@ -85,6 +86,14 @@ public class DisclaimerInformationFacade extends DisclaimerInformationServiceImp
      * @return
      */
     public Boolean addDisclaimerInformation(DisclaimerInformationVO disclaimerInformationVO) {
+    	//每一处免责声明(免责声明按钮、推送免责声明、诊断免责声明)同时最多可启用1条内容,显示(按操作时间)最新的条记录;新添加免责声明,则自动展示新添加的内容;自动开启,最近一条数据自动停用;
+    	UpdateWrapper<DisclaimerInformation>  DisclaimerInformationStatus= new UpdateWrapper<>();
+    	DisclaimerInformationStatus.eq("disclaimer_code",disclaimerInformationVO.getDisclaimerCode()).eq("is_deleted", IsDeleteEnum.N.getKey())
+        .set("modifier", UserUtils.getCurrentPrincipleID())
+        .set("gmt_modified", DateUtil.now()).set("status", StatusEnum.Disable.getKey());
+    	
+    	update(new DisclaimerInformation(), DisclaimerInformationStatus);
+    	
         DisclaimerInformation disclaimerInformation = new DisclaimerInformation();
         disclaimerInformation.setCreator(UserUtils.getCurrentPrincipleID());
         disclaimerInformation.setModifier(UserUtils.getCurrentPrincipleID());
@@ -120,9 +129,9 @@ public class DisclaimerInformationFacade extends DisclaimerInformationServiceImp
         disclaimerInformation.setDisclaimerCode(disclaimerInformationAllVO.getDisclaimerCode());
         disclaimerInformation.setGmtCreate(DateUtil.now());
         disclaimerInformation.setId(disclaimerInformationAllVO.getId());
-        disclaimerInformation.setOrderNo(disclaimerInformationAllVO.getOrderNo());
-        disclaimerInformation.setRemark(disclaimerInformationAllVO.getRemark());
-        disclaimerInformation.setStatus(String.valueOf(StatusEnum.Enable.getKey()));
+        //disclaimerInformation.setOrderNo(disclaimerInformationAllVO.getOrderNo());
+        //disclaimerInformation.setRemark(disclaimerInformationAllVO.getRemark());
+        //disclaimerInformation.setStatus(String.valueOf(StatusEnum.Enable.getKey()));
         disclaimerInformation.setTitle(disclaimerInformationAllVO.getTitle());
         disclaimerInformation.setVersionId(0L);
 
@@ -158,6 +167,18 @@ public class DisclaimerInformationFacade extends DisclaimerInformationServiceImp
     public boolean startDisclaimerInformations(DisclaimerInformationIdVO disclaimerInformationIdVO) {
         // 1.先判断数据是否存在有效
         checkExist(disclaimerInformationIdVO.getId());
+        //每一处免责声明(免责声明按钮、推送免责声明、诊断免责声明)同时最多可启用1条内容,显示(按操作时间)最新的条记录;新添加免责声明,则自动展示新添加的内容;自动开启,最近一条数据自动停用;
+      //  QueryWrapper<DisclaimerInformation> data = new QueryWrapper<DisclaimerInformation>();
+       // data.in("id", disclaimerInformationIdVO.getId()).eq("is_deleted", IsDeleteEnum.N.getKey());
+        DisclaimerInformation disclaimerInformation = getById(disclaimerInformationIdVO.getId());
+        
+        UpdateWrapper<DisclaimerInformation>  DisclaimerInformationStatus= new UpdateWrapper<>();
+    	DisclaimerInformationStatus.eq("disclaimer_code",disclaimerInformation.getDisclaimerCode()).eq("is_deleted", IsDeleteEnum.N.getKey())
+        .set("modifier", UserUtils.getCurrentPrincipleID())
+        .set("gmt_modified", DateUtil.now()).set("status", StatusEnum.Disable.getKey());
+    	
+    	update(new DisclaimerInformation(), DisclaimerInformationStatus);
+        
         UpdateWrapper<DisclaimerInformation> disclaimerInformationNew = new UpdateWrapper<>();
         disclaimerInformationNew.in("id", disclaimerInformationIdVO.getId()).eq("is_deleted", IsDeleteEnum.N.getKey())
                 .eq("status", StatusEnum.Disable.getKey()).set("modifier", UserUtils.getCurrentPrincipleID())
@@ -170,11 +191,11 @@ public class DisclaimerInformationFacade extends DisclaimerInformationServiceImp
      *
      * @return
      */
-    public boolean endDisclaimerInformations(DisclaimerInformationIdVO disclaimerInformationIdVO) {
+    public boolean endDisclaimerInformations(DisclaimerInformationIdVO disclaimerInformationEndVO) {
         // 1.先判断数据是否存在有效
-        checkExist(disclaimerInformationIdVO.getId());
+        checkExist(disclaimerInformationEndVO.getId());
         UpdateWrapper<DisclaimerInformation> disclaimerInformationNew = new UpdateWrapper<>();
-        disclaimerInformationNew.in("id", disclaimerInformationIdVO.getId()).eq("is_deleted", IsDeleteEnum.N.getKey())
+        disclaimerInformationNew.in("id", disclaimerInformationEndVO.getId()).eq("is_deleted", IsDeleteEnum.N.getKey())
                 .eq("status", StatusEnum.Enable.getKey()).set("modifier", UserUtils.getCurrentPrincipleID())
                 .set("gmt_modified", DateUtil.now()).set("status", StatusEnum.Disable.getKey());
         return update(new DisclaimerInformation(), disclaimerInformationNew);

+ 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 - 26
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;
@@ -25,7 +26,6 @@ import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.stereotype.Component;
 
 import java.util.ArrayList;
-import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
@@ -43,6 +43,8 @@ public class QuestionUsualFacade extends QuestionUsualServiceImpl {
     @Autowired
     @Qualifier("questionUsualServiceImpl")
     private QuestionUsualService questionUsualService;
+    @Autowired
+    private QuestionFacade questionFacade;
 
     /**
      * 添加常用标签
@@ -106,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;
@@ -117,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;
     }
 
@@ -135,25 +148,8 @@ public class QuestionUsualFacade extends QuestionUsualServiceImpl {
      * @return
      */
     public IPage<GetDeptInfoDTO> getDeptInfos(GetDeptInfoVO getDeptInfoVO) {
-        //获取标签修改时间和修改人
-        QueryWrapper<QuestionUsual> queryWrapper = new QueryWrapper<>();
-        queryWrapper.eq("is_deleted", IsDeleteEnum.N.getKey());
-        List<QuestionUsual> questionUsualList = this.list(queryWrapper);
-        Map<Long, QuestionUsual> map = new HashMap<>();
-        if (ListUtil.isNotEmpty(questionUsualList)) {
-            for (QuestionUsual questionUsual : questionUsualList) {
-                map.put(questionUsual.getDeptId(), questionUsual);
-            }
-        }
         //分页查询科室
         IPage<GetDeptInfoDTO> iPage = deptInfoFacade.getAllDeptInfo(getDeptInfoVO);
-        //将科室的修改人替换成常用标签的修改人
-        for (GetDeptInfoDTO getDeptInfoDTO : iPage.getRecords()) {
-            if (map.get(getDeptInfoDTO.getId()) != null) {
-                getDeptInfoDTO.setModifier(map.get(getDeptInfoDTO.getId()).getModifier());
-                getDeptInfoDTO.setGmtModified(map.get(getDeptInfoDTO.getId()).getGmtModified());
-            }
-        }
         //获取用户信息
         List<String> ids = new ArrayList<>();
         for (GetDeptInfoDTO getDeptInfoDTO : iPage.getRecords()) {

+ 10 - 0
icssman-service/src/main/java/com/diagbot/mapper/QuestionUsualMapper.java

@@ -1,9 +1,12 @@
 package com.diagbot.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.diagbot.dto.GetQuestionUsualAndTypeDTO;
 import com.diagbot.entity.QuestionUsual;
 import com.diagbot.entity.wrapper.QuestionUsualWapper;
 import com.diagbot.entity.wrapper.QuestionWrapper;
+import com.diagbot.vo.GetQuestionIdsByTypeVO;
+import com.diagbot.vo.GetQuestionUsualAndTypeVO;
 import com.diagbot.vo.QuestionUsualVO;
 import org.apache.ibatis.annotations.Param;
 
@@ -19,10 +22,17 @@ import java.util.List;
  */
 public interface QuestionUsualMapper extends BaseMapper<QuestionUsual> {
     /**
+     *
      * 根据标签id获取常用标签信息
      * @param questionUsualVO
      * @return
      */
     public List<QuestionUsual> getQuestionUsualByQuestionId(@Param("questionUsualVO") QuestionUsualVO questionUsualVO);
 
+    /**
+     * 根据科室id获取常用标签
+     *
+     * @return
+     */
+    public List<GetQuestionUsualAndTypeDTO> getQuestionUsualByDeptIds(GetQuestionUsualAndTypeVO GetQuestionUsualAndTypeVO);
 }

+ 9 - 0
icssman-service/src/main/java/com/diagbot/service/QuestionUsualService.java

@@ -1,7 +1,9 @@
 package com.diagbot.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.diagbot.dto.GetQuestionUsualAndTypeDTO;
 import com.diagbot.entity.QuestionUsual;
+import com.diagbot.vo.GetQuestionUsualAndTypeVO;
 import com.diagbot.vo.QuestionUsualVO;
 
 import java.util.List;
@@ -24,4 +26,11 @@ public interface QuestionUsualService extends IService<QuestionUsual> {
      */
     public List<QuestionUsual> getQuestionUsualByQuestionId(QuestionUsualVO questionUsualVO);
 
+    /**
+     * 根据科室id获取常用标签
+     *
+     * @return
+     */
+    public List<GetQuestionUsualAndTypeDTO> getQuestionUsualByDeptIds(GetQuestionUsualAndTypeVO getQuestionUsualAndTypeVO);
+
 }

+ 7 - 0
icssman-service/src/main/java/com/diagbot/service/impl/QuestionUsualServiceImpl.java

@@ -1,9 +1,11 @@
 package com.diagbot.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.diagbot.dto.GetQuestionUsualAndTypeDTO;
 import com.diagbot.entity.QuestionUsual;
 import com.diagbot.mapper.QuestionUsualMapper;
 import com.diagbot.service.QuestionUsualService;
+import com.diagbot.vo.GetQuestionUsualAndTypeVO;
 import com.diagbot.vo.QuestionUsualVO;
 import org.springframework.stereotype.Service;
 
@@ -24,4 +26,9 @@ public class QuestionUsualServiceImpl extends ServiceImpl<QuestionUsualMapper, Q
     public List<QuestionUsual> getQuestionUsualByQuestionId(QuestionUsualVO questionUsualVO) {
         return baseMapper.getQuestionUsualByQuestionId(questionUsualVO);
     }
+
+    @Override
+    public List<GetQuestionUsualAndTypeDTO> getQuestionUsualByDeptIds(GetQuestionUsualAndTypeVO getQuestionUsualAndTypeVO) {
+        return baseMapper.getQuestionUsualByDeptIds(getQuestionUsualAndTypeVO);
+    }
 }

+ 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;
 }

+ 1 - 1
icssman-service/src/main/java/com/diagbot/vo/DeptVitalVO.java

@@ -16,6 +16,6 @@ import java.util.List;
 public class DeptVitalVO {
     @NotNull(message = "请输入科室ID")
     private Long deptId;
-    @NotNull(message = "请输入查体标签ID")
+    //@NotNull(message = "请输入查体标签ID")
     private List<DVDetailVO> dvDetailVOList;
 }

+ 2 - 2
icssman-service/src/main/java/com/diagbot/vo/DisclaimerInformationAllVO.java

@@ -36,7 +36,7 @@ public class DisclaimerInformationAllVO {
     /**
      * 排序号
      */
-    private String orderNo;
+    //private String orderNo;
 
     /**
      * 1:启动,0:不启用
@@ -51,5 +51,5 @@ public class DisclaimerInformationAllVO {
     /**
      * 备注
      */
-    private String remark;
+    //private String remark;
 }

+ 2 - 0
icssman-service/src/main/java/com/diagbot/vo/DisclaimerInformationIdVO.java

@@ -1,5 +1,6 @@
 package com.diagbot.vo;
 
+import javax.validation.constraints.NotBlank;
 import javax.validation.constraints.NotNull;
 
 import lombok.Getter;
@@ -17,4 +18,5 @@ public class DisclaimerInformationIdVO {
 
 	@NotNull(message = "请输入id")
 	private Long id;
+	
 }

+ 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;
+}

+ 15 - 0
icssman-service/src/main/java/com/diagbot/vo/GetQuestionInfoVO.java

@@ -3,6 +3,9 @@ package com.diagbot.vo;
 import lombok.Getter;
 import lombok.Setter;
 
+import javax.validation.constraints.NotNull;
+import java.util.List;
+
 /**
  * @Description:
  * @author: wangyu
@@ -19,5 +22,17 @@ public class GetQuestionInfoVO {
     /**
      * 科室id
      */
+    @NotNull(message="科室id不能为空")
     private String deptId;
+
+    /**
+     * 需要去掉的标签id
+     */
+    private List<Long> noIds;
+
+    /**
+     * 归属类型
+     */
+    @NotNull(message="归属类型不能为空")
+    private Integer type;
 }

+ 21 - 0
icssman-service/src/main/java/com/diagbot/vo/GetQuestionUsualAndTypeVO.java

@@ -0,0 +1,21 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * @Description:
+ * @author: wangyu
+ * @time: 2019/3/7 16:14
+ */
+@Getter
+@Setter
+public class GetQuestionUsualAndTypeVO {
+
+    /**
+     * 科室id
+     */
+    private List<Long> deptIds;
+}

+ 7 - 7
icssman-service/src/main/java/com/diagbot/web/DeptVitalController.java

@@ -67,8 +67,8 @@ public class DeptVitalController {
     @PostMapping("/delAllDeptVitalList")
     @SysLogger("delAllDeptVitalList")
     @Transactional
-    public RespDTO<Boolean> delAllDeptVitalList(@RequestParam("deptId") Long deptId) {
-        Boolean data = deptVitalFacade.delAllDeptVitalList(deptId);
+    public RespDTO<Boolean> delAllDeptVitalList(@RequestBody DeptVitalVO deptVitalVO) {
+        Boolean data = deptVitalFacade.delAllDeptVitalList(deptVitalVO.getDeptId());
         return RespDTO.onSuc(data);
     }
 
@@ -76,8 +76,8 @@ public class DeptVitalController {
             notes = "deptId:科室ID,必填<br>")
     @PostMapping("/getModuleByDeptId")
     @SysLogger("getModuleByDeptId")
-    public RespDTO<DeptVitalDTO> getModuleByDeptId(@RequestParam("deptId") Long deptId) {
-        DeptVitalDTO data = deptVitalFacade.getModuleByDeptId(deptId);
+    public RespDTO<DeptVitalDTO> getModuleByDeptId(@RequestBody DeptVitalVO deptVitalVO) {
+        DeptVitalDTO data = deptVitalFacade.getModuleByDeptId(deptVitalVO.getDeptId());
         return RespDTO.onSuc(data);
     }
 
@@ -110,8 +110,8 @@ public class DeptVitalController {
             notes = "deptId:科室ID,必填<br>")
     @PostMapping("/getDeptShortList_modify")
     @SysLogger("getDeptShortList_modify")
-    public RespDTO<DeptShortDTO> getDeptShortListModify(@RequestParam("deptId") Long deptId) {
-        List<DeptShortDTO> data = deptVitalFacade.getDeptShortLisModify(deptId);
+    public RespDTO<DeptShortDTO> getDeptShortListModify(@RequestBody DeptVitalVO deptVitalVO) {
+        List<DeptShortDTO> data = deptVitalFacade.getDeptShortLisModify(deptVitalVO.getDeptId());
         return RespDTO.onSuc(data);
     }
-}
+}

+ 12 - 11
icssman-service/src/main/java/com/diagbot/web/DisclaimerInformationController.java

@@ -1,6 +1,15 @@
 package com.diagbot.web;
 
 
+import javax.validation.Valid;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.diagbot.annotation.SysLogger;
 import com.diagbot.dto.DisclaimerInformationDTO;
@@ -10,17 +19,9 @@ import com.diagbot.vo.DisclaimerInformationAllVO;
 import com.diagbot.vo.DisclaimerInformationIdVO;
 import com.diagbot.vo.DisclaimerInformationTitleVO;
 import com.diagbot.vo.DisclaimerInformationVO;
+
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import javax.validation.Valid;
-import java.util.List;
 
 
 /**
@@ -96,9 +97,9 @@ public class DisclaimerInformationController {
     @PostMapping("/endDisclaimerInformations")
     @SysLogger("endDisclaimerInformations")
     @Transactional
-    public RespDTO<Boolean> endDisclaimerInformations(@Valid @RequestBody DisclaimerInformationIdVO disclaimerInformationIdVO) {
+    public RespDTO<Boolean> endDisclaimerInformations(@Valid @RequestBody DisclaimerInformationIdVO disclaimerInformationEndVO) {
 
-        boolean res = disclaimerInformationFacade.endDisclaimerInformations(disclaimerInformationIdVO);
+        boolean res = disclaimerInformationFacade.endDisclaimerInformations(disclaimerInformationEndVO);
 
         return RespDTO.onSuc(res);
     }

+ 6 - 4
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
@@ -81,7 +81,9 @@ public class QuestionUsualController {
 
     @ApiOperation(value = "常用标签维护——获取标签信息[by:wangyu]",
             notes = "tagName: 标签名称,非必填<br>" +
-                    "deptId: 科室id,如果是添加不用填,如果是修改页面必填<br>")
+                    "deptId: 科室id,如果是添加不用填,如果是修改页面必填<br>" +
+                    "noIds: 需要去掉的标签id,非必填<br>" +
+                    "type: 归属类型,必填")
     @PostMapping("/getQuestionInfo")
     @SysLogger("getQuestionInfo")
     public RespDTO<List<GetQuestionInfoDTO>> getQuestionInfo(@Valid @RequestBody GetQuestionInfoVO getQuestionInfoVO) {

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

@@ -1,9 +1,12 @@
 package com.diagbot.web;
 
+import com.diagbot.dto.FileDTO;
 import com.diagbot.facade.UploadFacade;
 import com.diagbot.util.FastJsonUtils;
+import com.diagbot.util.StringUtil;
 import io.swagger.annotations.Api;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.MediaType;
 import org.springframework.web.bind.annotation.CrossOrigin;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -12,6 +15,9 @@ import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 import org.springframework.web.multipart.MultipartFile;
 
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
 @RestController
 @Api(value = "文件上传API", tags = { "文件上传API" })
 @RequestMapping(value = "/file")
@@ -21,9 +27,16 @@ public class UploadController {
     private UploadFacade uploadFacade;
 
     @CrossOrigin(allowCredentials = "true", allowedHeaders = "*", methods = { RequestMethod.POST }, origins = "*")
-    @PostMapping(value = "/uploadImage", produces = "application/json;charset=UTF-8")
-    public String singleFileUpload(@RequestParam("upfile") MultipartFile file) {
-        String data = FastJsonUtils.getBeanToJson(uploadFacade.singleFileUpload(file));
+    @PostMapping(value = "/uploadImage", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+    public String singleFileUpload(@RequestParam("upfile") MultipartFile file, HttpServletRequest request, HttpServletResponse response) {
+        FileDTO fileDTO = uploadFacade.singleFileUpload(file);
+        String data = FastJsonUtils.getBeanToJson(fileDTO);
+        response.setContentType("text/plain;charset=UTF-8");
+
+        String callback = request.getParameter("callback");//客户端请求参数
+        if (callback != null && StringUtil.isNotBlank(callback)) {
+            data = callback + "(" + data + ")";
+        }
         return data;
     }
 

+ 26 - 8
icssman-service/src/main/java/com/diagbot/web/VersionDetailController.java

@@ -1,22 +1,29 @@
 package com.diagbot.web;
 
 
+import java.util.ArrayList;
+import java.util.List;
+
+import javax.validation.Valid;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
 import com.diagbot.annotation.SysLogger;
 import com.diagbot.dto.RespDTO;
+import com.diagbot.dto.VersionDetailDTO;
 import com.diagbot.facade.VersionDetailFacade;
 import com.diagbot.vo.VersionDetailIdVO;
 import com.diagbot.vo.VersionDetailVO;
 import com.diagbot.vo.VersionInfoAndDetailIdVO;
+import com.diagbot.vo.VersionInfoIdVO;
+
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import javax.validation.Valid;
 
 /**
  * @author wangfeng
@@ -64,4 +71,15 @@ public class VersionDetailController {
 
         return RespDTO.onSuc(res);
     }
+    @ApiOperation(value = "根据版本id获取版本详情信息[by:wangfeng]", notes = "根据版本id获取版本详情信息")
+    @PostMapping("/getDetailById")
+    @SysLogger("getDetailById")
+    @Transactional
+    public RespDTO<List<VersionDetailDTO>> getDetailById(@Valid @RequestBody VersionInfoIdVO versionInfoIdVO)  {
+    	List<Long> ids = new ArrayList<>();
+    	ids.add(versionInfoIdVO.getId());
+    	List<VersionDetailDTO> data = versionDetailFacade.getByIds(ids);
+
+        return RespDTO.onSuc(data);
+    }
 }

+ 13 - 6
icssman-service/src/main/resources/mapper/DeptInfoMapper.xml

@@ -15,11 +15,18 @@
     </resultMap>
 
     <select id="getAllDeptInfo" resultType="com.diagbot.dto.GetDeptInfoDTO">
-        SELECT * FROM `icss_dept_info` WHERE is_deleted = 'N'
-         <if test="name != null and name != ''">
-             AND `name` LIKE CONCAT('%',#{name},'%')
-         </if>
-        order by gmt_modified desc
+        SELECT
+        DISTINCT a.id,a.gmt_create,b.gmt_modified,b.creator,b.modifier,a.`name`,a.remark
+        FROM
+        `icss_dept_info` a
+        LEFT JOIN icss_question_usual b ON a.id = b.dept_id
+        WHERE
+        a.is_deleted = 'N' AND b.is_deleted = 'N'
+        <if test="name != null and name != ''">
+            AND a.`name` LIKE CONCAT('%',#{name},'%')
+        </if>
+        ORDER BY
+        b.gmt_modified DESC
     </select>
 
     <select id="getDeptName" resultType="com.diagbot.dto.DeptInfoDTO">
@@ -36,7 +43,7 @@
 			    icss_question_usual b
 		      WHERE
 		        b.is_deleted = 'N'
-		        AND b.id IN (
+		        AND b.dept_id IN (
 				    SELECT
 					  c.id
 				    FROM

+ 1 - 1
icssman-service/src/main/resources/mapper/DisclaimerInformationMapper.xml

@@ -35,6 +35,6 @@
 		<if test="disAll.title != null">
 		and title like concat('%',#{disAll.title},'%')
 		</if>
-		ORDER BY order_no
+		ORDER BY gmt_create DESC
 	</select>
 </mapper>

+ 7 - 1
icssman-service/src/main/resources/mapper/QuestionInfoMapper.xml

@@ -97,8 +97,8 @@
         `icss_question_info` a
         WHERE
         a.is_deleted = 'N'
-        AND a.type = '1'
         AND a.sub_type = '0'
+        AND a.type = #{type}
         <if test="deptId != null and deptId != ''">
             AND a.id NOT IN (
             SELECT
@@ -110,6 +110,12 @@
             AND b.dept_id = #{deptId}
             )
         </if>
+        <if test="noIds != null and noIds.size != 0">
+            AND a.id NOT IN
+            <foreach  collection="noIds" item="noId" open="("  separator=","  close=")">
+                #{noId}
+            </foreach>
+        </if>
         <if test="tagName != null and tagName != ''">
             AND a.tag_name like CONCAT('%', #{tagName}, '%')
         </if>

+ 13 - 0
icssman-service/src/main/resources/mapper/QuestionUsualMapper.xml

@@ -23,4 +23,17 @@
         </foreach>
     </select>
 
+    <select id="getQuestionUsualByDeptIds" resultType="com.diagbot.dto.GetQuestionUsualAndTypeDTO">
+        SELECT
+	      a.*,b.type
+        FROM
+	      `icss_question_usual` a
+        LEFT JOIN icss_question_info b ON a.question_id = b.id
+        WHERE
+	      a.is_deleted = 'N'
+        AND a.dept_id IN
+        <foreach item="deptId" collection="deptIds" open="(" separator="," close=")">
+            #{deptId}
+        </foreach>
+    </select>
 </mapper>

+ 1 - 1
icssman-service/src/main/resources/mapper/VersionInfoMapper.xml

@@ -31,6 +31,6 @@
 	<if test="versionWrapperNameVO.name != null">
 		AND u.name LIKE CONCAT('%', #{versionWrapperNameVO.name}, '%')
 	</if>
-	ORDER BY u.refresh_time DESC
+	ORDER BY gmt_create DESC
 </select>
 </mapper>