浏览代码

经营报表导出

zouxuan 2 年之前
父节点
当前提交
6e9ffed193
共有 1 个文件被更改,包括 22 次插入18 次删除
  1. 22 18
      mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExportServiceImpl.java

+ 22 - 18
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExportServiceImpl.java

@@ -2406,26 +2406,30 @@ public class ExportServiceImpl implements ExportService {
                 } else if (row.getGroupType().equals(GroupType.SPORADIC)) {
                     //考级报名
                     if (row.getType().equals(OrderTypeEnum.DEGREE_REGISTRATION)) {
-                        String[] feeTypes = row.getMemo().split(";");
-                        List<String> feeTypeList = Arrays.asList(feeTypes);
-                        for (String feeTypeStr : feeTypeList) {
-                            int index = feeTypeStr.lastIndexOf(":");
-                            if (index < 0) {
-                                continue;
-                            }
-                            BigDecimal typeFee = new BigDecimal(feeTypeStr.substring(index + 1));
-                            if (row.getExpectAmount().compareTo(BigDecimal.ZERO) > 0) {
-                                typeFee = typeFee.multiply(row.getActualAmount()).divide(row.getExpectAmount(), 2, BigDecimal.ROUND_DOWN);
-                            }
-                            if (feeTypeStr.contains("VIP")) {
-                                row.setVipCourseFee(typeFee);
-                            } else if (feeTypeStr.contains("网管课")) {
-                                row.setPracticeCourseFee(typeFee);
-                            } else if (feeTypeStr.contains("乐理课")) {
-                                row.setTheoryCourseFee(typeFee);
+                        if(StringUtils.isEmpty(row.getMemo())){
+                            row.setDegreeFee(row.getActualAmount());
+                        }else {
+                            String[] feeTypes = row.getMemo().split(";");
+                            List<String> feeTypeList = Arrays.asList(feeTypes);
+                            for (String feeTypeStr : feeTypeList) {
+                                int index = feeTypeStr.lastIndexOf(":");
+                                if (index < 0) {
+                                    continue;
+                                }
+                                BigDecimal typeFee = new BigDecimal(feeTypeStr.substring(index + 1));
+                                if (row.getExpectAmount().compareTo(BigDecimal.ZERO) > 0) {
+                                    typeFee = typeFee.multiply(row.getActualAmount()).divide(row.getExpectAmount(), 2, BigDecimal.ROUND_DOWN);
+                                }
+                                if (feeTypeStr.contains("VIP")) {
+                                    row.setVipCourseFee(typeFee);
+                                } else if (feeTypeStr.contains("网管课")) {
+                                    row.setPracticeCourseFee(typeFee);
+                                } else if (feeTypeStr.contains("乐理课")) {
+                                    row.setTheoryCourseFee(typeFee);
+                                }
                             }
+                            row.setDegreeFee(row.getActualAmount().subtract(row.getVipCourseFee()).subtract(row.getPracticeCourseFee()).subtract(row.getTheoryCourseFee()));
                         }
-                        row.setDegreeFee(row.getActualAmount().subtract(row.getVipCourseFee()).subtract(row.getPracticeCourseFee()).subtract(row.getTheoryCourseFee()));
                     } else {
                         if (row.getChargeType() != null && SporadicChargeTypeEnum.LEVEL.getCode().equals(row.getChargeType())) {
                             row.setDegreeFee(row.getActualAmount());