lenovodn hace 2 años
padre
commit
edca9b9306

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

@@ -1,9 +1,6 @@
 package org.jeecg.modules.medical.controller;
 
-import java.util.Arrays;
-import java.util.Date;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.stream.Collectors;
 import java.io.IOException;
 import java.io.UnsupportedEncodingException;
@@ -22,8 +19,10 @@ 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;
 
@@ -49,172 +48,189 @@ import io.swagger.annotations.ApiOperation;
 import org.jeecg.common.aspect.annotation.AutoLog;
 import org.apache.shiro.authz.annotation.RequiresPermissions;
 
- /**
+/**
  * @Description: factor_enchance
  * @Author: jeecg-boot
- * @Date:   2023-04-23
+ * @Date: 2023-04-23
  * @Version: V1.0
  */
-@Api(tags="factor_enchance")
+@Api(tags = "factor_enchance")
 @RestController
 @RequestMapping("/medical/factorEnchance")
 @Slf4j
 public class FactorEnchanceController extends JeecgController<FactorEnchance, IFactorEnchanceService> {
-	@Autowired
-	private IFactorEnchanceService factorEnchanceService;
-	 @Autowired
-	 private IFactorCondRelaService factorCondRelaService;
-
-	/**
-	 * 分页列表查询
-	 *
-	 * @param factorEnchance
-	 * @param pageNo
-	 * @param pageSize
-	 * @param req
-	 * @return
-	 */
-	//@AutoLog(value = "factor_enchance-分页列表查询")
-	@ApiOperation(value="factor_enchance-分页列表查询", notes="factor_enchance-分页列表查询")
-	@GetMapping(value = "/list")
-	public Result<IPage<FactorEnchance>> queryPageList(FactorEnchance factorEnchance,
-								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
-								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
-								   HttpServletRequest req) {
-		QueryWrapper<FactorEnchance> queryWrapper = QueryGenerator.initQueryWrapper(factorEnchance, req.getParameterMap());
-		Page<FactorEnchance> page = new Page<FactorEnchance>(pageNo, pageSize);
-		queryWrapper.eq("del_flag", CommonConstant.DEL_FLAG_0);
-		IPage<FactorEnchance> pageList = factorEnchanceService.page(page, queryWrapper);
-		pageList.getRecords().forEach(it->{
-			if(it.getEnhanceType()==2 && it.getExtAttr3().equals("0")){
-				List<FactorCondRela> factorCondRelaList = factorCondRelaService.lambdaQuery().eq(FactorCondRela::getFactorEnhanceId,it.getId()).list();
-				it.setFactorCondRelaList(factorCondRelaList);
-			}
-		});
-		return Result.OK(pageList);
-	}
-	
-	/**
-	 *   添加
-	 *
-	 * @param factorEnchance
-	 * @return
-	 */
-	@AutoLog(value = "factor_enchance-添加")
-	@ApiOperation(value="factor_enchance-添加", notes="factor_enchance-添加")
+    @Autowired
+    private IFactorEnchanceService factorEnchanceService;
+    @Autowired
+    private IFactorCondRelaService factorCondRelaService;
+    @Autowired
+    private IFactorAttrRelaService factorAttrRelaService;
+
+    /**
+     * 分页列表查询
+     *
+     * @param factorEnchance
+     * @param pageNo
+     * @param pageSize
+     * @param req
+     * @return
+     */
+    //@AutoLog(value = "factor_enchance-分页列表查询")
+    @ApiOperation(value = "factor_enchance-分页列表查询", notes = "factor_enchance-分页列表查询")
+    @GetMapping(value = "/list")
+    public Result<IPage<FactorEnchance>> queryPageList(FactorEnchance factorEnchance,
+                                                       @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+                                                       @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
+                                                       HttpServletRequest req) {
+        QueryWrapper<FactorEnchance> queryWrapper = QueryGenerator.initQueryWrapper(factorEnchance, req.getParameterMap());
+        Page<FactorEnchance> page = new Page<FactorEnchance>(pageNo, pageSize);
+        queryWrapper.eq("del_flag", CommonConstant.DEL_FLAG_0);
+        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){
+                    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){
+                    inList.sort(Comparator.comparing(FactorAttrRela::getSeqNum));
+                    List<Integer> out = outList.stream().map(item -> item.getEventAttrId()).collect(Collectors.toList());
+                    it.setOutParamList(out);
+                }
+            }
+            if (it.getEnhanceType() == 2 && it.getExtAttr3().equals("0")) {
+                List<FactorCondRela> factorCondRelaList = factorCondRelaService.lambdaQuery().eq(FactorCondRela::getFactorEnhanceId, it.getId()).list();
+                it.setFactorCondRelaList(factorCondRelaList);
+            }
+
+        });
+        return Result.OK(pageList);
+    }
+
+    /**
+     * 添加
+     *
+     * @param factorEnchance
+     * @return
+     */
+    @AutoLog(value = "factor_enchance-添加")
+    @ApiOperation(value = "factor_enchance-添加", notes = "factor_enchance-添加")
 //	@RequiresPermissions("medical:factor_enchance:add")
