Bläddra i källkod

手填表头信息

yangyj 1 år sedan
förälder
incheckning
3cb9f6ab42

+ 1 - 8
blade-service/blade-business/src/main/java/org/springblade/business/controller/InformationWriteQueryController.java

@@ -1881,7 +1881,7 @@ public class InformationWriteQueryController extends BladeController {
                     if (parent == null) {
                         parent = this.wbsTreeContractClient.getContractWbsTreeByContractIdAndId(wtc.getParentId(), Long.parseLong(wtc.getContractId()));
                     }
-                    /*节点公式*/
+                    /*凡是关联了节点参数公式的元素都不复制数据*/
                     List<Map<String, Object>> paramKey = this.jdbcTemplate.queryForList("select DISTINCT b.e_key ek from m_table_info a  join m_wbs_form_element b on a.id=b.f_id  join m_element_formula_mapping c on b.id = c.element_id where a.tab_en_name='" + tableName + "' and b.is_deleted=0 and c.scope=35 ");
                     if (paramKey.size() > 0) {
                         map.putAll(paramKey.stream().map(m -> m.get("ek").toString()).collect(Collectors.toMap(s -> s, s -> StringPool.NULL)));
@@ -1937,13 +1937,6 @@ public class InformationWriteQueryController extends BladeController {
                         List<String[]> la = Arrays.stream(value.toString().split("☆")).map(s -> s.split("_\\^_")).collect(Collectors.toList());
                         /*全部为一个数的时候不用修改*/
                         if (la.stream().map(a -> a[0]).collect(Collectors.toSet()).size() > 1 || la.size() == 1) {
-/*                            return la.stream().map(a -> {
-                                String v = a[0];
-                                RangeJson best = rjs.stream().min(Comparator.comparingDouble(j -> Double.parseDouble(v) - Double.parseDouble(j.getDesign()))).orElse(rjs.get(0));
-                                int scale = Math.max(new StringBuilder(v).reverse().indexOf("."), 0);
-                                String sv = BaseUtils.rangeList(1, best.getDesign(), best.getDev(), 1, scale, 1).get(0).toString();
-                                return sv + "_^_" + a[1];
-                            }).collect(Collectors.joining());*/
                             List<String> result = new ArrayList<>();
                             for (String[] a : la) {
                                 String v = a[0];

+ 4 - 3
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/FormulaServiceImpl.java

@@ -793,13 +793,14 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
             if (CollectionUtil.isNotEmpty(simple)) {
                 for(FormData fd:simple){
                     if(!tec.force&&fd.executable()&&fd.getFormula().getFormula().contains(WP)){
-                        /*节点公式已经生成过就自动填充,无需再计算*/
+                        /*非强制刷新模式下,节点参数公式已经生成过就自动填充且不会覆盖已经存在的内容,无需再计算*/
                        Optional<Object> op= fd.getValues().stream().map(ElementData::getValue).filter(Func::isNotEmpty).findAny();
                        if(op.isPresent()) {
                            for(ElementData ed:fd.getValues()){
-                               ed.setValue(op.get());
+                               if(ed.isEmpty()) {
+                                   ed.setValue(op.get());
+                               }
                            }
-                           fd.getFormula().setOutm(1);
                            fd.setFinished(true);
                            fd.setUpdate(1);
                        }