private Entity getBasicProductionCounting(final Entity order, final Entity product) { return order.getHasManyField(OrderFieldsBPC.BASIC_PRODUCTION_COUNTINGS).find() .add(SearchRestrictions.belongsTo(BasicProductionCountingFields.PRODUCT, product)).setMaxResults(1) .uniqueResult(); }
private boolean checkIfOrderHasProductionTrackings(final Entity order) { SearchResult searchResult = order.getHasManyField(OrderFieldsPC.PRODUCTION_TRACKINGS).find() .add(SearchRestrictions.eq(ProductionTrackingFields.STATE, ProductionTrackingStateStringValues.DRAFT)).list(); return (searchResult.getTotalNumberOfEntities() > 0); }
private boolean checkIfProductExists(final Entity previousTechnologyOperationComponent, final Entity product) { return (previousTechnologyOperationComponent .getHasManyField(TechnologyOperationComponentFields.OPERATION_PRODUCT_IN_COMPONENTS).find() .add(SearchRestrictions.belongsTo(OperationProductInComponentFields.PRODUCT, product)).list() .getTotalNumberOfEntities() == 1); }
@Override public List<Entity> getMaterialsForOperationFromProductionCountingQuantities(final Entity order, final Entity operationComponent) { SearchCriteriaBuilder scb = order.getHasManyField(OrderFieldsBPC.PRODUCTION_COUNTING_QUANTITIES).find() .add(SearchRestrictions.belongsTo(ProductionCountingQuantityFields.TECHNOLOGY_OPERATION_COMPONENT, operationComponent)); return scb.list().getEntities(); }
private Entity getBasicProductionCounting(final Entity trackingOperationProductComponent, final Entity order) { Entity product = trackingOperationProductComponent.getBelongsToField(L_PRODUCT); return order.getHasManyField(OrderFieldsBPC.BASIC_PRODUCTION_COUNTINGS).find() .add(SearchRestrictions.belongsTo(BasicProductionCountingFields.PRODUCT, product)).setMaxResults(1) .uniqueResult(); }
private List<Entity> filterCoverageProducts(final Entity materialRequirementCoverage) { return materialRequirementCoverage.getHasManyField(MaterialRequirementCoverageFields.COVERAGE_PRODUCTS).find() .add(SearchRestrictions.eq(CoverageProductFields.STATE, CoverageProductState.LACK.getStringValue())).list() .getEntities(); }
private List<Entity> getSimpleStaffAssignmentToShifts(final Entity assignmentToShift) { return assignmentToShift .getHasManyField(AssignmentToShiftFields.STAFF_ASSIGNMENT_TO_SHIFTS) .find() .add(SearchRestrictions.eq(StaffAssignmentToShiftFields.STATE, StaffAssignmentToShiftState.SIMPLE.getStringValue())).list().getEntities(); }
private List<Entity> getNotCorrectedStaffAssignmentToShifts(final Entity assignmentToShift) { return assignmentToShift .getHasManyField(AssignmentToShiftFields.STAFF_ASSIGNMENT_TO_SHIFTS) .find() .add(SearchRestrictions.ne(StaffAssignmentToShiftFields.STATE, StaffAssignmentToShiftState.CORRECTED.getStringValue())).list().getEntities(); }
private Entity getPrepareOrderDate(final Entity delivery) { return delivery.getHasManyField(DeliveryFields.STATE_CHANGES).find() .add(SearchRestrictions.eq(DeliveryStateChangeFields.TARGET_STATE, "02prepared")) .add(SearchRestrictions.eq(DeliveryStateChangeFields.STATUS, "03successful")).setMaxResults(1).uniqueResult(); }
private Entity getPrepareOrderDate(final Entity delivery) { return delivery.getHasManyField(DeliveryFields.STATE_CHANGES).find() .add(SearchRestrictions.eq(DeliveryStateChangeFields.TARGET_STATE, "02prepared")) .add(SearchRestrictions.eq(DeliveryStateChangeFields.STATUS, "03successful")).setMaxResults(1).uniqueResult(); }
private boolean checkIfProductIsProduced(final Entity order, final Entity product) { return (order .getHasManyField(OrderFieldsBPC.PRODUCTION_COUNTING_QUANTITIES) .find() .add(SearchRestrictions.belongsTo(ProductionCountingQuantityFields.PRODUCT, product)) .add(SearchRestrictions.eq(ProductionCountingQuantityFields.ROLE, ProductionCountingQuantityRole.PRODUCED.getStringValue())).list().getTotalNumberOfEntities() > 0); }
private boolean checkIfProductIsUsed(final Entity order, final Entity product) { return (order .getHasManyField(OrderFieldsBPC.PRODUCTION_COUNTING_QUANTITIES) .find() .add(SearchRestrictions.belongsTo(ProductionCountingQuantityFields.PRODUCT, product)) .add(SearchRestrictions.eq(ProductionCountingQuantityFields.ROLE, ProductionCountingQuantityRole.USED.getStringValue())).list().getTotalNumberOfEntities() > 0); }
public Entity getLastTechnologyStateChange(Entity technology) { return technology.getHasManyField(TechnologyFields.STATE_CHANGES).find() .add(SearchRestrictions.eq(TechnologyStateChangeFields.STATUS, StateChangeStatus.SUCCESSFUL.getStringValue())) .addOrder(SearchOrders.desc(TechnologyStateChangeFields.DATE_AND_TIME)).setMaxResults(1).uniqueResult(); }
@Override public List<Entity> getUsedMaterialsFromProductionCountingQuantities(final Entity order, final boolean onlyComponents) { SearchCriteriaBuilder scb = order.getHasManyField(OrderFieldsBPC.PRODUCTION_COUNTING_QUANTITIES).find() .add(SearchRestrictions.eq(ProductionCountingQuantityFields.ROLE, ProductionCountingQuantityRole.USED.getStringValue())); if (onlyComponents) { scb.add(SearchRestrictions.eq(ProductionCountingQuantityFields.TYPE_OF_MATERIAL, ProductionCountingQuantityTypeOfMaterial.COMPONENT.getStringValue())); } return scb.list().getEntities(); }
private boolean checkIfBasicProductionCountingIsEmpty(final Entity order) { SearchCriteriaBuilder searchBuilder = order.getHasManyField(OrderFieldsBPC.BASIC_PRODUCTION_COUNTINGS).find() .setProjection(SearchProjections.alias(SearchProjections.rowCount(), "count")).addOrder(asc("count")); return (Long) searchBuilder.setMaxResults(1).uniqueResult().getField("count") == 0; }
private List<Entity> getCoverageProductLoggingCovereges(final Entity coverageProduct, final Date farthestCoverageDate) { return coverageProduct .getHasManyField(CoverageProductFields.COVERAGE_PRODUCT_LOGGINGS) .find() .add(SearchRestrictions.eq(CoverageProductLoggingFields.EVENT_TYPE, CoverageProductLoggingEventType.DELIVERY.getStringValue())) .add(SearchRestrictions.gt(CoverageProductLoggingFields.DATE, farthestCoverageDate)) .addOrder(SearchOrders.asc(CoverageProductLoggingFields.DATE)).list().getEntities(); }
public void updateFarestLimitDate(final DataDefinition negotiationDD, final Entity negotiation) { if (negotiation.getId() != null) { Entity negotiationProduct = negotiation.getHasManyField(NEGOTIATION_PRODUCTS).find() .add(SearchRestrictions.belongsTo(NEGOTIATION, negotiation)).addOrder(SearchOrders.desc(DUE_DATE)) .setMaxResults(1).uniqueResult(); if (negotiationProduct != null) { Date farestLimitDate = (Date) negotiationProduct.getField(DUE_DATE); negotiation.setField(FARTHEST_LIMIT_DATE, farestLimitDate); } } }
private List<Entity> getCoverageProductLoggingDemands(final Entity coverageProduct, final Date farthestCoverageDate) { return coverageProduct .getHasManyField(CoverageProductFields.COVERAGE_PRODUCT_LOGGINGS) .find() .add(SearchRestrictions.or(SearchRestrictions.eq(CoverageProductLoggingFields.EVENT_TYPE, CoverageProductLoggingEventType.ORDER_INPUT.getStringValue()), SearchRestrictions.eq(CoverageProductLoggingFields.EVENT_TYPE, CoverageProductLoggingEventType.OPERATION_INPUT.getStringValue()))) .add(SearchRestrictions.gt(CoverageProductLoggingFields.DATE, farthestCoverageDate)) .addOrder(SearchOrders.asc(CoverageProductLoggingFields.DATE)).list().getEntities(); }
private Entity findProductionCountingQuantity(final Entity operationProductComponent, final Entity technology) { Entity order = technology.getHasManyField(TechnologyFieldsO.ORDERS).find().setMaxResults(1).uniqueResult(); Entity toc = operationProductComponent.getBelongsToField(OperationProductInComponentFields.OPERATION_COMPONENT); Entity product = operationProductComponent.getBelongsToField(OperationProductInComponentFields.PRODUCT); return dataDefinitionService .get(BasicProductionCountingConstants.PLUGIN_IDENTIFIER, BasicProductionCountingConstants.MODEL_PRODUCTION_COUNTING_QUANTITY).find() .add(SearchRestrictions.belongsTo(ProductionCountingQuantityFields.ORDER, order)) .add(SearchRestrictions.belongsTo(ProductionCountingQuantityFields.TECHNOLOGY_OPERATION_COMPONENT, toc)) .add(SearchRestrictions.belongsTo(ProductionCountingQuantityFields.PRODUCT, product)).setMaxResults(1) .uniqueResult(); }
public boolean checkIfUsedOrWastesQuantitiesWereNotFilled(final Entity productionTracking) { Entity order = productionTracking.getBelongsToField(ProductionTrackingFields.ORDER); final SearchCriteriaBuilder searchBuilder = productionTracking .getHasManyField(ProductionTrackingFields.TRACKING_OPERATION_PRODUCT_OUT_COMPONENTS).find() .add(SearchRestrictions.or(SearchRestrictions.isNotNull(TrackingOperationProductOutComponentFields.USED_QUANTITY), SearchRestrictions.isNotNull(TrackingOperationProductOutComponentFields.WASTES_QUANTITY))) .setProjection(SearchProjections.alias(SearchProjections.rowCount(), L_COUNT)).addOrder(asc(L_COUNT)); return (order.getBooleanField(OrderFieldsPC.REGISTER_QUANTITY_OUT_PRODUCT) && ((Long) searchBuilder.setMaxResults(1).uniqueResult().getField(L_COUNT) <= 0)); }