diff --git a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/application/service/expenseAccount/ExpenseAccountApplicationService.java b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/application/service/expenseAccount/ExpenseAccountApplicationService.java index 08586ea17..6bfb55e13 100644 --- a/mhd-modules/mhd-system/src/main/java/com/mhd/basic/application/service/expenseAccount/ExpenseAccountApplicationService.java +++ b/mhd-modules/mhd-system/src/main/java/com/mhd/basic/application/service/expenseAccount/ExpenseAccountApplicationService.java @@ -594,22 +594,28 @@ public class ExpenseAccountApplicationService { // unit.add(expenseAccountPO.getBillingUnit2() + "-" + expenseAccountPO.getBillingUnitEn2()); // expenseAccountPO.setUnit(unit); // } - // 组装计费单位列表(数组) + // 组装计费单位列表(数组),中文和英文都为null时过滤掉,避免出现"null-null" List> unit = new ArrayList<>(); if (expenseAccountPO != null) { - Map unit1 = new HashMap<>(); - unit1.put("unit", expenseAccountPO.getBillingUnit() + "-" + expenseAccountPO.getBillingUnitEn()); - unit.add(unit1); - - Map unit2 = new HashMap<>(); - unit2.put("unit", expenseAccountPO.getBillingUnit2() + "-" + expenseAccountPO.getBillingUnitEn2()); - unit.add(unit2); - + addUnitIfPresent(unit, expenseAccountPO.getBillingUnit(), expenseAccountPO.getBillingUnitEn()); + addUnitIfPresent(unit, expenseAccountPO.getBillingUnit2(), expenseAccountPO.getBillingUnitEn2()); expenseAccountPO.setUnit(unit); } return expenseAccountPO; } + /** + * 组装计费单位,中文和英文都为null时不加入列表 + */ + private void addUnitIfPresent(List> unit, String billingUnit, String billingUnitEn) { + if (billingUnit == null && billingUnitEn == null) { + return; + } + Map unitMap = new HashMap<>(); + unitMap.put("unit", billingUnit + "-" + billingUnitEn); + unit.add(unitMap); + } + public List selectExpenseAccount(SearchExpenseAccountDO searchExpenseAccountDO){ setDataPermissionForSearch(searchExpenseAccountDO); return expenseAccountDomainService.selectExpenseAccount(searchExpenseAccountDO);