From 4c44ccbdcbe25de7dc0725bf53f1290fba10edf7 Mon Sep 17 00:00:00 2001
From: WXL (wul) <wl_5969728@163.com>
Date: 星期五, 05 九月 2025 11:33:41 +0800
Subject: [PATCH] 测试完成
---
src/views/followvisit/discharge/index.vue | 346 ++++++++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 325 insertions(+), 21 deletions(-)
diff --git a/src/views/followvisit/discharge/index.vue b/src/views/followvisit/discharge/index.vue
index de4b41e..38d9555 100644
--- a/src/views/followvisit/discharge/index.vue
+++ b/src/views/followvisit/discharge/index.vue
@@ -120,6 +120,18 @@
placeholder="璇疯緭鍏ラ殢璁夸汉鍛�"
></el-input>
</el-form-item>
+ <el-form-item label="涓绘不鍖荤敓" prop="drname">
+ <el-input
+ v-model="topqueryParams.drname"
+ placeholder="璇疯緭鍏ヤ富娌诲尰鐢�"
+ ></el-input>
+ </el-form-item>
+ <el-form-item label="缁忕鍖荤敓" prop="managementDoctor">
+ <el-input
+ v-model="topqueryParams.managementDoctor"
+ placeholder="璇疯緭鍏ヤ富娌诲尰鐢�"
+ ></el-input>
+ </el-form-item>
<el-form-item label="鎮h�呰寖鍥�" prop="status">
<el-cascader
@@ -257,9 +269,32 @@
</div>
</div>
</el-col>
+ <el-col :span="1.5">
+ <div class="documentf">
+ <div class="document">
+ <el-tooltip
+ content="璇峰厛閫変腑鏈嶅姟"
+ placement="top"
+ :disabled="!multiple"
+ >
+ <div class="tooltip-wrapper">
+ <el-button
+ type="primary"
+ :disabled="multiple"
+ class="purple-button"
+ @click="scoreDialogVisible = true"
+ >
+ 婊℃剰搴﹁皟鏌�
+ </el-button>
+ </div>
+ </el-tooltip>
+ </div>
+ </div>
+ </el-col>
</el-row>
<el-table
v-loading="loading"
+ ref="userform"
:data="userList"
:row-class-name="tableRowClassName"
@selection-change="handleSelectionChange"
@@ -355,7 +390,6 @@
prop="suggest"
width="120"
>
-
<template slot-scope="scope">
<dict-tag
:options="dict.type.sys_suggest"
@@ -409,6 +443,13 @@
align="center"
key="updateBy"
prop="updateBy"
+ width="120"
+ />
+ <el-table-column
+ label="缁忕鍖荤敓"
+ align="center"
+ key="managementDoctor"
+ prop="managementDoctor"
width="120"
/>
<el-table-column
@@ -604,6 +645,181 @@
@pagination="getList"
/>
</el-row>
+ <!-- 婊℃剰搴﹀脊妗� -->
+ <el-dialog
+ title="闅忚婊℃剰搴﹁瘎鍒�"
+ :visible.sync="scoreDialogVisible"
+ width="80%"
+ :close-on-click-modal="false"
+ >
+ <el-table :data="selectedRows" border style="width: 100%">
+ <el-table-column
+ label="濮撳悕"
+ width="100"
+ align="center"
+ prop="sendname"
+ />
+ <el-table-column
+ label="浠诲姟鍚嶇О"
+ width="180"
+ align="center"
+ prop="taskName"
+ />
+ <!-- 鏂板璇勫垎鍒� -->
+ <el-table-column
+ label="鐪熷疄鎬�(20)"
+ align="center"
+ key="authenticity"
+ prop="authenticity"
+ width="150"
+ >
+ <template slot-scope="scope">
+ <el-input-number
+ v-model="scope.row.authenticity"
+ :min="0"
+ :max="20"
+ :step="1"
+ size="small"
+ />
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="涓�鍛ㄥ唴瀹屾垚(20)"
+ align="center"
+ key="weekFinish"
+ prop="weekFinish"
+ width="150"
+ >
+ <template slot-scope="scope">
+ <el-input-number
+ v-model="scope.row.weekFinish"
+ :min="0"
+ :max="20"
+ :step="1"
+ size="small"
+ />
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="瑙勮寖鎬�(10)"
+ align="center"
+ key="standard"
+ prop="standard"
+ width="150"
+ >
+ <template slot-scope="scope">
+ <el-input-number
+ v-model="scope.row.standard"
+ :min="0"
+ :max="10"
+ :step="1"
+ size="small"
+ />
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鍙婃椂鎬�(10)"
+ align="center"
+ key="timeliness"
+ prop="timeliness"
+ width="150"
+ >
+ <template slot-scope="scope">
+ <el-input-number
+ v-model="scope.row.timeliness"
+ :min="0"
+ :max="10"
+ :step="1"
+ size="small"
+ />
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="瀹f暀鎯呭喌(10)"
+ align="center"
+ key="library"
+ prop="library"
+ width="150"
+ >
+ <template slot-scope="scope">
+ <el-input-number
+ v-model="scope.row.library"
+ :min="0"
+ :max="10"
+ :step="1"
+ size="small"
+ />
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鐜婊℃剰搴�(10)"
+ align="center"
+ key="environment"
+ prop="environment"
+ width="150"
+ >
+ <template slot-scope="scope">
+ <el-input-number
+ v-model="scope.row.environment"
+ :min="0"
+ :max="10"
+ :step="1"
+ size="small"
+ />
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鍖荤敓婊℃剰搴�(10)"
+ align="center"
+ key="doctorSatisfaction"
+ prop="doctorSatisfaction"
+ width="150"
+ >
+ <template slot-scope="scope">
+ <el-input-number
+ v-model="scope.row.doctorSatisfaction"
+ :min="0"
+ :max="10"
+ :step="1"
+ size="small"
+ />
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鎶ゅ+婊℃剰搴�(10)"
+ align="center"
+ key="nurseSatisfaction"
+ prop="nurseSatisfaction"
+ width="150"
+ >
+ <template slot-scope="scope">
+ <el-input-number
+ v-model="scope.row.nurseSatisfaction"
+ :min="0"
+ :max="10"
+ :step="1"
+ size="small"
+ />
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鎬诲垎"
+ align="center"
+ key="total"
+ prop="total"
+ fixed="right"
+ >
+ <template slot-scope="scope">
+ <span>{{ calculateTotal(scope.row) }}</span>
+ </template>
+ </el-table-column>
+ </el-table>
+
+ <div slot="footer" class="dialog-footer">
+ <el-button @click="scoreDialogVisible = false">鍙栨秷</el-button>
+ <el-button type="primary" @click="saveScores">淇濆瓨</el-button>
+ </div>
+ </el-dialog>
<!-- 娣诲姞鎴栦慨鏀瑰奖鍍忛殢璁垮璇濇 -->
<el-dialog
:title="amendtag ? '淇敼鎮h�呬俊鎭�' : '鏂板鎮h��'"
@@ -643,7 +859,17 @@
</el-form-item>
</el-col>
</el-row>
-
+ <el-row >
+ <el-col :span="8">
+ <el-form-item label="杩囨护鍖荤敓" width="100" prop="filterDrname">
+ <el-input
+ v-model="form.filterDrname"
+ placeholder="璇疯緭鍏ュ尰鐢熷鍚�"
+ maxlength="30"
+ />
+ </el-form-item>
+ </el-col>
+ </el-row>
<el-row>
<el-col :span="24">
<el-form-item label="杩囨护鍘熷洜">
@@ -824,6 +1050,7 @@
buidegetTasklist,
addserviceSubtask,
query360PatInfo,
+ addsatisfaction,
} from "@/api/AiCentre/index";
import { alterpatient, particularpatient } from "@/api/patient/homepage";
import Treeselect from "@riophae/vue-treeselect";
@@ -882,11 +1109,10 @@
radios: [],
previewtype: 2, //棰勮褰卞儚闅忚绫诲瀷
total: 0, // 鎬绘潯鏁�
- ImportQuantity: 999, //瀵煎奖鍍忛殢璁挎暟閲�
- //棰勮褰卞儚闅忚淇℃伅
- previewvalue: {
- username: "杩欎釜鍖荤敓瀵逛綘鎬庝箞鏍�",
- },
+ // 婊℃剰搴﹁皟鏌ユ暟鎹�
+ scoreDialogVisible: false,
+ selectedRows: [],
+
value: [],
list: [],
@@ -928,10 +1154,10 @@
name: "寰呴殢璁�",
value: 0,
},
- {
- name: "宸插彂閫�",
- value: 0,
- },
+ // {
+ // name: "宸插彂閫�",
+ // value: 0,
+ // },
// {
// name: "琛ㄥ崟宸插彂閫�",
@@ -980,7 +1206,8 @@
sendstate: 2,
sort: 2, //0 鍑洪櫌鏃堕棿(姝e簭) 1 鍑洪櫌鏃堕棿(鍊掑簭) 2 鍙戦�佹椂闂�(姝e簭) 3 鍙戦�佹椂闂�(鍊掑簭)
serviceType: 2,
- searchscope: 3,visitCount: 1,
+ searchscope: 3,
+ visitCount: 1,
scopetype: [],
leaveldeptcodes: [],
leavehospitaldistrictcodes: [],
@@ -1151,7 +1378,7 @@
this.ycvalue = response.rows[0].yc;
this.cardlist[2].value = response.rows[0].fssb;
this.cardlist[3].value = response.rows[0].dsf;
- this.cardlist[4].value = response.rows[0].yfs2;
+ // this.cardlist[4].value = response.rows[0].yfs2;
this.yfsvalue = response.rows[0].yfs;
}
this.loading = false;
@@ -1181,8 +1408,8 @@
});
},
affiliation() {
- this.topqueryParams.drcode = store.getters.hisUserId;
- this.topqueryParams.nurseId = store.getters.hisUserId;
+
+ this.topqueryParams.managementDoctor = store.getters.hisUserId;
this.getList(1);
},
onthatday() {
@@ -1227,7 +1454,7 @@
this.ycvalue = response.rows[0].yc;
this.cardlist[3].value = response.rows[0].fssb;
this.cardlist[4].value = response.rows[0].dsf;
- this.cardlist[5].value = response.rows[0].yfs2;
+ // this.cardlist[5].value = response.rows[0].yfs2;
this.yfsvalue = response.rows[0].yfs;
}
this.loading = false;
@@ -1360,11 +1587,64 @@
};
this.handleQuery(1);
},
- // 澶氶�夋閫変腑鏁版嵁
- handleSelectionChange(selection) {
- this.ids = selection.map((item) => item.userId);
- this.single = selection.length != 1;
- this.multiple = !selection.length;
+ handleSelectionChange(rows) {
+ this.selectedRows = rows.map((row) => {
+ // 鍒濆鍖栬瘎鍒嗗瓧娈�
+ return {
+ ...row,
+ authenticity: row.authenticity || 0,
+ weekFinish: row.weekFinish || 0,
+ standard: row.standard || 0,
+ timeliness: row.timeliness || 0,
+ library: row.library || 0,
+ environment: row.environment || 0,
+ doctorSatisfaction: row.doctorSatisfaction || 0,
+ nurseSatisfaction: row.nurseSatisfaction || 0,
+ };
+ });
+
+ if (this.selectedRows.length > 0) {
+ this.multiple = false;
+ } else {
+ this.multiple = true;
+ }
+ },
+
+ // 璁$畻鎬诲垎
+ calculateTotal(row) {
+ return (
+ (row.authenticity || 0) +
+ (row.weekFinish || 0) +
+ (row.standard || 0) +
+ (row.timeliness || 0) +
+ (row.library || 0) +
+ (row.environment || 0) +
+ (row.doctorSatisfaction || 0) +
+ (row.nurseSatisfaction || 0)
+ );
+ },
+
+ // 淇濆瓨璇勫垎
+ saveScores() {
+ this.selectedRows.forEach((item) => {
+ item.createBy = null;
+ item.patName = item.sendname;
+ item.hospitaldistrictname = item.leavehospitaldistrictname;
+ });
+ addsatisfaction(this.selectedRows).then((res) => {
+ if (res.code == 200) {
+ this.$message.success("璇勫垎淇濆瓨鎴愬姛");
+ this.scoreDialogVisible = false;
+ this.selectedRows=[];
+ this.$refs.userform.clearSelection()
+ } else {
+ this.$modal.msgWarning("璇勫垎淇濆瓨澶辫触");
+ this.scoreDialogVisible = false;
+ this.selectedRows=[];
+ this.$refs.userform.clearSelection()
+ }
+ });
+ // 杩欓噷鍙互娣诲姞淇濆瓨閫昏緫锛屽璋冪敤API淇濆瓨璇勫垎
},
//鍒犻櫎閫夐」
handleClose(tag) {
@@ -1398,6 +1678,8 @@
},
//鎮h��360璺宠浆
gettoken360(sfzh, drcode, drname) {
+ this.$modal.msgWarning('360鍔熻兘鏆傛湭寮�閫�');
+ return; // 闃绘鍚庣画浠g爜鎵ц
this.postData.YeWuXX.BingRenXX.ZhengJianHM = sfzh;
if (this.postData.XiaoXiTou.ZuHuMC == "涓芥按甯備腑鍖婚櫌") {
this.postData.YeWuXX.YongHuXX.YongHuID = "1400398571877961728";
@@ -1572,6 +1854,7 @@
handleUpdate(row) {
particularpatient(row.patid).then((response) => {
this.form = response.data;
+ this.form.filterDrname = store.getters.nickName;
});
this.amendtag = true;
this.Labelchange = true;
@@ -1798,7 +2081,28 @@
font-size: 24px;
}
}
+.purple-button {
+ background-color: #7e22ce;
+ border-color: #7e22ce;
+ color: #fff;
+}
+.purple-button:hover,
+.purple-button:focus {
+ background-color: #9333ea;
+ border-color: #9333ea;
+}
+
+.purple-button:active {
+ background-color: #6b21a8;
+ border-color: #6b21a8;
+}
+
+.purple-button.is-disabled {
+ background-color: #d8b4fe;
+ border-color: #d8b4fe;
+ opacity: 1; /* 淇濇寔绂佺敤鐘舵�侀�忔槑搴� */
+}
// 閫夐」瀛椾綋鏀惧ぇ
// ::v-deep.el-checkbox-group {
// span {
--
Gitblit v1.9.3