yangyj hace 3 años
padre
commit
c2ba55208f

+ 1 - 2
blade-service/blade-business/src/main/java/org/springblade/business/utils/FunctionMain.java

@@ -188,7 +188,6 @@ public class FunctionMain {
          dap.setRemark("导线点");
         System.out.println(JSON.toJSONString(dap));
     }
-*/
-
+**/
 
 }

+ 1 - 1
blade-service/blade-manager/src/main/java/com/mixsmart/utils/CustomFunction.java

@@ -2164,7 +2164,7 @@ public class CustomFunction {
 	public static Object tree(List<String>nodes,String param){
 		if(CollectionUtil.isNotEmpty(nodes)&& Func.isNotBlank(param)){
 			List<String> result = new ArrayList<>();
-			param=param.replaceAll("[cC]","");
+			param=param.replaceAll("(?i:c)","");
 			List<String> list = Arrays.asList(param.split("-"));
 			List<Integer> index =list.stream().map(Integer::parseInt).collect(Collectors.toList());
 			for(Integer i:index){

+ 31 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/WbsParamController.java

@@ -27,7 +27,9 @@ import springfox.documentation.annotations.ApiIgnore;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
 import java.util.Objects;
+import java.util.stream.Collectors;
 
 /**
  * @author yangyj
@@ -64,6 +66,35 @@ public class WbsParamController {
         }
     }
 
+    @PostMapping("/saveOrUpdateBatch")
+    @ApiOperationSupport(order = 1)
+    @ApiOperation(value = "批量保存或修改参数", notes = "批量保存或修改参数")
+    public R saveOrUpdateBatch(@RequestBody List<WbsParamBean> wps) {
+       if(CollectionUtil.isNotEmpty(wps)){
+           List<Long> ids= wps.stream().map(WbsParamBean::getId).filter(Objects::nonNull).collect(Collectors.toList());
+           if(CollectionUtil.isNotEmpty(ids)){
+               this.service.update(Wrappers.<WbsParam>update().lambda().set(WbsParam::getIsDeleted,1).notIn(WbsParam::getId,ids));
+           }
+           Map<Boolean,List<WbsParamBean>> map = wps.stream().collect(Collectors.partitioningBy(e->e.getId()!=null));
+           List<WbsParamBean> saveList = map.get(false);
+           List<WbsParamBean> updateList = map.get(true);
+           if(CollectionUtil.isNotEmpty(saveList)){
+               this.service.saveBatch(BeanUtil.copy(saveList,WbsParam.class));
+           }
+           if(CollectionUtil.isNotEmpty(updateList)){
+               List<WbsParam> ul = new ArrayList<>();
+               for(WbsParamBean b:updateList){
+                   WbsParam old = this.service.getById(b.getId());
+                   BeanUtils.copyProperties(b,old);
+                   ul.add(old);
+               }
+               this.service.saveOrUpdateBatch(ul);
+           }
+           return  R.status(true);
+       }
+       return R.status(false);
+    }
+
     /**
      * 删除
      */

+ 6 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/FormulaServiceImpl.java

@@ -6,6 +6,7 @@ import org.springblade.core.tool.utils.CollectionUtil;
 import org.springblade.manager.dto.FormData;
 import org.springblade.manager.entity.Formula;
 import org.springblade.manager.entity.WbsFormElement;
+import org.springblade.manager.entity.WbsTree;
 import org.springblade.manager.mapper.FormulaMapper;
 import org.springblade.manager.service.IFormulaService;
 import org.springframework.stereotype.Service;
@@ -32,6 +33,11 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
     public void execute(Map variables, List<FormData> list,List<Formula> formulas ){
              Map<Boolean,List<FormData>> map = list.stream().collect(Collectors.partitioningBy(e->e!=null&&e.getFormula().getFormula().contains("E[")));
             List<FormData>total = new ArrayList<>();
+            List<WbsTree> trees = new ArrayList<>();
+            for(int i=0;i<6;i++){
+                 WbsTree t= new WbsTree();
+                 t.setFullName("第"+i+"层");
+            }
              /*没有依赖的*/
              List<FormData> simple=map.get(false);
              if(CollectionUtil.isNotEmpty(simple)){