| | |
| | | <template> |
| | | <div class="app-container"> |
| | | <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px"> |
| | | <el-form |
| | | :model="queryParams" |
| | | ref="queryForm" |
| | | size="small" |
| | | :inline="true" |
| | | label-width="68px" |
| | | > |
| | | <el-form-item label="体检号" prop="tjNumber"> |
| | | <el-input v-model="queryParams.tjNumber" placeholder="请输入体检号" clearable @keyup.enter.native="handleQuery" style="width: 170px"/> |
| | | <el-input |
| | | ref="inputName" |
| | | v-model="queryParams.tjNumber" |
| | | placeholder="请输入体检号" |
| | | clearable |
| | | @keyup.enter.native="handleQuery" |
| | | @blur="hb" |
| | | style="width: 170px" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="姓名" prop="name"> |
| | | <el-input v-model="queryParams.name" placeholder="请输入姓名" clearable @keyup.enter.native="handleQuery" style="width: 110px"/> |
| | | <el-input |
| | | v-model="queryParams.name" |
| | | placeholder="请输入姓名" |
| | | clearable |
| | | @keyup.enter.native="handleQuery" |
| | | style="width: 110px" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="登记时间" prop="createTimeList"> |
| | | <el-date-picker v-model="createTimeList" type="datetimerange" align="right" :picker-options="pickerOptions" style="width: 310px" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:00:00']" format="yyyy-MM-dd HH:mm" value-format="yyyy-MM-dd HH:mm" @change="dateChangebirthday1"> |
| | | <el-date-picker |
| | | v-model="createTimeList" |
| | | type="datetimerange" |
| | | align="right" |
| | | :picker-options="pickerOptions" |
| | | style="width: 310px" |
| | | start-placeholder="开始日期" |
| | | end-placeholder="结束日期" |
| | | :default-time="['00:00:00', '23:00:00']" |
| | | format="yyyy-MM-dd HH:mm" |
| | | value-format="yyyy-MM-dd HH:mm" |
| | | @change="dateChangebirthday1" |
| | | > |
| | | </el-date-picker> |
| | | </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" |
| | | style="margin-right: 15px" |
| | | >查询</el-button |
| | | > |
| | | <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" |
| | | >重置</el-button |
| | | > |
| | | </el-form-item> |
| | | </el-form> |
| | | <el-radio-group v-model="checkStatus" @input="radioChange" style="margin: 10px 15px"> |
| | | <el-radio-group |
| | | v-model="checkStatus" |
| | | @input="radioChange" |
| | | style="margin: 10px 15px" |
| | | > |
| | | <el-radio-button label="0">未审核</el-radio-button> |
| | | <el-radio-button label="1">已审核</el-radio-button> |
| | | </el-radio-group> |
| | | |
| | | <div style="width: 100%; margin-left: 10px; display: flex"> |
| | | <div style="width: 40%; margin-right: 20px"> |
| | | <el-table id="ta" v-loading="loading" ref="tb" :data="exaList" border height="520px" @selection-change="handleSelectionChange" :row-class-name="tableRowClassName"> |
| | | <el-table-column type="selection" width="40" align="center" /> |
| | | <el-table-column label="体检号" align="center" prop="tjNumber" width="160px"/> |
| | | <el-table-column label="姓名" align="center" prop="cusName" width="80px"/> |
| | | <el-table-column label="性别" align="center" prop="cusSex" width="60px"> |
| | | <div style="width: 40.5%; margin-right: 20px"> |
| | | <el-table |
| | | id="ta" |
| | | v-loading="loading" |
| | | ref="tb" |
| | | :data="exaList" |
| | | border |
| | | height="520" |
| | | :row-class-name="tableRowClassName" |
| | | highlight-current-row |
| | | @current-change="handleCurrentChange" |
| | | > |
| | | <!-- <el-table-column type="selection" width="40" align="center" /> --> |
| | | <el-table-column |
| | | label="体检号" |
| | | align="center" |
| | | prop="tjNumber" |
| | | width="160px" |
| | | /> |
| | | <el-table-column |
| | | label="姓名" |
| | | align="center" |
| | | prop="cusName" |
| | | width="80px" |
| | | /> |
| | | <el-table-column |
| | | label="性别" |
| | | align="center" |
| | | prop="cusSex" |
| | | width="50px" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <!-- {{scope.row.customer.cusSex}} --> |
| | | {{ scope.row.cusSex === 0 ? "男" : "女" }} |
| | | <!-- <dict-tag :options="dict.type.sys_user_sex" :value="scope.row.cusSex " /> --> |
| | | <span v-if="scope.row.cusSex == '0'">男</span> |
| | | <span v-if="scope.row.cusSex == '1'">女</span> |
| | | <span v-if="scope.row.cusSex == '2'">未知</span> |
| | | <span v-if="scope.row.cusSex == '9'">未说明性别</span> |
| | | </template> |
| | | <!-- <template slot-scope="scope"> --> |
| | | <!-- {{scope.row.customer.cusSex}} --> |
| | | <!-- {{ scope.row.cusSex === 0 ? "男" : "女" }} --> |
| | | <!-- <dict-tag :options="dict.type.sys_user_sex" :value="scope.row.cusSex " /> --> |
| | | <!-- </template> --> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="手机号" |
| | | align="center" |
| | | prop="cusPhone" |
| | | width="100px" |
| | | /> |
| | | <el-table-column |
| | | label="登记时间" |
| | | align="center" |
| | | prop="tjTime" |
| | | width="120px" |
| | | /> |
| | | <el-table-column |
| | | v-if="checkStatus == '1'" |
| | | label="审核状态" |
| | | align="center" |
| | | prop="confirmStatus" |
| | | width="80px" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <span |
| | | :style="{ |
| | | color: |
| | | scope.row.confirmStatus == '301' ? '#0CB618' : '#EA1B29', |
| | | }" |
| | | v-if="scope.row.confirmStatus == '301'" |
| | | >已通过</span |
| | | > |
| | | <span |
| | | :style="{ |
| | | color: |
| | | scope.row.confirmStatus == '301' ? '#0CB618' : '#EA1B29', |
| | | }" |
| | | v-if="scope.row.confirmStatus == '299'" |
| | | >已驳回</span |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="手机号" align="center" prop="cusPhone" width="120px"/> |
| | | <el-table-column label="登记时间" align="center" prop="tjTime" width="120px"/> |
| | | <el-table-column v-if="checkStatus == '1'" label="审核状态" align="center" prop="confirmStatus" width="110px"> |
| | | <!-- v-hasPermi="['reservation:reservation:edit']" --> |
| | | <el-table-column label="操作" align="center" width="120px"> |
| | | <template slot-scope="scope"> |
| | | <span :style="{ color: scope.row.confirmStatus == '301' ? '#0CB618' : '#EA1B29',}" v-if="scope.row.confirmStatus == '301'">已通过</span> |
| | | <span :style="{ color: scope.row.confirmStatus == '301' ? '#0CB618' : '#EA1B29',}" v-if="scope.row.confirmStatus == '299'">已驳回</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="操作" align="center" > |
| | | <template slot-scope="scope"> |
| | | <el-button size="mini" type="text" @click="tongbu(scope.row)" |
| | | >同步</el-button |
| | | > |
| | | <el-button |
| | | :disabled="dis" |
| | | size="mini" |
| | | type="text" |
| | | v-show=" |
| | | scope.row.confirmStatus == '299' || |
| | | scope.row.confirmStatus == 288 |
| | | " |
| | | @click="tongguo(scope.row)" |
| | | >通过</el-button |
| | | > |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | v-hasPermi="['reservation:reservation:edit']" |
| | | v-show=" scope.row.confirmStatus == '299' || scope.row.confirmStatus == 288" |
| | | @click="tongguo(scope.row)">通过</el-button |
| | | > |
| | | <el-button |
| | | size="mini" |
| | | type="text" |
| | | v-hasPermi="['reservation:reservation:edit']" |
| | | v-show=" scope.row.confirmStatus == '301' || scope.row.confirmStatus == 288" |
| | | v-show=" |
| | | scope.row.confirmStatus == '301' || |
| | | scope.row.confirmStatus == 288 |
| | | " |
| | | @click="bohui(scope.row)" |
| | | >撤销</el-button |
| | | >驳回</el-button |
| | | > |
| | | </template> |
| | | </el-table-column> |
| | |
| | | <el-table |
| | | v-loading="loading" |
| | | border |
| | | height="520px" |
| | | height="520" |
| | | ref="tab1" |
| | | :data="xiangmuList" |
| | | > |
| | |
| | | label="项目" |
| | | align="center" |
| | | prop="proName" |
| | | width="140" |
| | | width="115" |
| | | :show-overflow-tooltip="true" |
| | | /> |
| | | <el-table-column |
| | | label="状态" |
| | |
| | | prop="qdcreateTime" |
| | | width="160" |
| | | /> --> |
| | | <el-table-column |
| | | <!-- <el-table-column |
| | | label="检查医生" |
| | | align="center" |
| | | prop="doctorName" |
| | | width="100" |
| | | /> |
| | | /> --> |
| | | <el-table-column |
| | | label="检查时间" |
| | | align="center" |
| | |
| | | </el-table> |
| | | </div> |
| | | </div> |
| | | <div style="margin-right: 67%"> |
| | | <div class="pag"> |
| | | <div class="pag1"> |
| | | <!-- <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :pager-count="5" :current-page.sync="currentPage1" :current-page="page" |
| | | :page-sizes="pageSize" :page-size="size" layout="total, sizes, prev, pager, next, jumper" :total="total"> |
| | | </el-pagination> --> |
| | | <pagination |
| | | v-show="total > 0" |
| | | :total="total" |
| | | :pager-count="5" |
| | | :page.sync="queryParams.page" |
| | | :limit.sync="queryParams.pageSize" |
| | | @pagination="getList" |
| | | /> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { getCsList, confirmOrder, cSWebGetPro } from "@/api/doctor/examination"; |
| | | import { |
| | | getCsList, |
| | | confirmOrder, |
| | | cSWebGetPro, |
| | | dataSynchronization, |
| | | } from "@/api/doctor/examination"; |
| | | import { getNewDateList } from "@/api/hosp/order"; |
| | | import moment from "moment"; |
| | | |
| | | export default { |
| | | dicts: ["dict_tj_status"], |
| | | data() { |
| | | return { |
| | | dis: false, |
| | | createTimeList: "", |
| | | total: 0, |
| | | loading: true, |
| | |
| | | exaList: [], |
| | | // 表单参数 |
| | | form: {}, |
| | | clearTimeSet: null, |
| | | tjNumbers: "", |
| | | multipleSelection: "", |
| | | tjnum: "", |
| | |
| | | }; |
| | | }, |
| | | created() { |
| | | this.getList(); |
| | | this.getdate(); |
| | | // this.getNowTime(); |
| | | }, |
| | | mounted() { |
| | | this.$nextTick(() => { |
| | | this.$refs.inputName.focus(); |
| | | }); |
| | | }, |
| | | methods: { |
| | | getdate() { |
| | | 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"), |
| | | ]; |
| | | this.getList(); |
| | | }); |
| | | }, |
| | | // / 处理默认选中当前日期 |
| | | getNowTime() { |
| | | var curDate = new Date().getTime(); |
| | |
| | | this.startTime = val; |
| | | }, |
| | | getList() { |
| | | this.queryParams.checkStatus = "0"; |
| | | this.queryParams.beginTime = this.createTimeList[0]; |
| | | this.queryParams.endTime = this.createTimeList[1]; |
| | | this.loading = true; |
| | | this.queryParams.checkStatus = this.checkStatus; |
| | | if (this.createTimeList) { |
| | | this.queryParams.beginTime = this.createTimeList[0]; |
| | | this.queryParams.endTime = this.createTimeList[1]; |
| | | } else if (this.createTimeList == null) { |
| | | this.queryParams.beginTime = null; |
| | | this.queryParams.endTime = null; |
| | | } |
| | | |
| | | getCsList(this.queryParams).then((res) => { |
| | | if (res.data) { |
| | | this.exaList = res.data.customers; |
| | | this.total = res.data.total; |
| | | if (res.code == 200) { |
| | | this.loading = false; |
| | | if (this.exaList.length != 0) { |
| | | this.$nextTick(() => { |
| | | this.$refs.tb.toggleRowSelection(this.exaList[0], true); |
| | | }); |
| | | if (res.data) { |
| | | this.exaList = res.data.customers; |
| | | this.total = res.data.total; |
| | | if (this.exaList.length != 0) { |
| | | this.$nextTick(() => { |
| | | this.$refs.tb.toggleRowSelection(this.exaList[0], true); |
| | | }); |
| | | } else { |
| | | this.$refs.tb.clearSelection(); |
| | | } |
| | | this.total = res.data.total; |
| | | } else { |
| | | this.$refs.tb.clearSelection(); |
| | | this.exaList = []; |
| | | this.tableList = []; |
| | | } |
| | | this.total = res.data.total; |
| | | this.loading = false; |
| | | } else { |
| | | this.exaList = []; |
| | | this.tableList = []; |
| | | this.loading = false; |
| | | } |
| | | }); |
| | | }, |
| | |
| | | this.loading = true; |
| | | this.queryParams.checkStatus = value; |
| | | getCsList(this.queryParams).then((response) => { |
| | | this.exaList = response.data.customers; |
| | | if (this.exaList.length != 0) { |
| | | this.$nextTick(() => { |
| | | this.$refs.tb.toggleRowSelection(this.exaList[0], true); |
| | | }); |
| | | } else { |
| | | this.$refs.tb.clearSelection(); |
| | | this.xiangmuList = []; |
| | | if (response.code == 200) { |
| | | this.exaList = response.data.customers; |
| | | if (this.exaList.length != 0) { |
| | | this.$nextTick(() => { |
| | | this.$refs.tb.toggleRowSelection(this.exaList[0], true); |
| | | }); |
| | | } else { |
| | | this.$refs.tb.clearSelection(); |
| | | this.xiangmuList = []; |
| | | } |
| | | this.total = response.data.total; |
| | | this.loading = false; |
| | | } |
| | | this.total = response.data.total; |
| | | this.loading = false; |
| | | }); |
| | | }, |
| | | |
| | | hb() { |
| | | // console.log(this.queryParams.tjNumber); |
| | | if (this.queryParams.tjNumber != null) { |
| | | this.handleQuery(); |
| | | } |
| | | }, |
| | | /** 搜索按钮操作 */ |
| | | handleQuery() { |
| | |
| | | }, |
| | | /** 重置按钮操作 */ |
| | | resetQuery() { |
| | | this.createTimeList = []; |
| | | this.resetForm("queryForm"); |
| | | this.handleQuery(); |
| | | this.loading = true; |
| | |
| | | let tjNumber = this.tjnum; |
| | | cSWebGetPro(tjNumber).then((res) => { |
| | | this.xiangmuList = res.data; |
| | | this.xiangmuList.forEach((item) => { |
| | | // console.log(item); |
| | | // if (item.type == 0) { |
| | | // this.dis = true; |
| | | // } else { |
| | | // this.dis = false; |
| | | // } |
| | | }); |
| | | }); |
| | | }); |
| | | }, |
| | |
| | | return "warning-row"; |
| | | } |
| | | } |
| | | }, |
| | | handleCurrentChange(val) { |
| | | this.currentRow = val; |
| | | let tjNumber = val.tjNumber; |
| | | cSWebGetPro(tjNumber).then((res) => { |
| | | this.xiangmuList = res.data; |
| | | this.xiangmuList.forEach((item) => { |
| | | // console.log(item); |
| | | // if (item.type == 0) { |
| | | // this.dis = true; |
| | | // } else { |
| | | // this.dis = false; |
| | | // } |
| | | }); |
| | | }); |
| | | }, |
| | | // 通过按钮 |
| | | tongguo(row) { |
| | |
| | | }; |
| | | confirmOrder(data).then((res) => { |
| | | if (res.code == 200) { |
| | | // this.$forceUpdate(); |
| | | this.getList(); |
| | | this.xiangmuList = []; |
| | | this.$modal.msgSuccess("提交成功!"); |
| | | } |
| | | }); |
| | | }); |
| | | }, |
| | | setTime() { |
| | | //设置定时器 |
| | | this.clearTimeSet = setInterval(() => { |
| | | this.$modal.closeLoading(); |
| | | }, 300000); |
| | | }, |
| | | tongbu(row) { |
| | | // this.$refs.tb.toggleRowSelection(row); |
| | | this.$modal.loading("正在同步,请稍候..."); |
| | | 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; |
| | | this.$modal.closeLoading(); |
| | | this.$modal.msgSuccess("同步成功!"); |
| | | } |
| | | }).catch(error => { |
| | | this.handleCurrentChange(row); |
| | | clearInterval(this.clearTimeSet); |
| | | this.clearTimeSet = null; |
| | | this.$modal.closeLoading(); |
| | | }); |
| | | }, |
| | | // 驳回按钮 |
| | |
| | | .el-table .warning-row { |
| | | background: #e5f3ff !important; |
| | | } |
| | | ::v-deep .el-table__body tr.current-row > td { |
| | | background: #edf2fa !important; |
| | | } |
| | | |
| | | .pag { |
| | | width: 100%; |
| | | display: flex; |
| | | justify-content: center; |
| | | } |
| | | |
| | | .pag1 { |
| | | width: 30%; |
| | | } |
| | | </style> |