|
@@ -50,9 +50,15 @@
|
|
|
></el-switch>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <el-table-column label="录入时间" width="80px">
|
|
|
- <template #default>
|
|
|
- {{ getDatetime(new Date()) }}
|
|
|
+ <el-table-column label="医生" width="70px">
|
|
|
+ <template #default="scope">
|
|
|
+ <el-select v-model="scope.row.doctorCode" remote filterable clearable :remote-method="remoteMethodRenYuan" style="width: 100px">
|
|
|
+ <el-option v-for="item in renYuanList" :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>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="项目编码" prop="chargeCodeMx"></el-table-column>
|
|
@@ -91,30 +97,10 @@
|
|
|
</el-main>
|
|
|
<el-dialog v-model="xinZhengXiangMuDialog" title="新增" :width="1500">
|
|
|
搜索:
|
|
|
- <el-select v-model="chargeCodePy" remote filterable clearable @change="getDanGeXiangMu" default-first-option :remote-method="rmChargePyCode">
|
|
|
- <el-option v-for="item in xiangMuHuoYaoPinShuJu" :key="item.chargeCodeMx" :label="item.chargeName" :value="item.chargeCodeMx">
|
|
|
- <span v-if="xiangMuHuoYaoPinFlag == 0">
|
|
|
- <span style="color: #8492a6; font-size: 12px">{{ item.chargeCodeMx }}</span>
|
|
|
- <el-divider direction="vertical"></el-divider>
|
|
|
- <span> {{ item.chargeName }}</span>
|
|
|
- <el-divider direction="vertical"></el-divider>
|
|
|
- <span style="color: red"> {{ item.ybComment }}</span>
|
|
|
- <el-divider direction="vertical"></el-divider>
|
|
|
- <span style="color: #e6a23c"> {{ item.chargeAmount }} 元</span>
|
|
|
- </span>
|
|
|
- <span v-else>
|
|
|
- <span style="color: #8492a6; font-size: 12px">{{ item.chargeCodeMx }}</span>
|
|
|
- <el-divider direction="vertical"></el-divider>
|
|
|
- <span> {{ item.chargeName }}</span>
|
|
|
- <el-divider direction="vertical"></el-divider>
|
|
|
- <span style="color: #e6a23c"> {{ item.spec }} </span>
|
|
|
- <el-divider direction="vertical"></el-divider>
|
|
|
- <span style="color: #8492a6"> {{ item.yblx }} </span>
|
|
|
- <el-divider direction="vertical"></el-divider>
|
|
|
- <span style="color: #e6a23c"> {{ item.chargeAmount }} 元</span>
|
|
|
- </span>
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
+ <el-input v-model="chargeCodePy" style="width: 140px" @keyup.enter="rmChargePyCode"> </el-input>
|
|
|
+ <el-divider direction="vertical"></el-divider>
|
|
|
+ <el-button type="primary" @click="rmChargePyCode">查询</el-button>
|
|
|
+ <el-divider direction="vertical"></el-divider>
|
|
|
<el-switch
|
|
|
active-color="#409EFF"
|
|
|
inactive-color="#13ce66"
|
|
@@ -124,8 +110,21 @@
|
|
|
:inactive-value="0"
|
|
|
v-model="xiangMuHuoYaoPinFlag"
|
|
|
></el-switch>
|
|
|
- <el-button type="success" @click="danGeXiangMuBaoCun">保存</el-button>
|
|
|
- <el-table :data="danGeFeiYong">
|
|
|
+ <el-divider direction="vertical"></el-divider>
|
|
|
+ <el-table
|
|
|
+ :data="
|
|
|
+ xiangMuHuoYaoPinShuJu.data.slice(
|
|
|
+ (xiangMuHuoYaoPinShuJu.currentPage - 1) * xiangMuHuoYaoPinShuJu.pageSize,
|
|
|
+ xiangMuHuoYaoPinShuJu.currentPage * xiangMuHuoYaoPinShuJu.pageSize
|
|
|
+ )
|
|
|
+ "
|
|
|
+ :height="tableHeight / 1.2"
|
|
|
+ >
|
|
|
+ <el-table-column label="操作" width="40">
|
|
|
+ <template #default="scope">
|
|
|
+ <el-button @click="danGeXiangMuBaoCun(scope.row)" type="text">添加</el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
<el-table-column label="项目编码" prop="chargeCodeMx"></el-table-column>
|
|
|
<el-table-column label="项目名称" prop="chargeName"></el-table-column>
|
|
|
<el-table-column label="规格" prop="spec"></el-table-column>
|
|
@@ -152,7 +151,19 @@
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column label="账单码" prop="billItemName"></el-table-column>
|
|
|
+ <el-table-column label="库存" prop="stockAmount" v-if="xiangMuHuoYaoPinFlag === 1"></el-table-column>
|
|
|
+ <el-table-column label="医保类型" prop="yblx" v-if="xiangMuHuoYaoPinFlag === 1"></el-table-column>
|
|
|
</el-table>
|
|
|
+ <el-pagination
|
|
|
+ :page-size="xiangMuHuoYaoPinShuJu.pageSize"
|
|
|
+ :current-page="xiangMuHuoYaoPinShuJu.currentPage"
|
|
|
+ layout="total, sizes, prev, pager, next, jumper"
|
|
|
+ :total="xiangMuHuoYaoPinShuJu.data.length"
|
|
|
+ @size-change="xinZhengSizeChange"
|
|
|
+ @current-change="xinZhengCurrentChange"
|
|
|
+ background
|
|
|
+ >
|
|
|
+ </el-pagination>
|
|
|
</el-dialog>
|
|
|
<el-dialog title="保存模板" v-model="baoCunMuBanDialog">
|
|
|
<el-row>
|
|
@@ -170,7 +181,8 @@
|
|
|
|
|
|
<script>
|
|
|
import { computed, onMounted, ref, watch } from 'vue'
|
|
|
-import { getMuBan, getMuBanXinXi, xiangMuFeiYongShangChuan, getDept, queryDanGeXiangMu, shanChuMuBan, getPyCode, shangChuanMuBan } from '@/api/yibao/xiang-mu-lu-ru'
|
|
|
+import { getMuBan, getMuBanXinXi, xiangMuFeiYongShangChuan, getDept, queryDanGeXiangMu, getPyCode, shangChuanMuBan } from '@/api/yibao/xiang-mu-lu-ru'
|
|
|
+import { getRenYuan } from '../../api/public-api.js'
|
|
|
import store from '@/store'
|
|
|
import { getDatetime } from '@/utils/date'
|
|
|
import { ElMessage, ElMessageBox } from 'element-plus'
|
|
@@ -286,53 +298,50 @@ export default {
|
|
|
// 判断查询药品还是项目
|
|
|
const xiangMuHuoYaoPinFlag = ref(0)
|
|
|
// 这个是远程查询数据后 保存
|
|
|
- const xiangMuHuoYaoPinShuJu = ref([])
|
|
|
+ const xiangMuHuoYaoPinShuJu = ref({
|
|
|
+ currentPage: 1,
|
|
|
+ pageSize: 20,
|
|
|
+ data: [],
|
|
|
+ })
|
|
|
// 远程查询的
|
|
|
const chargeCodePy = ref('')
|
|
|
|
|
|
/**
|
|
|
* 远程搜索
|
|
|
*/
|
|
|
- const rmChargePyCode = (val) => {
|
|
|
- if (val.length >= 2) {
|
|
|
- queryDanGeXiangMu(val, xiangMuHuoYaoPinFlag.value).then((res) => {
|
|
|
- xiangMuHuoYaoPinShuJu.value = res
|
|
|
+ const rmChargePyCode = () => {
|
|
|
+ if (chargeCodePy.value.length >= 2) {
|
|
|
+ queryDanGeXiangMu(chargeCodePy.value, xiangMuHuoYaoPinFlag.value).then((res) => {
|
|
|
+ xiangMuHuoYaoPinShuJu.value.data = res
|
|
|
})
|
|
|
}
|
|
|
}
|
|
|
// 单个费用
|
|
|
const danGeFeiYong = ref([])
|
|
|
|
|
|
- // 获取单个费用录入 并且放入表格中选择
|
|
|
- const getDanGeXiangMu = () => {
|
|
|
- xiangMuHuoYaoPinShuJu.value.filter((item) => {
|
|
|
- if (item.chargeCodeMx === chargeCodePy.value) {
|
|
|
- item.deptCode = store.state.user.info.deptCode
|
|
|
- danGeFeiYong.value = []
|
|
|
- danGeFeiYong.value.push(item)
|
|
|
- }
|
|
|
- })
|
|
|
- }
|
|
|
-
|
|
|
- const danGeXiangMuBaoCun = () => {
|
|
|
- if (chargeCodePy.value === '') {
|
|
|
- return ElMessage.error({
|
|
|
+ const danGeXiangMuBaoCun = (val) => {
|
|
|
+ let key
|
|
|
+ if (xiangMuHuoYaoPinFlag.value === 1) {
|
|
|
+ key = val.chargeCodeMx + val.serial
|
|
|
+ } else {
|
|
|
+ key = val.chargeCodeMx
|
|
|
+ }
|
|
|
+ if (chargeCode.value.indexOf(key) > -1) {
|
|
|
+ return ElMessage.warning({
|
|
|
+ message: '请勿重复录入',
|
|
|
showClose: true,
|
|
|
- message: '请先选择一条费用',
|
|
|
})
|
|
|
- }
|
|
|
- for (let i = 0; i < chargeCode.value.length; i++) {
|
|
|
- if (chargeCode.value[i] === danGeFeiYong.value[0].chargeCodeMx) {
|
|
|
- return ElMessage.error({
|
|
|
- showClose: true,
|
|
|
- message: '请勿重复录入',
|
|
|
- })
|
|
|
+ } else {
|
|
|
+ if (typeof val.deptCode === 'undefined') {
|
|
|
+ val.deptCode = store.state.user.info.deptCode
|
|
|
}
|
|
|
+ feiYongShuJu.value.push(val)
|
|
|
+ chargeCode.value.push(key)
|
|
|
+ ElMessage.success({
|
|
|
+ message: '添加成功',
|
|
|
+ showClose: true,
|
|
|
+ })
|
|
|
}
|
|
|
- feiYongShuJu.value.push(danGeFeiYong.value[0])
|
|
|
- chargeCode.value.push(danGeFeiYong.value[0].chargeCodeMx)
|
|
|
- danGeFeiYong.value = []
|
|
|
- chargeCodePy.value = ''
|
|
|
}
|
|
|
|
|
|
const xiangMuZongJia = computed(() => {
|
|
@@ -346,6 +355,7 @@ export default {
|
|
|
watch(
|
|
|
() => props.patient,
|
|
|
() => {
|
|
|
+ console.log(props.patient)
|
|
|
// 这里刚好是反着的
|
|
|
queryWard.value = props.patient.admissDept
|
|
|
getBingQuDuiYingKeShiChange()
|
|
@@ -414,6 +424,31 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ // 新增中的分页 事件
|
|
|
+ const xinZhengSizeChange = (val) => {
|
|
|
+ xiangMuHuoYaoPinShuJu.value.pageSize = val
|
|
|
+ }
|
|
|
+
|
|
|
+ const xinZhengCurrentChange = (val) => {
|
|
|
+ xiangMuHuoYaoPinShuJu.value.currentPage = val
|
|
|
+ }
|
|
|
+
|
|
|
+ watch(
|
|
|
+ () => xiangMuHuoYaoPinFlag.value,
|
|
|
+ () => {
|
|
|
+ xiangMuHuoYaoPinShuJu.value.data = []
|
|
|
+ }
|
|
|
+ )
|
|
|
+ const renYuanList = ref([])
|
|
|
+
|
|
|
+ // 搜索 医生工号
|
|
|
+ const remoteMethodRenYuan = (val) => {
|
|
|
+ if (val.length >= 2)
|
|
|
+ getRenYuan(val).then((res) => {
|
|
|
+ renYuanList.value = res
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
return {
|
|
|
muBanData,
|
|
|
tableHeight,
|
|
@@ -433,7 +468,6 @@ export default {
|
|
|
xiangMuHuoYaoPinShuJu,
|
|
|
chargeCodePy,
|
|
|
rmChargePyCode,
|
|
|
- getDanGeXiangMu,
|
|
|
danGeFeiYong,
|
|
|
danGeXiangMuBaoCun,
|
|
|
wardData,
|
|
@@ -450,6 +484,10 @@ export default {
|
|
|
zhiXingKeShi,
|
|
|
xieGaiZhiXingKeShi,
|
|
|
xiaoKeShiList,
|
|
|
+ xinZhengCurrentChange,
|
|
|
+ xinZhengSizeChange,
|
|
|
+ remoteMethodRenYuan,
|
|
|
+ renYuanList,
|
|
|
}
|
|
|
},
|
|
|
}
|