From 009a117ddee0ec3e720f7535c210ef9a4a9f4c94 Mon Sep 17 00:00:00 2001 From: wwl <xchao828@163.com> Date: 星期一, 24 三月 2025 17:51:58 +0800 Subject: [PATCH] 总检审核 --- src/views/doctor/checkAll/index.vue | 205 +++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 190 insertions(+), 15 deletions(-) diff --git a/src/views/doctor/checkAll/index.vue b/src/views/doctor/checkAll/index.vue index a019722..a67e45e 100644 --- a/src/views/doctor/checkAll/index.vue +++ b/src/views/doctor/checkAll/index.vue @@ -96,20 +96,17 @@ </template> <!-- 鐐瑰嚮寮瑰嚭妗� --> - <el-drawer custom-class="tanchu" :visible.sync="drawer" :before-close="handleClose" :with-header="false" size="100%" - show-close="true"> - <div class="top"> - <table style=" - width: 100%; - margin: 10px 10px; - border: 1px solid #dfe6ec; - border-collapse: collapse; - " cellspacing="4"> - <caption style="background-color: #f8f8f9; font-size: 18px"> - {{ - tableAll.cusName - }}鐨勪綋妫�璧勬枡 - </caption> + <el-drawer custom-class="tanchu" + :visible.sync="drawer" + :before-close="handleClose" + :with-header="false" + size="100%" + :show-close="true"> + <div class="top"> + <table style="width: 100%; margin: 10px 10px; border: 1px solid #dfe6ec; border-collapse: collapse;" cellspacing="4"> + <caption style="background-color: #f8f8f9; font-size: 18px"> + {{ tableAll.cusName }}鐨勪綋妫�璧勬枡 + </caption> <tr style=" border: 1px solid #dfe6ec; border-collapse: collapse; @@ -502,6 +499,7 @@ </el-table> </div> </template> + <el-button type="primary" @click="addnew" :disabled="isdisabled">鏂板</el-button> </div> </div> </div> @@ -719,6 +717,50 @@ <el-button @click="jianqians = false">鍙� 娑�</el-button> </span> </el-dialog> + <el-dialog title="鏂板寮傚父缁撴灉" :visible.sync="addNewDialogVisible" width="900px" :before-close="handleAddNewClose" + class="custom-dialog"> + <el-form :model="newItem" ref="newItemForm" label-width="100px" class="custom-form"> + <el-form-item label="椤圭洰鍒嗙被" prop="parentName"> + <el-select v-model="newItem.parentName" placeholder="璇烽�夋嫨椤圭洰鍒嗙被" clearable filterable + @change="handleCategoryChange"> + <el-option v-for="item in projectCategories" :key="item.proId" :label="item.proName" + :value="item.proName" /> + </el-select> + </el-form-item> + <el-form-item label="妫�娴嬮」鐩�" prop="jcxm"> + <el-input v-model="newItem.jcxm" placeholder="璇疯緭鍏ユ娴嬮」鐩垨浠庡垎绫婚�夋嫨" clearable></el-input> + </el-form-item> + <el-form-item label="妫�娴嬬粨鏋�" prop="jcjg"> + <el-input v-model="newItem.jcjg" placeholder="璇疯緭鍏ユ娴嬬粨鏋�" clearable></el-input> + </el-form-item> + <el-form-item label="鍙傝�冭寖鍥�" prop="ckfw"> + <el-input v-model="newItem.ckfw" placeholder="璇疯緭鍏ュ弬鑰冭寖鍥�" clearable></el-input> + </el-form-item> + <el-form-item label="鍗曚綅" prop="dw"> + <el-input v-model="newItem.dw" placeholder="璇疯緭鍏ュ崟浣�" clearable></el-input> + </el-form-item> + + <!-- 鍔ㄦ�佸缓璁粍 --> + <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-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-form-item> + <el-button v-if="index > 0" type="danger" size="small" @click="removeAdvice(index)" + style="margin-left: 100px; margin-bottom: 10px;">鍒犻櫎</el-button> + </div> + + <el-form-item> + <el-button type="primary" size="small" @click="addAdvice" style="margin-left: 100px;">娣诲姞寤鸿</el-button> + </el-form-item> + </el-form> + <span slot="footer" class="dialog-footer"> + <el-button @click="addNewDialogVisible = false">鍙栨秷</el-button> + <el-button type="primary" @click="submitNewItem">纭畾</el-button> + </span> + </el-dialog> <Packages ref="bbb" :baogao="baogao" /> <Prescription ref="Pre" :preObj="preObj" /> <proposal ref="proposal" :cusobj="cusobj" @event1="eventchange($event)" /> @@ -749,6 +791,7 @@ getModified, isPdfOrJimu, addOrder, + addOrder1 } from "@/api/doctor/checkAll"; import { getInfoById } from "@/api/hosp/history"; import { getInfo } from "@/api/login"; @@ -789,6 +832,19 @@ name: "checkAll", data() { return { + addNewDialogVisible: false, + newItem: { + parentName: '', // 椤圭洰鍒嗙被锛屽搴旀ā鏉夸腑鐨� parentName + jcxm: '', // 妫�娴嬮」鐩紝瀵瑰簲妯℃澘涓殑 jcxm + jcjg: '', // 妫�娴嬬粨鏋滐紝瀵瑰簲妯℃澘涓殑 jcjg + ckfw: '', // 鍙傝�冭寖鍥达紝瀵瑰簲妯℃澘涓殑 ckfw + dw: '', // 鍗曚綅锛屽搴旀ā鏉夸腑鐨� dw + map: [{ // 寤鸿鍒楄〃锛屽搴旀ā鏉夸腑鐨勫姩鎬佸缓璁粍 map + bt: '', // 寤鸿鏍囬锛屽搴旀ā鏉夸腑鐨� map[index].bt + nr: '' // 寤鸿鍐呭锛屽搴旀ā鏉夸腑鐨� map[index].nr + }] + }, + projectCategories: [], // 鏇存柊鎬绘寤鸿 emptyAdvice: { bt: "", @@ -940,6 +996,82 @@ }); }, methods: { + submitNewItem() { + const data = { + tjh: this.tableAll.tjNumber, // 浣撴鍙凤紝浠� tableAll 涓幏鍙� + parentName: this.newItem.parentName, + jcxm: this.newItem.jcxm, + jcjg: this.newItem.jcjg, + ckfw: this.newItem.ckfw, + dw: this.newItem.dw, + map: this.newItem.map, + jyjc: this.newItem.ckfw ? "0" : "1" + }; + + addOrder1(data).then((res) => { + console.log(res); + if (res.code === 200) { + this.$message.success('鏂板寮傚父缁撴灉鎴愬姛'); + this.addNewDialogVisible = false; + this.yichangjieguo(); + } else { + this.$message.error('鏂板澶辫触'); + } + }).catch((error) => { + console.error('鏂板寮傚父缁撴灉澶辫触:', error); + this.$message.error('鏂板寮傚父缁撴灉澶辫触'); + }); + }, + addnew() { + this.newItem = { + parentName: '', + jcxm: '', + jcjg: '', + ckfw: '', + dw: '', + map: [{ bt: '', nr: '' }] + }; + this.addNewDialogVisible = true; + + cSWebGetPro(this.tjNumber).then((res) => { + console.log(res); + if (res.data && Array.isArray(res.data)) { + this.projectCategories = res.data; + } else { + this.$message.warning('鏈幏鍙栧埌椤圭洰鍒嗙被鏁版嵁'); + this.projectCategories = []; + } + }).catch((error) => { + console.error('鑾峰彇椤圭洰鍒嗙被澶辫触:', error); + this.$message.error('鑾峰彇椤圭洰鍒嗙被澶辫触'); + this.projectCategories = []; + }); + }, + + handleCategoryChange(value) { + if (value) { + this.newItem.jcxm = value; // 灏嗛�夋嫨鐨勯」鐩垎绫昏祴鍊肩粰妫�娴嬮」鐩� + } + }, + + handleAddNewClose(done) { + // this.$confirm('纭畾鍏抽棴鏂板绐楀彛鍚楋紵鏈繚瀛樼殑鏁版嵁灏嗕涪澶便��') + // .then(() => done()) + // .catch(() => { }); + }, + + // 娣诲姞鏂扮殑寤鸿缁� + addAdvice() { + this.newItem.map.push({ bt: '', nr: '' }); + }, + + removeAdvice(index) { + if (this.newItem.map.length > 1) { + this.newItem.map.splice(index, 1); + } else { + this.$message.warning('鑷冲皯淇濈暀涓�缁勫缓璁�'); + } + }, shanchu(row) { shanchu({ id: row.orderDetailId, @@ -993,7 +1125,7 @@ }, getRowKeys(row) { - return row.proId; + return row.orderDetailId; }, // 椤圭洰鎯呭喌 xiangmuqingkuang() { @@ -2282,4 +2414,47 @@ ::v-deep .el-drawer { padding: 0 0 50px; } + +.custom-dialog { + ::v-deep .el-dialog__header { + padding: 15px 20px; + background-color: #f5f7fa; + border-bottom: 1px solid #e8ecef; + } + + ::v-deep .el-dialog__title { + font-size: 18px; + color: #303133; + font-weight: 600; + } + + ::v-deep .el-dialog__body { + padding: 20px; // 澧炲姞鍐呰竟璺� + background-color: #fff; + } + + ::v-deep .el-dialog__footer { + padding: 10px 20px; + border-top: 1px solid #e8ecef; + text-align: right; + } + + .custom-form { + .advice-group { + border: 1px solid #e8ecef; + border-radius: 4px; + padding: 10px; + margin-bottom: 15px; + background-color: #f9fbfc; + + .el-form-item { + margin-bottom: 15px; + } + + .el-button { + margin-top: 5px; + } + } + } +} </style> -- Gitblit v1.8.0