From 1a0d57124485fafb0b42a3ec3ecc121e50bb050f Mon Sep 17 00:00:00 2001 From: lkk <364857242@qq.com> Date: 星期二, 03 六月 2025 17:00:08 +0800 Subject: [PATCH] 1 --- src/components/public/index.vue | 216 +++++++++++++++++++++++++++++++++--------------------- 1 files changed, 132 insertions(+), 84 deletions(-) diff --git a/src/components/public/index.vue b/src/components/public/index.vue index 482915f..9d11c4e 100644 --- a/src/components/public/index.vue +++ b/src/components/public/index.vue @@ -10,14 +10,19 @@ <h3 v-if="fList.proResult"> 妫�娴嬬粨鏋� :{{ fList.proResult }}{{ fList.project.proMetering }} </h3> - <!-- <el-form - :model="queryParams" - ref="queryForm" - size="small" - :inline="true" - label-width="68px" - > --> - <!-- <el-form-item label="鐥呯鍚嶇О" prop="bingzhong"> + + <h2 style="text-align: center">{{ proName || "鏆傛棤椤圭洰鍚嶇О" }}</h2> + <div style="display: flex; width: 100%"> + <div style="width: 50%; margin-right: 40px"> + <el-form + :model="queryParams" + ref="queryForm" + size="small" + :inline="true" + label-width="68px" + @submit.native.prevent + > + <!-- <el-form-item label="鐥呯鍚嶇О" prop="bingzhong"> <el-input v-model="queryParams.bingzhong" placeholder="璇疯緭鍏ョ畝绉�" @@ -25,43 +30,39 @@ @keyup.enter.native="handleQuery" style="width: 120px" /> - </el-form-item> - <el-form-item label="鎷奸煶鐮�" prop="bzPinyin"> - <el-input - v-model="queryParams.bzPinyin" - placeholder="璇疯緭鍏ユ嫾闊崇爜" - clearable - @keyup.enter.native="handleQuery" - style="width: 130px" - /> - </el-form-item> - <el-form-item> - <el-button - type="primary" - icon="el-icon-search" - size="mini" - @click="handleQuery" - >鎼滅储</el-button - > - </el-form-item> --> - <!-- <el-form-item> + </el-form-item>--> + <el-form-item label="妫�鏌ョ粨璁�" prop="ruleStr"> + <el-input + v-model="queryParams.ruleStr" + placeholder="璇疯緭鍏ユ鏌ョ粨璁�" + clearable + @keyup.enter.native="getList" + style="width: 130px" + /> + </el-form-item> + <el-form-item> + <el-button + type="primary" + icon="el-icon-search" + size="mini" + @click="getList" + >鎼滅储</el-button + > + </el-form-item> + <!-- <el-form-item> <h3 >{{ queryParams.proName || '鏆傛棤椤圭洰鍚嶇О' }}</h3> </el-form-item> --> - <!-- <el-form-item> + <!-- <el-form-item> <h3 style="margin-left: 160px">宸查�夐」鐩�</h3> </el-form-item> --> - <!-- </el-form> --> - <h2 style="text-align: center;margin-top: -30px;">{{ queryParams.proName || '鏆傛棤椤圭洰鍚嶇О' }}</h2> - <div style="display: flex; width: 100%"> - <div style="width: 50%; margin-right: 40px"> + </el-form> <el-table :data="dataList" ref="multipleTable" v-loading="loading" - row-key="aid" @selection-change="handleSelectionChange" border - height="420px" + height="480px" > <el-table-column type="selection" width="40" align="center" /> <el-table-column @@ -88,14 +89,14 @@ </div> </div> - <div style="width: 100%; height: 600px"> + <div class="jianc"> <!-- <h3 style="margin-top: -30px;">宸查�夐」鐩�</h3> --> <el-form :model="form" ref="queryForm" size="small" label-width="68px" - :inline="true" + :label-position="labelPosition" > <!-- :inline="true" --> <!-- <el-form-item> @@ -110,16 +111,16 @@ v-model="form.jcsj" clearable type="textarea" - :autosize="{ minRows: 8 }" + :autosize="{ minRows: 7 }" style="width: 380px" /> </el-form-item> - <el-form-item label="妫�鏌ョ粨璁�" prop="conclusion"> + <el-form-item label="妫�鏌ョ粨璁�" prop="desc"> <el-input v-model="form.desc" clearable type="textarea" - :autosize="{ minRows: 8 }" + :autosize="{ minRows: 7 }" style="width: 380px" /> </el-form-item> @@ -127,14 +128,14 @@ </div> </div> - <span slot="footer" class="dialog-footer" style="margin-top: -120px"> - <el-button @click="open = false">鍙� 娑�</el-button> + <span slot="footer" class="dialog-footer" style="margin-top: -20px"> + <el-button @click="callcolos">鍙� 娑�</el-button> <el-button type="primary" @click="handleOk">纭� 瀹�</el-button> </span> </el-dialog> </div> </template> - + <script> import { getlist, getlistByRuleStr } from "@/api/doctor/check"; import { getYxJcXxJg } from "@/api/picture/picture"; @@ -162,10 +163,11 @@ data() { return { open: false, + labelPosition: "top", // 寮瑰嚭灞傛爣棰� title: "", yxbx: "", - proName:'', + proName: "", // lastDesc: "", total: 0, dataList: [], @@ -176,10 +178,7 @@ jcsj: "", }, queryParams: { - bingzhong: "", - bzPinyin: "", - proId:"", - // proName:"", + ruleStr: "", pageNum: 1, pageSize: 10, }, @@ -191,6 +190,7 @@ }, watch: { checkStatus(newValue) { + console.log(565658); if (newValue === "1") { this.updateData(this.proResult, this.conclusion); } @@ -205,7 +205,7 @@ const firstProject = newVal[0]; // 浣犱篃鍙互閬嶅巻鎵�鏈夐」鐩紝鐪嬩綘涓氬姟闇�姹� this.queryParams.proId = firstProject.proId; // 鍋囪椤圭洰涓彨 id // this.queryParams.proName = firstProject.proName; - this.proName = firstProject.proName + this.proName = firstProject.proName; } }, }, @@ -217,10 +217,12 @@ async getList() { try { this.loading = true; // 娣诲姞鍔犺浇鐘舵�� - const res = await getlist(this.queryParams); - this.dataList = res.rows; - this.total = res.total; + this.dataList = res.data.rows; + if (res.data.total) { + this.total = res.data.total; + } + this.updateData(this.proResult, this.conclusion); // 濡傛灉闇�瑕侀�変腑鎿嶄綔锛屽皢鍏跺皝瑁呬负鐙珛鏂规硶 await this.handleAutoSelection(); @@ -237,9 +239,6 @@ if (!this.fList?.rulesList?.length) return; await this.$nextTick(); - // 鍏堟竻闄ゆ墍鏈夐�夋嫨 - this.$refs.multipleTable?.clearSelection(); - // 鍐嶈繘琛岄�夋嫨 this.dataList.forEach((item) => { const shouldSelect = this.fList.rulesList.some( (rule) => rule.aid === item.aid @@ -260,48 +259,83 @@ }, updateData(proResult, conclusion) { - if (this.checkStatus === "1") { + console.log(proResult, conclusion, 5658); + if (this.checkStatus == 1) { this.form.jcsj = proResult; // 鏇存柊妫�鏌ユ墍瑙� this.form.desc = conclusion; // 鏇存柊妫�鏌ョ粨璁� - // console.log(proResult, conclusion); + } else { + this.form.desc = ""; + this.form.jcsj = ""; + } + + if (this.list.length != 0) { + let desc = ""; + desc += this.list + .map((item) => item.bingzhong || item.ruleStr) + .filter(Boolean) + .join(","); + let jcsj = ""; + jcsj += this.list + .map((item) => item.yxbx) + .filter(Boolean) + .join(","); + this.form.jcsj = this.form.jcsj + jcsj; // 鏇存柊妫�鏌ユ墍瑙� + this.form.desc = this.form.desc + desc; } }, handleSelectionChange(selection) { - console.log('Selection changed:', selection); - this.list = [...selection]; // 浣跨敤灞曞紑杩愮畻绗﹀垱寤烘柊鏁扮粍 + this.list = selection; this.updateFormContent(selection); }, updateFormContent(selection) { + // if (!selection.length) return; + this.updateData(this.proResult, this.conclusion); // 濡傛灉澶勪簬妫�鏌ョ姸鎬侊紝浣跨敤浼犲叆鐨勫�� - if (this.checkStatus === "1") { - this.updateData(this.proResult, this.conclusion); + // if (this.checkStatus === "1") { + // this.updateData(this.proResult, this.conclusion); + // return; + // } + + // 閲嶇疆琛ㄥ崟鍐呭 + // this.form.desc = ""; + // this.form.jcsj = ""; + // console.log(22222); + // // 浣跨敤map鍜宩oin鏇夸唬forEach鍜屽瓧绗︿覆鎷兼帴 + // this.form.desc = selection + // .map((item) => item.bingzhong || item.ruleStr) + // .filter(Boolean) + // .join(","); + + // this.form.jcsj = selection + // .map((item) => item.yxbx) + // .filter(Boolean) + // .join(","); + }, + + /* handleOk() { + if (!this.form.desc && !this.form.jcsj) { + this.$message.warning("璇烽�夋嫨鏁版嵁"); return; } - // 閲嶇疆琛ㄥ崟鍐呭 - this.form.desc = ""; - this.form.jcsj = ""; - - // 鍙湁鍦ㄦ湁閫変腑椤规椂鎵嶈繘琛屾嫾鎺� - if (selection.length > 0) { - // 浣跨敤map鍜宩oin鏇夸唬forEach鍜屽瓧绗︿覆鎷兼帴 - this.form.desc = selection - .map((item) => item.bingzhong || item.ruleStr) - .filter(Boolean) - .join(","); - - this.form.jcsj = selection - .map((item) => item.yxbx) - .filter(Boolean) - .join(","); + try { + this.$emit("add", this.form.desc, this.form.jcsj); + this.resetForm(); + this.open = false; + } catch (error) { + console.error("澶勭悊鏁版嵁澶辫触:", error); + this.$message.error("鎿嶄綔澶辫触"); } - }, + }, */ handleOk() { - if (!this.form.desc && !this.form.jcsj) { - this.$message.warning("璇烽�夋嫨鏁版嵁"); + const jcsjTrim = this.form.jcsj?.trim(); + const descTrim = this.form.desc?.trim(); + + if (!jcsjTrim || !descTrim) { + this.$message.warning("妫�鏌ユ墍瑙佸拰妫�鏌ョ粨璁轰笉鑳戒负绌�"); return; } @@ -323,6 +357,9 @@ this.$refs.multipleTable.clearSelection(); } }, + callcolos() { + this.open = false; + }, }, computed: { isCheckMode() { @@ -335,14 +372,25 @@ }, }; </script> - + <style scoped> .el-dialog__body { - padding: 10px 20px; + padding: 0px 20px; } + +::v-deep .el-dialog__header { + padding: 0px !important; + padding-bottom: 0px !important; +} + ::v-deep .el-dialog__footer { padding: 0 !important; padding-bottom: 40px !important; } -</style> - \ No newline at end of file + +.jianc { + width: 100%; + height: 600px; + padding-top: 40px; +} +</style> \ No newline at end of file -- Gitblit v1.8.0