Showing
2 changed files
with
20 additions
and
1 deletions
| ... | ... | @@ -92,6 +92,10 @@ public class CustomerCreditChangeImportListener extends ExcelImportListener<Cust |
| 92 | 92 | } |
| 93 | 93 | if (StringUtil.isBlank(data.getCompanyCreditLimit())) { |
| 94 | 94 | data.setCompanyCreditLimit(customerCredit.getCompanyCreditLimit()); |
| 95 | + } else { | |
| 96 | + if (!isNumeric(data.getCompanyCreditLimit())) { | |
| 97 | + throw new DefaultClientException("第" + context.readRowHolder().getRowIndex() + "行“授信额度”必须是数字!"); | |
| 98 | + } | |
| 95 | 99 | } |
| 96 | 100 | if (StringUtil.isBlank(data.getCompanyMaterialSupplyPlan())) { |
| 97 | 101 | data.setCompanyMaterialSupplyPlan(customerCredit.getCompanyMaterialSupplyPlan()); |
| ... | ... | @@ -141,4 +145,19 @@ public class CustomerCreditChangeImportListener extends ExcelImportListener<Cust |
| 141 | 145 | @Override |
| 142 | 146 | protected void doComplete() { |
| 143 | 147 | } |
| 148 | + | |
| 149 | + | |
| 150 | + /** | |
| 151 | + * 使用正则表达式验证是否为数字(支持整数和小数) | |
| 152 | + * @param value 要验证的字符串 | |
| 153 | + * @return 如果是数字返回true,否则返回false | |
| 154 | + */ | |
| 155 | + private boolean isNumeric(String value) { | |
| 156 | + if (StringUtil.isBlank(value)) { | |
| 157 | + return false; | |
| 158 | + } | |
| 159 | + // 正则表达式:可选负号 + 数字 + 可选小数部分 | |
| 160 | + String regex = "^-?\\d+(\\.\\d+)?$"; | |
| 161 | + return value.matches(regex); | |
| 162 | + } | |
| 144 | 163 | } | ... | ... |