瀏覽代碼

配置管理

lenovodn 2 年之前
父節點
當前提交
9fb61c40c8
共有 14 個文件被更改,包括 389 次插入185 次删除
  1. 13 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/BiFunction.java
  2. 38 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/QueryPageComment.java
  3. 60 10
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/controller/FactorEnchanceController.java
  4. 0 19
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/controller/MedicalInsRuleInfoController.java
  5. 145 115
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/controller/RuleFactorRelaController.java
  6. 73 36
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/entity/FactorEnchance.java
  7. 6 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/entity/MedicalIns.java
  8. 5 4
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/entity/RuleFactorRela.java
  9. 2 1
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/RuleFactorRelaMapper.java
  10. 8 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/xml/RuleFactorRelaMapper.xml
  11. 2 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/IMedicalInsRuleInfoService.java
  12. 6 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/IRuleFactorRelaService.java
  13. 20 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/MedicalInsRuleInfoServiceImpl.java
  14. 11 0
      jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/service/impl/RuleFactorRelaServiceImpl.java

+ 13 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/BiFunction.java

@@ -0,0 +1,13 @@
+package org.jeecg.modules.medical;
+
+/**
+ * @author Scott
+ * @apiNote  提供一个函数式接口,方便单个参数,单个返回的方法参数传递
+ * @param <T>
+ * @param <R>
+ */
+@FunctionalInterface
+public interface BiFunction<T, R> {
+
+    R process(T t);
+}

+ 38 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/QueryPageComment.java

@@ -0,0 +1,38 @@
+package org.jeecg.modules.medical;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.springframework.beans.BeanUtils;
+import org.springframework.util.CollectionUtils;
+import org.springframework.util.StringUtils;
+
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
+
+public class QueryPageComment<P, R, T> {
+
+    /**
+     * 浅克隆转换,适合返回对象只有一层引用的实体
+     * @param usersPage
+     * @param process
+     * @return
+     */
+    public IPage<R> convertTableToResponsePageShallowClone(IPage<T> usersPage, BiFunction<T,R> process) {
+        List<T> records = usersPage.getRecords();
+        IPage<R> resultPage = new Page<>();
+        BeanUtils.copyProperties(usersPage, resultPage);
+        if (CollectionUtils.isEmpty(records)) {
+            resultPage.setRecords(new ArrayList<>());
+            return resultPage;
+        }
+        List<R> processResult = records.stream()
+                .map(process::process).collect(Collectors.toList());
+        resultPage.setRecords(processResult);
+        return resultPage;
+    }
+
+}

+ 60 - 10
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/controller/FactorEnchanceController.java

@@ -10,6 +10,8 @@ import javax.servlet.http.HttpServletResponse;
 
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
+import org.apache.commons.collections.ArrayStack;
+import org.apache.commons.collections.list.AbstractLinkedList;
 import org.apache.shiro.SecurityUtils;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.constant.CommonConstant;
@@ -19,24 +21,22 @@ import org.jeecg.common.system.vo.LoginUser;
 import org.jeecg.common.util.oConvertUtils;
 import org.jeecg.modules.medical.Constant;
 import org.jeecg.modules.medical.EnchanceTypeEnum;
-import org.jeecg.modules.medical.entity.FactorAttrRela;
-import org.jeecg.modules.medical.entity.FactorCondRela;
-import org.jeecg.modules.medical.entity.FactorEnchance;
-import org.jeecg.modules.medical.service.IFactorAttrRelaService;
-import org.jeecg.modules.medical.service.IFactorCondRelaService;
-import org.jeecg.modules.medical.service.IFactorEnchanceService;
+import org.jeecg.modules.medical.entity.*;
+import org.jeecg.modules.medical.service.*;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import lombok.extern.slf4j.Slf4j;
 
+import org.jeecg.modules.medical.vo.CommonResponse;
 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.jeecg.common.system.base.controller.JeecgController;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
@@ -65,6 +65,10 @@ public class FactorEnchanceController extends JeecgController<FactorEnchance, IF
     private IFactorCondRelaService factorCondRelaService;
     @Autowired
     private IFactorAttrRelaService factorAttrRelaService;
