给计量单位表修改比例的字段类型,给系统参数表增加金额审核启用标记,给单据增加来源字段

This commit is contained in:
季圣华
2023-03-09 00:01:50 +08:00
parent 00cabc2612
commit 61d9d8704f
28 changed files with 608 additions and 193 deletions

View File

@@ -567,12 +567,12 @@ public class MaterialService {
basicObj.put("lowDecimal", lowDecimal);
materialExObj.put("basic", basicObj);
if(StringUtil.isNotEmpty(manyUnit) && StringUtil.isNotEmpty(ratio)){ //多单位
//校验比例是否是正整
if(!StringUtil.isPositiveLong(ratio.trim())) {
//校验比例是否是数字(含小数)
if(!StringUtil.isPositiveBigDecimal(ratio.trim())) {
throw new BusinessRunTimeException(ExceptionConstants.MATERIAL_RATIO_NOT_INTEGER_CODE,
String.format(ExceptionConstants.MATERIAL_RATIO_NOT_INTEGER_MSG, i+1));
}
Long unitId = unitService.getUnitIdByParam(unit, manyUnit, Integer.parseInt(ratio.trim()));
Long unitId = unitService.getUnitIdByParam(unit, manyUnit, new BigDecimal(ratio.trim()));
if(unitId != null) {
m.setUnitId(unitId);
} else {
@@ -1140,8 +1140,8 @@ public class MaterialService {
String bigUnitStock = "";
if(null!= unitId) {
Unit unit = unitService.getUnit(unitId);
if(unit.getRatio()!=0 && stock!=null) {
bigUnitStock = stock.divide(BigDecimal.valueOf(unit.getRatio()),2,BigDecimal.ROUND_HALF_UP) + unit.getOtherUnit();
if(unit.getRatio()!=null && unit.getRatio().compareTo(BigDecimal.ZERO)!=0 && stock!=null) {
bigUnitStock = stock.divide(unit.getRatio(),2,BigDecimal.ROUND_HALF_UP) + unit.getOtherUnit();
}
}
return bigUnitStock;