liuyc 2 gadi atpakaļ
vecāks
revīzija
222ed1d989

+ 1 - 5
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/WbsFormElementController.java

@@ -9,7 +9,6 @@ import javax.validation.Valid;
 
 import org.springblade.core.excel.util.ExcelUtil;
 import org.springblade.core.tool.api.R;
-import org.springblade.manager.dto.FormElementDTO;
 import org.springblade.manager.dto.FormElementDTO2;
 import org.springblade.manager.dto.WbsFormElementDTO;
 import org.springblade.manager.dto.WbsFormElementDTO2;
@@ -58,10 +57,9 @@ public class WbsFormElementController extends BladeController {
     @ApiOperationSupport(order = 2)
     @ApiOperation(value = "新增", notes = "传入wbsFormElement")
     public R save(@Valid @RequestBody WbsFormElementDTO wbsFormElement) {
-        return R.status(wbsFormElementService.saveAndSyn(wbsFormElement, wbsFormElement.getInitTableName()));
+        return R.data(wbsFormElementService.saveAndSyn(wbsFormElement, wbsFormElement.getInitTableName()));
     }
 
-
     /**
      * 修改 wbs表单元素
      */
@@ -72,7 +70,6 @@ public class WbsFormElementController extends BladeController {
         return R.status(wbsFormElementService.updateById(wbsFormElement));
     }
 
-
     /**
      * 新增或修改 wbs表单元素
      * @deprecated 未使用
@@ -94,7 +91,6 @@ public class WbsFormElementController extends BladeController {
         return R.status(wbsFormElementService.submitBatch(wbsFormElementVO2));
     }
 
-
     /**
      * 删除 wbs表单元素 同步删除实体表字段
      */

+ 10 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/WbsTreePrivateController.java

@@ -389,5 +389,15 @@ public class WbsTreePrivateController extends BladeController {
         return R.status(wbsTreePrivateService.submitFullName(pKeyId,fullNames));
     }
 
+    /**
+     * 同步项目下所有节点参数
+     */
+    @ApiOperationSupport(order = 14)
+    @ApiOperation(value = "同步项目下所有节点参数", notes = "传入项目projectId")
+    @RequestMapping(value = "/sync-node-param", method = RequestMethod.POST)
+    public R syncNodeParam(@RequestParam String projectId) {
+        return R.status(wbsTreePrivateService.syncNodeParam(projectId));
+    }
+
 
 }

+ 1 - 1
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/ExctabCellMapper.xml

@@ -23,7 +23,7 @@
         select * from m_exctab_cell where is_deleted = 0
     </select>
 
-    <select id="getColSelect" resultMap="exctabCellResultMap">
+    <select id="getColSelect" resultType="org.springblade.manager.vo.ExctabCellVO">
         select * from m_exctab_cell where is_deleted = 0 and exctab_id =#{tabId}
     </select>
 

+ 1 - 1
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/WbsTreeContractMapper.xml

@@ -219,7 +219,7 @@
                (select contract_name from m_contract_info ci where ci.id = t.contract_id) AS "contractName"
         FROM m_wbs_tree_contract t
         WHERE project_id = #{projectId}
-          AND contract_type = 1
+          /*AND contract_type = 1*/
           AND status = 1
           AND parent_id = 0
           AND is_deleted = 0

+ 1 - 4
blade-service/blade-manager/src/main/java/org/springblade/manager/service/IWbsFormElementService.java

@@ -1,10 +1,7 @@
 package org.springblade.manager.service;
 
-
 import org.springblade.core.mp.base.BaseService;
 import com.baomidou.mybatisplus.core.metadata.IPage;
-import org.springblade.core.tool.api.R;
-import org.springblade.manager.dto.FormElementDTO;
 import org.springblade.manager.dto.FormElementDTO2;
 import org.springblade.manager.dto.WbsFormElementDTO2;
 import org.springblade.manager.entity.WbsFormElement;
