private void updateIssueFromFieldsWithoutScreenCheck(FieldScreenRenderer fieldScreenRenderer, MutableIssue issue, Map<String, Object> fieldValuesHolder, IssueInputParameters issueInputParameters) { final boolean retainIssueValues = issueInputParameters.retainExistingValuesWhenParameterNotProvided(); final boolean onlyValidatePresentFields = issueInputParameters.onlyValidatePresentFieldsWhenRetainingExistingValues(); // JRADEV-9051: here, instead of iterating over FieldScreenRenderLayoutItems, we simply need to just iterate over all // OrderableFields (which includes CustomFields). Set<OrderableField> orderableFields = fieldManager.getOrderableFields(); for (OrderableField orderableField : orderableFields) { if (!canEditThisField(issue, orderableField)) { // if we couldn't edit it before, then we don't need to update it now continue; } if (retainIssueValues && !issueInputParameters.isFieldPresent(orderableField.getId()) && onlyValidatePresentFields) { // JRADEV-9671 - if we skipped the populate-validate step for this field before, then skip it now continue; } FieldLayoutItem fieldLayoutItem = getFieldLayoutItem(issue, orderableField, fieldScreenRenderer); orderableField.updateIssue(fieldLayoutItem, issue, fieldValuesHolder); } }
private void updateIssueFromFieldsWithScreenCheck(FieldScreenRenderer fieldScreenRenderer, MutableIssue issue, Map<String, Object> fieldValuesHolder, IssueInputParameters issueInputParameters) { final boolean retainIssueValues = issueInputParameters.retainExistingValuesWhenParameterNotProvided(); final boolean onlyValidatePresentFields = issueInputParameters.onlyValidatePresentFieldsWhenRetainingExistingValues(); for (final FieldScreenRenderTab fieldScreenRenderTab : fieldScreenRenderer.getFieldScreenRenderTabs()) { for (final FieldScreenRenderLayoutItem fieldScreenRenderLayoutItem : fieldScreenRenderTab.getFieldScreenRenderLayoutItemsForProcessing()) { if (fieldScreenRenderLayoutItem.isShow(issue)) { OrderableField orderableField = fieldScreenRenderLayoutItem.getOrderableField(); if (retainIssueValues && !issueInputParameters.isFieldPresent(orderableField.getId()) && onlyValidatePresentFields) { // JRADEV-9671 - if we skipped the populate-validate step for this field before, then skip it now continue; } orderableField.updateIssue(fieldScreenRenderLayoutItem.getFieldLayoutItem(), issue, fieldValuesHolder); } } } }
if (retainIssueValues && !issueInputParameters.isFieldPresent(orderableField.getId()))
if (retainIssueValues && !issueInputParameters.isFieldPresent(orderableField.getId()))
if (issueInputParameters.isFieldPresent(orderableField.getId()))