Browse Source

0310

master
领悟 4 months ago
parent
commit
4af9c28b2d
  1. 31
      public/index.html
  2. BIN
      public/logo.jpg
  3. 1
      public/uni.webview.1.5.4.js
  4. 10
      public/vconsole.js
  5. 36
      src/App.vue
  6. 8
      src/api/index.js
  7. 6
      src/config/axios.js
  8. 7
      src/config/setting.js
  9. 1
      src/store/modules/patient/mutations.js
  10. 119
      src/views/thrombolysis/components/throm-before4.vue
  11. 19
      src/views/thrombolysis/components/throm-interfere-informed.vue
  12. 6
      src/views/thrombolysis/components/throm-report.vue

31
public/index.html

@ -1,31 +0,0 @@
<!DOCTYPE html>
<html lang="">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport"
content="width=device-width, initial-scale=1.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0">
<link rel="icon" href="<%= BASE_URL %>logo.jpg">
<title>绿道质控</title>
<meta http-equiv="Pragma" content="no-cache">
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate">
<meta http-equiv="Expires" content="0">
</head>
<body>
<noscript>
<strong>We're sorry but <%= htmlWebpackPlugin.options.title %> doesn't work properly without JavaScript
enabled.
Please enable it to continue.</strong>
</noscript>
<div id="app"></div>
<!-- built files will be auto injected -->
<!-- <script type="text/javascript" src="./vconsole.js"></script> -->
<script type="text/javascript" src="./uni.webview.1.5.4.js"></script>
<script>
// var vConsole = new VConsole()
</script>
</body>
</html>

BIN
public/logo.jpg

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.9 KiB

1
public/uni.webview.1.5.4.js

File diff suppressed because one or more lines are too long

10
public/vconsole.js

File diff suppressed because one or more lines are too long

36
src/App.vue

@ -23,8 +23,8 @@
<Count />
</Dragger>
<!-- 测评提示信息弹窗 -->
<a-modal class="" :width="350" :maskClosable="false" :closable="false"
:destroyOnClose="true" v-model="tip.visible" title="提示" @ok="tipConfirm" okText="去测评" cancelText="忽略">
<a-modal class="" :width="350" :maskClosable="false" :closable="false" :destroyOnClose="true"
v-model="tip.visible" title="提示" @ok="tipConfirm" okText="去测评" cancelText="忽略">
<div class="modal-content">
{{ tip.content }}
</div>
@ -232,10 +232,10 @@
}
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 (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]) {
this.taskList.status = true;
@ -270,7 +270,7 @@
//
console.log('十秒');
this.request = n + 1;
await this.handMessageQuery();
// await this.handMessageQuery();
}
},
},
@ -334,21 +334,26 @@
line-height: 44px;
}
}
.patient-form{
text-align:center;
.patient-form {
text-align: center;
}
.ant-modal-content .ant-modal-footer{
text-align:center;
border-top:none;
.ant-modal-content .ant-modal-footer {
text-align: center;
border-top: none;
}
.ant-modal-content .ant-modal-header{
.ant-modal-content .ant-modal-header {
background: #007AFF;
}
.patient-form .ant-modal-content .ant-modal-header{
.patient-form .ant-modal-content .ant-modal-header {
background: #007AFF;
padding-top: 0;
}
.ant-modal-content .ant-modal-title{
.ant-modal-content .ant-modal-title {
color: #fff;
}
</style>
@ -399,5 +404,4 @@
}
}
}
</style>

8
src/api/index.js

@ -208,6 +208,14 @@ export const updateFirstAid = (params) =>
...params
}
});
export const ctFrontAdd = (params) =>
axios.post(`${proxyUrl1}//ctFront/add`, {
...params
});
export const ctFrontQuery = (params) =>
axios.post(`${proxyUrl1}//ctFront/query`, {
...params
});
// ------------平车相关操作------------
// 授权

6
src/config/axios.js