@@ -30,7 +27,7 @@ public interface IWbsFormElementService extends BaseService<WbsFormElement> {
 
     void importElement(List<WbsFormElementExcel> data, Boolean isCovered, String tableId);
 
-    boolean saveAndSyn(WbsFormElement wbsFormElement, String tableName);
+    WbsFormElement saveAndSyn(WbsFormElement wbsFormElement, String tableName);
 
     boolean deleteAndSyn(String ids, String elementName, String tableName);
 

+ 2 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/service/IWbsTreePrivateService.java

@@ -45,4 +45,6 @@ public interface IWbsTreePrivateService extends BaseService<WbsTreePrivate> {
 
     boolean submitFullName(String pKeyId, String fullNames);
 
+    boolean syncNodeParam(String projectId);
+
 }

+ 14 - 22
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/ContractInfoServiceImpl.java

@@ -189,11 +189,12 @@ public class ContractInfoServiceImpl extends BaseServiceImpl<ContractInfoMapper,
 
             //新增合同段 监理、业主与施工wbs树信息
             if (contractInfo.getContractType().equals(2) || contractInfo.getContractType().equals(3)) {
-                List<WbsTreeContractVO3> infos = contractInfo.getIdList();
-                infos.forEach(info -> {
-                    baseMapper.insertContractRelationJLYZ(SnowFlakeUtil.getId(), contractInfo.getId(), info.getContractId());
-
-                });
+                if (contractInfo.getIdList().size() > 0) {
+                    List<WbsTreeContractVO3> infos = contractInfo.getIdList();
+                    infos.forEach(info -> {
+                        baseMapper.insertContractRelationJLYZ(SnowFlakeUtil.getId(), contractInfo.getId(), info.getContractId());
+                    });
+                }
             }
 
             return submitContractRelevantInfo(row, contractInfo);
@@ -208,38 +209,29 @@ public class ContractInfoServiceImpl extends BaseServiceImpl<ContractInfoMapper,
             if (contractInfos.size() > 0) {
                 throw new ServiceException("合同段名称已存在当前项目下,请重新输入");
             }
-
             //新增合同段
             boolean row = saveOrUpdate(contractInfo);
 
             //关联合同段 监理、业主与施工wbs树信息
             if (contractInfo.getContractType().equals(2) || contractInfo.getContractType().equals(3)) {
-                //获取当前入参的施工合同段IdList
                 List<WbsTreeContractVO3> idList = contractInfo.getIdList();
-                if (idList.isEmpty()) {
-                    throw new ServiceException("请先选择关联的合同段权限");
-                }
-                List<String> idList_SG = idList.stream().map(WbsTreeContractVO3::getContractId).collect(Collectors.toList());
-
-                //获取当前合同段存在的关系信息
+                //删除当前关系信息
                 List<ContractRelationJlyz> resultListJLTZ = baseMapper.selectByContractRelationJlyz(contractInfo.getId());
-
-                //全部删除当前关系信息
                 if (resultListJLTZ.size() > 0) {
                     baseMapper.deleteContractRelationJLYZ(contractInfo.getId());
                 }
 
-                //新增
-                idList_SG.forEach(ids -> {
-                    baseMapper.insertContractRelationJLYZ(SnowFlakeUtil.getId(), contractInfo.getId(), ids);
-                });
-
+                if (idList.size() > 0) {
+                    //新增关系信息
+                    List<String> idList_SG = idList.stream().map(WbsTreeContractVO3::getContractId).collect(Collectors.toList());
+                    idList_SG.forEach(ids -> {
+                        baseMapper.insertContractRelationJLYZ(SnowFlakeUtil.getId(), contractInfo.getId(), ids);
+                    });
+                }
             }
 
             return submitContractRelevantInfo(row, contractInfo);
-
         }
