Browse Source

20250307

master
nicky 4 months ago
parent
commit
1c94ad4806
  1. 105
      src/App.vue
  2. 19
      src/router/index.js
  3. 1
      src/views/Patient/components/patient-list.vue
  4. 6
      src/views/Patient/index.vue
  5. 194
      src/views/before/Emergency.vue
  6. 7
      src/views/thrombolysis/components/throm-ing.vue
  7. 168
      src/views/thrombolysis/components/throm-result-firstInfo.vue
  8. 34
      src/views/thrombolysis/index.vue

105
src/App.vue

@ -23,14 +23,14 @@
<Count /> <Count />
</Dragger> </Dragger>
<!-- 测评提示信息弹窗 --> <!-- 测评提示信息弹窗 -->
<a-modal class="patient-create patient-form" :width="518" :maskClosable="false" :closable="false" <a-modal class="" :width="350" :maskClosable="false" :closable="false"
:destroyOnClose="true" v-model="tip.visible" title="提示" @ok="tipConfirm" okText="去测评" cancelText="忽略"> :destroyOnClose="true" v-model="tip.visible" title="提示" @ok="tipConfirm" okText="去测评" cancelText="忽略">
<div class="modal-content"> <div class="modal-content">
{{ tip.content }} {{ tip.content }}
</div> </div>
</a-modal> </a-modal>
<!-- --> <!-- -->
<a-modal class="patient-create patient-form" :width="518" :maskClosable="false" :closable="false" <a-modal class="patient-create patient-form" :width="350" :maskClosable="false" :closable="false"
:destroyOnClose="true" v-model="tip.Lnspect" title="提示" @ok="LnspectConfirm" @cancel="LnspectCancel" :destroyOnClose="true" v-model="tip.Lnspect" title="提示" @ok="LnspectConfirm" @cancel="LnspectCancel"
okText="查看" cancelText="忽略"> okText="查看" cancelText="忽略">
<div class="modal-content">检验结果已完成, 请前往查看</div> <div class="modal-content">检验结果已完成, 请前往查看</div>
@ -176,9 +176,14 @@
tipConfirm() { tipConfirm() {
this.tip.visible = false; this.tip.visible = false;
const name = this.pushRouter[this.tip.k]; const name = this.pushRouter[this.tip.k];
// console.log('name: ', name); console.log('name: ', name);
this.$router.push({ this.$router.push({
name, name: 'Thrombolysis',
query: {
cu: 2,
ch: this.tip.k,
r: new Date().getTime()
}
}); });
}, },
// //
@ -226,17 +231,20 @@
}; };
} }
if (map[k] && this.taskList.status === false) { if (map[k] && this.taskList.status === false) {
let idx = 0;
if(map[k].startsWith('15min')) idx = 2
else if(map[k].startsWith('30min')) idx = 3
else if(map[k].startsWith('45min')) idx = 4
else if(map[k].startsWith('60min')) idx = 5
// //
if (this.taskList.text === map[k]) { if (this.taskList.text === map[k]) {
this.taskList.status = true; this.taskList.status = true;
} }
if (
this.$route.name !== 'Min' && if (this.$route.query?.ch != idx) {
this.$route.name !== 'PatientList'
) {
this.tip = { this.tip = {
visible: true, visible: true,
k, k: idx,
content: map[k], content: map[k],
}; };
} }
@ -288,43 +296,61 @@
height: 100%; height: 100%;
position: relative; position: relative;
user-select: none; user-select: none;
::-webkit-scrollbar { ::-webkit-scrollbar {
display: none; display: none;
} }
} }
// .count-container { .count-container {
// width: 200px; width: 200px;
// background: rgba(255, 255, 255, 0.1); background: rgba(255, 255, 255, 1);
// border: 1px solid #ffffff; border: 1px solid #ffffff;
// box-shadow: 0px 6px 10px 0px rgba(0, 59, 172, 0.2); box-shadow: 0px 6px 10px 0px rgba(0, 59, 172, 0.2);
// border-radius: 4px; border-radius: 4px;
// overflow: hidden; overflow: hidden;
// backdrop-filter: blur(4px); backdrop-filter: blur(4px);
// text-align: center; text-align: center;
// display: flex; display: flex;
// flex-direction: column; flex-direction: column;
// align-items: center; align-items: center;
// padding: 16px 0; padding: 16px 0;
// z-index: 999; z-index: 999;
// .count-name { .count-name {
// font-size: 26px; font-size: 26px;
// font-family: Source Han Sans CN, Source Han Sans CN-Bold; font-family: Source Han Sans CN, Source Han Sans CN-Bold;
// font-weight: 700; font-weight: 700;
// color: #393d4e; color: #393d4e;
// line-height: 26px; line-height: 26px;
// padding-bottom: 7px; padding-bottom: 7px;
// } }
// .van-count-down { .van-count-down {
// font-size: 44px; font-size: 44px;
// font-family: Source Han Sans CN, Source Han Sans CN-Bold; font-family: Source Han Sans CN, Source Han Sans CN-Bold;
// font-weight: 700; font-weight: 700;
// color: #393d4e; color: #393d4e;
// line-height: 44px; line-height: 44px;
// } }
// } }
.patient-form{
text-align:center;
}
.ant-modal-content .ant-modal-footer{
text-align:center;
border-top:none;
}
.ant-modal-content .ant-modal-header{
background: #007AFF;
}
.patient-form .ant-modal-content .ant-modal-header{
background: #007AFF;
padding-top: 0;
}
.ant-modal-content .ant-modal-title{
color: #fff;
}
</style> </style>
<style lang="stylus"> <style lang="stylus">
// @import './assets/portrait.styl'; // @import './assets/portrait.styl';
@ -373,4 +399,5 @@
} }
} }
} }
</style> </style>

