diff --git a/src/components/base/BaseNumberInput.vue b/src/components/base/BaseInputNumber.vue similarity index 84% rename from src/components/base/BaseNumberInput.vue rename to src/components/base/BaseInputNumber.vue index ac600fb..f477b5b 100644 --- a/src/components/base/BaseNumberInput.vue +++ b/src/components/base/BaseInputNumber.vue @@ -52,7 +52,7 @@ import { v_model } from "@/shared/mixins/v-model"; import BaseInputContainer from "@/components/base/BaseInputContainer.vue"; export default { - name: "BaseNumberInput", + name: "BaseInputNumber", components: { BaseInput, BaseInputContainer }, mixins: [v_model], data() { @@ -65,6 +65,15 @@ export default { type: Number, default: 1, }, + max: { + type: Number, + default: 1, + }, + min: { + type: Number, + default: 0, + }, + reverseValue: Boolean, multiple: Boolean, circle: Boolean, doc: Boolean, @@ -128,14 +137,26 @@ export default { }, methods: { increment() { - this.value = Number.parseFloat(Number(this.value) + this.step).toFixed( - this.rounding - ); + if (this.value < this.max) { + this.value = Number.parseFloat(Number(this.value) + this.step).toFixed( + this.rounding + ); + } else { + if (this.reverseValue) { + this.value = this.min; + } + } }, decrement() { - this.value = Number.parseFloat(this.value - this.step).toFixed( - this.rounding - ); + if (this.min < this.value) { + this.value = Number.parseFloat(this.value - this.step).toFixed( + this.rounding + ); + } else { + if (this.reverseValue) { + this.value = this.max; + } + } }, fastIncrement() { this.intervalId = setInterval(() => this.increment(), 100); diff --git a/src/pages/newMedicalCard/components/InitialInspectionProtocol/Forms/ThermometryForm.vue b/src/pages/newMedicalCard/components/InitialInspectionProtocol/Forms/ThermometryForm.vue index 1fa2335..5445c44 100644 --- a/src/pages/newMedicalCard/components/InitialInspectionProtocol/Forms/ThermometryForm.vue +++ b/src/pages/newMedicalCard/components/InitialInspectionProtocol/Forms/ThermometryForm.vue @@ -3,9 +3,12 @@ .thermometry-wrapper.grid.gap-x-20.gap-y-5 .flex.flex-col.gap-y-4.items-start(v-if="isEdit" v-for="(thermometry, key) in protocol[data.key]") span.font-semibold.text-smm {{ data.config.temperature[key].title }} - base-number-input.w-full( + base-input-number.w-full( v-model="thermometry.temperature", :step="1", + :min="1", + :max="100", + reverse-value label="Температура", outlined, shadow-text="º" @@ -52,12 +55,12 @@