|
|
@ -4,6 +4,7 @@ |
|
|
|
<a-tab-pane :key="item" :tab="typeof item === 'number' ? item + '天' : item" v-for="item in tabList" width="100" /> |
|
|
|
</a-tabs> |
|
|
|
<a-form :form="form" v-if="typeof tabNums === 'number'"> |
|
|
|
<a-spin :spinning="spinning"> |
|
|
|
<a-collapse v-model="activeKey"> |
|
|
|
<!-- 首先遍历整个data大数组 --> |
|
|
|
<!-- <div v-for="(item, index) in list" :key="index"> --> |
|
|
@ -118,7 +119,12 @@ |
|
|
|
:max-length="500" |
|
|
|
v-else-if="ques.afterOperation === 2" |
|
|
|
/> |
|
|
|
<div v-else-if="ques.afterOperation === 3" :key="i" v-for="(h, i) in ques.questionVos" style="position: relative"> |
|
|
|
<div |
|
|
|
v-else-if="ques.afterOperation === 3" |
|
|
|
:key="i" |
|
|
|
v-for="(h, i) in ques.questionVos" |
|
|
|
style="position: relative" |
|
|
|
> |
|
|
|
<a-form-item |
|
|
|
:label="h.question" |
|
|
|
:label-col="formItemLayout.labelCol" |
|
|
@ -405,7 +411,9 @@ |
|
|
|
v-else-if="h.type === 5" |
|
|
|
v-model="h.answer" |
|
|
|
> |
|
|
|
<a-select-option :key="c" :value="b.showValue" v-for="(b, c) in h.optionVos">{{ b.showValue }}</a-select-option> |
|
|
|
<a-select-option :key="c" :value="b.showValue" v-for="(b, c) in h.optionVos">{{ |
|
|
|
b.showValue |
|
|
|
}}</a-select-option> |
|
|
|
</a-select> |
|
|
|
<a-date-picker |
|
|
|
:default-value="h.answer ? $moment(h.answer, dateFormat) : ''" |
|
|
@ -557,7 +565,11 @@ |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
<div v-else-if="h.type === 13"> |
|
|
|
<a-input-number @change="onChange($event, h.type, h.id, h.recordId)" style="width: 200px%" v-model="h.answer" /> |
|
|
|
<a-input-number |
|
|
|
@change="onChange($event, h.type, h.id, h.recordId)" |
|
|
|
style="width: 200px%" |
|
|
|
v-model="h.answer" |
|
|
|
/> |
|
|
|
</div> |
|
|
|
<div v-else-if="h.type === 15"> |
|
|
|
<a-time-picker placeholder="时间选择" @change="onChange($event, h.type, h.id, h.recordId)" /> |
|
|
@ -580,7 +592,9 @@ |
|
|
|
</div> |
|
|
|
<p class="units-position" style="margin-left: 10px"> |
|
|
|
<span v-if="h.units">{{ h.units }}</span> |
|
|
|
<span v-if="typeof h.referenceLower === 'number'"> ({{ h.referenceLower + '-' }}{{ h.referenceUpper }}) </span> |
|
|
|
<span v-if="typeof h.referenceLower === 'number'"> |
|
|
|
({{ h.referenceLower + '-' }}{{ h.referenceUpper }}) |
|
|
|
</span> |
|
|
|
</p> |
|
|
|
</a-form-item> |
|
|
|
</a-form-item> |
|
|
@ -622,7 +636,9 @@ |
|
|
|
<span v-if="typeof a.referenceLower === 'number'">({{ a.referenceLower + '-' }}{{ a.referenceUpper }})</span> |
|
|
|
</p> |
|
|
|
</a-form-item> |
|
|
|
<a-button v-if="a.remark && JSON.parse(a.remark).type === 'add'" class="add-btn" @click="addDom('AA', a.id, index)">+</a-button> |
|
|
|
<a-button v-if="a.remark && JSON.parse(a.remark).type === 'add'" class="add-btn" @click="addDom('AA', a.id, index)"> |
|
|
|
+ |
|
|
|
</a-button> |
|
|
|
</div> |
|
|
|
<!-- 一级标题下的各种二级标题(subReportCodes) --> |
|
|
|
<div v-for="(w, indexB) in item.subReportCodes" :key="w.name"> |
|
|
@ -630,7 +646,7 @@ |
|
|
|
<!-- 二级大标题 --> |
|
|
|
<span class="hhh2">{{ w.name }}:</span> |
|
|
|
<a-upload |
|
|
|
v-if="w.recordType && getCode" |
|
|
|
v-if="w.recordType && (getCode || code)" |
|
|
|
name="files" |
|
|
|
:multiple="true" |
|
|
|
:action="action" |
|
|
@ -638,7 +654,7 @@ |
|
|
|
@change="handleChange($event, w.code, w.recordId, index, indexB)" |
|
|
|
> |
|
|
|
<!-- <a-upload :multiple="true" :action="action" :headers="headers" @change="handleChange"> --> |
|
|
|
<a-button> <a-icon type="upload" />上传图片 </a-button> |
|
|
|
<a-button> <a-icon type="upload" />图像识别 </a-button> |
|
|
|
</a-upload> |
|
|
|
</a-form-item> |
|
|
|
<!-- 二级标题下的各种类型 --> |
|
|
@ -702,7 +718,11 @@ |
|
|
|
</a-button> |
|
|
|
</a-upload> |
|
|
|
<div v-else-if="e.type === 10"> |
|
|
|
<a-select :default-value="getAnswer(e.answer)" @change="onChange($event, e.type, e.id, e.recordId)" style="width: 100%"> |
|
|
|
<a-select |
|
|
|
:default-value="getAnswer(e.answer)" |
|
|
|
@change="onChange($event, e.type, e.id, e.recordId)" |
|
|
|
style="width: 100%" |
|
|
|
> |
|
|
|
<a-select-option :key="c" :value="b.showValue" v-for="(b, c) in e.optionVos">{{ b.showValue }}</a-select-option> |
|
|
|
</a-select> |
|
|
|
<div :key="c" v-for="(b, c) in e.optionVos"> |
|
|
@ -1297,6 +1317,7 @@ |
|
|
|
</a-collapse-panel> |
|
|
|
<!-- </div> --> |
|
|
|
</a-collapse> |
|
|
|
</a-spin> |
|
|
|
</a-form> |
|
|
|
<iframe frameborder="0" height="100%" src="http://www.sxwikionline.com/ht-common/home/reportHistory?code=LSBGD" v-else></iframe> |
|
|
|
<!-- <a-date-picker |
|
|
@ -1307,8 +1328,10 @@ |
|
|
|
@change="changeDate" |
|
|
|
/>--> |
|
|
|
<div class="bot-right-tips"> |
|
|
|
当前选择患者的编号为: |
|
|
|
当前选择患者的住院号为: |
|
|
|
<span style="color: green">{{ hospitalization }}</span> |
|
|
|
,研究编号为: |
|
|
|
<span style="color: green">{{ recordCode }}</span> |
|
|
|
</div> |
|
|
|
<a-button |
|
|
|
v-if="list.length > 0 && (getCode || code)" |
|
|
@ -1381,11 +1404,12 @@ export default { |
|
|
|
visible: false, |
|
|
|
confirmLoading: false, |
|
|
|
recordTypeList: [], |
|
|
|
spinning: false, |
|
|
|
}; |
|
|
|
}, |
|
|
|
|
|
|
|
computed: { |
|
|
|
...mapState('home', ['patientId', 'hospitalization', 'hospitalId']), |
|
|
|
...mapState('home', ['patientId', 'hospitalization', 'hospitalId', 'recordCode']), |
|
|
|
// 上传附加请求头 |
|
|
|
headers() { |
|
|
|
const token = sessionStorage.getItem('anyringToken'); |
|
|
@ -1402,6 +1426,7 @@ export default { |
|
|
|
}, |
|
|
|
async created() { |
|
|
|
console.log(this.patientId); |
|
|
|
this.spinning = true; |
|
|
|
this.getCode = ''; |
|
|
|
this.tabNums = 0; |
|
|
|
if (this.$route.query && this.$route.query.code) { |
|
|
@ -1466,7 +1491,7 @@ export default { |
|
|
|
const params = { |
|
|
|
param: { |
|
|
|
code: this.code ? this.code : this.getCode ? this.getCode : '', |
|
|
|
id: this.patientId ? this.patientId : '1377810337931468800', |
|
|
|
id: this.patientId ? this.patientId : '', |
|
|
|
nums: this.tabNums, |
|
|
|
}, |
|
|
|
}; |
|
|
@ -1486,6 +1511,7 @@ export default { |
|
|
|
} catch (error) { |
|
|
|
console.log(error); |
|
|
|
} |
|
|
|
this.spinning = false; |
|
|
|
}, |
|
|
|
onChange(e, type, id, recordId) { |
|
|
|
// console.log(e); |
|
|
@ -1760,6 +1786,7 @@ export default { |
|
|
|
// 上传图片事件 |
|
|
|
fileChange(info, id, recordId) { |
|
|
|
console.log(info); |
|
|
|
this.spinning = true; |
|
|
|
if (info.file.status === 'done') { |
|
|
|
this.fileList = info.fileList; |
|
|
|
for (let i = 0; i < this.contentList.length; i++) { |
|
|
@ -1775,6 +1802,7 @@ export default { |
|
|
|
}; |
|
|
|
this.contentList.push(obj); |
|
|
|
} |
|
|
|
this.spinning = false; |
|
|
|
console.log(this.contentList); |
|
|
|
console.log(this.fileList); |
|
|
|
} else if (info.file.status === 'removed') { |
|
|
@ -1784,10 +1812,12 @@ export default { |
|
|
|
this.contentList.splice(i, 1); |
|
|
|
} |
|
|
|
} |
|
|
|
this.spinning = false; |
|
|
|
} |
|
|
|
}, |
|
|
|
// 图像识别 |
|
|
|
async handleChange(info, title, recordId, indexA, indexB) { |
|
|
|
this.spinning = true; |
|
|
|
if (info.file.status === 'done') { |
|
|
|
const { list } = this; |
|
|
|
const objList = list[indexA].subReportCodes[indexB]; |
|
|
@ -1801,6 +1831,7 @@ export default { |
|
|
|
const res = await basic(params); |
|
|
|
const { code, msg, data } = res.data; |
|
|
|
if (code === 200) { |
|
|
|
this.spinning = false; |
|
|
|
for (let k = 0; k < data.length; k++) { |
|
|
|
for (let i = 0; i < objList.questionVos.length; i++) { |
|
|
|
if (objList.questionVos[i].id === data[k].questionId) { |
|
|
@ -1831,11 +1862,11 @@ export default { |
|
|
|
this.contentList.push(obj); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
list[indexA].subReportCodes[indexB] = { ...objList }; |
|
|
|
this.list = [...list]; |
|
|
|
} else { |
|
|
|
console.log(msg); |
|
|
|
this.spinning = false; |
|
|
|
} |
|
|
|
} |
|
|
|
}, |
|
|
@ -1843,6 +1874,7 @@ export default { |
|
|
|
async setData() { |
|
|
|
try { |
|
|
|
this.confirmLoading = true; |
|
|
|
this.spinning = true; |
|
|
|
for (let i = 0; i < this.list.length; i++) { |
|
|
|
const item = this.list[i]; |
|
|
|
if (item.questionVos && item.questionVos.length) { |
|
|
@ -1947,15 +1979,18 @@ export default { |
|
|
|
const res = await saveCaseMes(params); |
|
|
|
const { code, msg, data } = res.data; |
|
|
|
if (code === 200) { |
|
|
|
this.spinning = false; |
|
|
|
this.$message.success('提交成功'); |
|
|
|
this.confirmLoading = false; |
|
|
|
this.visible = false; |
|
|
|
this.contentList = []; |
|
|
|
} else { |
|
|
|
this.spinning = false; |
|
|
|
this.$message.error('提交失败'); |
|
|
|
this.confirmLoading = false; |
|
|
|
} |
|
|
|
} catch (error) { |
|
|
|
this.spinning = false; |
|
|
|
this.$message.error('error'); |
|
|
|
} |
|
|
|
this.confirmLoading = false; |
|
|
@ -1983,4 +2018,8 @@ export default { |
|
|
|
right: -10px; |
|
|
|
transform: translate3d(100%, -100%, 0); |
|
|
|
} |
|
|
|
|
|
|
|
/deep/ .ant-tabs-bar { |
|
|
|
margin-bottom: 0 !important; |
|
|
|
} |
|
|
|
</style> |
|
|
|