From 93594afdf8567822384ad3b893e612c1cff082b8 Mon Sep 17 00:00:00 2001 From: lkk <364857242@qq.com> Date: 星期一, 06 一月 2025 18:00:14 +0800 Subject: [PATCH] 检查检验结果弹框 --- src/views/hosp/project/index.vue | 350 ++++++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 278 insertions(+), 72 deletions(-) diff --git a/src/views/hosp/project/index.vue b/src/views/hosp/project/index.vue index 11f1921..1413453 100644 --- a/src/views/hosp/project/index.vue +++ b/src/views/hosp/project/index.vue @@ -12,7 +12,23 @@ style="margin-bottom: 15px" /> </div> - <el-scrollbar style="height: 629px; width: 100%"> + <div class="scrollable-container"> + <div class="content"> + <el-tree + :data="deptOptions" + :props="defaultProps" + :expand-on-click-node="false" + :filter-node-method="filterNode" + ref="tree" + node-key="id" + :default-expanded-keys="treeId" + highlight-current + @node-click="handleNodeClick" + :render-content="renderContent" + /> + </div> + </div> + <!-- <el-scrollbar style="height: 629px; width: 100%"> <div class="head-container"> <el-tree :data="deptOptions" @@ -26,7 +42,7 @@ @node-click="handleNodeClick" /> </div> - </el-scrollbar> + </el-scrollbar> --> </el-col> <el-col :span="20" :xs="24"> <el-form @@ -108,6 +124,15 @@ <el-col :span="1.5"> <el-button type="primary" + icon="el-icon-download" + size="mini" + @click="Synchronizationfees" + >鎵归噺鍚屾璐圭敤</el-button + > + </el-col> + <el-col :span="1.5"> + <el-button + type="primary" icon="el-icon-sort" size="mini" @click="toggleExpandAll" @@ -157,12 +182,20 @@ :show-overflow-tooltip="true" /> <el-table-column - label="涓村簥鎰忎箟" + label="缁撴灉绫诲瀷" align="center" - prop="proMeaning" - width="350px" + prop="resultType" + width="110px" :show-overflow-tooltip="true" - /> + > + <template slot-scope="scope"> + <dict-tag + :options="dict.type.tj_result_type" + :value="scope.row.resultType" + /> + </template> + </el-table-column> + <!-- <el-table-column label="妫�鏌ユ柟寮�" align="center" prop="proCheckMethod" :show-overflow-tooltip="true" width="110px" /> --> <el-table-column @@ -202,19 +235,12 @@ > </el-table-column> <el-table-column - label="椤圭洰绫诲瀷" + label="涓村簥鎰忎箟" align="center" - prop="resultType" - width="110px" + prop="proMeaning" + width="350px" :show-overflow-tooltip="true" - > - <template slot-scope="scope"> - <dict-tag - :options="dict.type.tj_result_type" - :value="scope.row.resultType" - /> - </template> - </el-table-column> + /> <el-table-column label="澶囨敞" prop="remark" @@ -283,6 +309,7 @@ width="1200px" append-to-body :before-close="handleClose" + :close-on-click-modal="false" > <el-form ref="form" @@ -291,9 +318,9 @@ label-width="100px" :inline="true" > - <el-form-item label="涓婚」鍚嶇О" prop="proParentId" > + <el-form-item label="涓婚」鍚嶇О" prop="proParentId"> <treeselect - :disabled="proParent" + :disabled="proParent" v-model="form.proParentId" :options="projectOptions" :normalizer="normalizer" @@ -301,25 +328,10 @@ placeholder="閫夋嫨涓婚」鍚嶇О" style="width: 260px" @select="obtain" - /> </el-form-item> - <el-form-item label="鏄庣粏椤圭洰" prop="proName" v-if="key == 'Y'"> - <span - slot="label" - style="display: inline-block; border-bottom: 2px solid blue" - @click="getDetailed" - > - 鏄庣粏椤圭洰 - <!-- <el-tooltip effect="dark" content="鏄庣粏椤圭洰" placement="bottom"> - <i class='el-icon-question' @click="getDetailed" /> - </el-tooltip> --> - </span> - <el-input v-model="form.proName" placeholder="璇疯緭鍏ユ槑缁嗛」鐩�"> - </el-input> - </el-form-item> - <el-form-item label="鏄庣粏椤圭洰" prop="proName" v-if="key == 'N'"> + <el-form-item label="鏄庣粏椤圭洰" prop="proName"> <el-input v-model="form.proName" placeholder="璇疯緭鍏ユ槑缁嗛」鐩�"> </el-input> </el-form-item> @@ -393,7 +405,7 @@ <el-select v-model="form.deptId" placeholder="璇烽�夋嫨绉戝鍚嶇О" - @change="$forceUpdate()" + @change="changeType" filterable style="width: 260px" > @@ -476,11 +488,47 @@ ></el-option> </el-select> </el-form-item> + <el-form-item label="鍗曚綅" prop="proMetering"> + <el-input + v-model="form.proMetering" + placeholder="璇疯緭鍏ュ崟浣�" + style="width: 260px" + /> + </el-form-item> + <el-form-item label="鍙傝�冭寖鍥�" prop="proScope"> + <el-input + v-model="form.proScope" + placeholder="璇疯緭鍏ュ弬鑰冭寖鍥�" + style="width: 200px" + /> + </el-form-item> + <el-form-item label="鏁伴噺" prop="sl"> + <el-input + v-model="form.sl" + placeholder="璇疯緭鍏ユ暟閲�" + style="width: 200px" + /> + </el-form-item> + <el-form-item label="缁勫悎鏍囧織" prop="sfzhfy"> + <el-select + v-model="form.sfzhfy" + placeholder="璇烽�夋嫨鏄惁缁勫悎鏍囧織" + style="width: 260px" + > + <el-option + v-for="dict in dict.type.sys_yes_no" + :key="dict.value" + :label="dict.label" + :value="dict.value" + ></el-option> + </el-select> + </el-form-item> + <el-form-item label="缁撴灉绫诲瀷" prop="resultType"> <el-select v-model="form.resultType" placeholder="璇烽�夋嫨缁撴灉绫诲瀷" - style="width: 260px" + style="width: 200px" filterable clearable > @@ -492,6 +540,44 @@ ></el-option> </el-select> </el-form-item> + <el-form-item label="his椤圭洰鍚嶇О" prop="hisXmmc" v-if="key == 'Y'"> + <span + slot="label" + style="display: inline-block; border-bottom: 2px solid blue" + @click="getDetailed" + > + his椤圭洰鍚嶇О + </span> + + <el-input + v-model="form.hisXmmc" + placeholder="his椤圭洰鍚嶇О" + style="width: 200px" + > + </el-input> + </el-form-item> + <el-form-item label="his椤圭洰鍚嶇О" prop="hisXmmc" v-if="key == 'N'"> + <el-input + v-model="form.hisXmmc" + placeholder="璇疯緭鍏ユ槑缁嗛」鐩�" + style="width: 260px" + > + </el-input> + </el-form-item> + <el-form-item label="his缂栫爜" prop="hisXmbm"> + <el-input + v-model="form.hisXmbm" + placeholder="璇疯緭鍏is缂栫爜" + style="width: 260px" + /> + </el-form-item> + <el-form-item label="his鍗曚环" prop="hisdj"> + <el-input + v-model="form.hisdj" + placeholder="璇疯緭鍏is鍗曚环" + style="width: 200px" + /> + </el-form-item> <el-form-item label="LIS椤圭洰" prop="lisXmmc"> <span slot="label" @@ -499,13 +585,22 @@ @click="handleQuerys" > LIS椤圭洰 - <!-- <el-tooltip effect="dark" content="鏄庣粏椤圭洰" placement="bottom"> - <i class='el-icon-question' @click="getDetailed" /> - </el-tooltip> --> </span> - <el-input v-model="form.lisXmmc" placeholder="璇疯緭鍏IS椤圭洰"> + <el-input + v-model="form.lisXmmc" + placeholder="璇疯緭鍏IS椤圭洰" + style="width: 200px" + > </el-input> + </el-form-item> + + <el-form-item label="LIS缂栫爜" prop="lisXmbm"> + <el-input + v-model="form.LISXmbm" + placeholder="璇疯緭鍏is缂栫爜" + style="width: 260px" + /> </el-form-item> <el-form-item label="澶囨敞" prop="proRemark"> <el-input @@ -670,7 +765,12 @@ </div> </el-dialog> - <el-dialog title="鏀惰垂椤圭洰" :visible.sync="dialogTableVisible" width="80%"> + <el-dialog + title="鏀惰垂椤圭洰" + :visible.sync="dialogTableVisible" + width="80%" + :close-on-click-modal="false" + > <div class="app-container"> <el-row :gutter="24"> <!--閮ㄩ棬鏁版嵁--> @@ -824,6 +924,7 @@ deptTree111, getAllChildListById, getInfoByProId, + tbhisproprice, } from "@/api/hosp/project"; import { listDept } from "@/api/system/dept"; import Treeselect from "@riophae/vue-treeselect"; @@ -923,7 +1024,7 @@ children: "children", label: "label", }, - proParent:false, + proParent: false, id: "", // 閲嶆柊娓叉煋琛ㄦ牸鐘舵�� refreshTable: true, @@ -943,6 +1044,7 @@ xmmc: null, pym: null, }, + treeDate: {}, queryParam: { page: 1, pageSize: 10, @@ -950,12 +1052,24 @@ }, // 琛ㄥ崟鍙傛暟 form: { + proParentId: "", + deptId: "", needReport: "Y", + hisXmbm: "", + hisXmmc: "", + sfzhfy: "Y", + hisdj: "", + sl: "", + proStatus: "0", proName: "", proPrice: "", sfxmId: "", lisXmbm: "", lisXmmc: "", + proMetering: "", + proScope: "", + proSex:'2', + resultType: "", // 鍒濆鍊� }, // 琛ㄥ崟鏍¢獙 rules: { @@ -1018,6 +1132,9 @@ this.getDeptList(); this.getDeptTree(); }, + mounted() { + this.getDeptTree(); + }, methods: { handleQuerys() { this.$refs.aaa.open = true; @@ -1055,6 +1172,8 @@ }; getAllChildListById(data).then((response) => { // this.projectList = this.handleTree(response.data.list, "proId"); + console.log(response, 1122); + this.projectList = response.data.list; this.loading = false; }); @@ -1070,11 +1189,16 @@ /** 鏂板鎸夐挳鎿嶄綔 */ handleAdd(row) { + this.form.hisXmbm = ""; + this.form.hisXmmc = ""; + this.form.hisdj = ""; // this.reset(); this.loading = true; + this.proParent = false; this.form.proPrice = 0.0; this.form.proName = ""; this.form.proId = null; + this.form.resultType = "1"; // ProjectTree getlist().then((response) => { if (response.code == 200) { @@ -1084,23 +1208,47 @@ project.children = this.handleTree(response.data.list, "proId"); this.key = response.data.key; this.projectOptions.push(project); - if (row) { - this.form.proParentId = row.proId; + if (row.proId) { + for (var i = 0; i < project.children.length; i++) { + if (project.children[i].proId === row.proId) { + this.form.proParentId = row.proId; + break; + } else { + this.form.proParentId = 0; + } + } + + this.open = true; + } else if (this.treeDate.id) { + for (var i = 0; i < project.children.length; i++) { + if (project.children[i].proId === this.treeDate.id) { + this.form.proParentId = this.treeDate.id; + break; + } else { + this.form.proParentId = 0; + } + } + + this.projectOptions.forEach((item) => { + item.children.forEach((item1) => { + if (this.form.proParentId == item1.proId) { + this.form.deptId = item1.deptId; + } + }); + }); this.open = true; } else { this.open = true; } } }); - + this.title = "浣撴椤圭洰淇℃伅缁存姢"; - if(this.queryParams.deptId){ + if (this.queryParams.deptId) { this.form.deptId = this.queryParams.deptId; - }else{ - this.form.deptId = null + } else { + this.form.deptId = null; } - - console.log(this.form.deptId) // this.form.proId = this.queryParams.proId; this.form.proCheckMethod = "N"; @@ -1113,6 +1261,8 @@ // 鎵撳紑input寮规 getDetailed() { + this.querycharge.xmmc = ""; + this.querycharge.pym = ""; if (this.selectList) { if (this.selectList.proName === "涓荤被鐩�") { this.dialogTableVisible = false; @@ -1137,6 +1287,9 @@ this.$message.error("璇烽�夋嫨涓婚」鍚嶇О"); } }, + changeType() { + this.$forceUpdate(); + }, obtain(vals) { if (this.projectOptions) { @@ -1146,6 +1299,7 @@ this.showPrise = true; this.showRentPrise = false; } else { + this.form.deptId = this.selectList.deptId; this.showPrise = false; this.showRentPrise = true; } @@ -1155,6 +1309,7 @@ this.List = true; listSfxm(this.querycharge).then((response) => { this.sfxmList = response.rows; + response.rows.forEach((item, index) => { item.newID = (this.querycharge.pageNum - 1) * this.querycharge.pageSize + @@ -1163,6 +1318,12 @@ }); this.total = response.total; this.loading = false; + }); + }, + + Synchronizationfees() { + tbhisproprice().then((response) => { + this.$modal.msgSuccess("鎵归噺鍚屾璐圭敤鎴愬姛"); }); }, // input寮规鎼滅储 @@ -1174,6 +1335,7 @@ handleNodecharge(data) { this.queryParam.id = data.id; + this.List = false; this.getListByXmId(); }, @@ -1222,7 +1384,6 @@ getDeptList() { listDept(this.queryParams).then((response) => { this.parentNameList = response.data; - console.log(this.parentNameList) this.deptList = this.handleTree(response.data, "proId"); }); }, @@ -1232,6 +1393,19 @@ this.deptOptions = response.data; this.treeId.push(this.deptOptions[0].id); }); + }, + + renderContent(h, { node, data }) { + return h( + "span", + { + style: { + color: data.status === "1" ? "red" : "inherit", // 鍔ㄦ�佽缃鑹� + fontSize: "14px", + }, + }, + data.label // 鏄剧ず鑺傜偣鐨� label + ); }, // 绛涢�夎妭鐐� @@ -1246,6 +1420,7 @@ }, // 鑺傜偣鍗曞嚮浜嬩欢 handleNodeClick(date) { + this.treeDate = date; if (date.qf == "0") { this.xiugais = true; } else { @@ -1339,6 +1514,7 @@ consumablesList: [], tjStandardList: [], proStatus: "0", + resultType: "1", }; this.resetForm("form"); }, @@ -1472,8 +1648,8 @@ handleUpdate1() { this.open = true; this.form = this.xiugaiList; - // console.log( this.form ) - this.proParent = true + this.form.proStatus = this.form.proStatus.toString(); + this.proParent = true; // if(){ // this.proParent = true // } @@ -1486,7 +1662,7 @@ this.key = response.data.key; this.projectOptions.push(project); } - }) + }); }, /** 淇敼鎸夐挳鎿嶄綔 */ handleUpdate(row) { @@ -1494,10 +1670,10 @@ this.getData(); // this.form = row; const proId = row.proId || this.ids; - this.proParent =false + this.proParent = false; getProject(proId).then((response) => { + console.log(response, 999); this.form = response.data; - console.log( this.form) if (this.form.proParentId === "0") { this.showPrise = true; this.showRentPrise = false; @@ -1549,21 +1725,20 @@ }); } getlist().then((response) => { - if (response.code == 200) { - this.loading = false; - this.projectOptions = []; - const project = { proId: 0, proName: "涓荤被鐩�", children: [] }; - project.children = this.handleTree(response.data.list, "proId"); - this.key = response.data.key; - this.projectOptions.push(project); - } - }) + if (response.code == 200) { + this.loading = false; + this.projectOptions = []; + const project = { proId: 0, proName: "涓荤被鐩�", children: [] }; + project.children = this.handleTree(response.data.list, "proId"); + this.key = response.data.key; + this.projectOptions.push(project); + } + }); this.open = true; this.title = "浣撴椤圭洰淇℃伅缁存姢"; }); }, changeValue(value) { - console.log(value) // this.form.deptName = value; this.form.deptId = value; }, @@ -1634,8 +1809,13 @@ this.form.lisXmbm = this.form.lisXmbm; updateProject(this.form).then((response) => { this.$modal.msgSuccess("淇敼鎴愬姛"); - this.cancel(); - this.getList(); + if (this.proParent == true) { + this.getDeptTree(); + this.cancel(); + } else { + this.cancel(); + this.getList(); + } }); } else { if (this.form.proParentId === 0) { @@ -1698,8 +1878,13 @@ this.form.lisXmbm = this.form.lisXmbm; updateProject(this.form).then((response) => { this.$modal.msgSuccess("淇敼鎴愬姛"); - this.cancel(); - this.getList(); + if (this.proParent == true) { + this.getDeptTree(); + this.cancel(); + } else { + this.cancel(); + this.getList(); + } }); } else { if (this.form.proParentId === 0) { @@ -1728,8 +1913,10 @@ // 鏀惰垂椤圭洰纭 submit() { this.ChangeList.forEach((item) => { - this.form.proName = item.xmmc; this.form.proPrice = item.ckdj; + this.form.hisXmbm = item.xmbm; + this.form.hisXmmc = item.xmmc; + this.form.hisdj = item.ckdj; this.sfxmId = parseInt(item.id); }); this.dialogTableVisible = false; @@ -1768,8 +1955,25 @@ }; </script> <style scoped> +.scrollable-container { + width: 200px; /* 璁剧疆瀹瑰櫒鐨勫搴� */ + height: 629px; /* 璁剧疆瀹瑰櫒鐨勯珮搴� */ + overflow: auto; /* 鍏佽鍐呭婧㈠嚭鏃舵樉绀烘粴鍔ㄦ潯 */ + border: 1px solid #ccc; /* 鍙�夛細娣诲姞杈规浠ユ洿濂藉湴鏄剧ず瀹瑰櫒 */ + position: relative; /* 鍙�夛細浣垮鍣ㄥ唴鐨勭粷瀵瑰畾浣嶅厓绱犺兘澶熸纭樉绀� */ +} + +.content { + width: 1000px; /* 璁剧疆鍐呭鐨勫搴︼紝浠ヨЕ鍙戞按骞虫粴鍔ㄦ潯 */ + height: 1000px; /* 璁剧疆鍐呭鐨勯珮搴︼紝浠ヨЕ鍙戝瀭鐩存粴鍔ㄦ潯 */ +} + .el-table__header-wrapper .el-checkbox { display: none; +} + +.red-text { + color: red !important; } .pag { @@ -1795,11 +1999,13 @@ background-color: #e5f3ff !important; color: #333 !important; } + .el-scrollbar__bar.is-vertical { opacity: 1; padding-right: 5px; width: 7px; } + .el-scrollbar__wrap { overflow-x: hidden; } -- Gitblit v1.8.0