liuyc %!s(int64=2) %!d(string=hai) anos
pai
achega
a61dc0dc8d

+ 2 - 4
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/ExcelTabController.java

@@ -468,7 +468,6 @@ public class ExcelTabController extends BladeController {
         updateWrapper.set("node_name", excelTab.getName()); //关联清表后 表单名和清表一样
         updateWrapper.set("excel_id", exceTabId);
 
-
         // 复制模版htmlURL
         File file_in = ResourceUtil.getFile(excelTab.getHtmlUrl());
         // File file_in = ResourceUtil.getFile(file_path+"1542338623020961794.html");
@@ -563,7 +562,9 @@ public class ExcelTabController extends BladeController {
             pupdate.set("excel_id", aPrivate.getPKeyId());
             wbsTreePrivateService.update(pupdate);
         }
+
         wbsTreePrivateService.update(updateWrapper);
+
         //关联项目下所有的合同段
         if (aPrivate.getType() != 10) {
             aPrivate.setHtmlUrl(thmlUrl);
@@ -638,12 +639,9 @@ public class ExcelTabController extends BladeController {
                     }
                 }
             }
-
-
         }
 
         // 获取公式颜色
-
         String tabName = wbsTreeContract.getInitTableName();
         // 字段查询 获取公式字段
         String colkeys = "SELECT e_key from m_wbs_tree a ,m_wbs_form_element b WHERE a.init_table_name = '" + tabName + "' and a.id=b.f_id and b.id  in(SELECT element_id from m_formula c where c.is_deleted=0) ";

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

