From ad5e7a527167a86ca7969e874df9950a5c4e2ff9 Mon Sep 17 00:00:00 2001
From: yxh <172933527@qq.com>
Date: 星期五, 30 十月 2026 09:57:41 +0800
Subject: [PATCH] 器官收费
---
src/views/project/statistics/chargeStatistics/index.vue | 199 +++++++++++++++++++++++++++----------------------
1 files changed, 109 insertions(+), 90 deletions(-)
diff --git a/src/views/project/statistics/chargeStatistics/index.vue b/src/views/project/statistics/chargeStatistics/index.vue
index 3431cd4..7503d9d 100644
--- a/src/views/project/statistics/chargeStatistics/index.vue
+++ b/src/views/project/statistics/chargeStatistics/index.vue
@@ -6,33 +6,35 @@
:model="queryParams"
ref="queryForm"
:inline="true"
- label-width="70px"
+ v-show="showSearch"
+ label-width="80px"
>
<el-row :gutter="8">
<el-col :span="8">
- <el-form-item label="鏈堜唤鑼冨洿">
+ <el-form-item label="妗堜緥鏃堕棿">
<el-date-picker
- style="width: 100%"
v-model="selecttime"
- type="monthrange"
+ type="daterange"
range-separator="鑷�"
- start-placeholder="寮�濮嬫湀浠�"
- end-placeholder="缁撴潫鏈堜唤"
+ start-placeholder="寮�濮嬫棩鏈�"
+ end-placeholder="缁撴潫鏃ユ湡"
value-format="yyyy-MM-dd"
+ style="width: 100%"
@change="getTimeList"
- >
- </el-date-picker>
- </el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="鍖婚櫌鍚嶇О">
- <org-selecter
- ref="orgSelecter"
- :org-type="'4'"
- v-model="queryParams.pahospitalno"
/>
</el-form-item>
- </el-col>
+ </el-col>
+ <el-col :span="7">
+ <el-form-item label="鍖婚櫌鍚嶇О">
+ <el-input
+ v-model="queryParams.pahospitalname"
+ placeholder="璇疯緭鍏ュ尰闄㈠悕绉�"
+ clearable
+ size="small"
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+ </el-col>
<el-col :span="6">
<el-form-item>
<el-button
@@ -50,7 +52,24 @@
</el-row>
</el-form>
- <!--<el-table v-loading="loading" border :data="donatebaseinfoList"> -->
+ <el-row :gutter="10" class="mb8">
+ <el-col :span="1.5">
+ <el-button
+ type="warning"
+ plain
+ icon="el-icon-download"
+ size="mini"
+ :loading="exportLoading"
+ @click="handleExport"
+ >瀵煎嚭</el-button
+ >
+ </el-col>
+ <right-toolbar
+ :showSearch.sync="showSearch"
+ @queryTable="getList"
+ ></right-toolbar>
+ </el-row>
+
<el-table
v-loading="loading"
:data="jxidata"
@@ -61,36 +80,11 @@
:summary-method="getSummaries"
show-summary
>
- <el-table-column label="搴忓彿" align="center" prop="id" width="100">
- </el-table-column>
-
- <el-table-column label="缁熻鏈堜唤" align="center" prop="receivemonth" />
- <el-table-column label="鍖婚櫌鍚嶇О" align="center" prop="hospitalname">
- </el-table-column>
- <el-table-column label="宸叉敹閲戦" align="center" prop="amount">
- </el-table-column>
- <el-table-column label="鏈敹閲戦" align="center" prop="nonpayment">
- </el-table-column>
- <el-table-column label="搴旀敹閲戦" align="center" prop="organcharge">
- </el-table-column>
-
- <el-table-column
- label="鎿嶄綔"
- align="center"
- class-name="small-padding fixed-width"
- fixed="right"
- >
- <template slot-scope="scope">
- <!-- v-if="scope.row.recordstate==2"
- -->
- <el-button
- size="mini"
- type="text"
- icon="el-icon-edit"
- >璇存槑</el-button
- >
- </template>
- </el-table-column>
+ <el-table-column label="搴忓彿" align="center" prop="id" width="80" />
+ <el-table-column label="鍖婚櫌鍚嶇О" align="center" prop="hospitalname" show-overflow-tooltip width="260" />
+ <el-table-column label="搴旀敹閲戦" align="center" prop="organcharge" width="160" :formatter="amountFormatter" />
+ <el-table-column label="宸叉敹閲戦" align="center" prop="amount" width="160" :formatter="amountFormatter" />
+ <el-table-column label="鏈敹閲戦" align="center" prop="nonpayment" width="160" :formatter="amountFormatter" />
</el-table>
<div style="margin: 10px;text-align: right;">
@@ -111,7 +105,8 @@
listsfeistatistics,
listbxiaostatistics,
listjixstatistics,
- listanlstatistics
+ listanlstatistics,
+ exportChargeStatistics
} from "@/api/project/statistics";
import { listUser } from "@/api/project/organization";
@@ -137,7 +132,7 @@
countyname: "",
cuuntry: "",
- selecttime: "",
+ selecttime: [],
reportervalue: "",
reportlist: [
{ label: "鏈敹娆�", value: "0" },
@@ -205,7 +200,13 @@
// 鑾峰彇缁勭粐鍚嶇О鏃堕棿鑼冨洿
daterangeReporttime: [],
// 鏌ヨ鍙傛暟
- queryParams: {},
+ queryParams: {
+ pageNum: 1,
+ pageSize: 20,
+ pabegtime: "",
+ paendtime: "",
+ pahospitalname: ""
+ },
// 琛ㄥ崟鍙傛暟
form: {},
@@ -244,15 +245,42 @@
return Arr;
},
- /** 鏌ヨ鎹愮尞鍩虹鍒楄〃 */
+ /** 鏌ヨ鏀舵缁熻 */
getList() {
- listsfeistatistics(this.queryParams).then(res => {
- this.jxidata = res.rows;
- this.jxidata.forEach(($obj, $index) => {
- $obj.id = $index + 1;
+ this.loading = true;
+ listsfeistatistics(this.queryParams)
+ .then(res => {
+ this.jxidata = res.rows || [];
+ this.jxidata.forEach(($obj, $index) => {
+ $obj.id = $index + 1;
+ });
+ this.total = res.total;
+ this.loading = false;
+ })
+ .catch(() => {
+ this.loading = false;
});
- this.total = res.total;
- });
+ },
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ const queryParams = {
+ pabegtime: this.queryParams.pabegtime,
+ paendtime: this.queryParams.paendtime,
+ pahospitalname: this.queryParams.pahospitalname
+ };
+ this.$modal
+ .confirm("鏄惁纭瀵煎嚭褰撳墠绛涢�夋潯浠朵笅鐨勬敹娆剧粺璁℃暟鎹紵")
+ .then(() => {
+ this.exportLoading = true;
+ return exportChargeStatistics(queryParams);
+ })
+ .then(response => {
+ this.$download.name(response.msg);
+ this.exportLoading = false;
+ })
+ .catch(() => {
+ this.exportLoading = false;
+ });
},
// 琛ㄥ崟閲嶇疆
@@ -266,48 +294,39 @@
},
/** 閲嶇疆鎸夐挳鎿嶄綔 */
resetQuery() {
- this.daterangeReporttime = [];
-
- this.reportervalue = "";
-
- this.queryParams = {};
this.selecttime = [];
- this.getTimeList();
- this.searchAddress = {
- sheng: "",
- shi: "",
- qu: "",
- organizationname: null
+ this.queryParams = {
+ pageNum: 1,
+ pageSize: 20,
+ pabegtime: "",
+ paendtime: "",
+ pahospitalname: ""
};
-
this.resetForm("queryForm");
- this.handleQuery();
+ this.getList();
},
- getTimeList(e) {
- if (this.selecttime != 0) {
- this.queryParams.pabegtime = this.selecttime[0];
- this.queryParams.paendtime = this.selecttime[1];
- // if (this.queryParams.paendtime == this.queryParams.pabegtime) {
- // 缁撴潫鏃堕棿鍙�"鎵�閫夌粨鏉熸湀鐨勬鏈� 1 鍙�"锛屼互鍖呭惈鏁翠釜缁撴潫鏈堛��
- // 鍘熷疄鐜版妸鏈堜唤 +1 鍚庣洿鎺ユ嫾瀛楃涓诧紝12 鏈堜細寰楀埌 13 鏈堬紙2026-13-01锛夛紝
- // MySQL 鎶� Incorrect datetime value锛屽瓨鍌ㄨ繃绋嬬洿鎺� 500銆�
- this.queryParams.paendtime = this.$moment(this.queryParams.paendtime)
- .startOf("month")
- .add(1, "month")
- .format("YYYY-MM")
- .concat("-01 00:00:00");
- this.queryParams.pabegtime =
- this.queryParams.pabegtime + " " + "00" + ":" + "00" + ":" + "00";
- // }
+ /** 鏃ユ湡鑼冨洿锛氭渚嬫椂闂达紝寮�濮� 00:00:00锛岀粨鏉� 23:59:59 */
+ getTimeList() {
+ if (this.selecttime && this.selecttime.length === 2) {
+ this.queryParams.pabegtime = this.selecttime[0] + " 00:00:00";
+ this.queryParams.paendtime = this.selecttime[1] + " 23:59:59";
} else {
- // this.queryParams.pabegtime = "1998-01-01 00:00:00";
- // this.queryParams.paendtime = "2998-01-01 00:00:00";
+ this.queryParams.pabegtime = "";
+ this.queryParams.paendtime = "";
}
+ },
+ /** 閲戦鏄剧ず锛氫繚鐣欎袱浣嶅皬鏁帮紝0 鏄剧ず 0.00 */
+ amountFormatter(row, column, cellValue) {
+ if (cellValue === null || cellValue === undefined || cellValue === "") {
+ return "0.00";
+ }
+ const num = Number(cellValue);
+ return Number.isFinite(num) ? num.toFixed(2) : "0.00";
},
getSummaries(param) {
const { columns, data } = param;
const sums = [];
- var columnnames = ["receivemonth", "hospitalname"];
+ var columnnames = ["hospitalname"];
columns.forEach((column, index) => {
if (index === 0) {
sums[index] = "鍚堣";
--
Gitblit v1.9.3