fix(成本分析): 制作成本添加额外字段用于展示油漆重量和其他工序的工时
This commit is contained in:
parent
51a55f647c
commit
6fef709dad
|
|
@ -74,6 +74,11 @@ public class EBomCostCacheDTO implements Serializable {
|
|||
*/
|
||||
private BigDecimal paintCost = BigDecimal.ZERO;
|
||||
|
||||
/**
|
||||
* 油漆重量
|
||||
*/
|
||||
private BigDecimal paintWeight = BigDecimal.ONE;
|
||||
|
||||
/**
|
||||
* 制作成本
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -17,4 +17,9 @@ public class ProductionCostDTO implements Serializable {
|
|||
* 成本
|
||||
*/
|
||||
private BigDecimal cost = BigDecimal.ZERO;
|
||||
|
||||
/**
|
||||
* 工时
|
||||
*/
|
||||
private BigDecimal workHours = BigDecimal.ZERO;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -30,4 +30,7 @@ public class NameCostInfoVO implements Serializable {
|
|||
|
||||
@ApiModelProperty("占比")
|
||||
private String ratio;
|
||||
|
||||
@ApiModelProperty("额外信息")
|
||||
private BigDecimal additional;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -152,6 +152,7 @@ public class BomCostCalculateService {
|
|||
cdto.setAuxiliaryDepartmentLaborCost(cdto.getAuxiliaryDepartmentLaborCost().add(c.getAuxiliaryDepartmentLaborCost().multiply(dto1.getNum())));
|
||||
cdto.setAuxiliaryDepartmentExpenses(cdto.getAuxiliaryDepartmentExpenses().add(c.getAuxiliaryDepartmentExpenses().multiply(dto1.getNum())));
|
||||
cdto.setPaintCost(cdto.getPaintCost().add(c.getPaintCost().multiply(dto1.getNum())));
|
||||
cdto.setPaintWeight(cdto.getPaintWeight().add(dto1.getNum()));
|
||||
if (CollectionUtil.isNotEmpty(c.getProductionCosts())) {
|
||||
c.getProductionCosts().forEach(pc -> {
|
||||
ProductionCostDTO pdto = cdto.getProductionCosts().parallelStream()
|
||||
|
|
@ -164,6 +165,7 @@ public class BomCostCalculateService {
|
|||
cdto.getProductionCosts().add(pdto);
|
||||
}
|
||||
pdto.setCost(pdto.getCost().add(pc.getCost().multiply(dto1.getNum())));
|
||||
pdto.setWorkHours(pdto.getWorkHours().add(pc.getWorkHours().multiply(dto1.getNum())));
|
||||
});
|
||||
}
|
||||
}
|
||||
|
|
@ -207,6 +209,7 @@ public class BomCostCalculateService {
|
|||
dto.setCost(hourlyWages.add(benefit).add(auxiliaryMaterialsAndConsumables).add(feeEquipmentDepreciation)
|
||||
.add(feeWorkshopLaborCost).add(feeWorkshopOffice).add(auxiliaryDepartmentLaborCosts).add(assistantFee)
|
||||
.multiply(gs));
|
||||
dto.setWorkHours(gs);
|
||||
productionCosts.add(dto);
|
||||
if (dto.getCost().compareTo(BigDecimal.ZERO) > 0) {
|
||||
log.debug(StrUtil.format(
|
||||
|
|
|
|||
|
|
@ -486,12 +486,14 @@ public class ProductCostAnalysisService {
|
|||
paintNameCostInfoVO.setName("油漆费用");
|
||||
paintNameCostInfoVO.setCost(cost.getPaintCost());
|
||||
paintNameCostInfoVO.setRatio(calculateRatio(cost.getPaintCost(), manufactureCostTotal));
|
||||
paintNameCostInfoVO.setAdditional(cost.getPaintWeight());
|
||||
nameCostInfoVOS.add(paintNameCostInfoVO);
|
||||
cost.getProductionCosts().forEach(pc -> {
|
||||
nameCostInfoVOS.add(new NameCostInfoVO()
|
||||
.setName(pc.getName())
|
||||
.setCost(pc.getCost())
|
||||
.setRatio(calculateRatio(pc.getCost(), manufactureCostTotal))
|
||||
.setAdditional(pc.getWorkHours())
|
||||
);
|
||||
});
|
||||
manufactureCostVO.setTotalCost(manufactureCostTotal);
|
||||
|
|
|
|||
Loading…
Reference in New Issue