Scott 2 жил өмнө
parent
commit
5a6685d9b8
12 өөрчлөгдсөн 175 нэмэгдсэн , 51 устгасан
  1. 41 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/common/ExcelImportUtilService.java
  2. 27 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/common/bo/KnowledgeBaseBO.java
  3. 2 2
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/controller/MaterialItemsController.java
  4. 38 36
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/controller/MedicalInsKnowledgeController.java
  5. 1 1
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/controller/MedicalInsuranceDrugsController.java
  6. 2 2
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/controller/TreatmentItemsController.java
  7. 6 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/entity/MedicalInsKnowledge.java
  8. 7 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/IMedicalInsKnowledgeService.java
  9. 4 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/IMedicalInsuranceDrugsService.java
  10. 29 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/MedicalInsKnowledgeServiceImpl.java
  11. 17 9
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/MedicalInsuranceDrugsServiceImpl.java
  12. 1 1
      jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml

+ 41 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/common/ExcelImportUtilService.java

@@ -1,16 +1,27 @@
 package org.jeecg.modules.medical.common;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import lombok.extern.slf4j.Slf4j;
+import org.apache.shiro.SecurityUtils;
 import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.common.util.oConvertUtils;
 import org.jeecg.modules.medical.common.interfaces.BiFunction;
 import org.jeecg.modules.medical.entity.MedicalInsuranceDrugs;
 import org.jeecgframework.poi.excel.ExcelImportUtil;
+import org.jeecgframework.poi.excel.def.NormalExcelConstants;
+import org.jeecgframework.poi.excel.entity.ExportParams;
 import org.jeecgframework.poi.excel.entity.ImportParams;
+import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
+import org.jetbrains.annotations.NotNull;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
 import org.springframework.web.multipart.MultipartFile;
 import org.springframework.web.multipart.MultipartHttpServletRequest;
+import org.springframework.web.servlet.ModelAndView;
 
 import javax.servlet.http.HttpServletRequest;
 import java.io.IOException;
