Selaa lähdekoodia

材料开工计量单不要小数

qianxb 1 vuosi sitten
vanhempi
commit
28f1f466ce

+ 6 - 2
blade-service/blade-meter/src/main/java/org/springblade/meter/service/impl/MaterialMeterFormServiceImpl.java

@@ -39,6 +39,7 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
+import java.math.RoundingMode;
 import java.util.List;
 
 /**
@@ -67,13 +68,16 @@ public class MaterialMeterFormServiceImpl extends BaseServiceImpl<MaterialMeterF
         if (period.getApproveStatus() != 0){
             throw new ServiceException("新增失败,当前计量期已经上报或审批");
         }
+        if (dto.getMeterMoney() == null){
+            throw new ServiceException("计量金额不能为空");
+        }
         //保存材料计量单信息
         MaterialMeterForm form = new MaterialMeterForm();
         BeanUtils.copyProperties(dto,form);
         Long id = SnowFlakeUtil.getId();
         form.setId(id);
         if (form.getPrice() != null && form.getMeterAmount() != null){
-            form.setMeterMoney(form.getPrice().multiply(form.getMeterAmount()));
+            form.setMeterMoney(form.getPrice().multiply(form.getMeterAmount()).setScale(0, RoundingMode.HALF_UP));
         }
         this.save(form);
         //保存附件信息
@@ -127,7 +131,7 @@ public class MaterialMeterFormServiceImpl extends BaseServiceImpl<MaterialMeterF
         MaterialMeterForm form = new MaterialMeterForm();
         BeanUtils.copyProperties(dto,form);
         if (form.getPrice() != null && form.getMeterAmount() != null){
-            form.setMeterMoney(form.getPrice().multiply(form.getMeterAmount()));
+            form.setMeterMoney(form.getPrice().multiply(form.getMeterAmount()).setScale(0,RoundingMode.HALF_UP));
         }
         this.updateById(form);
         //删除附件信息

+ 10 - 1
blade-service/blade-meter/src/main/java/org/springblade/meter/service/impl/StartPayMeterFormServiceImpl.java

@@ -39,6 +39,7 @@ import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
 
 import java.math.BigDecimal;
+import java.math.RoundingMode;
 import java.util.List;
 
 /**
@@ -65,11 +66,15 @@ public class StartPayMeterFormServiceImpl extends BaseServiceImpl<StartPayMeterF
         if (period.getApproveStatus() != 0){
             throw new ServiceException("新增失败,当前计量期已经上报或审批");
         }
-        //保存材料计量单信息
+        if (dto.getMeterMoney() == null){
+            throw new ServiceException("计量金额不能为空");
+        }
+        //保存开工计量单信息
         StartPayMeterForm form = new StartPayMeterForm();
         BeanUtils.copyProperties(dto,form);
         Long id = SnowFlakeUtil.getId();
         form.setId(id);
+        form.setMeterMoney(form.getMeterMoney().setScale(0, RoundingMode.HALF_UP));
         this.save(form);
         //保存附件信息
         List<AttachmentForm> fileList = dto.getFileList();
@@ -93,9 +98,13 @@ public class StartPayMeterFormServiceImpl extends BaseServiceImpl<StartPayMeterF
         if (period.getApproveStatus() != 0){
             throw new ServiceException("修改失败,当前计量期已经上报或审批");
         }
+        if (dto.getMeterMoney() == null){
+            throw new ServiceException("计量金额不能为空");
+        }
         //保存材料计量单信息
         StartPayMeterForm form = new StartPayMeterForm();
         BeanUtils.copyProperties(dto,form);
+        form.setMeterMoney(form.getMeterMoney().setScale(0, RoundingMode.HALF_UP));
         this.updateById(form);
         //删除附件信息
         attachmentFormService.deleteByMasterId(form.getId());