Browse Source

result

master
pengjun 12 months ago
parent
commit
4b57e82089
  1. 18
      src/components/common/LocalConfig.vue
  2. 239
      src/components/doctorCheck/CheckItemList.vue
  3. 7
      src/components/doctorCheck/CheckPicture.vue
  4. 3
      src/components/doctorCheck/CheckPictureUpload.vue
  5. 3
      src/views/doctorCheck/checkPicImport.vue

18
src/components/common/LocalConfig.vue

@ -87,16 +87,7 @@
<el-form-item label="是否显示图片">
<el-checkbox v-model="LocalConfig.doctorCheck.isCheckPicture" size="small" />
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="采集卡图类别">
<el-select v-model="LocalConfig.doctorCheck.pictureFileType" placeholder="采集卡图类别" clearable filterable
size="small" >
<el-option label="0 - 非报告图" value="0" />
<el-option label="1 - 报告图片" value="1" />
</el-select>
</el-form-item>
</el-col>
</el-col>
<el-col :span="6">
<el-form-item label="pacs分类">
<el-select v-model="LocalConfig.doctorCheck.pacsType" placeholder="pacs分类" clearable filterable
@ -105,6 +96,11 @@
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="全选录入框">
<el-checkbox v-model="LocalConfig.doctorCheck.isSelectAll" size="small" true-label="Y" false-label="N" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
@ -177,7 +173,7 @@ export default {
},
doctorCheck: { //
isCheckPicture: false, //
pictureFileType:'0',
isSelectAll:'N', //
pacsType:'image',
isQueue: 'N', //
queueRoom: '', //

239
src/components/doctorCheck/CheckItemList.vue

@ -1,56 +1,26 @@
<template>
<div>
<el-table
:data="doctorCheck.checkItemList"
style="width: 100%"
:height="tableHeight"
border
highlight-current-row
@row-click="rowClick"
size="small"
>
<el-table :data="doctorCheck.checkItemList" style="width: 100%" :height="tableHeight" border highlight-current-row
@row-click="rowClick" size="small">
<el-table-column prop="itemName" label="项目" width="220" />
<el-table-column prop="result" label="结果" min-width="200">
<template slot-scope="scope">
<div style="display: flex">
<el-autocomplete
style="width: 100%"
type="textarea"
v-model="scope.row.result"
placeholder="请输入结果值"
:disabled="rowResultDisabled(scope.row)"
:autosize="{ minRows: 1, maxRows: 10 }"
:trigger-on-focus="false"
:fetch-suggestions="querySearch"
:data-lineModeFlag="scope.row.lineModeFlag"
@input="
<el-autocomplete style="width: 100%" type="textarea" v-model="scope.row.result" placeholder="请输入结果值"
:disabled="rowResultDisabled(scope.row)" :autosize="{ minRows: 1, maxRows: 10 }" :trigger-on-focus="false"
:fetch-suggestions="querySearch" :data-lineModeFlag="scope.row.lineModeFlag" @input="
madeTooltips(scope.$index);
computeFun(scope.$index);
"
v-bind:class="scope.row.class"
>
computeFun(scope.$index);
" v-bind:class="scope.row.class">
</el-autocomplete>
<el-button
style="min-width: 23px; padding: 2px"
icon="el-icon-caret-bottom"
@click="btnMoreResult(scope.row, scope.$index)"
:disabled="rowResultDisabled(scope.row)"
size="small"
></el-button>
<el-button
style="min-width: 23px; padding: 2px; margin-left: 2px"
@click="btnPacsResult(scope.row, scope.$index)"
:disabled="rowResultDisabled(scope.row)"
size="small"
>P</el-button
>
<el-button
style="min-width: 23px; padding: 5.8px; margin-left: 2px"
:disabled="rowResultDisabled(scope.row)"
@click="btnPacsRessulst(scope.row)"
size="small"
>S</el-button
>
<el-button style="min-width: 23px; padding: 2px" icon="el-icon-caret-bottom"
@click="btnMoreResult(scope.row, scope.$index)" :disabled="rowResultDisabled(scope.row)"
size="small"></el-button>
<el-button style="min-width: 23px; padding: 2px; margin-left: 2px"
@click="btnPacsResult(scope.row, scope.$index)" :disabled="rowResultDisabled(scope.row)"
size="small">P</el-button>
<el-button style="min-width: 23px; padding: 5.8px; margin-left: 2px"
:disabled="rowResultDisabled(scope.row)" @click="btnPacsRessulst(scope.row)" size="small">S</el-button>
<!-- <el-popover
placement="top-end"
width="500"
@ -92,18 +62,8 @@
</template>
</el-table-column>
<el-table-column prop="unit" label="单位" width="90" align="center" />
<el-table-column
prop="referenceRangeValue"
label="参考范围"
width="120"
align="center"
/>
<el-table-column
prop="resultStatusId"
label="提示"
width="40"
align="center"
>
<el-table-column prop="referenceRangeValue" label="参考范围" width="120" align="center" />
<el-table-column prop="resultStatusId" label="提示" width="40" align="center">
<template slot-scope="scope">
<div>
{{
@ -117,25 +77,15 @@
</div>
</template>
</el-table-column>
<el-table-column
prop="criticalFlag"
label="危急值"
width="50"
align="center"
>
<el-table-column prop="criticalFlag" label="危急值" width="50" align="center">
<template slot-scope="scope">
<el-button
:style="[
{ minWidth: '23px' },
{ padding: '6px 2px' },
{
backgroundColor: scope.row.isCriticalValue == 'Y' ? 'red' : '',
},
]"
@click="btnCritical(scope.row)"
size="small"
>W</el-button
>
<el-button :style="[
{ minWidth: '23px' },
{ padding: '6px 2px' },
{
backgroundColor: scope.row.isCriticalValue == 'Y' ? 'red' : '',
},
]" @click="btnCritical(scope.row)" size="small">W</el-button>
</template>
</el-table-column>
</el-table>
@ -143,77 +93,48 @@
<!--弹窗-->
<div>
<!-- 结果录入模版 -->
<el-dialog
title="结果录入模版"
:visible.sync="dialogWinMoreResult"
width="800px"
:close-on-click-modal="false"
>
<el-dialog title="结果录入模版" :visible.sync="dialogWinMoreResult" width="800px" :close-on-click-modal="false">
<div style="margin-top: -10px">
<el-checkbox
v-model="isSplitChooseResult"
size="small"
true-label="Y"
false-label="N"
>选结果模板时自动添加分隔符</el-checkbox
>
<div
style="
<el-checkbox v-model="isSplitChooseResult" size="small" true-label="Y"
false-label="N">选结果模板时自动添加分隔符</el-checkbox>
<div style="
overflow-y: auto;
height: 300px;
width: 100%;
display: flex;
flex-wrap: wrap;
align-content: flex-start;
"
>
<div
v-for="item in moreResult.data"
:key="item.id"
style="margin: 5px; cursor: pointer"
@click="clickResult(item)"
@dblclick="dblclickResult(item)"
>
<el-tag
size="samll"
style="
">
<div v-for="item in moreResult.data" :key="item.id" style="margin: 5px; cursor: pointer"
@click="clickResult(item)" @dblclick="dblclickResult(item)">
<el-tag size="samll" style="
padding: 0 3px;
height: 24px;
line-height: 24px;
font-size: 14px;
color: #303133;
background-color: white;
"
>{{ item.result }}</el-tag
>
">{{ item.result }}</el-tag>
</div>
</div>
<div>特殊符号</div>
<div
style="
<div style="
overflow-y: auto;
width: 100%;
display: flex;
flex-wrap: wrap;
align-content: flex-start;
"
>
<div
v-for="item in symbols"
:key="item.id"
style="margin: 1px 2px; cursor: pointer"
@click="insertSymbols(item.displayName)"
>
<el-tag
style="
">
<div v-for="item in symbols" :key="item.id" style="margin: 1px 2px; cursor: pointer"
@click="insertSymbols(item.displayName)">
<el-tag style="
padding: 0 3px;
height: 24px;
line-height: 24px;
font-size: 15px;
color: #303133;
background-color: white;
"
>
">
{{ item.displayName }}
</el-tag>
</div>
@ -221,81 +142,45 @@
<div style="display: flex; justify-content: space-between">
<div style="margin-top: 5px">录入结果</div>
<div style="overflow-y: auto; display: flex; flex-wrap: wrap">
<div
v-for="item in splitSymbols"
:key="item"
style="margin: 1px 2px; cursor: pointer"
@click="insertSymbols(item)"
>
<el-tag
style="
<div v-for="item in splitSymbols" :key="item" style="margin: 1px 2px; cursor: pointer"
@click="insertSymbols(item)">
<el-tag style="
padding: 0 3px;
height: 24px;
line-height: 24px;
font-size: 15px;
color: #303133;
background-color: white;
"
>
">
{{ item }}
</el-tag>
</div>
</div>
</div>
<el-input
id="resultBox"
style="width: 100%"
class="commonFont"
type="textarea"
:autosize="{ minRows: 4, maxRows: 4 }"
v-model="moreResult.result"
/>
<el-input id="resultBox" style="width: 100%" class="commonFont" type="textarea"
:autosize="{ minRows: 4, maxRows: 4 }" v-model="moreResult.result" />
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="btnClear"> </el-button>
<el-button type="primary" @click="btnOkResult('defaultResult')"
>默认结果</el-button
>
<el-button type="primary" @click="btnOkResult('defaultResult')">默认结果</el-button>
<el-button type="primary" @click="btnOkResult('')"> </el-button>
<el-button @click="dialogWinMoreResult = false"> </el-button>
</span>
</el-dialog>
<!--Pacs结果录入模版-->
<el-dialog
:title="'Pacs结果录入模版 -- ' + doctorCheck.asbitemName"
v-if="dialogWinPacsTemplate"
:visible.sync="dialogWinPacsTemplate"
width="880px"
:close-on-click-modal="false"
>
<PacsTemplate
:refParams="pacsParams"
:refFuncOther="handlePacsResult"
/>
<el-dialog :title="'Pacs结果录入模版 -- ' + doctorCheck.asbitemName" v-if="dialogWinPacsTemplate"
:visible.sync="dialogWinPacsTemplate" width="880px" :close-on-click-modal="false">
<PacsTemplate :refParams="pacsParams" :refFuncOther="handlePacsResult" />
</el-dialog>
<el-dialog
:title="curRow.itemName"
:visible.sync="previousResults"
width="500px"
:close-on-click-modal="true"
:show-close="false"
@close="resultsclose"
>
<el-dialog :title="curRow.itemName" :visible.sync="previousResults" width="500px" :close-on-click-modal="true"
:show-close="false" @close="resultsclose">
<el-tabs v-model="activeName">
<el-tab-pane label="文字结果" name="first">
<el-table :data="gridData">
<el-table-column
property="checkDate"
label="检查日期"
align="center"
></el-table-column>
<el-table-column
property="itemResult"
label="项目结果"
align="center"
></el-table-column>
<el-table-column property="checkDate" label="检查日期" align="center"></el-table-column>
<el-table-column property="itemResult" label="项目结果" align="center"></el-table-column>
</el-table>
</el-tab-pane>
<el-tab-pane label="折线图" name="second">
@ -379,19 +264,23 @@ export default {
summary: "",
},
curRow: {},
isSelectAll: 'N', //
};
},
created() {
this.dictInit();
let LocalConfig = JSON.parse(window.localStorage.getItem("LocalConfig") || null)
if (LocalConfig && LocalConfig.doctorCheck && LocalConfig.doctorCheck.isSelectAll) this.isSelectAll = LocalConfig.doctorCheck.isSelectAll
},
//
mounted() {
this.checkItemList(this.dataTransOpts.tableS.register_check.id);
this.userInfo.operatorType = window.sessionStorage.getItem("operatorType") || '0';
this.userInfo.userId = window.sessionStorage.getItem("userId")||null;
this.userInfo.user = window.sessionStorage.getItem("user")||null;
this.userInfo.userId = window.sessionStorage.getItem("userId") || null;
this.userInfo.user = window.sessionStorage.getItem("user") || null;
},
computed: {
@ -908,9 +797,9 @@ export default {
}
if (this.doctorCheck.RegisterCheckEdit.completeFlag == "0") {
//
if(this.userInfo.operatorType == '1' || this.userInfo.operatorType == '3'){
if (this.userInfo.operatorType == '1' || this.userInfo.operatorType == '3') {
this.doctorCheck.RegisterCheckEdit.checkDoctorId = this.userInfo.userId;
}
}
this.doctorCheck.RegisterCheckEdit.checkDate = new Date();
}
return getapi(
@ -1036,7 +925,9 @@ export default {
//
input.addEventListener("click", (event) => {
input.select();
if(this.isSelectAll == 'Y'){
input.select();
}
});
});
});

