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