fix(system): 费用科目getInfoByOrgAndCode计费单位中英文均为null时过滤,避免返回null-null
This commit is contained in:
+15
-9
@@ -594,22 +594,28 @@ public class ExpenseAccountApplicationService {
|
||||
// unit.add(expenseAccountPO.getBillingUnit2() + "-" + expenseAccountPO.getBillingUnitEn2());
|
||||
// expenseAccountPO.setUnit(unit);
|
||||
// }
|
||||
// 组装计费单位列表(数组)
|
||||
// 组装计费单位列表(数组),中文和英文都为null时过滤掉,避免出现"null-null"
|
||||
List<Map<String, String>> unit = new ArrayList<>();
|
||||
if (expenseAccountPO != null) {
|
||||
Map<String, String> unit1 = new HashMap<>();
|
||||
unit1.put("unit", expenseAccountPO.getBillingUnit() + "-" + expenseAccountPO.getBillingUnitEn());
|
||||
unit.add(unit1);
|
||||
|
||||
Map<String, String> 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<Map<String, String>> unit, String billingUnit, String billingUnitEn) {
|
||||
if (billingUnit == null && billingUnitEn == null) {
|
||||
return;
|
||||
}
|
||||
Map<String, String> unitMap = new HashMap<>();
|
||||
unitMap.put("unit", billingUnit + "-" + billingUnitEn);
|
||||
unit.add(unitMap);
|
||||
}
|
||||
|
||||
public List<QueryExpenseAccountPO> selectExpenseAccount(SearchExpenseAccountDO searchExpenseAccountDO){
|
||||
setDataPermissionForSearch(searchExpenseAccountDO);
|
||||
return expenseAccountDomainService.selectExpenseAccount(searchExpenseAccountDO);
|
||||
|
||||
Reference in New Issue
Block a user