From 155a30a172e4cf04838dcf7c8bb73ce6b200e574 Mon Sep 17 00:00:00 2001 From: qx <1084500556@qq.com> Date: 星期三, 26 三月 2025 14:52:54 +0800 Subject: [PATCH] Merge branch 'master' of http://101.42.27.146:5001/r/ltkj_peisweb_region --- src/views/doctor/checkAll/index.vue | 156 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 151 insertions(+), 5 deletions(-) diff --git a/src/views/doctor/checkAll/index.vue b/src/views/doctor/checkAll/index.vue index a329d02..eac26ad 100644 --- a/src/views/doctor/checkAll/index.vue +++ b/src/views/doctor/checkAll/index.vue @@ -740,10 +740,10 @@ <!-- 鍔ㄦ�佸缓璁粍 --> <div v-for="(advice, index) in newItem.map" :key="index" class="advice-group"> <el-form-item label="寤鸿鏍囬" :prop="'map.' + index + '.bt'"> - <el-input v-model="advice.bt" placeholder="璇疯緭鍏ュ缓璁爣棰�" clearable></el-input> + <el-input v-model="advice.bt" placeholder="璇疯緭鍏ュ缓璁爣棰�" clearable @focus="tan"></el-input> </el-form-item> <el-form-item label="寤鸿鍐呭" :prop="'map.' + index + '.nr'"> - <el-input v-model="advice.nr" type="textarea" rows="3" placeholder="璇疯緭鍏ュ缓璁唴瀹�" resize="none"></el-input> + <el-input v-model="advice.nr" type="textarea" rows="3" placeholder="璇疯緭鍏ュ缓璁唴瀹�" resize="none" @focus="tan"></el-input> </el-form-item> <el-button v-if="index > 0" type="danger" size="small" @click="removeAdvice(index)" style="margin-left: 100px; margin-bottom: 10px;">鍒犻櫎</el-button> @@ -756,6 +756,36 @@ <span slot="footer" class="dialog-footer"> <el-button @click="addNewDialogVisible = false">鍙栨秷</el-button> <el-button type="primary" @click="submitNewItem">纭畾</el-button> + </span> + </el-dialog> + <el-dialog title="蹇嵎寤鸿閫夋嫨" :visible.sync="showjianyi" width="1000px" class="custom-dialog"> + <!-- 娣诲姞绛涢�変笅鎷夋 --> + <div style="margin-bottom: 15px;"> + <el-form :inline="true"> + <el-form-item label="绉戝"> + <el-select v-model="queryParams1.ks" placeholder="璇烽�夋嫨鎴栬緭鍏ョ瀹�" clearable filterable allow-create + style="width: 200px" @change="filterAdvices(true)"> + <el-option v-for="dept in deptList" :key="dept" :label="dept" :value="dept" /> + </el-select> + </el-form-item> + </el-form> + </div> + + <el-table :data="advicerulesList" ref="adviceTable" border highlight-current-row + @current-change="handleCurrentChangeAdvice" style="max-height: 400px; overflow-y: auto;"> + <el-table-column label="绉戝" prop="ks" width="100" align="center" /> + <el-table-column label="寤鸿鍚嶇О" prop="jymc" align="center" /> + <el-table-column label="寤鸿鍐呭" prop="jynr" align="center" /> + </el-table> + + + + <!-- 鍒嗛〉缁勪欢 --> + <pagination v-show="total1 > 0" :total="total1" :page.sync="queryParams1.pageNum" + :limit.sync="queryParams1.pageSize" @pagination="filterAdvices(false)" /> + <span slot="footer" class="dialog-footer"> + <el-button @click="showjianyi = false">鍙栨秷</el-button> + <el-button type="primary" @click="applySelectedAdvice" :disabled="!selectedAdvice">纭畾</el-button> </span> </el-dialog> <Packages ref="bbb" :baogao="baogao" /> @@ -804,7 +834,9 @@ import { getconfigKey } from "@/api/login"; import moment from "moment"; import { get } from "sortablejs"; - +import { + listAdvicerules, +} from "@/api/hosp/advicerules"; export default { components: { ViewPdf, @@ -829,6 +861,11 @@ name: "checkAll", data() { return { + deptList: [], // 鍘婚噸鍚庣殑绉戝鍒楄〃 + selectedAdvice: null, + activeAdviceIndex: 0, + advicerulesList: [], + showjianyi: false, addNewDialogVisible: false, newItem: { parentName: '', // 椤圭洰鍒嗙被锛屽搴旀ā鏉夸腑鐨� parentName @@ -973,6 +1010,12 @@ tjCategory: undefined, payType: undefined, }, + total1: 0, + queryParams1: { + pageNum: 1, + pageSize: 10, + ks: '' + }, status1: 0, // 0灞曠ず寮傚父1灞曠ず椤圭洰鎯呭喌 viewportHeight: 0, expends: [], @@ -993,6 +1036,76 @@ }); }, methods: { + handleCurrentChangeAdvice(currentRow) { + this.selectedAdvice = currentRow; // 瀛樺偍閫変腑鐨勫缓璁」 + }, + applySelectedAdvice() { + if (this.selectedAdvice) { + this.$set(this.newItem.map, this.activeAdviceIndex, { + bt: this.selectedAdvice.jymc, // 寤鸿鍚嶇О璧嬪�肩粰鏍囬 + nr: this.selectedAdvice.jynr // 寤鸿鍐呭璧嬪�肩粰鍐呭 + }); + this.showjianyi = false; // 鍏抽棴寮圭獥 + this.selectedAdvice = null; // 娓呯┖閫変腑椤� + } else { + this.$message.warning('璇峰厛閫夋嫨涓�鏉″缓璁�'); + } + }, + handleSelectionChange(selection) { + console.log(selection); + + }, + tan(event) { + this.activeAdviceIndex = event.target.closest('.advice-group') + ? Array.from(event.target.closest('.el-form').querySelectorAll('.advice-group')) + .indexOf(event.target.closest('.advice-group')) + : 0; // 鑾峰彇褰撳墠寤鸿缁勭殑绱㈠紩 + + // 纭繚 projectCategories 宸插姞杞� + if (!this.projectCategories || this.projectCategories.length === 0) { + cSWebGetPro(this.tjNumber).then((res) => { + if (res.data && Array.isArray(res.data)) { + this.projectCategories = res.data; + // 鎻愬彇鍘婚噸鍚庣殑绉戝鍒楄〃 + this.deptList = [...new Set(this.projectCategories.map(item => item.deptName))].filter(Boolean); + } else { + this.$message.warning('鏈幏鍙栧埌椤圭洰鍒嗙被鏁版嵁'); + this.projectCategories = []; + this.deptList = []; + } + }).catch((error) => { + console.error('鑾峰彇椤圭洰鍒嗙被澶辫触:', error); + this.$message.error('鑾峰彇椤圭洰鍒嗙被澶辫触'); + this.projectCategories = []; + this.deptList = []; + }); + } else { + // 濡傛灉 projectCategories 宸插姞杞斤紝鐩存帴鏇存柊 deptList + this.deptList = [...new Set(this.projectCategories.map(item => item.deptName))].filter(Boolean); + } + + // 閲嶇疆鍒嗛〉鍙傛暟 + this.queryParams1.pageNum = 1; + this.queryParams1.pageSize = 10; + + // 鍔犺浇蹇嵎寤鸿鍒楄〃 + this.filterAdvices(); + this.showjianyi = true; + }, + + // 涓嬫媺妗嗙瓫閫夊揩鎹峰缓璁紙鍖呭惈鍒嗛〉閫昏緫锛� + filterAdvices(resetPage = false) { + if (resetPage) { + this.queryParams1.pageNum = 1; // 鍒囨崲绉戝鏃堕噸缃〉鐮佷负 1 + } + listAdvicerules(this.queryParams1).then((response) => { + this.advicerulesList = response.rows; + this.total1 = response.total; + }).catch((error) => { + console.error('绛涢�夊揩鎹峰缓璁け璐�:', error); + this.$message.error('绛涢�夊揩鎹峰缓璁け璐�'); + }); + }, submitNewItem() { const data = { tjh: this.tableAll.tjNumber, // 浣撴鍙凤紝浠� tableAll 涓幏鍙� @@ -1046,6 +1159,10 @@ }, handleCategoryChange(value) { + + const selectedCategory = this.projectCategories.find(item => item.proName === value); + console.log(this.projectCategories, selectedCategory); + this.queryParams1.ks = selectedCategory.deptName || ''; if (value) { this.newItem.jcxm = value; // 灏嗛�夋嫨鐨勯」鐩垎绫昏祴鍊肩粰妫�娴嬮」鐩� } @@ -2292,10 +2409,20 @@ width: 100%; display: flex; justify-content: center; + /* 纭繚鍒嗛〉鍣ㄦ暣浣撳眳涓� */ + align-items: center; + /* 鍨傜洿灞呬腑 */ + margin-top: 15px; + /* 涓庤〃鏍肩殑闂磋窛 */ } .pag1 { - width: 30%; + width: auto; + /* 绉婚櫎鍥哄畾瀹藉害锛岃鍒嗛〉鍣ㄦ牴鎹唴瀹硅嚜閫傚簲 */ + min-width: 300px; + /* 璁剧疆鏈�灏忓搴︼紝纭繚鍒嗛〉鍣ㄤ笉浼氬お绐� */ + text-align: center; + /* 纭繚鍒嗛〉鍣ㄥ唴閮ㄥ厓绱犲眳涓� */ } .dialog-footers { @@ -2462,4 +2589,23 @@ } } } -</style> + +.dialog-pager { + display: flex; + justify-content: center; + /* 姘村钩灞呬腑 */ + align-items: center; + /* 鍨傜洿灞呬腑 */ + margin-top: 15px; + /* 涓庤〃鏍肩殑闂磋窛 */ + padding: 0 20px; + /* 澧炲姞鍐呰竟璺濓紝閬垮厤杩囦簬璐磋竟 */ + box-sizing: border-box; + /* 纭繚鍐呰竟璺濅笉褰卞搷瀹藉害 */ +} + +// .dialog-pager-inner { +// width: auto; /* 鑷�傚簲瀹藉害 */ +// min-width: 300px; /* 璁剧疆鏈�灏忓搴︼紝纭繚鍒嗛〉鍣ㄤ笉浼氬お绐� */ +// text-align: center; /* 纭繚鍒嗛〉鍣ㄥ唴閮ㄥ厓绱犲眳涓� */ +// }</style> -- Gitblit v1.8.0