-
     }
 
     private boolean submitContractRelevantInfo(boolean row, ContractInfoVO contractInfo) {

+ 30 - 1
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/ExctabCellServiceImpl.java

@@ -18,6 +18,7 @@ package org.springblade.manager.service.impl;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import lombok.AllArgsConstructor;
+import org.apache.commons.lang.StringUtils;
 import org.springblade.manager.entity.ExctabCell;
 import org.springblade.manager.entity.LinkdataInfo;
 import org.springblade.manager.entity.WbsFormElement;
@@ -51,7 +52,15 @@ public class ExctabCellServiceImpl extends BaseServiceImpl<ExctabCellMapper, Exc
 
     @Override
     public List<ExctabCellVO> getColSelect(String tabId) {
-        return baseMapper.getColSelect(tabId);
+        List<ExctabCellVO> colSelect = baseMapper.getColSelect(tabId);
+        for (ExctabCellVO exctabCellVO : colSelect) {
+            Integer elementType = this.getElementType(exctabCellVO.getTextInfo());
+            if (elementType == -1) {
+                continue;
+            }
+            exctabCellVO.setTextElementType(elementType);
+        }
+        return colSelect;
     }
 
     @Override
@@ -79,4 +88,24 @@ public class ExctabCellServiceImpl extends BaseServiceImpl<ExctabCellMapper, Exc
         return wbsFormElementService.updateById(info) ? 1 : -1;
     }
 
+    private Integer getElementType(String name) {
+        if (StringUtils.isNotEmpty(name)) {
+            String s = name.toUpperCase();
+            if (s.contains("实测") || s.contains("偏差") || s.contains("合格率") || s.contains("平均")
+                    || s.contains("M") || s.contains("CM") || s.contains("MM") || s.contains("%") || s.contains("量")
+                    || s.contains("X") || s.contains("Y") || s.contains("H") || s.contains("MPA") || s.contains("KN")) {
+                return 5; //数值
+            }
+            if (s.contains("检测") || s.contains("检验负责人") || s.contains("记录") || s.contains("复核")
+                    || s.contains("工程师") || s.contains("监理员") || s.contains("审核") || s.contains("签字") || s.contains("签名")) {
+                return 6; //签名
+            }
+            if (s.contains("图片") || s.contains("相片") || s.contains("示意图") || s.contains("简图")) {
+                return 7; //文件
+            }
+        }
+        return -1;
+    }
+
+
 }

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

@@ -120,7 +120,7 @@ public class WbsFormElementServiceImpl extends BaseServiceImpl<WbsFormElementMap
     }
 
     @Override
-    public boolean saveAndSyn(WbsFormElement wbsFormElement, String tableName) {
+    public WbsFormElement saveAndSyn(WbsFormElement wbsFormElement, String tableName) {
         try {
             //获取当前表单下所有元素
             List<WbsFormElement> wbsFormElements = baseMapper.selectList(Wrappers.<WbsFormElement>query().lambda().eq(WbsFormElement::getFId, wbsFormElement.getFId()));
@@ -162,7 +162,7 @@ public class WbsFormElementServiceImpl extends BaseServiceImpl<WbsFormElementMap
                     sbr1.append(" ").append("varchar").append("(").append(DEFAULT_ELEMENT_LENGTH_VARCHAR).append(")");
                     String sql = newName + " " + sbr1;
                     baseMapper.alterAddFiled(sql, tableName);
-                    return true;
+                    return wbsFormElement;
                 }
 
             } else if ("bigint".equals(fieldType)) {
@@ -178,7 +178,7 @@ public class WbsFormElementServiceImpl extends BaseServiceImpl<WbsFormElementMap
                     sbr1.append(" ").append("varchar").append("(").append(DEFAULT_ELEMENT_LENGTH_VARCHAR).append(")");
                     String sql = newName + " " + sbr1;
                     baseMapper.alterAddFiled(sql, tableName);
-                    return true;
+                    return wbsFormElement;
                 }
 
             } else if ("decimal".equals(fieldType)) {
@@ -194,7 +194,7 @@ public class WbsFormElementServiceImpl extends BaseServiceImpl<WbsFormElementMap
                     sbr1.append(" ").append("varchar").append("(").append(DEFAULT_ELEMENT_LENGTH_VARCHAR).append(")");
                     String sql = newName + " " + sbr1;
                     baseMapper.alterAddFiled(sql, tableName);
-                    return true;
+                    return wbsFormElement;
                 }
             } else if ("datetime".equals(fieldType)) {
                 if (wbsFormElement.getELength() > 50 || wbsFormElement.getELength() < 0) {
@@ -209,7 +209,7 @@ public class WbsFormElementServiceImpl extends BaseServiceImpl<WbsFormElementMap
                     sbr1.append(" ").append("varchar").append("(").append(DEFAULT_ELEMENT_LENGTH_VARCHAR).append(")");
                     String sql = newName + " " + sbr1;
                     baseMapper.alterAddFiled(sql, tableName);
-                    return true;
+                    return wbsFormElement;
                 }
             }
 
