|
|
@@ -5,6 +5,7 @@ import lombok.Data;
|
|
|
import lombok.EqualsAndHashCode;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.sky.core.tool.utils.DateUtil;
|
|
|
+import org.sky.core.tool.utils.Func;
|
|
|
import org.sky.scientific.excel.XmGoodsExcel;
|
|
|
import org.sky.scientific.utils.ImportResult;
|
|
|
import org.sky.scientific.utils.ValidationUtils;
|
|
|
@@ -41,7 +42,7 @@ public class XmGoodsImportListener extends BaseReadListener {
|
|
|
excel.setXh(data.get(0));
|
|
|
excel.setUseDate(ValidationUtils.safeParseDate(data.get(1), DateUtil.PATTERN_DATE));
|
|
|
if (excel.getUseDate() == null) {
|
|
|
- errors.add("领用日期为空或格式错误,yyyy-MM-dd");
|
|
|
+ errors.add("领取日期为空或格式错误,yyyy-MM-dd");
|
|
|
}
|
|
|
excel.setXmbh(data.get(2));
|
|
|
excel.setXmmc(data.get(3));
|
|
|
@@ -50,8 +51,23 @@ public class XmGoodsImportListener extends BaseReadListener {
|
|
|
excel.setName(data.get(6));
|
|
|
excel.setModel(data.get(7));
|
|
|
excel.setUnit(data.get(8));
|
|
|
- excel.setUnitPrice(ValidationUtils.safeParseBigDecimal(data.get(9)));
|
|
|
- excel.setUseQuantity(ValidationUtils.safeParseDouble(data.get(10)));
|
|
|
+
|
|
|
+ String unitPrice = data.get(9);
|
|
|
+ if(Func.isNotBlank(unitPrice)){
|
|
|
+ BigDecimal tmp = ValidationUtils.safeParseBigDecimal(data.get(9));
|
|
|
+ if(tmp==null || tmp.compareTo(BigDecimal.ZERO) <= 0){
|
|
|
+ errors.add("单价须为数字,且大于等于0");
|
|
|
+ }
|
|
|
+ excel.setUnitPrice(tmp);
|
|
|
+ }
|
|
|
+ String useQuantity = data.get(10);
|
|
|
+ if(Func.isNotBlank(useQuantity)){
|
|
|
+ Double tmp = ValidationUtils.safeParseDouble(useQuantity);
|
|
|
+ if(tmp == null || tmp <= 0){
|
|
|
+ errors.add("领取数量须为数字,且大于等于0");
|
|
|
+ }
|
|
|
+ excel.setUseQuantity(tmp);
|
|
|
+ }
|
|
|
excel.setAmount(BigDecimal.valueOf(excel.getUseQuantity()).multiply(excel.getUnitPrice()));
|
|
|
|
|
|
errors.addAll(ValidationUtils.validate(excel));
|