@ -4,6 +4,7 @@ import Vue from 'vue';
import axios from 'axios';
import router from '../router/index';
import store from '../store/index';
import utils from '../utils/index.js'
import {
message
} from 'ant-design-vue';
@ -50,6 +51,11 @@ axios.interceptors.response.use(
if (code === 200) {
return res.data;
} else if (code === 401) {
// console.log('401111111111111111111', )
// store.commit('patient/setPatientData', {})
// store.commit('patient/setTimerData', {})
// store.commit('storm/setToken', undefined)
// utils.AnimationFrame.clear()
router.replace('/login')
return Promise.resolve(res.data);
// localStorage.setItem('anyringToken', null);

7
src/config/setting.js

@ -26,6 +26,13 @@ const INDEX_SETTINGS = {
imgUrl: 'http://test.tall.wiki:9300',
},
development: {
//测试环境
apiUrl: 'https://test.tall.wiki/carbasics2024-gateway/',
proxyUrl: '/carbasics2024-gateway',
publicPath: '/carbasics2024/pad/v2',
imgUrl: 'http://test.tall.wiki:9300',
},
development2: {
//开发环境
apiUrl: 'http://116.204.114.73:10050/carbasics2024-yf-gateway/', // apiUrl: 'http://192.168.0.6:9002',
proxyUrl: '/basic-api',

1
src/store/modules/patient/mutations.js

@ -5,6 +5,7 @@ const mutations = {
* @param { boolean } data
*/
setPatientData(state, data) {
console.log(333)
// 团注, 剂量, 每次进来复制为空
if (data.recordValDict) {
if (!data.recordValDict['JMRS-TZJL']) {

119
src/views/thrombolysis/components/throm-before4.vue

@ -3,6 +3,22 @@
<a-card style="width:100%" :tab-list="tabList" :active-tab-key="activeTabKey" @tabChange="onTabChange">
<div class="throm-before4-container Informed-container">
<div class="video-container" v-if="activeTabKey == 'tab1'">
<div class="info">百人中使用药物结果分布情况</div>
<div class="img">
<img src="@/assets/images/100.png" alt="" style="width: 100%;" />
</div>
<div class="image-container">
<video :src="getVideo" controls autoplay loop muted v-if="getVideo" width="100%">
您的浏览器不支持 video 标签
</video>
<!-- <div class="notImg" v-else>溶栓视频安全区</div> -->
<div class="emtpy" v-else>
<a-empty :image="emptyImage" description="未检测到影像信息" />
</div>
</div>
</div>
<div class="video-container" v-if="activeTabKey == 'tab2'">
<h1 style="text-align: center;font-size: 2rem;line-height: 5rem;font-weight: bold;">急性脑梗塞静脉溶栓治疗知情同意书
</h1>
<div style="transition: all 1s; overflow: hidden; ">
@ -97,14 +113,14 @@
</div>
</template>
<div class="common-picker">
<van-datetime-picker v-if="picker" v-model="currentDate" type="datetime" @confirm="confirmPicker"
@cancel="picker = false" />
<van-datetime-picker v-if="picker" v-model="currentDate" type="datetime"
@confirm="confirmPicker" @cancel="picker = false" />
</div>
<div class="btns">
</div>
</div>
<div class="video-container" v-if="activeTabKey == 'tab2'">
<div class="video-container" v-if="activeTabKey == 'tab3'">
<div class="upload-informed-container">
<div class="upload-container">
<div class="info">上传知情同意图片</div>
@ -129,26 +145,15 @@
</a-modal>
</div>
</div>
<div class="video-container" v-if="activeTabKey == 'tab3'">
<div class="info">百人中使用药物结果分布情况</div>
<div class="img">
<img src="@/assets/images/100.png" alt="" style="width: 100%;" />
</div>
<div class="image-container">
<video :src="getVideo" controls autoplay loop muted v-if="getVideo" width="100%">
您的浏览器不支持 video 标签
</video>
<!-- <div class="notImg" v-else>溶栓视频安全区</div> -->
<div class="emtpy" v-else>
<a-empty :image="emptyImage" description="未检测到影像信息" />
</div>
</div>
</div>
<div class="throm-common-button">
<!-- <a-button :disabled="writeAble" class="" type="primary" size="large" block
@click="onSubmitSign" v-if="!disabled && activeTabKey == 'tab1'">提交</a-button> -->
<a-button :disabled="writeAble" class="" block type="primary" size="large"
@click="onSubmitSign">下一步</a-button>
@click="activeTabKey = 'tab2'" v-if="activeTabKey == 'tab1'">下一步</a-button>
<a-button :disabled="writeAble" class="" block type="primary" size="large" @click="onSubmitSign"
v-if="activeTabKey == 'tab2'">下一步</a-button>
<a-button :disabled="writeAble" class="" block type="primary" size="large" @click="handleNext"
v-if="activeTabKey == 'tab3'">下一步</a-button>
</div>
</div>
</a-card>
@ -178,7 +183,9 @@
thTime,
uploadBase64,
queryVideo,
queryBook
queryBook,
ctFrontAdd,
ctFrontQuery,
} from 'api';
export default {
name: 'ThromBefor4',
@ -194,16 +201,15 @@
emptyImage,
tabList: [{
key: 'tab1',
tab: '谈话辅助工具',
}, {
key: 'tab2',
tab: '知情同意',
},
{
key: 'tab2',
key: 'tab3',
tab: '拍照上传',
},
{
key: 'tab3',
tab: '谈话辅助工具',
}
],
apiUrl: imgUrl,
informed: {
@ -304,9 +310,6 @@
this.setVideo(data.list);
}
},
onSubmit() {
this.$emit('next')
},
async onSubmitSign() {
const {
informed
@ -328,7 +331,7 @@
} = res;
if (code === 200) {
this.$message.success('保存成功');
this.$emit('next')
this.activeTabKey = 'tab3'
// if (this.source === 'first') {
// this.$emit('on-success', true);
// } else {
@ -337,8 +340,55 @@
// }
}
},
handleNext() {
async handleNext() {
// const {
// firstAidId
// } = this.patientData;
// if (!firstAidId) return this.$message.error('');
// let res = await ctFrontAdd({
// firstAidId,
// path: this.fileList.join(','),
// type: 3,
// });
// const {
// code,
// data,
// msg
// } = res;
// if (code === 200) {
// this.$message.success('');
// this.$emit('next')
// }
let codeAndAnswerList = [];
codeAndAnswerList.push({
questionCode: 'JMRS-ZQTY-PIC',
answer: this.fileList,
time: '',
});
await this.home.updateAidCode({
codeAndAnswerList,
}, false);
this.$emit('next')
},
async queryFileList() {
const {
firstAidId
} = this.patientData;
if (!firstAidId) return this.$message.error('缺少急救');
let res = await ctFrontQuery({
firstAidId,
type: 3,
});
const {
code,
data,
msg
} = res;
if (code === 200) {
this.fileList = data
}
},
onTabChange(key, type) {
this.activeTabKey = key;
@ -354,8 +404,8 @@
this.currentDate = new Date(this.informed[type]);
}
},
formatDate(date){
if(!date) date = new Date()
formatDate(date) {
if (!date) date = new Date()
let year = date.getFullYear();
let month = date.getMonth() + 1;
month = month < 10 ? '0' + month : month;
@ -367,7 +417,7 @@
minutes = minutes < 10 ? '0' + minutes : minutes;
let seconds = date.getSeconds();
seconds = seconds < 10 ? '0' + seconds : seconds;
return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; // 0 y + '-' + m + '-' + d;
return `${year}-${month}-${day} ${hours}:${minutes}`; //:${seconds} y + '-' + m + '-' + d;
},
confirmPicker(date) {
// console.log(date)
@ -379,7 +429,8 @@
// let hours = date.getHours();
// let minutes = date.getMinutes();
// let seconds = date.getSeconds();
let dateTime = this.formatDate(date); //`${year}-${month}-${day} ${hours}:${minutes}`; // :${seconds}0 y + '-' + m + '-' + d;
let dateTime = this.formatDate(
date); //`${year}-${month}-${day} ${hours}:${minutes}`; // :${seconds}0 y + '-' + m + '-' + d;
this.informed[this.type] = dateTime;
console.log('dateTime', dateTime)
this.picker = false;

19
src/views/thrombolysis/components/throm-interfere-informed.vue

@ -97,8 +97,8 @@
</div>
</template>
<div class="common-picker">
<van-datetime-picker v-if="picker" v-model="currentDate" type="datetime" @confirm="confirmPicker"
@cancel="picker = false" />
<van-datetime-picker v-if="picker" v-model="currentDate" type="datetime"
@confirm="confirmPicker" @cancel="picker = false" />
</div>
</div>
<div class="video-container" v-if="activeTabKey == 'tab2'">
@ -162,7 +162,8 @@
<div class="throm-common-button">
<!-- <a-button :disabled="writeAble" class="" type="primary" size="large" block @click="onSubmitSign"
v-if="!disabled && activeTabKey == 'tab1'">提交</a-button> -->
<a-button :disabled="writeAble" class="" block type="primary" size="large" @click="onSubmitSign">下一步</a-button>
<a-button :disabled="writeAble" class="" block type="primary" size="large"
@click="onSubmitSign">下一步</a-button>
</div>
</div>
</template>
@ -299,7 +300,9 @@
},
async queryBook() {
let res = await queryBook({type: 1});
let res = await queryBook({
type: 1
});
const {
data,
code,
@ -372,8 +375,8 @@
this.currentDate = new Date(this.informed[type]);
}
},
formatDate(date){
if(!date) date = new Date()
formatDate(date) {
if (!date) date = new Date()
let year = date.getFullYear();
let month = date.getMonth() + 1;
month = month < 10 ? '0' + month : month;
@ -385,7 +388,7 @@
minutes = minutes < 10 ? '0' + minutes : minutes;
let seconds = date.getSeconds();
seconds = seconds < 10 ? '0' + seconds : seconds;
return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`; // :${seconds}0 y + '-' + m + '-' + d;
return `${year}-${month}-${day} ${hours}:${minutes}`; // :${seconds} y + '-' + m + '-' + d;
},
confirmPicker(date) {
// console.log(date)
@ -435,7 +438,7 @@
msg
} = res;
if (code === 200) {
console.log('result 溶栓',this.informed, data)
console.log('result 溶栓', this.informed, data)
this.utils.merge(this.informed, data);
}
},

6
src/views/thrombolysis/components/throm-report.vue

@ -182,7 +182,7 @@
</tr>
<tr>
<td colspan="1">到院时间</td>
<td colspan="1">{{queryItemInfo('JBXX-FBSJ').toString()}}</td>
<td colspan="1">{{queryItemInfo('JBXX-DY-TIME').toString()}}</td>
<td colspan="1">CT检查开始时间</td>
<td colspan="1">{{queryItemInfo('RYPG-CT-JCKS-TIME').toString()}}</td>
</tr>
@ -397,7 +397,7 @@
</div>
</a-card>
</a-col>
<a-col :span="24">
<!-- <a-col :span="24">
<a-card class="report-card" title="介入手术记录" :bodyStyle="{padding: '0 32px'}">
<a slot="extra" href="javascript:;" @click="handleExportJrPdf">导出</a>
<div class="doc-ct-content" style="min-height: 100px;">
@ -407,7 +407,7 @@
</div>
</div>
</a-card>
</a-col>
</a-col> -->
</a-row>
</div>
<div style="background-color: #fff;padding-bottom: 12px;border-top: 1px solid #eee;">

Loading…
Cancel
Save