let editStamp = undefined; function viewExtraFieldStamp(extraFields) { let uiFields = $('#page5 .extraField'); uiFields.find('input').off('keypress'); uiFields.find('input').off('change'); uiFields.find('.fieldRow').remove() for (let key in extraFields) { let field = EXTRA_FIELDS_REF[key]; let value = extraFields[key]; let description = field ? field.description : key; let uiField = $($.parseHTML(`
${description}
`)) uiField.find('input').val(value); uiFields.append(uiField) uiFields.removeClass('hide') } uiFields.find('input').on('keypress', onChangeStampExtraFields); uiFields.find('input').on('change', onChangeStampExtraFields); uiFields.find('input[name^="CODE_33"]').numpad(); uiFields.find('input[name^="CODE_31"]').numpad(); sendCheckLineStatusAjax(); } function getWeightToView(weight) { if (weight.length === 7) { let nn = Number(weight.substring(0, 1)); let str = Number(weight.substring(1)); if (nn !== 0) { str = str/10**nn; return str; } else { return str; } } return weight; } function getWeightToValue(weight) { let nn = weight.indexOf("."); if (nn !== -1) { nn = weight.length - nn - 1; } else { nn = 0 } let str = weight.replace(".",""); str = ('000000' + str).slice(-6); str = nn + str; return str; } function onChangeStampExtraFields(element) { $("#btnFixStamps").prop("disabled", false); changeExtraFieldStamp = true; } function getStampExtraFieldsUI() { let listFields = $('#page5 .extraField input'); let obj = {}; $.each(listFields, function(indx, el){ obj[el.name] ? obj[el.name].value(el.value) : (obj[el.name] = el.value); }); return obj; } function sendPatchStampAjax() { let extraFieldsUI = getStampExtraFieldsUI(); let stamp = { uuid: checkStampsResult.stampUuid, code: checkStampsResult.stampCode, extraFields: extraFieldsUI } $("#resultCheckStamps").text("Сохранение дополнительных полей..."); $.ajax({ type: 'PATCH', dataType: 'json', contentType: 'application/json', data: JSON.stringify(stamp), url: '/manage/uuid/stamp/' + stamp.uuid + '/fields' }) .done((data, textStatus, jqXHR) => { $("#btnFixStamps").prop("disabled", true); $("#resultCheckStamps").addClass("good"); $("#resultCheckStamps").text("Дополнительные поля сохранены"); }) .fail((jqXHR, textStatus, errorThrown) => { console.log("ERROR : ", jqXHR.responseText); $("#resultCheckStamps").addClass("bad"); $("#resultCheckStamps").text("Ошибка " + jqXHR.responseText); }) }