From 908b911ba632dd90922910cf692156d852ab404f Mon Sep 17 00:00:00 2001 From: su1124 <1583764726@qq.com> Date: 星期四, 28 十二月 2023 15:45:17 +0800 Subject: [PATCH] su --- src/views/system/biol/index.vue | 489 +++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 335 insertions(+), 154 deletions(-) diff --git a/src/views/system/biol/index.vue b/src/views/system/biol/index.vue index ee71150..1afa888 100644 --- a/src/views/system/biol/index.vue +++ b/src/views/system/biol/index.vue @@ -1,18 +1,45 @@ <template> <div class="app-container"> - <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"> + <el-form + :model="queryParams" + ref="queryForm" + size="small" + :inline="true" + v-show="showSearch" + label-width="68px" + > <el-form-item label="濮撳悕" prop="name"> - <el-input v-model="queryParams.name" placeholder="璇疯緭鍏ュ鍚�" style="width:100px" - @keyup.enter.native="handleQuery" /> + <el-input + v-model="queryParams.name" + placeholder="璇疯緭鍏ュ鍚�" + style="width: 100px" + @keyup.enter.native="handleQuery" + /> </el-form-item> <el-form-item label="浣撴鍙�" prop="tjNum"> - <el-input style="width:170px" v-model="queryParams.tjNum" placeholder="璇疯緭鍏ヤ綋妫�鍙�" clearable - @keyup.enter.native="handleQuery" ref="inputName" @blur="handleQuery" /> + <el-input + style="width: 170px" + v-model="queryParams.tjNum" + placeholder="璇疯緭鍏ヤ綋妫�鍙�" + clearable + @keyup.enter.native="handleQuery" + ref="inputName" + @blur="handleQuery" + /> </el-form-item> <el-form-item label="鎶ュ憡鏃堕棿" prop="reportTimeList"> - <el-date-picker clearable v-model="queryParams.reportTimeList" type="daterange" range-separator="-" - start-placeholder="寮�濮嬫棩鏈�" end-placeholder="缁撴潫鏃ユ湡" :picker-options="pickerOptions" value-format="yyyy-MM-dd" - placeholder="璇烽�夋嫨鍑烘姤鍛婃椂闂�" style="width: 240px"> + <el-date-picker + clearable + v-model="queryParams.reportTimeList" + type="daterange" + range-separator="-" + start-placeholder="寮�濮嬫棩鏈�" + end-placeholder="缁撴潫鏃ユ湡" + :picker-options="pickerOptions" + value-format="yyyy-MM-dd" + placeholder="璇烽�夋嫨鍑烘姤鍛婃椂闂�" + style="width: 240px" + > </el-date-picker> </el-form-item> <!-- <el-form-item label="鍗曚綅鍚嶇О" prop="firmId"> @@ -23,26 +50,47 @@ </el-select> </el-form-item> --> - <el-form-item> - <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">鎼滅储</el-button> - <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">閲嶇疆</el-button> + <el-button + type="primary" + icon="el-icon-search" + size="mini" + @click="handleQuery" + >鎼滅储</el-button + > + <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" + >閲嶇疆</el-button + > </el-form-item> </el-form> - <el-row :gutter="10" class="mb8" style="margin-left: 10px;"> + <el-row :gutter="10" class="mb8" style="margin-left: 10px"> <!-- <el-col :span="1.5"> <el-button type="primary" icon="el-icon-download" size="mini" @click="handleExport" v-hasPermi="['hosp:order:export']">瀵煎嚭</el-button> </el-col> --> <el-col :span="1.5"> - <el-button type="primary" size="mini" :disabled="multiple" @click="viewReport">鎵归噺浣撴鎶ュ憡鎵撳嵃</el-button> + <el-button + type="primary" + size="mini" + :disabled="multiple" + @click="viewReport" + >鎵归噺浣撴鎶ュ憡鎵撳嵃</el-button + > + </el-col> + <el-col :span="1.5"> + <el-button + type="primary" + size="mini" + :disabled="multiple" + @click="jiankangReport" + >鍋ュ悍妫�鏌ヨ〃鎵撳嵃</el-button + > </el-col> <el-col :span="1.5"> <div id="main111"> - <el-input style="width: 920px;" v-model="form.name"></el-input> + <el-input style="width: 920px" v-model="form.name"></el-input> </div> - </el-col> <!-- <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> --> </el-row> @@ -57,57 +105,142 @@ </div> --> <template> - <el-table border style="margin: 14px; width: 99%" v-loading="loading" - :default-sort="{ prop: 'reportTime', order: 'descending' }" :data="orderList" - @selection-change="handleSelectionChange" ref="multipleTable"> - <el-table-column type="selection" width="40px" align="center" height="10px" fixed="left" /> + <el-table + border + style="margin: 14px; width: 99%" + v-loading="loading" + :default-sort="{ prop: 'reportTime', order: 'descending' }" + :data="orderList" + @selection-change="handleSelectionChange" + ref="multipleTable" + > + <el-table-column + type="selection" + width="40px" + align="center" + height="10px" + fixed="left" + /> <!-- <el-table-column label="搴忓彿" align="center" prop="newID" width="50px" fixed="left" height="10px" /> --> - <el-table-column label="濮撳悕" align="center" prop="tjCustomerName" height="10px" width="90px" - :show-overflow-tooltip="true" /> - <el-table-column label="鎬у埆" align="center" prop="tjCustomerSex" width="55px" height="10px" - :show-overflow-tooltip="true"> + <el-table-column + label="濮撳悕" + align="center" + prop="tjCustomerName" + height="10px" + width="90px" + :show-overflow-tooltip="true" + /> + <el-table-column + label="鎬у埆" + align="center" + prop="tjCustomerSex" + width="55px" + height="10px" + :show-overflow-tooltip="true" + > <template slot-scope="scope"> <span v-if="scope.row.tjCustomerSex == '0'">鐢�</span> <span v-if="scope.row.tjCustomerSex == '1'">濂�</span> <span v-if="scope.row.tjCustomerSex == '2'">鏈煡</span> </template> </el-table-column> - <el-table-column label="骞撮緞" align="center" prop="tjCustomerAge" height="10px" width="60px" - :show-overflow-tooltip="true" /> - <el-table-column label="鐢佃瘽" align="center" prop="tjCustomerPhone" :show-overflow-tooltip="true" height="10px" - width="110px" /> - <el-table-column label="浣撴绫诲瀷" align="center" prop="tjType" height="10px" width="80px" - :show-overflow-tooltip="true"> + <el-table-column + label="骞撮緞" + align="center" + prop="tjCustomerAge" + height="10px" + width="60px" + :show-overflow-tooltip="true" + /> + <el-table-column + label="鐢佃瘽" + align="center" + prop="tjCustomerPhone" + :show-overflow-tooltip="true" + height="10px" + width="110px" + /> + <el-table-column + label="浣撴绫诲瀷" + align="center" + prop="tjType" + height="10px" + width="80px" + :show-overflow-tooltip="true" + > <template slot-scope="scope"> <span v-if="scope.row.tjType == '1'">鍥㈤槦</span> <span v-if="scope.row.tjType == '2'">涓汉</span> </template> </el-table-column> - <el-table-column label="浣撴鍙�" align="center" prop="tjNumber" :show-overflow-tooltip="true" width="160px" /> - <el-table-column label="鎵�閫夊椁�" align="center" prop="pacName" height="10px" :show-overflow-tooltip="true" - width="140px" /> - <el-table-column label="鐧昏浜�" align="center" prop="createBy" height="10px" :show-overflow-tooltip="true" - width="100px" /> - <el-table-column label="鐧昏鏃堕棿" align="center" prop="createTime" width="155px" height="10px" - :show-overflow-tooltip="true"> + <el-table-column + label="浣撴鍙�" + align="center" + prop="tjNumber" + :show-overflow-tooltip="true" + width="160px" + /> + <el-table-column + label="鎵�閫夊椁�" + align="center" + prop="pacName" + height="10px" + :show-overflow-tooltip="true" + width="140px" + /> + <el-table-column + label="鐧昏浜�" + align="center" + prop="createBy" + height="10px" + :show-overflow-tooltip="true" + width="100px" + /> + <el-table-column + label="鐧昏鏃堕棿" + align="center" + prop="createTime" + width="155px" + height="10px" + :show-overflow-tooltip="true" + > <template slot-scope="scope"> <span>{{ parseTime(scope.row.createTime) }}</span> </template> </el-table-column> - <el-table-column label="鎶ュ憡鏃堕棿" align="center" prop="reportTime" width="155px" height="10px" sortable - :show-overflow-tooltip="true"> + <el-table-column + label="鎶ュ憡鏃堕棿" + align="center" + prop="reportTime" + width="155px" + height="10px" + sortable + :show-overflow-tooltip="true" + > <template slot-scope="scope"> <span>{{ parseTime(scope.row.reportTime) }}</span> </template> </el-table-column> - <el-table-column label="鎵撳嵃鏃堕棿" align="center" prop="printLastTime" width="155px" height="10px" - :show-overflow-tooltip="true"> + <el-table-column + label="鎵撳嵃鏃堕棿" + align="center" + prop="printLastTime" + width="155px" + height="10px" + :show-overflow-tooltip="true" + > <template slot-scope="scope"> <span>{{ parseTime(scope.row.printLastTime) }}</span> </template> </el-table-column> - <el-table-column label="澶囨敞" align="center" prop="remark" height="10px" :show-overflow-tooltip="true" /> + <el-table-column + label="澶囨敞" + align="center" + prop="remark" + height="10px" + :show-overflow-tooltip="true" + /> <!-- <el-table-column fixed="right" label="鎿嶄綔" align="center" class-name="small-padding fixed-width" height="10px" width="60px"> @@ -121,15 +254,21 @@ <div class="pag"> <div class="pag1"> - <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" - @pagination="getList" /> + <pagination + v-show="total > 0" + :total="total" + :page.sync="queryParams.pageNum" + :limit.sync="queryParams.pageSize" + @pagination="getList" + /> </div> </div> <el-drawer title="鎴戞槸鏍囬" :visible.sync="drawer" :with-header="false"> <div class="drawer1"> <div class="drawer2"> - <span>浣撴浜猴細{{ gation.tjCustomerName }}</span><br /> + <span>浣撴浜猴細{{ gation.tjCustomerName }}</span + ><br /> <span>鑱旂郴鐢佃瘽锛歿{ gation.tjCustomerPhone }}</span> </div> <span class="drawer6">鍩烘湰淇℃伅</span> @@ -146,23 +285,46 @@ <span>浣撴鍙凤細{{ gation.tjNumber }}</span> <span>鎶ュ憡鏃堕棿锛歿{ gation.createTime }}</span> <span>浣撴鏃堕棿锛歿{ gation.finishTime }}</span> - <el-button type="primary" plain size="mini" @click="viewReport1">鏈�杩戜竴娆′綋妫�鎶ュ憡</el-button> + <el-button type="primary" plain size="mini" @click="viewReport1" + >鏈�杩戜竴娆′綋妫�鎶ュ憡</el-button + > </div> </div> <span class="drawer6">璋冩煡闂嵎</span> <div> - <el-form ref="form" :model="form" label-width="80px" style="margin-top: 20px"> + <el-form + ref="form" + :model="form" + label-width="80px" + style="margin-top: 20px" + > <el-form-item label="璋冩煡缁撴灉:"> <el-select v-model="value" placeholder="璇烽�夋嫨璋冩煡缁撴灉"> - <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"> + <el-option + v-for="item in options" + :key="item.value" + :label="item.label" + :value="item.value" + > </el-option> </el-select> </el-form-item> <el-form-item label="琛�鍘�:" style="width: 300px" prop="pressure"> - <el-input v-model="form.pressure" placeholder="璇疯緭鍏ヨ鍘�"></el-input> + <el-input + v-model="form.pressure" + placeholder="璇疯緭鍏ヨ鍘�" + ></el-input> </el-form-item> - <el-form-item label="浣庡帇:" placeholder="璇疯緭鍏ヤ綆鍘�" style="width: 300px" prop="lowPressure"> - <el-input v-model="form.lowPressure" placeholder="璇疯緭鍏ヤ綆鍘�"></el-input> + <el-form-item + label="浣庡帇:" + placeholder="璇疯緭鍏ヤ綆鍘�" + style="width: 300px" + prop="lowPressure" + > + <el-input + v-model="form.lowPressure" + placeholder="璇疯緭鍏ヤ綆鍘�" + ></el-input> </el-form-item> <div style="margin-left: 20px"> <el-form-item label="1.鏄惁鍚哥儫"> @@ -203,31 +365,54 @@ </div> </el-drawer> - <el-dialog title="PDF 棰勮" :visible.sync="dialogVisible" :close-on-click-modal="false"> + <el-dialog + title="PDF 棰勮" + :visible.sync="dialogVisible" + :close-on-click-modal="false" + > <div class="main"> - <iframe id="printIframe" :src="url" frameborder="0" style="width: 100%; height: 100%"></iframe> + <iframe + id="printIframe" + :src="url" + frameborder="0" + style="width: 100%; height: 100%" + ></iframe> </div> </el-dialog> - - - <el-dialog title="瀵艰瘖鍗�" :visible.sync="daoZhenDan" :close-on-click-modal="false"> + <el-dialog + title="瀵艰瘖鍗�" + :visible.sync="daoZhenDan" + :close-on-click-modal="false" + > <div class="main"> - <iframe id="printIframe" :src="url" frameborder="0" style="width: 100%; height: 100%"></iframe> + <iframe + id="printIframe" + :src="url" + frameborder="0" + style="width: 100%; height: 100%" + ></iframe> </div> </el-dialog> - - <div style=" - position: absolute; - bottom: 100px; - left: 500px; - width: 700px; - display: none; - "> + <div + style=" + position: absolute; + bottom: 100px; + left: 500px; + width: 700px; + display: none; + " + > <div id="printBill"> - <barcode :value="barcode" :height="40" :width="2" :margin="0">鏉″舰鐮佸姞杞藉け璐�</barcode> - <div style="font-size: 13px; color: #000000" v-for="(item, index) in DataList1" :key="index"> + <barcode :value="barcode" :height="40" :width="2" :margin="0" + >鏉″舰鐮佸姞杞藉け璐�</barcode + > + <div + style="font-size: 13px; color: #000000" + v-for="(item, index) in DataList1" + :key="index" + > <div style="width: 48%; margin-top: 10px"> 濮撳悕锛歿{ item.tjCustomerName }} </div> @@ -358,7 +543,7 @@ dialogVisible: false, // 閬僵灞� loading: true, - tjNumber: "", + tjNum: "", // 閫変腑鏁扮粍 ids: [], // 闈炲崟涓鐢� @@ -396,7 +581,7 @@ djbeginTime: undefined, djendTime: undefined, name: undefined, - tjNum:undefined, + tjNum: undefined, }, startTime: "", // 琛ㄥ崟鍙傛暟 @@ -494,6 +679,13 @@ // }); // }, + jiankangReport() { + this.mobanId = "899553193419812864"; + const tjNum = this.report; + const viewNum = this.mobanId; + const params = { viewNum, tjNum }; + this.$tab.openPage("鍋ュ悍璇佹鏌ヨ〃", "/report/jiankangzheng", params); + }, //鎵撳嵃灏忕エ printHandle() { setTimeout(function () { @@ -512,49 +704,47 @@ // 浣撴鎶ュ憡 viewReport() { const flag = true; - this.failList = [] - this.form.name = "鎶ュ憡鎵撳嵃澶辫触锛�" - + this.failList = []; + this.form.name = "鎶ュ憡鎵撳嵃澶辫触锛�"; + if (this.report.length == 1) { - this.report.forEach(item => { + this.report.forEach((item) => { this.tjNumber = item; - }) + }); getPdf(this.tjNumber, flag).then((response) => { if (response.size == 0) { // this.$message.error("璇ョ敤鎴蜂綋妫�鎶ュ憡鏆傛湭瀹屾垚锛�"); this.dialogVisible = false; - this.DataList1.forEach(item => { + this.DataList1.forEach((item) => { if (item.tjNumber === this.tjNumber) { - this.userId = item.tjCustomerName - this.form.name += item.tjCustomerName + this.userId = item.tjCustomerName; + this.form.name += item.tjCustomerName; } - }) - this.failList.push( - { - tjNumber: this.tjNumber, - printStatus: 0, - printBy: this.userId, - createBy: this.userIds - }) + }); + this.failList.push({ + tjNumber: this.tjNumber, + printStatus: 0, + printBy: this.userId, + createBy: this.userIds, + }); } else { this.dialogVisible = true; this.url = window.webkitURL.createObjectURL(response); //灏嗗悗绔繑鍥炵殑blob鏂囦欢璇诲彇鍑簎rl - this.DataList1.forEach(item => { + this.DataList1.forEach((item) => { if (item.tjNumber === this.tjNumber) { - this.userId = item.tjCustomerName + this.userId = item.tjCustomerName; // this.form.name += item.tjCustomerName } - }) - this.failList.push( - { - tjNumber: this.tjNumber, - printStatus: 1, - printBy: this.userId, - createBy: this.userIds - }) + }); + this.failList.push({ + tjNumber: this.tjNumber, + printStatus: 1, + printBy: this.userId, + createBy: this.userIds, + }); } - this.joggle(this.failList) - this.getList() + this.joggle(this.failList); + this.getList(); }); } else { for (let i = 0; i < this.report.length; i++) { @@ -562,60 +752,57 @@ this.tjNumber = this.report[i]; getPdf(this.tjNumber, flag).then((response) => { if (response.size == 0) { - this.failList = [] - this.DataList1.forEach(item => { + this.failList = []; + this.DataList1.forEach((item) => { if (item.tjNumber === this.report[i]) { - this.userId = item.tjCustomerName + this.userId = item.tjCustomerName; if (this.form.name) { - this.form.name = this.form.name + "," + item.tjCustomerName - } - + this.form.name = + this.form.name + "," + item.tjCustomerName; + } } - }) - this.failList.push( - { - tjNumber: this.report[i], - printStatus: 0, - printBy: this.userId, - createBy: this.userIds - - }) - this.joggle(this.failList) - this.getList() + }); + this.failList.push({ + tjNumber: this.report[i], + printStatus: 0, + printBy: this.userId, + createBy: this.userIds, + }); + this.joggle(this.failList); + this.getList(); // this.$message.error("璇ョ敤鎴蜂綋妫�鎶ュ憡鏆傛湭瀹屾垚锛�"); this.dialogVisible = false; } else { - this.failList = [] - this.DataList1.forEach(item => { + this.failList = []; + this.DataList1.forEach((item) => { if (item.tjNumber === this.report[i]) { - this.userId = item.tjCustomerName + this.userId = item.tjCustomerName; } - }) - this.failList.push( - { - tjNumber: this.report[i], - printStatus: 1, - printBy: this.userId, - createBy: this.userIds - }) - this.joggle(this.failList) - this.getList() + }); + this.failList.push({ + tjNumber: this.report[i], + printStatus: 1, + printBy: this.userId, + createBy: this.userIds, + }); + this.joggle(this.failList); + this.getList(); // this.dialogVisible = true; // this.url = window.webkitURL.createObjectURL(response); //灏嗗悗绔繑鍥炵殑blob鏂囦欢璇诲彇鍑簎rl const newBlob = []; - newBlob.push(response) - const blob = new Blob(newBlob, { type: 'application/pdf' }) - var date = (new Date()).getTime() - var ifr = document.createElement('iframe') - ifr.style.frameborder = 'no' - ifr.style.display = 'none' - ifr.style.pageBreakBefore = 'always' - ifr.setAttribute('id', 'printPdf' + date) - ifr.setAttribute('name', 'printPdf' + date) - ifr.src = window.URL.createObjectURL(blob) - document.body.appendChild(ifr) - this.doPrint('printPdf' + date) - window.URL.revokeObjectURL(ifr.src) // 閲婃斁URL 瀵硅薄 + newBlob.push(response); + const blob = new Blob(newBlob, { type: "application/pdf" }); + var date = new Date().getTime(); + var ifr = document.createElement("iframe"); + ifr.style.frameborder = "no"; + ifr.style.display = "none"; + ifr.style.pageBreakBefore = "always"; + ifr.setAttribute("id", "printPdf" + date); + ifr.setAttribute("name", "printPdf" + date); + ifr.src = window.URL.createObjectURL(blob); + document.body.appendChild(ifr); + this.doPrint("printPdf" + date); + window.URL.revokeObjectURL(ifr.src); // 閲婃斁URL 瀵硅薄 } }); } @@ -624,16 +811,14 @@ }, doPrint(val) { - var ordonnance = document.getElementById(val).contentWindow + var ordonnance = document.getElementById(val).contentWindow; setTimeout(() => { - ordonnance.print() - }, 100) + ordonnance.print(); + }, 100); }, - joggle(failList) { - getprint(failList).then((res) => { - }); + getprint(failList).then((res) => {}); }, // 鏈�杩戜竴娆′綋妫�鎶ュ憡 @@ -688,7 +873,7 @@ this.queryParams.djendTime = this.startTime[1]; this.loading = true; getInfo().then((response) => { - this.userIds = response.user.userId + this.userIds = response.user.userId; }); getOrderListOO(this.queryParams).then((response) => { this.orderList = response.data.list; @@ -775,15 +960,13 @@ // } this.multiple = !selection.length; this.report = selection.map((item) => item.tjNumber); + console.log(this.report); }, - - investigation(row) { this.gation = row; this.drawer = true; }, - /** 瀵煎嚭鎸夐挳鎿嶄綔 */ handleExport() { @@ -815,13 +998,11 @@ } #main111 .el-input__inner { + border: none !important; -border: none !important; + box-shadow: none !important; -box-shadow: none !important; - -padding: 0px; //鍓嶈竟杈硅窛鍘绘帀 - + padding: 0px; //鍓嶈竟杈硅窛鍘绘帀 } #printIframe::-webkit-scrollbar { -- Gitblit v1.8.0