|
|
@@ -3,6 +3,8 @@
|
|
|
<el-dialog v-model="huanZheXinXiDialog" fullscreen title="修改信息" @closed="emit('close')">
|
|
|
<el-descriptions :column="4" border style="width: 100%" title="基本信息">
|
|
|
<template #extra>
|
|
|
+ <el-button :disabled="shenHeSendFlag" size="small" type="primary" @click="fqsendAudit">申请审核</el-button>
|
|
|
+ <el-button size="small" type="primary" @click="querylistSetlAuditLog">审核历史记录</el-button>
|
|
|
<el-button size="small" type="primary" @click="drgGroupTest">DRG分组测算</el-button>
|
|
|
<el-button type="info" @click="shenHeClick">审核信息</el-button>
|
|
|
<el-button size="small" type="primary" @click="shuJuDuiBi">数据对比</el-button>
|
|
|
@@ -67,10 +69,10 @@
|
|
|
</el-option>
|
|
|
</el-select>
|
|
|
</el-descriptions-item>
|
|
|
- <el-descriptions-item v-if="shenHeQuanXian()" label="审核">
|
|
|
- <el-button :disabled="keFouShenHe" type="success" @click="shenHeTongGuoClick">审核通过</el-button>
|
|
|
- <el-button :disabled="keFouShenHe" type="success" @click="shenHeTongGuoShangChuanClick">审核通过并上传
|
|
|
- </el-button>
|
|
|
+ <el-descriptions-item v-if="auditQuanXian()" label="审核">
|
|
|
+ <el-button :disabled="shenHeTongGuoFlag" type="success" @click="shenHeTongGuoClick">审核通过</el-button>
|
|
|
+<!-- <el-button :disabled="keFouShenHe" type="success" @click="shenHeTongGuoShangChuanClick">审核通过并上传-->
|
|
|
+<!-- </el-button>-->
|
|
|
<el-button :disabled="keFouShenHe" type="danger" @click="shenHeBoHuiClick">审核驳回</el-button>
|
|
|
</el-descriptions-item>
|
|
|
</el-descriptions>
|
|
|
@@ -286,6 +288,18 @@
|
|
|
:oldYbZyDisDiag="props.data.ybZyDisDiag"
|
|
|
@close="shuJuDuiBiDialogRef = false"
|
|
|
></ShuJuDuiBi>
|
|
|
+ <el-dialog v-model="setlAuditLogFlag" title="审核历史记录" width="50%" class="maxhight">
|
|
|
+ <el-timeline>
|
|
|
+ <el-timeline-item v-for="item in setlAuditLogData" :data="setlAuditLogData" :timestamp="item.createTime" placement="top" color="red" >
|
|
|
+ <el-card>
|
|
|
+ <h4>{{item.auditTypeName}}</h4>
|
|
|
+ <p>审核状态: {{item.auditFlagName}} </p>
|
|
|
+ <p>{{item.auditTypeName+'人:'}} {{item.createName}}</p>
|
|
|
+ <p>备注: {{item.remark}} </p>
|
|
|
+ </el-card>
|
|
|
+ </el-timeline-item>
|
|
|
+ </el-timeline>
|
|
|
+ </el-dialog>
|
|
|
</el-container>
|
|
|
</template>
|
|
|
|
|
|
@@ -301,11 +315,13 @@ import {
|
|
|
setlUploadAudit,
|
|
|
shouShuBianMa,
|
|
|
upldSetlList,
|
|
|
- sendDrgGroupTest
|
|
|
+ sendDrgGroupTest,
|
|
|
+ sendAudit,
|
|
|
+ listSetlAuditLog
|
|
|
} from '@/api/medical-insurance/si-setl-upload'
|
|
|
import {formatDatetime} from '@/utils/date'
|
|
|
import {listIsBlank, stringIsBlank, stringNotBlank} from '@/utils/blank-utils'
|
|
|
-import {getAdmissCond, getsiDiagTypeName, maZuiName, qieKouName, shenHeQuanXian} from '../jieSuanDanXiuGai'
|
|
|
+import {getAdmissCond, getsiDiagTypeName, maZuiName, qieKouName, shenHeQuanXian,auditQuanXian,auditBmzzQuanXian} from '../jieSuanDanXiuGai'
|
|
|
import ShenHeXinXi from '../ShenHeXinXi.vue'
|
|
|
import KeShiFeiYong from '../KeShiFeiYong.vue'
|
|
|
import BeiZhu from '../BeiZhu.vue'
|
|
|
@@ -320,7 +336,7 @@ const props = defineProps({
|
|
|
data: {},
|
|
|
})
|
|
|
|
|
|
-const emit = defineEmits(['close'])
|
|
|
+const emit = defineEmits(['close','shuaXin'])
|
|
|
|
|
|
// 基本信息
|
|
|
const setlinfo = ref({})
|
|
|
@@ -332,6 +348,10 @@ const huanZheXinXiDialog = ref(true)
|
|
|
|
|
|
const code = store.state.user.info.code
|
|
|
const name = store.state.user.info.name
|
|
|
+//审核历史记录弹出框
|
|
|
+const setlAuditLogFlag = ref(false)
|
|
|
+//审核历史记录数据
|
|
|
+const setlAuditLogData = ref([]);
|
|
|
|
|
|
/*以下全部都是诊断 */
|
|
|
const diagnosticQuery = ref({
|
|
|
@@ -516,8 +536,10 @@ const baoCunXiuGaiData = ref({})
|
|
|
const beiZhuRef = ref(false)
|
|
|
const baoCunHouGuanBi = () => {
|
|
|
huanZheXinXiDialog.value = false
|
|
|
- ctx.emit('shua-xin')
|
|
|
+ // ctx.emit('shua-xin')
|
|
|
+ emit('shuaXin')
|
|
|
}
|
|
|
+
|
|
|
const baoCunXiuGai = () => {
|
|
|
let newData = {
|
|
|
decType: setlinfo.value.decType,
|
|
|
@@ -597,6 +619,10 @@ function getDeclarationType(val) {
|
|
|
const shenHeRef = ref(false)
|
|
|
const keFouShenHe = ref(false)
|
|
|
|
|
|
+const shenHeTongGuoFlag = ref(true)
|
|
|
+
|
|
|
+const shenHeSendFlag = ref(true)
|
|
|
+
|
|
|
const shenHeClick = () => {
|
|
|
if (stringIsBlank(props.data.shenHeXinXi.id)) {
|
|
|
return ElMessage.error('您还没有进行申请。')
|
|
|
@@ -681,7 +707,8 @@ const shenHeBoHuiClick = () => {
|
|
|
|
|
|
function guanBi() {
|
|
|
huanZheXinXiDialog.value = false
|
|
|
- ctx.emit('shua-xin')
|
|
|
+ // ctx.emit('shua-xin')
|
|
|
+ emit('shuaXin')
|
|
|
}
|
|
|
|
|
|
/* 审核操作 */
|
|
|
@@ -707,6 +734,82 @@ const drgGroupTest = () => {
|
|
|
})
|
|
|
|
|
|
}
|
|
|
+
|
|
|
+/*申请审核*/
|
|
|
+
|
|
|
+const fqsendAudit = () => {
|
|
|
+
|
|
|
+ ElMessageBox.prompt('申请备注', '提示', {
|
|
|
+ type: 'warning',
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ inputPattern: /\S/,
|
|
|
+ inputErrorMessage: '申请备注 100 字 (∩•̀ω•́)⊃-*⋆',
|
|
|
+ }).then(({value}) => {
|
|
|
+ if (value.length > 100) {
|
|
|
+ return ElMessage.error('申请备注超过 100 字。')
|
|
|
+ }
|
|
|
+ let setlAuditlog = {
|
|
|
+ patNo: props.data.inpatientNo,
|
|
|
+ times: props.data.admissTimes,
|
|
|
+ createCode: code,
|
|
|
+ createName: name,
|
|
|
+ remark:value
|
|
|
+ }
|
|
|
+ sendAudit(setlAuditlog).then((res) => {
|
|
|
+ guanBi()
|
|
|
+ })
|
|
|
+ })
|
|
|
+ .catch((e) => {
|
|
|
+ })
|
|
|
+}
|
|
|
+
|
|
|
+/*查询审核历史记录*/
|
|
|
+const querylistSetlAuditLog = () => {
|
|
|
+ if (stringIsBlank(props.data.shenHeXinXi.id)) {
|
|
|
+ return ElMessage.error('您还没有进行审核申请。')
|
|
|
+ }
|
|
|
+ refreshAuditLog()
|
|
|
+}
|
|
|
+
|
|
|
+//刷新审核信息
|
|
|
+function refreshAuditLog() {
|
|
|
+ listSetlAuditLog(props.data.inpatientNo,props.data.admissTimes).then((res) => {
|
|
|
+ if(res.length > 0){
|
|
|
+ setlAuditLogFlag.value=true
|
|
|
+ setlAuditLogData.value = []
|
|
|
+ for (let item of res){
|
|
|
+ let setAuditLog = {
|
|
|
+ id: '',
|
|
|
+ createName: '',
|
|
|
+ createCode: '',
|
|
|
+ createTime: '',
|
|
|
+ remark: '',
|
|
|
+ auditFlag: '',
|
|
|
+ auditType: '',
|
|
|
+ auditTypeName: '',
|
|
|
+ auditFlagName: ''
|
|
|
+ };
|
|
|
+ setAuditLog.id = item.id
|
|
|
+ setAuditLog.createName = item.createName
|
|
|
+ setAuditLog.createTime = item.createTime
|
|
|
+ setAuditLog.remark = item.remark
|
|
|
+ setAuditLog.auditFlag = item.auditFlag
|
|
|
+ setAuditLog.auditType = item.auditType
|
|
|
+ if(setAuditLog.auditType == 0){
|
|
|
+ setAuditLog.auditTypeName = '申请'
|
|
|
+ }else{
|
|
|
+ setAuditLog.auditTypeName = '审核'
|
|
|
+ }
|
|
|
+ setAuditLog.auditFlagName = getAduitFlagName(setAuditLog.auditFlag)
|
|
|
+ setlAuditLogData.value.push(setAuditLog)
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ ElMessage.info('没有审核历史记录。')
|
|
|
+ }
|
|
|
+ })
|
|
|
+}
|
|
|
+
|
|
|
/* 数据对比结束 */
|
|
|
|
|
|
/* 获取患者各个科室的费用 */
|
|
|
@@ -756,6 +859,19 @@ const init = () => {
|
|
|
diagnosticQuery.value.medType = props.data.medType
|
|
|
}
|
|
|
|
|
|
+function getAduitFlagName(val) {
|
|
|
+ switch (val) {
|
|
|
+ case 0:
|
|
|
+ return '申请审核'
|
|
|
+ case 1:
|
|
|
+ return '审核通过'
|
|
|
+ case 2:
|
|
|
+ return '驳回'
|
|
|
+ case 3:
|
|
|
+ return '正在审核'
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
/**
|
|
|
* 诊断的拖拽
|
|
|
*/
|
|
|
@@ -833,6 +949,15 @@ const clickRemoveBloodTransfusion = (index, id) => {
|
|
|
onMounted(() => {
|
|
|
init()
|
|
|
keFouShenHe.value = !(stringNotBlank(props.data.shenHeXinXi.id) && props.data.shenHeXinXi.auditFlag === 0)
|
|
|
+ if(auditBmzzQuanXian() && props.data.shenHeXinXi.auditFlag == 2 && !keFouShenHe.value){
|
|
|
+ //审核驳回才有审核通过按钮
|
|
|
+ shenHeTongGuoFlag.value = false
|
|
|
+ }else {
|
|
|
+ shenHeTongGuoFlag.value = keFouShenHe.value
|
|
|
+ }
|
|
|
+ if(!stringNotBlank(props.data.shenHeXinXi.id) || props.data.shenHeXinXi.auditFlag == 2){
|
|
|
+ shenHeSendFlag.value = false
|
|
|
+ }
|
|
|
})
|
|
|
|
|
|
const methods = [
|
|
|
@@ -855,4 +980,10 @@ const siDiagTypes = [
|
|
|
]
|
|
|
</script>
|
|
|
|
|
|
-<style></style>
|
|
|
+<style>
|
|
|
+ .maxhight{
|
|
|
+ height: 700px;
|
|
|
+ overflow: auto;
|
|
|
+ }
|
|
|
+
|
|
|
+</style>
|