From 5fc42c5d825592f2c04ca284f4360f9bbad62174 Mon Sep 17 00:00:00 2001 From: lkk <364857242@qq.com> Date: 星期四, 12 六月 2025 16:53:45 +0800 Subject: [PATCH] 11 --- src/views/doctor/examination/index.vue | 355 ++++++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 277 insertions(+), 78 deletions(-) diff --git a/src/views/doctor/examination/index.vue b/src/views/doctor/examination/index.vue index d388efc..b0650ab 100644 --- a/src/views/doctor/examination/index.vue +++ b/src/views/doctor/examination/index.vue @@ -52,6 +52,15 @@ /> </el-select> </el-form-item> + <el-form-item label="椤圭洰" prop="tcm"> + <el-input + v-model="queryParams.tcm" + placeholder="璇疯緭鍏ヤ綋妫�鍙�" + clearable + @keyup.enter.native="handleQuery" + style="width: 170px" + /> + </el-form-item> <el-form-item label="鐧昏鏃堕棿" prop="createTimeList"> <el-date-picker v-model="createTimeList" @@ -92,7 +101,7 @@ </el-radio-group> <div style="width: 100%; margin-left: 10px; display: flex"> - <div style="width: 40.5%; margin-right: 20px"> + <div style="width: 45%"> <el-table id="ta" v-loading="loading" @@ -109,19 +118,19 @@ label="浣撴鍙�" align="center" prop="tjNumber" - width="160px" + min-width="160" /> <el-table-column label="濮撳悕" align="center" prop="cusName" - width="80px" + min-width="80" /> <el-table-column label="鎬у埆" align="center" prop="cusSex" - width="50px" + min-width="50" > <template slot-scope="scope"> <span v-if="scope.row.cusSex == '0'">鐢�</span> @@ -136,23 +145,35 @@ <!-- </template> --> </el-table-column> <el-table-column + label="骞撮緞" + align="center" + prop="age" + min-width="100" + /> + <el-table-column label="鎵嬫満鍙�" align="center" prop="cusPhone" - width="100px" + min-width="100" + /> + <el-table-column + label="濂楅鍚�" + align="center" + prop="tcm" + min-width="100" /> <el-table-column label="鐧昏鏃堕棿" align="center" prop="tjTime" - width="120px" + min-width="120" /> <el-table-column v-if="checkStatus == '1'" label="瀹℃牳鐘舵��" align="center" prop="confirmStatus" - width="80px" + min-width="80" > <template slot-scope="scope"> <span @@ -174,17 +195,13 @@ </template> </el-table-column> <!-- v-hasPermi="['reservation:reservation:edit']" --> - <el-table-column label="鎿嶄綔" align="center" width="120px"> + <el-table-column label="鎿嶄綔" align="center" min-width="120px"> <template slot-scope="scope"> - <el-button - size="mini" - type="text" - @click="tongbu(scope.row)" - disabled + <el-button size="mini" type="text" @click="tongbu(scope.row)" >鍚屾</el-button > <!-- :disabled="dis" --> - <el-button + <!-- <el-button disabled size="mini" type="text" @@ -198,7 +215,7 @@ disabled @click="bohui(scope.row)" >椹冲洖</el-button - > + > --> </template> <!-- v-show=" (xianshi == 'Y' || xianshi == 'y') && @@ -208,9 +225,9 @@ </el-table-column> </el-table> </div> - <div style="width: 38%"> + <div style="width: 45%; margin-left: 5%"> <el-table - v-loading="loading" + v-loading="loadingR" border :row-class-name="tableRowClassName" height="520" @@ -224,14 +241,14 @@ label="绉戝" align="center" prop="deptName" - width="100" + min-width="100" :show-overflow-tooltip="true" /> <el-table-column label="椤圭洰" align="center" prop="proName" - width="150" + min-width="150" :show-overflow-tooltip="true" /> <el-table-column @@ -239,7 +256,7 @@ align="center" prop="type" :show-overflow-tooltip="true" - width="100" + min-width="100" > <template slot-scope="scope"> <span @@ -283,7 +300,7 @@ label="妫�鏌ユ椂闂�" align="center" prop="bcupdateTime" - width="160" + min-width="160" /> <!-- <el-table-column label="淇濆瓨鍖荤敓" @@ -297,22 +314,31 @@ prop="zhupdateTime" width="160" /> --> - <el-table-column label="鎿嶄綔" align="center" width="120px"> + <el-table-column label="鎿嶄綔" align="center" min-width="120px"> <template slot-scope="scope"> <el-button size="mini" type="text" :disabled="scope.row.type === 1" + :loading="scope.row.isLoading" @click="qijian(scope.row)" - >寮冩</el-button + >{{ scope.row.type === 0 ? "寮冩" : "鎭㈠" }}</el-button > <el-button size="mini" type="text" - :disabled="scope.row.type === 0" - @click="queryResultone(scope.row)" - >缁撴灉鏌ヨ</el-button + @click="yijian(scope.row)" + v-if="yijiantype == 'N'" + >宸叉</el-button > + <el-button + size="mini" + type="text" + :disabled="scope.row.type === 0 || scope.row.type === 2" + @click="queryResultone(scope.row)" + >缁撴灉</el-button + > + <!-- --> <!-- @click="chaxun(scope.row) " --> </template> </el-table-column> @@ -321,9 +347,7 @@ </div> <el-drawer title="鎴戞槸鏍囬" :visible.sync="drawer" :with-header="false"> - <div - style="text-align: center; background-color: #aad8df; margin-top: 10px" - > + <div style="text-align: center; background-color: #aad8df"> {{ name || "" }} </div> <div class="a"> @@ -331,6 +355,7 @@ <el-table :data="jieguoList" border + :row-style="changRed" style="width: 100%" :header-cell-style="{ background: '#AAD8DF' }" > @@ -339,42 +364,41 @@ <el-table-column label="妫�娴嬬粨鏋�" prop="pro_result"> </el-table-column> <el-table-column label="鍙傝�冭寖鍥�" prop="ckfw"> </el-table-column> + <el-table-column label="寮傚父鏍囧織" prop="ycbz"> + <template slot-scope="scope"> + {{ scope.row.ycbz == 0 ? "姝e父" : "寮傚父" }} + </template> + </el-table-column> </el-table> </div> <div v-if="jyjc == 1"> - <div - style=" - text-align: center; - background-color: #aad8df; - " - ></div> + <div style="text-align: center; background-color: #aad8df"></div> <div class="check-result-container"> <div class="check-item"> <div class="check-title">妫�鏌ユ墍瑙侊細</div> - <div class="check-description"> + <div + class="check-description" + :style="{ color: isRed ? 'red' : '' }" + > {{ jieguoList[0].pro_result }} </div> </div> <div class="check-item"> <div class="check-title">妫�鏌ョ粨璁猴細</div> - <div class="check-description"> + <div + class="check-description" + :style="{ color: isRed ? 'red' : '' }" + > {{ jieguoList[0].yxzd || "鏆傛棤缁撹" }} </div> </div> </div> - <!-- <div style="padding: 0 10px; margin-bottom: 10px; margin-top: 10px"> - <div style="font-weight: bold">妫�鏌ユ墍瑙侊細</div> - <div>{{ jieguoList[0].pro_result }}</div> - - <div style="font-weight: bold; margin-top: 10px">妫�鏌ョ粨璁猴細</div> - <div>{{ jieguoList[0].yxzd || "鏆傛棤缁撹" }}</div> - </div> --> </div> </div> </el-drawer> - + <div class="pag"> <div class="pag1"> <!-- <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :pager-count="5" :current-page.sync="currentPage1" :current-page="page" @@ -390,6 +414,48 @@ /> </div> </div> + + <el-dialog :visible.sync="open" width="980px" append-to-body> + <el-form + ref="form" + :model="form" + label-width="98px" + @submit.native.prevent + > + <el-form-item label="寮冩" prop="isZybUnit"> + <el-radio-group v-model="form.isZybUnit"> + <el-radio :label="0">鑷姩寮冩</el-radio> + <el-radio :label="1">鍏朵粬</el-radio> + </el-radio-group> + </el-form-item> + <!-- filterable --> + <el-form-item + label="寮冩鍘熷洜" + prop="yy" + style="margin-left: 20px" + v-if="form.isZybUnit == 1" + > + <el-select + v-model="form.yy" + placeholder="璇烽�夋嫨寮冩鍘熷洜" + clearable + style="width: 150px" + > + <el-option + v-for="dict in dict.type.qj_type" + :key="dict.value" + :label="dict.label" + :value="dict.label" + /> + </el-select> + </el-form-item> + <br /> + </el-form> + <div slot="footer" class="dialog-footer"> + <el-button type="primary" @click="submitFormqijian">纭� 瀹�</el-button> + <el-button @click="cancel">鍙� 娑�</el-button> + </div> + </el-dialog> </div> </template> @@ -401,26 +467,33 @@ cSWebGetPro, dataSynchronization, qijian, + yijian, resultList, typeOne, + huifu, + csymxmxzqtyybcjk, } from "@/api/doctor/examination"; import { getCompany, queryCompany } from "@/api/team/tuanti"; import { getNewDateList } from "@/api/hosp/order"; import moment from "moment"; export default { - dicts: ["dict_tj_status"], + dicts: ["dict_tj_status", "qj_type"], data() { return { jieguoList: [], jyjc: null, dis: false, + isLoading: false, + open: false, createTimeList: "", currentRow: null, total: 0, loading: true, + loadingR: false, selectedTjNumber: "", drawer: false, + yijiantype: null, type: null, CompanyList: [], CheckBox: {}, @@ -434,6 +507,7 @@ name: null, beginTime: null, endTime: null, + tcm: "", tjCompName: "", }, // 缁戝畾鍗曢�夋寜閽� @@ -441,6 +515,7 @@ exaList: [], // 琛ㄥ崟鍙傛暟 xianshi: "", + rowProId: "", name: "", form: {}, clearTimeSet: null, @@ -496,21 +571,28 @@ }); }, methods: { - red() { - return { - color: "red", - }; + changRed({ row }) { + if (row.ycbz != "" && row.ycbz != null && row.ycbz === 1) { + // 鍙橀鑹茬殑鏉′欢 + return { + color: "red", // 杩欎釜return鐨勫氨鏄牱寮� 鍙互鏄痗olor 涔熷彲浠ユ槸backgroundColor + }; + } }, getdate() { getConfigKey("tj_confirm").then((res) => { this.xianshi = res.msg; - console.log(this.xianshi, 999); + // console.log(this.xianshi, 999); }); getNewDateList().then((res) => { - this.createTimeList = [ - moment(res.data).format("YYYY-MM-DD 00:00:00"), - moment(res.data).format("YYYY-MM-DD 23:59:00"), - ]; + // console.log(res,222); + + // this.createTimeList = [ + // moment(res.data).format("YYYY-MM-DD 00:00:00"), + // moment(res.data).format("YYYY-MM-DD 23:59:00"), + // ]; + // console.log(this.createTimeList,8855); + this.getList(); }); }, @@ -552,7 +634,7 @@ // 閫夋鏁版嵁 searchSelect(val) { this.CheckBox = val; - console.log(this.CheckBox, 9999); + // console.log(this.CheckBox, 9999); }, getList() { this.loading = true; @@ -569,15 +651,15 @@ // 鑾峰彇鍗曚綅淇℃伅闆嗗悎 getCompany(this.queryParam).then((response) => { this.CompanyList = response.data; - console.log(this.CompanyList, 555); + // console.log(this.CompanyList, 555); - this.loading = false; + // this.loading = false; }); getCsList(this.queryParams).then((res) => { if (res.code == 200) { - this.loading = false; if (res.data) { + this.loading = false; this.exaList = res.data.customers; this.total = res.data.total; if (this.exaList.length != 0) { @@ -686,6 +768,7 @@ beginTime: null, endTime: null, tjCompName: "", + tcm: "", }), (this.CheckBox.drugManufacturerId = ""); this.handleQuery(); @@ -729,20 +812,22 @@ } }, handleCurrentChange(val) { + this.loadingR = true; this.currentRow = val; let tjNumber = val.tjNumber; this.selectedTjNumber = val.tjNumber; - console.log(this.currentRow, 4455); typeOne(tjNumber).then((res) => { this.type = res.data; - console.log(res, 3322); + }); + + getConfigKey("sfyccsyjan").then((res) => { + this.yijiantype = res.msg; }); cSWebGetPro(tjNumber).then((res) => { + this.loadingR = false; this.xiangmuList = res.data; - console.log(this.xiangmuList, 999); - this.xiangmuList.forEach((item) => { // console.log(item); // if (item.type == 0) { @@ -776,26 +861,110 @@ }); }, + cancel() { + this.open = false; + }, + + submitFormqijian() { + if (this.form.isZybUnit == 0) { + const tjNUm = this.selectedTjNumber; + const proId = this.rowProId; + + qijian(tjNUm, proId).then((res) => { + if (res.code == 200) { + this.open = false; + cSWebGetPro(tjNUm).then((res) => { + if (res.code === 200) { + // 鏇存柊鍙宠竟琛ㄦ牸鐨勬暟鎹� + this.xiangmuList = res.data; + this.isLoading = false; + } + }); + } + }); + } else { + if (this.form.yy != null) { + let data = { + tjNum: this.selectedTjNumber, + proId: this.rowProId, + yy: this.form.yy, + }; + csymxmxzqtyybcjk(data).then((res) => { + if (res.code == 200) { + cSWebGetPro(this.selectedTjNumber).then((res) => { + if (res.code === 200) { + this.open = false; + // 鏇存柊鍙宠竟琛ㄦ牸鐨勬暟鎹� + this.xiangmuList = res.data; + this.isLoading = false; + } + }); + } + }); + } else { + this.$modal.msgError("璇烽�夋嫨寮冩鍘熷洜"); + } + } + }, + // 寮冩鎸夐挳 qijian(row) { const tjNUm = this.selectedTjNumber; const proId = row.proId; - - qijian(tjNUm, proId).then((res) => { - if (res.code == 200) { - cSWebGetPro(tjNUm).then((res) => { - if (res.code === 200) { - // 鏇存柊鍙宠竟琛ㄦ牸鐨勬暟鎹� - this.xiangmuList = res.data; - } - }); - } - }); + this.rowProId = row.proId; + row.isLoading = true; + if (row.type == "2") { + huifu(tjNUm, proId).then((res) => { + if (res.code == 200) { + cSWebGetPro(tjNUm).then((res) => { + if (res.code === 200) { + // 鏇存柊鍙宠竟琛ㄦ牸鐨勬暟鎹� + this.xiangmuList = res.data; + row.isLoading = false; + } + }); + } + }); + } else { + this.open = true; + this.form = {}; + // qijian(tjNUm, proId).then((res) => { + // if (res.code == 200) { + // cSWebGetPro(tjNUm).then((res) => { + // if (res.code === 200) { + // // 鏇存柊鍙宠竟琛ㄦ牸鐨勬暟鎹� + // this.xiangmuList = res.data; + // this.isLoading = false + // } + // }); + // } + // }); + } }, - chaxun() {}, + yijian(row) { + const tjNUm = this.selectedTjNumber; + const proId = row.proId; + row.isLoading = true; + yijian(tjNUm, proId) + .then((res) => { + if (res.code == 200) { + this.$modal.msgSuccess("宸叉鎴愬姛"); + cSWebGetPro(tjNUm).then((res) => { + if (res.code === 200) { + this.xiangmuList = res.data; + row.isLoading = false; + } + }); + } + }) + .catch(() => { + row.isLoading = false; + }); + }, handleRowClick(row, column, event) { - console.log(row, 2323); + // console.log(row, 2323); this.name = row.proName; + // console.log(this.name, 99999); }, queryResultone(row) { // 鎵撳紑鎶藉眽 @@ -804,6 +973,18 @@ resultList(tjNum, proId).then((res) => { this.jieguoList = res.data; this.jyjc = this.jieguoList[0].jyjc; + const ycbz = this.jieguoList[0].ycbz; + /* if (ycbz === "" || ycbz === null) { + return; + } */ + + // 璁剧疆鏄惁闇�瑕佹敼鍙橀鑹� + if (ycbz === "1") { + this.isRed = true; // 璁剧疆鏍囪瘑锛屾敼鍙樺瓧浣撻鑹� + console.log(this.isRed, 444); + } else { + this.isRed = false; // 鎭㈠榛樿棰滆壊 + } if (res.data.length > 0) { this.drawer = true; @@ -819,14 +1000,12 @@ }, 300000); }, tongbu(row) { - // this.$refs.tb.toggleRowSelection(row); this.$modal.loading("姝e湪鍚屾锛岃绋嶅��..."); this.setTime(); let tjNumber = row.tjNumber; dataSynchronization(tjNumber) .then((res, error) => { if (res.code == 200) { - // this.$forceUpdate(); this.handleCurrentChange(row); clearInterval(this.clearTimeSet); this.clearTimeSet = null; @@ -882,6 +1061,9 @@ display: flex; justify-content: center; } +.red-text { + color: red !important; +} .pag1 { width: 30%; @@ -920,4 +1102,21 @@ .check-description.no-result { color: #bbb; /* 濡傛灉娌℃湁缁撹锛屾枃瀛椾负娣$伆鑹� */ } + +::v-deep .el-table { + width: 100% !important; +} + +::v-deep .el-table__body { + width: 100% !important; +} + +::v-deep .el-table__header { + width: 100% !important; +} + +/* 濡傛灉闇�瑕侀殣钘忔í鍚戞粴鍔ㄦ潯 */ +::v-deep .el-table__body-wrapper::-webkit-scrollbar-horizontal { + display: none; +} </style> \ No newline at end of file -- Gitblit v1.8.0