19
src/router/index.js

@ -47,15 +47,16 @@ const routes = [{
}, },
component: () => import( /* 档案 */ 'views/statistics/index.vue'), component: () => import( /* 档案 */ 'views/statistics/index.vue'),
}, },
// { {
// path: '/doc-report', path: '/min',
// name: 'DocReport', name: 'Min',
// meta: { meta: {
// back: true, back: true,
// nav: true nav: true
// }, },
// component: () => import( /* 档案 */ 'views/document/report.vue'), component: () => import( /* min */ 'views/before/Emergency.vue'),
// }
}
] ]
}, },
{ {

1
src/views/Patient/components/patient-list.vue

@ -155,6 +155,7 @@
}, },
// //
checkPaitent(item, index) { checkPaitent(item, index) {
if(!item) return
const { const {
address, address,
birthday, birthday,

6
src/views/Patient/index.vue

@ -11,7 +11,7 @@
<div class="patient-list-item"> <div class="patient-list-item">
<div class="search-box"> <div class="search-box">
<a-input placeholder="姓名 (支持拼音、首拼、关键字)" style="width: 100%" size="large" v-model="searchVal" <a-input placeholder="姓名 (支持拼音、首拼、关键字)" style="width: 100%" size="large" v-model="searchVal"
@pressEnter="onSearch" allowClear> @pressEnter="onSearch" allowClear @change="handleSearchChange">
<a-icon slot="prefix" type="search" @click="onSearch" /> <a-icon slot="prefix" type="search" @click="onSearch" />
</a-input> </a-input>
</div> </div>
@ -228,6 +228,10 @@
'setVideo', 'setVideo',
'setBook', 'setBook',
]), ]),
handleSearchChange(e){
console.log(e.data)
if(!e.data) this.onSearch()
},
// //
onSearch(data) { onSearch(data) {
this.$refs.patientList.getData(1, this.searchVal, 'search') this.$refs.patientList.getData(1, this.searchVal, 'search')

194
src/views/before/Emergency.vue

@ -8,14 +8,10 @@
<template> <template>
<div class="Emergency-container"> <div class="Emergency-container">
<a-form class="patient-form medical-form" :form="form"> <a-form class="patient-form medical-form" :form="form">
<a-form-item <a-form-item class="jmrs-form-item pt" v-for="(k, v) in recordDict" :key="v">
class="jmrs-form-item pt"
v-for="(k, v) in recordDict"
:key="v"
>
<div class="jmrs-form-item-con" :class="k.type"> <div class="jmrs-form-item-con" :class="k.type">
<div class="content-left ant-form-item-label"> <div class="content-left ant-form-item-label">
<label :for="`${v}`"> <label :for="`${v}`" v-if="k.text">
{{ `${k.text}` }} {{ `${k.text}` }}
<span class="label-info" v-if="k.description"> <span class="label-info" v-if="k.description">
{{ k.description }} {{ k.description }}
@ -26,81 +22,34 @@
{{ `${k}` }} {{ `${k}` }}
</div> </div>
</template> </template>
<a-icon <a-icon v-if="k.labelList" class="item-icon" type="question-circle" />
v-if="k.labelList"
class="item-icon"
type="question-circle"
/>
</a-tooltip> </a-tooltip>
</label> </label>
</div> </div>
<div class="content-right"> <div class="content-right">
<!-- slider --> <!-- slider -->
<div class="common-slider" v-if="k.type === 'slider'"> <div class="common-slider" v-if="k.type === 'slider'">
<van-stepper <van-stepper :disabled="writeAble" :integer="true" v-model="k.value" step="10" class="ten"
:disabled="writeAble" theme="round" />
:integer="true" <van-stepper :disabled="writeAble" :integer="true" v-model="k.value" step="5" class="five"
v-model="k.value" theme="round" />
step="10" <van-stepper :disabled="writeAble" :integer="true" v-model="k.value" step="1" class="one"
class="ten" theme="round" />
theme="round" <van-slider :disabled="writeAble" class="common-slider-slider" :min="0" :max="300" step="10"
/> v-model="k.value" active-color="#e4edff">
<van-stepper
:disabled="writeAble"
:integer="true"
v-model="k.value"
step="5"
class="five"
theme="round"
/>
<van-stepper
:disabled="writeAble"
:integer="true"
v-model="k.value"
step="1"
class="one"
theme="round"
/>
<van-slider
:disabled="writeAble"
class="common-slider-slider"
:min="0"
:max="300"
step="10"
v-model="k.value"
active-color="#e4edff"
>
<template #button> <template #button>
<a-input-number <a-input-number :disabled="writeAble" type="number" id="inputNumber"
:disabled="writeAble" v-model="k.value" :min="0" :max="300" />
type="number" <a-icon class="slider-icon" type="caret-down" />
id="inputNumber"
v-model="k.value"
:min="0"
:max="300"
/>
<a-icon
class="slider-icon"
type="caret-down"
/>
</template> </template>
</van-slider> </van-slider>
</div> </div>
<!-- radio --> <!-- radio -->
<a-radio-group <a-radio-group :disabled="writeAble" size="large" v-if="k.type === 'radio'"
:disabled="writeAble" v-decorator="[v, { initialValue: k.default }]" button-style="solid"
size="large" @change="changeRadio($event, v)">
v-if="k.type === 'radio'" <a-radio-button :disabled="writeAble" v-for="(item, index) in k.range" :key="item"
v-decorator="[v, { initialValue: k.default }]" :value="item">
button-style="solid"
@change="changeRadio($event, v)"
>
<a-radio-button
:disabled="writeAble"
v-for="(item, index) in k.range"
:key="item"
:value="item"
>
{{ item }} {{ item }}
</a-radio-button> </a-radio-button>
</a-radio-group> </a-radio-group>
@ -109,19 +58,10 @@
<div class="item-name"> <div class="item-name">
<span class="item-info">得分</span> <span class="item-info">得分</span>
</div> </div>
<a-input-number <a-input-number :type="k.inputType" :min="0" :max="100"
:type="k.inputType" style="width: 20%; margin-left: 20px" v-decorator="[v]" />
:min="0"
:max="100"
style="width: 20%; margin-left: 20px"
v-decorator="[v]"
/>
</div> </div>
<div <div class="niss-list-item" v-for="(item, index) in k.range" :key="item.text">
class="niss-list-item"
v-for="(item, index) in k.range"
:key="item.text"
>
<div class="item-name"> <div class="item-name">
<span class="item-info">{{ <span class="item-info">{{
item.text item.text
@ -130,47 +70,23 @@
<template slot="title"> <template slot="title">
{{ item.description }} {{ item.description }}
</template> </template>
<a-icon <a-icon v-if="item.description" class="item-icon" type="question-circle" />
v-if="item.description"
class="item-icon"
type="question-circle"
/>
</a-tooltip> </a-tooltip>
</div> </div>
<a-popover <a-popover v-model="item.visible" placement="bottom">
v-model="item.visible"
placement="bottom"
>
<template slot="content" v-if="item.range"> <template slot="content" v-if="item.range">
<a-radio-group <a-radio-group :disabled="writeAble" v-model="nissValue" button-style="solid"
:disabled="writeAble" @change="changeRangeRadio(item, v)">
v-model="nissValue" <a-radio-button v-for="(
button-style="solid"
@change="changeRangeRadio(item, v)"
>
<a-radio-button
v-for="(
val, index val, index
) in item.range" ) in item.range" :key="val.value" :value="val.value" @click="item.visible = false">
:key="val.value"
:value="val.value"
@click="item.visible = false"
>
{{ val.value }} {{ val.value }}
</a-radio-button> </a-radio-button>
</a-radio-group> </a-radio-group>
</template> </template>
<a-input-number <a-input-number :disabled="writeAble" ref="inputNumber" class="noControls"
:disabled="writeAble" @focus="focusInput(index)" @click="changeInput($event, item)"
ref="inputNumber" style="width: 20%; margin-left: 20px" v-model="item.value" :min="0" :max="10" />
class="noControls"
@focus="focusInput(index)"
@click="changeInput($event, item)"
style="width: 20%; margin-left: 20px"
v-model="item.value"
:min="0"
:max="10"
/>
</a-popover> </a-popover>
</div> </div>
</div> </div>
@ -178,20 +94,16 @@
</div> </div>
</a-form-item> </a-form-item>
</a-form> </a-form>
<a-button <a-button :disabled="writeAble" class="common-button" type="primary" size="large" shape="round"
:disabled="writeAble" @click="onSubmit">保存</a-button>
class="common-button"
type="primary"
size="large"
shape="round"
@click="onSubmit"
>保存</a-button
>
</div> </div>
</template> </template>
<script> <script>
import { mapMutations, mapState } from 'vuex'; import {
mapMutations,
mapState
} from 'vuex';
import { import {
EMERGENCY_CODE, EMERGENCY_CODE,
EMERGENCY_Q_CODE, EMERGENCY_Q_CODE,
@ -261,14 +173,18 @@ export default {
beforeRouteEnter(to, from, next) { beforeRouteEnter(to, from, next) {
next((vm) => { next((vm) => {
//TODU //TODU
const { code } = vm.timerData; const {
code
} = vm.timerData;
if (code) { if (code) {
vm.recordDict = vm.dataForm[`${code}`]; vm.recordDict = vm.dataForm[`${code}`];
} }
if (to.name === 'Emergency') { if (to.name === 'Emergency') {
vm.recordDict = EMERGENCY_CODE; vm.recordDict = EMERGENCY_CODE;
} }
const { recordValDict } = vm.patientData; const {
recordValDict
} = vm.patientData;
if (recordValDict) { if (recordValDict) {
vm.$nextTick(() => { vm.$nextTick(() => {
vm.echo(recordValDict); vm.echo(recordValDict);
@ -279,13 +195,17 @@ export default {
methods: { methods: {
...mapMutations('patient', ['setPatientData']), ...mapMutations('patient', ['setPatientData']),
echo(data) { echo(data) {
const { code } = this.timerData; const {
const wangbadan = code code
? this.codeFormData[`${code}`] } = this.timerData;
: this.codeForm; const wangbadan = code ?
this.codeFormData[`${code}`] :
this.codeForm;
for (let k in wangbadan) { for (let k in wangbadan) {
if (data[k]) { if (data[k]) {
const { answer } = data[k][0]; const {
answer
} = data[k][0];
this.form.getFieldDecorator([`${k}`], { this.form.getFieldDecorator([`${k}`], {
preserve: true, //便使 preserve: true, //便使
}); });
@ -338,9 +258,13 @@ export default {
e.preventDefault(); e.preventDefault();
this.form.validateFields(async (err, values) => { this.form.validateFields(async (err, values) => {
// if (err) return // if (err) return
const { firstAidId } = this.patientData; const {
firstAidId
} = this.patientData;
let codeAndAnswerList = []; let codeAndAnswerList = [];
const { recordDict } = this; const {
recordDict
} = this;
const codes = [ const codes = [
'RYPG-MRS', 'RYPG-MRS',
'RYPG-NIHSS', 'RYPG-NIHSS',
@ -417,6 +341,8 @@ export default {
flex: 1; flex: 1;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
background-color: #fff;
padding: 12px;
.noControls { .noControls {
/deep/ .ant-input-number-handler-wrap { /deep/ .ant-input-number-handler-wrap {

7
src/views/thrombolysis/components/throm-ing.vue

@ -61,6 +61,7 @@
ThromIngRecord, ThromIngRecord,
ThromIngDate ThromIngDate
}, },
props: ['tabIndex'],
data() { data() {
return { return {
currentIndex: 0, currentIndex: 0,
@ -80,18 +81,18 @@
} }
} }
}, },
mounted() { mounted() {
}, },
created() { created() {
console.log('patientData', this.patientData) if(this.tabIndex) this.currentIndex = this.tabIndex
// console.log('patientData', this.patientData)
// console.log('book', this.book) // console.log('book', this.book)
}, },
methods: { methods: {
...mapMutations('patient', ['setTimerData']), ...mapMutations('patient', ['setTimerData']),
handleClickStep(current) { handleClickStep(current) {
console.log(this.timerData) // console.log(this.timerData)
let code = null let code = null
if (current == 1) code = 'JMRS-Q-NIHSS' if (current == 1) code = 'JMRS-Q-NIHSS'
else if (current == 2) code = 'JMRS-15-NIHSS' else if (current == 2) code = 'JMRS-15-NIHSS'

168
src/views/thrombolysis/components/throm-result-firstInfo.vue

@ -177,8 +177,8 @@
<div class="basicr-back"> <div class="basicr-back">
<v-head text="血管内治疗"></v-head> <v-head text="血管内治疗"></v-head>
<a-form class="detail-form treatmentItem" :form="firstForm"> <a-form class="detail-form treatmentItem" :form="firstForm">
<a-form-item class="jmrs-form-item" :class="{'jmrs-form-item-autoH': k.type == 'checkbox'}" v-for="(k, v) in XGZL_CODE" :key="v" <a-form-item class="jmrs-form-item" :class="{'jmrs-form-item-autoH': k.type == 'checkbox'}"
v-if="computeShow(v, codeForm)"> v-for="(k, v) in XGZL_CODE" :key="v" v-if="computeShow(v, codeForm)">
<div class="jmrs-form-item-con" :class="k.type"> <div class="jmrs-form-item-con" :class="k.type">
<div class="content-left ant-form-item-label"> <div class="content-left ant-form-item-label">
<label :for="`FirstInfo_${v}`" v-if="k.text"> <label :for="`FirstInfo_${v}`" v-if="k.text">
@ -191,8 +191,8 @@
<a-input :disabled="writeAble" v-if="k.type === 'text'" type="text" v-decorator="[v]" <a-input :disabled="writeAble" v-if="k.type === 'text'" type="text" v-decorator="[v]"
readOnly /> readOnly />
<!-- radio --> <!-- radio -->
<a-radio-group class="radioGroupItem" :disabled="writeAble" v-if="k.type === 'radio'" v-decorator="[v]" <a-radio-group class="radioGroupItem" :disabled="writeAble" v-if="k.type === 'radio'"
@change=" v-decorator="[v]" @change="
handleChange($event.target.value, v) handleChange($event.target.value, v)
"> ">
<a-radio v-for="(item, index) in k.range" :key="item" :value="item"> <a-radio v-for="(item, index) in k.range" :key="item" :value="item">
@ -252,7 +252,8 @@
idcardInfo, idcardInfo,
queryAidRecord, queryAidRecord,
updateFirstAid, updateFirstAid,
saveAidRecord saveAidRecord,
messageQuery
} from 'api'; } from 'api';
import { import {
mapMutations, mapMutations,
@ -340,6 +341,7 @@
'XGZL-BFZ': '', 'XGZL-BFZ': '',
'XGZL-BFZ-ELSE': '', 'XGZL-BFZ-ELSE': '',
}, },
request: 0,
selectCode: '', // code selectCode: '', // code
form: {} form: {}
}; };
@ -379,7 +381,7 @@
}, },
methods: { methods: {
...mapMutations('patient', ['setPatientData']), ...mapMutations('patient', ['setPatientData', 'setTimerData', 'setOverviewType']),
successInformed() { successInformed() {
this.modalVisable = false; this.modalVisable = false;
}, },
@ -519,7 +521,9 @@
this.firstForm.validateFields(async (err, values) => { this.firstForm.validateFields(async (err, values) => {
let codeAndAnswerList = [], let codeAndAnswerList = [],
params = {}; params = {};
const { firstAidId } = this.form const {
firstAidId
} = this.form
console.log('firstinfo handleSubmit', firstAidId) console.log('firstinfo handleSubmit', firstAidId)
let adverseSubmit = this.$refs.adverse; let adverseSubmit = this.$refs.adverse;
if (adverseSubmit) { if (adverseSubmit) {
@ -558,7 +562,29 @@
if (finishStatus === 1) { if (finishStatus === 1) {
// console.log('firstinfo', firstAidId) // console.log('firstinfo', firstAidId)
this.$emit('next', {firstAidId}) this.$emit('next', {
firstAidId
})
} else {
this.$router.push({
name: 'Thrombolysis',
query: {
r: new Date().getTime()
}
});
// this.setOverviewType('overview')
// this.queryMessage();
// await this.handMessageQuery();
// this.request = 0;
// this.utils.AnimationFrame.create(
// 'timerTask',
// 10000,
// true,
// (min) => {
// this.getMessageQuery(min);
// }
// );
} }
} else { } else {
const res = await saveAidRecord({ const res = await saveAidRecord({
@ -599,6 +625,97 @@
false false
); );
}, },
async queryMessage() {
const {
firstAidId
} = this.patientData;
const res = await messageQuery(firstAidId);
const {
code,
msg
} = res;
if (code === 200) {
this.setTimerData(res.data);
}
},
//
async handMessageQuery() {
//
const {
firstAidId
} = this.patientData;
if (firstAidId) {
const res = await messageQuery(firstAidId);
const {
code,
msg
} = res;
if (code === 200) {
this.setTimerData(res.data);
const {
map,
haveFlagInspect,
finishStatus,
} = res.data;
// console.log('firstAidInspectDataDtos: ', haveFlagInspect);
// if(finishStatus == 1){
// this.setTimerData({})
// this.request = 0
// this.setPatientData({})
// this.setPatientDataCur({})
// }
for (let k in map) {
if (map[k]) {
this.taskList = {
text: map[k],
status: false,
};
}
if (map[k] && this.taskList.status === false) {
//
if (this.taskList.text === map[k]) {
this.taskList.status = true;
}
if (
this.$route.name !== 'Min' &&
this.$route.name !== 'PatientList'
) {
this.tip = {
visible: true,
k,
content: map[k],
};
}
}
}
// 1 , 0 Thrombolysis
if (haveFlagInspect) {
if (
this.$route.name !== 'Inspect' &&
this.$route.name !== 'PatientList'
) {
this.tip.Lnspect = true;
}
}
} else {
this.$message.error(msg);
}
}
},
async getMessageQuery(min, firstAidId) {
const n = min;
if (this.request === n) {
//
console.log('十秒');
this.request = n + 1;
await this.handMessageQuery();
}
},
}, },
}; };
</script> </script>
@ -627,6 +744,7 @@
.jmrs-form-item-con { .jmrs-form-item-con {
display: flex; display: flex;
.content-left, .content-left,
.content-right { .content-right {
flex: 1; flex: 1;
@ -644,54 +762,78 @@
.adverse { .adverse {
padding: 15px 0; padding: 15px 0;
} }
.basicr-back-info.basicr-back .ant-form-item { .basicr-back-info.basicr-back .ant-form-item {
height: 50px; height: 50px;
} }
.basicr-back .ant-form-item { .basicr-back .ant-form-item {
width: 48%; width: 48%;
float: left; float: left;
// height:60px; // height:60px;
} }
.basicr-back .ant-form-item:nth-child(odd) { .basicr-back .ant-form-item:nth-child(odd) {
border-right: 1px solid #ddd; border-right: 1px solid #ddd;
border-radius: 0; border-radius: 0;
padding-right: 2% !important; padding-right: 2% !important;
margin-right: 2% !important; margin-right: 2% !important;
} }
.basicrItem .ant-form-item:nth-child(9),.basicrItem .ant-form-item:nth-child(10),.basicrItem .ant-form-item:nth-child(11),.basicrItem .ant-form-item:nth-child(12),.basicrItem .ant-form-item:nth-child(13),.basicrItem .ant-form-item:nth-child(14),.basicrItem .ant-form-item:nth-child(15){
.basicrItem .ant-form-item:nth-child(9),
.basicrItem .ant-form-item:nth-child(10),
.basicrItem .ant-form-item:nth-child(11),
.basicrItem .ant-form-item:nth-child(12),
.basicrItem .ant-form-item:nth-child(13),
.basicrItem .ant-form-item:nth-child(14),
.basicrItem .ant-form-item:nth-child(15) {
width: 100%; width: 100%;
float: left; float: left;
border: none; border: none;
padding-right: 0 !important; padding-right: 0 !important;
margin-right: 0 !important; margin-right: 0 !important;
} }
.treatmentItem .ant-form-item:nth-child(9),.treatmentItem .ant-form-item:nth-child(10),.treatmentItem .ant-form-item:nth-child(11),.treatmentItem .ant-form-item:nth-child(12){
.treatmentItem .ant-form-item:nth-child(9),
.treatmentItem .ant-form-item:nth-child(10),
.treatmentItem .ant-form-item:nth-child(11),
.treatmentItem .ant-form-item:nth-child(12) {
width: 100%; width: 100%;
float: left; float: left;
border: none; border: none;
} }
.treatmentItem .ant-form-item:nth-child(10),.treatmentItem .ant-form-item:nth-child(11),.treatmentItem .ant-form-item:nth-child(12),.basicrItem .ant-form-item:nth-child(9),.basicrItem .ant-form-item:nth-child(10),.basicrItem .ant-form-item:nth-child(11),
.basicrItem .ant-form-item:nth-child(12),.basicrItem .ant-form-item:nth-child(13){ .treatmentItem .ant-form-item:nth-child(10),
.treatmentItem .ant-form-item:nth-child(11),
.treatmentItem .ant-form-item:nth-child(12),
.basicrItem .ant-form-item:nth-child(9),
.basicrItem .ant-form-item:nth-child(10),
.basicrItem .ant-form-item:nth-child(11),
.basicrItem .ant-form-item:nth-child(12),
.basicrItem .ant-form-item:nth-child(13) {
// height:150px !important; // height:150px !important;
height: auto !important; height: auto !important;
} }
.basicr-back .ant-form-item .ant-form-item-label { .basicr-back .ant-form-item .ant-form-item-label {
// width: 100px !important; // width: 100px !important;
} }
.treatmentItem .ant-form-item:nth-child(9).ant-form-item .ant-form-item-label { .treatmentItem .ant-form-item:nth-child(9).ant-form-item .ant-form-item-label {
// width: 100px !important; // width: 100px !important;
flex: none; flex: none;
margin-right: 20px; margin-right: 20px;
} }
.radioGroupItem:nth-of-type(2) { .radioGroupItem:nth-of-type(2) {
position: relative; position: relative;
left: -180px; left: -180px;
} }
.basicrItem .ant-checkbox-group .ant-checkbox-wrapper { .basicrItem .ant-checkbox-group .ant-checkbox-wrapper {
width: 25% !important; width: 25% !important;
} }
</style> </style>
<style scoped> <style scoped>
>>>.adverse .ant-form-item:nth-child(2) { >>>.adverse .ant-form-item:nth-child(2) {

34
src/views/thrombolysis/index.vue

@ -31,7 +31,7 @@
<throm-before v-if="current == 1" @next="handleNext"></throm-before> <throm-before v-if="current == 1" @next="handleNext"></throm-before>
<template v-if="isrs && !isjr"> <template v-if="isrs && !isjr">
<throm-ing v-if="current == 2" @next="handleNext"></throm-ing> <throm-ing v-if="current == 2" :tabIndex="childIndex" @next="handleNext"></throm-ing>
<throm-result v-if="current == 3" @next="handleNext"></throm-result> <throm-result v-if="current == 3" @next="handleNext"></throm-result>
<throm-report v-else-if="current == 4" @next="handleNext" :firstAidId="firstAidId"></throm-report> <throm-report v-else-if="current == 4" @next="handleNext" :firstAidId="firstAidId"></throm-report>
</template> </template>
@ -45,13 +45,11 @@
<throm-report v-else-if="current == 3" @next="handleNext" :firstAidId="firstAidId"></throm-report> <throm-report v-else-if="current == 3" @next="handleNext" :firstAidId="firstAidId"></throm-report>
</template> </template>
<template v-else> <template v-else>
<throm-ing v-if="current == 2" @next="handleNext"></throm-ing> <throm-ing v-if="current == 2" :tabIndex="childIndex" @next="handleNext"></throm-ing>
<throm-interfere v-else-if="current == 3" @next="handleNext"></throm-interfere> <throm-interfere v-else-if="current == 3" @next="handleNext"></throm-interfere>
<throm-result v-else-if="current == 4" @next="handleNext"></throm-result> <throm-result v-else-if="current == 4" @next="handleNext"></throm-result>
<throm-report v-else-if="current == 5" @next="handleNext" :firstAidId="firstAidId"></throm-report> <throm-report v-else-if="current == 5" @next="handleNext" :firstAidId="firstAidId"></throm-report>
</template> </template>
</div> </div>
</div> </div>
</template> </template>
@ -87,6 +85,7 @@
data() { data() {
return { return {
current: 1, current: 1,
childIndex: 0,
stepStyle: { stepStyle: {
marginBottom: '60px', marginBottom: '60px',
boxShadow: '0px -1px 0 0 #e8e8e8 inset', boxShadow: '0px -1px 0 0 #e8e8e8 inset',
@ -94,6 +93,33 @@
firstAidId: '' firstAidId: ''
} }
}, },
watch: {
$route: {
deep: true,
handler(to, o) {
const cuIndex = to.query?.cu
const chIndex = to.query?.ch
if(!!cuIndex && !isNaN(cuIndex) && !isNaN(Number(cuIndex))){
this.current = Number(to.query.cu)
}
if(!!chIndex && !isNaN(chIndex) && !isNaN(Number(chIndex))){
this.childIndex = Number(to.query.ch)
}
},
},
},
beforeRouteEnter(to, from, next) {
next((vm) => {
const cuIndex = to.query?.cu
const chIndex = to.query?.ch
if(!!cuIndex && !isNaN(cuIndex) && !isNaN(Number(cuIndex))){
vm.current = Number(to.query.cu)
}
if(!!chIndex && !isNaN(chIndex) && !isNaN(Number(chIndex))){
vm.childIndex = Number(to.query.ch)
}
});
},
methods: { methods: {
handleNext(data) { handleNext(data) {
this.firstAidId = data?.firstAidId this.firstAidId = data?.firstAidId

Loading…
Cancel
Save