|
@@ -1,8 +1,8 @@
|
|
|
<template>
|
|
|
<el-container>
|
|
|
- <el-header height="36px" style="margin-top: 8px">
|
|
|
- 住院号:<el-input size="mini" style="width: 160px" placeholder="请输入住院号" clearable v-model.trim="queryTerm.inpatientNo" @keyup.enter="getHuanZheXinXiClick"></el-input>
|
|
|
- 病房:<el-select size="mini" v-model="queryTerm.wardCode">
|
|
|
+ <el-header style="margin-top: 8px">
|
|
|
+ <el-input size="mini" style="width: 160px" placeholder="请输入住院号" clearable v-model.trim="queryTerm.inpatientNo" @keyup.enter="getHuanZheXinXiClick"></el-input>
|
|
|
+ <el-select size="mini" v-model="queryTerm.wardCode" filterable clearable placeholder="请选择病区">
|
|
|
<el-option v-for="item in wardData" :key="item.code" :label="item.name" :value="item.code">
|
|
|
<span style="color: #8492a6; font-size: 12px">{{ item.code }}</span>
|
|
|
<el-divider direction="vertical"></el-divider>
|
|
@@ -11,102 +11,181 @@
|
|
|
</el-select>
|
|
|
<el-divider direction="vertical"></el-divider>
|
|
|
<el-button size="mini" type="primary" icon="el-icon-search" @click="getHuanZheXinXiClick">查询</el-button>
|
|
|
- <el-button size="mini" type="primary" icon="el-icon-refresh-left" @click="getXuQueFeiYiZhuClick">检索</el-button>
|
|
|
- <el-select size="mini" v-model="chargeStatus" style="width: 120px; margin: auto 10px auto 10px">
|
|
|
- <el-option v-for="item in chargeStatusData" :key="item.code" :label="item.name" :value="item.code">
|
|
|
+ <el-button size="mini" type="primary" icon="el-icon-refresh-left" @click="getXuQueFeiYiZhuClick">刷新</el-button>
|
|
|
+ <el-select size="mini" v-model="biaoGeWeiZhi" style="width: 60px; margin: auto 10px auto 10px">
|
|
|
+ <el-option v-for="item in xiaoBiaoGeXinShiWeiZhi" :key="item.code" :label="item.name" :value="item.code">
|
|
|
<span style="color: #8492a6; font-size: 12px">{{ item.code }}</span>
|
|
|
<el-divider direction="vertical"></el-divider>
|
|
|
<span>{{ item.name }}</span>
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
- <el-button size="mini" type="warning" @click="yiJianXiuGaiClick">一键修改</el-button>
|
|
|
- <el-button size="mini" type="success" @click="baoCunYiZhuQueFeiClick" icon="el-icon-upload">保存</el-button>
|
|
|
+ 排序:
|
|
|
+ <el-select size="mini" v-model="queryTerm.fenLei" style="width: 100px; margin: auto 10px auto 10px" @change="getHuanZheXinXiClick">
|
|
|
+ <el-option :value="0" label="病区"></el-option>
|
|
|
+ <el-option :value="1" label="执行人"></el-option>
|
|
|
+ </el-select>
|
|
|
+ <el-button size="mini" type="success" @click="baoCunYiZhuQueFeiClick" icon="el-icon-upload" :disabled="queryTerm.liShi === 1">保存</el-button>
|
|
|
+ <el-divider direction="vertical"></el-divider>
|
|
|
+ <el-radio-group v-model="queryTerm.liShi" size="mini" @change="getHuanZheXinXiClick">
|
|
|
+ <el-radio-button :label="0">未确认</el-radio-button>
|
|
|
+ <el-radio-button :label="1">历史</el-radio-button>
|
|
|
+ </el-radio-group>
|
|
|
+ <el-divider direction="vertical"></el-divider>
|
|
|
+ <el-button size="mini" type="warning" @click="chaoZuoZhiNan = true">操作指南</el-button>
|
|
|
+ <el-date-picker
|
|
|
+ type="daterange"
|
|
|
+ v-model="dateRange"
|
|
|
+ v-if="queryTerm.liShi === 1"
|
|
|
+ placeholder="选择日期"
|
|
|
+ size="mini"
|
|
|
+ style="width: 280px"
|
|
|
+ range-separator="至"
|
|
|
+ start-placeholder="开始日期"
|
|
|
+ end-placeholder="结束日期"
|
|
|
+ :shortcuts="shortcuts"
|
|
|
+ ></el-date-picker>
|
|
|
</el-header>
|
|
|
- <el-container>
|
|
|
- <el-aside>
|
|
|
- <el-table :data="huanZheYiZhuFeiYongData" :height="winHeight - 70" @row-click="getXuQueFeiXiangXiXinXiClick" highlight-current-row stripe>
|
|
|
- <el-table-column prop="wardName" label="病区"></el-table-column>
|
|
|
+ <el-main>
|
|
|
+ <span>
|
|
|
+ <el-table :data="huanZheYiZhuFeiYongData" :height="winHeight / 1.15" highlight-current-row stripe>
|
|
|
+ <el-table-column prop="name" label="姓名" width="90">
|
|
|
+ <template #default="scope">
|
|
|
+ <el-popover :placement="biaoGeWeiZhi" :width="900" trigger="click">
|
|
|
+ <template #reference>
|
|
|
+ <el-button
|
|
|
+ size="small"
|
|
|
+ :type="scope.row.shiFouYouChuYuanYiZhu === 0 ? 'success' : 'danger'"
|
|
|
+ style="width: 100px"
|
|
|
+ @click="lingShiQueFeiShuJuClick(scope.row.list)"
|
|
|
+ >{{ scope.row.name }}</el-button
|
|
|
+ >
|
|
|
+ </template>
|
|
|
+ <el-tag type="warning" effect="dark"> 姓名:{{ scope.row.name }}</el-tag>
|
|
|
+ <el-tag type="success" effect="dark"> 性别:{{ cptSex(scope.row.sex) }}</el-tag>
|
|
|
+ <el-tag type="warning" effect="dark"> 床号{{ scope.row.bedNo }}</el-tag>
|
|
|
+ <el-tag type="success" effect="dark"> 医保身份:{{ scope.row.responceTypeName }}</el-tag>
|
|
|
+ <el-tag type="warning" effect="dark"> 病区:{{ scope.row.wardName }}</el-tag>
|
|
|
+ <el-table
|
|
|
+ :data="
|
|
|
+ lingShiQueFeiShuJu.list.slice((lingShiQueFeiShuJu.currentPage - 1) * lingShiQueFeiShuJu.pageSize, lingShiQueFeiShuJu.currentPage * lingShiQueFeiShuJu.pageSize)
|
|
|
+ "
|
|
|
+ highlight-current-row
|
|
|
+ stripe
|
|
|
+ :height="winHeight / 1.3"
|
|
|
+ >
|
|
|
+ <el-table-column label="确认" :width="queryTerm.liShi === 0 ? 230 : 50">
|
|
|
+ <template #default="scope">
|
|
|
+ <el-radio-group
|
|
|
+ v-if="queryTerm.liShi === 0"
|
|
|
+ v-model="scope.row.chargeStatus"
|
|
|
+ size="mini"
|
|
|
+ :fill="scope.row.chargeStatus === '1' ? '#67C23A' : scope.row.chargeStatus === '2' ? '#F56C6C' : '#909399'"
|
|
|
+ >
|
|
|
+ <el-radio-button label="1">确认</el-radio-button>
|
|
|
+ <el-radio-button label="2">取消</el-radio-button>
|
|
|
+ <el-radio-button label="3">不操作</el-radio-button>
|
|
|
+ </el-radio-group>
|
|
|
+ <span v-else v-html="yiZhuZhuangTai(scope.row.chargeStatus)"> </span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="actOrderNo" label="医嘱号"> </el-table-column>
|
|
|
+ <el-table-column prop="occTime" label="医嘱日期" width="80"></el-table-column>
|
|
|
+ <el-table-column prop="chargeCode" label="项目编码"></el-table-column>
|
|
|
+ <el-table-column prop="chargeName" label="项目名称"></el-table-column>
|
|
|
+ <el-table-column prop="docotrName" label="医生"></el-table-column>
|
|
|
+ <el-table-column prop="orderCount" label="数量"></el-table-column>
|
|
|
+ <el-table-column prop="chargeFee" label="单价"></el-table-column>
|
|
|
+ <el-table-column label="金额">
|
|
|
+ <template #default="scope">
|
|
|
+ {{ (scope.row.chargeFee * scope.row.orderCount).toFixed(2) }}
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="opIdName" label="操作人" v-if="queryTerm.liShi === 1"></el-table-column>
|
|
|
+ <el-table-column prop="opDate" label="操作时间" v-if="queryTerm.liShi === 1"></el-table-column>
|
|
|
+ </el-table>
|
|
|
+ <el-pagination
|
|
|
+ @current-change="lingShiFanYe"
|
|
|
+ :current-page="lingShiQueFeiShuJu.currentPage"
|
|
|
+ :page-size="lingShiQueFeiShuJu.pageSize"
|
|
|
+ layout=" prev, pager, next,total"
|
|
|
+ :total="lingShiQueFeiShuJu.total"
|
|
|
+ style="margin-top: 5px"
|
|
|
+ :pager-count="5"
|
|
|
+ small
|
|
|
+ ></el-pagination>
|
|
|
+ </el-popover>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
<el-table-column prop="inpatientNo" label="住院号" width="90"></el-table-column>
|
|
|
+ <el-table-column prop="admissTimes" label="住院次数" width="90"></el-table-column>
|
|
|
<el-table-column prop="bedNo" label="床号" width="50"></el-table-column>
|
|
|
- <el-table-column prop="name" label="姓名"></el-table-column>
|
|
|
- </el-table>
|
|
|
- <el-pagination
|
|
|
- @current-change="changeYiZhuQueFei"
|
|
|
- :current-page="queryTerm.currentPage"
|
|
|
- :page-size="queryTerm.pageSize"
|
|
|
- layout=" prev, pager, next,total"
|
|
|
- :total="queryTerm.total"
|
|
|
- style="margin-top: 5px"
|
|
|
- :pager-count="5"
|
|
|
- small
|
|
|
- ></el-pagination>
|
|
|
- </el-aside>
|
|
|
- <el-main>
|
|
|
- <span v-if="patient.inpatientNo != null">
|
|
|
- <el-tag>住院号: {{ patient.inpatientNo }}</el-tag>
|
|
|
- <el-tag type="warning">患者姓名: {{ patient.name }}</el-tag>
|
|
|
- <el-tag>床号: {{ patient.bedNo }}</el-tag>
|
|
|
- <el-tag type="warning">住院次数: {{ patient.admissTimes }}</el-tag>
|
|
|
- <el-tag>性别: {{ cptSex(patient.sex) }}</el-tag>
|
|
|
- <el-tag type="warning">病房: {{ patient.wardName }}</el-tag>
|
|
|
- <el-tag>入院日期: {{ patient.admissDate }}</el-tag>
|
|
|
- <el-tag type="warning">医保身份: {{ patient.responceTypeName }}</el-tag>
|
|
|
- <el-tag>总费用: {{ patient.totalCharge }}</el-tag>
|
|
|
- </span>
|
|
|
- <el-table :data="queFeiXiangQingData" :height="winHeight - 120" highlight-current-row stripe>
|
|
|
- <el-table-column label="费用详情">
|
|
|
- <el-table-column label="确认" width="90">
|
|
|
- <template #default="scope">
|
|
|
- <el-select size="mini" v-model="scope.row.chargeStatus">
|
|
|
- <el-option v-for="item in chargeStatusData" :key="item.code" :label="item.name" :value="item.code">
|
|
|
- <span style="color: #8492a6; font-size: 12px">{{ item.code }}</span>
|
|
|
- <el-divider direction="vertical"></el-divider>
|
|
|
- <span :style="{ color: item.color }">{{ item.name }}</span>
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="actOrderNo" label="医嘱号">
|
|
|
- <template #default="scope">
|
|
|
- <span
|
|
|
- :style="{ backgroundColor: chargeStatusData[(chargeStatusData || []).findIndex((item) => item.code === scope.row.chargeStatus)].color }"
|
|
|
- style="color: #fff; border-radius: 10px; padding: 0px 5px 5px 5px"
|
|
|
- >{{ scope.row.actOrderNo }}</span
|
|
|
- >
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <!-- <el-table-column prop="inpatientNo" label="住院号"></el-table-column>
|
|
|
- <el-table-column prop="bedNo" label="床号"></el-table-column>
|
|
|
- <el-table-column prop="name" label="姓名"></el-table-column>
|
|
|
- <el-table-column prop="wardName" label="病区"></el-table-column> -->
|
|
|
- <el-table-column prop="occTime" label="医嘱日期" width="80"> </el-table-column>
|
|
|
- <el-table-column prop="docotrName" label="医生"></el-table-column>
|
|
|
- <el-table-column prop="orderName" label="医嘱名称"></el-table-column>
|
|
|
- <el-table-column prop="chargeCode" label="项目编码"></el-table-column>
|
|
|
- <el-table-column label="单价">
|
|
|
- <template #default="scope">
|
|
|
- {{ (scope.row.chargeFee / scope.row.orderCount).toFixed(2) }}
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="orderCount" label="数量"></el-table-column>
|
|
|
- <el-table-column prop="chargeFee" label="金额"></el-table-column>
|
|
|
+ <el-table-column prop="sex" label="性别">
|
|
|
+ <template #default="scope">
|
|
|
+ {{ cptSex(scope.row.sex) }}
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="admissDate" label="住院日期" width="80"></el-table-column>
|
|
|
+ <el-table-column prop="responceTypeName" label="医保身份"></el-table-column>
|
|
|
+ <el-table-column prop="wardName" label="病区"></el-table-column>
|
|
|
+ <el-table-column prop="totalCharge" label="总费用"></el-table-column>
|
|
|
+ <el-table-column label="操作">
|
|
|
+ <template #default="scope">
|
|
|
+ <span v-html="chaoZuo(scope.row.list)"></span>
|
|
|
+ </template>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
|
- </el-main>
|
|
|
- </el-container>
|
|
|
+ </span>
|
|
|
+ <el-pagination
|
|
|
+ @current-change="changeYiZhuQueFei"
|
|
|
+ :current-page="queryTerm.currentPage"
|
|
|
+ :page-size="queryTerm.pageSize"
|
|
|
+ layout=" prev, pager, next,total"
|
|
|
+ :total="queryTerm.total"
|
|
|
+ style="margin-top: 5px"
|
|
|
+ :pager-count="5"
|
|
|
+ small
|
|
|
+ ></el-pagination>
|
|
|
+ </el-main>
|
|
|
+ <el-dialog v-model="chaoZuoZhiNan" title="操作指南(*^▽^*)">
|
|
|
+ 1、输入住院号,点击查询即可查询出该住院患者的信息,同理病区也是一样选择的病区就只会查询该病区的患者,住院号和病区二选一。
|
|
|
+ <br />
|
|
|
+ <br />
|
|
|
+ 2、刷新旁边的下拉框是用来选择表格弹出的位置(虽然没啥鸟用)。
|
|
|
+ <br />
|
|
|
+ <br />
|
|
|
+ 3、排序:默认根据病区来排,选择了执行人后会根据算法来把当前登陆的人员,执行过最多的患者来排到靠前的位置。
|
|
|
+ <br /><br />
|
|
|
+ 4、未确认和历史:默认会查询患者未确认的项目,点击历史后一定要选择时间,该时间是医嘱的执行时间,默认会查询当天的时间,(提示选择时间的跨度建议不要过长,可能会导致数据加载慢。)同时查询历史时
|
|
|
+ 也可以使用住院号和病区来查询。
|
|
|
+ <br />
|
|
|
+ <br />
|
|
|
+ 5、患者姓名:有出院医嘱会显示为红色,无则显示绿色。
|
|
|
+ <br />
|
|
|
+ <br />
|
|
|
+ 6、点击患者姓名:会弹出小表格,显示出具体的医嘱信息以及患者的基本信息会显示在上方,请按照需求来选择对应的操作,默认每页显示八条,可点击弹出的小表格中的分页按钮,跳转至上一页或下一页。
|
|
|
+ 点击小弹窗外的任意位置即可消失,或再次点击患者姓名(也可以点击下一个需要操作的患者姓名)。
|
|
|
+ <br /><br />
|
|
|
+ 7、分页:该分页不是指小表格中的分页,而是页面下方的分页,点击下一页后,且没有点击保存,那么您此前的操作将会丢失,请在分页之前(如果有操作)点击保存(小表格中点击分页不会出现该情况)。
|
|
|
+ <br /><br />
|
|
|
+ 8、保存:在确定数据正确后,点击保存(数据一旦,保存成功就没有回头路了,请认真仔细的确认。)
|
|
|
+ <br /><br />
|
|
|
+ 9、错误:在点击保存后,系统会自动接受患者的费用,如出错会在右上角,出现提示,可以请对应病区的护士在出院结算页面中点击费用接受重算按钮即可,或在老系统中护士打印费用清单时,会自动接收。
|
|
|
+ <br /><br />
|
|
|
+ 10、如有新的需求或出现未知的意外可联系管理员,如是操作失误后果自负(我觉得我已经写的很详细了,各种提示都有,都是简单的操作,还出现操作失误那就没得办法了) (>ω・* )ノ
|
|
|
+ </el-dialog>
|
|
|
</el-container>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
import { onMounted, ref } from 'vue'
|
|
|
-import { getHuanZheXinXi } from '@/api/zhu-yuan-yi-ji/yi-ji-fei-yong-lu-ru'
|
|
|
-import { getXuQueFeiYiZhu, getXuQueFeiXiangXiXinXi, baoCunYiZhuQueFeiShuJu } from '@/api/zhu-yuan-yi-ji/que-ren-yi-zhu-shou-fei'
|
|
|
+import { getXuQueFeiYiZhu, baoCunYiZhuQueFeiShuJu } from '@/api/zhu-yuan-yi-ji/que-ren-yi-zhu-shou-fei'
|
|
|
import { getWard } from '@/api/yibao/xiang-mu-lu-ru'
|
|
|
import Cookie from 'js-cookie'
|
|
|
import { cptSex } from '@/utils/computed'
|
|
|
import store from '@/store'
|
|
|
-import { getDate } from '@/utils/date'
|
|
|
-import { ElMessage } from 'element-plus'
|
|
|
+import { getDate, getDateRangeFormatDate } from '../../utils/date'
|
|
|
+import { ElMessage, ElMessageBox } from 'element-plus'
|
|
|
+import { shortcuts } from '@/data/shortcuts'
|
|
|
export default {
|
|
|
setup() {
|
|
|
const windowSize = store.state.app.windowSize
|
|
@@ -121,40 +200,54 @@ export default {
|
|
|
currentPage: 1,
|
|
|
pageSize: 20,
|
|
|
total: 0,
|
|
|
+ fenLei: 0,
|
|
|
+ startTimeString: '',
|
|
|
+ endTimeString: '',
|
|
|
+ liShi: 0,
|
|
|
})
|
|
|
|
|
|
+ const chaoZuoZhiNan = ref(true)
|
|
|
+
|
|
|
// 患者信息
|
|
|
const patient = ref({})
|
|
|
// 病房信息
|
|
|
const wardData = ref([])
|
|
|
// 需要确费的信息
|
|
|
const huanZheYiZhuFeiYongData = ref([])
|
|
|
- // 需要确费的详细信息
|
|
|
- const queFeiXiangQingData = ref([])
|
|
|
// 操作
|
|
|
const chargeStatusData = ref([
|
|
|
- { code: '0', name: '确认', color: '#67C23A' },
|
|
|
- { code: '1', name: '取消', color: '#F56C6C' },
|
|
|
- { code: '3', name: '不操作', color: '#909399' },
|
|
|
+ { code: '1', name: '确认' },
|
|
|
+ { code: '2', name: '取消' },
|
|
|
+ { code: '3', name: '不操作' },
|
|
|
])
|
|
|
|
|
|
- const chargeStatus = ref('0')
|
|
|
+ const chargeStatus = ref('1')
|
|
|
+
|
|
|
+ const biaoGeWeiZhi = ref('right')
|
|
|
+
|
|
|
+ const dateRange = ref([new Date(), new Date()])
|
|
|
|
|
|
/**
|
|
|
* 这个是查询当前病人的
|
|
|
*/
|
|
|
const getHuanZheXinXiClick = () => {
|
|
|
- // 这个三个参数是 住院号,是否在院 0 在 1 否 , 住院次数
|
|
|
- getHuanZheXinXi(queryTerm.value.inpatientNo, 0, 0).then((res) => {
|
|
|
- queryTerm.value.currentPage = 1
|
|
|
- patient.value = res
|
|
|
- queryTerm.value.admissTimes = res.admissTimes
|
|
|
- queryTerm.value.wardCode = res.ward
|
|
|
- getXuQueFeiYiZhu(queryTerm.value).then((res) => {
|
|
|
- queryTerm.value.total = res.total
|
|
|
+ if (queryTerm.value.liShi === 1) {
|
|
|
+ let date = getDateRangeFormatDate(dateRange.value)
|
|
|
+ queryTerm.value.startTimeString = date.stratTime
|
|
|
+ queryTerm.value.endTimeString = date.endTime
|
|
|
+ }
|
|
|
+ queryTerm.value.execUnit = dept
|
|
|
+ queryTerm.value.currentPage = 1
|
|
|
+ queryTerm.value.pageSize = 20
|
|
|
+ getXuQueFeiYiZhu(queryTerm.value)
|
|
|
+ .then((res) => {
|
|
|
huanZheYiZhuFeiYongData.value = res.records
|
|
|
+ queryTerm.value.total = res.total
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ huanZheYiZhuFeiYongData.value = []
|
|
|
+ queryTerm.value.total = 0
|
|
|
})
|
|
|
- })
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -184,50 +277,58 @@ export default {
|
|
|
})
|
|
|
}
|
|
|
|
|
|
- const getXuQueFeiXiangXiXinXiClick = (row) => {
|
|
|
- patient.value = row
|
|
|
- getXuQueFeiXiangXiXinXi(row.inpatientNo, row.admissTimes, dept)
|
|
|
- .then((res) => {
|
|
|
- queFeiXiangQingData.value = res
|
|
|
- })
|
|
|
- .catch(() => {
|
|
|
- queFeiXiangQingData.value = []
|
|
|
- })
|
|
|
- }
|
|
|
-
|
|
|
- /**
|
|
|
- * 这个是一件修改需要的操作
|
|
|
- */
|
|
|
- const yiJianXiuGaiClick = () => {
|
|
|
- queFeiXiangQingData.value.forEach((item) => {
|
|
|
- item.chargeStatus = chargeStatus.value
|
|
|
- })
|
|
|
- }
|
|
|
-
|
|
|
/**
|
|
|
* 在这里保存数据
|
|
|
*/
|
|
|
const baoCunYiZhuQueFeiClick = () => {
|
|
|
- if (queFeiXiangQingData.value.length <= 0) {
|
|
|
+ if (queryTerm.value.liShi === 1)
|
|
|
return ElMessage.error({
|
|
|
- message: '请先选择需要确认收费的数据。',
|
|
|
- showClose: true,
|
|
|
+ message: '历史数据无法操作。',
|
|
|
})
|
|
|
+ let queRenCount = 0
|
|
|
+ let quXiaoCount = 0
|
|
|
+ for (let i = 0; i < huanZheYiZhuFeiYongData.value.length; i++) {
|
|
|
+ for (let a = 0; a < huanZheYiZhuFeiYongData.value[i].list.length; a++) {
|
|
|
+ if (huanZheYiZhuFeiYongData.value[i].list[a].chargeStatus === '1') {
|
|
|
+ queRenCount += 1
|
|
|
+ } else if (huanZheYiZhuFeiYongData.value[i].list[a].chargeStatus === '2') {
|
|
|
+ quXiaoCount += 1
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
- let shaungChuanData = {
|
|
|
- inpatientNo: patient.value.inpatientNo,
|
|
|
- admissTimes: patient.value.admissTimes,
|
|
|
- list: queFeiXiangQingData.value,
|
|
|
- }
|
|
|
- baoCunYiZhuQueFeiShuJu(shaungChuanData).then((res) => {
|
|
|
- getXuQueFeiXiangXiXinXi(patient.value.inpatientNo, patient.value.admissTimes, dept)
|
|
|
- .then((res) => {
|
|
|
- queFeiXiangQingData.value = res
|
|
|
- })
|
|
|
- .catch(() => {
|
|
|
- queFeiXiangQingData.value = []
|
|
|
- })
|
|
|
+ ElMessageBox.confirm(`请确认数据其中<br>确认<span style='color:#67C23A'>【${queRenCount}】条</span><br><span style='color:#F56C6C'>取消【${quXiaoCount}】条</span>`, '提示', {
|
|
|
+ type: 'warning',
|
|
|
+ dangerouslyUseHTMLString: true,
|
|
|
})
|
|
|
+ .then(() => {
|
|
|
+ let shaungChuanData = {
|
|
|
+ list: huanZheYiZhuFeiYongData.value,
|
|
|
+ execUnit: Cookie.get('dept'),
|
|
|
+ }
|
|
|
+ baoCunYiZhuQueFeiShuJu(shaungChuanData).then((res) => {
|
|
|
+ getXuQueFeiYiZhuClick()
|
|
|
+ })
|
|
|
+ })
|
|
|
+ .catch(() => {})
|
|
|
+ }
|
|
|
+
|
|
|
+ const lingShiQueFeiShuJu = ref({
|
|
|
+ list: [],
|
|
|
+ currentPage: 1,
|
|
|
+ pageSize: 8,
|
|
|
+ total: 0,
|
|
|
+ })
|
|
|
+
|
|
|
+ const lingShiQueFeiShuJuClick = (val) => {
|
|
|
+ lingShiQueFeiShuJu.value.list = val
|
|
|
+ lingShiQueFeiShuJu.value.currentPage = 1
|
|
|
+ lingShiQueFeiShuJu.value.pageSize = 8
|
|
|
+ lingShiQueFeiShuJu.value.total = val.length
|
|
|
+ console.log(lingShiQueFeiShuJu.value)
|
|
|
+ }
|
|
|
+
|
|
|
+ const lingShiFanYe = (val) => {
|
|
|
+ lingShiQueFeiShuJu.value.currentPage = val
|
|
|
}
|
|
|
|
|
|
onMounted(() => {
|
|
@@ -247,16 +348,68 @@ export default {
|
|
|
huanZheYiZhuFeiYongData,
|
|
|
winHeight,
|
|
|
changeYiZhuQueFei,
|
|
|
- getXuQueFeiXiangXiXinXiClick,
|
|
|
- queFeiXiangQingData,
|
|
|
chargeStatusData,
|
|
|
chargeStatus,
|
|
|
getDate,
|
|
|
- yiJianXiuGaiClick,
|
|
|
baoCunYiZhuQueFeiClick,
|
|
|
+ dateRange,
|
|
|
+ xiaoBiaoGeXinShiWeiZhi: ref([
|
|
|
+ { code: 'top', name: '上' },
|
|
|
+ { code: 'right', name: '右' },
|
|
|
+ { code: 'bottom', name: '下' },
|
|
|
+ { code: 'left', name: '左' },
|
|
|
+ ]),
|
|
|
+ biaoGeWeiZhi,
|
|
|
+ chaoZuo,
|
|
|
+ shortcuts,
|
|
|
+ lingShiQueFeiShuJu,
|
|
|
+ lingShiQueFeiShuJuClick,
|
|
|
+ lingShiFanYe,
|
|
|
+ yiZhuZhuangTai,
|
|
|
+ chaoZuoZhiNan,
|
|
|
}
|
|
|
},
|
|
|
}
|
|
|
+function chaoZuo(val) {
|
|
|
+ let quXiao = 0
|
|
|
+ let queRen = 0
|
|
|
+ for (let i = 0; i < val.length; i++) {
|
|
|
+ if (val[i].chargeStatus === '1') {
|
|
|
+ queRen += 1
|
|
|
+ } else if (val[i].chargeStatus === '2') {
|
|
|
+ quXiao += 1
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (quXiao > 0 && queRen == 0) {
|
|
|
+ return `<span style='color:#F56C6C;font-size: 20px;'>取消【${quXiao}】</span>`
|
|
|
+ } else if (quXiao == 0 && queRen > 0) {
|
|
|
+ return `<span style='color:#67C23A;font-size: 20px;'>确认【${queRen}】</span>`
|
|
|
+ } else if (quXiao > 0 && queRen > 0) {
|
|
|
+ return `<span style='color:#67C23A;font-size: 20px;'>确认【${queRen}】</span><br><span style='color:#F56C6C;font-size: 20px;'>取消【${quXiao}】</span>`
|
|
|
+ }
|
|
|
+ return ''
|
|
|
+}
|
|
|
+
|
|
|
+function yiZhuZhuangTai(val) {
|
|
|
+ switch (val) {
|
|
|
+ case '0':
|
|
|
+ return '<span style="color:#67C23A">上账</span>'
|
|
|
+ case '1':
|
|
|
+ return ' <span style="color:#E6A23C">确认但未上账</span>'
|
|
|
+ case '2':
|
|
|
+ return ' <span style="color:#F56C6C">取消</span>'
|
|
|
+ case '5':
|
|
|
+ return '科室确认'
|
|
|
+ case '6':
|
|
|
+ return '科室录入'
|
|
|
+ case '7':
|
|
|
+ return '科室撤销'
|
|
|
+ case '8':
|
|
|
+ return '科室录入粗项(检验费)'
|
|
|
+ default:
|
|
|
+ return '未知'
|
|
|
+ }
|
|
|
+}
|
|
|
</script>
|
|
|
|
|
|
<style></style>
|