<script>
async function returnPaid(id, what_do){
------------------- начало фигни
if (what_do == 'delete'){
if (!confirm('Вы действительно хотите удалить запись?')){
return;
};
}
if (what_do == 'undone'){
if (!confirm('Вы действительно хотите отменить проведение?')){
return;
};
}
if (what_do == 'unpaid'){
if (!confirm('Вы действительно хотите отменить оплату?')){
return;
};
}
------------------- конец фигни
const body = JSON.stringify({
"id": id,
"do": what_do,
})
const response = await fetch('/api/v1/', {
method: "POST",
headers: {"X-CSRFToken": csrftoken, "Content-Type": "application/json", "Accept": "application/json"},
mode: "same-origin",
body: body
})
const data = await response.json();
if (data.status_code == 200){
------------------- начало фигни
if (what_do == 'paid' || what_do == 'unpaid'){
btnToggle(id, what_do, data.sum_paid);
} else if (what_do == 'done' & data.auto_paid) {
btnToggle(id, 'paid', data.sum_paid);
btnToggle(id, what_do);
} else {
btnToggle(id, what_do);
};
------------------- конец фигни
} else if (data.status_code == 400){
alert(data.message);
};
}
</script>
redirect(url_for('add_slab'))
, но в форме не выводится флш месадж через get_flashed_messages(), который сетится в обработчике - flash('Сляб добавлен к карте заказа', 'info')
Почему не подтягивает данные в форму
...
form=AddOrder()
form.client_id.choices = [(client.id, (client.first_name, client.last_name, client.phone_number)) for client in (db.session.query(Clients).all())]
...
equity_result1 = [ ... ] # твои данные - значения эквити во времени
# определяем индексы таких элементов, которые больше своих соседей слева и справа.
local_max_idx = [ i for i in range(1, len(equity_result1) - 1) if equity_result1[i-1] < equity_result1[i] and equity_result1[i+1] < equity_result1[i] ]
# определяем минимумы для интервалов, следующих за соотв. локальным максимумом
local_min = [ min(equity_result1[i+1:]) for i in local_max_idx ]
# определяем индексы этих минимумов в списке equity_result1
local_min_idx = [ i+1+equity_result1[i+1:].index(minval) for i, minval in zip(local_max_idx, local_min) ]
# собираем сведения о "перепадах" в один список пар индексов (максимум, минимум)
differences = list(zip(local_max_idx, local_min_idx))
# ищем наибольший "перепад" по критерию "разность между значением максимума и минимума"
i_max, i_min = max(differences, key = lambda item: equity_result1[item[0]] - equity_result1[item[1]])
# интересующий тебя интервал - между i_max и i_min включительно