@@ -217,7 +217,7 @@ public class WbsFormElementServiceImpl extends BaseServiceImpl<WbsFormElementMap
             baseMapper.deleteElement(wbsFormElement);
             throw new ServiceException("未获取到对应实体表信息,新增失败");
         }
-        return false;
+        return wbsFormElement;
     }
 
     @Override

+ 6 - 14
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/WbsTreeContractServiceImpl.java

@@ -46,7 +46,6 @@ public class WbsTreeContractServiceImpl extends BaseServiceImpl<WbsTreeContractM
     private final ConstructionLedgerFeignClient constructionLedgerFeign;
     private final WbsTreePrivateMapper wbsTreePrivateMapper;
     private final ContractInfoMapper contractInfoMapper;
-    private final ContractInfoServiceImpl contractInfoService;
 
     @Override
     public List<WbsTreeContract> selectQueryCurrentNodeByAncestors(List<String> ids, String contractId) {
@@ -417,11 +416,10 @@ public class WbsTreeContractServiceImpl extends BaseServiceImpl<WbsTreeContractM
                 .eq(WbsTreeContract::getStatus, 1)
                 .or()
                 .eq(WbsTreeContract::getAncestors, wbsTreeContract.getId())
-
         );
 
         for (WbsTreeContract treeContract : wbsTreeContracts) {
-            //设置主键
+            //主键
             treeContract.setPKeyId(SnowFlakeUtil.getId());
         }
 
@@ -453,7 +451,7 @@ public class WbsTreeContractServiceImpl extends BaseServiceImpl<WbsTreeContractM
         //获取当前合同段树
         List<WbsTreeContractVO> wbsTreeContractVOS = contractInfoMapper.tree2(null, null, contractId, null, null);
         if (wbsTreeContractVOS.size() <= 0) {
-            throw new ServiceException("未查询到当前合同段的wbs树,请先配该合同的合同段wsb树");
+            throw new ServiceException("未查询到当前合同段的wbs树,请先配该合同的合同段wsb树");
         }
 
         //构造resultList
@@ -554,7 +552,7 @@ public class WbsTreeContractServiceImpl extends BaseServiceImpl<WbsTreeContractM
                 String partitionCode = split[1];
 
                 int count = 0;
