From 08881d6b6412822d5035f63a0775ca1f213c8668 Mon Sep 17 00:00:00 2001
From: WXL (wul) <wl_5969728@163.com>
Date: 星期一, 20 十月 2025 10:17:22 +0800
Subject: [PATCH] 测试完成
---
src/views/patient/patient/behospitalized.vue | 584 ++++++++++++++++++++++++++++-----------------------------
1 files changed, 286 insertions(+), 298 deletions(-)
diff --git a/src/views/patient/patient/behospitalized.vue b/src/views/patient/patient/behospitalized.vue
index 537d1f2..a368496 100644
--- a/src/views/patient/patient/behospitalized.vue
+++ b/src/views/patient/patient/behospitalized.vue
@@ -13,69 +13,58 @@
>
<el-form-item label="鎮h�呭鍚�" prop="name">
<el-input
- v-model="queryParams.name"
+ v-model="queryParams.patname"
placeholder="璇疯緭鍏ュ鍚�"
clearable
- style="width: 200px"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
- <el-form-item label="鎮h�呬綇闄㈠彿" prop="idcardno">
+ <el-form-item label="涓绘不鍖荤敓" prop="name">
<el-input
- v-model="queryParams.idcardno"
+ v-model="queryParams.drname"
+ placeholder="璇疯緭鍏ュ鍚�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="璐d换鎶ゅ+" prop="name">
+ <el-input
+ v-model="queryParams.nurseName"
+ placeholder="璇疯緭鍏ュ鍚�"
+ clearable
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ <el-form-item label="浣忛櫌鍙�" prop="inhospno">
+ <el-input
+ v-model="queryParams.inhospno"
placeholder="璇疯緭鍏ユ偅鑰呯紪鍙�"
clearable
- style="width: 250px"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
- <el-form-item label="鎶ょ悊绛夌骇" prop="tagId">
- <el-select v-model="queryParams.Patientid" placeholder="璇烽�夋嫨">
- <el-option
- v-for="dict in dict.type.nursinggrade"
- :key="dict.value"
- :label="dict.label"
- :value="dict.value"
- >
- </el-option>
- </el-select>
+ <el-form-item label="鎮h�呰寖鍥�" prop="status">
+ <el-cascader
+ v-model="queryParams.scopetype"
+ placeholder="榛樿鍏ㄩ儴绉戝"
+ :options="sourcetype"
+ :props="{ expandTrigger: 'hover' }"
+ @change="handleChange"
+ ></el-cascader>
</el-form-item>
- <el-form-item label="绉戝/鐥呭尯" prop="tagId">
- <el-select v-model="queryParams.Patientid" placeholder="璇烽�夋嫨">
- <el-option
- v-for="dict in dict.type.nursinggrade"
- :key="dict.value"
- :label="dict.label"
- :value="dict.value"
- >
- </el-option>
- </el-select>
- </el-form-item>
- <el-form-item label="鍏ラ櫌鏃堕棿" prop="entrytime">
+ <el-form-item label=" 鍏ラ櫌鏃ユ湡 " prop="createTime">
<el-date-picker
- v-model="queryParams.entrytime"
+ v-model="dateRange"
+ style="width: 240px"
+ value-format="yyyy-MM-dd"
type="daterange"
- range-separator="鑷�"
+ range-separator="-"
start-placeholder="寮�濮嬫棩鏈�"
end-placeholder="缁撴潫鏃ユ湡"
- >
- </el-date-picker>
+ ></el-date-picker>
</el-form-item>
- <el-form-item
- label="鍑洪櫌鏃堕棿"
- prop="departuretime
-"
- >
- <el-date-picker
- v-model="queryParams.departuretime"
- type="daterange"
- range-separator="鑷�"
- start-placeholder="寮�濮嬫棩鏈�"
- end-placeholder="缁撴潫鏃ユ湡"
- >
- </el-date-picker>
- </el-form-item>
+
<el-row>
<el-form-item>
<el-button
@@ -96,7 +85,7 @@
</el-form>
<el-row :gutter="10" class="mb8">
- <el-col :span="1.5">
+ <!-- <el-col :span="1.5">
<el-button
type="primary"
plain
@@ -106,8 +95,8 @@
v-hasPermi="['system:user:add']"
>鏂板</el-button
>
- </el-col>
- <el-col :span="1.5">
+ </el-col> -->
+ <!-- <el-col :span="1.5">
<el-button
type="success"
plain
@@ -118,7 +107,7 @@
v-hasPermi="['system:user:edit']"
>淇敼</el-button
>
- </el-col>
+ </el-col> -->
<el-col :span="1.5">
<el-button
type="danger"
@@ -131,65 +120,74 @@
>鍒犻櫎</el-button
>
</el-col>
- <el-col :span="19">
- <div class="documentf">
- <div class="document">
- <el-button
- type="info"
- plain
- icon="el-icon-upload2"
- size="medium"
- @click="handleImport"
- v-hasPermi="['system:user:import']"
- >瀵煎叆</el-button
- >
- </div>
- <div class="document">
- <el-button
- type="warning"
- plain
- icon="el-icon-download"
- size="medium"
- @click="handleExport"
- v-hasPermi="['system:user:export']"
- >瀵煎嚭</el-button
- >
- </div>
- </div>
- </el-col>
+
<!-- <el-col :span="1.5"> </el-col> -->
</el-row>
<el-table
v-loading="loading"
:data="userList"
+ height="808"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="50" align="center" />
- <el-table-column
+ <!-- <el-table-column
label="搴忓彿"
+ fixed
align="center"
- key="patid"
- prop="patid"
- />
+ key="id"
+ prop="id"
+ /> -->
<el-table-column
- label="搴婁綅鍙�"
+ label="鍏ラ櫌鏃ユ湡"
align="center"
- key="Patientnumber"
- prop="Patientnumber"
- />
+ key="starttime"
+ prop="starttime"
+ width="160"
+ >
+ <template slot-scope="scope">
+ <span>{{ formatTime(scope.row.starttime) }}</span>
+ </template>
+ </el-table-column>
+
<el-table-column
label="浣忛櫌鍙�"
align="center"
- key="Patientnumber"
- prop="Patientnumber"
+ key="inhospno"
+ prop="inhospno"
+ width="120"
/>
+
<el-table-column
- label="鎮h�呭鍚�"
+ label="濮撳悕"
+ width="100"
align="center"
- key="name"
- prop="name"
- />
- <el-table-column label="鎬у埆" align="center" key="sex" prop="sex">
+ key="patname"
+ prop="patname"
+ >
+ <template slot-scope="scope">
+ <el-button
+ size="medium"
+ type="text"
+ @click="
+ gettoken360(
+ scope.row.idcardno,
+ scope.row.drcode,
+ scope.row.drname
+ )
+ "
+ ><span class="button-textsc">{{
+ scope.row.patname
+ }}</span></el-button
+ >
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鎬у埆"
+ width="100"
+ align="center"
+ key="sex"
+ prop="sex"
+ >
<template slot-scope="scope">
<span>{{ scope.row.sex == 1 ? "鐢�" : "濂�" }}</span>
</template>
@@ -202,96 +200,61 @@
width="120"
/>
<el-table-column
- label="璐圭敤"
+ label="鑱旂郴鐢佃瘽"
align="center"
- key="telephone"
- prop="telephone"
+ key="telcode"
+ prop="telcode"
width="120"
/>
- <el-table-column
- label="鍏ョ鏃堕棿"
- align="center"
- key="archivetime"
- prop="archivetime"
- width="160"
- >
- <template slot-scope="scope">
- <span>{{ parseTime(scope.row.createTime) }}</span>
- </template>
- </el-table-column>
- <el-table-column
- label="鍑洪櫌鏃堕棿"
- align="center"
- key="archivetime"
- prop="archivetime"
- width="160"
- >
- <template slot-scope="scope">
- <span>{{ parseTime(scope.row.createTime) }}</span>
- </template>
- </el-table-column>
<el-table-column
- label="鎶ょ悊绛夌骇"
+ label="鍏ラ櫌璇婃柇"
align="center"
- key="idcardtype"
- prop="idcardtype"
- width="120"
- />
- <el-table-column
- label="鐥呮儏鐘舵��"
- align="center"
- key="idcardno"
- prop="idcardno"
+ key="diagname"
+ prop="diagname"
width="190"
/>
<el-table-column
- label="涓讳换鍖诲笀"
+ label="绉戝"
align="center"
- key="telcode"
- prop="telcode"
+ key="deptname"
+ prop="deptname"
+ width="180"
+ />
+ <el-table-column
+ label="鐥呭尯"
+ align="center"
+ key="leavehospitaldistrictname"
+ prop="leavehospitaldistrictname"
+ width="180"
+ />
+ <el-table-column
+ label="搴婁綅鍙�"
+ align="center"
+ key="bedNo"
+ prop="bedNo"
width="120"
/>
<el-table-column
- label="涓绘不鍖诲笀"
+ label="涓绘不鍖荤敓"
align="center"
- key="telcode"
- prop="telcode"
+ key="drname"
+ prop="drname"
width="120"
/>
<el-table-column
- label="浣忛櫌鍖诲笀"
+ label="璐d换鎶ゅ+"
align="center"
- key="telcode"
- prop="telcode"
+ key="nurseName"
+ prop="nurseName"
width="120"
/>
- <el-table-column
- label="浣忛櫌鐥呭尯"
- align="center"
- key="telcode"
- prop="telcode"
- width="120"
- />
- <el-table-column
- label="鍏ラ櫌璇婃柇"
- align="center"
- key="telcode"
- prop="telcode"
- width="120"
- />
- <el-table-column
- label="鍑洪櫌灏忕粨"
- align="center"
- key="telcode"
- prop="telcode"
- width="120"
- />
+
<el-table-column
label="鎿嶄綔"
+ fixed="right"
align="center"
- width="160"
class-name="small-padding fixed-width"
>
<template slot-scope="scope">
@@ -304,18 +267,8 @@
query: { id: scope.row.patid },
})
"
- v-hasPermi="['system:user:edit']"
><span class="button-textsc"
><i class="el-icon-zoom-in"></i>鏌ョ湅</span
- ></el-button
- >
- <el-button
- size="medium"
- type="text"
- @click="handleUpdate(scope.row)"
- v-hasPermi="['system:user:edit']"
- ><span class="button-textxg"
- ><i class="el-icon-edit"></i>淇敼</span
></el-button
>
</template>
@@ -331,125 +284,6 @@
/>
</el-col>
</el-row>
-
- <!-- 娣诲姞鎴栦慨鏀圭敤鎴烽厤缃璇濇 -->
- <el-dialog
- :title="amendtag ? '淇敼鎮h�呬俊鎭�' : '鏂板鎮h��'"
- :visible.sync="Labelchange"
- width="900px"
- >
- <el-form ref="form" :model="form" :rules="rules" label-width="100px">
- <el-row>
- <el-col :span="12">
- <el-form-item label="濮撳悕" prop="name">
- <el-input
- v-model="form.name"
- placeholder="璇疯緭鍏ュ鍚�"
- maxlength="30"
- />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鎬у埆" prop="sex">
- <el-select v-model="form.sex" placeholder="璇烽�夋嫨鎬у埆">
- <el-option
- v-for="dict in dict.type.sys_user_sex"
- :key="dict.value"
- :label="dict.label"
- :value="dict.value"
- ></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="12">
- <el-form-item label="璇佷欢绫诲瀷" prop="idcardtype">
- <el-select v-model="form.idcardtype" placeholder="璇烽�夋嫨鎬у埆">
- <el-option
- v-for="item in paperstypes"
- :key="item.papersname"
- :label="item.papersname"
- :value="item.papersname"
- ></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="璇佷欢鍙�" prop="idcardno">
- <el-input
- v-model="form.idcardno"
- placeholder="璇疯緭鍏ヨ瘉浠跺彿"
- maxlength="50"
- />
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="12">
- <el-form-item label="鏈汉鎵嬫満鍙�" prop="telcode">
- <el-input
- v-model="form.telcode"
- placeholder="璇疯緭鍏ユ墜鏈哄彿"
- maxlength="30"
- />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="浜插睘鎵嬫満鍙�" prop="relativetelcode">
- <el-input
- v-model="form.relativetelcode"
- placeholder="璇疯緭鍏ヤ翰灞炴墜鏈哄彿"
- type="password"
- maxlength="20"
- show-password
- />
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="12">
- <el-form-item label="骞撮緞" prop="age">
- <el-input
- v-model="form.age"
- placeholder="璇疯緭鍏ュ勾榫�"
- maxlength="30"
- />
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="鎮h�呮爣绛�">
- <!-- <el-select v-model="form.sex" placeholder="璇烽�夋嫨"> -->
- <el-select v-model="form.tagList" multiple placeholder="璇烽�夋嫨">
- <el-option
- v-for="item in optionstag"
- :key="item.tagid"
- :label="item.tagname"
- :value="item.tagid"
- >
- </el-option>
- </el-select>
- <!-- </el-select> -->
- </el-form-item>
- </el-col>
- </el-row>
- <el-row>
- <el-col :span="24">
- <el-form-item label="澶囨敞">
- <el-input
- v-model="form.remark"
- type="textarea"
- placeholder="璇疯緭鍏ュ唴瀹�"
- ></el-input>
- </el-form-item>
- </el-col>
- </el-row>
- </el-form>
- <div slot="footer" class="dialog-footer">
- <el-button type="primary" @click="submitForm">纭� 瀹�</el-button>
- <el-button @click="cancel">鍙� 娑�</el-button>
- </div>
- </el-dialog>
<!-- 鐢ㄦ埛瀵煎叆瀵硅瘽妗� -->
<el-dialog
@@ -500,8 +334,10 @@
<div class="uploading" v-else-if="dractive == 2">
<el-table :data="uploadingData" style="width: 100%">
<el-table-column prop="serial" label="搴忓彿"> </el-table-column>
- <el-table-column prop="name" label="濮撳悕"> </el-table-column>
- <el-table-column prop="sex" label="鎬у埆"> </el-table-column>
+ <el-table-column prop="name" label="濮撳悕" width="100">
+ </el-table-column>
+ <el-table-column prop="sex" label="鎬у埆" width="100">
+ </el-table-column>
<el-table-column prop="certificate" label="璇佷欢绫诲瀷">
</el-table-column>
<el-table-column prop="certificatenum" label="璇佷欢鍙风爜">
@@ -544,7 +380,9 @@
<script>
import { delUser } from "@/api/system/user";
+import formatTime from "@/filters/index";
+import { listpatient } from "@/api/patient/record";
import {
messagelistpatient,
alterpatient,
@@ -554,10 +392,15 @@
Exporterrorpatient,
toleadpatient,
} from "@/api/patient/homepage";
+
import { listtag } from "@/api/system/label";
import { getToken } from "@/utils/auth";
import Treeselect from "@riophae/vue-treeselect";
+import { listDept } from "@/api/system/dept";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
+import { query360PatInfo } from "@/api/AiCentre/index";
+
+import store from "@/store";
export default {
name: "behospitalized",
@@ -598,6 +441,73 @@
{ papersname: "涓浗娓境灞呮皯韬唤璇�" },
{ papersname: "涓浗鍙版咕灞呮皯韬唤璇�" },
],
+ source: [
+ {
+ value: 0,
+ label: "鎵�灞炴偅鑰�",
+ },
+ {
+ value: 1,
+ label: "绉戝鎮h��",
+ },
+ {
+ value: 2,
+ label: "鐥呭尯鎮h��",
+ },
+ ],
+ postData: {
+ XiaoXiTou: {
+ FaSongFCSJC: "ZJHES",
+ FaSongJGID: localStorage.getItem("orgid"),
+ FaSongJGMC: localStorage.getItem("orgname"),
+ FaSongSJ: "2025-01-09聽17:29:36",
+ FaSongXTJC: "SUIFANGXT",
+ FaSongXTMC: "闅忚绯荤粺",
+ XiaoXiID: "5FA92AFB-9833-4608-87C7-F56A654AC171",
+ XiaoXiLX: "SC_LC_360STCX",
+ XiaoXiMC: "360聽瑙嗗浘鏌ヨ",
+ ZuHuID: localStorage.getItem("ZuHuID"),
+ ZuHuMC: localStorage.getItem("orgname"),
+ },
+ YeWuXX: {
+ BingRenXX: {
+ ZhengJianHM: "",
+ ZhengJianLXDM: "01",
+ ZhengJianLXMC: "灞呮皯韬唤璇�",
+ ZuZhiJGID: localStorage.getItem("orgid"),
+ ZuZhiJGMC: localStorage.getItem("orgname"),
+ },
+ YongHuXX: {
+ XiTongID: "SUIFANGXT",
+ XiTongMC: "闅忚绯荤粺",
+ YongHuID: localStorage.getItem("YongHuID"),
+ YongHuXM: localStorage.getItem("YongHuXM"),
+ ZuZhiJGID: localStorage.getItem("orgid"),
+ ZuZhiJGMC: localStorage.getItem("orgname"),
+ idp: "lyra",
+ },
+ },
+ },
+ sourcetype: [
+ {
+ value: 1,
+ label: "绉戝",
+ children: [],
+ },
+ {
+ value: 2,
+ label: "鐥呭尯",
+ children: [],
+ },
+ {
+ value: 3,
+ label: "鍏ㄩ儴绉戝",
+ },
+ {
+ value: 4,
+ label: "鍏ㄩ儴鐥呭尯",
+ },
+ ],
// 琛ㄥ崟鍙傛暟
form: {
name: "",
@@ -620,8 +530,8 @@
optionstag: [], //鏍囩鍒楄〃
Patientrange: [
{
- name: "鍏ㄩ儴",
- id: 1,
+ name: "鍏ㄩ儴绉戝",
+ id: 999,
},
{
name: "褰撳墠绉戝",
@@ -651,11 +561,11 @@
queryParams: {
pageNum: 1,
pageSize: 10,
- idcardno: undefined,
- name: undefined,
- status: undefined,
- tagIds: undefined,
- telcode: undefined,
+ cry: 0,
+ searchscope: 3,
+ scopetype: [],
+ leaveldeptcodes: [],
+ leavehospitaldistrictcodes: [],
},
// 琛ㄥ崟鏍¢獙
rules: {
@@ -712,19 +622,65 @@
},
},
created() {
+ this.sourcetype[0].children = store.getters.belongDepts.map((dept) => {
+ return {
+ label: dept.deptName,
+ value: dept.deptCode,
+ };
+ });
+ this.sourcetype[1].children = store.getters.belongWards.map((dept) => {
+ return {
+ label: dept.districtName,
+ value: dept.districtCode,
+ };
+ });
+ this.queryParams.leaveldeptcodes = store.getters.belongDepts.map(
+ (obj) => obj.deptCode
+ );
this.getList();
+ // this.listDept();
this.gettabList();
},
methods: {
/** 鏌ヨ鎮h�呭垪琛� */
getList() {
this.loading = true;
- messagelistpatient(this.queryParams).then((response) => {
+ listpatient(this.queryParams).then((response) => {
console.log(response);
this.userList = response.rows;
this.total = response.total;
this.loading = false;
});
+ },
+ listDept() {
+ listDept(this.queryParams).then((res) => {
+ this.deptList = res.data;
+ console.log(this.deptList, "this.deptList");
+ });
+ },
+ // 鎮h�呰寖鍥村鐞�
+ handleChange(value) {
+ let type = value[0];
+ let code = value.slice(-1)[0];
+ this.queryParams.leavehospitaldistrictcodes = [];
+ this.queryParams.leaveldeptcodes = [];
+
+ if (type == 1) {
+ this.queryParams.leaveldeptcodes.push(code);
+ this.queryParams.leavehospitaldistrictcodes = [];
+ this.queryParams.searchscope = 1;
+ } else if (type == 3) {
+ this.queryParams.leaveldeptcodes = store.getters.belongDepts.map(
+ (obj) => obj.deptCode
+ );
+ this.queryParams.searchscope = 3;
+ this.queryParams.leavehospitaldistrictcodes = [];
+ } else if (type == 4) {
+ this.queryParams.leaveldeptcodes = [];
+ this.queryParams.leavehospitaldistrictcodes =
+ store.getters.belongWards.map((obj) => obj.districtCode);
+ this.queryParams.searchscope = 4;
+ }
},
/** 鏌ヨ鏍囩鍒楄〃 */
gettabList() {
@@ -760,7 +716,21 @@
this.queryParams.deptId = data.id;
this.handleQuery();
},
+ //鎮h��360璺宠浆
+ gettoken360(sfzh, drcode, drname) {
+ // this.$modal.msgWarning('360鍔熻兘鏆傛湭寮�閫�');
+ this.postData.YeWuXX.BingRenXX.ZhengJianHM = sfzh;
+
+ query360PatInfo(this.postData).then((res) => {
+ if (res.data.url) {
+ window.open(res.data.url, "_blank");
+ // this.linkUrl = res.data.url;
+ } else {
+ this.$modal.msgWarning("360鏌ヨ鏃犵粨鏋�");
+ }
+ });
+ },
// 鍙栨秷鎸夐挳
cancel() {
this.Labelchange = false;
@@ -782,6 +752,13 @@
},
/** 鎼滅储鎸夐挳鎿嶄綔 */
handleQuery() {
+ if (this.dateRange) {
+ this.queryParams.startInHospTime = this.dateRange[0];
+ this.queryParams.endInHospTime = this.dateRange[1];
+ } else {
+ this.queryParams.startInHospTime = "";
+ this.queryParams.endInHospTime = "";
+ }
this.queryParams.pageNum = 1;
this.getList();
},
@@ -789,7 +766,18 @@
resetQuery() {
this.dateRange = [];
this.resetForm("queryForm");
- this.$refs.tree.setCurrentKey(null);
+ this.queryParams = {
+ pageNum: 1,
+ pageSize: 10,
+ cry: 0,
+ searchscope: 3,
+ scopetype: [],
+ leaveldeptcodes: [],
+ leavehospitaldistrictcodes: [],
+ };
+ this.queryParams.leaveldeptcodes = store.getters.belongDepts.map(
+ (obj) => obj.deptCode
+ );
this.handleQuery();
},
// 澶氶�夋閫変腑鏁版嵁
@@ -875,7 +863,7 @@
/** 涓嬭浇妯℃澘鎿嶄綔 */
importTemplate() {
this.download(
- "system/user/importTemplate",
+ "smartor/import/getImportPatTemplate",
{},
`user_template_${new Date().getTime()}.xlsx`
);
@@ -960,6 +948,6 @@
}
}
.button-textsc {
- color: #28cfe6;
+ color: #3664D9;
}
</style>
--
Gitblit v1.9.3