-	@PostMapping(value = "/add")
-	public Result<String> add(@RequestBody FactorEnchance factorEnchance,HttpServletRequest req) {
+    @PostMapping(value = "/add")
+    public Result<String> add(@RequestBody FactorEnchance factorEnchance, HttpServletRequest req) {
 //		LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
-		String username = JwtUtil.getUserNameByToken(req);
+        String username = JwtUtil.getUserNameByToken(req);
 
-		if(username!=null){
+        if (username != null) {
 //			dto.setUserid(sysUser.getUsername());
 //			dto.setUsername(sysUser.getRealname());
-			factorEnchance.setCreateBy(username);
-			factorEnchance.setCreateTime(new Date(System.currentTimeMillis()));
-			factorEnchance.setState(Constant.EFF_STATE);
-			factorEnchance.setDelFlag(CommonConstant.DEL_FLAG_0);
-		}
-		factorEnchanceService.save(factorEnchance);
-		EnchanceTypeEnum enchanceTypeEnum = EnchanceTypeEnum.getType(factorEnchance.getEnhanceType());
-		switch (enchanceTypeEnum){
-			case SQL:
-				factorEnchanceService.saveSqlFactorEnchance(factorEnchance);
-				break;
-			case LOGICAL_EXPRESSION:
-				factorEnchanceService.saveLogicalFactorEnchance(factorEnchance);
-				break;
-			case PLUGIN:
-				factorEnchanceService.saveSqlFactorEnchance(factorEnchance);
-				break;
-		}
-		return Result.OK("添加成功!");
-	}
-	
-	/**
-	 *  编辑
-	 *
-	 * @param factorEnchance
-	 * @return
-	 */
-	@AutoLog(value = "factor_enchance-编辑")
-	@ApiOperation(value="factor_enchance-编辑", notes="factor_enchance-编辑")
+            factorEnchance.setCreateBy(username);
+            factorEnchance.setCreateTime(new Date(System.currentTimeMillis()));
+            factorEnchance.setState(Constant.EFF_STATE);
+            factorEnchance.setDelFlag(CommonConstant.DEL_FLAG_0);
+        }
+        factorEnchanceService.save(factorEnchance);
+        EnchanceTypeEnum enchanceTypeEnum = EnchanceTypeEnum.getType(factorEnchance.getEnhanceType());
+        switch (enchanceTypeEnum) {
+            case SQL:
+                factorEnchanceService.saveSqlFactorEnchance(factorEnchance);
+                break;
+            case LOGICAL_EXPRESSION:
+                factorEnchanceService.saveLogicalFactorEnchance(factorEnchance);
+                break;
+            case PLUGIN:
+                factorEnchanceService.saveSqlFactorEnchance(factorEnchance);
+                break;
+        }
+        return Result.OK("添加成功!");
+    }
+
+    /**
+     * 编辑
+     *
+     * @param factorEnchance
+     * @return
+     */
+    @AutoLog(value = "factor_enchance-编辑")
+    @ApiOperation(value = "factor_enchance-编辑", notes = "factor_enchance-编辑")
 //	@RequiresPermissions("medical:factor_enchance:edit")
-	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
-	public Result<String> edit(@RequestBody FactorEnchance factorEnchance) {
-		LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
-		if(sysUser!=null){
+    @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST})
+    public Result<String> edit(@RequestBody FactorEnchance factorEnchance) {
+        LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
+        if (sysUser != null) {
 //			dto.setUserid(sysUser.getUsername());
 //			dto.setUsername(sysUser.getRealname());
-			factorEnchance.setUpdateBy(sysUser.getUsername());
-			factorEnchance.setUpdateTime(new Date(System.currentTimeMillis()));
-		}
-		factorEnchanceService.updateById(factorEnchance);
-		return Result.OK("编辑成功!");
-	}
-	
-	/**
-	 *   通过id删除
-	 *
-	 * @param id
-	 * @return
-	 */
-	@AutoLog(value = "factor_enchance-通过id删除")
-	@ApiOperation(value="factor_enchance-通过id删除", notes="factor_enchance-通过id删除")
+            factorEnchance.setUpdateBy(sysUser.getUsername());
+            factorEnchance.setUpdateTime(new Date(System.currentTimeMillis()));
+        }
+        factorEnchanceService.updateById(factorEnchance);
+        return Result.OK("编辑成功!");
+    }
+
+    /**
+     * 通过id删除
+     *
+     * @param id
+     * @return
+     */
+    @AutoLog(value = "factor_enchance-通过id删除")
+    @ApiOperation(value = "factor_enchance-通过id删除", notes = "factor_enchance-通过id删除")
 //	@RequiresPermissions("medical:factor_enchance:delete")
