pengjun 5 months ago
parent
commit
6f0d1bb0cd
  1. 109
      src/components/doctorCheck/CheckItemList.vue
  2. 4
      src/components/patientRegister/PatientRegisterEdit.vue
  3. 5
      src/components/patientRegister/PatientRegisterItem.vue
  4. 7
      src/views/doctorCheck/doctorCheck.vue

109
src/components/doctorCheck/CheckItemList.vue

@ -1,5 +1,6 @@
<template>
<div>
<div @contextmenu.prevent="onContextmenu">
<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" />
@ -7,8 +8,9 @@
<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="
: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">
@ -89,7 +91,31 @@
</template>
</el-table-column>
</el-table>
</div>
<!--模拟弹窗-->
<div v-show="hisResultDetailDialogVisible"
:style="`z-index:2;border-radius: 10px;border: 1px solid #ddd;background-color:#FFF; position: absolute;top:0px;right:0px;width:200px;height: 600px;opacity:1;`">
<div style="display: flex;justify-content:space-between;">
<div style="margin-left: 5px;">历次明细结果</div>
<div>
<el-tooltip content="关闭历次明细窗口" placement="bottom" effect="light">
<i class="el-icon-close" @click="hisResultDetailDialogVisible = false"
style="font-size: 24px;color: red;cursor:pointer;"></i>
</el-tooltip>
</div>
</div>
<!-- 明细历次结果 -->
<el-table :data="gridData" border width="100%" height="575" size="small" highlight-current-row
style="border-radius:10px;">
<el-table-column prop="checkDate" label="检查日期" min-width="90" align="center" />
<el-table-column prop="itemResult" label="项目结果" min-width="100">
<template slot-scope="scope">
<div style="margin-left: 2px;">{{ scope.row.itemResult }}</div>
</template>
</el-table-column>
</el-table>
</div>
<!--弹窗-->
<div>
<!-- 结果录入模版 -->
@ -174,6 +200,7 @@
<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-tabs v-model="activeName">
@ -195,7 +222,8 @@
// 0-1-2-3-
import { mapState } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import { arrayExistObj, dddw, deepCopy } from "../../utlis/proFunc";
import { arrayExistObj, dddw, deepCopy, getPagePriv, checkPagePriv } from "../../utlis/proFunc";
import PacsTemplate from "./PacsTemplate.vue";
import * as echarts from "echarts";
export default {
@ -205,6 +233,10 @@ export default {
props: ["isCheckPicture", "registerCheckId", "doctor_check_check_charge"],
data() {
return {
pagePriv: {
routeUrlorPageName: "doctorCheck", //
privs: [], //
},
activeName: "first",
previousResults: false,
gridData: [],
@ -272,10 +304,19 @@ export default {
pacsDescFontSize: "14px", //
}
},
hisResultDetailDialogVisible: true,
};
},
created() {
//
let userPriv = window.sessionStorage.getItem("userPriv");
if (userPriv)
this.pagePriv.privs = deepCopy(
getPagePriv(this.pagePriv.routeUrlorPageName)
);
this.dictInit();
let LocalConfig = JSON.parse(window.localStorage.getItem("LocalConfig") || null)
@ -373,6 +414,7 @@ export default {
}
});
},
btnPacsRessulst(row) {
this.curRow = row;
postapi("/api/app/RegisterCheckItem/GetItemTwoHistoricalResults", {
@ -780,6 +822,19 @@ export default {
rowClick(row) {
this.doctorCheck.checkItem = row;
this.restaurants = row.itemResultTemplates;
//
if (this.hisResultDetailDialogVisible) {
this.gridData = []
postapi("/api/app/RegisterCheckItem/GetItemTwoHistoricalResults", {
registerCheckId: row.registerCheckId,
itemId: row.itemId,
}).then((res) => {
if (res.code != -1) {
this.gridData = res.data;
}
});
}
},
//
@ -990,6 +1045,54 @@ export default {
});
});
},
//
onContextmenu(event) {
//
let items = [];
// items.push({
// label: "",
// children: [
// { label: "", onClick: () => { this.fnUpBaseInfo(row, 'patientName'); } }
// ],
// onClick: () => { // }
// })
//
items.push({
label: "显示明细历次结果",
onClick: () => {
this.hisResultDetailDialogVisible = true
},
})
//
//if(checkPagePriv(this.pagePriv.privs, ""))
items.push({
label: "预览影像报告",
onClick: () => {
this.pacsReportView();
},
})
this.$contextmenu({
items,
event,
x: event.clientX,
y: event.clientY,
customClass: "custom-class",
zIndex: 3,
minWidth: 80,
});
return false;
},
pacsReportView() {
this.$message.info({ showClose: true, message: this.doctorCheck.RegisterCheckId })
},
},
//

4
src/components/patientRegister/PatientRegisterEdit.vue

@ -2175,9 +2175,11 @@ export default {
e.patientRegisterId = ''
e.isCharge = 'N'
e.isLock = 'N'
e.checkCompleteFlag = '0'
});
// // console.log('this.patientRegister.patientRegisterAbs',this.patientRegister.patientRegisterAbs)
this.$message.info({ showClose: true, message: "操作成功,请记得点保存" });
this.$message.warning({ showClose: true, message: "操作成功,请记得点保存" });
},

5
src/components/patientRegister/PatientRegisterItem.vue

@ -142,7 +142,7 @@
</el-table-column>
<el-table-column prop="isCharge" label="收费" min-width="40" align="center">
<template slot-scope="scope">
<el-checkbox :value="scope.row.isCharge == 'Y'" />
<el-checkbox :value="scope.row.isCharge == 'Y'" true-label="Y" false-label="N" />
</template>
</el-table-column>
<el-table-column prop="checkCompleteFlag" label="状态" min-width="40" align="center">
@ -154,7 +154,7 @@
</el-table-column>
<el-table-column prop="isLock" label="锁" min-width="40" align="center">
<template slot-scope="scope">
<el-checkbox :value="scope.row.isLock == 'Y'" />
<el-checkbox :value="scope.row.isLock == 'Y'" true-label="Y" false-label="N" />
</template>
</el-table-column>
<el-table-column prop="creatorName" label="登记人" min-width="70" align="center"></el-table-column>
@ -275,6 +275,7 @@ export default {
...mapActions(['getCustomerOrgGroup', 'getPatientRegisterAbs']),
dddw, moment, deepCopy, checkPagePriv,
//
dictInit() {

7
src/views/doctorCheck/doctorCheck.vue

@ -461,8 +461,9 @@ export default {
return
}
console.log('生成小结');
//console.log('');
/*
//
if (this.doctorCheck.checkSummaryList.length > 0) {
this.$confirm("已经有小结,是否重新生成小结?", "提示", {
confirmButtonText: "是",
@ -478,6 +479,8 @@ export default {
} else {
this.makeDiagnosisFun();
}
*/
this.makeDiagnosisFun();
},

Loading…
Cancel
Save