From 0ac2d43fce4d74f6eea5a51a2e16af4e6a536c7c Mon Sep 17 00:00:00 2001 From: WXL <1785969728@qq.com> Date: 星期三, 14 八月 2024 14:19:24 +0800 Subject: [PATCH] 11 --- src/views/project/donorcharge/donorchargedetail/index.vue | 754 ++++++++++++++++++++++++--------------------------------- 1 files changed, 321 insertions(+), 433 deletions(-) diff --git a/src/views/project/donorcharge/donorchargedetail/index.vue b/src/views/project/donorcharge/donorchargedetail/index.vue index 0985c94..953e979 100644 --- a/src/views/project/donorcharge/donorchargedetail/index.vue +++ b/src/views/project/donorcharge/donorchargedetail/index.vue @@ -6,14 +6,22 @@ <el-row> <el-col :span="5"> <el-form-item label="妗堜緥濮撳悕" prop="name"> - <el-input v-model="form.name" placeholder="璇疯緭鍏ュ鍚�" :disabled="true" /> + <el-input + v-model="form.name" + placeholder="璇疯緭鍏ュ鍚�" + :disabled="true" + /> </el-form-item> </el-col> <el-col :span="5"> <el-form-item label="鎬у埆" prop="sex"> <el-select v-model="form.sex" placeholder="璇疯緭鍏ユ�у埆"> - <el-option v-for="dict in dict.type.sys_user_sex" :key="dict.label" :label="dict.label" - :value="parseInt(dict.value)"></el-option> + <el-option + v-for="dict in dict.type.sys_user_sex" + :key="dict.label" + :label="dict.label" + :value="dict.value" + ></el-option> </el-select> </el-form-item> </el-col> @@ -24,206 +32,244 @@ </el-col> <el-col :span="5"> <el-form-item label="鍑虹敓骞存湀" prop="borthdate"> - <el-date-picker clearable size="small" v-model="form.borthdate" type="date" value-format="yyyy-MM-dd" - placeholder="閫夋嫨鍑虹敓骞存湀"> + <el-date-picker + clearable + size="small" + v-model="form.borthdate" + type="date" + value-format="yyyy-MM-dd" + placeholder="閫夋嫨鍑虹敓骞存湀" + > </el-date-picker> </el-form-item> - </el-col> - </el-row><el-row><el-col :span="10"><el-form-item label="妗堜緥缂栧彿" prop="donateno"> - <el-input v-model="form.donateno" placeholder="璇疯緭鍏ユ渚嬬紪鍙�" :disabled="true" /> + </el-col> </el-row + ><el-row + ><el-col :span="10" + ><el-form-item label="妗堜緥缂栧彿" prop="donateno"> + <el-input + v-model="form.donateno" + placeholder="璇疯緭鍏ユ渚嬬紪鍙�" + :disabled="true" + /> </el-form-item> </el-col> <el-col :span="5"> <el-form-item label="妗堜緥鏃堕棿" prop="donatetime"> - <el-date-picker clearable size="small" v-model="form.donatetime" type="date" value-format="yyyy-MM-dd" - placeholder="閫夋嫨鎹愮尞鏃堕棿"> + <el-date-picker + clearable + size="small" + v-model="form.donatetime" + type="date" + value-format="yyyy-MM-dd" + placeholder="閫夋嫨鎹愮尞鏃堕棿" + > </el-date-picker> </el-form-item> </el-col> <el-col :span="5"> <el-form-item label="鎹愮尞绫诲埆" prop="donationcategory"> - <el-input v-model="form.donationcategory" placeholder="璇疯緭鍏ユ崘鐚被鍒�" /> + <el-input + v-model="form.donationcategory" + placeholder="璇疯緭鍏ユ崘鐚被鍒�" + /> </el-form-item> </el-col> </el-row> <el-row> - <el-col :span="5"> - <el-form-item label="搴旀敹閲戦" prop="chargeamount"> - <el-input v-model="form.chargeamount" placeholder="璇疯緭鍏ュ簲鏀堕噾棰�" :disabled="true" /> - </el-form-item> - </el-col> - <el-col :span="5"> - <el-form-item label="瀹炴敹閲戦" prop="chargeamounted"> - <el-input v-model="form.chargeamounted" placeholder="璇疯緭鍏ュ疄鏀堕噾棰�" :disabled="true" /> - </el-form-item> - </el-col> <el-col :span="10"> <el-form-item label="澶囨敞" prop="remark"> <el-input v-model="form.remark" placeholder="璇疯緭鍏ュ娉�" /> </el-form-item> </el-col> + <el-col :span="5"> + <el-form-item label="瀹炴敹閲戦" prop="chargeamounted"> + <el-input + v-model="form.chargeamounted" + placeholder="璇疯緭鍏ュ疄鏀堕噾棰�" + :disabled="true" + /> + </el-form-item> + </el-col> + <el-col :span="5"> + <el-form-item label="搴旀敹閲戦" prop="chargeamount"> + <el-input + v-model="form.chargeamount" + placeholder="璇疯緭鍏ュ簲鏀堕噾棰�" + :disabled="true" + /> + </el-form-item> + </el-col> </el-row> <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" label="鍣ㄥ畼缂栧彿" width="90"> + <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" + label="鍣ㄥ畼缂栧彿" + width="90" + > <template slot-scope="scope"> - <el-input v-model="scope.row.organno" placeholder="鍣ㄥ畼缂栧彿" :disabled="true" /> + <el-input + v-model="scope.row.organno" + placeholder="鍣ㄥ畼缂栧彿" + :disabled="true" + /> </template> </el-table-column> - <el-table-column prop="organname" align="center" label="鍣ㄥ畼鍚嶇О" width="120"> + <el-table-column + prop="organname" + align="center" + label="鍣ㄥ畼鍚嶇О" + width="120" + > <template slot-scope="scope"> - <el-input v-model="scope.row.organname" placeholder="鍣ㄥ畼鍚嶇О" /> + <el-input + v-model="scope.row.organname" + placeholder="鍣ㄥ畼鍚嶇О" + :disabled="true" + /> </template> </el-table-column> - <el-table-column prop="amount" align="center" label="瀹炴敹閲戦" width="150"> + <el-table-column + label="绯荤粺缂栧彿" + align="center" + width="120" + prop="caseno" + > <template slot-scope="scope"> - <el-input v-model="scope.row.amount" placeholder="瀹炴敹閲戦" /> + <el-input + v-model="scope.row.caseno" + placeholder="绯荤粺缂栧彿" + :disabled="true" + /> </template> </el-table-column> - <el-table-column prop="amounttime" align="center" label="瀹炴敹鏃堕棿" width="200"> + <el-table-column + prop="amount" + align="center" + label="瀹炴敹閲戦" + width="150" + > <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="organcharge" align="center" label="鏍囧噯璐圭敤" width="150"> - <template slot-scope="scope"> - <el-input v-model="scope.row.organcharge" placeholder="鏍囧噯璐圭敤" /> + <el-input + v-model="scope.row.amount" + placeholder="瀹炴敹閲戦" + :disabled="true" + /> </template> </el-table-column> - <el-table-column prop="hospitalname" align="center" label="鎺ユ敹鍖婚櫌" width="280"> + <el-table-column + prop="amounttime" + align="center" + label="瀹炴敹鏃堕棿" + width="200" + > <template slot-scope="scope"> - <el-input v-model="scope.row.hospitalname" placeholder="鎺ユ敹鍖婚櫌" /> + <el-date-picker + clearable + :disabled="true" + 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="organtime" align="center" label="绉绘鏃堕棿" width="200"> + <el-table-column + prop="organcharge" + align="center" + label="鏍囧噯璐圭敤" + width="150" + > <template slot-scope="scope"> - <el-date-picker clearable size="small" style="width: 100%" v-model="scope.row.organtime" type="date" - value-format="yyyy-MM-dd HH:mm:ss" placeholder="绉绘鏃堕棿"> - </el-date-picker> </template> + <el-input + v-model="scope.row.organcharge" + placeholder="鏍囧噯璐圭敤" + :disabled="true" + /> + </template> </el-table-column> - <el-table-column prop="remark" align="center" label="澶囨敞"> + <el-table-column + prop="hospitalno" + align="center" + label="鎺ユ敹鍖婚櫌" + width="280" + > <template slot-scope="scope"> - <el-input v-model="scope.row.remark" placeholder="澶囨敞" /> + <org-selecter + v-model="scope.row.hospitalno" + ref="tranHosSelect" + :org-type="'4'" + style="width: 100%" + :disabled="true" + /> + </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" + placeholder="鍙椾綋濮撴皬" + /> + </template> + </el-table-column> + <el-table-column + prop="organtime" + align="center" + label="绉绘鏃堕棿" + width="200" + > + <template slot-scope="scope"> + <el-date-picker + clearable + :disabled="true" + size="small" + style="width: 100%" + v-model="scope.row.organtime" + type="date" + value-format="yyyy-MM-dd HH:mm:ss" + placeholder="绉绘鏃堕棿" + > + </el-date-picker> + </template> + </el-table-column> + <el-table-column prop="organchargedesc" align="center" label="澶囨敞"> + <template slot-scope="scope" width="300"> + <el-input + v-model="scope.row.organchargedesc" + placeholder="澶囨敞" + /> </template> </el-table-column> </el-table> </el-row> </el-form> <div slot="footer" class="dialog-footer"> - <el-button type="primary" @click="submitForm" v-if="operationType == 'add' || operationType == 'update'">淇� - 瀛�</el-button> - <el-button type="primary" @click="cancel">鍏抽棴</el-button> + <el-button + type="success" + @click="submitForm" + v-if="operationType == 'add' || operationType == 'update'" + >淇� 瀛�</el-button + > + <el-button type="info" @click="cancel">鍏抽棴</el-button> </div> </div> - - <el-dialog v-dialogDrags :modal="false" :close-on-click-modal="false" :title="pdftitle" :visible.sync="pdfVisible" - width="60%"> - <el-tabs style="margin-top: 20px;" v-model="activeName" type="border-card" @tab-click="handleClick"> - <el-tab-pane label="鏅�氶檮浠�" :name="1"> - <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" />{{ - scope.row.name - }} - </template> - </el-table-column> - - <el-table-column prop="name" width="180" :show-overflow-tooltip="true" label="鍔熻兘"> - <template slot-scope="scope"> - <el-button type="primary" size="mini" - @click.native.prevent.stop="deletedowfile(scope.row)">鍒犻櫎</el-button> - <el-button type="primary" size="mini" - @click.native.prevent.stop="moveupdowfile(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-tab-pane> - <el-tab-pane label="鍙戠エ鏂囦欢" :name="2"> - <div class="pdfimg"> - <div class="box-pdf"> - <div> - <el-upload size="mini" class="upload-demo" :action="uploadFileUrl" :file-list="invoicefileList" - :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="invoicefileListto" @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" />{{ - scope.row.name - }} - </template> - </el-table-column> - - <el-table-column prop="name" width="180" :show-overflow-tooltip="true" label="鍔熻兘"> - <template slot-scope="scope"> - <el-button type="primary" size="mini" - @click.native.prevent.stop="deletedowfile(scope.row)">鍒犻櫎</el-button> - <el-button type="primary" size="mini" - @click.native.prevent.stop="moveupdowfile(scope.row)">涓婄Щ</el-button> - </template> - </el-table-column> - </el-table> - </div> - </div> - - <div v-if="this.previewpdf && invoicepdfimgsrcList.length" class="pdfimgmin"> - <el-image style="width: 95%; height: 90%" :src="invoicepdfimg" :preview-src-list="invoicepdfimgsrcList"> - </el-image> - </div> - <div v-else class="pdfimgmins">{{ hintitle }}</div> - </div> - </el-tab-pane> - </el-tabs> - </el-dialog> - <el-dialog title="鎻愮ず" :visible.sync="Savereminder" width="30%"> - <el-alert :title="'鎮ㄥ凡娣诲姞' + - totalquantity + - '鏉℃暟鎹紝涓洪槻姝㈡暟鎹涪澶辨槸鍚︽彁浜や繚瀛樺啀缁х画娣诲姞銆�' - " type="warning"> - </el-alert> - <span slot="footer" class="dialog-footer"> - <el-button @click="unsave">鍙� 娑�</el-button> - <el-button type="primary" @click="Savenow">纭� 瀹�</el-button> - </span> - </el-dialog> </div> </template> @@ -232,10 +278,19 @@ 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, listDonorchargeorgan, getDonorchargeorgan, delDonorchargeorgan, addDonorchargeorgan, updateDonorchargeorgan, exportDonorchargeorgan } from "@/api/project/donorcharge"; -import { listDonatebaseinfo } from "@/api/project/donatebaseinfo"; +import { + getDonorcharge, + addDonorcharge, + updateDonorcharge +} from "@/api/project/donorcharge"; +import { + listDonorchargeorgan, + delDonorchargeorgan, + 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"; @@ -243,19 +298,16 @@ export default { components: { Treeselect, + OrgSelecter, Li_area_select, pdf }, - dicts: [ - "sys_user_sex", - "sys_0_1", - ], - name: "Donorcharge", + dicts: ["sys_user_sex", "sys_0_1"], + name: "Donorchargemanager", data() { return { activeName: 1, //鏂囦欢绫诲瀷 // 閮ㄩ棬鏍戦�夐」 - //绁ㄦ嵁鏂囦欢 pdftitle: "", pdfimg: "", @@ -298,8 +350,6 @@ donorchargeorgans: [], // 寮瑰嚭灞傛爣棰� title: "", - // 鏄惁鏄剧ず寮瑰嚭灞� - open: false, // 鏌ヨ璐圭敤琛ㄥ弬鏁� queryParams: { pageNum: 1, @@ -308,19 +358,20 @@ name: null, donationcategory: null, donateorgan: null, - chargeamounted: null, + chargeamounted: null }, // 鏌ヨ璐圭敤鍣ㄥ畼琛ㄥ弬鏁� organParams: { pageNum: 1, pageSize: 10, - donorchargeid: null, + donorchargeid: null }, - // 褰撳墠鐢ㄦ埛淇℃伅 userprofile: {}, // 琛ㄥ崟鍙傛暟 form: {}, + // 鍒楄〃鍙傛暟 + table: {}, reimbursementList: [], // 琛ㄥ崟鏍¢獙 @@ -363,7 +414,6 @@ headers: { Authorization: "Bearer " + getToken() }, - jurisdiction: false, //淇濆瓨鎸夐挳鎺у埗 @@ -381,8 +431,6 @@ this.defaultperson = response.data; this.standardlevel = response.data.standardlevel; }); - - //鑾峰彇鍙傛暟 this.getroute(); }, @@ -396,7 +444,7 @@ this.$refs["table"].doLayout(); }); }, - + destroyed() { window.removeEventListener("beforeunload", e => this.beforeunloadFn(e)); }, //鐢熷懡鍛ㄦ湡 - 閿�姣佸畬鎴� @@ -407,7 +455,7 @@ if ( (JSON.stringify(this.form) == sessionStorage.getItem("apiform") && JSON.stringify(this.donorchargeorgans) == - sessionStorage.getItem("apifunddetail")) || + sessionStorage.getItem("apifunddetail")) || !sessionStorage.getItem("apifunddetail") ) { } else { @@ -420,7 +468,7 @@ } }, - handleUploadError() { }, + handleUploadError() {}, // 鑾峰彇璇锋眰澶� Getnetworkheader() { let string = window.location.href; @@ -440,196 +488,9 @@ this.pdftitle = "鍏�" + this.invoicepdfimgsrcList.length + "椤�"; } }, - remove(file, fileList) { - const donorchargeorgans = [...this.donorchargeorgans]; - if (this.activeName == 1) { - this.fileListto.splice(this.fileListto.indexOf(file), 1); - donorchargeorgans[this.atpresent].annexfilesList = this.fileListto; - } else { - this.invoicefileListto.splice(this.invoicefileListto.indexOf(file), 1); - donorchargeorgans[this.atpresent].invoicefilesList = this.invoicefileListto; - } - }, - handleExceed() { - this.$message.error(`涓婁紶鏂囦欢鏁伴噺涓嶈兘瓒呰繃 ${5} 涓�!`); - }, - - //鏂囦欢涓婁紶鎴愬姛鍥炶皟 - uploadSccess(response, file, fileList) { - this.donorchargeorgans; - //鑾峰彇绁ㄦ嵁淇℃伅浣嶇疆 - if (this.activeName == 1) { - if (response.code == 200) { - // this.form.filename = file.raw.name; - this.previewpdf = true; - this.$modal.msgSuccess(response.msg); - this.fileListto.push({ - name: file.name, - url: response.fileName - }); - this.pdfimgsrcList.push( - this.Networkheader + "/prod-api" + response.fileName - ); - - this.pdftitle = "鍏�" + this.pdfimgsrcList.length + "椤�"; - this.pdfimg = this.Networkheader + "/prod-api" + response.fileName; - this.donorchargeorgans[this.atpresent].annexfilesList = this.fileListto; - } else { - console.log(response.msg); - } - } else { - if (response.code == 200) { - // this.form.filename = file.raw.name; - this.previewpdf = true; - this.$modal.msgSuccess(response.msg); - this.invoicefileListto.push({ - name: file.name, - url: response.fileName - }); - this.invoicepdfimgsrcList.push( - this.Networkheader + "/prod-api" + response.fileName - ); - - this.pdftitle = "鍏�" + this.invoicepdfimgsrcList.length + "椤�"; - this.pdfimg = this.Networkheader + "/prod-api" + response.fileName; - this.donorchargeorgans[ - this.atpresent - ].invoicefilesList = this.invoicefileListto; - } else { - console.log(response.msg); - } - } - }, - // 鐐瑰嚮绁ㄦ嵁 - Filepopup(index, rows, row) { - this.tableDatatop = []; - this.pdfimgsrcList = []; - this.invoDatatop = []; - this.invoicepdfimgsrcList = []; - this.invoDatatop.push(row); - this.tableDatatop.push(row); - this.atpresent = index; - this.pdfVisible = true; - - - if (this.donorchargeorgans[index].annexfilesList) { - this.previewpdf = true; - this.fileListto = this.donorchargeorgans[index].annexfilesList; - this.pdfimg = this.Networkheader + "/prod-api" + this.fileListto[0].url; - this.fileListto.forEach(item => { - this.pdfimgsrcList.push(this.Networkheader + "/prod-api" + item.url); - }); - } else { - this.fileListto = []; - this.pdfimg = ""; - this.pdftitle = ""; - } - // -鍙戠エ鏂囦欢 - if (this.donorchargeorgans[index].invoicefilesList) { - this.previewpdf = true; - this.invoicefileListto = this.donorchargeorgans[index].invoicefilesList; - this.invoicepdfimg = - this.Networkheader + "/prod-api" + this.invoicefileListto[0].url; - this.invoicefileListto.forEach(item => { - this.invoicepdfimgsrcList.push( - this.Networkheader + "/prod-api" + item.url - ); - }); - - } else { - this.invoicefileListto = []; - this.invoicepdfimg = ""; - this.pdftitle = ""; - } - - if (this.activeName == 1) { - this.pdftitle = "鍏�" + this.pdfimgsrcList.length + "椤�"; - } else { - this.pdftitle = "鍏�" + this.invoicepdfimgsrcList.length + "椤�"; - } - }, - - // 鐐瑰嚮宸蹭笂浼犳枃浠� - downFile(item) { - if (this.activeName == 1) { - 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") { - this.previewpdf = true; - if (item.url) { - this.pdfimg = this.Networkheader + "/prod-api" + item.url; - } else { - this.pdfimg = this.Networkheader + "/prod-api" + item.response.url; - } - } else { - this.hintitle = "褰撳墠鏂囦欢鏆備笉鏀寔棰勮"; - this.$modal.msgWarning("褰撳墠鏂囦欢鏆備笉鏀寔棰勮"); - this.previewpdf = false; - } - } else { - console.log(item, "鐐瑰嚮鏂囦欢鎷縤tem"); - this.pdftitle = - "鍏�" + this.invoicepdfimgsrcList.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") { - this.previewpdf = true; - if (item.url) { - this.invoicepdfimg = this.Networkheader + "/prod-api" + item.url; - } else { - this.invoicepdfimg = - this.Networkheader + "/prod-api" + item.response.url; - } - } else { - this.hintitle = "褰撳墠鏂囦欢鏆備笉鏀寔棰勮"; - this.$modal.msgWarning("褰撳墠鏂囦欢鏆備笉鏀寔棰勮"); - this.previewpdf = false; - } - } - }, getIndexInArray(arr, obj) { return arr.indexOf(obj); - }, - // 鐐瑰嚮鍒犻櫎 - deletedowfile(row) { - if (this.activeName == 1) { - const indexlist = this.getIndexInArray( - this.pdfimgsrcList, - this.Networkheader + "/prod-api" + row.url - ); - this.pdfimgsrcList.splice(indexlist, 1); - const index = this.getIndexInArray(this.fileListto, row); - this.fileListto.splice(index, 1); - } else { - const indexlist = this.getIndexInArray( - this.invoicepdfimgsrcList, - this.Networkheader + "/prod-api" + row.url - ); - this.invoicepdfimgsrcList.splice(indexlist, 1); - const index = this.getIndexInArray(this.invoicefileListto, row); - this.invoicefileListto.splice(index, 1); - } - }, - // 鐐瑰嚮涓婄Щ - moveupdowfile(row) { - if (this.activeName == 1) { - const index = this.getIndexInArray(this.fileListto, row); - const item = this.fileListto.splice(index, 1)[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓� - this.fileListto.splice(index - 1, 0, item); // 灏唅tem鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣� - } else { - const index = this.getIndexInArray(this.invoicefileListto, row); - const item = this.invoicefileListto.splice(index, 1)[0]; // 绉婚櫎鎸囧畾绱㈠紩澶勭殑鍏冪礌锛屽苟淇濆瓨鍒癷tem鍙橀噺涓� - this.invoicefileListto.splice(index - 1, 0, item); // 灏唅tem鎻掑叆鍒扮储寮曚綅缃殑鍓嶄竴浣� - } }, // 琛ㄥ崟閲嶇疆 @@ -663,22 +524,20 @@ this.operationType = this.$route.query.operation; this.curId = this.$route.query.id; this.curCase = this.$route.query.data; - console.log("this.$route.query",this.$route.query); + console.log("this.$route.query", this.$route.query); if (this.operationType == "add") { this.title = "鏂板缓妗堜緥鍣ㄥ畼璐圭敤琛�"; this.handleAdd(); - console.log("1") - + console.log("1"); } else if (this.operationType == "update") { this.title = "淇敼妗堜緥鍣ㄥ畼璐圭敤琛�"; this.handleUpdate(); - console.log("2") - + console.log("2"); } else if (this.operationType == "detail") { this.title = "鏌ョ湅妗堜緥鍣ㄥ畼璐圭敤琛�"; this.handleDetail(); - console.log("3") + console.log("3"); } }, @@ -696,15 +555,14 @@ // 澶氶�夋閫変腑鏁版嵁 handleSelectionChange(selection) { - this.ids = selection.map(item => item.id) - this.single = selection.length !== 1 - this.multiple = !selection.length + this.ids = selection.map(item => item.id); + this.single = selection.length !== 1; + this.multiple = !selection.length; }, /** 鏂板鎸夐挳鎿嶄綔 */ handleAdd() { this.reset(); - this.open = true; this.title = "鏂板鎹愮尞妗堜緥鍣ㄥ畼璐圭敤琛�"; if (this.curCase) { @@ -718,8 +576,10 @@ this.form.donationcategory = this.curCase.donationcategory; //鑾峰彇瀹屾垚鐧昏鐨勫櫒瀹樿〃 - if (this.curCase.id > 0) { } - else { this.curCase.id = 0 } + if (this.curCase.id > 0) { + } else { + this.curCase.id = 0; + } let searchParam = { infoid: this.curCase.id }; @@ -735,7 +595,6 @@ if (res1.code == 200) { this.organchargelist = res1.rows; } - //鎻掑叆鍣ㄥ畼琛� res.rows.forEach(item => { //鑾峰彇璐圭敤閲戦 @@ -743,13 +602,14 @@ 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.transplanthospitalname, - hospitalno: item.transplanthospitalno, + hospitalname: item.hospitalname, + hospitalno: item.hospitalno, organtime: item.transplanttime, - chargestate: '0' + chargestate: "0" }); } }); @@ -763,17 +623,18 @@ /** 淇敼鎸夐挳鎿嶄綔 */ handleUpdate() { this.reset(); - this.open = true; + this.title = "淇敼鎹愮尞妗堜緥鍣ㄥ畼璐圭敤琛�"; getDonorcharge(this.curId).then(response => { this.form = response.data; - this.open = true; - this.title = "淇敼鎹愮尞妗堜緥鍣ㄥ畼璐圭敤琛�"; - + console.log("getDonorcharge", response); //鍣ㄥ畼璐圭敤淇℃伅 this.organParams.donorchargeid = this.curId; + console.log("this.organParams", this.organParams); listDonorchargeorgan(this.organParams).then(res => { + console.log("listDonorchargeorgan", res); this.donorchargeorgans = res.rows; + console.log(this.donorchargeorgans, "donorchargeorgans"); if (this.donorchargeorgans.length > 0) { } else { this.addRow(0); @@ -785,11 +646,9 @@ /** 淇敼鏌ョ湅鎿嶄綔 */ handleDetail() { this.reset(); - this.open = true; getDonorcharge(this.curId).then(response => { this.form = response.data; - this.open = true; this.title = "鏌ョ湅鎹愮尞妗堜緥鍣ㄥ畼璐圭敤琛�"; //鍣ㄥ畼璐圭敤淇℃伅 @@ -805,23 +664,64 @@ }, /** 鎻愪氦淇濆瓨鎸夐挳 */ - submitForm: debounce(function (data) { + submitForm: debounce(function(data) { this.$refs["form"].validate(valid => { if (valid) { - if (this.form.id != null) { - updateDonorcharge(this.form).then(response => { - if (response.code == 200) { - this.$modal.msgSuccess("淇濆瓨鎴愬姛锛�"); + //鏍¢獙銆佽垂鐢ㄥ悎璁� + let ChargeSum = 0; + let ChargeamountSum = 0; + let organname = ""; + + try { + for (let i = 0; i < this.donorchargeorgans.length; i++) { + organname += this.donorchargeorgans[i].organname + ","; + if (!isNaN(parseFloat(this.donorchargeorgans[i].organcharge))) { + ChargeSum += parseFloat(this.donorchargeorgans[i].organcharge); } - this.open = false; + if (!isNaN(parseFloat(this.donorchargeorgans[i].amount))) { + ChargeamountSum += parseFloat(this.donorchargeorgans[i].amount); + } + } + this.form.donateorgan = organname.substring( + 0, + organname.lastIndexOf(",") + ); + this.form.chargeamount = ChargeSum.toFixed(2); + this.form.chargeamounted = ChargeamountSum.toFixed(2); + } catch {} + + //淇濆瓨 + if (this.form.id != null) { + 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.$router.go(-1); + + } + }); + } }); } else { addDonorcharge(this.form).then(response => { if (response.code == 200) { - console.log(response); - this.$modal.msgSuccess("淇濆瓨鎴愬姛锛�"); + console.log("addDonorcharge", response); + //淇濆瓨鍓嶆牎楠屾暟鎹� + for (let k = 0; k < this.donorchargeorgans.length; k++) { + this.donorchargeorgans[k].donorchargeid = response.data.id; + } + saveDonorchargeorgan(this.donorchargeorgans).then(res2 => { + if (res2.code == 200) { + this.$modal.msgSuccess("淇濆瓨鎴愬姛锛�"); + this.$router.go(-1); + + } + }); } - this.open = false; }); } } @@ -829,59 +729,41 @@ }, 500), //璁$畻璐圭敤鍚堣 - sumTotalFee() { - let allSum = 0; + chargeSum() { + let ChargeSum = 0; + let ChargeamountSum = 0; - //鎹愮尞鑰呭灞炶垂鐢� - if (!isNaN(parseFloat(this.form.donoramount))) { - allSum += parseFloat(this.form.donoramount); - } - - //鎶ラ攢鏄庣粏璐圭敤 + //璐圭敤鍚堣 try { for (let i = 0; i < this.donorchargeorgans.length; i++) { - /* - let totalFee = 0; - //璁$畻褰撳墠鎶ラ攢鍐呭璐圭敤鍚堣 - if (!isNaN(parseFloat(this.donorchargeorgans[i].total))) { - totalFee += parseFloat(this.donorchargeorgans[i].total); + if (!isNaN(parseFloat(this.donorchargeorgans[i].organcharge))) { + ChargeSum += parseFloat(this.donorchargeorgans[i].organcharge); } - if (!isNaN(parseFloat(this.donorchargeorgans[i].cityfee))) { - totalFee += parseFloat(this.donorchargeorgans[i].cityfee); - } - if (!isNaN(parseFloat(this.donorchargeorgans[i].hotelexpense))) { - totalFee += parseFloat(this.donorchargeorgans[i].hotelexpense); - } - if (!isNaN(parseFloat(this.donorchargeorgans[i].otherexpense))) { - totalFee += parseFloat(this.donorchargeorgans[i].otherexpense); - } - if (!isNaN(parseFloat(this.donorchargeorgans[i].foodexpenses))) { - totalFee += parseFloat(this.donorchargeorgans[i].foodexpenses); - } - if (!isNaN(parseFloat(this.donorchargeorgans[i].foodallowance))) { - totalFee += parseFloat(this.donorchargeorgans[i].foodallowance); - } - if (!isNaN(parseFloat(this.donorchargeorgans[i].otherfeeamount))) { - totalFee += parseFloat(this.donorchargeorgans[i].otherfeeamount); - } - this.donorchargeorgans[i].total = parseFloat(totalFee).toFixed(2); - this.$set(this.donorchargeorgans, i, this.donorchargeorgans[i]); - */ - - if (!isNaN(parseFloat(this.donorchargeorgans[i].total))) { - allSum += parseFloat(this.donorchargeorgans[i].total); + if (!isNaN(parseFloat(this.donorchargeorgans[i].amount))) { + ChargeamountSum += parseFloat(this.donorchargeorgans[i].amount); } } - this.form.amountrequested = allSum.toFixed(2); - } catch { } + this.form.chargeamount = ChargeSum.toFixed(2); + this.form.chargeamounted = ChargeamountSum.toFixed(2); + } catch {} }, //琛ㄦ牸鍚堣 getSummaries(param) { const { columns, data } = param; const sums = []; - var columnnames = ["organno", "organname", "amount", "amounttime", "organcharge", "hospitalname", "organtime", "remark"]; + var columnnames = [ + "organno", + "organname", + "caseno", + "amounttime", + "name", + "hospitalname", + "organtime", + "remark", + 'organchargedesc' + ]; columns.forEach((column, index) => { if (index === 0) { sums[index] = "鍚堣"; @@ -890,7 +772,7 @@ // if (index === 2) { // sums[index] = this.form.chargeamounted; // return; - // } + // } // if (index === 4) { // sums[index] = this.form.chargeamount; // return; @@ -989,6 +871,12 @@ text-align: center; } } +::v-deep .el-input.is-disabled .el-input__inner { + background-color: #F5F7FA; + border-color: #dfe4ed; + color: #000000; + cursor: not-allowed; +} ::v-deep .el-input--medium .el-input__inner { height: 36px; -- Gitblit v1.9.3