Merge branch 'ASTRA-78' into 'master'

WIP Добавил форму Термометрии

See merge request andrusyakka/urban-couscous!362
This commit is contained in:
Aleksey Demin
2023-05-12 16:20:14 +00:00
4 changed files with 123 additions and 0 deletions

View File

@@ -25,6 +25,7 @@
:standout="standout" :standout="standout"
:accept="accept", :accept="accept",
:debounce="debounce", :debounce="debounce",
:shadow-text="shadowText"
hide-bottom-space hide-bottom-space
) )
template(v-slot:prepend, v-if="iconLeft") template(v-slot:prepend, v-if="iconLeft")
@@ -80,6 +81,7 @@ export default {
type: String, type: String,
default: "none", default: "none",
}, },
shadowText: String,
mask: String, mask: String,
debounce: [String, Number], debounce: [String, Number],
width: Number, width: Number,

View File

@@ -0,0 +1,113 @@
<template lang="pug">
medical-form-wrapper(:title="data.title")
.thermometry-wrapper.grid.gap-x-20.gap-y-5
.flex.flex-col.gap-y-4.items-start(v-if="isEdit" v-for="thermometry in configThermometry.temperature")
span.font-semibold.text-smm {{ thermometry.title }}
base-input.w-full(
v-model="dataThermometry[thermometry.name].temperature",
type="number"
label="Температура"
outlined
text-color="black"
shadow-text="º"
placeholder="0º"
)
.flex.flex-col.gap-y-2.w-full
base-input.w-full(
v-model="dataThermometry[thermometry.name].result",
label="Результат"
outlined
text-color="black"
placeholder="Введите диагноз..."
)
.results-wrapper.flex.flex-col.rounded.w-full.px-3.py-3
.result.flex.w-full.justify-between.items-center(v-for="result in configThermometry.results")
.flex.gap-x-4
q-radio(
v-model="dataThermometry[thermometry.name].result"
:val="result.value"
:label="result.value"
checked-icon="check_box"
unchecked-icon="check_box_outline_blank"
)
.alert-icon.flex.justify-center.items-center.rounded.w-6.h-6(v-if="result.alert")
q-icon(size="13" name="warning_amber")
</template>
<script>
import MedicalFormWrapper from "@/pages/newMedicalCard/components/MedicalFormWrapper.vue";
import BaseInput from "@/components/base/BaseInput.vue";
export default {
name: "ThermometryForm",
components: { MedicalFormWrapper, BaseInput },
props: {
data: Object,
},
data() {
return {
isEdit: true,
dataThermometry: {
cold: {
temperature: null,
result: "Реакция нормальная",
},
heat: {
temperature: 50,
result: "Повышенная чувствительность",
},
},
configThermometry: {
temperature: [
{
name: "cold",
title: "Реакция на холод",
},
{
name: "heat",
title: "Реакция на тепло",
},
],
results: [
{
value: "Нет реакции",
alert: true,
},
{
value: "Слабая реакция",
alert: true,
},
{
value: "Реакция нормальная",
alert: false,
},
{
value: "Повышенная чувствительность",
alert: true,
},
{
value: "Непереносимость",
alert: true,
},
],
},
};
},
};
</script>
<style lang="sass" scoped>
.thermometry-wrapper
grid-template-columns: repeat(2, 1fr),
grid-template-rows: 1fr
@media(max-width: 1176px)
grid-template-columns: 1fr
grid-template-rows: repeat(2, 1fr)
.results-wrapper
border: 1px solid var(--border-light-grey-color)
.alert-icon
background-color: var(--bg-light-grey)
color: var(--font-grey-color)
.result
border-bottom: 1px solid var(--bg-light-grey)
</style>

View File

@@ -46,6 +46,7 @@ import MedicalFormTag from "@/pages/newMedicalCard/components/InitialInspectionP
import DataForm from "@/pages/newMedicalCard/components/InitialInspectionProtocol/Forms/DataForm.vue"; import DataForm from "@/pages/newMedicalCard/components/InitialInspectionProtocol/Forms/DataForm.vue";
import BaseButton from "@/components/base/BaseButton.vue"; import BaseButton from "@/components/base/BaseButton.vue";
import IndexForm from "@/pages/newMedicalCard/components/InitialInspectionProtocol/Forms/IndexForm.vue"; import IndexForm from "@/pages/newMedicalCard/components/InitialInspectionProtocol/Forms/IndexForm.vue";
import ThermometryForm from "@/pages/newMedicalCard/components/InitialInspectionProtocol/Forms/ThermometryForm.vue";
import { protocolForms } from "@/pages/newMedicalCard/utils/medicalConfig.js"; import { protocolForms } from "@/pages/newMedicalCard/utils/medicalConfig.js";
export default { export default {
@@ -55,6 +56,7 @@ export default {
DataForm, DataForm,
BaseButton, BaseButton,
IndexForm, IndexForm,
ThermometryForm,
}, },
props: { inspection: Boolean, fillInspection: Boolean }, props: { inspection: Boolean, fillInspection: Boolean },
data() { data() {

View File

@@ -634,4 +634,10 @@ export const protocolForms = [
key: "data", key: "data",
state: "data", state: "data",
}, },
{
title: "Термометрия (по показаниям)",
component: "ThermometryForm",
key: "thermometry",
state: "thermometry",
},
]; ];