public ProductQuantitiesHolder(final OperationProductComponentWithQuantityContainer productQuantities, final Map<Long, BigDecimal> operationRuns, final Set<OperationProductComponentHolder> nonComponents) { this.productQuantities = Maps.newHashMap(productQuantities.asMap()); this.operationRuns = Maps.newHashMap(operationRuns); this.nonComponents = Sets.newHashSet(nonComponents); }
public ProductQuantitiesHolder(final OperationProductComponentWithQuantityContainer productQuantities, final Map<Long, BigDecimal> operationRuns) { this.productQuantities = Maps.newHashMap(productQuantities.asMap()); this.operationRuns = Maps.newHashMap(operationRuns); this.nonComponents = Sets.newHashSet(); }
private Map<OperationProductComponentHolder, BigDecimal> getOperationProductComponentWithQuantities( final OperationProductComponentWithQuantityContainer productComponentWithQuantities, final Set<OperationProductComponentHolder> nonComponents, final boolean onlyComponents, final boolean onlyMaterials) { Map<OperationProductComponentHolder, BigDecimal> productWithQuantities = Maps.newHashMap(); for (Map.Entry<OperationProductComponentHolder, BigDecimal> productComponentWithQuantity : productComponentWithQuantities .asMap().entrySet()) { OperationProductComponentHolder operationProductComponentHolder = productComponentWithQuantity.getKey(); if (onlyComponents && nonComponents.contains(operationProductComponentHolder)) { continue; } if (onlyMaterials) { Entity product = operationProductComponentHolder.getProduct(); if (hasAcceptedMasterTechnology(product)) { continue; } } addOPCQuantitiesToList(productComponentWithQuantity, productWithQuantities); } return productWithQuantities; }
private Map<Long, BigDecimal> getProductWithoutSubcontractingProduct( final OperationProductComponentWithQuantityContainer productComponentWithQuantities, final Set<OperationProductComponentHolder> nonComponents, final boolean onlyComponents, final boolean onlyMaterials) { Map<Long, BigDecimal> productWithQuantities = Maps.newHashMap(); for (Entry<OperationProductComponentHolder, BigDecimal> productComponentWithQuantity : productComponentWithQuantities .asMap().entrySet()) { OperationProductComponentHolder operationProductComponentHolder = productComponentWithQuantity.getKey(); if (onlyComponents && nonComponents.contains(operationProductComponentHolder)) { continue; } if (onlyMaterials) { Entity product = operationProductComponentHolder.getProduct(); if (hasAcceptedMasterTechnology(product)) { continue; } } addProductQuantitiesToList(productComponentWithQuantity, productWithQuantities); } return productWithQuantities; }
@Override public OperationProductComponentWithQuantityContainer groupOperationProductComponentWithQuantities( final Map<Long, OperationProductComponentWithQuantityContainer> operationProductComponentWithQuantityContainerForOrders) { OperationProductComponentWithQuantityContainer operationProductComponentWithQuantityContainer = new OperationProductComponentWithQuantityContainer(); for (Entry<Long, OperationProductComponentWithQuantityContainer> operationProductComponentWithQuantityContainerForOrder : operationProductComponentWithQuantityContainerForOrders .entrySet()) { for (Entry<OperationProductComponentHolder, BigDecimal> productComponentWithQuantity : operationProductComponentWithQuantityContainerForOrder .getValue().asMap().entrySet()) { OperationProductComponentHolder operationProductComponentHolder = productComponentWithQuantity.getKey(); BigDecimal quantity = productComponentWithQuantity.getValue(); if (operationProductComponentWithQuantityContainer.containsKey(operationProductComponentHolder)) { BigDecimal addedQuantity = operationProductComponentWithQuantityContainer .get(operationProductComponentHolder); quantity = quantity.add(addedQuantity, numberService.getMathContext()); operationProductComponentWithQuantityContainer.put(operationProductComponentHolder, quantity); } else { operationProductComponentWithQuantityContainer.put(operationProductComponentHolder, quantity); } } } return operationProductComponentWithQuantityContainer; }
for (Map.Entry<OperationProductComponentHolder, BigDecimal> productComponentQuantity : productComponentQuantities.asMap() .entrySet()) { OperationProductComponentHolder componentHolder = productComponentQuantity.getKey();
.getProductComponentQuantities(order); for (Entry<OperationProductComponentHolder, BigDecimal> productComponentQuantity : productComponentQuantities.asMap() .entrySet()) { OperationProductComponentHolder operationProductComponentHolder = productComponentQuantity.getKey();
private void updateProductionCountingQuantities(final Entity order, final OperationProductComponentWithQuantityContainer productComponentQuantities, final Set<OperationProductComponentHolder> nonComponents) { for (Entry<OperationProductComponentHolder, BigDecimal> productComponentQuantity : productComponentQuantities.asMap() .entrySet()) { OperationProductComponentHolder operationProductComponentHolder = productComponentQuantity.getKey(); BigDecimal plannedQuantity = productComponentQuantity.getValue(); Entity technologyOperationComponent = operationProductComponentHolder.getTechnologyOperationComponent(); Entity product = operationProductComponentHolder.getProduct(); String role = getRole(operationProductComponentHolder); boolean isNonComponent = nonComponents.contains(operationProductComponentHolder); updateProductionCountingQuantity(order, technologyOperationComponent, product, role, isNonComponent, plannedQuantity); } updateProductionCountingQuantity(order, getOrderTechnologyOperationComponent(order), order.getBelongsToField(OrderFields.PRODUCT), ProductionCountingQuantityRole.PRODUCED.getStringValue(), false, order.getDecimalField(OrderFields.PLANNED_QUANTITY)); }
private void prepareProductionCountingQuantities(final Entity order, final Set<OperationProductComponentHolder> nonComponents, final OperationProductComponentWithQuantityContainer productComponentQuantities, final List<Entity> productionCountingQuantities) { for (Entry<OperationProductComponentHolder, BigDecimal> productComponentQuantity : productComponentQuantities.asMap() .entrySet()) { OperationProductComponentHolder operationProductComponentHolder = productComponentQuantity.getKey(); BigDecimal plannedQuantity = productComponentQuantity.getValue(); Entity technologyOperationComponent = operationProductComponentHolder.getTechnologyOperationComponent(); Entity product = operationProductComponentHolder.getProduct(); String role = getRole(operationProductComponentHolder); boolean isNonComponent = nonComponents.contains(operationProductComponentHolder); Entity productionCountingQuantity = prepareProductionCountingQuantity(order, technologyOperationComponent, product, role, isNonComponent, plannedQuantity); productionCountingQuantities.add(productionCountingQuantity); } if (PluginUtils.isEnabled("productFlowThruDivision")) { fillFlow(productionCountingQuantities, order); } if (parameterService.getParameter().getBooleanField(ParameterFieldsO.CREATE_SET_ELEMENTS_ON_ACCEPT)) { productionCountingQuantitySetService.markIntermediateInProductionCountingQuantities(productionCountingQuantities, false); } }
for (Entry<OperationProductComponentHolder, BigDecimal> productComponentWithQuantity : allWithSameEntityType.asMap() .entrySet()) { OperationProductComponentHolder operationProductComponentHolder = productComponentWithQuantity.getKey();
final Entity order, final List<Entity> entries, boolean plannedQuantityChanged) { for (Map.Entry<OperationProductComponentHolder, BigDecimal> productComponentQuantity : operationProductComponentWithQuantityContainer .asMap().entrySet()) { OperationProductComponentHolder operationProductComponentHolder = productComponentQuantity.getKey(); Entity technologyOperationComponent = operationProductComponentHolder.getTechnologyOperationComponent();