+    @Autowired
+    private IMedicalInsRuleInfoService medicalInsRuleInfoService;
+    @Autowired
+    private IRuleFactorRelaService ruleFactorRelaService;
 
     /**
      * 分页列表查询
@@ -88,14 +92,14 @@ public class FactorEnchanceController extends JeecgController<FactorEnchance, IF
         IPage<FactorEnchance> pageList = factorEnchanceService.page(page, queryWrapper);
         pageList.getRecords().forEach(it -> {
             if (it.getEnhanceType() == 1) {
-                List<FactorAttrRela> inList = factorAttrRelaService.lambdaQuery().eq(FactorAttrRela::getIoType,Constant.INPUT).eq(FactorAttrRela::getFactorEnhanceId, it.getId()).list();
-                if(inList.size()>0){
+                List<FactorAttrRela> inList = factorAttrRelaService.lambdaQuery().eq(FactorAttrRela::getIoType, Constant.INPUT).eq(FactorAttrRela::getFactorEnhanceId, it.getId()).list();
+                if (inList.size() > 0) {
                     inList.sort(Comparator.comparing(FactorAttrRela::getSeqNum));
                     List<Integer> in = inList.stream().map(item -> item.getEventAttrId()).collect(Collectors.toList());
                     it.setInParamList(in);
                 }
-                List<FactorAttrRela> outList = factorAttrRelaService.lambdaQuery().eq(FactorAttrRela::getIoType,Constant.OUTPUT).eq(FactorAttrRela::getFactorEnhanceId, it.getId()).list();
-                if(outList.size()>0){
+                List<FactorAttrRela> outList = factorAttrRelaService.lambdaQuery().eq(FactorAttrRela::getIoType, Constant.OUTPUT).eq(FactorAttrRela::getFactorEnhanceId, it.getId()).list();
+                if (outList.size() > 0) {
                     inList.sort(Comparator.comparing(FactorAttrRela::getSeqNum));
                     List<Integer> out = outList.stream().map(item -> item.getEventAttrId()).collect(Collectors.toList());
                     it.setOutParamList(out);
@@ -250,4 +254,50 @@ public class FactorEnchanceController extends JeecgController<FactorEnchance, IF
         return super.importExcel(request, response, FactorEnchance.class);
     }
 
+    /**
+     * 树形弹窗规则配置
+     */
+    @ApiOperation(value = "树形弹窗规则配置", notes = "树形弹窗规则配置")
+    @GetMapping(value = "/pageByParentId")
+    public Result<IPage<FactorEnchance>> pageByParentId(@RequestParam(name = "medicalInsRuleInfoId") Integer medicalInsRuleInfoId,
+                                                        @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+                                                        @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
+                                                        HttpServletRequest req) {
+        //获取共享规则ID
+        Integer shareRulesId = medicalInsRuleInfoService.getShareRulesId();
+        //获取已存在的要素
+        List<RuleFactorRela> list = ruleFactorRelaService.lambdaQuery().eq(RuleFactorRela::getMedicalInsRuleInfoId, medicalInsRuleInfoId).list();
+        FactorEnchance factorEnchance = new FactorEnchance();
+        QueryWrapper<FactorEnchance> queryWrapper = QueryGenerator.initQueryWrapper(factorEnchance, req.getParameterMap());
+        Page<FactorEnchance> page = new Page<FactorEnchance>(pageNo, pageSize);
+        queryWrapper.eq("del_flag", CommonConstant.DEL_FLAG_0);
+        queryWrapper.in("factor_catalog", medicalInsRuleInfoId, shareRulesId);
+        //包括自身规则 -
+        if (list.size() > 0) {
+            queryWrapper.notIn("id", list.stream().map(RuleFactorRela::getFactorEnhanceId).collect(Collectors.toList()));
+        }
+        IPage<FactorEnchance> pageList = factorEnchanceService.page(page, queryWrapper);
+        return Result.OK(pageList);
+    }
+
+    /**
+     * 获取配置规则共享规则下拉数据
+     */
+    @ApiOperation(value = "配置规则类别对应数据", notes = "配置规则类别对应数据")
+    @GetMapping(value = "/relaChildrenList")
+    public Result<List<CommonResponse>> relaChildrenList(@RequestParam(name = "medicalInsRuleInfoId") Integer medicalInsRuleInfoId, HttpServletRequest req) {
+        List<RuleFactorRela> list = ruleFactorRelaService.list(medicalInsRuleInfoId);
+        List<CommonResponse> responses = new ArrayList<>();
+        if (list.size() > 0) {
+            for (RuleFactorRela info : list) {
+                CommonResponse response = new CommonResponse();
+                response.setId(info.getFactorEnhanceId());
+                response.setName(info.getRuleEnchanceName());
+                responses.add(response);
+            }
+        }
+        return Result.OK(responses);
+    }
+
+
 }

