Projekt

Obecné

Profil

« Předchozí | Další » 

Revize 25830576

Přidáno uživatelem Jan Čarnogurský před téměř 5 roky(ů)

re #8114 - added flag for delete (enum values)

Zobrazit rozdíly:

src/main/java/vldc/aswi/domain/parameter/ParameterValue.java
33 33
        this.setValue(value);
34 34
    }
35 35

  
36
    @Transient
37
    public int isDeleted = 0;
38

  
36 39
    /**
37 40
     * Equal method for comparing two objects.
38 41
     * @param obj - Comparing object.
src/main/java/vldc/aswi/service/parameter/ParameterManagerImpl.java
369 369
        Parameter parameter = this.parameterRepository.getById(parameterId);
370 370
        List<ParameterValue> currentParameterValues = parameter.getParameterValues();
371 371

  
372
        // remove marked elements
373
        for (int i = newParameterValues.size() - 1 ; i >= 0 ; i--)
374
        {
375
            if (newParameterValues.get(i).isDeleted == 1)
376
            {
377
                newParameterValues.remove(i);
378
            }
379
        }
380

  
372 381
        // Get new parameter values.
373 382
        List<ParameterValue> currentParameterValuesNew = new LinkedList<>(currentParameterValues);
374 383
        List<ParameterValue> newParameterValuesNew = new LinkedList<>(newParameterValues);
src/main/webapp/WEB-INF/templates/assembly_manage.html
111 111
                          <input type="hidden" class="enum-index" th:value="${i.index}">
112 112
                          <div th:each="parameterValue, j : *{parameters[__${i.index}__].parameterValues}" class="input-action-box input-border-bottom enum-row">
113 113
                            <input type="hidden" class="enum-parameter-index" th:value="${j.index}">
114
                            <input type="hidden" class="is-deleted" th:field="*{parameters[__${i.index}__].parameterValues[__${j.index}__].isDeleted}" th:value="*{parameters[__${i.index}__].parameterValues[__${j.index}__].isDeleted}">
114 115
                            <input type="text" readonly class="form-control-plaintext" th:field="*{parameters[__${i.index}__].parameterValues[__${j.index}__].value}" th:value="*{parameters[__${i.index}__].parameterValues[__${j.index}__].value}">
115 116

  
116 117
                            <span class="action-padding input-action-margin sort-icon">
src/main/webapp/js/assemblyManageScripts.js
152 152
    input.setAttribute('id', `parameters${enumIndex}.parameterValues${countIndex}.value`);
153 153
    input.setAttribute('name', `parameters[${enumIndex}].parameterValues[${countIndex}].value`);
154 154

  
155

  
155 156
    let inputIndex = document.createElement('input');
156 157
    inputIndex.type = 'hidden';
157 158
    inputIndex.classList.add('enum-parameter-index');
158 159
    inputIndex.setAttribute('value', countIndex);
159 160

  
161
    let isDeleted = document.createElement('input');
162
    isDeleted.type = 'hidden';
163
    isDeleted.classList.add('is-deleted');
164
    isDeleted.setAttribute('value', '0');
165
    isDeleted.setAttribute('name', `parameters[${enumIndex}].parameterValues[${countIndex}].isDeleted`);
166

  
160 167
    row.appendChild(input);
161 168
    row.appendChild(inputIndex);
169
    row.appendChild(isDeleted);
162 170

  
163 171
    let sortSpan = document.createElement('span');
164 172
    sortSpan.classList.add('action-padding', 'input-action-margin', 'sort-icon');
......
212 220
 * @param select
213 221
 */
214 222
function removeEnum(select) {
215
    $(select).closest(".enum-row").remove();
223
    var enumRow = $(select).closest(".enum-row");
224
    enumRow.addClass("hidden");
225
    enumRow.find('.is-deleted').val('1');
216 226
}
217 227

  
218 228
/**

Také k dispozici: Unified diff