From 1c08c6dcbe0f81bd8cff8a363e0d6f5c996474be Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期四, 14 三月 2024 09:49:33 +0800 Subject: [PATCH] 11 --- src/views/project/donationdetails/index.vue | 135 - src/views/project/ethicalReview/index.vue | 385 ++++- src/api/project/statistics.js | 16 src/views/project/statistics/caseStatistics/index.vue | 446 +++++++ src/views/project/donorcharge/donorchargedetail/index.vue | 87 src/views/project/statistics/chargeStatistics/index.vue | 442 ++++++ src/views/project/statistics/applyStatistics/index.vue | 432 ++++++ src/views/project/statistics/performanceStaristics/index.vue | 104 src/api/project/organallocation.js | 2 src/views/project/indexstatistics/index.vue | 115 - src/views/project/unitCost/particulars/index.vue | 1454 +++++++++++++++++++++++ 11 files changed, 3,213 insertions(+), 405 deletions(-) diff --git a/src/api/project/organallocation.js b/src/api/project/organallocation.js index e352ed6..d36e2bc 100644 --- a/src/api/project/organallocation.js +++ b/src/api/project/organallocation.js @@ -3,7 +3,7 @@ // 鏌ヨ鍣ㄥ畼鍒嗛厤鍒楄〃 export function listOrganallocation(query) { return request({ - url: '/project/organallocation/list', + url: '/project/donateorgan/countList', method: 'get', params: query }) diff --git a/src/api/project/statistics.js b/src/api/project/statistics.js index 9bc1b38..493d64b 100644 --- a/src/api/project/statistics.js +++ b/src/api/project/statistics.js @@ -4,31 +4,31 @@ export function listanlstatistics(query) { return request({ url: '/project/spstatcase/spStatCaselist', - method: 'get', - params: query + method: 'post', + data: query }) } // 鏌ヨ缁╂晥缁熻 export function listjixstatistics(query) { return request({ url: '/project/funddetail/getListBySpStatBonus', - method: 'get', - params: query + method: 'post', + data: query }) } // 鏌ヨ鎶ラ攢缁熻 export function listbxiaostatistics(query) { return request({ url: '/project/spstatexpense/spStatExpenselist', - method: 'get', - params: query + method: 'post', + data: query }) } // 鏌ヨ鏀惰垂缁熻 export function listsfeistatistics(query) { return request({ url: '/project/donorchargeorgan/getListBySpStatChange', - method: 'get', - params: query + method: 'post', + data: query }) } \ No newline at end of file diff --git a/src/views/project/donationdetails/index.vue b/src/views/project/donationdetails/index.vue index 1ce9e1c..9285831 100644 --- a/src/views/project/donationdetails/index.vue +++ b/src/views/project/donationdetails/index.vue @@ -6,10 +6,7 @@ <div> <el-steps direction="vertical" :active="workflow"> <el-step title="娼滃湪鎹愮尞" icon="el-icon-user"> - <template - slot="description" - v-if="donatebaseinfo.createtime" - > + <template slot="description" v-if="donatebaseinfo.createtime"> <p> 鎻愪氦锛�<span >{{ donatebaseinfo.createperson }} @@ -29,24 +26,17 @@ icon="el-icon-edit-outline" description="璇峰厛瀹屾垚鍓嶉儴姝ラ" > - <template - slot="description" - v-if="medicalevaluation.createtime" - > + <template slot="description" v-if="medicalevaluation.createtime"> <p> 鎻愪氦锛�<span> {{ medicalevaluation.createperson }} - {{ - parseTime(medicalevaluation.createtime) - }}</span + {{ parseTime(medicalevaluation.createtime) }}</span > </p> <p> 鏇存柊锛�<span> {{ medicalevaluation.updateperson }} - {{ - parseTime(medicalevaluation.updatetime) - }}</span + {{ parseTime(medicalevaluation.updatetime) }}</span > </p> </template> @@ -63,17 +53,13 @@ <p> 鎻愪氦锛�<span> {{ relativesconfirmation.createperson }} - {{ - parseTime(relativesconfirmation.createtime) - }}</span + {{ parseTime(relativesconfirmation.createtime) }}</span > </p> <p> 鏇存柊锛�<span> {{ relativesconfirmation.updateperson }} - {{ - parseTime(relativesconfirmation.updatetime) - }}</span + {{ parseTime(relativesconfirmation.updatetime) }}</span > </p> </template> @@ -83,24 +69,17 @@ description="璇峰厛瀹屾垚鍓嶉儴姝ラ" icon="el-icon-s-order" > - <template - slot="description" - v-if="donateflowcharts.createtime" - > + <template slot="description" v-if="donateflowcharts.createtime"> <p> 鎻愪氦锛�<span> {{ donateflowcharts.createperson }} - {{ - parseTime(donateflowcharts.createtime) - }}</span + {{ parseTime(donateflowcharts.createtime) }}</span > </p> <p> 鏇存柊锛�<span> {{ donateflowcharts.updateperson }} - {{ - parseTime(donateflowcharts.updatetime) - }}</span + {{ parseTime(donateflowcharts.updatetime) }}</span > </p> </template> @@ -117,17 +96,13 @@ <p> 鎻愪氦锛�<span> {{ donateorgansService.createperson }} - {{ - parseTime(donateorgansService.createtime) - }}</span + {{ parseTime(donateorgansService.createtime) }}</span > </p> <p> 鏇存柊锛�<span> {{ donateorgansService.updateperson }} - {{ - parseTime(donateorgansService.updatetime) - }}</span + {{ parseTime(donateorgansService.updatetime) }}</span > </p> </template> @@ -137,24 +112,17 @@ description="璇峰厛瀹屾垚鍓嶉儴姝ラ" icon="el-icon-s-management" > - <template - slot="description" - v-if="donationwitness.createtime" - > + <template slot="description" v-if="donationwitness.createtime"> <p> 鎻愪氦锛�<span> {{ donationwitness.createperson }} - {{ - parseTime(donationwitness.createtime) - }}</span + {{ parseTime(donationwitness.createtime) }}</span > </p> <p> 鏇存柊锛�<span> {{ donationwitness.updateperson }} - {{ - parseTime(donationwitness.updatetime) - }}</span + {{ parseTime(donationwitness.updatetime) }}</span > </p> </template> @@ -171,17 +139,13 @@ <p> 鎻愪氦锛�<span> {{ donatecompletioninfo.createperson }} - {{ - parseTime(donatecompletioninfo.createtime) - }}</span + {{ parseTime(donatecompletioninfo.createtime) }}</span > </p> <p> 鏇存柊锛�<span> {{ donatecompletioninfo.updateperson }} - {{ - parseTime(donatecompletioninfo.updatetime) - }}</span + {{ parseTime(donatecompletioninfo.updatetime) }}</span > </p> </template> @@ -2611,13 +2575,13 @@ showTerminationBtn: 0, //缁堟鐘舵�� 0-鏈粓姝� 1-宸茬粓姝� // 娴佺▼鏁版嵁锛歞onatebaseinfo[createtime,updatetime]銆乵edicalevaluation銆乺elativesconfirmation銆乨onateflowcharts銆乨onateorgansService銆乨onationwitness銆乨onatecompletioninfo Processdata: {}, - donatebaseinfo:{}, - medicalevaluation:{}, - relativesconfirmation:{}, - donateflowcharts:{}, - donateorgansService:{}, - donationwitness:{}, - donatecompletioninfo:{}, + donatebaseinfo: {}, + medicalevaluation: {}, + relativesconfirmation: {}, + donateflowcharts: {}, + donateorgansService: {}, + donationwitness: {}, + donatecompletioninfo: {}, //鐪佸競鍖洪粯璁ゅ�艰缃紝鍙负绌� searchAddress: { sheng: "", @@ -2805,17 +2769,17 @@ Getbasicinformation() { // 宸︿晶娴佺▼鏁版嵁 getDonatebaseinfoflow(this.infoid).then(res => { - if (res.code==200) { + if (res.code == 200) { this.Processdata = res.data; - this.donatebaseinfo=this.Processdata.donatebaseinfo; - this.medicalevaluation=this.Processdata.medicalevaluation; - this.relativesconfirmation=this.Processdata.relativesconfirmation; - this.donateflowcharts=this.Processdata.donateflowcharts; - this.donateorgansService=this.Processdata.donateorgansService; - this.donationwitness=this.Processdata.donationwitness; - this.donatecompletioninfo=this.Processdata.donatecompletioninfo; - }else{ - this.$message.error('渚ц竟鏍忎俊鎭幏鍙栧け璐�'); + this.donatebaseinfo = this.Processdata.donatebaseinfo; + this.medicalevaluation = this.Processdata.medicalevaluation; + this.relativesconfirmation = this.Processdata.relativesconfirmation; + this.donateflowcharts = this.Processdata.donateflowcharts; + this.donateorgansService = this.Processdata.donateorgansService; + this.donationwitness = this.Processdata.donationwitness; + this.donatecompletioninfo = this.Processdata.donatecompletioninfo; + } else { + this.$message.error("渚ц竟鏍忎俊鎭幏鍙栧け璐�"); } }); @@ -2857,9 +2821,7 @@ }; if (this.actives == 1) { this.activetele = "鍖诲璇勪及"; - if (this.medicineform.infoid) { - return; - } + listMedicalevaluation(searchParam).then(response => { if (response.code == 200 && response.rows[0]) { this.medicineform = response.rows[0]; @@ -2871,9 +2833,7 @@ }); } else if (this.actives == 2) { this.activetele = "鎹愮尞纭"; - if (this.affirmform.infoid) { - return; - } + listRelativesconfirmation(searchParam).then(response => { if (response.code == 200 && response.rows[0]) { this.affirmform = response.rows[0]; @@ -2905,9 +2865,7 @@ }); } else if (this.actives == 3) { this.activetele = "浼︾悊瀹℃煡"; - if (this.ethicform.infoid) { - return; - } + //listDonateflowchart(searchParam).then(response => { listEthicalreviewopinions(searchParam).then(response => { if (response.code == 200 && response.rows.length) { @@ -2916,7 +2874,7 @@ console.log("浼︾悊瀹℃煡鏁版嵁涓虹┖"); } }); - } else if (this.actives == 4 && !this.allocateddata[0]) { + } else if (this.actives == 4) { listDonateorgan(searchParam).then(res => { if (res.code == 200) { if (res.rows[0]) { @@ -2934,19 +2892,20 @@ // ); } }); - } else if (this.actives == 5 && !this.witnessform.infoid) { + } else if (this.actives == 5 && !this.witnessform.id) { // 涓嶅瓨鍦ㄦ椂鑾峰彇鍣ㄥ畼淇℃伅 - if (this.witnessform.infoid) { + if (this.witnessform.id) { return; } - listDonationwitnessorgan(searchParam).then(res => { if (res.code == 200) { if (res.rows[0]) { this.procureddata = res.rows; this.procureddata.infoid = this.infoid; } else { - this.procureddata = this.allocateddata.filter(obj => obj.organname !== '宸﹁倽' && obj.organname !== '鍙宠倽');; + this.procureddata = this.allocateddata.filter( + obj => obj.organname !== "宸﹁倽" && obj.organname !== "鍙宠倽" + ); this.procureddata.infoid = this.infoid; } this.organList.organprocured = []; @@ -2975,7 +2934,7 @@ }); } else if (this.actives == 6) { this.activetele = "瀹屾垚鐧昏"; - if (this.accomplishform.infoid) { + if (this.accomplishform.id) { return; } @@ -3268,6 +3227,7 @@ console.log(objfn, "sass"); updateDonorchargeorgan(objfn).then(res1 => {}); } else { + item.id = null; addDonorchargeorgan(item).then(res2 => {}); } }); @@ -3529,7 +3489,7 @@ infoid: this.infoid, donorno: this.form.donorno, organstate: 1, - transplantstate:1, + transplantstate: 1 }); } } else { @@ -3572,6 +3532,11 @@ if (this.form.workflow == 9) { this.form.workflow = 8; this.submitForm(); + this.$router.go(-1); + this.$message({ + type: "success", + message: "鎾ら攢鎴愬姛!" + }); } else { this.$confirm("鍗冲皢杩涜妗堜緥褰掓。, 纭鎵�鏈夋暟鎹凡淇濆瓨?", "鎻愮ず", { confirmButtonText: "纭畾", diff --git a/src/views/project/donorcharge/donorchargedetail/index.vue b/src/views/project/donorcharge/donorchargedetail/index.vue index 9ee3282..ff83f5d 100644 --- a/src/views/project/donorcharge/donorchargedetail/index.vue +++ b/src/views/project/donorcharge/donorchargedetail/index.vue @@ -147,8 +147,8 @@ <template slot-scope="scope"> <el-input v-model="scope.row.caseno" - :disabled="true" placeholder="绯荤粺缂栧彿" + :disabled="true" /> </template> </el-table-column> @@ -161,8 +161,8 @@ <template slot-scope="scope"> <el-input v-model="scope.row.amount" - :disabled="true" placeholder="瀹炴敹閲戦" + :disabled="true" /> </template> </el-table-column> @@ -195,24 +195,24 @@ <template slot-scope="scope"> <el-input v-model="scope.row.organcharge" - :disabled="true" placeholder="鏍囧噯璐圭敤" + :disabled="true" /> </template> </el-table-column> <el-table-column - prop="hospitalname" + prop="hospitalno" align="center" label="鎺ユ敹鍖婚櫌" width="280" > <template slot-scope="scope"> <org-selecter - :disabled="true" + v-model="scope.row.hospitalno" ref="tranHosSelect" :org-type="'4'" - v-model="scope.row.hospitalno" style="width: 100%" + :disabled="true" /> </template> </el-table-column> @@ -309,7 +309,6 @@ return { activeName: 1, //鏂囦欢绫诲瀷 // 閮ㄩ棬鏍戦�夐」 - //绁ㄦ嵁鏂囦欢 pdftitle: "", pdfimg: "", @@ -352,8 +351,6 @@ donorchargeorgans: [], // 寮瑰嚭灞傛爣棰� title: "", - // 鏄惁鏄剧ず寮瑰嚭灞� - open: false, // 鏌ヨ璐圭敤琛ㄥ弬鏁� queryParams: { pageNum: 1, @@ -370,7 +367,6 @@ pageSize: 10, donorchargeid: null }, - // 褰撳墠鐢ㄦ埛淇℃伅 userprofile: {}, // 琛ㄥ崟鍙傛暟 @@ -388,7 +384,7 @@ { required: true, message: "璇疯緭鍏ユ墍灞炰笟鍔$粍", trigger: "blur" } ] }, - gxinzt: false, + baselist: [], donorList: [], organchargelist: [], @@ -419,7 +415,6 @@ headers: { Authorization: "Bearer " + getToken() }, - jurisdiction: false, //淇濆瓨鎸夐挳鎺у埗 @@ -437,7 +432,6 @@ this.defaultperson = response.data; this.standardlevel = response.data.standardlevel; }); - //鑾峰彇鍙傛暟 this.getroute(); }, @@ -531,8 +525,6 @@ this.operationType = this.$route.query.operation; this.curId = this.$route.query.id; this.curCase = this.$route.query.data; - this.gxinzt = this.$route.query.gxinzt; - console.log(this.curCase); console.log("this.$route.query", this.$route.query); if (this.operationType == "add") { @@ -572,7 +564,6 @@ /** 鏂板鎸夐挳鎿嶄綔 */ handleAdd() { this.reset(); - this.open = true; this.title = "鏂板鎹愮尞妗堜緥鍣ㄥ畼璐圭敤琛�"; if (this.curCase) { @@ -585,13 +576,46 @@ this.form.age = this.curCase.age; this.form.donationcategory = this.curCase.donationcategory; - this.organParams.infoid = this.curCase.id; - listDonorchargeorgan(this.organParams).then(res => { - console.log("listDonorchargeorgan", res); - this.donorchargeorgans = res.rows; - if (this.donorchargeorgans.length > 0) { - } else { - this.addRow(0); + //鑾峰彇瀹屾垚鐧昏鐨勫櫒瀹樿〃 + if (this.curCase.id > 0) { + } else { + this.curCase.id = 0; + } + let searchParam = { + infoid: this.curCase.id + }; + listDonatecomporgan(searchParam).then(res => { + if (res.code == 200) { + // 鏌ヨ鍣ㄥ畼璐圭敤琛� + let tempParam = { + organcode: null, + organname: null, + charge: null + }; + listOrgancharge(tempParam).then(res1 => { + if (res1.code == 200) { + this.organchargelist = res1.rows; + } + //鎻掑叆鍣ㄥ畼琛� + res.rows.forEach(item => { + //鑾峰彇璐圭敤閲戦 + this.organchargelist.map(rescharge => { + if (rescharge.organcode == item.organno) { + this.donorchargeorgans.push({ + organno: item.organno, + caseno: item.caseno, + organname: item.organname, + organcharge: rescharge.charge, + infoid: item.infoid, + hospitalname: item.hospitalname, + hospitalno: item.hospitalno, + organtime: item.transplanttime, + chargestate: "0" + }); + } + }); + }); + }); } }); } @@ -600,14 +624,13 @@ /** 淇敼鎸夐挳鎿嶄綔 */ handleUpdate() { this.reset(); - this.open = true; this.title = "淇敼鎹愮尞妗堜緥鍣ㄥ畼璐圭敤琛�"; getDonorcharge(this.curId).then(response => { this.form = response.data; console.log("getDonorcharge", response); //鍣ㄥ畼璐圭敤淇℃伅 - this.organParams.infoid = this.form.infoid; + this.organParams.donorchargeid = this.curId; console.log("this.organParams", this.organParams); listDonorchargeorgan(this.organParams).then(res => { console.log("listDonorchargeorgan", res); @@ -617,9 +640,6 @@ } else { this.addRow(0); } - if ((this.gxinzt = true)) { - this.submitForm(); - } }); }); }, @@ -627,15 +647,13 @@ /** 淇敼鏌ョ湅鎿嶄綔 */ handleDetail() { this.reset(); - this.open = true; getDonorcharge(this.curId).then(response => { this.form = response.data; - this.open = true; this.title = "鏌ョ湅鎹愮尞妗堜緥鍣ㄥ畼璐圭敤琛�"; //鍣ㄥ畼璐圭敤淇℃伅 - this.organParams.infoid = this.form.infoid; + this.organParams.donorchargeid = this.curId; listDonorchargeorgan(this.organParams).then(res => { this.donorchargeorgans = res.rows; if (this.donorchargeorgans.length > 0) { @@ -678,13 +696,13 @@ for (let k = 0; k < this.donorchargeorgans.length; k++) { this.donorchargeorgans[k].donorchargeID = this.form.id; } - updateDonorcharge(this.form).then(res1 => { if (res1.code == 200) { saveDonorchargeorgan(this.donorchargeorgans).then(res2 => { if (res2.code == 200) { this.$modal.msgSuccess("淇濆瓨鎴愬姛锛�"); - this.open = false; + this.$router.go(-1); + } }); } @@ -700,7 +718,8 @@ saveDonorchargeorgan(this.donorchargeorgans).then(res2 => { if (res2.code == 200) { this.$modal.msgSuccess("淇濆瓨鎴愬姛锛�"); - this.open = false; + this.$router.go(-1); + } }); } diff --git a/src/views/project/ethicalReview/index.vue b/src/views/project/ethicalReview/index.vue index ae154db..5a420d8 100644 --- a/src/views/project/ethicalReview/index.vue +++ b/src/views/project/ethicalReview/index.vue @@ -1,24 +1,48 @@ <template> <div class="app-container"> - <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="70px"> + <el-form + :model="queryParams" + ref="queryForm" + :inline="true" + v-show="showSearch" + label-width="70px" + > <el-row :gutter="8"> <el-col :span="6"> <el-form-item label="濮撳悕" prop="name"> - <el-input v-model="queryParams.name" placeholder="璇疯緭鍏ュ鍚�" clearable size="small" - @keyup.enter.native="handleQuery" /> + <el-input + v-model="queryParams.name" + placeholder="璇疯緭鍏ュ鍚�" + clearable + size="small" + @keyup.enter.native="handleQuery" + /> </el-form-item> </el-col> <el-col :span="6"> - <el-form-item align="left" label="鍖荤枟鏈烘瀯" prop="treatmenthospitalno"> - <org-selecter ref="orgSelecter" :org-type="'3'" v-model="queryParams.treatmenthospitalno" /> + <el-form-item + align="left" + label="鍖荤枟鏈烘瀯" + prop="treatmenthospitalno" + > + <org-selecter + ref="orgSelecter" + :org-type="'3'" + v-model="queryParams.treatmenthospitalno" + /> </el-form-item> </el-col> <el-col :span="6"> <el-form-item label="鎹愮尞鍦板競"> <el-select v-model="queryParams.city" placeholder="璇烽�夋嫨鍦板競"> - <el-option v-for="item in provinceData" :key="item.value" :label="item.label" :value="item.value"> + <el-option + v-for="item in provinceData" + :key="item.value" + :label="item.label" + :value="item.value" + > </el-option> </el-select> </el-form-item> @@ -26,9 +50,18 @@ <el-col :span="6"> <el-form-item label="鎹愮尞杩涘害" prop="recordstate"> - <el-select v-model="queryParams.workflow" placeholder="璇烽�夋嫨鎹愮尞杩涘害" clearable size="small"> - <el-option v-for="dict in dict.type.sys_donornode" :key="dict.value" :label="dict.label" - :value="dict.value" /> + <el-select + v-model="queryParams.workflow" + placeholder="璇烽�夋嫨鎹愮尞杩涘害" + clearable + size="small" + > + <el-option + v-for="dict in dict.type.sys_donornode" + :key="dict.value" + :label="dict.label" + :value="dict.value" + /> </el-select> </el-form-item> </el-col> @@ -36,8 +69,16 @@ <el-row :gutter="8"> <el-col :span="6"> <el-form-item label="鎶ュ憡浜�"> - <el-select v-model="queryParams.reporterno" placeholder="璇烽�夋嫨鎶ュ憡浜�"> - <el-option v-for="item in reportlist" :key="item.index" :label="item.reportername" :value="item.reporterno"> + <el-select + v-model="queryParams.reporterno" + placeholder="璇烽�夋嫨鎶ュ憡浜�" + > + <el-option + v-for="item in reportlist" + :key="item.index" + :label="item.reportername" + :value="item.reporterno" + > </el-option> </el-select> </el-form-item> @@ -45,40 +86,91 @@ <el-col :span="12"> <el-form-item label="鎶ュ憡鏃ユ湡"> - <el-date-picker style="width: 100%" v-model="selecttime" type="monthrange" range-separator="鑷�" - start-placeholder="寮�濮嬫湀浠�" end-placeholder="缁撴潫鏈堜唤" value-format="yyyy-MM-dd" @change="getTimeList"> + <el-date-picker + style="width: 100%" + v-model="selecttime" + type="monthrange" + range-separator="鑷�" + start-placeholder="寮�濮嬫湀浠�" + end-placeholder="缁撴潫鏈堜唤" + value-format="yyyy-MM-dd" + @change="getTimeList" + > </el-date-picker> </el-form-item> </el-col> <el-col :span="6"> <el-form-item> - <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button> - <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button> + <el-button + type="primary" + icon="el-icon-search" + size="mini" + @click="handleQuery" + >鎼滅储</el-button + > + <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" + >閲嶇疆</el-button + > </el-form-item> </el-col> </el-row> </el-form> - <el-table :default-sort="{ prop: 'createTime' }" v-loading="loading" :data="listnews" border> + <el-table + :default-sort="{ prop: 'createTime' }" + v-loading="loading" + :data="listnews" + border + > <el-table-column label="鎹愮尞鑰�" align="center" prop="name" width="120" /> <el-table-column label="骞撮緞" align="center" prop="age" width="100" /> <el-table-column label="鎬у埆" align="center" prop="sex" width="100"> <template slot-scope="scope"> - <dict-tag :options="dict.type.sys_user_sex" :value="parseInt(scope.row.sex)" /> + <dict-tag + :options="dict.type.sys_user_sex" + :value="parseInt(scope.row.sex)" + /> </template> </el-table-column> - <el-table-column label="鍖荤枟鏈烘瀯" align="center" prop="treatmenthospitalname" /> - <el-table-column label="浼︾悊瀹℃煡缁撹" align="center" prop="flowconclusion" width="100"> + <el-table-column + label="鍖荤枟鏈烘瀯" + align="center" + prop="treatmenthospitalname" + /> + <el-table-column + label="浼︾悊瀹℃煡缁撹" + align="center" + prop="flowconclusion" + width="100" + > <template slot-scope="scope"> - <dict-tag :options="dict.type.sys_EthicalReview" :value="scope.row.flowconclusion" /> + <dict-tag + :options="dict.type.sys_EthicalReview" + :value="scope.row.flowconclusion" + /> </template> </el-table-column> <el-table-column label="瀹℃煡鎰忚" align="center" prop="flowcontent" /> - <el-table-column label="瀹℃煡鏃堕棿" align="center" prop="createTime" width="160" /> + <el-table-column + label="瀹℃煡鏃堕棿" + align="center" + prop="createTime" + width="160" + /> <!-- <el-table-column label="韬唤璇佸彿" prop="idcardno" width="200" /> --> - <el-table-column label="鎶ュ憡浜�" align="center" prop="reportername" width="100" /> - <el-table-column label="鎶ュ憡鏃堕棿" align="center" prop="reporttime" width="140"> + <el-table-column + label="鎶ュ憡浜�" + align="center" + prop="reportername" + width="100" + /> + <el-table-column + label="鎶ュ憡鏃堕棿" + align="center" + prop="reporttime" + width="140" + > <template slot-scope="scope"> <span>{{ parseTime(scope.row.reporttime, "{y}-{m}-{d}") }}</span> </template> @@ -90,29 +182,58 @@ </template> </el-table-column> --> - <el-table-column label="鎿嶄綔" align="center" width="150px" class-name="small-padding fixed-width" fixed="right"> + <el-table-column + label="鎿嶄綔" + align="center" + width="150px" + class-name="small-padding fixed-width" + fixed="right" + > <template slot-scope="scope"> - <el-button size="mini" type="text" icon="el-icon-coordinate" - @click="showDonationEvaluationDialog(scope.row)">浼︾悊瀹℃煡 + <el-button + size="mini" + type="text" + icon="el-icon-coordinate" + @click="showDonationEvaluationDialog(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" /> + <pagination + v-show="total > 0" + :total="total" + :page.sync="queryParams.pageNum" + :limit.sync="queryParams.pageSize" + @pagination="getList" + /> <!-- 浼︾悊瀹℃煡寮圭獥 --> - <el-dialog :title="title" :visible.sync="open" :close-on-click-modal="false" width="1000px" append-to-body> + <el-dialog + :title="title" + :visible.sync="open" + :close-on-click-modal="false" + width="1000px" + append-to-body + > <el-form ref="form" :model="form" :rules="rules" label-width="160px"> <el-row> <el-col :span="12"> <el-form-item align="left" label="鎹愮尞缂栧彿"> - <el-input v-model="curCase.donorno" placeholder="璇疯緭鍏ユ崘鐚紪鍙�" disabled /> + <el-input + v-model="curCase.donorno" + placeholder="璇疯緭鍏ユ崘鐚紪鍙�" + disabled + /> </el-form-item> </el-col> <el-col :span="12"> <el-form-item label="鎹愮尞鑰呭鍚�"> - <el-input v-model="curCase.name" placeholder="璇疯緭鍏ュ鍚�" disabled /> + <el-input + v-model="curCase.name" + placeholder="璇疯緭鍏ュ鍚�" + disabled + /> </el-form-item> </el-col> </el-row> @@ -121,15 +242,23 @@ </el-row> <el-form-item label="瀹℃煡鎰忚"> - <el-input v-model="form.flowcontent" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" /> + <el-input + v-model="form.flowcontent" + type="textarea" + placeholder="璇疯緭鍏ュ唴瀹�" + /> </el-form-item> <el-row> <el-col :span="18"> <el-form-item label="瀹℃煡缁撹"> <el-radio-group v-model="form.flowconclusion"> - <el-radio v-for="dict in dict.type.sys_EthicalReview" :key="dict.value" :label="parseInt(dict.value)">{{ - dict.label }}</el-radio> + <el-radio + v-for="dict in dict.type.sys_EthicalReview" + :key="dict.value" + :label="parseInt(dict.value)" + >{{ dict.label }}</el-radio + > </el-radio-group> </el-form-item> </el-col> @@ -137,8 +266,14 @@ <!-- createtime 瀹℃煡鏃ユ湡 --> <el-col :span="6" :pull="5"> <el-form-item label="瀹℃煡鏃ユ湡"> - <el-date-picker clearable size="small" v-model="form.createTime" type="date" - value-format="yyyy-MM-dd HH:mm:ss" placeholder="閫夋嫨缁撹鏃堕棿"> + <el-date-picker + clearable + size="small" + v-model="form.createTime" + type="date" + value-format="yyyy-MM-dd HH:mm:ss" + placeholder="閫夋嫨缁撹鏃堕棿" + > </el-date-picker> </el-form-item> </el-col> @@ -209,29 +344,57 @@ </el-row> </el-form-item> --> <el-form-item label="鎹愮尞璧勬枡闄勪欢"> - <annex-upload ref="ethicalannex" :infoid="curCase.id" :donorno="curCase.donorno" :flowname="flowname" - :annexno="annexno" /> + <annex-upload + ref="ethicalannex" + :infoid="curCase.id" + :donorno="curCase.donorno" + :flowname="flowname" + :annexno="annexno" + /> </el-form-item> </el-form> <div slot="footer" class="dialog-footer"> - <el-button type="primary" :loading="loading" @click="submitForm">纭� 瀹�</el-button> + <el-button type="primary" :loading="loading" @click="submitForm" + >纭� 瀹�</el-button + > <el-button @click="cancel">鍙� 娑�</el-button> </div> </el-dialog> <!-- 娣诲姞鎴栦慨鏀逛鸡鐞嗗鏌ヤ笓瀹舵剰瑙佸璇濇 --> - <el-dialog :title="title" :visible.sync="isShowExpertAdviceDialog" width="800px" append-to-body> - <el-form ref="expertAdviceForm" :model="expertAdviceForm" :rules="expertAdviceRules" label-width="80px"> + <el-dialog + :title="title" + :visible.sync="isShowExpertAdviceDialog" + width="800px" + append-to-body + > + <el-form + ref="expertAdviceForm" + :model="expertAdviceForm" + :rules="expertAdviceRules" + label-width="80px" + > <el-form-item label="涓撳鍚嶅瓧" prop="expertname"> - <el-input v-model="expertAdviceForm.expertname" placeholder="璇疯緭鍏ヤ笓瀹跺悕瀛�" /> + <el-input + v-model="expertAdviceForm.expertname" + placeholder="璇疯緭鍏ヤ笓瀹跺悕瀛�" + /> </el-form-item> <el-form-item label="涓撳鎰忚" prop="expertopinion"> - <el-input v-model="expertAdviceForm.expertopinion" type="textarea" placeholder="璇疯緭鍏ュ唴瀹�" /> + <el-input + v-model="expertAdviceForm.expertopinion" + type="textarea" + placeholder="璇疯緭鍏ュ唴瀹�" + /> </el-form-item> <el-form-item label="涓撳缁撹 "> <el-radio-group v-model="expertAdviceForm.expertconclusion"> - <el-radio v-for="dict in dict.type.sys_0_1" :key="dict.value" :label="parseInt(dict.value)">{{ dict.label - }}</el-radio> + <el-radio + v-for="dict in dict.type.sys_0_1" + :key="dict.value" + :label="parseInt(dict.value)" + >{{ dict.label }}</el-radio + > </el-radio-group> </el-form-item> </el-form> @@ -247,12 +410,12 @@ import { listDonatebaseinfo, getDonatebaseinfo, - updateDonatebaseinfo, + updateDonatebaseinfo } from "@/api/project/donatebaseinfo"; import { addDonateflowchart, listDonateflowchart, - updateDonateflowchart, + updateDonateflowchart } from "@/api/project/DonationEvaluation"; import { listEthicalreviewopinions, @@ -260,7 +423,7 @@ delEthicalreviewopinions, addEthicalreviewopinions, updateEthicalreviewopinions, - listnewEthicalreviewopinions, + listnewEthicalreviewopinions } from "@/api/project/ethicalreviewopinions"; import Li_area_select from "@/components/Address"; import OrgSelecter from "@/views/project/components/orgselect"; @@ -270,7 +433,7 @@ components: { Li_area_select, OrgSelecter, - AnnexUpload, + AnnexUpload }, name: "EthicalReview", dicts: [ @@ -292,7 +455,7 @@ "sys_FamilyRelation", "sys_OrganizationType", "sys_EthicalReview", - 'sys_donornode' + "sys_donornode" ], data() { return { @@ -314,7 +477,7 @@ { label: "琛㈠窞甯�", value: "8" }, { label: "鑸熷北甯�", value: "9" }, { label: "鍙板窞甯�", value: "A" }, - { label: "涓芥按甯�", value: "B" }, + { label: "涓芥按甯�", value: "B" } ], //鐪佸競鍖� @@ -322,7 +485,7 @@ defultAddress: { sheng: "娴欐睙鐪�", shi: "", - qu: "", + qu: "" }, // 閬僵灞� loading: true, @@ -366,14 +529,14 @@ organizationtype: null, reportername: null, reporttime: null, - city: null, + city: null }, //鏌ヨ鍙傛暟-涓撳鎰忚 expertAdviceQueryParam: { pageNum: 1, pageSize: 10, infoid: null, - donorno: null, + donorno: null // expertopinion: null, // expertconclusion: null, // expertname: null, @@ -387,7 +550,7 @@ sheng: "", shi: "", qu: "", - organizationname: null, + organizationname: null }, // 琛ㄥ崟鍙傛暟 form: { @@ -403,7 +566,7 @@ flowannex: null, flowcontent: null, flowconclusion: 0, - conclusiontime: null, + conclusiontime: null }, // 琛ㄥ崟鏍¢獙 rules: {}, @@ -420,25 +583,21 @@ // 琛ㄥ崟鏍¢獙 expertAdviceRules: { expertopinion: [ - { required: true, message: "涓撳鎰忚涓嶈兘涓虹┖", trigger: "blur" }, + { required: true, message: "涓撳鎰忚涓嶈兘涓虹┖", trigger: "blur" } ], expertconclusion: [ - { required: true, message: "涓撳缁撹涓嶈兘涓虹┖", trigger: "blur" }, + { required: true, message: "涓撳缁撹涓嶈兘涓虹┖", trigger: "blur" } ], expertname: [ - { required: true, message: "涓撳鍚嶅瓧涓嶈兘涓虹┖", trigger: "blur" }, + { required: true, message: "涓撳鍚嶅瓧涓嶈兘涓虹┖", trigger: "blur" } ], conclusiontime: [ - { required: true, message: "缁撹鏃堕棿涓嶈兘涓虹┖", trigger: "blur" }, - ], - }, + { required: true, message: "缁撹鏃堕棿涓嶈兘涓虹┖", trigger: "blur" } + ] + } }; }, created() { - this.getuserlist(); - this.getList(); - }, - activated() { this.selecttime = ""; this.reportervalue = ""; this.reportlist = []; @@ -447,11 +606,13 @@ this.queryParams.name = ""; this.queryParams.treatmenthospitalno = ""; - if (this.$route.params.starttime != null && this.$route.params.endtime) { + if (this.$route.params.starttime && this.$route.params.endtime) { this.selecttime = [ this.$route.params.starttime, - this.$route.params.endtime, + this.$route.params.endtime ]; + this.endtime = this.selecttime[1]; + this.starttime = this.selecttime[0]; } if (this.$route.params.reporterno != "") { this.reporterno = this.$route.params.reporterno; @@ -474,22 +635,23 @@ if (this.$route.params.city != "") { this.queryParams.city = this.$route.params.city; } - + this.getuserlist(); this.getList(); }, + activated() {}, mounted() { this.LoadReportList(); }, methods: { LoadReportList() { - listDonatebaseinfo().then((res) => { + listDonatebaseinfo().then(res => { console.log("娼滃湪鎹愮尞琛�", res); let list = res.rows; let reportlist = []; - list.forEach((element) => { + list.forEach(element => { reportlist.push({ reporterno: element.reporterno, - reportername: element.reportername, + reportername: element.reportername }); }); console.log("dwada", reportlist); @@ -501,7 +663,7 @@ }, resetArr(Arr) { var hash = {}; - Arr = Arr.reduce(function (arr, current) { + Arr = Arr.reduce(function(arr, current) { hash[current.reporterno] ? "" : (hash[current.reporterno] = true && arr.push(current)); @@ -566,7 +728,7 @@ }, //鐢ㄦ埛鍒楄〃 getuserlist() { - listUser().then((res) => { + listUser().then(res => { this.users = res.data; }); }, @@ -574,11 +736,15 @@ getList() { this.loading = true; this.queryParams.params = {}; + console.log(this.starttime, "this.starttime"); + console.log(this.endtime, "this.endtime"); if (null != this.daterangeReporttime && "" != this.daterangeReporttime) { - this.queryParams.params["beginReporttime"] = - this.daterangeReporttime[0]; + this.queryParams.params[ + "beginReporttime" + ] = this.daterangeReporttime[0]; this.queryParams.params["endReporttime"] = this.daterangeReporttime[1]; } + if (this.starttime != "") { this.queryParams.starttime = this.starttime; } @@ -587,7 +753,7 @@ } this.$nextTick(() => { - listnewEthicalreviewopinions(this.queryParams).then((response) => { + listnewEthicalreviewopinions(this.queryParams).then(response => { console.log("000000000000", response); this.listnews = response.rows; this.total = response.total; @@ -615,7 +781,7 @@ flowname: null, flowannex: null, flowcontent: null, - flowconclusion: 0, + flowconclusion: 0 }; this.resetForm("form"); }, @@ -635,7 +801,7 @@ expertname: null, conclusiontime: null, conclusionannex: null, - conclusionorder: null, + conclusionorder: null }; this.resetForm("expertAdviceForm"); }, @@ -667,7 +833,7 @@ reportername: null, reporttime: null, city: null, - treatmenthospitalno: null, + treatmenthospitalno: null }; this.selecttime = []; this.getTimeList(); @@ -675,7 +841,7 @@ sheng: "", shi: "", qu: "", - organizationname: null, + organizationname: null }; //this.$refs.areaSelect.clean(); @@ -688,7 +854,7 @@ path: "/organ/donationdetails/", query: { id: row.id, - organType: "edit", + organType: "edit" } }); //鏌ユ壘鏄惁瀛樺湪浼︾悊瀹℃煡璁板綍 @@ -742,10 +908,13 @@ submitForm() { this.loading = true; this.$nextTick(() => { - this.$refs["form"].validate((valid) => { + this.$refs["form"].validate(valid => { if (valid) { //鍒ゆ柇瀹℃煡鎰忚褰曞叆 - if (this.form.flowconclusion == 2 || this.form.flowconclusion == 3) { + if ( + this.form.flowconclusion == 2 || + this.form.flowconclusion == 3 + ) { var exp = this.form.flowcontent; if (typeof exp == "undefined" || exp == null || exp == "") { this.$modal.msgError("璇疯緭鍏ュ鏌ユ剰瑙�!"); @@ -756,7 +925,7 @@ //鍒ゆ柇鏄惁鏄柊绾綍 if (this.form.id != null) { // updateEthicalreviewopinions娌℃湁鏉冮檺 - updateDonateflowchart(this.form).then((response) => { + updateDonateflowchart(this.form).then(response => { this.$modal.msgSuccess("淇敼鎴愬姛"); //鏇存柊鎹愮尞鐘舵�� if (this.form.flowconclusion == 1) { @@ -764,20 +933,20 @@ } else { this.curCase.recordstate = 9; } - updateDonatebaseinfo(this.curCase).then((response) => { + updateDonatebaseinfo(this.curCase).then(response => { this.open = false; this.getList(); }); }); } else { - addDonateflowchart(this.form).then((response) => { + addDonateflowchart(this.form).then(response => { //鏇存柊鎹愮尞鐘舵�� if (this.form.flowconclusion == 1) { this.curCase.recordstate = 8; } else { this.curCase.recordstate = 9; } - updateDonatebaseinfo(this.curCase).then((response) => { + updateDonatebaseinfo(this.curCase).then(response => { this.$modal.msgSuccess("鏂板鎴愬姛"); this.open = false; this.getList(); @@ -786,9 +955,9 @@ } } }); - - this.loading = false; - }) + + this.loading = false; + }); }, /** 鑾峰彇鎹愮尞璇勪及 */ @@ -797,10 +966,10 @@ this.curCase = dontateInfo; let queryParam = { donorno: dontateInfo.donorno, - flowname: "浼︾悊瀹℃煡", + flowname: "浼︾悊瀹℃煡" }; - listDonateflowchart(queryParam).then((response) => { + listDonateflowchart(queryParam).then(response => { let evaluationList = response.rows; if (evaluationList.length == 1) { this.form = evaluationList[0]; @@ -838,18 +1007,18 @@ //淇濆瓨涓撳鎰忚 saveExpertAdvice() { - this.$refs["expertAdviceForm"].validate((valid) => { + this.$refs["expertAdviceForm"].validate(valid => { if (valid) { if (this.expertAdviceForm.id != null) { updateEthicalreviewopinions(this.expertAdviceForm).then( - (response) => { + response => { this.$modal.msgSuccess("淇敼鎴愬姛"); // this.getExpertList(); this.isShowExpertAdviceDialog = false; } ); } else { - addEthicalreviewopinions(this.expertAdviceForm).then((response) => { + addEthicalreviewopinions(this.expertAdviceForm).then(response => { this.$modal.msgSuccess("鏂板鎴愬姛"); // this.getExpertList(); this.isShowExpertAdviceDialog = false; @@ -863,39 +1032,37 @@ //鑾峰彇涓撳鎰忚鍒楄〃 getExpertList() { this.loading = true; - listEthicalreviewopinions(this.expertAdviceQueryParam).then( - (response) => { - this.doctorAdviceTableData = response.rows; - this.total = response.total; - this.loading = false; - } - ); + listEthicalreviewopinions(this.expertAdviceQueryParam).then(response => { + this.doctorAdviceTableData = response.rows; + this.total = response.total; + this.loading = false; + }); }, /** 鍒犻櫎鎸夐挳鎿嶄綔 */ handleDeleteExpert(row) { const ids = row.id; this.$modal .confirm('鏄惁纭鍒犻櫎浼︾悊瀹℃煡涓撳鎰忚缂栧彿涓�"' + ids + '"鐨勬暟鎹」锛�') - .then(function () { + .then(function() { return delEthicalreviewopinions(ids); }) .then(() => { // this.getExpertList(); this.$modal.msgSuccess("鍒犻櫎鎴愬姛"); }) - .catch(() => { }); + .catch(() => {}); }, /** 淇敼鎸夐挳鎿嶄綔 */ handleUpdateExpert(row) { this.reset(); const id = row.id; - getEthicalreviewopinions(id).then((response) => { + getEthicalreviewopinions(id).then(response => { this.expertAdviceForm = response.data; this.isShowExpertAdviceDialog = true; //this.title = "淇敼浼︾悊瀹℃煡涓撳鎰忚"; }); - }, - }, + } + } }; -</script> \ No newline at end of file +</script> diff --git a/src/views/project/indexstatistics/index.vue b/src/views/project/indexstatistics/index.vue index 03b53dd..3c7c7f0 100644 --- a/src/views/project/indexstatistics/index.vue +++ b/src/views/project/indexstatistics/index.vue @@ -68,8 +68,8 @@ :to="{ name: 'Donatebaseinfo', params: { - starttime: this.starttime, - endtime: this.endtime, + starttime: starttime, + endtime: endtime, tempRecordState: '', reporterno: reportervalue, shen: searchAddress.shen, @@ -85,7 +85,7 @@ <!-- @click="tobaseinfo0" --> <el-card shadow="always" style="color: #566f94"> <svg-icon icon-class="user" /> 娼滃湪鎹愮尞绱锛歿{ - this.donateNumData.numberOfDonate + donateNumData.numberOfDonate }} 渚� </el-card> </router-link> @@ -95,8 +95,8 @@ :to="{ name: 'Medicalevaluation', params: { - starttime: this.starttime, - endtime: this.endtime, + starttime: starttime, + endtime: endtime, tempRecordState: '', reporterno: reportervalue, shen: searchAddress.shen, @@ -112,7 +112,7 @@ @click="Tomedicalevalua" > <svg-icon icon-class="tool" /> 瀹屾垚鍖诲璇勪及绱锛歿{ - this.donateNumData.numberOfMedicalEvaluation + donateNumData.numberOfMedicalEvaluation }} 渚� </el-card> </router-link> @@ -122,8 +122,8 @@ :to="{ name: 'Relativesconfirmation', params: { - starttime: this.starttime, - endtime: this.endtime, + starttime: starttime, + endtime: endtime, tempRecordState: '', reporterno: reportervalue, shen: searchAddress.shen, @@ -136,7 +136,7 @@ <el-card shadow="always" style="color: #566f94"> <svg-icon icon-class="checkbox" /> 瀹屾垚浜插睘纭绱锛歿{ - this.donateNumData.numberOfRelativeConfirmation + donateNumData.numberOfRelativeConfirmation }} 渚� </el-card> </router-link> @@ -146,8 +146,8 @@ :to="{ name: 'EthicalReview', params: { - starttime: this.starttime, - endtime: this.endtime, + starttime: starttime, + endtime: endtime, tempRecordState: '', reporterno: reportervalue, shen: searchAddress.shen, @@ -160,7 +160,7 @@ <el-card shadow="always" style="color: #566f94"> <svg-icon icon-class="education" /> 瀹屾垚浼︾悊瀹℃煡绱锛歿{ - this.donateNumData.numberOfEthicalReview + donateNumData.numberOfEthicalReview }} 渚� </el-card> </router-link> @@ -171,36 +171,21 @@ style="margin-top: 10px; font-size: 18px; font-weight: bold" > <el-col :span="6"> - <router-link - :to="{ - name: 'Organallocation', - params: { - starttime: this.starttime, - endtime: this.endtime, - tempRecordState: '', - reporterno: reportervalue, - shen: searchAddress.shen, - shi: searchAddress.shi, - qu: searchAddress.qu, - city: city - } - }" - > + <el-card shadow="always" style="color: #566f94"> <svg-icon icon-class="druid" /> 瀹屾垚鍣ㄥ畼鍒嗛厤绱锛歿{ - this.donateNumData.numberOfDonatePeople + donateNumData.numberOfDonatePeople }} 涓� - <!-- this.donateNumData.numberOfOrgans --> + <!-- donateNumData.numberOfOrgans --> </el-card> - </router-link> </el-col> <el-col :span="6"> <router-link :to="{ name: 'Donationwitness', params: { - starttime: this.starttime, - endtime: this.endtime, + starttime: starttime, + endtime: endtime, tempRecordState: '', reporterno: reportervalue, shen: searchAddress.shen, @@ -212,7 +197,7 @@ > <el-card shadow="always" style="color: #566f94"> <svg-icon icon-class="job" /> 瀹屾垚鑾峰彇瑙佽瘉绱锛歿{ - this.donateNumData.numberOfWitness + donateNumData.numberOfWitness }} 渚� </el-card> </router-link> @@ -222,8 +207,8 @@ :to="{ name: 'Donatefinish', params: { - starttime: this.starttime, - endtime: this.endtime, + starttime: starttime, + endtime: endtime, tempRecordState: '', reporterno: reportervalue, shen: searchAddress.shen, @@ -235,7 +220,7 @@ > <el-card shadow="always" style="color: #566f94"> <svg-icon icon-class="lock" /> 鎹愮尞瀹屾垚绱锛歿{ - this.donateNumData.numberOfCompletion + donateNumData.numberOfCompletion }} 渚� </el-card> </router-link> @@ -246,8 +231,8 @@ :to="{ name: 'Donatebaseinfo', params: { - starttime: this.starttime, - endtime: this.endtime, + starttime: starttime, + endtime: endtime, tempRecordState: 99, reporterno: reportervalue, shen: searchAddress.shen, @@ -259,7 +244,7 @@ > <el-card shadow="always" style="color: #566f94"> <svg-icon icon-class="lock" /> 鎹愮尞缁堟绱锛歿{ - this.donateNumData.numberOfTerminated + donateNumData.numberOfTerminated }} 渚� </el-card> </router-link> @@ -284,9 +269,7 @@ style="padding: 0; margin: 0; width: 100%; color: #566f94" > 鍣ㄥ畼鎹愮尞杞寲鐜�<br /> - {{ - (this.qualirtData.donateTransferRate * 100).toFixed(2) - }}% + {{ (qualirtData.donateTransferRate * 100).toFixed(2) }}% </el-card> </el-col> <el-col :span="8" style="text-align: center"> @@ -295,9 +278,7 @@ style="padding: 0; margin: 0; width: 100%; color: #566f94" > 骞冲潎鍣ㄥ畼浜у嚭鐜�<br /> - {{ - (this.qualirtData.organProductionRate * 100).toFixed(2) - }}% + {{ (qualirtData.organProductionRate * 100).toFixed(2) }}% </el-card> </el-col> <el-col :span="8" style="text-align: center"> @@ -306,7 +287,7 @@ style="padding: 0; margin: 0; width: 100%; color: #566f94" > 鑾峰彇鍣ㄥ畼鍒╃敤鐜�<br /> - {{ (this.qualirtData.organUsedRate * 100).toFixed(2) }}% + {{ (qualirtData.organUsedRate * 100).toFixed(2) }}% </el-card> </el-col> </el-row> @@ -317,17 +298,15 @@ <el-row :gutter="10" style="margin-top: 10px"> <el-col :span="8" style="text-align: center" >DBD: - {{ (this.qualirtData.dbddonateRate * 100).toFixed(2) }}% + {{ (qualirtData.dbddonateRate * 100).toFixed(2) }}% </el-col> <el-col :span="8" style="text-align: center"> DCD: - {{ (this.qualirtData.dcddonateRate * 100).toFixed(2) }}% + {{ (qualirtData.dcddonateRate * 100).toFixed(2) }}% </el-col> <el-col :span="8" style="text-align: center"> DBCD: - {{ - (this.qualirtData.dbcddonateRate * 100).toFixed(2) - }}% + {{ (qualirtData.dbcddonateRate * 100).toFixed(2) }}% </el-col> </el-row> </el-card> @@ -343,9 +322,7 @@ <span style="font-size: 14px"> 鑾峰彇鍓嶆椿妫�鐜�</span> </el-row> {{ - (this.qualirtData.organBeforeGetCheckRate * 100).toFixed( - 2 - ) + (qualirtData.organBeforeGetCheckRate * 100).toFixed(2) }}% </el-card> </el-col> @@ -357,11 +334,7 @@ <el-row> <span style="font-size: 14px">鑾峰彇鍚庢椿妫�鐜�</span> </el-row> - {{ - (this.qualirtData.organAfterGetCheckRate * 100).toFixed( - 2 - ) - }}% + {{ (qualirtData.organAfterGetCheckRate * 100).toFixed(2) }}% </el-card> </el-col> </el-row> @@ -372,7 +345,7 @@ style="padding: 0; margin: 0; width: 100%; color: #566f94" > <span style="font-size: 14px">杈圭紭渚涘櫒瀹樻瘮鐜�</span><br /> - {{ (this.qualirtData.marginOrganRate * 100).toFixed(2) }}% + {{ (qualirtData.marginOrganRate * 100).toFixed(2) }}% </el-card> </el-col> <el-col :span="12" style="text-align: center"> @@ -383,7 +356,7 @@ <span style="font-size: 14px" >鍣ㄥ畼淇濆瓨娑茬梾鍘熻弻鍩瑰吇闃虫�х巼</span > - {{ (this.qualirtData.germPositiveRate * 100).toFixed(2) }}% + {{ (qualirtData.germPositiveRate * 100).toFixed(2) }}% </el-card> </el-col> </el-row> @@ -395,21 +368,19 @@ <el-row> <el-col :span="6" style="text-align: center"> 鎬诲彂鐢熺巼<br /> - {{ - (this.qualirtData.totalPNFRate * 100).toFixed(2) - }}% + {{ (qualirtData.totalPNFRate * 100).toFixed(2) }}% </el-col> <el-col :span="6" style="text-align: center"> DBD<br /> - {{ (this.qualirtData.dbdpnfrate * 100).toFixed(2) }}% + {{ (qualirtData.dbdpnfrate * 100).toFixed(2) }}% </el-col> <el-col :span="6" style="text-align: center"> DCD<br /> - {{ (this.qualirtData.dcdpnfrate * 100).toFixed(2) }}% + {{ (qualirtData.dcdpnfrate * 100).toFixed(2) }}% </el-col> <el-col :span="6" style="text-align: center"> DBCD<br /> - {{ (this.qualirtData.dbcdpnfrate * 100).toFixed(2) }}% + {{ (qualirtData.dbcdpnfrate * 100).toFixed(2) }}% </el-col> </el-row> </el-row> @@ -424,22 +395,22 @@ <el-row> <el-col :span="6" style="text-align: center"> 鎬诲彂鐢熺巼<br />{{ - (this.qualirtData.totalDGFRate * 100).toFixed(2) + (qualirtData.totalDGFRate * 100).toFixed(2) }}% </el-col> <el-col :span="6" style="text-align: center"> DBD<br />{{ - (this.qualirtData.dbddgfrate * 100).toFixed(2) + (qualirtData.dbddgfrate * 100).toFixed(2) }}% </el-col> <el-col :span="6" style="text-align: center"> DCD<br />{{ - (this.qualirtData.dcddgfrate * 100).toFixed(2) + (qualirtData.dcddgfrate * 100).toFixed(2) }}% </el-col> <el-col :span="6" style="text-align: center"> DBCD<br />{{ - (this.qualirtData.dbcddgfrate * 100).toFixed(2) + (qualirtData.dbcddgfrate * 100).toFixed(2) }}% </el-col> </el-row> @@ -1145,8 +1116,6 @@ // : ""; let info = { - pageNum: 1, - pageSize: 10, starttime: this.starttime, endtime: this.endtime diff --git a/src/views/project/statistics/applyStatistics/index.vue b/src/views/project/statistics/applyStatistics/index.vue index 812a35d..8314759 100644 --- a/src/views/project/statistics/applyStatistics/index.vue +++ b/src/views/project/statistics/applyStatistics/index.vue @@ -1,27 +1,427 @@ +<!-- --> <template> - <div> -鎶ラ攢 + <div class="app-container"> + <el-form + :model="queryParams" + ref="queryForm" + :inline="true" + label-width="70px" + > + <el-row :gutter="8"> + <el-col :span="6"> + <el-form-item label="涓氬姟浜哄憳" prop="name"> + <el-input + v-model="queryParams.name" + placeholder="璇疯緭鍏ュ鍚�" + clearable + size="small" + @keyup.enter.native="handleQuery" + /> + </el-form-item> + </el-col> + <el-col :span="6"> + <el-form-item align="left" label="涓氬姟缁�" prop="treatmenthospitalno"> + <org-selecter + ref="orgSelecter" + :org-type="'3'" + v-model="queryParams.treatmenthospitalno" + /> + </el-form-item> + </el-col> + <el-col :span="6"> + <el-form-item label="璐圭敤绫诲瀷"> + <el-select + v-model="queryParams.paexpensetype" + placeholder="璇烽�夋嫨妗堜緥鐘舵��" + > + <el-option + v-for="item in reportlist" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-form-item> + </el-col> + </el-row> + <el-row :gutter="8"> + <el-col :span="12"> + <el-form-item label="缁熻鏃ユ湡"> + <el-date-picker + style="width: 100%" + v-model="selecttime" + type="monthrange" + range-separator="鑷�" + start-placeholder="寮�濮嬫湀浠�" + end-placeholder="缁撴潫鏈堜唤" + value-format="yyyy-MM-dd" + @change="getTimeList" + > + </el-date-picker> + </el-form-item> + </el-col> + + <el-col :span="6"> + <el-form-item> + <el-button + type="primary" + icon="el-icon-search" + size="mini" + @click="handleQuery" + >鎼滅储</el-button + > + <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" + >閲嶇疆</el-button + > + </el-form-item> + </el-col> + </el-row> + </el-form> + + <!--<el-table v-loading="loading" border :data="donatebaseinfoList"> --> + <el-table + :data="jxidata" + ref="table" + border + max-height="700" + highlight-current-row + :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="deptmentName"> + </el-table-column> + <el-table-column label="宸叉敹閲戦" align="center" prop="amount" /> + <el-table-column label="鏈敹閲戦" align="center" prop="nonpayment" /> + + <el-table-column label="閲戦" align="center" prop="organcharge" /> + + <el-table-column label="鎿嶄綔" align="center"> + <template slot-scope="scope"> + <el-button size="mini" type="text" icon="el-icon-edit" + >鏄庣粏</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" + /> + + <!-- 娣诲姞鎴栦慨鏀瑰灞炵‘璁ゅ璇濇 --> </div> </template> <script> -export default { - data () { - return { +//杩欓噷鍙互瀵煎叆鍏朵粬鏂囦欢锛堟瘮濡傦細缁勪欢锛屽伐鍏穓s锛岀涓夋柟鎻掍欢js锛宩son鏂囦欢锛屽浘鐗囨枃浠剁瓑绛夛級 +//渚嬪锛歩mport 銆婄粍浠跺悕绉般�� from '銆婄粍浠惰矾寰勩��'; +import { + listsfeistatistics, + listbxiaostatistics, + listjixstatistics, + listanlstatistics +} from "@/api/project/statistics"; + +import { listUser } from "@/api/project/organization"; + +import Li_area_select from "@/components/Address"; +import OrgSelecter from "@/views/project/components/orgselect"; +import AnnexUpload from "@/views/project/components/annexupload"; + +export default { + //import寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢� + components: { + Li_area_select, + OrgSelecter, + AnnexUpload + }, + name: "Medicalevaluation", + dicts: [], + data() { + //杩欓噷瀛樻斁鏁版嵁 + return { + starttime: "", + endtime: "", + countyname: "", + cuuntry: "", + + selecttime: "", + reportervalue: "", + reportlist: [ + { label: "宸梾璐�", value: "1" }, + { label: "涓撳璐�", value: "1" }, + { label: "浼︾悊涓撳璐�", value: "2" }, + { label: "鍖诲鎴愭湰", value: "3" }, + { label: "鍔炲叕璐�", value: "4" } + ], + //鐪佸競鍖� + //榛樿鍊艰缃紝鍙负绌� + searchAddress: { + sheng: "", + shi: "", + qu: "", + organizationname: null + }, + 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" } + ], + residenceAddresss: { + sheng: "娴欐睙鐪�", + shi: "", + qu: "" + }, + registerAddresss: { + sheng: "娴欐睙鐪�", + shi: "", + qu: "" + }, + defultAddresss: { + sheng: "娴欐睙鐪�", + shi: "", + qu: "" + }, + // 閬僵灞� + loading: false, + // 瀵煎嚭閬僵灞� + exportLoading: false, + // 閫変腑鏁扮粍 + ids: [], + // 闈炲崟涓鐢� + single: true, + // 闈炲涓鐢� + multiple: true, + // 鏄剧ず鎼滅储鏉′欢 + showSearch: true, + // 鎬绘潯鏁� + total: 0, + // 鎹愮尞鍩虹琛ㄦ牸鏁版嵁 + donatebaseinfoList: [], + // 鎹愮尞鍩虹琛ㄦ牸鏁版嵁 + jxidata: [], + // 寮瑰嚭灞傛爣棰� + title: "", + // 鏄惁鏄剧ず寮瑰嚭灞� + open: false, + // 鑾峰彇缁勭粐鍚嶇О鏃堕棿鑼冨洿 + daterangeReporttime: [], + // 鏌ヨ鍙傛暟 + queryParams: { + pageNum: 1, + pageSize: 10 + }, + + // 琛ㄥ崟鍙傛暟 + form: {}, + // 琛ㄥ崟鏍¢獙 + rules: {}, + //褰撳墠閫変腑鎹愮尞妗堜緥 + curCase: {}, + //娴佺▼鍚嶇О + flowname: "鎹愮尞鍖诲璇勪及", + //娴佺▼鍚嶇О-浼︾悊瀹℃煡 + annexno: "", + confirmationform: {}, + //鏄惁鏄剧ず纭鐧昏琛� + isShowConfirmationDialog: false, + //纭鐧昏琛╰itle + confirmationTitle: "" + }; + }, + //鐩戝惉灞炴�� 绫讳技浜巇ata姒傚康 + computed: {}, + activated() {}, + mounted() {}, + + //鐩戞帶data涓殑鏁版嵁鍙樺寲 + watch: {}, + //鏂规硶闆嗗悎 + methods: { + getTimeList(e) { + 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"; + } + }, + + resetArr(Arr) { + var hash = {}; + Arr = Arr.reduce(function(arr, current) { + hash[current.reporterno] + ? "" + : (hash[current.reporterno] = true && arr.push(current)); + return arr; + }, []); + return Arr; + }, + + /** 鏌ヨ鎹愮尞鍩虹鍒楄〃 */ + getList() { + listbxiaostatistics(this.queryParams).then(res => { + this.jxidata = res.rows; + }); + }, + + // 琛ㄥ崟閲嶇疆 + reset() { + this.form = {}; + }, + /** 鎼滅储鎸夐挳鎿嶄綔 */ + handleQuery() { + this.queryParams.pageNum = 1; + this.getList(); + }, + /** 閲嶇疆鎸夐挳鎿嶄綔 */ + resetQuery() { + this.daterangeReporttime = []; + + this.reportervalue = ""; + + this.form.treatmenthospitalno = ""; + + 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 + }; + this.selecttime = []; + this.getTimeList(); + this.searchAddress = { + sheng: "", + shi: "", + qu: "", + organizationname: null + }; + + this.resetForm("queryForm"); + this.handleQuery(); + }, + getSummaries(param) { + const { columns, data } = param; + const sums = []; + var columnnames = ["applymonth", "deptmentName", "username"]; + columns.forEach((column, index) => { + if (index === 0) { + sums[index] = "鍚堣"; + return; + } + //鍘婚櫎閮ㄥ垎瀛楁璁$畻 + if (columnnames.indexOf(column.property) > -1) { + return; + } + + const values = data.map(item => Number(item[column.property])); + if (!values.every(value => isNaN(value))) { + sums[index] = values.reduce((prev, curr) => { + const value = Number(curr); + if (!isNaN(value)) { + return prev + curr; + } else { + return prev; + } + }, 0); + sums[index] = sums[index].toFixed(2); // 淇濈暀2浣嶅皬鏁帮紝瑙e喅灏忔暟鍚堣鍒�; + } else { + sums[index] = ""; + } + }); + return sums; } }, - created () { - - }, - - methods: { - + //鐢熷懡鍛ㄦ湡 - 鍒涘缓瀹屾垚锛堝彲浠ヨ闂綋鍓峵his瀹炰緥锛� + created() { + //鑾峰彇鍒楄〃 + this.getList(); } -} + + // //鐢熷懡鍛ㄦ湡 - 鎸傝浇瀹屾垚锛堝彲浠ヨ闂瓺OM鍏冪礌锛� + // mounted() {}, + // beforeCreate() {}, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠 + // beforeMount() {}, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠 + // beforeUpdate() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠 + // updated() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪悗 + // beforeDestroy() {}, //鐢熷懡鍛ㄦ湡 - 閿�姣佷箣鍓� + // destroyed() {}, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴� + // activated() {}, //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂 +}; </script> - -<style lang='scss' scoped> - -</style> diff --git a/src/views/project/statistics/caseStatistics/index.vue b/src/views/project/statistics/caseStatistics/index.vue index 001ddff..9947593 100644 --- a/src/views/project/statistics/caseStatistics/index.vue +++ b/src/views/project/statistics/caseStatistics/index.vue @@ -1,27 +1,441 @@ +<!-- --> <template> - <div> -妗堜緥 + <div class="app-container"> + 缁╂晥 + <el-form + :model="queryParams" + ref="queryForm" + :inline="true" + label-width="70px" + > + <el-row :gutter="8"> + <el-col :span="6"> + <el-form-item label="涓氬姟浜哄憳" prop="name"> + <el-input + v-model="queryParams.name" + placeholder="璇疯緭鍏ュ鍚�" + clearable + size="small" + @keyup.enter.native="handleQuery" + /> + </el-form-item> + </el-col> + <el-col :span="6"> + <el-form-item align="left" label="涓氬姟缁�" prop="treatmenthospitalno"> + <org-selecter + ref="orgSelecter" + :org-type="'3'" + v-model="queryParams.treatmenthospitalno" + /> + </el-form-item> + </el-col> + <el-col :span="6"> + <el-form-item label='妗堜緥鐘舵��'> + <el-select + v-model="queryParams.pabonustype" + placeholder="璇烽�夋嫨妗堜緥鐘舵��" + > + <el-option + v-for="item in reportlist" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-form-item> + </el-col> + </el-row> + <el-row :gutter="8"> + <el-col :span="12"> + <el-form-item label="缁熻鏃ユ湡"> + <el-date-picker + style="width: 100%" + v-model="selecttime" + type="monthrange" + range-separator="鑷�" + start-placeholder="寮�濮嬫湀浠�" + end-placeholder="缁撴潫鏈堜唤" + value-format="yyyy-MM-dd" + @change="getTimeList" + > + </el-date-picker> + </el-form-item> + </el-col> + + <el-col :span="6"> + <el-form-item> + <el-button + type="primary" + icon="el-icon-search" + size="mini" + @click="handleQuery" + >鎼滅储</el-button + > + <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" + >閲嶇疆</el-button + > + </el-form-item> + </el-col> + </el-row> + </el-form> + + <!--<el-table v-loading="loading" border :data="donatebaseinfoList"> --> + <el-table v-loading="loading" :data="jxidata" ref="table" + border + max-height="700" + highlight-current-row + :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="name" /> + + <el-table-column label="涓氬姟缁�" align="center" prop="name"> + </el-table-column> + <el-table-column label="涓撹亴浜哄憳" align="center" prop="age" /> + + <el-table-column + label="妗堜緥鏁伴噺" + align="center" + prop="treatmenthospitalname" + /> + + <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> + + <pagination + v-show="total > 0" + :total="total" + :page.sync="queryParams.pageNum" + :limit.sync="queryParams.pageSize" + @pagination="getList" + /> + + <!-- 娣诲姞鎴栦慨鏀瑰灞炵‘璁ゅ璇濇 --> </div> </template> <script> -export default { - data () { - return { +//杩欓噷鍙互瀵煎叆鍏朵粬鏂囦欢锛堟瘮濡傦細缁勪欢锛屽伐鍏穓s锛岀涓夋柟鎻掍欢js锛宩son鏂囦欢锛屽浘鐗囨枃浠剁瓑绛夛級 +//渚嬪锛歩mport 銆婄粍浠跺悕绉般�� from '銆婄粍浠惰矾寰勩��'; + +import { + listsfeistatistics, + listbxiaostatistics, + listjixstatistics, + listanlstatistics +} from "@/api/project/statistics"; + +import { listUser } from "@/api/project/organization"; + +import Li_area_select from "@/components/Address"; +import OrgSelecter from "@/views/project/components/orgselect"; +import AnnexUpload from "@/views/project/components/annexupload"; + +export default { + //import寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢� + components: { + Li_area_select, + OrgSelecter, + AnnexUpload + }, + name: "Medicalevaluation", + dicts: [], + data() { + //杩欓噷瀛樻斁鏁版嵁 + return { + starttime: "", + endtime: "", + countyname: "", + cuuntry: "", + + selecttime: "", + reportervalue: "", + reportlist: [ + { label: "鏈堝害", value: "1" }, + { label: "瀛e害", value: "2" }, + { label: "骞村害", value: "3" } + ], + //鐪佸競鍖� + //榛樿鍊艰缃紝鍙负绌� + searchAddress: { + sheng: "", + shi: "", + qu: "", + organizationname: null + }, + 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" } + ], + residenceAddresss: { + sheng: "娴欐睙鐪�", + shi: "", + qu: "" + }, + registerAddresss: { + sheng: "娴欐睙鐪�", + shi: "", + qu: "" + }, + defultAddresss: { + sheng: "娴欐睙鐪�", + shi: "", + qu: "" + }, + // 閬僵灞� + loading: false, + // 瀵煎嚭閬僵灞� + exportLoading: false, + // 閫変腑鏁扮粍 + ids: [], + // 闈炲崟涓鐢� + single: true, + // 闈炲涓鐢� + multiple: true, + // 鏄剧ず鎼滅储鏉′欢 + showSearch: true, + // 鎬绘潯鏁� + total: 0, + // 鎹愮尞鍩虹琛ㄦ牸鏁版嵁 + donatebaseinfoList: [], + // 鎹愮尞鍩虹琛ㄦ牸鏁版嵁 + jxidata: [], + // 寮瑰嚭灞傛爣棰� + title: "", + // 鏄惁鏄剧ず寮瑰嚭灞� + open: false, + // 鑾峰彇缁勭粐鍚嶇О鏃堕棿鑼冨洿 + daterangeReporttime: [], + // 鏌ヨ鍙傛暟 + queryParams: { + pageNum: 1, + pageSize: 10 + }, + + // 琛ㄥ崟鍙傛暟 + form: {}, + // 琛ㄥ崟鏍¢獙 + rules: {}, + //褰撳墠閫変腑鎹愮尞妗堜緥 + curCase: {}, + //娴佺▼鍚嶇О + flowname: "鎹愮尞鍖诲璇勪及", + //娴佺▼鍚嶇О-浼︾悊瀹℃煡 + annexno: "", + confirmationform: {}, + //鏄惁鏄剧ず纭鐧昏琛� + isShowConfirmationDialog: false, + //纭鐧昏琛╰itle + confirmationTitle: "" + }; + }, + //鐩戝惉灞炴�� 绫讳技浜巇ata姒傚康 + computed: {}, + activated() {}, + mounted() {}, + + //鐩戞帶data涓殑鏁版嵁鍙樺寲 + watch: {}, + //鏂规硶闆嗗悎 + methods: { + getTimeList(e) { + 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"; + } + }, + + resetArr(Arr) { + var hash = {}; + Arr = Arr.reduce(function(arr, current) { + hash[current.reporterno] + ? "" + : (hash[current.reporterno] = true && arr.push(current)); + return arr; + }, []); + return Arr; + }, + + /** 鏌ヨ鎹愮尞鍩虹鍒楄〃 */ + getList() { + listanlstatistics(this.queryParams).then(res => { + this.jxidata = res.rows; + }); + }, + getSummaries(param) { + const { columns, data } = param; + const sums = []; + var columnnames = [ + "applymonth", "deptmentName", "username" + ]; + columns.forEach((column, index) => { + if (index === 0) { + sums[index] = "鍚堣"; + return; + } + //鍘婚櫎閮ㄥ垎瀛楁璁$畻 + if (columnnames.indexOf(column.property) > -1) { + return; + } + + const values = data.map(item => Number(item[column.property])); + if (!values.every(value => isNaN(value))) { + sums[index] = values.reduce((prev, curr) => { + const value = Number(curr); + if (!isNaN(value)) { + return prev + curr; + } else { + return prev; + } + }, 0); + sums[index] = sums[index].toFixed(2); // 淇濈暀2浣嶅皬鏁帮紝瑙e喅灏忔暟鍚堣鍒�; + } else { + sums[index] = ""; + } + }); + return sums; + }, + + // 琛ㄥ崟閲嶇疆 + reset() { + this.form = {}; + }, + /** 鎼滅储鎸夐挳鎿嶄綔 */ + handleQuery() { + this.queryParams.pageNum = 1; + this.getList(); + }, + /** 閲嶇疆鎸夐挳鎿嶄綔 */ + resetQuery() { + this.daterangeReporttime = []; + + this.reportervalue = ""; + + this.form.treatmenthospitalno = ""; + + 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 + }; + this.selecttime = []; + this.getTimeList(); + this.searchAddress = { + sheng: "", + shi: "", + qu: "", + organizationname: null + }; + + this.resetForm("queryForm"); + this.handleQuery(); } }, - created () { - - }, - - methods: { - + //鐢熷懡鍛ㄦ湡 - 鍒涘缓瀹屾垚锛堝彲浠ヨ闂綋鍓峵his瀹炰緥锛� + created() { + //鑾峰彇鍒楄〃 + this.getList(); } -} + // //鐢熷懡鍛ㄦ湡 - 鎸傝浇瀹屾垚锛堝彲浠ヨ闂瓺OM鍏冪礌锛� + // mounted() {}, + // beforeCreate() {}, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠 + // beforeMount() {}, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠 + // beforeUpdate() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠 + // updated() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪悗 + // beforeDestroy() {}, //鐢熷懡鍛ㄦ湡 - 閿�姣佷箣鍓� + // destroyed() {}, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴� + // activated() {}, //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂 +}; </script> - -<style lang='scss' scoped> - -</style> diff --git a/src/views/project/statistics/chargeStatistics/index.vue b/src/views/project/statistics/chargeStatistics/index.vue index c8b9597..dedf037 100644 --- a/src/views/project/statistics/chargeStatistics/index.vue +++ b/src/views/project/statistics/chargeStatistics/index.vue @@ -1,27 +1,437 @@ +<!-- --> <template> - <div> -鏀惰垂 + <div class="app-container"> + 缁╂晥 + <el-form + :model="queryParams" + ref="queryForm" + :inline="true" + label-width="70px" + > + <el-row :gutter="8"> + <el-col :span="6"> + <el-form-item label="鍖婚櫌鍚嶇О"> + <el-select + v-model="queryParams.pabonustype" + placeholder="璇烽�夋嫨妗堜緥鐘舵��" + > + <el-option + v-for="item in reportlist" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-form-item> + </el-col> + <el-col :span="6"> + <el-form-item label="缁熻绫诲瀷"> + <el-select + v-model="queryParams.pabonustype" + placeholder="璇烽�夋嫨妗堜緥鐘舵��" + > + <el-option + v-for="item in reportlist" + :label="item.label" + :value="item.value" + > + </el-option> + </el-select> + </el-form-item> + </el-col> + </el-row> + <el-row :gutter="8"> + <el-col :span="12"> + <el-form-item label="缁熻鏃ユ湡"> + <el-date-picker + style="width: 100%" + v-model="selecttime" + type="monthrange" + range-separator="鑷�" + start-placeholder="寮�濮嬫湀浠�" + end-placeholder="缁撴潫鏈堜唤" + value-format="yyyy-MM-dd" + @change="getTimeList" + > + </el-date-picker> + </el-form-item> + </el-col> + + <el-col :span="6"> + <el-form-item> + <el-button + type="primary" + icon="el-icon-search" + size="mini" + @click="handleQuery" + >鎼滅储</el-button + > + <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" + >閲嶇疆</el-button + > + </el-form-item> + </el-col> + </el-row> + </el-form> + + <!--<el-table v-loading="loading" border :data="donatebaseinfoList"> --> + <el-table + v-loading="loading" + :data="jxidata" + ref="table" + border + max-height="700" + highlight-current-row + :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="name" /> + + <el-table-column label="涓氬姟缁�" align="center" prop="name"> + </el-table-column> + <el-table-column label="涓撹亴浜哄憳" align="center" prop="age" /> + + <el-table-column + label="閲戦" + align="center" + prop="amount" + /> + + <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" + @click="handleAdd(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" + /> + + <!-- 娣诲姞鎴栦慨鏀瑰灞炵‘璁ゅ璇濇 --> </div> </template> <script> -export default { - data () { - return { +//杩欓噷鍙互瀵煎叆鍏朵粬鏂囦欢锛堟瘮濡傦細缁勪欢锛屽伐鍏穓s锛岀涓夋柟鎻掍欢js锛宩son鏂囦欢锛屽浘鐗囨枃浠剁瓑绛夛級 +//渚嬪锛歩mport 銆婄粍浠跺悕绉般�� from '銆婄粍浠惰矾寰勩��'; +import { + listsfeistatistics, + listbxiaostatistics, + listjixstatistics, + listanlstatistics +} from "@/api/project/statistics"; + +import { listUser } from "@/api/project/organization"; + +import Li_area_select from "@/components/Address"; +import OrgSelecter from "@/views/project/components/orgselect"; +import AnnexUpload from "@/views/project/components/annexupload"; + +export default { + //import寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢� + components: { + Li_area_select, + OrgSelecter, + AnnexUpload + }, + name: "Medicalevaluation", + dicts: [], + data() { + //杩欓噷瀛樻斁鏁版嵁 + return { + starttime: "", + endtime: "", + countyname: "", + cuuntry: "", + + selecttime: "", + reportervalue: "", + reportlist: [ + { label: "鏈堝害", value: "1" }, + { label: "瀛e害", value: "2" }, + { label: "骞村害", value: "3" } + ], + //鐪佸競鍖� + //榛樿鍊艰缃紝鍙负绌� + searchAddress: { + sheng: "", + shi: "", + qu: "", + organizationname: null + }, + 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" } + ], + residenceAddresss: { + sheng: "娴欐睙鐪�", + shi: "", + qu: "" + }, + registerAddresss: { + sheng: "娴欐睙鐪�", + shi: "", + qu: "" + }, + defultAddresss: { + sheng: "娴欐睙鐪�", + shi: "", + qu: "" + }, + // 閬僵灞� + loading: false, + // 瀵煎嚭閬僵灞� + exportLoading: false, + // 閫変腑鏁扮粍 + ids: [], + // 闈炲崟涓鐢� + single: true, + // 闈炲涓鐢� + multiple: true, + // 鏄剧ず鎼滅储鏉′欢 + showSearch: true, + // 鎬绘潯鏁� + total: 0, + // 鎹愮尞鍩虹琛ㄦ牸鏁版嵁 + donatebaseinfoList: [], + // 鎹愮尞鍩虹琛ㄦ牸鏁版嵁 + jxidata: [], + // 寮瑰嚭灞傛爣棰� + title: "", + // 鏄惁鏄剧ず寮瑰嚭灞� + open: false, + // 鑾峰彇缁勭粐鍚嶇О鏃堕棿鑼冨洿 + daterangeReporttime: [], + // 鏌ヨ鍙傛暟 + queryParams: { + pageNum: 1, + pageSize: 10 + }, + + // 琛ㄥ崟鍙傛暟 + form: {}, + // 琛ㄥ崟鏍¢獙 + rules: {}, + //褰撳墠閫変腑鎹愮尞妗堜緥 + curCase: {}, + //娴佺▼鍚嶇О + flowname: "鎹愮尞鍖诲璇勪及", + //娴佺▼鍚嶇О-浼︾悊瀹℃煡 + annexno: "", + confirmationform: {}, + //鏄惁鏄剧ず纭鐧昏琛� + isShowConfirmationDialog: false, + //纭鐧昏琛╰itle + confirmationTitle: "" + }; + }, + //鐩戝惉灞炴�� 绫讳技浜巇ata姒傚康 + computed: {}, + activated() {}, + mounted() {}, + + //鐩戞帶data涓殑鏁版嵁鍙樺寲 + watch: {}, + //鏂规硶闆嗗悎 + methods: { + getTimeList(e) { + 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"; + } + }, + + resetArr(Arr) { + var hash = {}; + Arr = Arr.reduce(function(arr, current) { + hash[current.reporterno] + ? "" + : (hash[current.reporterno] = true && arr.push(current)); + return arr; + }, []); + return Arr; + }, + + /** 鏌ヨ鎹愮尞鍩虹鍒楄〃 */ + getList() { + listsfeistatistics(this.queryParams).then(res => { + this.jxidata = res.rows; + }); + }, + + // 琛ㄥ崟閲嶇疆 + reset() { + this.form = {}; + }, + /** 鎼滅储鎸夐挳鎿嶄綔 */ + handleQuery() { + this.queryParams.pageNum = 1; + this.getList(); + }, + /** 閲嶇疆鎸夐挳鎿嶄綔 */ + resetQuery() { + this.daterangeReporttime = []; + + this.reportervalue = ""; + + this.form.treatmenthospitalno = ""; + + 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 + }; + this.selecttime = []; + this.getTimeList(); + this.searchAddress = { + sheng: "", + shi: "", + qu: "", + organizationname: null + }; + + this.resetForm("queryForm"); + this.handleQuery(); + }, + getSummaries(param) { + const { columns, data } = param; + const sums = []; + var columnnames = ["applymonth", "deptmentName", "username"]; + columns.forEach((column, index) => { + if (index === 0) { + sums[index] = "鍚堣"; + return; + } + //鍘婚櫎閮ㄥ垎瀛楁璁$畻 + if (columnnames.indexOf(column.property) > -1) { + return; + } + + const values = data.map(item => Number(item[column.property])); + if (!values.every(value => isNaN(value))) { + sums[index] = values.reduce((prev, curr) => { + const value = Number(curr); + if (!isNaN(value)) { + return prev + curr; + } else { + return prev; + } + }, 0); + sums[index] = sums[index].toFixed(2); // 淇濈暀2浣嶅皬鏁帮紝瑙e喅灏忔暟鍚堣鍒�; + } else { + sums[index] = ""; + } + }); + return sums; } }, - created () { - - }, - - methods: { - + //鐢熷懡鍛ㄦ湡 - 鍒涘缓瀹屾垚锛堝彲浠ヨ闂綋鍓峵his瀹炰緥锛� + created() { + //鑾峰彇鍒楄〃 + this.getList(); } -} + // //鐢熷懡鍛ㄦ湡 - 鎸傝浇瀹屾垚锛堝彲浠ヨ闂瓺OM鍏冪礌锛� + // mounted() {}, + // beforeCreate() {}, //鐢熷懡鍛ㄦ湡 - 鍒涘缓涔嬪墠 + // beforeMount() {}, //鐢熷懡鍛ㄦ湡 - 鎸傝浇涔嬪墠 + // beforeUpdate() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪墠 + // updated() {}, //鐢熷懡鍛ㄦ湡 - 鏇存柊涔嬪悗 + // beforeDestroy() {}, //鐢熷懡鍛ㄦ湡 - 閿�姣佷箣鍓� + // destroyed() {}, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴� + // activated() {}, //濡傛灉椤甸潰鏈塳eep-alive缂撳瓨鍔熻兘锛岃繖涓嚱鏁颁細瑙﹀彂 +}; </script> - -<style lang='scss' scoped> - -</style> diff --git a/src/views/project/statistics/performanceStaristics/index.vue b/src/views/project/statistics/performanceStaristics/index.vue index d5ce8e4..3b4ef67 100644 --- a/src/views/project/statistics/performanceStaristics/index.vue +++ b/src/views/project/statistics/performanceStaristics/index.vue @@ -1,7 +1,6 @@ <!-- --> <template> <div class="app-container"> - 缁╂晥 <el-form :model="queryParams" ref="queryForm" @@ -30,16 +29,15 @@ </el-form-item> </el-col> <el-col :span="6"> - <el-form-item label="妗堜緥鐘舵��"> + <el-form-item label="缁╂晥绫诲瀷"> <el-select - v-model="queryParams.reporterno" + v-model="queryParams.pabonustype" placeholder="璇烽�夋嫨妗堜緥鐘舵��" > <el-option v-for="item in reportlist" - :key="item.index" - :label="item.reportername" - :value="item.reporterno" + :label="item.label" + :value="item.value" > </el-option> </el-select> @@ -81,21 +79,26 @@ </el-form> <!--<el-table v-loading="loading" border :data="donatebaseinfoList"> --> - <el-table v-loading="loading" border :data="jxidata"> + <el-table + v-loading="loading" + :data="jxidata" + ref="table" + border + max-height="700" + highlight-current-row + :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="name" /> + <el-table-column label="缁熻鏈堜唤" align="center" prop="bonusmonth" /> - <el-table-column label="涓氬姟缁�" align="center" prop="name"> + <el-table-column label="涓氬姟缁�" align="center" prop="deptName"> </el-table-column> - <el-table-column label="涓撹亴浜哄憳" align="center" prop="age" /> + <el-table-column label="涓撹亴浜哄憳" align="center" prop="beneficiaryname" /> - <el-table-column - label="妗堜緥鏁伴噺" - align="center" - prop="treatmenthospitalname" - /> + <el-table-column label="閲戦" align="center" prop="amount" /> <el-table-column label="鎿嶄綔" @@ -106,12 +109,8 @@ <template slot-scope="scope"> <!-- v-if="scope.row.recordstate==2" --> - <el-button - size="mini" - type="text" - icon="el-icon-edit" - @click="handleAdd(scope.row)" - >鍖诲璇勪及</el-button + <el-button size="mini" type="text" icon="el-icon-edit" + >鏄庣粏</el-button > </template> </el-table-column> @@ -132,13 +131,6 @@ <script> //杩欓噷鍙互瀵煎叆鍏朵粬鏂囦欢锛堟瘮濡傦細缁勪欢锛屽伐鍏穓s锛岀涓夋柟鎻掍欢js锛宩son鏂囦欢锛屽浘鐗囨枃浠剁瓑绛夛級 //渚嬪锛歩mport 銆婄粍浠跺悕绉般�� from '銆婄粍浠惰矾寰勩��'; - -import { - listDonatebaseinfo, - getDonatebaseinfo, - addDonatebaseinfo, - updateDonatebaseinfo -} from "@/api/project/donatebaseinfo"; import { listsfeistatistics, @@ -172,7 +164,11 @@ selecttime: "", reportervalue: "", - reportlist: [], + reportlist: [ + { label: "鏈堝害", value: "1" }, + { label: "瀛e害", value: "2" }, + { label: "骞村害", value: "3" } + ], //鐪佸競鍖� //榛樿鍊艰缃紝鍙负绌� searchAddress: { @@ -236,11 +232,10 @@ daterangeReporttime: [], // 鏌ヨ鍙傛暟 queryParams: { - pabonustype: null, pageNum: 1, pageSize: 10 }, - + // 琛ㄥ崟鍙傛暟 form: {}, // 琛ㄥ崟鏍¢獙 @@ -321,23 +316,7 @@ // this.endtime = "2998-01-01 00:00:00"; } }, - LoadReportList() { - listDonatebaseinfo().then(res => { - let list = res.rows; - let reportlist = []; - list.forEach(item => { - reportlist.push({ - reporterno: item.reporterno, - reportername: item.reportername - }); - }); - if (reportlist != 0) { - reportlist = this.resetArr(reportlist); - this.reportlist = reportlist; - } - }); - }, resetArr(Arr) { var hash = {}; Arr = Arr.reduce(function(arr, current) { @@ -402,6 +381,37 @@ this.resetForm("queryForm"); this.handleQuery(); + }, + getSummaries(param) { + const { columns, data } = param; + const sums = []; + var columnnames = ["applymonth", "deptmentName", "username"]; + columns.forEach((column, index) => { + if (index === 0) { + sums[index] = "鍚堣"; + return; + } + //鍘婚櫎閮ㄥ垎瀛楁璁$畻 + if (columnnames.indexOf(column.property) > -1) { + return; + } + + const values = data.map(item => Number(item[column.property])); + if (!values.every(value => isNaN(value))) { + sums[index] = values.reduce((prev, curr) => { + const value = Number(curr); + if (!isNaN(value)) { + return prev + curr; + } else { + return prev; + } + }, 0); + sums[index] = sums[index].toFixed(2); // 淇濈暀2浣嶅皬鏁帮紝瑙e喅灏忔暟鍚堣鍒�; + } else { + sums[index] = ""; + } + }); + return sums; } }, diff --git a/src/views/project/unitCost/particulars/index.vue b/src/views/project/unitCost/particulars/index.vue new file mode 100644 index 0000000..8dd985c --- /dev/null +++ b/src/views/project/unitCost/particulars/index.vue @@ -0,0 +1,1454 @@ +<template> + <div class="Modifydetailscla"> + <div class="boxdiv"> + <div class="top-text">{{ title }}</div> + <el-form ref="form" :model="form" :rules="rules" label-width="120px"> + <el-row> + <el-col :span="5"> + <el-form-item label="缁忓姙浜�" prop="name"> + <el-input + v-model="form.createby" + placeholder="璇疯緭鍏ュ鍚�" + :disabled="true" + /> + </el-form-item> + </el-col> + <el-col :span="5"> + <el-form-item label="鏀舵鐘舵��" prop="sex"> + <el-select v-model="form.paystatus" placeholder="璇烽�夋嫨鐘舵��"> + <el-option + v-for="dict in gatheringlist" + :key="dict.label" + :label="dict.label" + :value="dict.value" + ></el-option> + </el-select> + </el-form-item> + </el-col> + + <el-col :span="7"> + <el-form-item label="鐢宠鏃ユ湡" prop="createTime"> + <el-date-picker + v-model="form.createTime" + value-format="yyyy-MM-dd HH:mm:ss" + type="datetime" + :disabled="true" + placeholder="閫夋嫨鍑虹敓骞存湀" + > + </el-date-picker> + </el-form-item> + </el-col> + <el-col :span="7" + ><el-form-item label="鏀舵鍗曞彿" prop="donateno"> + <el-input v-model="form.paymentno" placeholder="璇疯緭鍏ユ敹娆惧崟鍙�" /> + </el-form-item> + </el-col> </el-row + ><el-row + ><el-col :span="5" + ><el-form-item label="鏀舵鍗曚綅" prop="donateno"> + <el-input + v-model="form.beneficiary" + placeholder="璇疯緭鍏ユ敹娆惧崟浣�" + /> + </el-form-item> + </el-col> + <el-col :span="12" + ><el-form-item label="鏀舵閾惰" prop="donateno"> + <el-input + v-model="form.beneficiarybank" + placeholder="璇疯緭鍏ユ敹娆鹃摱琛�" + /> + </el-form-item> + </el-col> + + <el-col :span="7"> + <el-form-item label="鏀舵琛屽彿" prop="donationcategory"> + <el-input + v-model="form.beneficiaryaccount" + placeholder="璇疯緭鍏ユ敹娆捐鍙�" + /> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="24"> + <el-form-item label="鑱旂郴淇℃伅" prop="remark"> + <el-input v-model="form.remark" placeholder="璇疯緭鍏ュ娉�" /> + </el-form-item> + </el-col> + </el-row> + <el-row> + <el-col :span="7"> + <el-form-item label="浠樻鍖婚櫌" prop="sex"> + <el-input + v-model="form.hospitalname" + placeholder="璇疯緭鍏ヤ粯娆惧尰闄�" + :disabled="true" + /> + </el-form-item> + </el-col> + <el-col :span="5"> + <el-form-item label="搴旀敹閲戦" prop="receivableamount"> + <el-input + v-model="form.receivableamount" + placeholder="璇疯緭鍏ュ簲鏀堕噾棰�" + :disabled="true" + /> + </el-form-item> + </el-col> + <el-col :span="5"> + <el-form-item label="瀹炴敹閲戦" prop="receivedamount"> + <el-input + @blur="chargeSumall" + v-model="form.receivedamount" + placeholder="璇疯緭鍏ュ疄鏀堕噾棰�" + /> + </el-form-item> + </el-col> + <el-col :span="5"> + <el-form-item label="鏀舵鏃ユ湡" prop="receivedtime"> + <el-date-picker + clearable + size="small" + v-model="form.receivedtime" + value-format="yyyy-MM-dd HH:mm:ss" + type="datetime" + placeholder="閫夋嫨鏀舵鏃ユ湡" + > + </el-date-picker> + </el-form-item> + </el-col> + </el-row> + <div class="headlines"> + <div>鏀舵鏄庣粏</div> + <el-button type="primary" @click="handleAddpatient">鏂板</el-button> + </div> + <el-row style="margin-top: 10px"> + <el-table + :data="donorchargeorgans" + ref="table" + border + max-height="800" + highlight-current-row + :summary-method="getSummaries" + show-summary + > + <el-table-column + prop="organno" + align="center" + fixed + label="鍣ㄥ畼缂栧彿" + width="90" + > + <template slot-scope="scope"> + <el-input + v-model="scope.row.organno" + placeholder="鍣ㄥ畼缂栧彿" + :disabled="true" + /> + </template> + </el-table-column> + <el-table-column + prop="organname" + fixed + align="center" + label="鍣ㄥ畼鍚嶇О" + width="120" + > + <template slot-scope="scope"> + <el-input + v-model="scope.row.organname" + :disabled="true" + placeholder="鍣ㄥ畼鍚嶇О" + /> + </template> + </el-table-column> + <el-table-column + label="鍥藉缂栧彿" + align="center" + width="120" + prop="caseno" + > + <template slot-scope="scope"> + <el-input + v-model="scope.row.caseno" + :disabled="true" + placeholder="鍥藉缂栧彿" + /> + </template> + </el-table-column> + <el-table-column + prop="hospitalno" + align="center" + label="鎺ユ敹鍖婚櫌" + width="280" + > + <template slot-scope="scope"> + <!-- <el-input + v-model="scope.row.hospitalname" + :disabled="true" + placeholder="鎺ユ敹鍖婚櫌" + /> --> + <org-selecter + ref="tranHosSelect" + :org-type="'4'" + :disabled="true" + + v-model="scope.row.hospitalno" + style="width: 100%" + /> + </template> + </el-table-column> + <el-table-column + label="鍙椾綋濮撴皬" + align="center" + width="120" + prop="name" + > + <template slot-scope="scope"> + <el-input + v-model="scope.row.name" + :disabled="true" + placeholder="鍙椾綋濮撴皬" + /> + </template> + </el-table-column> + <el-table-column + prop="receiveTime" + align="center" + label="鎺ユ敹鏃ユ湡" + width="200" + > + <template slot-scope="scope"> + <el-date-picker + clearable + size="small" + style="width: 100%" + v-model="scope.row.receiveTime" + :disabled="true" + type="date" + value-format="yyyy-MM-dd HH:mm:ss" + placeholder="鎺ユ敹鏃ユ湡" + > + </el-date-picker> + </template> + </el-table-column> + + <el-table-column + prop="organcharge" + align="center" + label="搴旀敹閲戦" + width="150" + > + <template slot-scope="scope"> + <el-input + @blur="chargeSum" + v-model="scope.row.organcharge" + placeholder="搴旀敹閲戦" + /> + </template> + </el-table-column> + <el-table-column + prop="amount" + align="center" + label="瀹炴敹閲戦" + width="150" + > + <template slot-scope="scope"> + <el-input + @blur="chargeSum" + v-model="scope.row.amount" + placeholder="瀹炴敹閲戦" + /> + </template> + </el-table-column> + + <el-table-column + prop="amounttime" + align="center" + label="鏀舵鏃ユ湡" + width="200" + > + <template slot-scope="scope"> + <el-date-picker + clearable + size="small" + style="width: 100%" + v-model="scope.row.amounttime" + type="date" + value-format="yyyy-MM-dd HH:mm:ss" + placeholder="鏀舵鏃ユ湡" + > + </el-date-picker> + </template> + </el-table-column> + <el-table-column + prop="organchargedesc" + width="280" + align="center" + label="澶囨敞" + > + <template slot-scope="scope"> + <el-input + type="textarea" + :rows="1" + v-model="scope.row.organchargedesc" + placeholder="澶囨敞" + /> + </template> + </el-table-column> + <el-table-column + label="鎿嶄綔" + fixed="right" + width="260" + align="center" + > + <template slot-scope="scope"> + <el-button + type="text" + @click="handleDelete(scope.row)" + v-hasPermi="['system:donorcharge:remove']" + ><span class="button-delete" + ><i class="el-icon-delete"></i>鍒犻櫎</span + ></el-button + > + <el-button + type="text" + icon="el-icon-folder-opened" + @click="Filepopup(scope.$index, scope.row)" + v-hasPermi="['system:donorcharge:edit']" + >闄勪欢</el-button + > + </template> + </el-table-column> + </el-table> + </el-row> + </el-form> + <div slot="footer" class="dialog-footer"> + <el-button + type="success" + @click="submitForm" + v-if="operationType == 'add' || operationType == 'update'" + >淇� 瀛�</el-button + > + <el-button type="info" @click="cancel">鍏抽棴</el-button> + </div> + <!-- 娣诲姞鎮h�� --> + <el-dialog + title="閫夋嫨鍣ㄥ畼鍜岀粍缁�" + :visible.sync="dialogVisiblepatient" + width="70%" + :before-close="handleClosehz" + > + <div class="examine-jic"> + <div class="jic-value"> + <el-row :gutter="20"> + <!--鐢ㄦ埛鏁版嵁--> + <el-form + :model="patientqueryParams" + ref="queryForm" + size="small" + :inline="true" + label-width="98px" + > + <el-form-item label="鎺ユ敹鍖婚櫌" prop="status"> + <el-input + v-model="form.hospitalname" + placeholder="璇疯緭鍏ヤ粯娆惧尰闄�" + :disabled="true" + /> + </el-form-item> + <el-form-item label="鎹愮尞鑰�" prop="status"> + <el-select + v-model="patientqueryParams.donorchargeid" + filterable + placeholder="璇烽�夋嫨" + > + <el-option + v-for="item in donorchargeanlList" + :key="item.id" + :label="item.name" + :value="item.id" + > + </el-option> + </el-select> + </el-form-item> + + <el-form-item> + <el-button + type="primary" + icon="el-icon-search" + size="medium" + @click="handleAddpatient" + >鎼滅储</el-button + > + <el-button + icon="el-icon-refresh" + size="medium" + @click="resetQuery" + >閲嶇疆</el-button + > + </el-form-item> + </el-form> + <!-- 閫夋嫨鍣ㄥ畼鍒楄〃 --> + <el-table + ref="multipleTable" + :data="donorchargeList" + tooltip-effect="dark" + style="width: 100%" + @selection-change="handleSelectionChange" + > + <el-table-column type="selection" width="55"> </el-table-column> + <el-table-column label="鎹愮尞鑰�" width="120"> + <template slot-scope="scope">{{ + scope.row.donorname + }}</template> + </el-table-column> + + <el-table-column + prop="organname" + label="鍣ㄥ畼鍚嶇О" + show-overflow-tooltip + > + </el-table-column> + <el-table-column prop="organno" label="鍣ㄥ畼缂栧彿" width="120"> + </el-table-column> + <el-table-column + prop="caseno" + label="鍥藉鍒嗛厤缂栧彿" + show-overflow-tooltip + > + </el-table-column> + <el-table-column + prop="name" + label="鍙椾綋濮撴皬" + show-overflow-tooltip + > + </el-table-column> + <el-table-column + prop="hospitalname" + label="鎺ユ敹鍖婚櫌" + show-overflow-tooltip + > + </el-table-column> + <el-table-column + prop="receiveTime" + label="鎺ユ敹鏃ユ湡" + show-overflow-tooltip + > + </el-table-column> + <el-table-column + prop="address" + label="澶囨敞" + show-overflow-tooltip + > + </el-table-column> + </el-table> + </el-row> + <pagination + v-show="patienttotal > 0" + :total="patienttotal" + :page.sync="patientqueryParams.pageNum" + :limit.sync="patientqueryParams.pageSize" + @pagination="handleAddpatient" + /> + </div> + </div> + <span slot="footer" class="dialog-footer"> + <el-button @click="dialogVisiblepatient = false">鍙� 娑�</el-button> + <el-button type="primary" @click="AddDispatchpatients" + >纭畾娣诲姞</el-button + > + </span> + </el-dialog> + <!-- 闄勪欢寮圭獥 --> + <el-dialog + v-dialogDrags + :modal="false" + :close-on-click-modal="false" + :title="pdftitle" + :visible.sync="pdfVisible" + width="60%" + > + <div class="pdfimg"> + <div class="box-pdf"> + <div> + <el-upload + size="mini" + class="upload-demo" + :action="uploadFileUrl" + :file-list="fileListto" + :show-file-list="false" + multiple + drag + :headers="headers" + :on-success=" + (response, file, fileList) => + uploadSccess(response, file, fileList) + " + :on-preview="downFile" + :disabled="operationType == 'detail'" + :on-error="handleUploadError" + :on-remove="remove" + accept="image/*,.pdf" + > + <i class="el-icon-upload"></i> + <div class="el-upload__text"> + 灏嗙エ鎹嫋鍒版澶勶紝鎴� + <em + ><el-button + :disabled="operationType == 'detail'" + size="small" + type="primary" + >鐐瑰嚮涓婁紶</el-button + ></em + > + </div> + </el-upload> + <el-table + :data="fileListto" + @row-click="downFile" + style="width: 100%" + height="400" + > + <el-table-column + prop="name" + :show-overflow-tooltip="true" + label="鍚嶇О" + > + <template slot-scope="scope"> + <i style="color:#409EFF" class=" el-icon-s-order" /> + <span>{{ scope.row.name }}</span> + </template> + </el-table-column> + + <el-table-column + prop="name" + width="190" + :show-overflow-tooltip="true" + label="鍔熻兘" + > + <template slot-scope="scope"> + <el-button + type="danger" + size="mini" + @click="deletedowfile(scope.row)" + >鍒犻櫎</el-button + > + + <el-button + type="primary" + size="mini" + @click.native.prevent.stop="moveupdowfile(scope.row)" + >涓婄Щ</el-button + > + <el-button + type="success" + size="mini" + icon="el-icon-search" + circle + @click.native.prevent.stop="Downloadfile(scope.row)" + ></el-button> + </template> + </el-table-column> + </el-table> + </div> + </div> + + <div v-if="this.previewpdf && pdfimgsrcList.length" class="pdfimgmin"> + <!-- <img :src="pdfimg" /> --> + <el-image + style="width: 95%; height: 90%" + :src="pdfimg" + :preview-src-list="pdfimgsrcList" + > + <!-- <div slot="error" class="image-slot"> + <i class="el-icon-picture-outline"></i> + </div> --> + </el-image> + </div> + <div v-else class="pdfimgmins">{{ hintitle }}</div> + </div> + </el-dialog> + </div> + </div> + </template> + + <script> + import pdf from "vue-pdf"; + import Treeselect from "@riophae/vue-treeselect"; + import "@riophae/vue-treeselect/dist/vue-treeselect.css"; + import { regionDataPlus, CodeToText } from "element-china-area-data"; + import { + getDonorcharge, + addDonorcharge, + updateDonorcharge, + listDonorcharge, + listDonorpayment, + addDonorpayment, + editDonorpayment + } from "@/api/project/donorcharge"; + + import { + listDonorchargeorgan, + updateDonorchargeorgan, + saveDonorchargeorgan + } from "@/api/project/donorcharge"; + import { listDonatecomporgan } from "@/api/project/donatecompletioninfo"; + import { listOrgancharge } from "@/api/project/organcharge"; + import OrgSelecter from "@/views/project/components/orgselect"; + import Li_area_select from "@/components/Address"; + import { getUserProfile } from "@/api/system/user"; + import { getToken } from "@/utils/auth"; + import debounce from "lodash/debounce"; + export default { + components: { + Treeselect, + OrgSelecter, + Li_area_select, + pdf + }, + dicts: ["sys_gathering", "sys_0_1"], + name: "Donorchargemanager", + data() { + return { + activeName: 1, //鏂囦欢绫诲瀷 + tableData: [ + { + date: "2016-05-03", + name: "鐜嬪皬铏�", + address: "涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�" + }, + { + date: "2016-05-02", + name: "鐜嬪皬铏�", + address: "涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�" + }, + { + date: "2016-05-04", + name: "鐜嬪皬铏�", + address: "涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�" + }, + { + date: "2016-05-01", + name: "鐜嬪皬铏�", + address: "涓婃捣甯傛櫘闄�鍖洪噾娌欐睙璺� 1518 寮�" + } + ], + gatheringlist: [ + { label: "鏂板缓", value: "1" }, + { label: "寰呮敹娆�", value: "2" }, + { label: "宸叉敹娆�", value: "3" } + ], + multipleSelection: [], + patientqueryParams: { + pageNum: 1, + pageSize: 10, + hospitalno: null, + paymentid: null + }, + dialogVisiblepatient: false, + patienttotal: 0, // + //绁ㄦ嵁鏂囦欢 + pdftitle: "", + pdfimg: "", + pdfVisible: false, + costtypeobj: { + value: 0, + label: "" + }, + pdfimgsrcList: [], + Savereminder: false, //鎻愰啋淇濆瓨寮规 + Reminderquantity: 0, //鎻愰啋鏁伴噺 + totalquantity: 0, //鎬绘暟閲� + + hintitle: "閫変腑宸︿晶宸蹭笂浼犳枃浠堕瑙堟煡鐪�", + atpresent: "", + iframeurl: "", + options: regionDataPlus, + selectedOptions: [], + value1: "", + previewpdf: false, + // 閬僵灞� + loading: true, + // 瀵煎嚭閬僵灞� + exportLoading: false, + // 缃戠粶璇锋眰澶� + Networkheader: null, + + // 閫変腑鏁扮粍 + ids: [], + // 闈炲崟涓鐢� + single: true, + // 闈炲涓鐢� + multiple: true, + // 鏄剧ず鎼滅储鏉′欢 + showSearch: true, + // 鎬绘潯鏁� + total: 0, + // 鎹愮尞妗堜緥鍣ㄥ畼鍒楄〃鏍兼暟鎹� + donorchargeList: [], + donorchargeorgans: [], + donorchargeanlList: [], //妗堜緥鍒楄〃 + delogans: [], + // 寮瑰嚭灞傛爣棰� + title: "", + + // 鏌ヨ璐圭敤琛ㄥ弬鏁� + queryParams: { + pageNum: 1, + pageSize: 10, + infoid: null, + name: null, + donationcategory: null, + donateorgan: null, + chargeamounted: null + }, + // 鏌ヨ璐圭敤鍣ㄥ畼琛ㄥ弬鏁� + organParams: { + pageNum: 1, + pageSize: 10, + paymentid: null + }, + + // 褰撳墠鐢ㄦ埛淇℃伅 + userprofile: {}, + // 琛ㄥ崟鍙傛暟 + form: {}, + // 鍒楄〃鍙傛暟 + table: {}, + reimbursementList: [], + + // 琛ㄥ崟鏍¢獙 + rules: { + reason: [ + { required: true, message: "璇疯緭鍏ュ嚭宸簨鐢�", trigger: "blur" } + ], + deptmentname: [ + { required: true, message: "璇疯緭鍏ユ墍灞炰笟鍔$粍", trigger: "blur" } + ] + }, + topicoptions: [ + { + value: "閫夐」1", + label: "榛勯噾绯�" + }, + { + value: "閫夐」2", + label: "鍙岀毊濂�" + }, + { + value: "閫夐」5", + label: "鍖椾含鐑ら腑" + } + ], + + baselist: [], + donorList: [], + organchargelist: [], + standardlevel: 0, + defaultperson: {}, + fundflowList: [], + showApproveRecordDialog: false, + + // 褰撳墠鍗曟嵁ID + curId: 0, + curCase: null, + //涓氬姟鎿嶄綔绫诲瀷 + operationType: "edit", + + //涓婁紶鍙戠エ鏂囦欢璺緞 + uploadFileUrl: process.env.VUE_APP_BASE_API + "/common/upload", + //鏂囦欢鍒楄〃 + fileList: [], + fileListto: [], + + invoDatatop: [], + //浜哄憳绫诲埆 + persontype: null, + + headers: { + Authorization: "Bearer " + getToken() + }, + + jurisdiction: false, + + //淇濆瓨鎸夐挳鎺у埗 + idisabled: false + }; + }, + + created() { + console.log(234); + this.Getnetworkheader(); + + //鑾峰彇鐧诲綍鑰呬俊鎭� + getUserProfile().then(response => { + this.userprofile = response.data; + this.defaultperson = response.data; + this.standardlevel = response.data.standardlevel; + }); + + //鑾峰彇鍙傛暟 + this.getroute(); + }, + + mounted() { + window.addEventListener("beforeunload", e => this.beforeunloadHandler(e)); + }, + + updated() { + this.$nextTick(() => { + this.$refs["table"].doLayout(); + }); + }, + + destroyed() { + window.removeEventListener("beforeunload", e => this.beforeunloadFn(e)); + }, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴� + + methods: { + // 娴忚鍣ㄩ〉闈㈠叧闂垨鍒锋柊鎻愮ず + beforeunloadHandler(e) { + if ( + (JSON.stringify(this.form) == sessionStorage.getItem("apiform") && + JSON.stringify(this.donorchargeorgans) == + sessionStorage.getItem("apifunddetail")) || + !sessionStorage.getItem("apifunddetail") + ) { + } else { + this._beforeUnload_time = new Date().getTime(); + e = e || window.event; + if (e) { + e.returnValue = "鍏抽棴鎻愮ず"; + } + return "鍏抽棴鎻愮ず"; + } + }, + + handleClosehz() { + this.dialogVisiblepatient = false; + }, + handleQuery() {}, + resetQuery() { + this.patientqueryParams.donorname = null; + this.patientqueryParams.donorchargeid = null; + this.handleAddpatient(); + }, + handleUploadError() {}, + // 寮规娣诲姞 + AddDispatchpatients() { + this.donorchargeorgans = this.donorchargeorgans.concat( + this.multipleSelection + ); + this.dialogVisiblepatient = false; + }, + // 澶氶�夋閫変腑鏁版嵁 + handleSelectionChange(val) { + this.multipleSelection = val; + }, + // 鐐瑰嚮鏂板 + handleAddpatient(row) { + this.dialogVisiblepatient = true; + this.patientqueryParams.hospitalno = this.form.hospitalno; + this.patientqueryParams.paymentid = null; + this.patientqueryParams.paymentidIsNotNull = false; + listDonorchargeorgan(this.patientqueryParams).then(res => { + this.donorchargeList = res.rows; + this.patienttotal = res.total; + this.patientqueryParams.paymentidIsNotNull = true; + console.log(this.donorchargeList); + }); + }, + // 鑾峰彇璇锋眰澶� + Getnetworkheader() { + let string = window.location.href; + if (string.includes("9091")) { + const index = string.indexOf("9091"); + this.Networkheader = string.slice(0, index + 4); // 鎴彇9091鍙婂叾鍓嶉儴瀛楃 + } else { + const index = string.indexOf("8032"); + this.Networkheader = string.slice(0, index + 4); // 鎴彇8032鍙婂叾鍓嶉儴瀛楃 + } + }, + // 琛ㄥ崟閲嶇疆 + reset() { + this.form = { + id: null, + infoid: null, + donateno: null, + donatetime: null, + name: null, + borthdate: null, + sex: null, + age: null, + donationcategory: null, + donateorgan: null, + chargeamount: null, + chargeamounted: null, + remark: null, + delFlag: null, + createBy: null, + createTime: null, + updateBy: null, + updateTime: null + }; + this.resetForm("form"); + }, + + /** 閫氳繃鍙傛暟鑾峰彇涓氬姟绫诲瀷 */ + getroute() { + //閫夋嫨涓氬姟绫诲瀷:1銆佹柊澧烇紱2銆佷慨鏀癸紱3銆佹煡鐪� + this.operationType = this.$route.query.operation; + this.curId = this.$route.query.id; + this.curCase = this.$route.query.data; + this.patientqueryParams.paymentid = this.curId; + console.log("this.$route.query", this.$route.query); + + if (this.operationType == "add") { + this.title = "鏂板缓妗堜緥鍣ㄥ畼璐圭敤琛�"; + this.handleAdd(); + console.log("1"); + } else if (this.operationType == "update") { + this.title = "淇敼妗堜緥鍣ㄥ畼璐圭敤琛�"; + this.handleUpdate(); + console.log("2"); + } else if (this.operationType == "detail") { + this.title = "鏌ョ湅妗堜緥鍣ㄥ畼璐圭敤琛�"; + this.handleDetail(); + console.log("3"); + } + listDonorcharge({ pageNum: 1, pageSize: 10000 }).then(response => { + this.donorchargeanlList = response.rows; + }); + }, + + /** 閲嶇疆鎸夐挳鎿嶄綔 */ + resetQuery() { + this.resetForm("queryForm"); + this.handleQuery(); + }, + + // 鍙栨秷鎸夐挳 + cancel() { + this.$store.dispatch("tagsView/delView", this.$route); + this.$router.go(-1); + }, + + /** 鏂板鎸夐挳鎿嶄綔 */ + handleAdd() { + this.reset(); + this.title = "鏂板鎹愮尞妗堜緥鍣ㄥ畼璐圭敤琛�"; + + if (this.curCase) { + this.form.infoid = this.curCase.id; + this.form.paystatus = "1"; + this.form.hospitalname = this.curCase.organizationname; + this.form.hospitalno = this.curCase.organizationid; + this.form.borthdate = this.curCase.birthday; + } + }, + + /** 淇敼鎸夐挳鎿嶄綔 */ + handleUpdate() { + this.reset(); + this.title = "鏀舵缁撶畻鐢宠鍗曠紪杈�"; + + listDonorpayment({ id: this.curId }).then(response => { + this.form = response.rows[0]; + //鍣ㄥ畼璐圭敤淇℃伅 + listDonorchargeorgan(this.patientqueryParams).then(res => { + console.log("listDonorchargeorgan", res); + this.donorchargeorgans = res.rows; + console.log(this.donorchargeorgans, "donorchargeorgans"); + }); + }); + }, + + /** 鏌ョ湅鎿嶄綔 */ + handleDetail() { + this.reset(); + listDonorpayment({ id: this.curId }).then(response => { + this.title = "鏌ョ湅鎹愮尞妗堜緥鍣ㄥ畼璐圭敤琛�"; + this.form = response.rows[0]; + //鍣ㄥ畼璐圭敤淇℃伅 + listDonorchargeorgan(this.patientqueryParams).then(res => { + console.log("listDonorchargeorgan", res); + this.donorchargeorgans = res.rows; + console.log(this.donorchargeorgans, "donorchargeorgans"); + }); + }); + }, + + /** 鎻愪氦淇濆瓨鎸夐挳 */ + submitForm() { + this.chargeSum(); + this.$refs["form"].validate(valid => { + if (valid) { + this.$modal.loading("姝e湪鎻愪氦锛岃绋嶅�欙紒"); + + //淇濆瓨 + if (this.form.id != null) { + for (let k = 0; k < this.donorchargeorgans.length; k++) { + this.donorchargeorgans[k].paymentid = this.form.id; + } + + editDonorpayment(this.form).then(res1 => { + if (res1.code == 200) { + saveDonorchargeorgan(this.donorchargeorgans).then(res2 => { + if (res2.code == 200) { + this.$modal.msgSuccess("淇濆瓨鎴愬姛锛�"); + } else { + this.$modal.msgError(res2.msg); + } + this.$modal.closeLoading(); + }); + } else { + this.$modal.closeLoading(); + this.$modal.msgError(res1.msg); + } + }); + } else { + addDonorpayment(this.form).then(response => { + if (response.code == 200) { + this.form.id = response.msg; + //淇濆瓨鍓嶆牎楠屾暟鎹� + for (let k = 0; k < this.donorchargeorgans.length; k++) { + this.donorchargeorgans[k].paymentid = response.msg; + } + saveDonorchargeorgan(this.donorchargeorgans).then(res2 => { + if (res2.code == 200) { + this.$modal.msgSuccess("淇濆瓨鎴愬姛锛�"); + } else { + this.$modal.msgError(res2.msg); + } + }); + this.$modal.closeLoading(); + } else { + this.$modal.msgError(response.msg); + this.$modal.closeLoading(); + } + }); + } + } + }); + }, + //淇敼鎬诲疄鏀跺悗瑙﹀彂 + + chargeSumall() { + if (this.form.receivedamount == this.form.receivableamount) { + this.donorchargeorgans.forEach(item => { + item.amount = item.organcharge; + }); + } else { + this.$modal.msgError("娉ㄦ剰瀹炴敹閲戦涓嶇瓑浜庡簲鏀堕噾棰濓紝璇锋牳瀵规暟鎹紒"); + } + }, + //淇敼瀹炴敹鎴栧簲鏀跺悗瑙﹀彂 + chargeSum() { + let ChargeSum = 0; + let ChargeamountSum = 0; + + //璐圭敤鍚堣 + try { + for (let i = 0; i < this.donorchargeorgans.length; i++) { + if (!isNaN(parseFloat(this.donorchargeorgans[i].organcharge))) { + ChargeSum += parseFloat(this.donorchargeorgans[i].organcharge); + } + if (!isNaN(parseFloat(this.donorchargeorgans[i].amount))) { + ChargeamountSum += parseFloat(this.donorchargeorgans[i].amount); + } + } + this.form.receivableamount = ChargeSum.toFixed(2); + this.form.receivedamount = ChargeamountSum.toFixed(2); + } catch {} + }, + + handleDelete(row) { + this.$modal + .confirm("鏄惁纭鍒犻櫎璇ユ潯鍣ㄥ畼璐圭敤鏁版嵁椤癸紵") + .then(() => { + let value = row; + value.paymentid = null; + this.delogans.push(value); + + saveDonorchargeorgan(this.delogans).then(res2 => { + if (res2.code == 200) { + let index = this.donorchargeorgans.indexOf(row); + this.donorchargeorgans.splice(index, 1); + this.$modal.msgSuccess("鍒犻櫎鎴愬姛锛�"); + } + }); + }) + .catch(() => {}); + }, + + //琛ㄦ牸鍚堣 + getSummaries(param) { + const { columns, data } = param; + const sums = []; + var columnnames = [ + "organno", + "organname", + "amounttime", + "organchargedesc", + "hospitalname", + "organtime", + "remark", + "name", + "caseno", + "receiveTime" + ]; + columns.forEach((column, index) => { + if (index === 0) { + sums[index] = "鍚堣"; + return; + } + + //鍘婚櫎閮ㄥ垎瀛楁璁$畻 + if (columnnames.indexOf(column.property) > -1) { + return; + } + + const values = data.map(item => Number(item[column.property])); + if (!values.every(value => isNaN(value))) { + sums[index] = values.reduce((prev, curr) => { + const value = Number(curr); + if (!isNaN(value)) { + return prev + curr; + } else { + return prev; + } + }, 0); + sums[index] = sums[index].toFixed(2); // 淇濈暀2浣嶅皬鏁帮紝瑙e喅灏忔暟鍚堣鍒�; + } else { + sums[index] = ""; + } + }); + return sums; + }, + // 鏂囦欢------------------------ + remove(file, fileList) { + const donorchargeorgans = [...this.donorchargeorgans]; + + this.fileListto.splice(this.fileListto.indexOf(file), 1); + donorchargeorgans[this.atpresent].annexFilesList = this.fileListto; + }, + + uploadSccess(response, file, fileList) { + this.donorchargeorgans; + const config = { + headers: { Authorization: "Bearer " + this.ICDtoken } + }; + const pdfimg = this.Networkheader + "/prod-api" + response.fileName; + //鑾峰彇绁ㄦ嵁淇℃伅浣嶇疆 + if (response.code == 200) { + this.previewpdf = true; + fetch(pdfimg, config) + .then(response => response.blob()) + .then(blob => { + // 灏嗚幏鍙栫殑鏁版嵁娴佽浆鎹负URL + this.pdfimg = URL.createObjectURL(blob); + this.pdfimgsrcList.push(URL.createObjectURL(blob)); + this.fileListto.push({ + name: file.name, + url: URL.createObjectURL(blob) + }); + }) + .catch(error => { + console.error("Error loading image", error); + return; + }); + + this.$modal.msgSuccess(response.msg); + + console.log(this.fileListto, "鏂板鍚�"); + if (!this.donorchargeorgans[this.atpresent].annexFilesList) { + this.donorchargeorgans[this.atpresent].annexFilesList = []; + } + this.donorchargeorgans[this.atpresent].annexFilesList.push({ + name: file.name, + url: response.fileName + }); + this.pdftitle = "鍏�" + this.pdfimgsrcList.length + "椤�"; + } else { + console.log(response.msg); + } + }, + + // 鐐瑰嚮绁ㄦ嵁 + Filepopup(index, row) { + const config = { + headers: { Authorization: "Bearer " + this.ICDtoken } + }; + + this.tableDatatop = []; + this.fileListto = []; + this.invoicefileListto = []; + this.pdfimg = ""; + this.invoicepdfimg = []; + this.pdfimgsrcList = []; + this.invoicepdfimgsrcList = []; + this.tableDatatop.push(row); + this.atpresent = index; + this.pdfVisible = true; + + if (this.donorchargeorgans[index].annexFilesList) { + const fetchPromises = this.donorchargeorgans[index].annexFilesList.map( + (value, indexson) => { + const pdfimg = this.Networkheader + "/prod-api" + value.url; + return fetch(pdfimg, config) + .then(response => response.blob()) + .then(blob => { + return { + name: value.name, + url: URL.createObjectURL(blob) + }; + }) + .catch(error => { + console.error("Error loading image", error); + return null; + }); + } + ); + + Promise.all(fetchPromises).then(fileListto => { + this.fileListto = fileListto.filter(item => item !== null); + this.pdfimg = this.fileListto[0].url; + console.log(this.pdfimg, "pdfimg"); + this.pdfimgsrcList = this.fileListto.map(item => item.url); + }); + + this.previewpdf = true; + } else { + this.fileListto = []; + this.pdfimg = ""; + this.pdftitle = ""; + } + + this.pdftitle = "鍏�" + this.pdfimgsrcList.length + "椤�"; + + console.log(this.fileListto, "this.fileListto"); + console.log( + this.donorchargeorgans[index].annexFilesList, + "annexFilesList" + ); + }, + + // 鐐瑰嚮宸蹭笂浼犳枃浠� + downFile(item) { + this.pdftitle = + "鍏�" + this.pdfimgsrcList.length + "椤癸紝褰撳墠閫変腑" + item.name; + let name = item.name.split("."); + if (name[1] == "pdf") { + this.$modal.msgWarning("褰撳墠鏂囦欢鏆備笉鏀寔棰勮"); + this.previewpdf = false; + this.hintitle = "褰撳墠鏂囦欢鏆備笉鏀寔棰勮"; + } else if (name[1] == "jpg" || "png") { + console.log(item, "灞曠ず"); + this.previewpdf = true; + if (item.url) { + this.pdfimg = item.url; + } else { + this.pdfimg = ""; + } + } else { + this.hintitle = "褰撳墠鏂囦欢鏆備笉鏀寔棰勮"; + this.$modal.msgWarning("褰撳墠鏂囦欢鏆備笉鏀寔棰勮"); + this.previewpdf = false; + } + }, + getIndexInArray(arr, obj) { + return arr.indexOf(obj); + }, + // 鍙戠エ鍒囨崲 + handleClick(tab, event) { + this.pdftitle = "鍏�" + this.pdfimgsrcList.length + "椤�"; + }, + // 鐐瑰嚮鍒犻櫎 + deletedowfile(row) { + console.log(row); + let indexvalue = ""; + const indexlist = this.getIndexInArray(this.pdfimgsrcList, row.url); + this.pdfimgsrcList.splice(indexlist, 1); + const index = this.getIndexInArray(this.fileListto, row); + this.fileListto.splice(index, 1); + console.log(this.donorchargeorgans[this.atpresent].annexFilesList); + indexvalue = this.donorchargeorgans[ + this.atpresent + ].annexFilesList.findIndex(item => item.name == row.name); + console.log(indexvalue, "鍒犻櫎绱㈠紩"); + this.donorchargeorgans[this.atpresent].annexFilesList.splice( + indexvalue, + 1 + ); + }, + // 鐐瑰嚮涓婄Щ + moveupdowfile(row) { + const index = this.fileListto.findIndex(item => item.name == row.name); + const item = this.fileListto.splice(index, 1)[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓� + this.fileListto.splice(index - 1, 0, item); // 灏唅tem鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣� + + const indexann = this.donorchargeorgans[ + this.atpresent + ].annexFilesList.findIndex(item => item.name == row.name); + const itemann = this.donorchargeorgans[ + this.atpresent + ].annexFilesList.splice(indexann, 1)[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓� + this.donorchargeorgans[this.atpresent].annexFilesList.splice( + indexann - 1, + 0, + itemann + ); // 灏唅temann鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣� + console.log(indexann, "indexann"); + console.log(index, "index"); + + console.log( + this.donorchargeorgans[this.atpresent].annexFilesList, + "annexFilesList" + ); + console.log(this.fileListto, "fileListto"); + // console.log(this.donorchargeorgans[this.atpresent].invoicefilesList,'invoicefilesList'); + }, + Downloadfile(row) { + window.location.href = row.url; + } + } + }; + </script> + + <style lang="scss" scoped> + .Modifydetailscla { + padding: 10px; + + .boxdiv { + font-size: 18px; + padding: 0 30px; + padding-bottom: 60px; + + .top-text { + text-align: center; + + font-size: 23px; + font-weight: 600; + margin: 20px 0; + margin-bottom: 50px; + } + + .dialog-footer { + text-align: left; + margin-top: 10px; + } + } + } + + .upload-demo { + text-align: center; + } + + .pdfimg { + display: flex; // text-align: center; + width: 100%; + height: 600px; + + .box-pdf { + width: 400px; + padding-top: 20px; + margin-right: 30px; + border: 1px solid #dcdfe6; + -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), + 0 0 6px 0 rgba(0, 0, 0, 0.04); + box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.1); // <- Add this to fix. + } + + .pdftit { + width: 200px; + padding: 20px; + font-size: 18px; + } + + .pdftit:hover { + background: #c0cef7; + } + + .pdfimgmin { + width: 60%; + + img { + width: 100%; + } + } + + .pdfimgmins { + font-size: 28px; + width: 60%; + text-align: center; + } + } + .headlines { + font-size: 25px; + display: flex; + width: 96%; + justify-content: space-between; + padding-left: 5px; + margin-bottom: 10px; + border-left: 5px solid rgb(65, 161, 190); + } + .button-delete { + color: rgb(236, 69, 69); + } + .examine-jic { + .headline { + font-size: 24px; + border-left: 5px solid #41a1be; + padding-left: 5px; + margin-bottom: 10px; + display: flex; + justify-content: space-between; + .Add-details { + font-size: 18px; + color: #02a7f0; + cursor: pointer; + } + } + .jic-value { + font-size: 20px; + border-top: 1px solid #a7abac; + padding: 10px; + margin-bottom: 10px; + .details-jic { + padding: 10px 15px; + border: 1px solid #dcdfe6; + -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.12), + 0 0 6px 0 rgba(0, 0, 0, 0.04); + .details-title { + display: flex; + justify-content: space-between; + margin-bottom: 10px; + div:nth-child(2) { + color: #02a7f0; + cursor: pointer; + } + } + .details-renw { + background: #e4ebfc; + padding: 15px 5px; + border-radius: 5px; + margin-bottom: 20px; + } + } + } + } + + ::v-deep .el-input--medium .el-input__inner { + height: 36px; + line-height: 36px; + text-align: center; + } + + ::v-deep .el-alert__title { + font-size: 20px; + line-height: 20px; + } + </style> + \ No newline at end of file -- Gitblit v1.9.3