-	@DeleteMapping(value = "/delete")
-	public Result<String> delete(@RequestParam(name="id",required=true) String id) {
-		Wrapper<FactorEnchance> updateWrapper = new UpdateWrapper<>();
+    @DeleteMapping(value = "/delete")
+    public Result<String> delete(@RequestParam(name = "id", required = true) String id) {
+        Wrapper<FactorEnchance> updateWrapper = new UpdateWrapper<>();
 
-		factorEnchanceService.lambdaUpdate().set(FactorEnchance::getDelFlag, CommonConstant.DEL_FLAG_1).eq(FactorEnchance::getId, Integer.parseInt(id)).update();
+        factorEnchanceService.lambdaUpdate().set(FactorEnchance::getDelFlag, CommonConstant.DEL_FLAG_1).eq(FactorEnchance::getId, Integer.parseInt(id)).update();
 //		factorEnchanceService.updateById(factorEnchance);
 //		factorEnchanceService.removeById(id);
-		return Result.OK("删除成功!");
-	}
-	
-	/**
-	 *  批量删除
-	 *
-	 * @param ids
-	 * @return
-	 */
-	@AutoLog(value = "factor_enchance-批量删除")
-	@ApiOperation(value="factor_enchance-批量删除", notes="factor_enchance-批量删除")
-	@RequiresPermissions("medical:factor_enchance:deleteBatch")
-	@DeleteMapping(value = "/deleteBatch")
-	public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
-		this.factorEnchanceService.removeByIds(Arrays.asList(ids.split(",")));
-		return Result.OK("批量删除成功!");
-	}
-	
-	/**
-	 * 通过id查询
-	 *
-	 * @param id
-	 * @return
-	 */
-	//@AutoLog(value = "factor_enchance-通过id查询")
-	@ApiOperation(value="factor_enchance-通过id查询", notes="factor_enchance-通过id查询")
-	@GetMapping(value = "/queryById")
-	public Result<FactorEnchance> queryById(@RequestParam(name="id",required=true) String id) {
-		FactorEnchance factorEnchance = factorEnchanceService.getById(id);
-		if(factorEnchance==null) {
-			return Result.error("未找到对应数据");
-		}
-		if(factorEnchance.getEnhanceType()==2){
-			List<FactorCondRela> factorCondRelaList = factorCondRelaService.lambdaQuery().eq(FactorCondRela::getFactorEnhanceId,factorEnchance.getId()).list();
-			factorEnchance.setFactorCondRelaList(factorCondRelaList);
-		}
-		return Result.OK(factorEnchance);
-	}
+        return Result.OK("删除成功!");
+    }
+
+    /**
+     * 批量删除
+     *
+     * @param ids
+     * @return
+     */
+    @AutoLog(value = "factor_enchance-批量删除")
+    @ApiOperation(value = "factor_enchance-批量删除", notes = "factor_enchance-批量删除")
+    @RequiresPermissions("medical:factor_enchance:deleteBatch")
+    @DeleteMapping(value = "/deleteBatch")
+    public Result<String> deleteBatch(@RequestParam(name = "ids", required = true) String ids) {
+        this.factorEnchanceService.removeByIds(Arrays.asList(ids.split(",")));
+        return Result.OK("批量删除成功!");
+    }
+
+    /**
+     * 通过id查询
+     *
+     * @param id
+     * @return
+     */
+    //@AutoLog(value = "factor_enchance-通过id查询")
+    @ApiOperation(value = "factor_enchance-通过id查询", notes = "factor_enchance-通过id查询")
+    @GetMapping(value = "/queryById")
+    public Result<FactorEnchance> queryById(@RequestParam(name = "id", required = true) String id) {
+        FactorEnchance factorEnchance = factorEnchanceService.getById(id);
+        if (factorEnchance == null) {
+            return Result.error("未找到对应数据");
+        }
+        if (factorEnchance.getEnhanceType() == 2) {
+            List<FactorCondRela> factorCondRelaList = factorCondRelaService.lambdaQuery().eq(FactorCondRela::getFactorEnhanceId, factorEnchance.getId()).list();
+            factorEnchance.setFactorCondRelaList(factorCondRelaList);
+        }
+        return Result.OK(factorEnchance);
+    }
 
     /**
-    * 导出excel
-    *
-    * @param request
-    * @param factorEnchance
-    */
+     * 导出excel
+     *
+     * @param request
+     * @param factorEnchance
+     */
     @RequiresPermissions("medical:factor_enchance:exportXls")
     @RequestMapping(value = "/exportXls")
     public ModelAndView exportXls(HttpServletRequest request, FactorEnchance factorEnchance) {
@@ -222,12 +238,12 @@ public class FactorEnchanceController extends JeecgController<FactorEnchance, IF
     }
 
     /**
-      * 通过excel导入数据
-    *
-    * @param request
-    * @param response
-    * @return
-    */
+     * 通过excel导入数据
+     *
+     * @param request
+     * @param response
+     * @return
+     */
     @RequiresPermissions("medical:factor_enchance:importExcel")
     @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
     public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {