Procházet zdrojové kódy

财务账龄表及催款函尾差问题处理

fyz před 2 týdny
rodič
revize
f7eed2fce7

+ 14 - 2
mjava-lanyun/src/main/java/com/malk/lanyun/Mapper/ProjectAnalysisMapper.java

@@ -35,14 +35,26 @@ public class ProjectAnalysisMapper implements RowMapper<ProjectAnalysis> {
         projectAnalysis.setNetMargin(resultSet.getString("net_margin"));
 //        projectAnalysis.setFormat(resultSet.getString("format"));
 //        projectAnalysis.setCustomerSystem(resultSet.getString("customer_system"));
-        projectAnalysis.setProfitLoss(resultSet.getString("profit_loss"));
+        if (hasColumn(resultSet,"profit_loss")) {
+            projectAnalysis.setProfitLoss(resultSet.getString("profit_loss"));
+        }
 //        projectAnalysis.setApproachDate(resultSet.getString("approach_date"));
 //        projectAnalysis.setLevel(resultSet.getString("level"));
 //        projectAnalysis.setNotes(resultSet.getString("notes"));
-        if (ObjectUtil.isNotNull(resultSet.getString("monthString"))){
+        if (hasColumn(resultSet,"monthString")){
             projectAnalysis.setMonthString(resultSet.getString("monthString"));
         }
 
         return projectAnalysis;
     }
+    public boolean hasColumn(ResultSet resultSet, String columnName) {
+        try {
+            Object value = resultSet.getObject(columnName);
+            return true;
+        } catch (SQLException e) {
+            // 表示该列不存在
+            return false;
+        }
+    }
+
 }

+ 2 - 0
mjava-lanyun/src/main/java/com/malk/lanyun/service/impl/FImplService.java

@@ -95,12 +95,14 @@ public class FImplService implements FService {
                 // 开票子表: 业务内容-开票内容, 发票号码, 开票时间-开票周期(文本), 项目名称, 金额-未回款金额, 备注-差异说明
                 Map sub = UtilMap.map("textField_m06ij3zf, textField_m06ij3zg, textField_m06ij3zh, textField_m06ij3zi, numberField_m06ij3zk, textField_m06ij3zj", "textField_lvdnme0u, textField_lvd8pp35, textField_m25j5gxv, textField_lvdntzul, numberField_m4qrz685, textareaField_m25j5gyc", data);
                 sub.put("textField_m06ij3ze", 1); // 序号
+                sub.put("numberField_m06ij3zk",BigDecimal.valueOf(UtilMap.getDouble(sub, "numberField_m06ij3zk")));
                 formData.put("tableField_m06ij3zd", UtilList.asList(sub));
             } else {
                 List<Map> table = UtilMap.getList(formData, "tableField_m06ij3zd");
                 // 开票子表: 业务内容-开票内容, 发票号码, 开票时间-开票周期(文本), 项目名称, 金额-未回款金额, 备注-差异说明
                 Map sub = UtilMap.map("textField_m06ij3zf, textField_m06ij3zg, textField_m06ij3zh, textField_m06ij3zi, numberField_m06ij3zk, textField_m06ij3zj", "textField_lvdnme0u, textField_lvd8pp35, textField_m25j5gxv, textField_lvdntzul, numberField_m4qrz685, textareaField_m25j5gyc", data);
                 sub.put("textField_m06ij3ze", table.size() + 1); // 序号
+                sub.put("numberField_m06ij3zk",BigDecimal.valueOf(UtilMap.getDouble(sub, "numberField_m06ij3zk")));
                 table.add(sub);
                 formData.put("tableField_m06ij3zd", table);
                 // 累计合计金额