-                if (successData.size() > 0) {
+                if (successData.size() > 0) {   //todo 此处未解决类似名称问题
                     for (WbsTreeContractVO successDatum : successData) {
                         //同类型、名称相似、且划分编码不一样
                         if (successDatum.getNodeType().equals(k)
@@ -626,7 +624,7 @@ public class WbsTreeContractServiceImpl extends BaseServiceImpl<WbsTreeContractM
                 this.saveOrUpdateBatch(wbsTreeContracts, 1000);
             }
 
-            //导入识别匹配成功树
+            //构建成功树
             ArrayList<WbsTreeContractVO> collect = successData.stream().collect(
                     Collectors.collectingAndThen(
                             Collectors.toCollection(() -> new TreeSet<>(
@@ -636,7 +634,7 @@ public class WbsTreeContractServiceImpl extends BaseServiceImpl<WbsTreeContractM
             res.setMatchedData(successWbsTreeContractVOS);
 
             List<WbsTreeContractVO> successDataCopyToFail = WbsExcelBatchUtil.deepCopy(collect);
-            //构建导入识别匹配失败树failDataTree
+            //构建失败树
             List<WbsTreeContractVO> failDataTree = this.buildFailDataTree(resultList, failData, successDataCopyToFail);
             List<WbsTreeContractVO> collect1 = failDataTree.stream().collect(
                     Collectors.collectingAndThen(
@@ -729,7 +727,6 @@ public class WbsTreeContractServiceImpl extends BaseServiceImpl<WbsTreeContractM
                         failDatum.setParentId(nodeParentIdLv1);
                         nodeParentIdLv2 = failDatum.getId();
 
-
                     } else if (failDatum.getNodeType() == 3) {
                         if (nodeParentIdLv2 == 0L) {
                             failDatum.setParentId(0L);
@@ -808,21 +805,16 @@ public class WbsTreeContractServiceImpl extends BaseServiceImpl<WbsTreeContractM
             List<WbsTreeContractVO> childrenList = map.get(wbsTreeContractVO.getId());
             wbsTreeContractVO.setChildren(childrenList);
             if (childrenList != null && childrenList.size() > 0) {
-                //存在子级
                 wbsTreeContractVO.setHasChildren(true);
-                //递归查询
                 recursionFnTree(childrenList, map);
             }
         }
     }
 
-    private List<WbsTreeContract> findAllNodeList(String wbsTreeIds, String projectId, String contractId, String
-            wbsId) {
+    private List<WbsTreeContract> findAllNodeList(String wbsTreeIds, String projectId, String contractId, String wbsId) {
         String[] ids = wbsTreeIds.split(",");
-        List<Long> idList = new ArrayList<>();
         List<WbsTreeContract> list = new ArrayList<>();
         for (String id : ids) {
-            idList.add(Long.valueOf(id));
             WbsTreeContract contract = baseMapper.selectByCondition(id, projectId, contractId, wbsId);
             list.add(contract);
         }

+ 99 - 7
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/WbsTreePrivateServiceImpl.java

@@ -12,6 +12,7 @@ import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.node.ForestNodeMerger;
 import org.springblade.core.tool.utils.BeanUtil;
 import org.springblade.core.tool.utils.StringPool;
+import org.springblade.core.tool.utils.StringUtil;
 import org.springblade.manager.dto.WbsTreePrivateDTO2;
 import org.springblade.manager.dto.WbsTreePrivateDTO3;
 import org.springblade.manager.entity.*;
@@ -24,10 +25,7 @@ import org.springblade.manager.vo.WbsTreePrivateVO;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
-import java.util.ArrayList;
-import java.util.Comparator;
-import java.util.List;
-import java.util.Optional;
+import java.util.*;
 import java.util.stream.Collectors;
 import java.util.stream.Stream;
 
@@ -36,6 +34,7 @@ import java.util.stream.Stream;
 public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMapper, WbsTreePrivate> implements IWbsTreePrivateService {
 
     private final WbsTreeContractMapper wbsTreeContractMapper;
+    private final WbsTreeMapper wbsTreeMapper;
     private final ContractInfoMapper contractInfoMapper;
     private final WbsInfoMapper wbsInfoMapper;
     private final WbsParamServiceImpl wbsParamServiceImpl;
@@ -433,9 +432,9 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
             List<Long> contractIds = contractInfos.stream().map(ContractInfo::getId).collect(Collectors.toList());
             for (Long cId : contractIds) {
                 LambdaUpdateWrapper<WbsTreeContract> updateWrapper1 = new LambdaUpdateWrapper<>();
-                updateWrapper1.eq(WbsTreeContract::getId,wbsTreePrivate.getId());
-                updateWrapper1.eq(WbsTreeContract::getContractId,cId);
-                updateWrapper1.set(WbsTreeContract::getImportMatchingInfo,fullNames);
+                updateWrapper1.eq(WbsTreeContract::getId, wbsTreePrivate.getId());
+                updateWrapper1.eq(WbsTreeContract::getContractId, cId);
+                updateWrapper1.set(WbsTreeContract::getImportMatchingInfo, fullNames);
                 wbsTreeContractMapper.update(null, updateWrapper1);
             }
             return true;
@@ -443,4 +442,97 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
         return false;
     }
 
+    @Override
+    public boolean syncNodeParam(String projectId) {
+        if (StringUtils.isNotEmpty(projectId)) {
+            //获取项目节点树
+            List<WbsTreePrivate> wbsTreePrivateAllNow = baseMapper.selectList(Wrappers.<WbsTreePrivate>query().lambda()
+                    .eq(WbsTreePrivate::getProjectId, projectId)
+                    .eq(WbsTreePrivate::getStatus, 1)
+                    .eq(WbsTreePrivate::getType, 1)
+            );
+            String wbsId = "";
+            for (WbsTreePrivate wbsTreePrivate : wbsTreePrivateAllNow) {
+                wbsId = wbsTreePrivate.getWbsId();
+                break;
+            }
+            if (StringUtils.isNotEmpty(wbsId)) {
+
+                List<WbsParam> paramListData = new ArrayList<>();
+
+                //获取公有树
+                List<WbsTree> treePublicNodeAll = wbsTreeMapper.selectList(Wrappers.<WbsTree>query().lambda()
+                        .eq(WbsTree::getWbsId, wbsId)
+                        .eq(WbsTree::getStatus, 1)
+                        .eq(WbsTree::getType, 1)
+                );
+                if (treePublicNodeAll.size() > 0) {
+                    //公有引用
+                    for (WbsTreePrivate wbsTreePrivate : wbsTreePrivateAllNow) {
+                        for (WbsTree wbsTree : treePublicNodeAll) {
+                            if (wbsTree.getId().equals(wbsTreePrivate.getId())) {
+                                //获取公有节点参数
+                                List<WbsParam> paramList = wbsParamServiceImpl.findByNodeId(wbsTree.getId());
+                                for (WbsParam wbsParam : paramList) {
+                                    wbsParam.setWbsId(wbsTreePrivate.getPKeyId());
+                                    wbsParam.setId(SnowFlakeUtil.getId());
+                                }
+                                paramListData.addAll(paramList);
+                            }
+                        }
+                    }
+
+                } else {
+                    //私有引用 - 获取私有树
+                    WbsTreePrivate treePrivateRootNode = baseMapper.selectOne(Wrappers.<WbsTreePrivate>query().lambda()
+                            .eq(WbsTreePrivate::getPKeyId, wbsId)
+                            .eq(WbsTreePrivate::getParentId, 0L)
+                            .eq(WbsTreePrivate::getStatus, 1)
+                            .eq(WbsTreePrivate::getType, 1)
+                    );
+
+                    List<WbsTreePrivate> treePrivateNodeAll = baseMapper.selectList(Wrappers.<WbsTreePrivate>query().lambda()
+                            .eq(WbsTreePrivate::getWbsId, treePrivateRootNode.getWbsId())
+                            .eq(WbsTreePrivate::getStatus, 1)
+                            .eq(WbsTreePrivate::getType, 1)
+                    );
+
+                    for (WbsTreePrivate wbsTreePrivate : wbsTreePrivateAllNow) {
+                        for (WbsTreePrivate wbsTreePrivateYS : treePrivateNodeAll) {
+                            if (wbsTreePrivateYS.getId().equals(wbsTreePrivate.getId())) {
+                                //获取公有节点参数
+                                List<WbsParam> paramList = wbsParamServiceImpl.findByNodeId(wbsTreePrivateYS.getPKeyId());
+                                for (WbsParam wbsParam : paramList) {
+                                    wbsParam.setWbsId(wbsTreePrivate.getPKeyId());
+                                    wbsParam.setId(SnowFlakeUtil.getId());
+                                }
+                                paramListData.addAll(paramList);
+                            }
+                        }
+                    }
+                }
+
+                //删除已存在的参数,只新增未存在的节点参数
+                if (paramListData.size() > 0) {
+                    for (int i = 0; i < paramListData.size(); i++) {
+                        List<WbsParam> paramList = wbsParamServiceImpl.findByNodeId(paramListData.get(i).getWbsId());
+                        if (paramList.size() > 0) {
+                            for (WbsParam wbsParam : paramList) {
+                                if (paramListData.get(i).getK().equals(wbsParam.getK())
+                                        && paramListData.get(i).getV().equals(wbsParam.getV())
+                                        && paramListData.get(i).getName().equals(wbsParam.getName())) {
+
+                                    paramListData.remove(paramListData.get(i));
+                                }
+                            }
+                        }
+                    }
+                }
+                wbsParamServiceImpl.saveBatch(paramListData, 1000);
+                return true;
+            }
+        }
+        return false;
+    }
+
 }