Как правильно пересчитывать максимальное значение для каждого инпута? Например, у меня сумма значений всех инпутов не может быть больше 80 (сколько нужно доставить), инпутов может быть больше одного, при этом изначально максимальное значение стремится к 40 (максимальная загрузка авто). Соответственно, когда допустим из БД приходит два трипа на 40 и 20, я могу либо добавить еще один трип/инпут на 20 или ко второму прибавить 20, чтобы в сумме получилось 80 для всех инпутов. Но сейчас я не очень понимаю, как посчитать эти лимиты конкретно, неверно работает кейс else, где устанавливается значение this.vehicleMaxRoominess. Этот метод вызывается при изменении любого из инпутов и должен корректно просчитывать ограничения.
prepareTripLimits() {
let availableAmount = !!this.orderForm.order
? this.orderForm.order.amount - (this.orderForm.order.planned - this.currentPlanSavedAmount)
: 0,
vehicleRoominess = parseInt(this.orderForm.vehicle.roominess)
for (let i = 0; i < this.form.trips.length; i++) {
if (this.form.trips[i].status > TRIP_STATUS_LOADING) {
this.form.trips[i].limit = this.form.trips[i].plan_amount
} else {
this.form.trips[i].limit = availableAmount - vehicleRoominess >= 1
? vehicleRoominess
: this.vehicleMaxRoominess
}
availableAmount -= this.form.trips[i].plan_amount
}
},