From c36ada6253862acaa44a1dc0eb5b9cbb28e68fd8 Mon Sep 17 00:00:00 2001 From: wwl <xchao828@163.com> Date: 星期二, 21 一月 2025 11:08:41 +0800 Subject: [PATCH] 1 --- src/views/hosp/order/index.vue | 222 ++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 203 insertions(+), 19 deletions(-) diff --git a/src/views/hosp/order/index.vue b/src/views/hosp/order/index.vue index a3a0b5a..8aae299 100644 --- a/src/views/hosp/order/index.vue +++ b/src/views/hosp/order/index.vue @@ -177,6 +177,7 @@ type="primary" size="mini" @click="handleRevoke" + :loading="isLoading" :disabled="single" >鎾ら攢绛惧埌</el-button > @@ -230,6 +231,16 @@ :disabled="single" v-hasPermi="['hosp:order:export']" >鎵撳嵃琛ュ綍鍗�</el-button + > + </el-col> + <el-col :span="1.5"> + <el-button + type="primary" + size="mini" + @click="ForceChexiao" + :disabled="single" + v-hasPermi="['qzcx']" + >寮哄埗鎾ら攢</el-button > </el-col> <right-toolbar @@ -648,6 +659,7 @@ width="260px" > </el-table-column> + <el-table-column prop="proPrice" label="鍘熶环" width="56px"> </el-table-column> @@ -752,6 +764,8 @@ > <el-table-column prop="propinName" label="妫�鏌ラ」鐩�"> </el-table-column> + <el-table-column prop="sl" label="鏁伴噺" width="56px"> + </el-table-column> <el-table-column prop="proPrice" label="鍘熶环" width="56px"> </el-table-column> <el-table-column @@ -831,7 +845,7 @@ style="width: 90px" ></el-input> </el-form-item> - <el-form-item label="浠樻绫诲瀷" prop="payType"> + <el-form-item label="浠樻绫诲瀷"> <el-select style="width: 120px" v-model="payType" @@ -851,6 +865,7 @@ type="primary" @click="submitPrice" :disabled="confirm" + :loading="isSubmit" style="margin-top: 34px" >鎻愪氦</el-button > @@ -1101,7 +1116,9 @@ > <el-table-column prop="propinName" label="妫�鏌ラ」鐩�"> </el-table-column> - <el-table-column prop="proName" label="鏄庣粏椤圭洰" width="260px"> + <el-table-column prop="proName" label="鏄庣粏椤圭洰" width="200px"> + </el-table-column> + <el-table-column prop="sl" label="鏁伴噺" width="56px"> </el-table-column> <el-table-column prop="proPrice" label="鍘熶环" width="56px"> </el-table-column> @@ -1128,7 +1145,95 @@ </div> </div> - <div class="heji"> + <el-form + :model="form" + inline + style="display: flex; justify-content: space-between; margin-top: 20px" + > + <!-- 浣撴绫诲瀷 --> + <el-form-item label="浣撴绫诲瀷" prop="tjType" style="display: flex"> + <div class="type"> + {{ { 1: "鍥㈤槦", 2: "涓汉", 3: "鍥綋绁�" }[form.tjType] }} + </div> + </el-form-item> + + <!-- 鍘熶环 --> + <el-form-item label="鍘熶环" style="display: flex"> + <el-input + placeholder="鍘熶环" + :value="TotalPrice1" + disabled + style="width: 90px" + ></el-input> + </el-form-item> + + <!-- 鎶樻墸璁惧畾 --> + <el-form-item label="鎶樻墸" style="display: flex"> + <el-input + style="width: 90px" + type="number" + v-model="discount" + :value="discount" + ></el-input> + </el-form-item> + + <!-- 搴斾粯閲戦 --> + <el-form-item label="搴斾粯" style="display: flex"> + <el-input + placeholder="搴斾粯閲戦" + :value="TotalPrice1 * (discount / 10)" + style="width: 90px" + ></el-input> + </el-form-item> + + <!-- 浠樻绫诲瀷 --> + <el-form-item label="浠樻绫诲瀷" prop="payType" style="display: flex"> + <el-select + style="width: 120px" + v-model="payType" + placeholder="璇烽�夋嫨浠樻绫诲瀷" + @change="onPayTypeChange" + > + <el-option + v-for="dict in dict.type.dict_pay_type" + :key="dict.value" + :label="dict.label" + :value="dict.value" + ></el-option> + </el-select> + </el-form-item> + + <!-- 缁撶畻鏂瑰紡 --> + <el-form-item label="缁撶畻鏂瑰紡" prop="jsType" style="display: flex"> + <el-select + v-model="jsType" + placeholder="璇烽�夋嫨缁撶畻鏂瑰紡" + style="width: 130px" + clearable + > + <el-option + v-for="dict in dict.type.reservation_pay_type" + :key="dict.value" + :label="dict.label" + :value="dict.value" + /> + </el-select> + </el-form-item> + + <!-- 鎻愪氦鎸夐挳 --> + <el-form-item style="display: flex"> + <el-button + type="primary" + :loading="isSubmit1" + @click="submitPrice1" + :disabled="confirm" + > + 鎻愪氦 + </el-button> + </el-form-item> + </el-form> + + <!-- <div class="heji"> <div class="o"> <el-form :model="form" @@ -1183,6 +1288,21 @@ ></el-option> </el-select> </el-form-item> + <el-form-item label="缁撶畻鏂瑰紡" prop="payType"> + <el-select + v-model="payType" + placeholder="璇烽�夋嫨缁撶畻鏂瑰紡" + style="width: 130px" + clearable + > + <el-option + v-for="dict in dict.type.reservation_pay_type" + :key="dict.value" + :label="dict.label" + :value="dict.value" + /> + </el-select> + </el-form-item> <el-form-item style="display: flex"> <el-button type="primary" @@ -1193,7 +1313,7 @@ </el-form-item> </el-form> </div> - </div> + </div> --> </el-dialog> <!-- 娣诲姞鎴栦慨鏀逛綋妫�璁板綍瀵硅瘽妗� --> @@ -1506,6 +1626,7 @@ getTransitionInfo, getBlproByTjh, revokeBlProByBldhAndTjh, + getForceChexiao, } from "@/api/hosp/order"; import moment from "moment"; import { getZhList, getlistByZhId } from "@/api/system/package"; @@ -1524,12 +1645,11 @@ queryCompany, addbatch, } from "@/api/team/tuanti"; -import { createLogger } from "vuex"; export default { components: { ViewPdf, }, - dicts: ["dict_pay_type", "dict_team"], + dicts: ["dict_pay_type", "dict_team", "reservation_pay_type"], name: "Order", data() { return { @@ -1545,6 +1665,9 @@ DataList3: [], bldhid: "", budadaozhen: false, + isLoading: false, + isSubmit: false, + isSubmit1: false, huizongList: [], DataLists: [], infoList: [], @@ -1572,6 +1695,7 @@ packagedataList: [], cusId: "", payType: "0", + jsType: "0", packageList: [], checkedkeys: [], dialogVisible: false, @@ -1834,7 +1958,6 @@ // 鑾峰彇鍗曚綅淇℃伅闆嗗悎 getCompany(this.queryParams).then((response) => { this.CompanyList = response.data; - console.log(this.CompanyList, 555); this.loading = false; }); @@ -1931,14 +2054,22 @@ }); }, - handleRevoke() { - this.$confirm("鎮ㄧ‘璁よ鎾ら攢锛�", "纭淇℃伅", { - distinguishCancelAndClose: true, - confirmButtonText: "纭", - cancelButtonText: "鍙栨秷", - }) + // 寮哄埗鎾ら攢鎸夐挳 + ForceChexiao() { + const tjNum = this.tjnumbers; + this.$confirm( + "鎮ㄦ槸鍚﹂渶瑕佸己鍒舵挙閿�锛熸挙閿�鍚庤浜哄憳鏈浣撴璁板綍涓嶅彲鎭㈠锛�", + "纭淇℃伅", + { + distinguishCancelAndClose: true, + confirmButtonText: "纭", + cancelButtonText: "鍙栨秷", + customClass: "custom-message-box", + } + ) + .then(() => { - revokeTjOrderByTjNum(this.tjnumbers).then((res) => { + getForceChexiao(tjNum).then((res) => { this.$modal.msgSuccess("鎾ら攢鎴愬姛"); this.getList(); }); @@ -1950,6 +2081,43 @@ message: "宸插彇娑�", }); } + }); + this.$nextTick(() => { + // 纭繚寮规娓叉煋鍚庡簲鐢ㄦ牱寮� + const messageBox = document.querySelector( + ".custom-message-box .el-message-box__message" + ); + if (messageBox) { + messageBox.style.color = "red"; // 閫氳繃 JS 寮哄埗璁剧疆棰滆壊 + } + }); + }, + + handleRevoke() { + this.isLoading = true; + this.$confirm("鎮ㄧ‘璁よ鎾ら攢锛�", "纭淇℃伅", { + distinguishCancelAndClose: true, + confirmButtonText: "纭", + cancelButtonText: "鍙栨秷", + }) + .then(() => { + revokeTjOrderByTjNum(this.tjnumbers).then((res) => { + this.$modal.msgSuccess("鎾ら攢鎴愬姛"); + // this.isLoading = false; + this.getList(); + }); + }) + .catch((action) => { + if (action === "cancel") { + this.$message({ + type: "warning", + message: "宸插彇娑�", + }); + } + }) + .finally(() => { + // 涓嶈鎿嶄綔鎴愬姛杩樻槸澶辫触锛岄兘浼氭墽琛� + this.isLoading = false; }); }, /** 鐐瑰嚮鏄剧ず浣撴鎶ュ憡鎶ヨ〃*/ @@ -2161,7 +2329,7 @@ var discount = ""; response.data.water.forEach((item) => { copeWith += item.copeWith; - paidIn += item.copeWith; + paidIn += item.paidIn; discount = item.discount; }); this.bill.push({ @@ -2202,7 +2370,7 @@ var discount = ""; response.data.water.forEach((item) => { copeWith += item.copeWith; - paidIn += item.copeWith; + paidIn += item.paidIn; discount = item.discount; }); this.bill.push({ @@ -2313,8 +2481,10 @@ let datas = { zhId: data.id, }; + getlistByZhId(datas).then((res) => { this.packagedataList = res.data.tjProjectList; + for (var i = 0; i < this.packagedataList.length; i++) { let proId = this.packagedataList[i].proId; getProSonDxList(proId).then((res) => { @@ -2466,7 +2636,6 @@ this.checkedListkey.push(item.proId); this.DataList.push(item); this.DataList3 = this.DataList.concat(this.Datalists); - console.log(this.DataList, 77777); this.spliceData(); this.DataList.forEach((item1) => { if (item1.proParentId == data.proId) { @@ -2477,7 +2646,7 @@ this.TotalPrice1 = 0; if (this.DataList3.length != 0) { this.DataList3.forEach((item) => { - this.TotalPrice1 += item.proPrice; + this.TotalPrice1 += item.proPrice * item.sl; }); } // this.TotalPrice1 = 0; @@ -2530,7 +2699,6 @@ }); } else if (checked == true) { this.DataList.push(data); - console.log(this.DataList, 6666); this.DataList.forEach((item1) => { if (item1.proParentId == this.dataObj.proId) { item1.propinName = this.dataObj.proName; @@ -2539,6 +2707,9 @@ this.spliceData(); this.TotalPrice1 = 0; this.DataList.forEach((item1) => { + console.log(item1.proPrice, 3322); + console.log(this.TotalPrice1, 1122); + this.TotalPrice1 = item1.proPrice + this.TotalPrice1; }); if (this.marryalls != 0) { @@ -2665,6 +2836,7 @@ // 鏀惰垂鎸夐挳 submitPrice() { this.proIds = []; + this.isSubmit = true; if (this.DataList.length != 0) { this.DataList.forEach((item) => { this.proIds.push(item.proId); @@ -2700,6 +2872,7 @@ payType: this.payType, }; getwater(data).then((res) => { + this.isSubmit = false; this.$modal.msgSuccess("鎻愪氦鎴愬姛"); this.mobanId = res.data.mobanId; this.waterId = res.data.waterId; @@ -2715,6 +2888,7 @@ // 鏀惰垂鎸夐挳 submitPrice1() { this.proIds = []; + this.isSubmit1 = true; if (this.DataList.length != 0) { this.DataList.forEach((item) => { this.proIds.push(item.proId); @@ -2744,10 +2918,12 @@ discount, copeWith, tjType, + payStasus: this.jsType, orderId: this.orderIds, tjProIds: this.proIds, payType: this.payType, }; + getwater(data).then((res) => { this.$modal.msgSuccess("鎻愪氦鎴愬姛"); this.mobanId = res.data.mobanId; @@ -2757,6 +2933,7 @@ const params = { viewNum, tjnumber }; this.$tab.openPage("鏀舵灏忕エ", "/report/charge", params); this.Projectopen1 = false; + this.isSubmit1 = false; }); } }); @@ -2871,6 +3048,12 @@ // .el-dialog__body { // padding: 20px; // } +::v-deep .el-message-box__message { + color: red !important; /* 寮哄埗璁剧疆棰滆壊涓虹孩鑹� */ +} +// .custom-message-box .el-message-box__message { +// color: red !important; /* 璁剧疆鏂囧瓧涓虹孩鑹� */ +// } .o { margin-top: 8px; } @@ -2918,6 +3101,7 @@ display: flex; flex-direction: column; } + ::v-deep .el-step__title.is-process { color: rgb(24, 144, 255); } -- Gitblit v1.8.0