+ 0 - 19
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/controller/MedicalInsRuleInfoController.java

@@ -112,19 +112,6 @@ public class MedicalInsRuleInfoController extends JeecgController<MedicalInsRule
     }
 
 
-    @ApiOperation(value = "配置规则类别对应数据", notes = "配置规则类别对应数据")
-    @GetMapping(value = "/relaChildrenList")
-    public Result<List<CommonResponse>> relaChildrenList(@RequestParam(name = "category") String category, HttpServletRequest req) {
-        List<MedicalInsRuleInfo> list = medicalInsRuleInfoService.lambdaQuery().eq(MedicalInsRuleInfo::getCategory, category).list();
-        List<CommonResponse> responses = new ArrayList<>();
-        for (MedicalInsRuleInfo info : list) {
-            CommonResponse response = new CommonResponse();
-            response.setId(info.getId());
-            response.setName(info.getRuleName());
-            responses.add(response);
-        }
-        return Result.OK(responses);
-    }
 
     @ApiOperation(value = "通过医保规则ID获取规则项目分页", notes = "通过医保规则ID获取规则项目分页")
     @GetMapping(value = "/projectPage")
@@ -153,14 +140,8 @@ public class MedicalInsRuleInfoController extends JeecgController<MedicalInsRule
     }
 
 
-    /**
-     * 规则配置
-     */
 
 
-    /**
-     * 获取配置规则共享规则数据
-     */
 
 
     /**

+ 145 - 115
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/controller/RuleFactorRelaController.java

@@ -9,6 +9,7 @@ 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;
@@ -37,125 +38,154 @@ import io.swagger.annotations.ApiOperation;
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.apache.shiro.authz.annotation.RequiresPermissions;
 
- /**
+/**
  * @Description: rule_factor_rela
  * @Author: jeecg-boot
- * @Date:   2023-04-23
+ * @Date: 2023-04-23
  * @Version: V1.0
  */
