Browse Source

报告单列表导出替换为查询对应版本模版导出

master-dev
lzp 2 days ago
parent
commit
9540b9372d
  1. 9
      web_admin/src/api/his/evaluation.js
  2. 4
      web_admin/src/views/his/Evaluation/index.vue
  3. 182
      web_admin/src/views/his/Report/index.vue
  4. 4
      web_admin/src/views/report/view.vue
  5. 4
      web_admin/vue.config.js

9
web_admin/src/api/his/evaluation.js

@ -95,6 +95,7 @@ export function positiveExport(data) {
data: data,
});
}
// 详情接口
export function queryReport(data) {
return request({
url: "/rms/queryReport",
@ -102,3 +103,11 @@ export function queryReport(data) {
data: data,
});
}
// 测评列表
export function queryEvaluation(data) {
return request({
url: "/rms/queryEvaluation",
method: "post",
data: data,
});
}

4
web_admin/src/views/his/Evaluation/index.vue

@ -235,7 +235,7 @@
let { apiUrl, proxyUrl } = require("@/config/settings");
import { careers, pasis } from "./ReportDetail/config.js";
import {
queryReport,
queryEvaluation,
queryReportDetail,
updateScaleInitialImpression,
exportReport,
@ -351,7 +351,7 @@ export default {
this.queryParams.param.beginTime = this.queryParams.param.time[0];
this.queryParams.param.endTime = this.queryParams.param.time[1];
}
queryReport(this.queryParams).then((res) => {
queryEvaluation(this.queryParams).then((res) => {
console.log("res: ", res);
this.loading = false;
this.evaluationList = [...res.data.list];

182
web_admin/src/views/his/Report/index.vue

@ -91,28 +91,6 @@
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<!-- <el-col :span="1.5" v-hasPermi="['tms:evaluation:remove']">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
>删除
</el-button>
</el-col> -->
<!-- <el-col :span="1.5" v-hasPermi="['tms:evaluation:report']">
<el-button
type="primary"
plain
icon="el-icon-document"
:disabled="single"
size="mini"
@click="handleReport"
>查看测评报告
</el-button>
</el-col> -->
<el-col :span="1.5" v-hasPermi="['tms:evaluation:export']">
<el-button
type="warning"
@ -240,56 +218,83 @@
</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" width="300" fixed="right">
<el-table-column label="操作" align="center" width="200" fixed="right">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-upload2"
@click="handlePatientExport('医生版', true, scope.row)"
>
导出医生版
</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-printer"
@click="handlePrinting('医生版', scope.row)"
>
打印医生版
</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-upload2"
@click="handlePatientExport('阳性版', true, scope.row)"
>
导出阳性版
</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-printer"
@click="handlePrinting('阳性版', scope.row)"
>
打印阳性版
</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-upload2"
@click="handlePatientExport('个人版', true, scope.row)"
>
导出个人版
</el-button>
<el-button
size="mini"
type="text"
icon="el-icon-printer"
@click="handlePrinting('个人版', scope.row)"
>
打印个人版
</el-button>
<el-popover placement="bottom" trigger="click">
<el-button
slot="reference"
size="mini"
type="text"
icon="el-icon-upload2"
@click="getReportTemplate('PERSION')"
>
导出个人版
</el-button>
<div v-loading="reportTemplateLoading">
<div v-for="(item, index) in reportTemplateList" :key="index">
<el-button
@click="handleReportTemplate(scope.row, item.id, item.type)"
size="mini"
type="text"
>
{{ item.name }}{{ item.type ? "pdf" : "word" }}
</el-button>
</div>
<div v-if="!reportTemplateList.length" style="text-align: center">
暂无报告模板
</div>
</div>
</el-popover>
<el-popover placement="bottom" trigger="click">
<el-button
slot="reference"
size="mini"
type="text"
icon="el-icon-upload2"
@click="getReportTemplate('DOCTOR')"
>
导出医生版
</el-button>
<div v-loading="reportTemplateLoading">
<div v-for="(item, index) in reportTemplateList" :key="index">
<el-button
@click="handleReportTemplate(scope.row, item.id, item.type)"
size="mini"
type="text"
>
{{ item.name }}{{ item.type ? "pdf" : "word" }}
</el-button>
</div>
<div v-if="!reportTemplateList.length" style="text-align: center">
暂无报告模板
</div>
</div>
</el-popover>
<el-popover placement="bottom" trigger="click">
<el-button
slot="reference"
size="mini"
type="text"
icon="el-icon-upload2"
@click="getReportTemplate('POSITIVE')"
>
导出阳性
</el-button>
<div v-loading="reportTemplateLoading">
<div v-for="(item, index) in reportTemplateList" :key="index">
<el-button
@click="handleReportTemplate(scope.row, item.id, item.type)"
size="mini"
type="text"
>
{{ item.name }}{{ item.type ? "pdf" : "word" }}
</el-button>
</div>
<div v-if="!reportTemplateList.length" style="text-align: center">
暂无报告模板
</div>
</div>
</el-popover>
<el-button
size="mini"
type="text"
@ -385,12 +390,17 @@
<script>
let { apiUrl, proxyUrl } = require("@/config/settings");
import { careers, pasis } from "./ReportDetail/config.js";
import {
reportTemplateQuery,
reportExportAll,
} from "@/api/reportTemplate/index.js";
import {
queryReportList,
queryReportDetail,
updateScaleInitialImpression,
exportReport,
personalExport,
queryReport,
doctorExport,
positiveExport,
} from "@/api/his/evaluation";
@ -464,6 +474,8 @@ export default {
deptOptions: [], //
versionList: [], //
workloadList: [], //
reportTemplateList: [], //
reportTemplateLoading: false, //
};
},
created() {
@ -478,6 +490,32 @@ export default {
this.getuserStatistics();
},
methods: {
//
getReportTemplate(_type) {
reportTemplateQuery({
pageNum: -1,
param: { code: _type },
}).then((response) => {
this.reportTemplateLoading = false;
this.reportTemplateList = response.data || [];
});
},
//
handleReportTemplate(row, id, type) {
this.loading = true;
reportExportAll({
templateId: id,
reportId: row.reportId,
})
.then((res) => {
this.loading = false;
let path = type ? res.data.path : res.data.word;
window.open(this.qzUrl + path);
})
.catch(() => {
this.loading = false;
});
},
//
getuserStatistics() {
userStatistics({}).then((res) => {
@ -628,7 +666,7 @@ export default {
const param = {
evaluationId: evaluationId || this.ids[0],
};
queryReportDetail(param).then((res) => {
queryReport(param).then((res) => {
console.log("res: ", res);
this.reportDetail1 = res.data;
this.reportDetail1.evaluationId = param.evaluationId;

4
web_admin/src/views/report/view.vue

@ -74,7 +74,9 @@
{{ item.name }}{{ item.type ? "pdf" : "word" }}
</el-button>
</div>
<div v-if="!reportTemplateList.length">暂无报告模板</div>
<div v-if="!reportTemplateList.length" style="text-align: center">
暂无报告模板
</div>
</div>
</el-popover>
</template>

4
web_admin/vue.config.js

@ -37,10 +37,10 @@ module.exports = {
// detail: https://cli.vuejs.org/config/#devserver-proxy
[process.env.VUE_APP_BASE_API]: {
// target: `http://localhost:8080`,
target: "http://192.168.1.136:19330",
// target: "http://192.168.1.136:19330",
// target: "https://nnzjpt.ylinno.com/ruisiCgaAdmin/",
// target: "https://www.ylinno.com/cga/v2/api/admin/",
// target: "http://113.45.159.249:59001/cga/v2/api/admin/",
target: "http://113.45.159.249:59001/cga/v2/api/admin/",
changeOrigin: true,
pathRewrite: {
["^" + process.env.VUE_APP_BASE_API]: "",

Loading…
Cancel
Save