Эх сурвалжийг харах

质检bug:公式获取空值生产空白表格

chenr 2 сар өмнө
parent
commit
53482f5d06

+ 3 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/formula/impl/ExecutorMeter.java

@@ -1775,6 +1775,9 @@ public class ExecutorMeter extends FormulaExecutor {
            /* List<String> numbers=  paymentsPeriodEnd.stream().map(Payment::getNumber).distinct().collect(Collectors.toList());*/
             LinkedHashMap<String,InventoryForm> numbersGroup=  tec.meterInfo.getInventoryForms().stream().filter(e->!tec.meterInfo.getChapter().contains(e)&&StringUtils.isNotEquals(0,e.getParentId())).collect(Collectors.toMap(InventoryForm::getFormNumber,e->e,(v1,v2)->v1,LinkedHashMap::new));
             numbersGroup.forEach((number, itf)->{
+                if(number.equals("410-2-4-3")){
+                    System.out.println("");
+                }
                 SubprojectInterimPaymentSummary sis = new SubprojectInterimPaymentSummary();
                 /*上期汇总*/
                 Summary pre =preSummary.get(number);

+ 7 - 14
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/FormulaServiceImpl.java

@@ -1181,7 +1181,7 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
             checkTable = op.get().getInitTableName();
         }
         for (FormData fd : tec.formDataList) {
-            if(fd.getCode().equals("m_20220928153039_1575025176213454848:key_17")){
+            if(fd.getCode().equals("m_20220928144828_1575014563634479104:key_24")){
                 System.out.println("111");
             }
             if (fd.verify()) {
@@ -1234,19 +1234,12 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
                                             List<Object> e1 = (List<Object>) ((HashMap<?, ?>) e).get(ele.get(0).getCode());
                                             List<Object> values = (List<Object>) data;
                                             if (e1.size() != values.size()) {
-                                                //JL815获取CL10 JL815只有6行,CL10有8行导致生成空表
-                                                if(fd.getCode().equals("m_20220928153039_1575025176213454848:key_17")){
-                                                    for (int i = 0; i < e1.size(); i++) {
-                                                        if(i>=fd.getValues().size()){
-                                                            if(!e1.get(i).equals("")){
-                                                                values.add(i,e1.get(i));
-                                                            }
-                                                        }else {
-                                                            if (e1.get(i).equals("")) {
-                                                                values.add(i, "");
-                                                            }
-                                                        }
-                                                    }
+                                                //JL815获取CL10 JL815只有6行,CL10有8行导致生成空表  JL814也一样
+                                                if(((HashMap<?, ?>) e).containsKey("m_20220920181735_1572168084863582208:key_19")){
+                                                    values = values.stream()
+                                                        .filter(obj -> !(obj instanceof String) ||
+                                                            (obj != null && !((String) obj).trim().isEmpty()))
+                                                        .collect(Collectors.toList());
                                                 }else {
                                                     for (int i = 0; i < e1.size(); i++) {
                                                         if (e1.get(i).equals("")) {

+ 2 - 2
blade-service/blade-manager/src/main/java/org/springblade/manager/utils/FormEndPayUtil.java

@@ -19,7 +19,7 @@ public class FormEndPayUtil {
         FormEndPayUtil.jdbcTemplate = jdbcTemplate;
     }
     public static FormEndPay selectFormEndPay(Long periodId,Long contractId,String formNumber){
-        String sql="Select * from s_meter_form_end_pay where period_id="+periodId+" and contract_id="+contractId+" and form_number="+"'"+formNumber+"'";
+        String sql="Select * from s_meter_form_end_pay where period_id="+periodId+" and contract_id="+contractId+" and form_number="+"'"+formNumber+"' and is_deleted=0";
         List<FormEndPay> query = jdbcTemplate.query(sql, new BeanPropertyRowMapper<>(FormEndPay.class));
         if(query.isEmpty()){
             return null;
@@ -54,7 +54,7 @@ public class FormEndPayUtil {
         );
     }
     public static ChapterEndPay selectChapterEndPay(Long periodId,Long contractId,String formNumber){
-        String sql="Select * from s_meter_chapter_end_pay where period_id="+periodId+" and contract_id="+contractId+" and form_number="+"'"+formNumber+"'";
+        String sql="Select * from s_meter_chapter_end_pay where period_id="+periodId+" and contract_id="+contractId+" and form_number="+"'"+formNumber+"' and is_deleted=0";
         List<ChapterEndPay> query = jdbcTemplate.query(sql, new BeanPropertyRowMapper<>(ChapterEndPay.class));
         if(query.isEmpty()){
             return null;