From ceb611ede1ca3988d731adffee433a1a7bcd442b Mon Sep 17 00:00:00 2001 From: qinxianzhangyao <11053546+qinxianzhangyao@user.noreply.gitee.com> Date: 星期四, 19 十月 2023 17:38:18 +0800 Subject: [PATCH] tjxgstf --- src/views/system/examcharge/index.vue | 204 ++++++++++++++++++++++++++++++++++---------------- 1 files changed, 137 insertions(+), 67 deletions(-) diff --git a/src/views/system/examcharge/index.vue b/src/views/system/examcharge/index.vue index 587de32..65316f4 100644 --- a/src/views/system/examcharge/index.vue +++ b/src/views/system/examcharge/index.vue @@ -90,21 +90,22 @@ <el-form-item label="鑱旂郴鐢佃瘽" prop="phone"> <el-input v-model="form.phone" placeholder="璇疯緭鍏ヨ仈绯荤數璇�" /> </el-form-item> - <el-form-item label="浣撴椤圭洰" prop="tjPro"> - <el-input ref="inputName" v-model="form.tjPro" placeholder="璇疯緭鍏ヤ綋妫�椤圭洰" /> + <!-- @focus="hadeltjpro" --> + <el-form-item label="浣撴椤圭洰" prop="tjProName"> + <el-input ref="inputName" v-model="form.tjProName" placeholder="璇疯緭鍏ヤ綋妫�椤圭洰" /> </el-form-item> <el-form-item label="鏁伴噺" prop="number"> <el-input ref="inputName" v-model="form.number" placeholder="璇疯緭鍏ユ暟閲�" /> </el-form-item> <el-form-item label="搴旀敹閲戦" prop="ys"> - <el-input v-model="form.ys" placeholder="閲戦" :disabled="true"></el-input> + <el-input v-model="form.ys" placeholder="閲戦"></el-input> </el-form-item> - <el-form-item label="浼樻儬鎶樻墸" prop="zk"> + <el-form-item label="浼樻儬" prop="zk"> <el-input-number v-model="form.zk" :precision="2" :step="0.1" :max="10" :min="1" - @change="numberChange" :disabled="isfalse"></el-input-number> + disabled></el-input-number> </el-form-item> <el-form-item label="瀹炴敹閲戦" prop="ss"> - <el-input v-model="form.ss" placeholder="瀹炰粯"> + <el-input v-model="form.ss" placeholder="瀹炰粯" @input="numberChange"> </el-input> </el-form-item> <el-form-item label="浠樻绫诲瀷" prop="type"> @@ -125,8 +126,7 @@ <el-col :span="17" :xs="24" style="padding: 0 10px;"> <el-row :gutter="10" class="mb8"> <el-col :span="1.5"> - <el-form :inline="true" ref="form" :model="queryParams" class="demo-form-inline" label-width="80px" - :rules="rules"> + <el-form :inline="true" ref="form" :model="queryParams" class="demo-form-inline" label-width="80px"> <el-form-item label="濮撳悕" prop="name"> <el-input v-model="queryParams.name" placeholder="璇疯緭鍏ュ鍚�" /> </el-form-item> @@ -136,14 +136,13 @@ </el-form> </el-col> <el-col :span="1.5"> - <el-button type="primary" icon="el-icon-search" size="mini" @click="handleUpdate" - v-hasPermi="['hosp:org:edit']">鏌ヨ</el-button> + <el-button type="primary" icon="el-icon-search" size="mini" @click="handleUpdate">鏌ヨ</el-button> </el-col> </el-row> <div style="margin-bottom: 10px;"> <el-radio-group v-model="queryParams.type" @input="handleUpdate" style="margin-left: 30px"> <el-radio-button label="1">鏀惰垂璁板綍</el-radio-button> - <el-radio-button label="2">閫�璐硅褰�</el-radio-button> + <!-- <el-radio-button label="2">閫�璐硅褰�</el-radio-button> --> </el-radio-group> </div> @@ -155,31 +154,45 @@ <el-table-column label="鎵嬫満鍙�" align="center" prop="customer.cusPhone" width="110px" :show-overflow-tooltip="true"></el-table-column> <el-table-column label="璁㈠崟娴佹按鍙�" align="center" prop="waterId" width="180px" /> - <el-table-column label="浣撴椤圭洰" align="center" prop="proname" width="90px"/> + <el-table-column label="浣撴椤圭洰" align="center" prop="tjProName" width="120px" /> <el-table-column label="搴旀敹閲戦" align="center" prop="copeWith" width="90px" /> - <el-table-column label="瀹炴敹閲戦" align="center" prop="paidIn" width="90px" /> - <el-table-column label="浠樻绫诲瀷" align="center" prop="payType" width="90px"> + <el-table-column label="瀹炴敹閲戦" align="center" prop="paidIn" width="80px" /> + <el-table-column label="浠樻绫诲瀷" align="center" prop="payType" width="80px"> <template slot-scope="scope"> <dict-tag :options="dict.type.dict_pay_type" :value="scope.row.payType" /> </template> </el-table-column> <el-table-column label="鏀惰垂鍛�" align="center" prop="updateBy" width="100px" /> <el-table-column label="鏀堕��鏃堕棿" align="center" prop="updateTime" /> - <el-table-column fixed="right" label="鎿嶄綔" align="center" class-name="small-padding " width="120px" + <el-table-column fixed="right" label="鎿嶄綔" align="center" class-name="small-padding " width="100px" v-if="queryParams.type == '1'"> <template slot-scope="scope"> - <el-button size="mini" type="text" @click="handlerefund(scope.row)" - v-hasPermi="['system:dept:edit']" v-if="scope.row.remarks != '宸查��璐�'">閫�璐�</el-button> - <el-button size="mini" type="text" v-hasPermi="['system:dept:edit']" - v-if="scope.row.remarks == '宸查��璐�'">{{ scope.row.remarks }}</el-button> - <el-button size="mini" type="text" v-hasPermi="['system:dept:edit']" - v-if="scope.row.remarks != '宸查��璐�'" @click="receipt(scope.row)">琛ユ墦灏忕エ</el-button> + <!-- <el-button size="mini" type="text" @click="handlerefund(scope.row)" + v-if="scope.row.remarks != '宸查��璐�'">閫�璐�</el-button> --> + <el-button size="mini" type="text" v-if="scope.row.remarks == '宸查��璐�'">{{ scope.row.remarks + }}</el-button> + <el-button size="mini" type="text" v-if="scope.row.remarks != '宸查��璐�'" + @click="receipt(scope.row)">琛ユ墦</el-button> </template> </el-table-column> </el-table> </el-col> </el-row> + <!-- 娣诲姞琛ュ綍椤圭洰 --> + <el-dialog :title="title" :visible.sync="Projectopen1" width="980px" style="height: 860px" append-to-body> + <el-row type="flex" class="row-bg" justify="space-around"> + <el-col :span="6"> + <div class="tab3"> + <div class="outside1"> + <el-tree ref="tree" :data="Treedata" show-checkbox node-key="proId" check-strictly + :props="defaultProps" @check-change="handleCurrentChecked"> + </el-tree> + </div> + </div> + </el-col> + </el-row> + </el-dialog> <div style=" position: absolute; bottom: 100px; @@ -221,6 +234,7 @@ <script> import { getTjPrice, addOrderAndDetail, tjRefund, getFlowingWaterList, getPrintSetUp } from "@/api/system/examcharge"; import { getInfo } from "@/api/login"; +import { projectGetList } from "@/api/system/tijian"; import printJS from "print-js"; export default { dicts: ["dict_pay_type"], @@ -228,19 +242,36 @@ data() { return { - tjNumbers:"", + tjNumbers: "", // 閬僵灞� loading: false, + Projectopen1: false, + // 寮瑰嚭灞傛爣棰� + title: "", disabled: "", iconData: "el-icon-arrow-down", DataList: [], tableList: [], list: [], + Treedata: [], + defaultProps: { + children: "tjProjectList", + label: "proName", + disabled: function (data, node) { + if (data.tjProjectList && data.tjProjectList.length > 0) { + + return false + } + else { + return true + } + } + + }, // 閫変腑鏁扮粍 ids: [], getInfodis: "", waterId: "", - isfalse: false, toggleSearchStatus: "0", queryParams: { name: "", @@ -249,7 +280,7 @@ }, formIn: { name: "", - tjPro: "浣撴璐�", + tjPro: "", phone: "", number: 1, ys: "0", @@ -264,11 +295,12 @@ // 琛ㄥ崟鍙傛暟 form: { name: "", - tjPro: "浣撴璐�", + tjPro: "", + tjProName: "浣撴璐�", phone: "", number: 1, - ys: "0", - ss: "0", + ys: 0, + ss: 0, type: "0", zk: 10, @@ -374,11 +406,12 @@ resetQuery() { this.form = { name: null, - tjPro: "浣撴璐�", + tjPro: null, phone: null, + tjProName: "浣撴璐�", number: 1, - ys: "0", - ss: "0", + ys: 0.00, + ss: 0.00, type: "0", zk: 10, }; @@ -392,48 +425,85 @@ handleUpdate() { getFlowingWaterList(this.queryParams).then(res => { this.tableList = res.data - this.tableList.forEach(element => { - element.proname = "浣撴璐�" - }); + }) + }, + hadeltjpro() { + + /** 鏌ヨ閮ㄩ棬涓嬫媺鏍戠粨鏋� */ + projectGetList().then((response) => { + this.Treedata = response.data.list; + + }); + this.Projectopen1 = true; + this.title = "椤圭洰鍒楄〃"; + }, + // 鐐瑰嚮鑾峰彇姣忎釜鏍戣妭鐐� + handleCurrentChecked(data, checked, checkedNodes) { + console.log(data, checked) + // this.form.tjPro = "", + // this.form.ys = 0 + if (checked) { + // this.menuOptions.id = data.id + this.$refs.tree.setCheckedKeys([data.proId], true) + } else { + // this.menuOptions.id = null + } + if (checked == true) { + this.form.tjPro = data.proId + this.form.tjProName = data.proName + const r = /^\+?[0-9][0-9]*$/; //姝f暣鏁帮紙鍙互0鎵撳ご锛� + if (r.test(data.proPrice)) { + this.form.ys = data.proPrice + ".00"; + } else { + this.form.ys = data.proPrice + } + } + + this.Projectopen1 = false; }, // 鎶樻墸 - numberChange(currentValue, oldValue) { - this.form.zk = currentValue; - this.form.ss = ( - this.form.ys * - (this.form.zk / 10) - ).toFixed(2); - const r = /^\+?[0-9][0-9]*$/; //姝f暣鏁帮紙鍙互浠ユ墦澶达級 - //const r=/^\+?[1-9][0-9]*$/;//姝f暣鏁� - if (r.test(this.form.ss)) { - this.form.ss = this.form.ss + ".00"; - } + numberChange() { + let price = (this.form.ss / this.form.ys) * 10 + this.form.zk = price.toFixed(2) }, receipt(row) { - this.formIn = { - name: row.customer.cusName, - tjPro: "浣撴璐�", - phone: row.customer.cusPhone, - ys: row.copeWith, - ss: row.paidIn, - zk: row.discount, - } - this.$nextTick(() => { - const style = - "@media print { @page{margin:0 10mm,size:4mm 6mm;}};"; //鎵撳嵃鏃跺幓鎺夌湁椤电湁灏� - printJS({ - printable: "printBill", // 鏍囩鍏冪礌id - noPrint: ".noPrint", - type: 'html', - header: "", - targetStyles: ["*"], - maxWidth: "800", - scanStyles: true, //鎵撳嵃蹇呴』鍔犱笂锛屼笉鐒堕〉闈笂鐨刢ss鏍峰紡鏃犳晥 - style, - }); - }); + getPrintSetUp().then(res => { + if (res.msg == "0") { + this.formIn = { + name: row.customer.cusName, + tjPro: row.tjProName, + phone: row.customer.cusPhone, + ys: row.copeWith, + ss: row.paidIn, + zk: row.discount, + } + this.$nextTick(() => { + const style = + "@media print { @page{margin:0 10mm,size:4mm 6mm;}};"; //鎵撳嵃鏃跺幓鎺夌湁椤电湁灏� + printJS({ + printable: "printBill", // 鏍囩鍏冪礌id + noPrint: ".noPrint", + type: 'html', + header: "", + targetStyles: ["*"], + maxWidth: "800", + scanStyles: true, //鎵撳嵃蹇呴』鍔犱笂锛屼笉鐒堕〉闈笂鐨刢ss鏍峰紡鏃犳晥 + style, + }); + }); + } else { + const tjnumber = row.tjNumber; + const viewNum = "809623418249637888"; + const params = { viewNum, tjnumber }; + this.$tab.openPage("涓汉鍙戠エ", "/report/charge", params); + } + this.resetQuery() + this.handleUpdate() + this.getList() + }) + }, // 鏀惰垂 @@ -475,7 +545,7 @@ } }) } else { - this.$modal.msgError("璇峰~鍐欏甫鏄熷彿淇℃伅"); + this.$modal.msgError("璇峰~鍐欏鍚�"); } }, -- Gitblit v1.8.0