From 720381cfb95f06c87c0b11fe92531d06c2b02e12 Mon Sep 17 00:00:00 2001 From: lkk <364857242@qq.com> Date: 星期三, 15 一月 2025 17:58:05 +0800 Subject: [PATCH] 11 --- src/views/system/tijian/index.vue | 10 - src/views/hosp/hosp/index.vue | 330 +++++++++++++++++++++++++++++++++++++++++++++---------- src/views/hosp/customer/index.vue | 6 + 3 files changed, 280 insertions(+), 66 deletions(-) diff --git a/src/views/hosp/customer/index.vue b/src/views/hosp/customer/index.vue index ae5970f..ea40064 100644 --- a/src/views/hosp/customer/index.vue +++ b/src/views/hosp/customer/index.vue @@ -255,6 +255,7 @@ size="mini" @click="handleBlacklist" :disabled="single" + :loading="blackloading" v-hasPermi="['hosp:order:export']" >鍔犲叆榛戝悕鍗�</el-button > @@ -1013,6 +1014,9 @@ // 閬僵灞� loading: true, + blackloading:false, + isAdding:false, + // 閫変腑鏁扮粍 ids: [], // 闈炲崟涓鐢� @@ -1296,11 +1300,13 @@ }, handleBlacklist() { + this.blackloading = true; let data = { cusId: this.ids[0], }; addCustomerBlack(data).then((res) => { this.$modal.msgSuccess("宸插姞鍏ラ粦鍚嶅崟"); + this.blackloading = false; this.getList(); }); }, diff --git a/src/views/hosp/hosp/index.vue b/src/views/hosp/hosp/index.vue index 9e359ce..b1afb15 100644 --- a/src/views/hosp/hosp/index.vue +++ b/src/views/hosp/hosp/index.vue @@ -1,14 +1,33 @@ <template> <div class="app-container"> - <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> + <el-form + :model="queryParams" + ref="queryForm" + size="small" + :inline="true" + v-show="showSearch" + label-width="68px" + > <el-form-item label="闄㈠尯鍚嶇О" prop="hospAreaName"> - <el-input style="width:160px" v-model="queryParams.hospAreaName" placeholder="璇疯緭鍏ラ櫌鍖哄悕绉�" clearable @keyup.enter.native="handleQuery"/> + <el-input + style="width: 160px" + v-model="queryParams.hospAreaName" + placeholder="璇疯緭鍏ラ櫌鍖哄悕绉�" + clearable + @keyup.enter.native="handleQuery" + /> </el-form-item> <!-- <el-form-item label="鏈烘瀯ID" prop="hospid"> <el-input v-model="queryParams.hospid" placeholder="璇疯緭鍏ユ満鏋処D" clearable @keyup.enter.native="handleQuery"/> </el-form-item> --> <el-form-item label="鏈烘瀯鍚嶇О" prop="hospName"> - <el-input v-model="queryParams.hospName" style="width:160px" placeholder="璇疯緭鍏ユ満鏋勫悕绉�" clearable @keyup.enter.native="handleQuery"/> + <el-input + v-model="queryParams.hospName" + style="width: 160px" + placeholder="璇疯緭鍏ユ満鏋勫悕绉�" + clearable + @keyup.enter.native="handleQuery" + /> </el-form-item> <!-- <el-form-item label="闄㈠尯缂栫爜" prop="code"> <el-input v-model="queryParams.code" placeholder="璇疯緭鍏ラ櫌鍖虹紪鐮�" clearable @keyup.enter.native="handleQuery"/> @@ -17,15 +36,37 @@ <el-input v-model="queryParams.areaid" placeholder="璇疯緭鍏ュ尯鍒扞D" clearable @keyup.enter.native="handleQuery" style="width:180px"/> </el-form-item> --> <el-form-item label="鍖哄垝鍚嶇О" prop="areaName"> - <el-input v-model="queryParams.areaName" placeholder="璇疯緭鍏ュ尯鍒掑悕绉�" clearable @keyup.enter.native="handleQuery" style="width:180px"/> + <el-input + v-model="queryParams.areaName" + placeholder="璇疯緭鍏ュ尯鍒掑悕绉�" + clearable + @keyup.enter.native="handleQuery" + style="width: 180px" + /> </el-form-item> <el-form-item label="涓婚櫌鍖�" prop="mainHospArea"> - <el-select v-model="queryParams.mainHospArea" placeholder="鏄惁涓婚櫌鍖�" clearable style="width:110px"> - <el-option v-for="dict in dict.type.sys_yes_no" :key="dict.value" :label="dict.label" :value="dict.value" /> + <el-select + v-model="queryParams.mainHospArea" + placeholder="鏄惁涓婚櫌鍖�" + clearable + style="width: 110px" + > + <el-option + v-for="dict in dict.type.sys_yes_no" + :key="dict.value" + :label="dict.label" + :value="dict.value" + /> </el-select> </el-form-item> <el-form-item label="璐熻矗浜�" prop="principal"> - <el-input v-model="queryParams.principal" placeholder="璇疯緭鍏ヨ礋璐d汉" clearable @keyup.enter.native="handleQuery" style="width:140px"/> + <el-input + v-model="queryParams.principal" + placeholder="璇疯緭鍏ヨ礋璐d汉" + clearable + @keyup.enter.native="handleQuery" + style="width: 140px" + /> </el-form-item> <!-- <el-form-item label="缂栧埗搴婁綅" prop="plaitBed"> <el-input v-model="queryParams.plaitBed" placeholder="璇疯緭鍏ョ紪鍒跺簥浣�" clearable @keyup.enter.native="handleQuery"/> @@ -37,58 +78,185 @@ <el-input v-model="queryParams.orderNum" placeholder="璇疯緭鍏ユ帓搴�" clearable @keyup.enter.native="handleQuery"/> </el-form-item> --> <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-form> <el-row :gutter="10" class="mb8"> <el-col :span="1.5"> - <el-button type="primary" icon="el-icon-plus" size="mini" @click="handleAdd" v-hasPermi="['hosp:hosp:add']">鏂板</el-button> + <el-button + type="primary" + icon="el-icon-plus" + size="mini" + @click="handleAdd" + v-hasPermi="['hosp:hosp:add']" + >鏂板</el-button + > </el-col> <el-col :span="1.5"> - <el-button type="primary" icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate" v-hasPermi="['hosp:hosp:edit']">淇敼</el-button> + <el-button + type="primary" + icon="el-icon-edit" + size="mini" + :disabled="single" + @click="handleUpdate" + v-hasPermi="['hosp:hosp:edit']" + >淇敼</el-button + > </el-col> <el-col :span="1.5"> - <el-button type="primary" icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete" v-hasPermi="['hosp:hosp:remove']">鍒犻櫎</el-button> + <el-button + type="primary" + icon="el-icon-delete" + size="mini" + :disabled="multiple" + @click="handleDelete" + v-hasPermi="['hosp:hosp:remove']" + >鍒犻櫎</el-button + > </el-col> <el-col :span="1.5"> - <el-button type="primary" icon="el-icon-download" size="mini" @click="handleExport" v-hasPermi="['hosp:hosp:export']">瀵煎嚭</el-button> + <el-button + type="primary" + icon="el-icon-download" + size="mini" + @click="handleExport" + v-hasPermi="['hosp:hosp:export']" + >瀵煎嚭</el-button + > </el-col> - <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> + <right-toolbar + :showSearch.sync="showSearch" + @queryTable="getList" + ></right-toolbar> </el-row> - <el-table v-loading="loading" :data="hospList" @selection-change="handleSelectionChange" border + <el-table + v-loading="loading" + :data="hospList" + @selection-change="handleSelectionChange" + border > <el-table-column type="selection" width="55" align="center" fixed /> - <el-table-column label="搴忓彿" align="center" prop="newID" width="50px" fixed="left"/> - <el-table-column label="闄㈠尯鍚嶇О" align="center" prop="hospAreaName" width="120px" :show-overflow-tooltip="true" fixed="left"/> + <el-table-column + label="搴忓彿" + align="center" + prop="newID" + width="50px" + fixed="left" + /> + <el-table-column + label="闄㈠尯鍚嶇О" + align="center" + prop="hospAreaName" + width="120px" + :show-overflow-tooltip="true" + fixed="left" + /> <!-- <el-table-column label="鍖荤枟鏈烘瀯ID" align="center" prop="hospid" /> --> <!-- <el-table-column label="鍖荤枟鏈烘瀯鍚嶇О" align="center" prop="hospName" /> --> - <el-table-column label="闄㈠尯缂栫爜" align="center" prop="code" :show-overflow-tooltip="true"/> - <el-table-column label="浜旂瑪绠�鐮�" align="center" prop="wbm" :show-overflow-tooltip="true"/> - <el-table-column label="鎷奸煶绠�鐮�" align="center" prop="spell" :show-overflow-tooltip="true"/> + <el-table-column + label="闄㈠尯缂栫爜" + align="center" + prop="code" + :show-overflow-tooltip="true" + /> + <el-table-column + label="浜旂瑪绠�鐮�" + align="center" + prop="wbm" + :show-overflow-tooltip="true" + /> + <el-table-column + label="鎷奸煶绠�鐮�" + align="center" + prop="spell" + :show-overflow-tooltip="true" + /> <!-- <el-table-column label="琛屾斂鍖哄垝ID" align="center" prop="areaid" /> --> <!-- <el-table-column label="琛屾斂鍖哄垝鍚嶇О" align="center" prop="areaName" /> --> - <el-table-column label="涓婚櫌鍖�" align="center" prop="mainHospArea" :show-overflow-tooltip="true"> + <el-table-column + label="涓婚櫌鍖�" + align="center" + prop="mainHospArea" + :show-overflow-tooltip="true" + > <template slot-scope="scope"> - <dict-tag :options="dict.type.sys_yes_no" :value="scope.row.mainHospArea"/> + <dict-tag + :options="dict.type.sys_yes_no" + :value="scope.row.mainHospArea" + /> </template> </el-table-column> - <el-table-column label="璐熻矗浜�" align="center" prop="principal" :show-overflow-tooltip="true"/> - <el-table-column label="璐熻矗浜虹數璇�" align="center" prop="phone" :show-overflow-tooltip="true" width="120px"/> - <el-table-column label="缂栧埗搴婁綅" align="center" prop="plaitBed" :show-overflow-tooltip="true"/> - <el-table-column label="寮�鏀惧簥浣�" align="center" prop="openBed" :show-overflow-tooltip="true"/> - <el-table-column label="鎴愮珛鏃ユ湡" align="center" prop="buildDate" width="120px" :show-overflow-tooltip="true"> + <el-table-column + label="璐熻矗浜�" + align="center" + prop="principal" + :show-overflow-tooltip="true" + /> + <el-table-column + label="璐熻矗浜虹數璇�" + align="center" + prop="phone" + :show-overflow-tooltip="true" + width="120px" + /> + <el-table-column + label="缂栧埗搴婁綅" + align="center" + prop="plaitBed" + :show-overflow-tooltip="true" + /> + <el-table-column + label="寮�鏀惧簥浣�" + align="center" + prop="openBed" + :show-overflow-tooltip="true" + /> + <el-table-column + label="鎴愮珛鏃ユ湡" + align="center" + prop="buildDate" + width="120px" + :show-overflow-tooltip="true" + > <template slot-scope="scope"> <span>{{ parseTime(scope.row.buildDate, "{y}-{m}-{d}") }}</span> </template> </el-table-column> - <el-table-column label="澶囨敞" align="center" prop="remark" :show-overflow-tooltip="true"/> - <el-table-column label="鎺掑簭" align="center" prop="orderNum" width="50px" :show-overflow-tooltip="true"/> - <el-table-column label="鏁版嵁鐘舵��" align="center" prop="effective" :show-overflow-tooltip="true"> + <el-table-column + label="澶囨敞" + align="center" + prop="remark" + :show-overflow-tooltip="true" + /> + <el-table-column + label="鎺掑簭" + align="center" + prop="orderNum" + width="50px" + :show-overflow-tooltip="true" + /> + <el-table-column + label="鏁版嵁鐘舵��" + align="center" + prop="effective" + :show-overflow-tooltip="true" + > <template slot-scope="scope"> - <dict-tag :options="dict.type.dict_data_status" :value="scope.row.effective"/> + <dict-tag + :options="dict.type.dict_data_status" + :value="scope.row.effective" + /> </template> </el-table-column> <!-- <el-table-column label="鍒涘缓浜哄鍚�" align="center" prop="createByName" /> --> @@ -214,13 +382,25 @@ <!-- <el-input v-model="form.areaid" placeholder="璇疯緭鍏ヨ鏀垮尯鍒掑悕绉�" /> --> </el-form-item> <el-form-item label="璐熻矗浜�" prop="principal"> - <el-input v-model="form.principal" placeholder="璇疯緭鍏ヨ礋璐d汉" style="width:135px" /> + <el-input + v-model="form.principal" + placeholder="璇疯緭鍏ヨ礋璐d汉" + style="width: 135px" + /> </el-form-item> <el-form-item label="闄㈠尯鍦板潃" prop="areaName"> - <el-input v-model="form.areaName" placeholder="璇疯緭鍏ラ櫌鍖哄湴鍧�" style="width:510px" /> + <el-input + v-model="form.areaName" + placeholder="璇疯緭鍏ラ櫌鍖哄湴鍧�" + style="width: 510px" + /> </el-form-item> <el-form-item label="璐熻矗浜虹數璇�" prop="phone"> - <el-input v-model="form.phone" placeholder="璇疯緭鍏ヨ礋璐d汉鐢佃瘽" style="width:135px" /> + <el-input + v-model="form.phone" + placeholder="璇疯緭鍏ヨ礋璐d汉鐢佃瘽" + style="width: 135px" + /> </el-form-item> <el-form-item label="鎴愮珛鏃ユ湡" prop="buildDate"> <el-date-picker @@ -240,17 +420,21 @@ style="width: 200px" /> <el-form-item label="鎺掑簭" prop="orderNum"> - <el-input - v-model="form.orderNum" - placeholder="璇疯緭鍏ユ帓搴�" - style="width: 145px" - /> - </el-form-item> + <el-input + v-model="form.orderNum" + placeholder="璇疯緭鍏ユ帓搴�" + style="width: 145px" + /> + </el-form-item> </el-form-item> <el-form-item label="寮�鏀惧簥浣嶆暟" prop="openBed"> - <el-input v-model="form.openBed" placeholder="璇疯緭鍏ュ紑鏀惧簥浣嶆暟" style="width: 200px" /> + <el-input + v-model="form.openBed" + placeholder="璇疯緭鍏ュ紑鏀惧簥浣嶆暟" + style="width: 200px" + /> </el-form-item> - + <!-- <el-form-item label="鏁版嵁鐘舵��(PT10.00.004)" prop="effective"> <el-select v-model="form.effective" @@ -314,7 +498,7 @@ name: "Hosp", dicts: ["sys_yes_no", "dict_data_status", "dict_qhdm"], data() { - let checkPhoneNum = (rule, value, callback) => { + /* let checkPhoneNum = (rule, value, callback) => { console.log( value) let patter = new RegExp(/^1\s*[3456789]\s*(\d\s*){9}$/); if (value == "" && value == undefined && !value) { @@ -324,7 +508,18 @@ }else if (!patter.test(value)) { return callback(''); } + }; */ + let checkPhoneNum = (rule, value, callback) => { + const pattern = /^1[3-9]\d{9}$/; // 姝g‘鐨勬墜鏈哄彿姝e垯 + if (!value) { + return callback(new Error("璇疯緭鍏ヨ礋璐d汉鐢佃瘽")); // 蹇呭~椤规牎楠� + } + if (!pattern.test(value)) { + return callback(new Error("璇疯緭鍏ユ纭殑鎵嬫満鍙�")); // 鏍煎紡鏍¢獙 + } + return callback(); // 鏍¢獙閫氳繃 }; + return { // 閬僵灞� loading: true, @@ -365,31 +560,27 @@ // 琛ㄥ崟鍙傛暟 form: {}, // 琛ㄥ崟鏍¢獙 - rules: { + /* rules: { hospAreaName: [ - { required: true, validator: checkPhoneNum, trigger: "blur" }, + { required: true, validator: checkPhoneNum, trigger: "blur" }, ], - hospid: [ - { required: true, validator: checkPhoneNum, trigger: "blur" }, - ], + hospid: [{ required: true, validator: checkPhoneNum, trigger: "blur" }], // hospName: [ // { required: true, message: "鍖荤枟鏈烘瀯鍚嶇О涓嶈兘涓虹┖", trigger: "blur" }, // ], - code: [ - { required: true, validator: checkPhoneNum, trigger: "blur" }, - ], + code: [{ required: true, validator: checkPhoneNum, trigger: "blur" }], mainHospArea: [ { required: true, - validator: checkPhoneNum, + validator: checkPhoneNum, trigger: "change", }, ], createBy: [ - { required: true, validator: checkPhoneNum, trigger: "blur" }, + { required: true, validator: checkPhoneNum, trigger: "blur" }, ], createTime: [ - { required: true, validator: checkPhoneNum, trigger: "blur" }, + { required: true, validator: checkPhoneNum, trigger: "blur" }, ], // orderNum: [ // { required: true, message: "鎺掑簭涓嶈兘涓虹┖", trigger: "blur" }, @@ -397,24 +588,43 @@ effective: [ { required: true, - validator: checkPhoneNum, + validator: checkPhoneNum, trigger: "change", }, ], createByName: [ - { required: true, validator: checkPhoneNum, trigger: "blur" }, + { required: true, validator: checkPhoneNum, trigger: "blur" }, ], updateByName: [ - { required: true, validator: checkPhoneNum, trigger: "blur" }, + { required: true, validator: checkPhoneNum, trigger: "blur" }, ], areaName: [ - { required: true, validator: checkPhoneNum, trigger: "blur" }, + { required: true, validator: checkPhoneNum, trigger: "blur" }, ], principal: [ - { required: true, validator: checkPhoneNum, trigger: "blur" }, + { required: true, validator: checkPhoneNum, trigger: "blur" }, ], phone: [ - { required: true, validator: checkPhoneNum, trigger: "blur" }, + { required: true, validator: checkPhoneNum, trigger: "blur" }, // 浣跨敤鎵嬫満鍙锋牎楠屽櫒 + ], + }, */ + + rules: { + hospAreaName: [ + { required: true, message: "璇疯緭鍏ラ櫌鍖哄悕绉�", trigger: "blur" }, + ], + code: [{ required: true, message: "璇疯緭鍏ラ櫌鍖虹紪鐮�", trigger: "blur" }], + mainHospArea: [ + { required: true, message: "璇烽�夋嫨鏄惁涓婚櫌鍖�", trigger: "change" }, + ], + principal: [ + { required: true, message: "璇疯緭鍏ヨ礋璐d汉", trigger: "blur" }, + ], + areaName: [ + { required: true, message: "璇疯緭鍏ラ櫌鍖哄湴鍧�", trigger: "blur" }, + ], + phone: [ + { required: true, validator: checkPhoneNum, trigger: "blur" }, ], }, }; diff --git a/src/views/system/tijian/index.vue b/src/views/system/tijian/index.vue index 7a09eed..5dfd40a 100644 --- a/src/views/system/tijian/index.vue +++ b/src/views/system/tijian/index.vue @@ -353,10 +353,6 @@ ></el-option> </el-select> </el-form-item> - - <!-- <el-form-item prop="ageUnit"> - - </el-form-item> --> </el-form> <el-form :inline="true" @@ -2335,7 +2331,9 @@ let _this = this; let cusIdcard = this.form.cusIdcard; if (cusIdcard) { + getCusIdcard(cusIdcard).then((response) => { + _this.top = false; if (response.data) { this.form = response.data; if (this.form.discount === null) { @@ -2376,11 +2374,11 @@ this.list1 = false; this.list2 = true; this.list3 = false; - this.top = false; + _this.top = false; } else { this.list1 = true; this.TotalPrice = 0; - this.top = false; + _this.top = false; } }); } else { -- Gitblit v1.8.0