From d839943b0d194c14c1599f81a17105e7223a5075 Mon Sep 17 00:00:00 2001
From: WXL <1785969728@qq.com>
Date: 星期五, 26 七月 2024 18:29:09 +0800
Subject: [PATCH] 11
---
src/api/project/donatebaseinfo.js | 7
src/views/project/DonationProcess/index.vue | 1820 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
src/views/project/indexstatistics/components/organnumchart/index.vue | 17
src/views/project/indexstatistics/index.vue | 27
4 files changed, 1,867 insertions(+), 4 deletions(-)
diff --git a/src/api/project/donatebaseinfo.js b/src/api/project/donatebaseinfo.js
index 5bc8517..ec3f7dd 100644
--- a/src/api/project/donatebaseinfo.js
+++ b/src/api/project/donatebaseinfo.js
@@ -8,6 +8,13 @@
params: query
})
}
+export function listDonationProcess(query) {
+ return request({
+ url: '/VDonationworkflow/donationworkflow/list',
+ method: 'get',
+ params: query
+ })
+}
// 鏌ヨ鎹愮尞鍩虹璇︾粏
export function getDonatebaseinfo(id) {
diff --git a/src/views/project/DonationProcess/index.vue b/src/views/project/DonationProcess/index.vue
new file mode 100644
index 0000000..82bd756
--- /dev/null
+++ b/src/views/project/DonationProcess/index.vue
@@ -0,0 +1,1820 @@
+<template>
+ <div class="app-container">
+ <el-form
+ :model="queryParams"
+ ref="queryForm"
+ :inline="true"
+ v-show="showSearch"
+ label-width="70px"
+ >
+ <el-form-item label="濮撳悕" prop="name">
+ <el-input
+ v-model="queryParams.name"
+ placeholder="璇疯緭鍏ュ鍚�"
+ clearable
+ size="small"
+ @keyup.enter.native="handleQuery"
+ />
+ </el-form-item>
+
+ <el-form-item>
+ <el-button
+ type="primary"
+ icon="el-icon-search"
+ size="mini"
+ @click="handleQuery"
+ >鎼滅储</el-button
+ >
+ </el-form-item>
+ </el-form>
+
+ <!-- <el-col :span="1.5">
+ <el-button
+ type="success"
+ plain
+ icon="el-icon-edit"
+ size="mini"
+ :disabled="single"
+ @click="handleUpdate"
+ v-hasPermi="['project:donatebaseinfo:edit']"
+ >淇敼</el-button
+ >
+ </el-col> -->
+
+ <el-table
+ v-loading="loading"
+ :data="donatebaseinfoList"
+ @selection-change="handleSelectionChange"
+ border
+ :default-sort="{ prop: 'donatetime', order: 'descending' }"
+ >
+ <!-- <el-table-column label="鎶ュ憡鏃堕棿" align="center" prop="id" /> -->
+ <!-- <el-table-column type="selection" width="55" align="center" /> -->
+ <el-table-column
+ label="妗堜緥鏃堕棿"
+ align="center"
+ prop="donatetime"
+ width="100"
+ >
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.donatetime, "{y}-{m}-{d}") }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column label="濮撳悕" align="center" prop="name" width="100" />
+
+ <el-table-column
+ label="璇佷欢鍙风爜"
+ align="center"
+ prop="idcardno"
+ width="200"
+ />
+
+ <el-table-column label="閮ㄩ棬鍚嶇О" align="center" prop="deptname" />
+
+ <el-table-column
+ label="鎶ュ憡浜�"
+ align="center"
+ prop="reportername"
+ width="100"
+ />
+ <el-table-column
+ label="鎶ュ憡鏃堕棿"
+ align="center"
+ prop="reporttime"
+ width="100"
+ >
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.reporttime, "{y}-{m}-{d}") }}</span>
+ </template>
+ </el-table-column>
+
+ <el-table-column
+ label="鍖诲璇勪及缁撹"
+ align="center"
+ prop="coreteamassessconclusion"
+ width="100"
+ >
+ <template slot-scope="scope">
+ <dict-tag
+ :options="dict.type.sys_BaseAssessConclusion"
+ :value="scope.row.coreteamassessconclusion"
+ />
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鍖诲璇勪及鏃堕棿"
+ align="center"
+ prop="coreteamassesstime"
+ width="100"
+ >
+ <template slot-scope="scope">
+ <span>{{
+ parseTime(scope.row.coreteamassesstime, "{y}-{m}-{d}")
+ }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="浜插睘纭鏃堕棿"
+ align="center"
+ prop="signdate"
+ width="100"
+ >
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.signdate, "{y}-{m}-{d}") }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="浼︾悊瀹℃煡缁撹"
+ align="center"
+ prop="expertconclusion"
+ width="100"
+ >
+ <template slot-scope="scope">
+ <dict-tag
+ :options="dict.type.sys_EthicalReview"
+ :value="scope.row.expertconclusion"
+ />
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="浼︾悊瀹℃煡鏃堕棿"
+ align="center"
+ prop="conclusiontime"
+ width="100"
+ >
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.conclusiontime, "{y}-{m}-{d}") }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鍣ㄥ畼鍒嗛厤鏁伴噺"
+ align="center"
+ prop="organcount"
+ width="100"
+ />
+ <el-table-column
+ label="鑾峰彇瑙佽瘉鏃堕棿"
+ align="center"
+ prop="operationbegtime"
+ width="100"
+ >
+ <template slot-scope="scope">
+ <span>{{
+ parseTime(scope.row.operationbegtime, "{y}-{m}-{d}")
+ }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="瀹屾垚鐧昏鏃堕棿"
+ align="center"
+ prop="completetime"
+ width="100"
+ >
+ <template slot-scope="scope">
+ <span>{{ parseTime(scope.row.completetime, "{y}-{m}-{d}") }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column
+ label="鎹愮尞杩涘害"
+ align="center"
+ prop="workflow"
+ width="120"
+ >
+ <template slot-scope="scope">
+ <div v-if="!scope.row.terminationCase">
+ <dict-tag
+ :options="dict.type.sys_donornode"
+ :value="scope.row.workflow"
+ />
+ </div>
+ <div v-else>浠诲姟缁堟</div>
+ </template>
+ </el-table-column>
+ <!-- <el-table-column
+ label="鎿嶄綔"
+ align="center"
+ class-name="small-padding fixed-width"
+ fixed="right"
+ >
+ <template slot-scope="scope">
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-edit"
+ @click="handleUpdate(scope.row)"
+ v-hasPermi="['project:donatebaseinfo:edit']"
+ >璇︽儏</el-button
+ >
+ <el-button
+ v-if="scope.row.recordstate == 0"
+ size="mini"
+ type="text"
+ icon="el-icon-delete"
+ @click="handleDelete(scope.row)"
+ v-hasPermi="['project:donatebaseinfo:remove']"
+ >鍒犻櫎</el-button
+ >
+
+ <el-button
+ size="mini"
+ type="text"
+ icon="el-icon-refrigerator"
+ @click="handledownload(scope.row)"
+ >涓嬭浇</el-button
+ >
+
+ </template>
+ </el-table-column> -->
+ </el-table>
+ <pagination
+ v-show="total > 0"
+ :total="total"
+ :page.sync="queryParams.pageNum"
+ :limit.sync="queryParams.pageSize"
+ @pagination="getList"
+ />
+ <!-- 娣诲姞鎴栦慨鏀规崘鐚熀纭�瀵硅瘽妗� -->
+ <el-dialog
+ :title="title"
+ align="center"
+ :visible.sync="open"
+ :close-on-click-modal="false"
+ width="1100px"
+ >
+ <el-form
+ ref="form"
+ :model="form"
+ :rules="rules"
+ label-width="130px"
+ label-position="right"
+ >
+ <div
+ style="
+ border-bottom: 1px solid #ddd;
+ border-top: 1px solid #ddd;
+ padding-right: 60px;
+ "
+ >
+ <el-row style="margin-top: 40px">
+ <el-col :span="8">
+ <el-form-item label="鎹愮尞缂栧彿" prop="donorno">
+ <el-input v-model="form.donorno" disabled />
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item
+ align="left"
+ label="鍖荤枟鏈烘瀯"
+ prop="treatmenthospitalno"
+ >
+ <org-selecter
+ ref="addOrgSelect"
+ :org-type="'3'"
+ v-model="form.treatmenthospitalno"
+ />
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="绉戝" prop="treatmentdeptno">
+ <el-input
+ v-model="form.treatmentdeptname"
+ placeholder="璇疯緭鍏ョ瀹�"
+ />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="6">
+ <el-form-item align="left" label="濮撳悕" prop="name">
+ <el-input v-model="form.name" placeholder="蹇呭~椤�" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="姘戞棌" prop="nation">
+ <el-select v-model="form.nation" placeholder="璇烽�夋嫨姘戞棌">
+ <el-option
+ v-for="dict in dict.type.sys_nation"
+ :key="dict.value"
+ :label="dict.label"
+ :value="dict.value"
+ ></el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="绫嶈疮" prop="nativeplace">
+ <el-input v-model="form.nativeplace" placeholder="璇疯緭鍏ュ浗绫�" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="鍥界睄" prop="nationality">
+ <el-input v-model="form.nationality" placeholder="璇疯緭鍏ュ浗绫�" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="6">
+ <el-form-item label="璇佷欢绫诲瀷" prop="idcardtype">
+ <el-select
+ v-model="form.idcardtype"
+ placeholder="璇烽�夋嫨璇佷欢绫诲瀷"
+ >
+ <el-option
+ v-for="dict in dict.type.sys_IDType"
+ :key="dict.value"
+ :label="dict.label"
+ :value="parseInt(dict.value)"
+ ></el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="璇佷欢鍙风爜" prop="idcardno">
+ <el-input
+ style="width: 174px"
+ ref="updateBSvalue"
+ class="sfzcode"
+ v-model="form.idcardno"
+ placeholder="璇疯緭鍏ヨ瘉浠跺彿鐮�"
+ @blur="updateMessage"
+ />
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <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.label"
+ :label="dict.label"
+ :value="parseInt(dict.value)"
+ ></el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="骞撮緞" prop="age">
+ <el-input v-model="form.age" placeholder="璇疯緭鍏ュ勾榫�" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="6">
+ <el-form-item label="鍑虹敓鏃ユ湡" prop="birthday">
+ <el-date-picker
+ clearable
+ size="small"
+ v-model="form.birthday"
+ type="date"
+ style="width: 174px"
+ value-format="yyyy-MM-dd HH:mm:ss"
+ placeholder="閫夋嫨鍑虹敓鏃ユ湡"
+ >
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="鑱屼笟" prop="occupation">
+ <el-select v-model="form.occupation" placeholder="璇烽�夋嫨鑱屼笟">
+ <el-option
+ v-for="dict in dict.type.sys_occupation"
+ :key="dict.value"
+ :label="dict.label"
+ :value="dict.value"
+ ></el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="6">
+ <el-form-item label="瀛﹀巻" prop="education">
+ <el-select v-model="form.education" placeholder="璇烽�夋嫨瀛﹀巻">
+ <el-option
+ v-for="dict in dict.type.sys_education"
+ :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="residenceaddress">
+ <div>
+ <li_area_select
+ ref="residenceSelect"
+ v-model="residenceAddresss"
+ ></li_area_select>
+ <!-- <div>{{defultAddress}}</div> -->
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="11" :push="1">
+ <el-input
+ v-model="form.residenceaddress"
+ placeholder="璇疯緭鍏ュ唴瀹�"
+ />
+ </el-col>
+ </el-row>
+
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="鐜版墍鍦ㄥ湴" prop="registeraddress">
+ <div>
+ <li_area_select
+ ref="registerSelect"
+ v-model="registerAddresss"
+ ></li_area_select>
+ <!-- <div>{{defultAddress}}</div> -->
+ </div>
+ </el-form-item>
+ </el-col>
+ <el-col :span="11" :push="1">
+ <el-input
+ v-model="form.registeraddress"
+ placeholder="璇疯緭鍏ュ唴瀹�"
+ />
+ </el-col>
+ </el-row>
+ </div>
+
+ <div
+ style="
+ border-bottom: 1px solid #ddd;
+ margin-top: 20px;
+ padding-right: 60px;
+ "
+ >
+ <el-row>
+ <el-col :span="8">
+ <el-form-item label="浣忛櫌鍙�" prop="inpatientno">
+ <el-input v-model="form.inpatientno" placeholder="浣忛櫌鍙�" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="16">
+ <el-form-item label="鐤剧梾璇婃柇" prop="diagnosisname">
+ <el-input
+ v-model="form.diagnosisname"
+ placeholder="璇疯緭鍏ョ柧鐥呰瘖鏂悕绉�"
+ />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="12">
+ <el-form-item align="left" label="琛�鍨�" prop="bloodtype">
+ <el-radio-group v-model="form.bloodtype">
+ <el-radio
+ v-for="dict in dict.type.sys_BloodType"
+ :key="dict.value"
+ :label="dict.value"
+ >{{ dict.label }}</el-radio
+ >
+ </el-radio-group>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12" :pull="1">
+ <el-form-item label="Rh(D)" align="left" prop="rhyin">
+ <el-radio-group v-model="form.rhyin">
+ <el-radio
+ v-for="dict in dict.type.sys_bloodtype_rhd"
+ :key="dict.value"
+ :label="dict.value"
+ >{{ dict.label }}</el-radio
+ >
+ </el-radio-group>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-form-item label="鐤剧梾绫诲瀷" align="left">
+ <el-checkbox-group v-model="form.diseasetype">
+ <el-checkbox
+ v-for="dict in dict.type.sys_DiseaseType"
+ :key="dict.value"
+ :label="dict.value"
+ >
+ {{ dict.label }}
+ </el-checkbox>
+ </el-checkbox-group>
+ </el-form-item>
+ <el-form-item label="鍏朵粬" prop="diseasetypeOther">
+ <el-input
+ v-model="form.diseasetypeOther"
+ placeholder="璇疯緭鍏ュ叾浠�"
+ />
+ </el-form-item>
+ </el-row>
+ <el-row>
+ <el-col :span="12">
+ <el-form-item align="left" label="浼犳煋鐥�">
+ <el-checkbox-group v-model="form.infectious">
+ <el-checkbox
+ v-for="dict in dict.type.sys_Infectious"
+ :key="dict.value"
+ :label="dict.value"
+ >
+ {{ dict.label }}
+ </el-checkbox>
+ </el-checkbox-group>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item align="left" label="鍏朵粬" prop="infectiousOther">
+ <el-input
+ v-model="form.infectiousOther"
+ placeholder="璇疯緭鍏ュ叾浠�"
+ />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="9">
+ <el-form-item align="left" label="鐥呬汉鐘跺喌">
+ <el-checkbox-group v-model="form.patientstate">
+ <el-checkbox
+ v-for="dict in dict.type.sys_patientstate"
+ :key="dict.value"
+ :label="dict.value"
+ >
+ {{ dict.label }}
+ </el-checkbox>
+ </el-checkbox-group>
+ </el-form-item>
+ </el-col>
+ <el-col :span="15" align="left">
+ <el-form-item label="鍏朵粬鎯呭喌">
+ <el-checkbox-group v-model="form.othercases">
+ <el-checkbox
+ v-for="dict in dict.type.sys_OtherCases"
+ :key="dict.value"
+ :label="dict.value"
+ >
+ {{ dict.label }}
+ </el-checkbox>
+ </el-checkbox-group>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div>
+
+ <div
+ style="
+ border-bottom: 1px solid #ddd;
+ padding-right: 60px;
+ margin-top: 20px;
+ "
+ >
+ <el-row>
+ <div display="flex">
+ <el-row>
+ <el-col :span="12">
+ <el-form-item
+ label="浜插睘鐘跺喌"
+ prop="kinship"
+ class="relation"
+ align="left"
+ >
+ <el-checkbox-group v-model="form.kinship">
+ <el-checkbox
+ v-for="dict in dict.type.sys_Kinship"
+ :key="dict.value"
+ :label="dict.value"
+ >
+ {{ dict.label }}
+ </el-checkbox>
+ </el-checkbox-group>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="鍏朵粬" prop="kinshipOther">
+ <el-input
+ v-model="form.kinshipOther"
+ placeholder="璇疯緭鍏ュ叾浠�"
+ />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div>
+ </el-row>
+ <el-row>
+ <el-col :span="24">
+ <el-form-item align="left" label="鏈汉鎰忔効 ">
+ <el-checkbox-group v-model="form.selfwill">
+ <el-checkbox
+ v-for="dict in dict.type.sys_SelfWill"
+ :key="dict.value"
+ :label="dict.value"
+ >
+ {{ dict.label }}
+ </el-checkbox>
+ </el-checkbox-group>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="12">
+ <el-form-item label="涓昏浜插睘" prop="majorrelatives">
+ <el-input
+ v-model="form.majorrelatives"
+ placeholder="璇疯緭鍏ヤ富瑕佷翰灞�"
+ />
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="涓庢崘璧犺�呭叧绯�" prop="familyrelations">
+ <el-select
+ v-model="form.familyrelations"
+ placeholder="璇烽�夋嫨涓庢崘璧犺�呭叧绯�"
+ >
+ <el-option
+ v-for="dict in dict.type.sys_FamilyRelation"
+ :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 align="left" label="淇℃伅鏉ユ簮">
+ <el-checkbox-group v-model="form.infosources">
+ <el-checkbox
+ v-for="dict in dict.type.sys_InfoSources"
+ :key="dict.value"
+ :label="dict.value"
+ >
+ {{ dict.label }}
+ </el-checkbox>
+ </el-checkbox-group>
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="鍏朵粬" prop="infosourcesOther">
+ <el-input
+ v-model="form.infosourcesOther"
+ placeholder="璇疯緭鍏ヤ俊鎭潵婧愬叾浠�"
+ />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="8">
+ <el-form-item label="淇℃伅鍛�" prop="infoname">
+ <el-input v-model="form.infoname" placeholder="璇疯緭鍏ヤ俊鎭憳" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="鑱旂郴鐢佃瘽" prop="infophone">
+ <el-input
+ v-model="form.infophone"
+ placeholder="璇疯緭鍏ヤ俊鎭憳鑱旂郴鐢佃瘽"
+ />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="8">
+ <el-form-item align="left" label="绾㈠崄瀛椾細" prop="redorganno">
+ <org-selecter
+ ref="addCrossOrgSelect"
+ :org-type="'2'"
+ v-model="form.redorganno"
+ />
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="鑱旂郴浜�" prop="contactperson">
+ <el-input
+ v-model="form.contactperson"
+ placeholder="璇疯緭鍏ヨ仈绯讳汉"
+ />
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="鑱旂郴鏃堕棿" prop="contacttime">
+ <el-date-picker
+ clearable
+ size="small"
+ style="width: 190px"
+ v-model="form.contacttime"
+ type="datetime"
+ value-format="yyyy-MM-dd HH:mm:ss"
+ placeholder="閫夋嫨鎶ュ憡鏃堕棿"
+ >
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="24">
+ <el-form-item
+ align="left"
+ label="鑾峰彇缁勭粐"
+ prop="acquisitiontissuename"
+ >
+ <org-selecter
+ style="width: 260px"
+ ref="orgSelecter"
+ :org-type="'1'"
+ v-model="form.acquisitiontissueno"
+ />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="8">
+ <el-form-item label="鎶ュ憡浜�" prop="reporterno">
+ <el-select
+ ref="getReportname"
+ v-model="form.reporterno"
+ placeholder="璇烽�夋嫨"
+ >
+ <el-option
+ v-for="item in reporters"
+ :key="item.reportNo"
+ :label="item.reportName"
+ :value="item.reportNo"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="鑱旂郴鐢佃瘽" prop="reporterphone">
+ <el-input
+ v-model="form.reporterphone"
+ placeholder="璇疯緭鍏ヨ仈绯荤數璇�"
+ />
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="鎶ュ憡鏃堕棿" align="left" prop="reporttime">
+ <el-date-picker
+ clearable
+ size="small"
+ style="width: 190px"
+ v-model="form.reporttime"
+ type="datetime"
+ value-format="yyyy-MM-dd HH:mm:ss"
+ placeholder="閫夋嫨鎶ュ憡鏃堕棿"
+ >
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </div>
+ <!-- <div style="padding-right: 60px; margin-top: 20px">
+ <el-row>
+ <el-form-item label="闄勪欢" align="left" prop="annexfile">
+ <annex-upload ref="annex" :infoid="form.id" :donorno="form.donorno" :flowname="flowname"
+ :annexno="annexno" />
+ </el-form-item>
+ </el-row>
+ </div> -->
+ </el-form>
+ <div slot="footer" class="dialog-footer">
+ <el-button v-show="showSaveBtn" type="primary" @click="submitForm"
+ >淇濆瓨骞跺墠寰�妗堜緥宸ヤ綔鍙�</el-button
+ >
+ <el-button
+ v-show="showTerminationBtn"
+ type="primary"
+ @click="submitForm"
+ >缁堟妗堜緥</el-button
+ >
+ <el-button @click="cancel">鍙� 娑�</el-button>
+ <!-- <el-button @click="handleapproval">鎻愪氦瀹℃牳</el-button> -->
+ </div>
+ </el-dialog>
+ </div>
+</template>
+<script>
+import { getUserProfile } from "@/api/system/user";
+import {
+ listDonationProcess,
+ getDonatebaseinfo,
+ delDonatebaseinfo,
+ addDonatebaseinfo,
+ updateDonatebaseinfo,
+ exportDonatebaseinfo,
+ downloadbaseinfo,
+ getDonationNumber,
+ getdonatorno
+} from "@/api/project/donatebaseinfo";
+import Li_area_select from "@/components/Address";
+import OrgSelecter from "@/views/project/components/orgselect";
+import AnnexUpload from "@/views/project/components/annexupload";
+import ReportName from "@/views/project/components/organizationUser";
+import { getToken } from "@/utils/auth";
+import {
+ listOrganization,
+ getOrganization,
+ listReportname,
+ listUser
+} from "@/api/project/organization";
+export default {
+ components: {
+ Li_area_select,
+ OrgSelecter,
+ AnnexUpload,
+ ReportName
+ },
+ name: "Donatebaseinfo",
+ dicts: [
+ "sys_Reporter",
+ "sys_redcrossagency",
+ "sys_nation",
+ "sys_occupation",
+ "sys_education",
+ "sys_OrganizationType",
+ "sys_HospitalNature",
+ "sys_RegionalLevel",
+ "country",
+ "sys_user_sex",
+ "sys_IDType",
+ "sys_AgeUnit",
+ "sys_BloodType",
+ "sys_0_1",
+ "sys_patientstate",
+ "sys_DonationCategory",
+ "sys_Kinship",
+ "sys_Infectious",
+ "sys_bloodtype_rhd",
+ "sys_InfoSources",
+ "sys_OtherCases",
+ "sys_DonationStatus",
+ "sys_DiseaseType",
+ "sys_SelfWill",
+ "sys_FamilyRelation",
+ "sys_donornode",
+ "sys_EthicalReview",
+ "sys_BaseAssessConclusion"
+ ],
+ data() {
+ return {
+ tempRecordState: null,
+ approvalState: false,
+ countyname: "",
+ cuuntry: "",
+ organizationname: "",
+ selecttime: "",
+
+ //鐪佸競鍖�
+ //榛樿鍊艰缃紝鍙负绌�
+ searchAddress: {
+ sheng: "",
+ shi: "",
+ qu: "",
+ organizationname: null
+ },
+ residenceAddresss: {
+ sheng: "娴欐睙鐪�",
+ shi: "",
+ qu: ""
+ },
+ registerAddresss: {
+ sheng: "娴欐睙鐪�",
+ shi: "",
+ qu: ""
+ },
+ terminationCaselist: [
+ { name: "缁堟鐘舵��", value: 1 },
+ { name: "姝e父鐘舵��", value: 0 }
+ ],
+ // 閬僵灞�
+ loading: true,
+ // 瀵煎嚭閬僵灞�
+ exportLoading: false,
+ // 閫変腑鏁扮粍
+ ids: [],
+ // 闈炲崟涓鐢�
+ single: true,
+ // 闈炲涓鐢�
+ multiple: true,
+ // 鏄剧ず鎼滅储鏉′欢
+ showSearch: true,
+ // 鎬绘潯鏁�
+ total: 0,
+ // 鎹愮尞鍩虹琛ㄦ牸鏁版嵁
+ donatebaseinfoList: [],
+ // 寮瑰嚭灞傛爣棰�
+ title: "",
+ // 鏄惁鏄剧ず寮瑰嚭灞�
+ open: false,
+ // 鑾峰彇缁勭粐鍚嶇О鏃堕棿鑼冨洿
+ daterangeReporttime: [],
+ //鐢ㄦ埛淇℃伅
+ currentuser: {},
+
+ // 鏌ヨ鍙傛暟
+ queryParams: {
+ pageNum: 1,
+ pageSize: 10,
+ donorno: null,
+ recordstate: null,
+ // treatmenthospitalno: null,
+ treatmenthospitalname: null,
+ name: null,
+ residenceprovince: null,
+ residencecity: null,
+ residencetown: null,
+ starttime: null,
+ endtime: null,
+ city: null,
+ reportno: null
+ // organizationname: null,
+ // organizationtype: null,
+ // idcardno: null,
+ // reporterno: null,
+ // reporttime: null,
+ },
+ // 琛ㄥ崟鍙傛暟
+ form: {
+ id: null,
+ name: null,
+ sex: null,
+ idcardtype: null,
+ idcardno: null,
+ age: null,
+ ageunit: null,
+ birthday: null,
+ phone: null,
+ residenceaddress: null,
+ nationality: "涓浗",
+ nativeplace: null,
+ residenceprovince: null,
+ nation: null,
+ residenceprovincename: null,
+ occupation: null,
+ residencecity: null,
+ education: null,
+ residencecityname: null,
+ residencetown: null,
+ residencetownname: null,
+ residencecommunity: null,
+ residencecommunityname: null,
+ residencecountycode: null,
+ residencecountyname: null,
+ registeraddress: null,
+ registerprovince: null,
+ registerprovincename: null,
+ registercity: null,
+ registercityname: null,
+ registertown: null,
+ registertownname: null,
+ registercommunity: null,
+ registercommunityname: null,
+ registercountycode: null,
+ registercountyname: null,
+ recordstate: null,
+ treatmenthospitalno: null,
+ treatmenthospitalname: null,
+ treatmentdeptname: null,
+ diagnosisno: null,
+ diagnosisname: null,
+ bloodtype: "0",
+ inpatientno: null,
+ rhyin: "0",
+ donorno: null,
+ donationcategory: null,
+ illnessoverview: null,
+ diseasetype: [],
+ infectious: [],
+ selfwill: [],
+ diseasetypeOther: null,
+ othercases: [],
+ kinshipwill: 0,
+ infosources: [],
+ kinship: [],
+ redorganno: null,
+ redorganname: null,
+ contactperson: null,
+ infectiousOther: null,
+ contactnumber: null,
+ contacttime: null,
+ reporterno: null,
+ reportername: null,
+ patientstate: [],
+ reporterphone: null,
+ infosourcesOther: null,
+ reporttime: null,
+ delFlag: null,
+ createBy: null,
+ createTime: null,
+ updateBy: null,
+ updateTime: null,
+ kinshipOther: null,
+ majorrelatives: null,
+ familyrelations: null,
+ acquisitiontissueno: "ZJOPO",
+ acquisitiontissuename: "娴欐睙鐪佷汉浣撳櫒瀹樿幏鍙栫粍缁�"
+ },
+ //ads
+ reporters: [],
+ users: [],
+
+ // 琛ㄥ崟鏍¢獙
+ rules: {
+ name: [
+ { required: true, message: "璇疯緭鍏ユ崘鐚�呭鍚�", trigger: "blur" }
+ ],
+ birthday: [
+ { required: true, message: "璇烽�夋嫨鍑虹敓鏃ユ湡", trigger: "blur" }
+ ],
+ idcardtype: [
+ { required: true, message: "璇烽�夋嫨璇佷欢绫诲瀷", trigger: "blur" }
+ ],
+ residenceaddress: [
+ { required: true, message: "璇疯緭鍏ヤ綇鍧�", trigger: "blur" }
+ ],
+ contacttime: [
+ {
+ required: true,
+ message: "璇疯緭鍏ョ孩鍗佸瓧浼氳仈绯绘椂闂�",
+ trigger: "blur"
+ }
+ ],
+ idcardno: [
+ { required: true, message: "璇锋纭緭鍏ヨ瘉浠跺彿鐮�", trigger: "blur" }
+ ],
+ sex: [{ required: true, message: "鎬у埆涓嶈兘涓虹┖", trigger: "blur" }],
+ age: [{ required: true, message: "璇疯緭鍏ュ勾榫�", trigger: "blur" }],
+ treatmenthospitalno: [
+ { required: true, message: "璇烽�夋嫨鍖荤枟鏈烘瀯", trigger: "blur" }
+ ],
+ // treatmenthospitalno: [{ required: true, message: "璇烽�夋嫨鍖荤枟鏈烘瀯", trigger: "change" }],
+ bloodtype: [
+ { required: true, message: "璇烽�夋嫨ABO琛�鍨�", trigger: "blur" }
+ ],
+ rhyin: [{ required: true, message: "璇烽�夋嫨RHD琛�鍨�", trigger: "blur" }],
+ diseasetype: [
+ { required: true, message: "璇烽�夋嫨RHD琛�鍨�", trigger: "blur" }
+ ],
+
+ inpatientno: [
+ { required: true, message: "杈撳叆浣忛櫌鍙�", trigger: "blur" }
+ ],
+
+ diagnosisname: [
+ { required: true, message: "鐤剧梾璇婃柇涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ infoname: [
+ { required: true, message: "璇疯緭鍏ヤ俊鎭憳濮撳悕", trigger: "blur" }
+ ],
+ infophone: [
+ { required: true, message: "璇疯緭鍏ヤ俊鎭憳鑱旂郴鐢佃瘽", trigger: "blur" }
+ ],
+ redorganno: [
+ { required: true, message: "璇烽�夋嫨绾㈠崄瀛椾細鏈烘瀯", trigger: "blur" }
+ ],
+ contactperson: [
+ {
+ required: true,
+ message: "绾㈠崄瀛椾細鑱旂郴浜轰笉鑳戒负绌�",
+ trigger: "blur"
+ }
+ ],
+ // contactnumber: [{required: true,message: "璇疯緭鍏ョ孩鍗佸瓧浼氳仈绯荤數璇�",trigger: "change"}],
+ acquisitiontissueno: [
+ { required: true, message: "鍣ㄥ畼鑾峰彇缁勭粐涓嶈兘涓虹┖", trigger: "blur" }
+ ],
+ reporterno: [
+ { required: true, message: "璇烽�夋嫨鎶ュ憡浜�", trigger: "blur" }
+ ],
+ reporttime: [
+ { required: true, message: "璇疯緭鍏ユ姤鍛婃椂闂�", trigger: "blur" }
+ ],
+ reporterphone: [
+ { required: true, message: "璇疯緭鍏ユ姤鍛婁汉鑱旂郴鐢佃瘽", trigger: "blur" }
+ ]
+ },
+ //鏄惁鏄剧ず淇濆瓨鎸夐挳
+ showSaveBtn: true,
+ showTerminationBtn: false,
+ //娴佺▼鍚嶇О
+ flowname: "娼滃湪鎹愮尞鐧昏",
+ annexno: "PotentialDonationRegistration",
+ starttime: "",
+ endtime: "",
+ reportlist: [],
+ reportervalue: "",
+ headers: {
+ Authorization: "Bearer " + getToken()
+ },
+ provinceData: [
+ { label: "鍏ㄩ儴", value: "" },
+ { label: "鏉窞甯�", value: "1" },
+ { label: "瀹佹尝甯�", value: "2" },
+ { label: "娓╁窞甯�", value: "3" },
+ { label: "鍢夊叴甯�", value: "4" },
+ { label: "婀栧窞甯�", value: "5" },
+ { label: "缁嶅叴甯�", value: "6" },
+ { label: "閲戝崕甯�", value: "7" },
+ { label: "琛㈠窞甯�", value: "8" },
+ { label: "鑸熷北甯�", value: "9" },
+ { label: "鍙板窞甯�", value: "A" },
+ { label: "涓芥按甯�", value: "B" }
+ ]
+ };
+ },
+ created() {
+ if (sessionStorage.getItem("donatebaseinfo")) {
+ this.queryParams = JSON.parse(sessionStorage.getItem("donatebaseinfo"));
+ console.log(this.queryParams, "queryParams");
+ }
+ },
+
+ mounted(e) {
+ // let idd = this.$route.query.userid
+ // console.log('chuanzhi',idd);
+
+ this.getCurrentUser();
+ this.getuserlist();
+ this.selectReporters();
+
+ this.LoadReportList();
+
+ if (this.$route.params.starttime != null && this.$route.params.endtime) {
+ this.selecttime = [
+ this.$moment(this.$route.params.starttime).format("YYYY-MM-DD"),
+ this.$moment(this.$route.params.endtime).format("YYYY-MM-DD")
+ ];
+ }
+ if (this.$route.params.reporterno != "") {
+ this.reporterno = this.$route.params.reporterno;
+ }
+ this.queryParams.terminationcase = this.$route.params.terminationcase;
+
+ if (
+ this.$route.params.tempRecordState != "" &&
+ this.$route.params.tempRecordState != undefined
+ ) {
+ this.queryParams.recordstate = "" + this.$route.params.tempRecordState;
+ }
+ if (this.$route.params.reporterno != "") {
+ this.reportervalue = this.$route.params.reporterno;
+ }
+ if (!this.$route.params.shen != "") {
+ this.searchAddress.sheng = this.$route.params.shen;
+ if (!this.$route.params.shi != "") {
+ this.searchAddress.shi = this.$route.params.shi;
+ }
+ if (!this.$route.params.qu) {
+ this.searchAddress.qu = this.$route.params.qu;
+ }
+ }
+
+ if (this.$route.params.city != "") {
+ this.queryParams.city = this.$route.params.city;
+ } else {
+ this.queryParams.city = "";
+ }
+
+ this.getTimeList();
+
+ this.getList();
+ },
+
+ methods: {
+ getCurrentUser() {
+ getUserProfile().then(response => {
+ this.currentuser = response.data;
+ });
+ },
+
+ LoadReportList() {
+ listDonationProcess().then(res => {
+ let list = res.rows;
+ let reportlist = [];
+ reportlist.push({ reporterno: "", reportername: "鍏ㄩ儴" });
+ list.forEach(element => {
+ reportlist.push({
+ reporterno: element.reporterno,
+ reportername: element.reportername
+ });
+ });
+
+ if (reportlist != 0) {
+ reportlist = this.resetArr(reportlist);
+ this.reportlist = reportlist;
+ }
+ });
+ },
+
+ resetArr(Arr) {
+ var hash = {};
+ Arr = Arr.reduce(function(arr, current) {
+ hash[current.reporterno]
+ ? ""
+ : (hash[current.reporterno] = true && arr.push(current));
+ return arr;
+ }, []);
+ return Arr;
+ },
+
+ getTimeList(e) {
+ console.log(this.selecttime);
+ if (this.selecttime != null) {
+ if (this.selecttime != 0) {
+ this.endtime = this.selecttime[1];
+ this.starttime = this.selecttime[0];
+ // if (this.endtime == this.starttime) {
+ let num = Number(this.endtime.slice(5, 7));
+ if (num < 9) {
+ let mon = Number(this.endtime.slice(6, 7));
+ this.endtime =
+ this.endtime.slice(0, 5) +
+ "0" +
+ (mon + 1) +
+ "-" +
+ "01" +
+ " " +
+ "00" +
+ ":" +
+ "00" +
+ ":" +
+ "00";
+ }
+ // this.endtime=this.endtime.slice(0,5)骞�
+ else if (num >= 10) {
+ this.endtime =
+ this.endtime.slice(0, 5) +
+ (num + 1) +
+ "-" +
+ "01" +
+ " " +
+ "00" +
+ ":" +
+ "00" +
+ ":" +
+ "00";
+ } else {
+ this.endtime =
+ this.endtime.slice(0, 5) +
+ "10" +
+ "-" +
+ "01" +
+ " " +
+ "00" +
+ ":" +
+ "00" +
+ ":" +
+ "00";
+ }
+ this.starttime =
+ this.starttime + " " + "00" + ":" + "00" + ":" + "00";
+ // }
+ } else {
+ this.starttime = "1998-01-01 00:00:00";
+ this.endtime = "2998-01-01 00:00:00";
+ }
+ } else {
+ this.starttime = "1998-01-01 00:00:00";
+ this.endtime = "2998-01-01 00:00:00";
+ }
+ },
+
+ selectReporters() {
+ //涓撹亴浜哄憳
+ listReportname("zzry").then(res => {
+ this.reporters = res.data;
+ });
+ },
+
+ getuserlist() {
+ //鐢ㄦ埛鍒楄〃
+ listUser().then(res => {
+ this.users = res.data;
+ });
+ },
+
+ handleapproval(row) {
+ this.$confirm("鏄惁纭灏嗘渚嬩笂鎶ュ鏍革紵", "鎻愮ず", {
+ confirmButtonText: "纭畾",
+ cancelButtonText: "鍙栨秷",
+ type: "warning"
+ })
+ .then(() => {
+ row.recordstate = 1;
+ updateDonatebaseinfo(row).then(response => {
+ this.$modal.msgSuccess("涓婃姤瀹℃牳鎴愬姛");
+ this.getList();
+ });
+ })
+ .catch(() => {
+ this.$message({
+ type: "info",
+ message: "宸插彇娑堜笂鎶�"
+ });
+ });
+ },
+ resetapproval(row) {
+ this.approvalState = false;
+ // this.reset();
+ // const id = row.id || this.ids;
+ updateDonatebaseinfo(row).then(response => {
+ row.recordstate = 0;
+ });
+ },
+
+ updateMessage() {
+ try {
+ const reg = /^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/;
+ if (reg.test(this.form.idcardno)) {
+ // 韬唤璇佸彿鐮佹槸鍚﹀悎娉�
+ var org_birthday = this.form.idcardno.substring(6, 14);
+ var org_gender = this.form.idcardno.substring(16, 17);
+ var sex = org_gender % 2 == 1 ? 1 : 2;
+ var birthday =
+ org_birthday.substring(0, 4) +
+ "-" +
+ org_birthday.substring(4, 6) +
+ "-" +
+ org_birthday.substring(6, 8);
+ var birthdays = new Date(birthday.replace(/-/g, "/"));
+ let d = new Date();
+ let age =
+ d.getFullYear() -
+ birthdays.getFullYear() -
+ (d.getMonth() < birthdays.getMonth() ||
+ (d.getMonth() == birthdays.getMonth() &&
+ d.getDate() < birthdays.getDate())
+ ? 1
+ : 0);
+ // 璧嬪�肩粰琛ㄦ牸
+ this.form.sex = sex;
+ this.form.birthday = birthday;
+ this.form.age = age;
+ } else {
+ }
+ } catch {}
+ },
+ // sheng: '娴欐睙鐪�',
+ // shi: '',
+ // qu: '',
+
+ // 韬唤璇侀獙璇�
+ //鏍规嵁韬唤璇佸彿鑷姩鐢熸垚鎬у埆銆佸嚭鐢熸棩鏈熷拰骞撮緞
+ inputChange() {
+ const idCard = this.props.form.getFieldValue("idCard");
+ let birthday = "";
+ let sex = "0";
+ if (idCard.length === 15) {
+ birthday = `19${idCard.substring(6, 8)}-${idCard.substring(
+ 9,
+ 10
+ )}-${idCard.substring(11, 12)}`;
+ sex = idCard[14] % 2 === 0 ? "0" : "1";
+ } else {
+ birthday = `${idCard.substring(6, 10)}-${idCard.substring(
+ 11,
+ 12
+ )}-${idCard.substring(13, 14)}`;
+ sex = idCard[16] % 2 === 0 ? "0" : "1";
+ }
+ this.setState({
+ birthday,
+ sex
+ });
+ },
+
+ /** 鏌ヨ鎹愮尞鍩虹鍒楄〃 */
+ getList() {
+ this.loading = true;
+
+ // 璺宠浆鏃剁殑榛樿杩涘害
+
+ if (this.reportervalue != "") {
+ this.queryParams.reportno = this.reportervalue;
+ }
+
+ if (this.starttime != "") {
+ this.queryParams.starttime = this.starttime;
+ } else {
+ this.queryParams.starttime = "";
+ }
+ if (this.endtime != "") {
+ this.queryParams.endtime = this.endtime;
+ } else {
+ this.queryParams.endtime = "";
+ }
+ console.log(this.queryParams);
+
+ listDonationProcess(this.queryParams).then(response => {
+ this.donatebaseinfoList = response.rows;
+ //console.log("listDonationProcess", response.rows);
+ this.total = response.total;
+ this.loading = false;
+ });
+ },
+ // 鍙栨秷鎸夐挳
+ cancel() {
+ this.open = false;
+ this.reset();
+ },
+ // 琛ㄥ崟閲嶇疆
+ reset() {
+ this.form = {
+ id: null,
+ name: null,
+ sex: null,
+ idcardtype: null,
+ idcardno: null,
+ age: null,
+ ageunit: null,
+ birthday: null,
+ phone: null,
+ residenceaddress: null,
+ nationality: "涓浗",
+ nativeplace: null,
+ residenceprovince: null,
+ nation: null,
+ residenceprovincename: null,
+ occupation: null,
+ residencecity: null,
+ education: null,
+ residencecityname: null,
+ residencetown: null,
+ residencetownname: null,
+ residencecommunity: null,
+ residencecommunityname: null,
+ residencecountycode: null,
+ residencecountyname: null,
+ registeraddress: null,
+ registerprovince: null,
+ registerprovincename: null,
+ registercity: null,
+ registercityname: null,
+ registertown: null,
+ registertownname: null,
+ registercommunity: null,
+ registercommunityname: null,
+ registercountycode: null,
+ registercountyname: null,
+ recordstate: null,
+ treatmenthospitalno: null,
+ treatmenthospitalname: null,
+ treatmentdeptname: null,
+ diagnosisno: null,
+ diagnosisname: null,
+ bloodtype: "0",
+ inpatientno: null,
+ rhyin: 0,
+ donorno: null,
+ donationcategory: null,
+ illnessoverview: null,
+ diseasetype: [],
+ infectious: [],
+ selfwill: [],
+ diseasetypeOther: null,
+ othercases: [],
+ kinshipwill: 0,
+ infosources: [],
+ kinship: [],
+ redorganno: null,
+ redorganname: null,
+ contactperson: null,
+ infectiousOther: null,
+ contactnumber: null,
+ contacttime: null,
+ reporterno: null,
+ reportername: null,
+ patientstate: [],
+ reporterphone: null,
+ infosourcesOther: null,
+ reporttime: null,
+ delFlag: null,
+ createBy: null,
+ createTime: null,
+ updateBy: null,
+ updateTime: null,
+ kinshipOther: null,
+ majorrelatives: null,
+ familyrelations: null,
+ acquisitiontissueno: "ZJOPO",
+ acquisitiontissuename: "娴欐睙鐪佷汉浣撳櫒瀹樿幏鍙栫粍缁�"
+ };
+
+ this.resetForm("form");
+ },
+ /** 鎼滅储鎸夐挳鎿嶄綔 */
+ handleQuery() {
+ this.queryParams.pageNum = 1;
+ this.getList();
+ },
+ /** 閲嶇疆鎸夐挳鎿嶄綔 */
+ resetQuery() {
+ this.daterangeReporttime = [];
+
+ this.reportervalue = "";
+
+ this.queryParams = {
+ doname: null,
+ pageNum: 1,
+ pageSize: 10,
+ name: null,
+ idcardno: null,
+ residenceprovince: null,
+ residencecity: null,
+ residencetown: null,
+ // "2"
+ recordstate: null,
+ treatmenthospitalname: null,
+ donorno: null,
+ acquisitiontissueno: null,
+ reportername: null,
+ reporttime: null,
+ city: null,
+ treatmenthospitalno: null
+ };
+ this.selecttime = [];
+ this.getTimeList();
+ this.searchAddress = {
+ sheng: "",
+ shi: "",
+ qu: "",
+ organizationname: null
+ };
+ //this.$refs.areaSelect.clean();
+
+ this.resetForm("queryForm");
+ this.handleQuery();
+ },
+ // 澶氶�夋閫変腑鏁版嵁
+ handleSelectionChange(selection) {
+ this.ids = selection.map(item => item.id);
+ this.single = selection.length !== 1;
+ this.multiple = !selection.length;
+ },
+ /** 鏂板鎸夐挳鎿嶄綔 */
+ handleAdd() {
+ // this.$router.push({
+ // path: "/organ/donationdetails/",
+ // query: {
+ // organType: "add",
+ // }
+ // });
+ this.reset();
+ //璁剧疆鎶ュ憡浜哄拰閮ㄩ棬/缁�
+ this.form.reporterno = this.currentuser.userName;
+ this.form.reportername = this.currentuser.nickName;
+ this.form.deptid = this.currentuser.deptid;
+
+ this.showSaveBtn = true;
+ //this.$refs.annex.getAnnexList();
+ this.open = true;
+ // this.$nextTick(function() {
+ // this.$refs.annex.getAnnexList();
+ // });
+
+ this.title = "浜轰綋鍣ㄥ畼娼滃湪鎹愮尞鑰呯櫥璁拌〃";
+ },
+ /** 淇敼鎸夐挳鎿嶄綔 */
+
+ handleUpdate(row) {
+ this.$router.push({
+ path: "/organ/donationdetails/",
+ query: {
+ id: row.id,
+ organType: "edit"
+ }
+ });
+ // this.showSaveBtn = true;
+ // const id = row.id || this.ids;
+ // //this.$refs.annex.getAnnexList();
+
+ // getDonatebaseinfo(id).then((response) => {
+ // this.reset();
+
+ // this.$nextTick(function () {
+ // this.$refs.annex.getAnnexList();
+ // });
+ // this.form = response.data;
+ // response.data.sex = parseInt(response.data.sex);
+ // this.form.id = response.data.id;
+ // this.form.diseasetype = this.form.diseasetype.split(",");
+ // this.form.infectious = this.form.infectious.split(",");
+ // this.form.selfwill = this.form.selfwill.split(",");
+ // this.form.othercases = this.form.othercases.split(",");
+ // this.form.infosources = this.form.infosources.split(",");
+ // this.form.kinship = this.form.kinship.split(",");
+ // this.form.patientstate = this.form.patientstate.split(",");
+ // this.open = true;
+ // this.title = "浜轰綋鍣ㄥ畼娼滃湪鎹愮尞鑰呯櫥璁拌〃";
+ // this.registerAddresss.sheng = response.data.registerprovincename;
+ // this.residenceAddresss.sheng = response.data.residenceprovincename;
+ // this.registerAddresss.shi = response.data.registercityname;
+ // this.residenceAddresss.shi = response.data.residencecityname;
+ // this.residenceAddresss.qu = response.data.residencetownname;
+ // this.registerAddresss.qu = response.data.registertownname;
+ // });
+ },
+ // 缁堟妗堜緥
+ handletermination(row) {
+ this.reset();
+ this.showSaveBtn = false;
+ this.showTerminationBtn = true;
+ const id = row.id || this.ids;
+ getDonatebaseinfo(id).then(response => {
+ this.form = response.data;
+ this.form.diseasetype = this.form.diseasetype.split(",");
+ this.form.infectious = this.form.infectious.split(",");
+ this.form.selfwill = this.form.selfwill.split(",");
+ this.form.othercases = this.form.othercases.split(",");
+ this.form.infosources = this.form.infosources.split(",");
+ this.form.kinship = this.form.kinship.split(",");
+ this.form.patientstate = this.form.patientstate.split(",");
+ this.registerAddresss.sheng = response.data.registerprovincename;
+ this.residenceAddresss.sheng = response.data.residenceprovincename;
+ this.registerAddresss.shi = response.data.registercityname;
+ this.residenceAddresss.shi = response.data.residencecityname;
+ this.residenceAddresss.qu = response.data.residencetownname;
+ this.registerAddresss.qu = response.data.registertownname;
+ this.open = true;
+ this.title = "浜轰綋鍣ㄥ畼娼滃湪鎹愮尞鑰呯櫥璁拌〃";
+ this.form.recordstate = 99;
+ // this.$nextTick(function() {
+ // this.$refs.annex.getAnnexList();
+ // });
+ });
+ },
+ /** 鎻愪氦鎸夐挳 */
+ submitForm() {
+ console.log(this.form);
+ this.$refs["form"].validate(valid => {
+ if (valid) {
+ const date = { ...this.form };
+ console.log(date, "date");
+ this.form.birthday = this.$moment(this.form.birthday).format(
+ "YYYY-MM-DD HH:mm:ss"
+ );
+ this.form.diseasetype = this.form.diseasetype.join(",");
+ this.form.infectious = this.form.infectious.join(",");
+ this.form.selfwill = this.form.selfwill.join(",");
+ this.form.othercases = this.form.othercases.join(",");
+ this.form.infosources = this.form.infosources.join(",");
+ this.form.kinship = this.form.kinship.join(",");
+ this.form.patientstate = this.form.patientstate.join(",");
+ this.form.registerprovince = this.$refs.registerSelect.getSheng();
+ this.form.registerprovincename = this.registerAddresss.sheng;
+
+ this.form.residenceprovince = this.$refs.residenceSelect.getSheng();
+ this.form.residenceprovincename = this.residenceAddresss.sheng;
+
+ this.form.registercity = this.$refs.registerSelect.getShi();
+ this.form.registercityname = this.registerAddresss.shi;
+
+ this.form.residencecity = this.$refs.residenceSelect.getShi();
+ this.form.residencecityname = this.residenceAddresss.shi;
+
+ this.form.residencetown = this.$refs.residenceSelect.getQu();
+ this.form.residencetownname = this.residenceAddresss.qu;
+
+ this.form.registertown = this.$refs.registerSelect.getQu();
+ this.form.registertownname = this.registerAddresss.qu;
+
+ this.form.reportername = this.$refs.getReportname.$data.selectedLabel;
+ this.form.donatetime = this.form.reporttime;
+
+ try {
+ this.form.treatmenthospitalname = this.$refs.addOrgSelect.getOptionByValue(
+ this.form.treatmenthospitalno
+ ).organizationname;
+ } catch {
+ this.form.treatmenthospitalname = this.form.treatmenthospitalno;
+ }
+
+ try {
+ this.form.redorganname = this.$refs.addCrossOrgSelect.getOptionByValue(
+ this.form.redorganno
+ ).organizationname;
+ } catch {
+ this.form.redorganname = this.form.redorganno;
+ }
+
+ this.form.workflow = 0;
+ this.form.recordstate = 0;
+ addDonatebaseinfo(this.form).then(res => {
+ console.log("22");
+ console.log(res.code);
+ if (res.code == 200) {
+ this.$modal.msgSuccess("鏂板鎴愬姛");
+ this.$router.push({
+ path: "/organ/donationdetails/",
+ query: {
+ id: res.data.id,
+ organType: "edit"
+ }
+ });
+ this.open = false;
+ } else {
+ console.log("1");
+ this.form = date;
+ console.log(this.form, "form");
+ this.$modal.msgError("鏂板澶辫触锛�" + res.msg);
+ }
+ });
+ }
+ });
+ },
+ /** 鍒犻櫎鎸夐挳鎿嶄綔 */
+ handleDelete(row) {
+ const ids = row.id || this.ids;
+ this.$modal
+ .confirm('鏄惁纭鍒犻櫎鎹愮尞鍩虹缂栧彿涓�"' + ids + '"鐨勬暟鎹」锛�')
+ .then(function() {
+ return delDonatebaseinfo(ids);
+ })
+ .then(() => {
+ this.getList();
+ this.$modal.msgSuccess("鍒犻櫎鎴愬姛");
+ })
+ .catch(() => {});
+ },
+
+ /** 瀵煎嚭鎸夐挳鎿嶄綔 */
+ handleExport() {
+ const queryParams = this.queryParams;
+ this.$modal
+ .confirm("鏄惁纭瀵煎嚭鎵�鏈夋崘鐚熀纭�鏁版嵁椤癸紵")
+ .then(() => {
+ this.exportLoading = true;
+ return exportDonatebaseinfo(queryParams);
+ })
+ .then(response => {
+ this.$download.name(response.msg);
+ this.exportLoading = false;
+ })
+ .catch(() => {});
+ },
+
+ // 瀵硅薄杞垚鎸囧畾瀛楃涓插垎闅�
+ listToString(list, separator) {
+ let strs = "";
+ separator = separator || ",";
+ for (let i in list) {
+ strs += list[i] + separator;
+ }
+ return strs != "" ? strs.substr(0, strs.length - 1) : "";
+ },
+ //瀛楃涓叉牴鎹寚瀹氬瓧绗︿覆鍒嗛殧
+ stringToList(str, separator) {
+ separator = separator || ",";
+ let tempList = [];
+ if (str != null && str != undefined && str != "") {
+ tempList = str.split(separator);
+ }
+ return tempList;
+ },
+
+ //涓嬭浇娼滃湪鐧昏琛�
+ handledownload(row) {
+ const id = row.id || this.ids;
+
+ downloadbaseinfo(id).then(res => {
+ var fileUrl = res;
+ //鑾峰彇褰撳墠缃戝潃
+ var urlBase = process.env.VUE_APP_BASE_API;
+ var curWWWPath = window.document.location.href;
+ var pos = curWWWPath.indexOf(window.document.location.pathname);
+ // 鍒涘缓a鏍囩
+ var aEle = document.createElement("a");
+ aEle.href =
+ curWWWPath.substring(0, pos) + urlBase + fileUrl["downloadUrl"];
+ console.log(aEle.href);
+ // 娣诲姞Authorization澶撮儴
+ fetch(aEle.href, {
+ headers: this.headers
+ })
+ .then(response => {
+ // 灏嗘枃浠朵笅杞介摼鎺ヤ綔涓篵lob瀵硅薄杩涜涓嬭浇
+ return response.blob();
+ })
+ .then(blob => {
+ const url = window.URL.createObjectURL(new Blob([blob]));
+ console.log(url);
+ const link = document.createElement("a");
+ link.href = url;
+ const name = fileUrl["downloadName"];
+ link.setAttribute("download", name); // 鏇挎崲file.pdf涓哄疄闄呯殑鏂囦欢鍚�
+ document.body.appendChild(link);
+ link.click();
+ link.parentNode.removeChild(link);
+ });
+ });
+ }
+ }
+};
+</script>
+
+<style scoped>
+::v-deep .el-dialog__header {
+ padding-top: 40px !important;
+ margin: auto !important;
+ padding-bottom: 0px !important;
+}
+</style>
diff --git a/src/views/project/indexstatistics/components/organnumchart/index.vue b/src/views/project/indexstatistics/components/organnumchart/index.vue
index 627840e..982ee31 100644
--- a/src/views/project/indexstatistics/components/organnumchart/index.vue
+++ b/src/views/project/indexstatistics/components/organnumchart/index.vue
@@ -34,6 +34,9 @@
cdata: {
type: Array,
default: () => []
+ },
+ CommonOrgan: {
+ type: Object
}
},
data() {
@@ -55,7 +58,19 @@
}
this.options = {
title: {
- text: "鑾峰彇鍣ㄥ畼鍜岀粍缁囩殑鏁伴噺"
+ text:
+ "鑾峰彇鍣ㄥ畼鍜岀粍缁囩殑鏁伴噺" +
+ "(鑾峰彇閲忥細" +
+ this.CommonOrgan.countSum +
+ "锛涘純鐢ㄩ噺锛�" +
+ this.CommonOrgan.abandonCountSum +
+ ")",
+ left: "center",
+ top: "5%",
+ textStyle: {
+ color: "#566f94",
+ fontSize: 16
+ }
},
tooltip: {
trigger: "axis",
diff --git a/src/views/project/indexstatistics/index.vue b/src/views/project/indexstatistics/index.vue
index 3402446..194474d 100644
--- a/src/views/project/indexstatistics/index.vue
+++ b/src/views/project/indexstatistics/index.vue
@@ -258,8 +258,27 @@
>
<el-row style="margin-bottom: 20px">
<span style="font-size: 18px; color: #566f94; font-weight: bold"
- >鏈勾搴︽寚鏍囨暟鎹垎鏋�</span
+ >鎸囨爣鏁版嵁鍒嗘瀽</span
>
+ <span style="margin-left: 30px;">
+ <router-link
+ :to="{
+ name: 'DonationProcess',
+ params: {
+ starttime: starttime,
+ endtime: endtime,
+ terminationcase: 1,
+ reporterno: reportervalue,
+ shen: searchAddress.shen,
+ shi: searchAddress.shi,
+ qu: searchAddress.qu,
+ city: city
+ }
+ }"
+ >
+ <el-button type="primary" round>鎹愮尞杩涚▼</el-button>
+ </router-link>
+ </span>
</el-row>
<el-row :gutter="3">
<el-col :span="8" style="text-align: center">
@@ -421,7 +440,7 @@
</el-col>
<el-col :span="12">
<el-card shadow="always" style="height: 640px" ref="organChartCard">
- <OrganNumChart :cdata="organData" />
+ <OrganNumChart :cdata="organData" :CommonOrgan="CommonOrgan" />
</el-card>
<!-- <el-col :span="7">
<el-card shadow="always" style="height: 640px" ref="orgNumberCard">
@@ -630,6 +649,7 @@
year: "閫夋嫨骞翠唤",
isloading: false,
maxHeight: 0,
+ CommonOrgan: null,
provinceData: [
{ label: "鍏ㄩ儴鍦板競", value: "" },
{ label: "鏉窞甯�", value: "1" },
@@ -1029,7 +1049,8 @@
}
this.organData = list;
*/
- let list = response.data;
+ let list = response.data.organInfoVOList;
+ this.CommonOrgan = response.data;
for (let i = 0; i < this.organData.length; i++) {
let ii = list.findIndex(
item => item.organNo == this.organData[i].code
--
Gitblit v1.9.3