-@Api(tags="配置规则关联")
+@Api(tags = "配置规则关联")
 @RestController
 @RequestMapping("/medical/ruleFactorRela")
 @Slf4j
 public class RuleFactorRelaController extends JeecgController<RuleFactorRela, IRuleFactorRelaService> {
-	@Autowired
-	private IRuleFactorRelaService ruleFactorRelaService;
-	
-	/**
-	 * 分页列表查询
-	 *
-	 * @param ruleFactorRela
-	 * @param pageNo
-	 * @param pageSize
-	 * @param req
-	 * @return
-	 */
-	//@AutoLog(value = "rule_factor_rela-分页列表查询")
-	@ApiOperation(value="rule_factor_rela-分页列表查询", notes="rule_factor_rela-分页列表查询")
-	@GetMapping(value = "/list")
-	public Result<IPage<RuleFactorRela>> queryPageList(RuleFactorRela ruleFactorRela,
-								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
-								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
-								   HttpServletRequest req) {
-		QueryWrapper<RuleFactorRela> queryWrapper = QueryGenerator.initQueryWrapper(ruleFactorRela, req.getParameterMap());
-		Page<RuleFactorRela> page = new Page<RuleFactorRela>(pageNo, pageSize);
-		IPage<RuleFactorRela> pageList = ruleFactorRelaService.page(page, queryWrapper);
-		return Result.OK(pageList);
-	}
-	
-	/**
-	 *   添加
-	 *
-	 * @param ruleFactorRela
-	 * @return
-	 */
-	@AutoLog(value = "rule_factor_rela-添加")
-	@ApiOperation(value="rule_factor_rela-添加", notes="rule_factor_rela-添加")
-	@RequiresPermissions("medical:rule_factor_rela:add")
-	@PostMapping(value = "/add")
-	public Result<String> add(@RequestBody RuleFactorRela ruleFactorRela) {
-		ruleFactorRelaService.save(ruleFactorRela);
-		return Result.OK("添加成功!");
-	}
-	
-	/**
-	 *  编辑
-	 *
-	 * @param ruleFactorRela
-	 * @return
-	 */
-	@AutoLog(value = "rule_factor_rela-编辑")
-	@ApiOperation(value="rule_factor_rela-编辑", notes="rule_factor_rela-编辑")
-	@RequiresPermissions("medical:rule_factor_rela:edit")
-	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
-	public Result<String> edit(@RequestBody RuleFactorRela ruleFactorRela) {
-		ruleFactorRelaService.updateById(ruleFactorRela);
-		return Result.OK("编辑成功!");
-	}
-	
-	/**
-	 *   通过id删除
-	 *
-	 * @param id
-	 * @return
-	 */
-	@AutoLog(value = "rule_factor_rela-通过id删除")
-	@ApiOperation(value="rule_factor_rela-通过id删除", notes="rule_factor_rela-通过id删除")
-	@RequiresPermissions("medical:rule_factor_rela:delete")
-	@DeleteMapping(value = "/delete")
-	public Result<String> delete(@RequestParam(name="id",required=true) String id) {
-		ruleFactorRelaService.removeById(id);
-		return Result.OK("删除成功!");
-	}
-	
-	/**
-	 *  批量删除
-	 *
-	 * @param ids
-	 * @return
-	 */
-	@AutoLog(value = "rule_factor_rela-批量删除")
-	@ApiOperation(value="rule_factor_rela-批量删除", notes="rule_factor_rela-批量删除")
-	@RequiresPermissions("medical:rule_factor_rela:deleteBatch")
-	@DeleteMapping(value = "/deleteBatch")
-	public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
-		this.ruleFactorRelaService.removeByIds(Arrays.asList(ids.split(",")));
-		return Result.OK("批量删除成功!");
-	}
-	
-	/**
-	 * 通过id查询
-	 *
-	 * @param id
-	 * @return
-	 */
-	//@AutoLog(value = "rule_factor_rela-通过id查询")
-	@ApiOperation(value="rule_factor_rela-通过id查询", notes="rule_factor_rela-通过id查询")
-	@GetMapping(value = "/queryById")
-	public Result<RuleFactorRela> queryById(@RequestParam(name="id",required=true) String id) {
-		RuleFactorRela ruleFactorRela = ruleFactorRelaService.getById(id);
-		if(ruleFactorRela==null) {
-			return Result.error("未找到对应数据");
-		}
-		return Result.OK(ruleFactorRela);
-	}
+    @Autowired
+    private IRuleFactorRelaService ruleFactorRelaService;
+
+    /**
+     * 分页列表查询
+     *
+     * @param ruleFactorRela
+     * @param pageNo
+     * @param pageSize
+     * @param req
+     * @return
+     */
+    //@AutoLog(value = "rule_factor_rela-分页列表查询")
+    @ApiOperation(value = "rule_factor_rela-分页列表查询", notes = "rule_factor_rela-分页列表查询")
+    @GetMapping(value = "/list")
+    public Result<IPage<RuleFactorRela>> queryPageList(RuleFactorRela ruleFactorRela,
+                                                       @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+                                                       @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
+                                                       HttpServletRequest req) {
+        QueryWrapper<RuleFactorRela> queryWrapper = QueryGenerator.initQueryWrapper(ruleFactorRela, req.getParameterMap());
+        Page<RuleFactorRela> page = new Page<RuleFactorRela>(pageNo, pageSize);
+        IPage<RuleFactorRela> pageList = ruleFactorRelaService.page(page, queryWrapper);
+        return Result.OK(pageList);
+    }
+
+    /**
+     * 配置规则 添加
+     *
+     * @param ruleFactorRela
+     * @return
+     */
+    @AutoLog(value = "rule_factor_rela-添加")
+    @ApiOperation(value = "rule_factor_rela-添加", notes = "rule_factor_rela-添加")
+    @RequiresPermissions("medical:rule_factor_rela:add")
+    @PostMapping(value = "/add")
+    public Result<String> add(@RequestBody RuleFactorRela ruleFactorRela) {
+        ruleFactorRelaService.save(ruleFactorRela);
+        return Result.OK("添加成功!");
+    }
+
+    /**
+     * 编辑
+     *
+     * @param ruleFactorRela
+     * @return
+     */
+    @AutoLog(value = "rule_factor_rela-编辑")
+    @ApiOperation(value = "rule_factor_rela-编辑", notes = "rule_factor_rela-编辑")
+    @RequiresPermissions("medical:rule_factor_rela:edit")
+    @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST})
+    public Result<String> edit(@RequestBody RuleFactorRela ruleFactorRela) {
+        ruleFactorRelaService.updateById(ruleFactorRela);
+        return Result.OK("编辑成功!");
+    }
+
+
+    @AutoLog(value = "配置规则批量添加")
+    @ApiOperation(value = "配置规则批量添加", notes = "配置规则批量添加")
+    @PostMapping(value = "/addList")
+    public Result<String> addList(@RequestBody List<RuleFactorRela> list) {
+        if (list.size() > 0) {
+            Integer seqNum = ruleFactorRelaService.maxSeqNum(list.get(0).getMedicalInsRuleInfoId());
+            list.stream().forEach(it -> {
+                it.setSeqNum(seqNum + 1);
+            });
+            ruleFactorRelaService.saveBatch(list);
+        }
+        return Result.OK("添加成功!");
+    }
+
+    /**
+     * 排序编辑
+     *
+     * @param ruleFactorRela
+     * @return
+     */
+    @AutoLog(value = "配置规则批量排序")
+    @ApiOperation(value = "配置规则批量排序", notes = "配置规则批量排序")
+    @RequestMapping(value = "/editList", method = {RequestMethod.PUT, RequestMethod.POST})
+    public Result<String> editList(@RequestBody List<RuleFactorRela> ruleFactorRela) {
+        ruleFactorRelaService.updateBatchById(ruleFactorRela);
+        return Result.OK("编辑成功!");
+    }
+
+    /**
+     * 通过id删除
+     *
+     * @param id
+     * @return
+     */
+    @AutoLog(value = "rule_factor_rela-通过id删除")
+    @ApiOperation(value = "rule_factor_rela-通过id删除", notes = "rule_factor_rela-通过id删除")
+    @RequiresPermissions("medical:rule_factor_rela:delete")
+    @DeleteMapping(value = "/delete")
+    public Result<String> delete(@RequestParam(name = "id", required = true) String id) {
+        ruleFactorRelaService.removeById(id);
+        return Result.OK("删除成功!");
+    }
+
+    /**
+     * 批量删除
+     *
+     * @param ids
+     * @return
+     */
+    @AutoLog(value = "rule_factor_rela-批量删除")
+    @ApiOperation(value = "rule_factor_rela-批量删除", notes = "rule_factor_rela-批量删除")
+    @RequiresPermissions("medical:rule_factor_rela:deleteBatch")
+    @DeleteMapping(value = "/deleteBatch")
+    public Result<String> deleteBatch(@RequestParam(name = "ids", required = true) String ids) {
+        this.ruleFactorRelaService.removeByIds(Arrays.asList(ids.split(",")));
+        return Result.OK("批量删除成功!");
+    }
+
+    /**
+     * 通过id查询
+     *
+     * @param id
+     * @return
+     */
+    //@AutoLog(value = "rule_factor_rela-通过id查询")
+    @ApiOperation(value = "rule_factor_rela-通过id查询", notes = "rule_factor_rela-通过id查询")
+    @GetMapping(value = "/queryById")
+    public Result<RuleFactorRela> queryById(@RequestParam(name = "id", required = true) String id) {
+        RuleFactorRela ruleFactorRela = ruleFactorRelaService.getById(id);
+        if (ruleFactorRela == null) {
+            return Result.error("未找到对应数据");
+        }
+        return Result.OK(ruleFactorRela);
+    }
 
     /**
-    * 导出excel
-    *
-    * @param request
-    * @param ruleFactorRela
-    */
+     * 导出excel
+     *
+     * @param request
+     * @param ruleFactorRela
+     */
     @RequiresPermissions("medical:rule_factor_rela:exportXls")
     @RequestMapping(value = "/exportXls")
     public ModelAndView exportXls(HttpServletRequest request, RuleFactorRela ruleFactorRela) {
@@ -163,12 +193,12 @@ public class RuleFactorRelaController extends JeecgController<RuleFactorRela, IR
     }
 
     /**
-      * 通过excel导入数据
-    *
-    * @param request
-    * @param response
-    * @return
-    */
+     * 通过excel导入数据
+     *
+     * @param request
+     * @param response
+     * @return
+     */
     @RequiresPermissions("medical:rule_factor_rela:importExcel")
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {

+ 73 - 36
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/entity/FactorEnchance.java

@@ -24,84 +24,119 @@ import lombok.experimental.Accessors;
 /**
  * @Description: factor_enchance
  * @Author: jeecg-boot
- * @Date:   2023-04-23
+ * @Date: 2023-04-23
  * @Version: V1.0
  */
 @Data
 @TableName("factor_enchance")
 @Accessors(chain = true)
 @EqualsAndHashCode(callSuper = false)
-@ApiModel(value="factor_enchance对象", description="factor_enchance")
+@ApiModel(value = "factor_enchance对象", description = "factor_enchance")
 public class FactorEnchance implements Serializable {
     private static final long serialVersionUID = 1L;
 
-	/**主键ID*/
-	@TableId(type = IdType.AUTO)
+    /**
+     * 主键ID
+     */
+    @TableId(type = IdType.AUTO)
     @ApiModelProperty(value = "主键ID")
     private java.lang.Integer id;
-	/**版本号*/
-	@Excel(name = "版本号", width = 15)
+    /**
+     * 版本号
+     */
+    @Excel(name = "版本号", width = 15)
     @ApiModelProperty(value = "版本号")
     private java.lang.Integer revision;
-	/**创建人*/
+    /**
+     * 创建人
+     */
     @ApiModelProperty(value = "创建人")
     private java.lang.String createBy;
-	/**创建时间*/
-	@JsonFormat(timezone = "GMT+8",pattern =  "yyyy-MM-dd HH:mm:ss")
-    @DateTimeFormat(pattern= "yyyy-MM-dd HH:mm:ss")
+    /**
+     * 创建时间
+     */
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     @ApiModelProperty(value = "创建时间")
     private java.util.Date createTime;
-	/**更新人*/
+    /**
+     * 更新人
+     */
     @ApiModelProperty(value = "更新人")
     private java.lang.String updateBy;
-	/**更新时间*/
-	@JsonFormat(timezone = "GMT+8",pattern =  "yyyy-MM-dd HH:mm:ss")
-    @DateTimeFormat(pattern= "yyyy-MM-dd HH:mm:ss")
+    /**
+     * 更新时间
+     */
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     @ApiModelProperty(value = "更新时间")
     private java.util.Date updateTime;
-	/**规则增强名称*/
-	@Excel(name = "规则增强名称", width = 15)
+    /**
+     * 规则增强名称
+     */
+    @Excel(name = "规则增强名称", width = 15)
     @ApiModelProperty(value = "规则增强名称")
     private java.lang.String ruleEnchanceName;
-	/**提取类型;1:SQL取值,2:逻辑判断,3:表达式计算,4:插件提取,5:字典转换6:常量赋值,7:属性赋值,9:输出错误码*/
-	@Excel(name = "提取类型;1:SQL取值,2:逻辑判断,3:表达式计算,4:插件提取,5:字典转换6:常量赋值,7:属性赋值,9:输出错误码", width = 15)
+    /**
+     * 提取类型;1:SQL取值,2:逻辑判断,3:表达式计算,4:插件提取,5:字典转换6:常量赋值,7:属性赋值,9:输出错误码
+     */
+    @Excel(name = "提取类型;1:SQL取值,2:逻辑判断,3:表达式计算,4:插件提取,5:字典转换6:常量赋值,7:属性赋值,9:输出错误码", width = 15)
     @ApiModelProperty(value = "提取类型;1:SQL取值,2:逻辑判断,3:表达式计算,4:插件提取,5:字典转换6:常量赋值,7:属性赋值,9:输出错误码")
+    @Dict(dicCode="enhance_type")
     private java.lang.Integer enhanceType;
-	/**输出属性*/
-	@Excel(name = "输出属性", width = 15)
+    /**
+     * 输出属性
+     */
+    @Excel(name = "输出属性", width = 15)
     @ApiModelProperty(value = "输出属性")
     private java.lang.Integer eventAttrId;
-	/**因子内容*/
-	@Excel(name = "因子内容", width = 15)
+    /**
+     * 因子内容
+     */
+    @Excel(name = "因子内容", width = 15)
     @ApiModelProperty(value = "因子内容")
     private java.lang.String enhanceValue;
-	/**扩展字段1;扩展字段1。SQL取值类型时该字段为数据库类型,逻辑判断类型时该字段为判断类型*/
-	@Excel(name = "扩展字段1;扩展字段1。SQL取值类型时该字段为数据库类型,逻辑判断类型时该字段为判断类型", width = 15)
+    /**
+     * 扩展字段1;扩展字段1。SQL取值类型时该字段为数据库类型,逻辑判断类型时该字段为判断类型
+     */
+    @Excel(name = "扩展字段1;扩展字段1。SQL取值类型时该字段为数据库类型,逻辑判断类型时该字段为判断类型", width = 15)
     @ApiModelProperty(value = "扩展字段1;扩展字段1。SQL取值类型时该字段为数据库类型,逻辑判断类型时该字段为判断类型")
     private java.lang.String extAttr1;
-	/**扩展字段2*/
-	@Excel(name = "扩展字段2", width = 15)
+    /**
+     * 扩展字段2
+     */
+    @Excel(name = "扩展字段2", width = 15)
     @ApiModelProperty(value = "扩展字段2")
     private java.lang.String extAttr2;
-	/**扩展字段3*/
-	@Excel(name = "扩展字段3", width = 15)
+    /**
+     * 扩展字段3
+     */
+    @Excel(name = "扩展字段3", width = 15)
     @ApiModelProperty(value = "扩展字段3")
     private java.lang.String extAttr3;
-	/**状态*/
-	@Excel(name = "状态", width = 15)
+    /**
+     * 状态
+     */
+    @Excel(name = "状态", width = 15)
     @ApiModelProperty(value = "状态")
     private java.lang.String state;
-	/**描述*/
-	@Excel(name = "描述", width = 15)
+    /**
+     * 描述
+     */
+    @Excel(name = "描述", width = 15)
     @ApiModelProperty(value = "描述")
     private java.lang.String remarks;
-	/**删除标识;0:正常,1:删除*/
-	@Excel(name = "删除标识;0:正常,1:删除", width = 15)
+    /**
+     * 删除标识;0:正常,1:删除
+     */
+    @Excel(name = "删除标识;0:正常,1:删除", width = 15)
     @ApiModelProperty(value = "删除标识;0:正常,1:删除")
     @TableLogic
     private java.lang.Integer delFlag;
-	/**要素提取分类;规则ID*/
-	@Excel(name = "要素提取分类;规则ID", width = 15)
+    /**
+     * 要素提取分类;规则ID
+     */
+    @Excel(name = "要素提取分类;规则ID", width = 15)
     @ApiModelProperty(value = "要素提取分类;规则ID")
     private java.lang.Integer factorCatalog;
     @TableField(exist = false)
@@ -110,4 +145,6 @@ public class FactorEnchance implements Serializable {
     private List<Integer> outParamList;
     @TableField(exist = false)
     private List<FactorCondRela> factorCondRelaList;
+    @TableField(exist = false)
+    private String enhanceTypeStr;
 }

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

@@ -44,6 +44,9 @@ public class MedicalIns implements Serializable {
 	@Excel(name = "医院名称", width = 15)
     @ApiModelProperty(value = "医院名称")
     private java.lang.String hospitalName;
+    @Excel(name = "备注", width = 15)
+    @ApiModelProperty(value = "备注;药品使用范围、限制性范围备注")
+    private java.lang.String remarks;
 	/**地址*/
 	@Excel(name = "地址", width = 15)
     @ApiModelProperty(value = "地址")
@@ -52,6 +55,9 @@ public class MedicalIns implements Serializable {
 	@Excel(name = "等级", width = 15)
     @ApiModelProperty(value = "等级")
     private java.lang.Integer level;
+    @Excel(name = "项目内涵", width = 15)
+    @ApiModelProperty(value = "项目内涵")
+    private java.lang.String projectConnotation;
 	/**版本号*/
 	@Excel(name = "版本号", width = 15)
     @ApiModelProperty(value = "版本号")

+ 5 - 4
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/entity/RuleFactorRela.java

@@ -4,10 +4,8 @@ import java.io.Serializable;
 import java.io.UnsupportedEncodingException;
 import java.util.Date;
 import java.math.BigDecimal;
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import com.baomidou.mybatisplus.annotation.TableLogic;
+
+import com.baomidou.mybatisplus.annotation.*;
 import lombok.Data;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import org.springframework.format.annotation.DateTimeFormat;
@@ -81,4 +79,7 @@ public class RuleFactorRela implements Serializable {
     @ApiModelProperty(value = "删除标识。0:正常,1:删除")
     @TableLogic
     private java.lang.Integer delFlag;
+
+    @TableField(exist = false)
+    private String ruleEnchanceName;
 }

+ 2 - 1
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/RuleFactorRelaMapper.java

@@ -13,5 +13,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  * @Version: V1.0
  */
 public interface RuleFactorRelaMapper extends BaseMapper<RuleFactorRela> {
-
+    List<RuleFactorRela> list(@Param("medicalInsRuleInfoId") Integer medicalInsRuleInfoId);
+    Integer maxSeqNum(@Param("medicalInsRuleInfoId") Integer medicalInsRuleInfoId);
 }

+ 8 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/medical/mapper/xml/RuleFactorRelaMapper.xml

@@ -2,4 +2,12 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="org.jeecg.modules.medical.mapper.RuleFactorRelaMapper">
 
+    <select id="list" resultType="org.jeecg.modules.medical.entity.RuleFactorRela">
+        select r.factor_enhance_id,e.rule_enchance_name From rule_factor_rela r LEFT JOIN factor_enchance e on r.factor_enhance_id=e.id
+                                                        where r.medical_ins_rule_info_id=#{medicalInsRuleInfoId} order by r.seq_num
+
+    </select>
+    <select id="maxSeqNum" resultType="java.lang.Integer">
+        select IFNULL(max(seq_num),0) from rule_factor_rela where medical_ins_rule_info_id=#{medicalInsRuleInfoId}
+    </select>
 </mapper>

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

@@ -11,4 +11,6 @@ import com.baomidou.mybatisplus.extension.service.IService;
  */
 public interface IMedicalInsRuleInfoService extends IService<MedicalInsRuleInfo> {
 
+    Integer getShareRulesId();
+
 }

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

@@ -3,6 +3,8 @@ package org.jeecg.modules.medical.service;
 import org.jeecg.modules.medical.entity.RuleFactorRela;
 import com.baomidou.mybatisplus.extension.service.IService;
 
+import java.util.List;
+
 /**
  * @Description: rule_factor_rela
  * @Author: jeecg-boot
@@ -11,4 +13,8 @@ import com.baomidou.mybatisplus.extension.service.IService;
  */
 public interface IRuleFactorRelaService extends IService<RuleFactorRela> {
 
+    List<RuleFactorRela> list(Integer medicalInsRuleInfoId);
+
+    Integer maxSeqNum(Integer medicalInsRuleInfoId);
+
 }

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

@@ -1,8 +1,11 @@
 package org.jeecg.modules.medical.service.impl;
 
+import org.jeecg.common.util.RedisUtil;
+import org.jeecg.modules.medical.Constant;
 import org.jeecg.modules.medical.entity.MedicalInsRuleInfo;
 import org.jeecg.modules.medical.mapper.MedicalInsRuleInfoMapper;
 import org.jeecg.modules.medical.service.IMedicalInsRuleInfoService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -15,5 +18,22 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  */
 @Service
 public class MedicalInsRuleInfoServiceImpl extends ServiceImpl<MedicalInsRuleInfoMapper, MedicalInsRuleInfo> implements IMedicalInsRuleInfoService {
+    @Autowired
+    private RedisUtil redisUtil;
 
+    @Override
+    public Integer getShareRulesId() {
+        Object object = redisUtil.get(Constant.SHARE_RULES);
+        if (object != null) {
+            return  Integer.parseInt(object.toString());
+        }
+        MedicalInsRuleInfo one = this.lambdaQuery().eq(MedicalInsRuleInfo::getRuleName, Constant.SHARE_RULES).one();
+        if(one!=null){
+            redisUtil.set(Constant.SHARE_RULES,one.getId());
+            return one.getId();
+
+        }
+        return 0;
+
+    }
 }

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

@@ -7,6 +7,8 @@ import org.springframework.stereotype.Service;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 
+import java.util.List;
+
 /**
  * @Description: rule_factor_rela
  * @Author: jeecg-boot
@@ -16,4 +18,13 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 @Service
 public class RuleFactorRelaServiceImpl extends ServiceImpl<RuleFactorRelaMapper, RuleFactorRela> implements IRuleFactorRelaService {
 
+    @Override
+    public List<RuleFactorRela> list(Integer medicalInsRuleInfoId) {
+        return baseMapper.list(medicalInsRuleInfoId);
+    }
+
+    @Override
+    public Integer maxSeqNum(Integer medicalInsRuleInfoId) {
+        return baseMapper.maxSeqNum(medicalInsRuleInfoId);
+    }
 }