@@ -30,6 +41,8 @@ import java.util.stream.Collectors;
 @Component
 public class ExcelImportUtilService {
 
+    @Value("${jeecg.path.upload}")
+    private String upLoadPath;
     /**
      *
      * @param request
@@ -126,4 +139,32 @@ public class ExcelImportUtilService {
         }
         return Result.error("文件导入失败!");
     }
+
+    public <T extends Serializable> ModelAndView getModelAndView(HttpServletRequest request, T object, Class<T> clazz, String title) {
+        QueryWrapper<T> queryWrapper = QueryGenerator.initQueryWrapper(object, request.getParameterMap());
+        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+
+        // 过滤选中数据
+        String selections = request.getParameter("selections");
+        if (oConvertUtils.isNotEmpty(selections)) {
+            List<String> selectionList = Arrays.asList(selections.split(","));
+            queryWrapper.in("id",selectionList);
+        }
+        // Step.2 获取导出数据
+        List<T> exportList = new ArrayList<>();
+
+        // Step.3 AutoPoi 导出Excel
+        ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
+        //此处设置的filename无效 ,前端会重更新设置一下
+        mv.addObject(NormalExcelConstants.FILE_NAME, title);
+        mv.addObject(NormalExcelConstants.CLASS, clazz);
+        //update-begin--Author:liusq  Date:20210126 for:图片导出报错,ImageBasePath未设置--------------------
+        ExportParams exportParams=new ExportParams(title + "报表", "导出人:" + sysUser.getRealname(), title);
+        exportParams.setImageBasePath(upLoadPath);
+        //update-end--Author:liusq  Date:20210126 for:图片导出报错,ImageBasePath未设置----------------------
+        mv.addObject(NormalExcelConstants.PARAMS,exportParams);
+        mv.addObject(NormalExcelConstants.DATA_LIST, exportList);
+        return mv;
+
+    }
 }

+ 27 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/common/bo/KnowledgeBaseBO.java

@@ -0,0 +1,27 @@
+package org.jeecg.modules.medical.common.bo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author soft01
+ * @time 2023/5/14 19:01
+ * @description '这里描写类的用途'
+ * @parentProject medical-java
+ */
+@Data
+public class KnowledgeBaseBO {
+
+    @ApiModelProperty(value = "id")
+    private String id;
+    @ApiModelProperty(value = "文件名称")
+    private String fileName;
+    @ApiModelProperty(value = "源文件名称")
+    private String srcFileName;
+    @ApiModelProperty(value = "文件分类")
+    private String classification;
+    @ApiModelProperty(value = "文件分类显示")
+    private String classificationText;
+    @ApiModelProperty(value = "文件保存路径")
+    private String filePath;
+}

+ 2 - 2
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/controller/MaterialItemsController.java

@@ -135,7 +135,7 @@ public class MaterialItemsController extends JeecgController<MaterialItems, IMat
 	}
 
     /**
-    * 导出excel
+    * 导出excel模板
     *
     * @param request
     * @param materialItems
@@ -143,7 +143,7 @@ public class MaterialItemsController extends JeecgController<MaterialItems, IMat
 //    @RequiresPermissions("medical:material_items:exportXls")
     @RequestMapping(value = "/exportXls")
     public ModelAndView exportXls(HttpServletRequest request, MaterialItems materialItems) {
-        return super.exportXls(request, materialItems, MaterialItems.class, "material_items");
+        return super.exportXlsEmpty(request, materialItems, MaterialItems.class, "material_items");
     }
 
     /**

+ 38 - 36
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/controller/MedicalInsKnowledgeController.java

@@ -1,41 +1,27 @@
 package org.jeecg.modules.medical.controller;
 
-import java.util.Arrays;
-import java.util.List;
-import java.util.Map;
-import java.util.stream.Collectors;
-import java.io.IOException;
-import java.io.UnsupportedEncodingException;
-import java.net.URLDecoder;
-import javax.servlet.http.HttpServletRequest;
-import javax.servlet.http.HttpServletResponse;
-import org.jeecg.common.api.vo.Result;
-import org.jeecg.common.system.query.QueryGenerator;
-import org.jeecg.common.util.oConvertUtils;
-import org.jeecg.modules.medical.entity.MedicalInsKnowledge;
-import org.jeecg.modules.medical.service.IMedicalInsKnowledgeService;
-
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
 import lombok.extern.slf4j.Slf4j;
-
-import org.jeecgframework.poi.excel.ExcelImportUtil;
-import org.jeecgframework.poi.excel.def.NormalExcelConstants;
-import org.jeecgframework.poi.excel.entity.ExportParams;
-import org.jeecgframework.poi.excel.entity.ImportParams;
-import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
+import org.apache.shiro.authz.annotation.RequiresPermissions;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.aspect.annotation.AutoLog;
 import org.jeecg.common.system.base.controller.JeecgController;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.common.system.util.JwtUtil;
+import org.jeecg.modules.medical.common.bo.KnowledgeBaseBO;
+import org.jeecg.modules.medical.entity.MedicalInsKnowledge;
+import org.jeecg.modules.medical.service.IMedicalInsKnowledgeService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
-import org.springframework.web.multipart.MultipartFile;
-import org.springframework.web.multipart.MultipartHttpServletRequest;
 import org.springframework.web.servlet.ModelAndView;
-import com.alibaba.fastjson.JSON;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import org.jeecg.common.aspect.annotation.AutoLog;
-import org.apache.shiro.authz.annotation.RequiresPermissions;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.util.Arrays;
 
  /**
  * @Description: medical_ins_knowledge
@@ -50,7 +36,7 @@ import org.apache.shiro.authz.annotation.RequiresPermissions;
 public class MedicalInsKnowledgeController extends JeecgController<MedicalInsKnowledge, IMedicalInsKnowledgeService> {
 	@Autowired
 	private IMedicalInsKnowledgeService medicalInsKnowledgeService;
-	
+
 	/**
 	 * 分页列表查询
 	 *
@@ -72,22 +58,38 @@ public class MedicalInsKnowledgeController extends JeecgController<MedicalInsKno
 		IPage<MedicalInsKnowledge> pageList = medicalInsKnowledgeService.page(page, queryWrapper);
 		return Result.OK(pageList);
 	}
-	
+
 	/**
 	 *   添加
 	 *
 	 * @param medicalInsKnowledge
 	 * @return
 	 */
-	@AutoLog(value = "medical_ins_knowledge-添加")
+/*	@AutoLog(value = "medical_ins_knowledge-添加")
 	@ApiOperation(value="medical_ins_knowledge-添加", notes="medical_ins_knowledge-添加")
 	@RequiresPermissions("medical:medical_ins_knowledge:add")
 	@PostMapping(value = "/add")
 	public Result<String> add(@RequestBody MedicalInsKnowledge medicalInsKnowledge) {
 		medicalInsKnowledgeService.save(medicalInsKnowledge);
 		return Result.OK("添加成功!");
-	}
-	
+	}*/
+
+	 /**
+	  *   添加
+	  *
+	  * @param medicalInsKnowledge
+	  * @return
+	  */
+	 @AutoLog(value = "medical_ins_knowledge-添加")
+	 @ApiOperation(value="medical_ins_knowledge-添加", notes="medical_ins_knowledge-添加")
+	 @RequiresPermissions("medical:medical_ins_knowledge:add")
+	 @PostMapping(value = "/add")
+	 public Result<String> add(HttpServletRequest request, @RequestBody KnowledgeBaseBO knowledgeBaseBO) {
+		 String username = JwtUtil.getUserNameByToken(request);
+		 medicalInsKnowledgeService.fileUploadSave(username, knowledgeBaseBO);
+		 return Result.OK("添加成功!");
+	 }
+
 	/**
 	 *  编辑
 	 *
@@ -102,7 +104,7 @@ public class MedicalInsKnowledgeController extends JeecgController<MedicalInsKno
 		medicalInsKnowledgeService.updateById(medicalInsKnowledge);
 		return Result.OK("编辑成功!");
 	}
-	
+
 	/**
 	 *   通过id删除
 	 *
@@ -117,7 +119,7 @@ public class MedicalInsKnowledgeController extends JeecgController<MedicalInsKno
 		medicalInsKnowledgeService.removeById(id);
 		return Result.OK("删除成功!");
 	}
-	
+
 	/**
 	 *  批量删除
 	 *
@@ -132,7 +134,7 @@ public class MedicalInsKnowledgeController extends JeecgController<MedicalInsKno
 		this.medicalInsKnowledgeService.removeByIds(Arrays.asList(ids.split(",")));
 		return Result.OK("批量删除成功!");
 	}
-	
+
 	/**
 	 * 通过id查询
 	 *

+ 1 - 1
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/controller/MedicalInsuranceDrugsController.java

@@ -159,7 +159,7 @@ public class MedicalInsuranceDrugsController extends JeecgController<MedicalInsu
 //    @RequiresPermissions("medical:medical_insurance_drugs:exportXls")
     @RequestMapping(value = "/exportXls")
     public ModelAndView exportXls(HttpServletRequest request, MedicalInsuranceDrugs medicalInsuranceDrugs) {
-        return super.exportXls(request, medicalInsuranceDrugs, MedicalInsuranceDrugs.class, "medical_insurance_drugs");
+        return super.exportXlsEmpty(request, medicalInsuranceDrugs, MedicalInsuranceDrugs.class, "medical_insurance_drugs");
     }
 
     /**

+ 2 - 2
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/controller/TreatmentItemsController.java

@@ -151,7 +151,7 @@ public class TreatmentItemsController extends JeecgController<TreatmentItems, IT
 	}
 
     /**
-    * 导出excel
+    * 导出excel模板
     *
     * @param request
     * @param treatmentItems
@@ -159,7 +159,7 @@ public class TreatmentItemsController extends JeecgController<TreatmentItems, IT
 //    @RequiresPermissions("medical:treatment_items:exportXls")
     @RequestMapping(value = "/exportXls")
     public ModelAndView exportXls(HttpServletRequest request, TreatmentItems treatmentItems) {
-        return super.exportXls(request, treatmentItems, TreatmentItems.class, "treatment_items");
+        return super.exportXlsEmpty(request, treatmentItems, TreatmentItems.class, "treatment_items");
     }
 
     /**

+ 6 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/entity/MedicalInsKnowledge.java

@@ -52,6 +52,12 @@ public class MedicalInsKnowledge implements Serializable {
 	@Excel(name = "文件上传时间", width = 15)
     @ApiModelProperty(value = "文件上传时间")
     private java.lang.String fileUploadTime;
+
+    @ApiModelProperty("文件分类code")
+    private String classification;
+    @ApiModelProperty("文件分类文字")
+    private String classificationText;
+
 	/**状态*/
 	@Excel(name = "状态", width = 15)
     @ApiModelProperty(value = "状态")

