From 875d196974438d546e4ca79ba0067a799c5f3a8b Mon Sep 17 00:00:00 2001 From: qinxianzhangyao <11053546+qinxianzhangyao@user.noreply.gitee.com> Date: 星期三, 26 六月 2024 14:20:21 +0800 Subject: [PATCH] qxtj --- src/views/system/tijianall/index.vue | 279 +++++++++++++++++++++++++++++++++++++++---------------- 1 files changed, 196 insertions(+), 83 deletions(-) diff --git a/src/views/system/tijianall/index.vue b/src/views/system/tijianall/index.vue index 40989a3..55e6f44 100644 --- a/src/views/system/tijianall/index.vue +++ b/src/views/system/tijianall/index.vue @@ -9,7 +9,7 @@ ref="form" :model="form" :rules="rules" - label-width="84px" + label-width="106px" > <el-form-item label="濮撳悕" @@ -28,7 +28,7 @@ }, ]" > - <el-input v-model="form.cusName" placeholder="璇疯緭鍏ュ鍚�" /> + <el-input v-model="form.cusName" placeholder="璇疯緭鍏ュ鍚�" style="width: 99%;"/> </el-form-item> <el-form-item label="鎬у埆" prop="cusSex"> <el-select @@ -46,7 +46,7 @@ </el-select> </el-form-item> <el-form-item label="璇佷欢绫诲瀷" prop="idType"> - <el-select v-model="form.idType" placeholder="璇烽�夋嫨璇佷欢绫诲瀷"> + <el-select v-model="form.idType" placeholder="璇烽�夋嫨璇佷欢绫诲瀷" style="width: 93%;"> <el-option v-for="dict in dict.type.dict_user_cardtype" :key="dict.value" @@ -62,24 +62,29 @@ ref="form" :model="form" :rules="rules" - label-width="84px" + label-width="106px" > - <el-form-item label="姘戞棌" prop="cusNational"> - <el-select - filterable - v-model="form.cusNational" - placeholder="璇烽�夋嫨姘戞棌" - style="width: 96%" - > - <el-option - v-for="dict in dict.type.dict_user_national" - :key="dict.value" - :label="dict.label" - :value="dict.value" - ></el-option> - </el-select> + <el-form-item + label="鐢佃瘽" + prop="cusPhone" + :rules="[ + { + required: true, + validator: (rule, value, callback) => { + if (!form.cusPhone) { + callback(''); + } else if (form.cusPhone) { + callback(); + } + }, + trigger: 'blur', + }, + ]" + > + <el-input v-model="form.cusPhone" placeholder="璇疯緭鍏ョ數璇�" /> </el-form-item> - <el-form-item label="濠氬Щ" prop="cusMarryStatus"> + + <el-form-item label="濠氬Щ" prop="cusMarryStatus" > <el-select v-model="form.cusMarryStatus" placeholder="璇烽�夋嫨濠氬Щ鐘跺喌" @@ -135,38 +140,35 @@ ref="form" :model="form" :rules="rules" - label-width="84px" + label-width="106px" > - - <el-form-item - label="鐢佃瘽" - prop="cusPhone" - :rules="[ - { - required: true, - validator: (rule, value, callback) => { - if (!form.cusPhone) { - callback(''); - } else if (form.cusPhone) { - callback(); - } - }, - trigger: 'blur', - }, - ]" - > - <el-input v-model="form.cusPhone" placeholder="璇疯緭鍏ョ數璇�" /> - </el-form-item> - - <el-form-item label="閭" prop="cusEmail"> + <el-form-item label="閭" prop="cusEmail"> <el-input v-model="form.cusEmail" placeholder="璇疯緭鍏ラ偖绠�" /> </el-form-item> + <el-form-item label="姘戞棌" prop="cusNational"> + <el-select + filterable + v-model="form.cusNational" + placeholder="璇烽�夋嫨姘戞棌" + style="width: 93%;" + > + <el-option + v-for="dict in dict.type.dict_user_national" + :key="dict.value" + :label="dict.label" + :value="dict.value" + ></el-option> + </el-select> + </el-form-item> + + + <el-form-item label="骞撮緞" prop="age"> <el-input v-model="form.age" :disabled="isDisabled" - style="width: 30%" + style="width: 28%" /> <el-select :disabled="isDisabled" @@ -188,7 +190,7 @@ ref="form" :model="form" :rules="rules" - label-width="84px" + label-width="106px" > <el-form-item label="鍗″彿" prop="indexCard"> <el-input v-model="form.indexCard" placeholder="璇疯緭鍏ュ崱鍙�" /> @@ -213,8 +215,7 @@ <el-form-item label="浣撴绫诲瀷" prop="tjType"> <el-select v-model="form.tjType" - placeholder="璇烽�夋嫨浣撴绫诲瀷" - style="width: 94%" + placeholder="璇烽�夋嫨浣撴绫诲瀷" style="width: 94%;" > <el-option v-for="dict in dict.type.dict_team" @@ -231,17 +232,13 @@ ref="form" :model="form" :rules="rules" - label-width="84px" + label-width="106px" > <el-form-item label="鍗曚綅" prop="company"> <el-input v-model="form.company" placeholder="璇疯緭鍏ュ伐浣滃崟浣�" /> </el-form-item> - - <el-form-item label="閮ㄩ棬" prop="department"> - <el-input v-model="form.department" placeholder="璇疯緭鍏ラ儴闂�" /> - </el-form-item> <el-form-item label="浣撴绫诲埆" prop="category"> - <el-select v-model="form.category" placeholder="璇烽�夋嫨浣撴绫诲埆"> + <el-select v-model="form.category" placeholder="璇烽�夋嫨浣撴绫诲埆" style="width: 95%;"> <el-option v-for="dict in dict.type.dict_tjtype" :key="dict.value" @@ -251,6 +248,10 @@ </el-select> <!-- <el-input v-model="form.category" placeholder="璇疯緭鍏ヤ綋妫�绫诲埆" /> --> </el-form-item> + <el-form-item label="閮ㄩ棬" prop="department"> + <el-input v-model="form.department" placeholder="璇疯緭鍏ラ儴闂�" /> + </el-form-item> + </el-form> <el-form style="margin: 4px 8px" @@ -258,27 +259,15 @@ ref="form" :model="form" :rules="rules" - label-width="84px" + label-width="106px" > <el-form-item label="鐜颁綇鍦板潃" prop="cusAddr"> <el-input v-model="form.cusAddr" placeholder="璇疯緭鍏ョ幇灞呬綇鍦板潃" /> </el-form-item> - <el-form-item label="棰勭害鏃ユ湡" prop="reservationTime"> - <el-date-picker - v-model="form.reservationTime" - type="date" - value-format="yyyy-MM-dd" - placeholder="閫夋嫨鏃ユ湡" - :picker-options="setDisabled" - style="width: 94%" - > - </el-date-picker> - </el-form-item> - <el-form-item label="棰勭害鏃堕棿" prop="timeRegion"> + <el-form-item label="棰勭害鏃堕棿" prop="timeRegion" > <el-select v-model="form.timeRegion" - placeholder="璇烽�夋嫨棰勭害鏃堕棿" - style="width: 94%" + placeholder="璇烽�夋嫨棰勭害鏃堕棿" style="width: 95%;" > <el-option v-for="dict in dict.type.tj_time_region" @@ -288,6 +277,18 @@ ></el-option> </el-select> </el-form-item> + <el-form-item label="棰勭害鏃ユ湡" prop="reservationTime"> + <el-date-picker + v-model="form.reservationTime" + type="date" + value-format="yyyy-MM-dd" + placeholder="閫夋嫨鏃ユ湡" + :picker-options="setDisabled" + style="width: 88%" + > + </el-date-picker> + </el-form-item> + </el-form> </div> </el-col> @@ -296,15 +297,16 @@ <el-dialog title="閫夋嫨濂楅" :visible.sync="taocan" - width="59%" + width="80%" height="700px" > <el-tabs type="border-card" style="height: 538px; margin: 0 10px; width: 100%" @tab-click="handleClick" + v-model="activeNames" > - <el-tab-pane label="濂楅"> + <el-tab-pane label="濂楅" name="first"> <el-form :model="queryParam" ref="queryForm" @@ -390,8 +392,8 @@ class="el-icon-d-arrow-right"></i></el-button> --> </div> </el-tab-pane> - <el-tab-pane label="鍗曢」"> - <div class="tab8"> + <el-tab-pane label="鍗曢」" name="second" > + <div class="tab8" > <!-- <div class="tab7"> <v-tree-transfer :treeData="treedataList" @@ -404,8 +406,8 @@ @check-change="handleCurrentChecked"> </el-tree> --> <!-- </div> --> - <el-row :gutter="20"> - <el-col :span="6"> + <el-row :gutter="20" style="width:100%"> + <el-col :span="8"> <div style=" text-align: center; @@ -429,6 +431,7 @@ :default-checked-keys="checkedkey" :filter-node-method="filterNode" ref="tree" + :render-content="renderContent" > </el-tree> </div> @@ -454,6 +457,7 @@ show-checkbox @check-change="handleCurrentChecked1" :default-checked-keys="checkedListkey" + :render-content="renderContent" > </el-tree> </div> @@ -505,6 +509,7 @@ </template> </el-table-column> </el-table> + <el-collapse v-model="activeName" accordion v-if="list1"> <div> <el-collapse-item title="璇烽�夋嫨椤圭洰"> @@ -527,6 +532,7 @@ </el-collapse-item> </div> </el-collapse> + <h3 v-else style="font-weight: 600;">鍚堣锛歿{ marryall }}鍏�</h3> </div> </el-col> </el-row> @@ -587,7 +593,7 @@ <el-form :model="form" :inline="true" - label-width="75px" + label-width="100px" style="margin-left: 10px" > <el-form-item label="搴旀敹閲戦" style="margin-right: 20px"> @@ -595,7 +601,6 @@ placeholder="搴旀敹閲戦" :value="TotalPrice1 + '.00'" disabled - style="width: 150px" ></el-input> </el-form-item> <!-- <el-form-item label="浼樻儬鎶樻墸" style="margin-right: 20px"> @@ -603,19 +608,23 @@ <el-input-number style="width: 140px" v-model="discount" :precision="2" :step="0.1" :max="10" :min="1" @change="numberChange" :disabled="isfalse"></el-input-number> </el-form-item> --> - <el-form-item label="瀹炴敹閲戦" style="margin-right: 20px"> + <el-form-item label="瀹炴敹閲戦" > <el-input placeholder="瀹炴敹閲戦" v-model="TotalPrice" disabled - style="width: 190px" ></el-input> </el-form-item> <el-form-item> <el-button type="primary" @click="Package" size="mini" >閫夋嫨濂楅</el-button > - + <el-button + type="primary" + @click="resetpackage" + size="mini" + >閲嶇疆濂楅</el-button + > <el-button type="primary" @click="submitPrice" @@ -651,8 +660,8 @@ border: 1px solid #e6ebf5; max-height: 420px; overflow: auto; - width: 1020px; - margin-left: 20px; + width: 950px; + margin-left: 25px; " > <el-collapse v-model="index" accordion> @@ -670,6 +679,12 @@ ".00鍏�)" }} </template> + <el-button + type="primary" + @click="candelete(item)" + style="margin: 5px" + >鍒� 闄�</el-button + > <el-table :data="item.list" border @@ -833,6 +848,7 @@ getaddTj, getHistryTjOrderByCusIdCard, getHistryTjOrderProByCusIdCard, + delTbBycusCardIdAndProId, } from "@/api/system/tijian"; import { MessageBox } from "element-ui"; import VTreeTransfer from "../tijian/TreeTransfer.vue"; @@ -892,6 +908,7 @@ // } // }; return { + marryall: 0, filterText: "", proIdList: [], tableDatas: [], @@ -924,6 +941,7 @@ /** 鐓х浉鏈哄脊绐楁ā鍧�-start */ videoWidth: 200, videoHeight: 200, + activeNames: 'first', // canvasWidth:300, // canvasHeight:300, imgSrc: "", @@ -1145,10 +1163,55 @@ inputChanges() { this.$refs.historyTj.getlist(); }, + candelete(item) { + let data = { + cusCardId: this.form.cusIdcard, + proId: item.proPrantId, + }; + delTbBycusCardIdAndProId(data).then((res) => { + getTransitionList(this.form.cusIdcard).then((response) => { + this.tableData1 = response.data; + this.TotalPrice1 = 0; + if (this.tableData1) { + this.tableData1.forEach((item) => { + this.TotalPrice1 += item.nowPrice; + if (item.pacName === null) { + item.pacName = "鍗曢」"; + } + if (item.pacName == "鍗曢」") { + item.list.forEach((item9) => { + this.treeList.push(item9.proId); + }); + } + this.pacName = item.pacName; + }); + const r = /^\+?[0-9][0-9]*$/; //姝f暣鏁帮紙鍙互0鎵撳ご锛� + let TotalPrice = this.TotalPrice1 * (this.discount / 10); + if (r.test(TotalPrice)) { + this.TotalPrice = TotalPrice + ".00"; + } else { + this.TotalPrice = TotalPrice; + } + + this.list1 = false; + this.list3 = true; + } else { + this.list1 = true; + + this.TotalPrice = "0.00"; + } + }); + }); + }, filterNode(value, data) { if (!value) return true; - return data.proName.indexOf(value) !== -1; + // return data.proName.indexOf(value) !== -1; + if(data.proName.indexOf(value) !== -1){ + return data.proName.indexOf(value) !== -1; + }else{ + return data.proEngName.indexOf(value) !== -1; + } }, cope() { let cusIdCard = this.form.cusIdcard; @@ -1432,10 +1495,44 @@ // return true; // } // }, + resetpackage(){ + if (this.form.cusIdcard) { + var cusId = this.form.cusIdcard; + } else { + this.$message.warning("璇峰厛濉啓淇℃伅锛屽啀閫変綋妫�鍐呭"); + } + let _this = this; + _this.pacId = ""; + this.proIds = []; + let data = { + cusId, + pacId: _this.pacId, + proIds: this.proIds, + }; + getaddtTransition(data).then((response) => { + if (response.code === 200) { + let cusId = this.form.cusIdcard; + this.proIds = []; + getTransitionList(cusId).then((response) => { + this.tableData1 = response.data; + this.TotalPrice1 = 0; + if (this.tableData1.length>=1) { + this.list1 = false; + this.list3 = true; + } else { + this.list1 = true; + + this.TotalPrice = "0.00"; + } + }); + } + }); + }, Package() { this.taocan = true; let cusSex = this.form.cusSex; + this.activeNames="first" this.datekey = Date.now(); //鍏ㄩ儴濂楅 this.loading = true; @@ -1558,6 +1655,14 @@ this.getDataList(); } }, + renderContent(h, { node, data, store }) { + return ( + <span class="custom-tree-node"> + <span>{node.label}</span> + <span>({data.proPrice}鍏�)</span> + </span> + ); + }, getDataList() { this.loading = true; getProParentIdDxList().then((response) => { @@ -1583,11 +1688,12 @@ }); }); this.TotalPrice1 = 0; - + this.marryall = 0; if (this.DataList.length != 0) { this.list1 = false; this.DataList.forEach((item) => { this.TotalPrice1 = item.proPrice + this.TotalPrice1; + this.marryall += item.proPrice; }); } }); @@ -1614,10 +1720,12 @@ }); }); this.TotalPrice1 = 0; + this.marryall = 0; if (this.DataList.length != 0) { this.list1 = false; this.DataList.forEach((item) => { this.TotalPrice1 = item.proPrice + this.TotalPrice1; + this.marryall += item.proPrice; }); } }); @@ -1650,8 +1758,10 @@ if (item.proId == data.proId) { this.DataList.splice(index, 1); this.TotalPrice1 = 0; + this.marryall = 0; this.DataList.forEach((item1) => { this.TotalPrice1 = item1.proPrice + this.TotalPrice1; + this.marryall += item1.proPrice; }); } }); @@ -1664,8 +1774,10 @@ }); this.spliceData(); this.TotalPrice1 = 0; + this.marryall = 0; this.DataList.forEach((item1) => { this.TotalPrice1 = item1.proPrice + this.TotalPrice1; + this.marryall += item1.proPrice; }); } }, @@ -1675,16 +1787,17 @@ this.DataList.forEach((item, index) => { if (item.proId == row.proId) { this.DataList.splice(index, 1); + this.marryall = 0; this.TotalPrice1 = 0; this.DataList.forEach((item1) => { this.TotalPrice1 = item1.proPrice + this.TotalPrice1; + this.marryall += item1.proPrice; }); } }); }, // // 榛樿鎺ュ彈鍥涗釜鍊� { 褰撳墠琛岀殑鍊�, 褰撳墠鍒楃殑鍊�, 琛岀殑涓嬫爣, 鍒楃殑涓嬫爣 } objectSpanMethod({ row, column, rowIndex, columnIndex }) { - console.log(row, column, rowIndex, columnIndex); let fields = ["propinName"]; let cellValue = row[column.property]; if (cellValue && fields.includes(column.property)) { -- Gitblit v1.8.0