浏览代码

Merge remote-tracking branch 'origin/dev/diagbotcloud20190808_diagnose' into dev/diagbotcloud20190808_diagnose

zhoutg 5 年之前
父节点
当前提交
1f3418aea6

+ 38 - 0
knowledgeman-service/src/main/java/com/diagbot/dto/DiagnosticAllExportDTO.java

@@ -0,0 +1,38 @@
+package com.diagbot.dto;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 
+ * @author wangfeng
+ * @Description: TODO
+ * @date 2019年8月14日 下午2:25:35
+ */
+@Setter
+@Getter
+public class DiagnosticAllExportDTO {
+
+	
+	private String type;
+	private String code;
+	private String standard;
+	private String historyTaking;
+	private String relation;
+	private String result;
+	
+	public DiagnosticAllExportDTO(String type, String code, String standard, String historyTaking, String relation,
+			String result) {
+		this.type = type;
+		this.code = code;
+		this.standard = standard;
+		this.historyTaking = historyTaking;
+		this.relation = relation;
+		this.result = result;
+
+	}
+
+	public DiagnosticAllExportDTO() {
+
+	}
+}

+ 58 - 2
knowledgeman-service/src/main/java/com/diagbot/facade/DiagnoseImportFacade.java

@@ -18,25 +18,30 @@ import org.apache.poi.ss.usermodel.Sheet;
 import org.apache.poi.ss.usermodel.Workbook;
 import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Qualifier;
 import org.springframework.stereotype.Component;
 import org.springframework.web.multipart.MultipartFile;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.diagbot.dto.DiagnoseImportDTO;
+import com.diagbot.dto.DiagnosticAllExportDTO;
 import com.diagbot.dto.DiagnosticBasisExportDTO;
 import com.diagbot.dto.EquationDTO;
 import com.diagbot.dto.FeatureDTO;
 import com.diagbot.dto.RespDTO;
+import com.diagbot.entity.DiagnoseDetail;
 import com.diagbot.entity.DiagnoseQuestion;
 import com.diagbot.enums.DiagnoseFeatureTypeEnum;
 import com.diagbot.enums.IsDeleteEnum;
 import com.diagbot.enums.TermEnum;
 import com.diagbot.exception.CommonErrorCode;
 import com.diagbot.exception.CommonException;
+import com.diagbot.service.DiagnoseDetailService;
 import com.diagbot.service.DiagnoseQuestionService;
 import com.diagbot.util.ExportBeanExcelUtil;
 import com.diagbot.util.GsonUtil;
 import com.diagbot.util.StringUtil;
+import com.diagbot.vo.DiagnosticAllExportVO;
 import com.diagbot.vo.DiagnosticBasisExportVO;
 
 /**
@@ -50,6 +55,9 @@ public class DiagnoseImportFacade {
 
 	@Autowired
 	DiagnoseQuestionService diagnoseQuestionService;
+	@Autowired
+	@Qualifier("diagnoseDetailServiceImpl")
+	DiagnoseDetailService diagnoseDetailService;
 
 	@SuppressWarnings("null")
 	public RespDTO<DiagnoseImportDTO> importDiagnosticBasisAll(MultipartFile file, HttpServletRequest request) {
@@ -211,7 +219,8 @@ public class DiagnoseImportFacade {
 
 	public void exportDiagnosticBasis(DiagnosticBasisExportVO diaExportVO, HttpServletResponse response) {
 		QueryWrapper<DiagnoseQuestion> diaQuery = new QueryWrapper<>();
-		diaQuery.like("dis_name",diaExportVO.getDisName()).like("question_name",diaExportVO.getQuestion()).like("type",diaExportVO.getType()).eq("is_deleted",IsDeleteEnum.N.getKey());
+		diaQuery.like("dis_name", diaExportVO.getDisName()).like("question_name", diaExportVO.getQuestion())
+				.like("type", diaExportVO.getType()).eq("is_deleted", IsDeleteEnum.N.getKey());
 		List<DiagnoseQuestion> datas = diagnoseQuestionService.list(diaQuery);
 
 		GsonUtil.toJson(datas);
@@ -251,15 +260,61 @@ public class DiagnoseImportFacade {
 
 	}
 
+	/**
+	 * 
+	 * @param diaAllExportVO
+	 * @param response
+	 */
+	public void exportDiagnosticAll(DiagnosticAllExportVO diaAllExportVO, HttpServletResponse response) {
+		QueryWrapper<DiagnoseDetail> diaQuery = new QueryWrapper<>();
+		diaQuery.eq("diagnose_id", diaAllExportVO.getDisId()).eq("is_deleted", IsDeleteEnum.N.getKey());
+		List<DiagnoseDetail> datas = diagnoseDetailService.list(diaQuery);
+
+		GsonUtil.toJson(datas);
+		System.out.println(GsonUtil.toJson(datas));
+		List<String> listName = new ArrayList<>();
+
+		listName.add("类型");
+		listName.add("序号");
+		listName.add("标准词*");
+		listName.add("是否需要病史采集");
+		listName.add("关联词");
+		listName.add("结果");
+
+		List<String> listId = new ArrayList<>();
+		listId.add("type");
+		listId.add("code");
+		listId.add("standard");
+		listId.add("historyTaking");
+		listId.add("relation");
+		listId.add("result");
+
+		
+		String disName =(datas.size()>0)?datas.get(0).getDisName():"";
+		List<DiagnosticAllExportDTO> list = new ArrayList<>();
+		for (int i = 0; i < datas.size(); i++) {
+			DiagnoseDetail diagnose = datas.get(i);
+			disName = diagnose.getDisName();
+			list.add(new DiagnosticAllExportDTO(DiagnoseFeatureTypeEnum.getName(diagnose.getType()), diagnose.getCode(),
+					diagnose.getStandard(), "", diagnose.getRelation(), diagnose.getResult()));
+
+		}
+		response.setContentType("text/html;charset=UTF-8");
+		ExportBeanExcelUtil ex = new ExportBeanExcelUtil();
+		ex.exportExcelNew(disName, listName, listId, list, response);
+
+	}
+
 	/**
 	 * 导出类型转换
+	 * 
 	 * @param type
 	 * @param questionType
 	 * @return
 	 */
 	public String getType(Integer type, Integer questionType) {
 		String typeName = "";
-		if (type == DiagnoseFeatureTypeEnum.Dis.getKey()){
+		if (type == DiagnoseFeatureTypeEnum.Dis.getKey()) {
 			typeName = TermEnum.getName(0);
 		} else if (type == DiagnoseFeatureTypeEnum.Symptom.getKey()) {
 			typeName = TermEnum.getName(1);
@@ -296,4 +351,5 @@ public class DiagnoseImportFacade {
 
 		return typeName;
 	}
+
 }

+ 17 - 0
knowledgeman-service/src/main/java/com/diagbot/vo/DiagnosticAllExportVO.java

@@ -0,0 +1,17 @@
+package com.diagbot.vo;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 
+ * @author wangfeng
+ * @Description: TODO
+ * @date 2019年8月14日 下午2:11:45
+ */
+@Getter
+@Setter
+public class DiagnosticAllExportVO {
+
+	private Long disId;
+}

+ 15 - 2
knowledgeman-service/src/main/java/com/diagbot/web/DiagnoseExportImportController.java

@@ -4,6 +4,7 @@ import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
 
 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;
@@ -15,6 +16,7 @@ import org.springframework.web.multipart.MultipartFile;
 import com.diagbot.annotation.SysLoggerExport;
 import com.diagbot.facade.DiagnoseImportFacade;
 import com.diagbot.util.GsonUtil;
+import com.diagbot.vo.DiagnosticAllExportVO;
 import com.diagbot.vo.DiagnosticBasisExportVO;
 
 import io.swagger.annotations.Api;
@@ -28,7 +30,7 @@ import io.swagger.annotations.ApiOperation;
  */
 @RestController
 @RequestMapping("/diagnose")
-@Api(value = "知识库标准化-诊断依据导入API[by:wangfeng]", tags = { "知识库标准化-诊断依据导入API——WF" })
+@Api(value = "知识库标准化-诊断依据导出相关API[by:wangfeng]", tags = { "知识库标准化-诊断依据导出相关API——WF" })
 @SuppressWarnings("unchecked")
 public class DiagnoseExportImportController {
 
@@ -37,6 +39,7 @@ public class DiagnoseExportImportController {
 
     @ApiOperation(value = "导入诊断依据数据:[by:wangfeng]", notes = "导入诊断依据数据")
     @PostMapping(value = "/importDiagnosticBasis", produces="text/html;charset=utf-8")
+    @Transactional
     public String importDiagnosticBasis(@RequestParam("uploadfile") MultipartFile file,HttpServletRequest request) {
         return GsonUtil.toJson(diagnoseImportFacade.importDiagnosticBasisAll(file, request));
     }
@@ -45,9 +48,19 @@ public class DiagnoseExportImportController {
     @PostMapping("/exportDiagnosticBasis")
     @SysLoggerExport("exportDiagnosticBasis")
     @ResponseBody
-    public  void ExportDiagnosticBasis(@RequestBody DiagnosticBasisExportVO diaExportVO,HttpServletRequest request,HttpServletResponse response)
+    public  void exportDiagnosticBasis(@RequestBody DiagnosticBasisExportVO diaExportVO,HttpServletRequest request,HttpServletResponse response)
             throws Exception {
     	diagnoseImportFacade.exportDiagnosticBasis(diaExportVO, response);
         
     }
+    
+    @ApiOperation(value = "导出诊断依据:[by:wangfeng]", notes = "导出诊断依据")
+    @PostMapping("/exportDiagnosticAll")
+    @SysLoggerExport("exportDiagnosticAll")
+    @ResponseBody
+    public  void exportDiagnosticAll(@RequestBody DiagnosticAllExportVO diaAllExportVO,HttpServletRequest request,HttpServletResponse response)
+            throws Exception {
+    	diagnoseImportFacade.exportDiagnosticAll(diaAllExportVO, response);
+        
+    }
 }