+ 7 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/IMedicalInsKnowledgeService.java

@@ -1,5 +1,6 @@
 package org.jeecg.modules.medical.service;
 
+import org.jeecg.modules.medical.common.bo.KnowledgeBaseBO;
 import org.jeecg.modules.medical.entity.MedicalInsKnowledge;
 import com.baomidou.mybatisplus.extension.service.IService;
 
@@ -11,4 +12,10 @@ import com.baomidou.mybatisplus.extension.service.IService;
  */
 public interface IMedicalInsKnowledgeService extends IService<MedicalInsKnowledge> {
 
+
+    /**
+     * 文件上传后的保存
+     * @param knowledgeBaseBO
+     */
+    void fileUploadSave(String username, KnowledgeBaseBO knowledgeBaseBO);
 }

+ 4 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/IMedicalInsuranceDrugsService.java

@@ -3,9 +3,11 @@ package org.jeecg.modules.medical.service;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.modules.medical.entity.MedicalInsuranceDrugs;
 import com.baomidou.mybatisplus.extension.service.IService;
+import org.springframework.web.servlet.ModelAndView;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
+import java.io.Serializable;
 import java.util.List;
 
 /**
@@ -30,4 +32,6 @@ public interface IMedicalInsuranceDrugsService extends IService<MedicalInsurance
      * @return
      */
     List<MedicalInsuranceDrugs> listByMedicineCodeIn(List<String> medicineCodes);
+
+
 }

+ 29 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/MedicalInsKnowledgeServiceImpl.java

@@ -1,11 +1,17 @@
 package org.jeecg.modules.medical.service.impl;
 
+import net.sf.saxon.expr.Component;
+import org.jeecg.modules.medical.common.bo.KnowledgeBaseBO;
 import org.jeecg.modules.medical.entity.MedicalInsKnowledge;
 import org.jeecg.modules.medical.mapper.MedicalInsKnowledgeMapper;
 import org.jeecg.modules.medical.service.IMedicalInsKnowledgeService;
 import org.springframework.stereotype.Service;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.util.StringUtils;