7
src/components/doctorCheck/CheckPicture.vue

@ -239,7 +239,7 @@ export default {
//
dialogWinCutPic: false,
cutPicParam: {},
pictureFileType:'0'
pictureFileType:'1'
};
},
@ -249,8 +249,7 @@ export default {
if (userPriv) this.pagePriv.privs = deepCopy(getPagePriv(this.pagePriv.routeUrlorPageName))
this.sysConfig = JSON.parse(window.sessionStorage.getItem('sysConfig'))
// console.log('this.sysConfig checkPictures', this.sysConfig)
let LocalConfig = JSON.parse(window.localStorage.getItem("LocalConfig") || null)
if (LocalConfig && LocalConfig.doctorCheck && LocalConfig.doctorCheck.pictureFileType) this.pictureFileType = LocalConfig.doctorCheck.pictureFileType
},
//
@ -397,7 +396,7 @@ export default {
localPathName: item.FilePath,
pictureBaseStr: baseHead + item.Image
}],
pictureFileType:this.pictureFileType
pictureFileType: '0' //01 this.pictureFileType
}
try {
//await postapi('/api/app/RegisterCheckPicture/InstrumentMapping', body)

3
src/components/doctorCheck/CheckPictureUpload.vue

@ -126,7 +126,8 @@ export default {
pictureBaseStrs: [{
fileName,
pictureBaseStr: data
}]
}],
pictureFileType:'1'
}
// postapi('/api/app/registercheckpicture/uploadregistercheckpicturemany', body) //

3
src/views/doctorCheck/checkPicImport.vue

@ -377,7 +377,8 @@ export default {
pictureName: fileName,
pictureBase64: data,
patientRegisterNo: checkRequestNo, //
asbitemId: this.upPic.asbitemId
asbitemId: this.upPic.asbitemId,
pictureFileType:'1'
}
let url = '/api/app/RegisterCheckPicture/ImportRegisterCheckPicture'

Loading…
Cancel
Save