@@ -349,6 +349,9 @@ public class WbsFormElementServiceImpl extends BaseServiceImpl<WbsFormElementMap
     @Override
     @Transactional(rollbackFor = Exception.class)
     public boolean submitBatch(WbsFormElementVO2 wbsFormElementVO2) {
+        if (StringUtils.isEmpty(wbsFormElementVO2.getInitTableName())) {
+            throw new ServiceException("未获取到实体表名称,操作失败");
+        }
         //获取当前表所有元素
         List<WbsFormElement> wbsFormElements = baseMapper.selectList(Wrappers.<WbsFormElement>query().lambda()
                 .eq(WbsFormElement::getFId, wbsFormElementVO2.getId()));
@@ -484,76 +487,76 @@ public class WbsFormElementServiceImpl extends BaseServiceImpl<WbsFormElementMap
 
     // 修改实体表字段信息
     @Transactional(rollbackFor = Exception.class)
-    public void UpdateFormElement(TableInfo  tableInfo,FormElementDTO2 formElementDTO) {  //修改元素字段信息
-            //获取当前wbs节点元素表信息
-            if (tableInfo != null) {
-                if (StringUtils.isNotEmpty(tableInfo.getTabEnName())) {
-                    //查询实体表是否存在
-                    WbsTree wbsTree = new WbsTree();
-                    wbsTree.setInitTableName(tableInfo.getTabEnName());
-                    Integer obj = baseMapper.showShowTabLike(wbsTree);
-                    if (obj != 1) {
-                        //不存在对应实体表的元素表不新增同步元素字段
-                        throw new ServiceException("实体信息表不存在");
-                    }
+    public void UpdateFormElement(TableInfo tableInfo, FormElementDTO2 formElementDTO) {  //修改元素字段信息
+        //获取当前wbs节点元素表信息
+        if (tableInfo != null) {
+            if (StringUtils.isNotEmpty(tableInfo.getTabEnName())) {
+                //查询实体表是否存在
+                WbsTree wbsTree = new WbsTree();
+                wbsTree.setInitTableName(tableInfo.getTabEnName());
+                Integer obj = baseMapper.showShowTabLike(wbsTree);
+                if (obj != 1) {
+                    //不存在对应实体表的元素表不新增同步元素字段
+                    throw new ServiceException("实体信息表不存在");
+                }
 
-                    //获取表单下的元素信息
-                    List<WbsFormElement> wbsFormElements = baseMapper.selectList(Wrappers.<WbsFormElement>query().lambda()
-                            .eq(WbsFormElement::getFId, tableInfo.getId()));
+                //获取表单下的元素信息
+                List<WbsFormElement> wbsFormElements = baseMapper.selectList(Wrappers.<WbsFormElement>query().lambda()
+                        .eq(WbsFormElement::getFId, tableInfo.getId()));
 
-                    WbsFormElement firstWbsFormElement;
-                    List<WbsFormElement> newList;
-                    //存在元素
-                    if (wbsFormElements.size() > 0) {
-                        Collections.reverse(wbsFormElements);
-                        firstWbsFormElement = wbsFormElements.stream().findFirst().orElse(wbsFormElements.get(wbsFormElements.size() - 1));
+                WbsFormElement firstWbsFormElement;
+                List<WbsFormElement> newList;
+                //存在元素
+                if (wbsFormElements.size() > 0) {
+                    Collections.reverse(wbsFormElements);
+                    firstWbsFormElement = wbsFormElements.stream().findFirst().orElse(wbsFormElements.get(wbsFormElements.size() - 1));
 
-                        //去重,元素表中名称已存在的元素不添加
-                        newList = formElementDTO.getElementList().stream().filter(a ->
-                                !wbsFormElements.stream().map(WbsFormElement::getEName).collect(Collectors.toList()).contains(a.getEName())
-                        ).collect(Collectors.toList());
+                    //去重,元素表中名称已存在的元素不添加
+                    newList = formElementDTO.getElementList().stream().filter(a ->
+                            !wbsFormElements.stream().map(WbsFormElement::getEName).collect(Collectors.toList()).contains(a.getEName())
+                    ).collect(Collectors.toList());
 
-                    } else {
-                        //不存在元素
-                        firstWbsFormElement = new WbsFormElement();
-                        firstWbsFormElement.setEKey("key_0");
-                        newList = formElementDTO.getElementList();
-                    }
+                } else {
+                    //不存在元素
+                    firstWbsFormElement = new WbsFormElement();
+                    firstWbsFormElement.setEKey("key_0");
+                    newList = formElementDTO.getElementList();
+                }
 
-                    //初始化eKey字段
-                    int keyNumber = Integer.parseInt(firstWbsFormElement.getEKey().split("_")[1]);
-                    int newKeyNumber = keyNumber + 1;
-                    for (WbsFormElement wbsFormElementInfo : newList) {
-                        String key = "key_" + (newKeyNumber);
-                        //新增元素到当前表中
-                        wbsFormElementInfo.setEKey(key);
-                        wbsFormElementInfo.setId(SnowFlakeUtil.getId());
-                        wbsFormElementInfo.setFId(tableInfo.getId()+"");
-                        wbsFormElementInfo.setStatus(1);
-                        wbsFormElementInfo.setELength(Integer.parseInt(WbsElementUtil.setDefaultElementLength(wbsFormElementInfo.getEType())));
+                //初始化eKey字段
+                int keyNumber = Integer.parseInt(firstWbsFormElement.getEKey().split("_")[1]);
+                int newKeyNumber = keyNumber + 1;
+                for (WbsFormElement wbsFormElementInfo : newList) {
+                    String key = "key_" + (newKeyNumber);
+                    //新增元素到当前表中
+                    wbsFormElementInfo.setEKey(key);
+                    wbsFormElementInfo.setId(SnowFlakeUtil.getId());
+                    wbsFormElementInfo.setFId(tableInfo.getId() + "");
+                    wbsFormElementInfo.setStatus(1);
+                    wbsFormElementInfo.setELength(Integer.parseInt(WbsElementUtil.setDefaultElementLength(wbsFormElementInfo.getEType())));
 
-                        baseMapper.insert(wbsFormElementInfo);
+                    baseMapper.insert(wbsFormElementInfo);
 
-                        //String eTypeFiled = getInitTableFiledType(wbsFormElementInfo.getEType());
-                        //int eLengthFiled = Integer.parseInt(setDefaultElementLength(wbsFormElementInfo.getEType()));
+                    //String eTypeFiled = getInitTableFiledType(wbsFormElementInfo.getEType());
+                    //int eLengthFiled = Integer.parseInt(setDefaultElementLength(wbsFormElementInfo.getEType()));
 
-                        //判断是否存在该Key字段
-                        int row1 = wbsTreeMapper.isThereAField(wbsTree.getInitTableName(), key);
-                        if (row1 == 0) {
-                            //追加字段到实体表中
-                            wbsTreeMapper.alterTableFiled(wbsTree.getInitTableName(), key, "varchar", DEFAULT_ELEMENT_LENGTH_VARCHAR);
-                            //判断是否追加成功
-                            int row2 = wbsTreeMapper.isThereAField(wbsTree.getInitTableName(), key);
-                            if (row2 != 1) {
-                                //追加失败,删除元素,跳过
-                                baseMapper.deleteElementByfId2(wbsFormElementInfo.getId());
-                                continue;
-                            }
+                    //判断是否存在该Key字段
+                    int row1 = wbsTreeMapper.isThereAField(wbsTree.getInitTableName(), key);
+                    if (row1 == 0) {
+                        //追加字段到实体表中
+                        wbsTreeMapper.alterTableFiled(wbsTree.getInitTableName(), key, "varchar", DEFAULT_ELEMENT_LENGTH_VARCHAR);
+                        //判断是否追加成功
+                        int row2 = wbsTreeMapper.isThereAField(wbsTree.getInitTableName(), key);
+                        if (row2 != 1) {
+                            //追加失败,删除元素,跳过
+                            baseMapper.deleteElementByfId2(wbsFormElementInfo.getId());
+                            continue;
                         }
-                        newKeyNumber++;
                     }
+                    newKeyNumber++;
                 }
             }
+        }
     }
 
     @Override
@@ -673,7 +676,7 @@ public class WbsFormElementServiceImpl extends BaseServiceImpl<WbsFormElementMap
                 String newTableName = "m_" + DateUtil.time() + "_" + SnowFlakeUtil.getId();
                 TableInfo tableInfo = tableInfoMapper.selectByTabEnName(formElementDTO.getNodeName());
                 boolean tabExit = true;
-                if(tableInfo==null){
+                if (tableInfo == null) {
                     tableInfo = new TableInfo();
                     tableInfo.setTabType(formElementDTO.getTableType());
                     tableInfo.setTableOwner(formElementDTO.getTableOwner());
@@ -682,14 +685,14 @@ public class WbsFormElementServiceImpl extends BaseServiceImpl<WbsFormElementMap
                     tableInfo.setTabEnName(newTableName);
                     tableInfo.setIsDeleted(0);
                     tableInfoMapper.insert(tableInfo);
-                    tabExit=false;
-                }else{
+                    tabExit = false;
+                } else {
                     tableInfo.setTabType(formElementDTO.getTableType());
                     tableInfo.setTableOwner(formElementDTO.getTableOwner());
                     tableInfo.setFillRate(formElementDTO.getFillRate());
                     tableInfoMapper.updateById(tableInfo);
                     // 修改表结构
-                    this.UpdateFormElement(tableInfo,formElementDTO);
+                    this.UpdateFormElement(tableInfo, formElementDTO);
                 }
 
                 formElementDTO.setInitTableName(tableInfo.getTabEnName());
@@ -698,7 +701,7 @@ public class WbsFormElementServiceImpl extends BaseServiceImpl<WbsFormElementMap
                 formElementDTO.setParentId(Long.valueOf(nodeId));
                 //创建元素表
                 boolean b = false;
-                if(formElementDTO.getSubmitStatus()==2){
+                if (formElementDTO.getSubmitStatus() == 2) {
                     b = submit2(formElementDTO);
                 }
                 try {
@@ -724,7 +727,7 @@ public class WbsFormElementServiceImpl extends BaseServiceImpl<WbsFormElementMap
                         this.initTable(list, newTableName);
 
                         //绑定与清表关系
-                        if(formElementDTO.getSubmitStatus()==2){
+                        if (formElementDTO.getSubmitStatus() == 2) {
                             baseMapper.insertWbsTabRelationExcelTab(SnowFlakeUtil.getId(), formElementDTO.getExcelTabId(), formElementDTO.getId());
                         }
                     }

+ 4 - 2
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/WbsTreePrivateServiceImpl.java

@@ -1504,12 +1504,14 @@ public class WbsTreePrivateServiceImpl extends BaseServiceImpl<WbsTreePrivateMap
             for (WbsTreePrivate wbsTreePrivate : wbsTreePrivates) {
                 WbsTreePrivate wbsTreePrivateNew = BeanUtil.copyProperties(wbsTreePrivate, WbsTreePrivate.class);
                 if (wbsTreePrivateNew != null) {
-                    wbsTreePrivateNew.setId(SnowFlakeUtil.getId());
+                    Long id = SnowFlakeUtil.getId();
+                    wbsTreePrivateNew.setPKeyId(id);
+                    wbsTreePrivateNew.setId(id);
                     wbsTreePrivateNew.setProjectId(pawDTO.getProjectId());
                     wbsTreePrivatesNew.add(wbsTreePrivateNew);
                 }
             }
         }
-        this.insertBatch(wbsTreePrivatesNew,1000);
+        this.insertBatch(wbsTreePrivatesNew, 1000);
     }
 }

+ 3 - 1
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/WbsTreeServiceImpl.java

@@ -739,7 +739,9 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
         for (WbsTreePrivate wbsTreePrivate : wbsTreePrivates) {
             WbsTreePrivate wbsTreePrivateNew = BeanUtil.copyProperties(wbsTreePrivate, WbsTreePrivate.class);
             if (wbsTreePrivateNew != null) {
-                wbsTreePrivateNew.setId(SnowFlakeUtil.getId());
+                Long id = SnowFlakeUtil.getId();
+                wbsTreePrivateNew.setPKeyId(id);
+                wbsTreePrivateNew.setId(id);
                 wbsTreePrivateNew.setProjectId(pawDTO.getProjectId());
                 wbsTreePrivatesNewAdd.add(wbsTreePrivateNew);
             }