+
+import javax.xml.crypto.Data;
+import java.util.Date;
 
 /**
  * @Description: medical_ins_knowledge
@@ -16,4 +22,27 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 @Service
 public class MedicalInsKnowledgeServiceImpl extends ServiceImpl<MedicalInsKnowledgeMapper, MedicalInsKnowledge> implements IMedicalInsKnowledgeService {
 
+    @Override
+    public void fileUploadSave(String loginUserId, KnowledgeBaseBO knowledgeBaseBO) {
+        MedicalInsKnowledge entity = new MedicalInsKnowledge();
+        Date nowDate = new Date();
+        if (StringUtils.hasText(knowledgeBaseBO.getId())) {
+            entity = this.getById(knowledgeBaseBO.getId());
+        }
+        if (entity == null) {
+            entity = new MedicalInsKnowledge();
+            entity.setCreateTime(nowDate);
+            entity.setCreatedBy(loginUserId);
+        } else {
+            entity.setUpdatedTime(nowDate);
+            entity.setUpdatedBy(loginUserId);
+        }
+        entity.setFilePath(knowledgeBaseBO.getFilePath());
+        entity.setClassification(knowledgeBaseBO.getClassification());
+        entity.setClassificationText(knowledgeBaseBO.getClassificationText());
+        entity.setSysFileName(knowledgeBaseBO.getFileName());
+        entity.setSrcFileName(knowledgeBaseBO.getSrcFileName());
+        entity.setRevision(1);
+        this.saveOrUpdate(entity);
+    }
 }

+ 17 - 9
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/MedicalInsuranceDrugsServiceImpl.java

@@ -1,33 +1,36 @@
 package org.jeecg.modules.medical.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.extern.slf4j.Slf4j;
-import org.checkerframework.checker.nullness.qual.Nullable;
+import org.apache.shiro.SecurityUtils;
 import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.system.query.QueryGenerator;
 import org.jeecg.common.system.util.JwtUtil;
+import org.jeecg.common.system.vo.LoginUser;
+import org.jeecg.common.util.oConvertUtils;
 import org.jeecg.modules.medical.common.ExcelImportUtilService;
-import org.jeecg.modules.medical.common.interfaces.BiFunction;
 import org.jeecg.modules.medical.entity.MedicalInsuranceDrugs;
-import org.jeecg.modules.medical.entity.TreatmentItems;
 import org.jeecg.modules.medical.mapper.MedicalInsuranceDrugsMapper;
 import org.jeecg.modules.medical.service.IMedicalInsuranceDrugsService;
-import org.jeecgframework.poi.excel.ExcelImportUtil;
-import org.jeecgframework.poi.excel.entity.ImportParams;
+import org.jeecgframework.poi.excel.def.NormalExcelConstants;
+import org.jeecgframework.poi.excel.entity.ExportParams;
+import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
+import org.jetbrains.annotations.NotNull;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
 import org.springframework.util.ObjectUtils;
-import org.springframework.web.multipart.MultipartFile;
-import org.springframework.web.multipart.MultipartHttpServletRequest;
+import org.springframework.web.servlet.ModelAndView;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
-import java.io.IOException;
+import java.io.Serializable;
 import java.util.*;
-import java.util.function.Function;
 import java.util.stream.Collectors;
 
 /**
@@ -41,6 +44,8 @@ import java.util.stream.Collectors;
 @Service
 public class MedicalInsuranceDrugsServiceImpl extends ServiceImpl<MedicalInsuranceDrugsMapper, MedicalInsuranceDrugs> implements IMedicalInsuranceDrugsService {
 
+
+
     @Autowired
     private ExcelImportUtilService excelImportUtilService;
 
@@ -180,4 +185,7 @@ public class MedicalInsuranceDrugsServiceImpl extends ServiceImpl<MedicalInsuran
                 .in(MedicalInsuranceDrugs::getMedicineCode, medicineCodes);
         return list(in);
     }
+
+
+
 }

+ 1 - 1
jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml

@@ -181,7 +181,7 @@ jeecg:
     app: http://localhost:8051
   path:
     #文件上传根目录 设置
-    upload: /Users/lanhongjie/Documents/temp
+    upload: X:/medical
     #webapp文件路径
     webapp: /Users/lanhongjie/Documents/temp/webapp
   shiro: