|
@@ -5,21 +5,19 @@
|
|
|
<el-option v-for="item in clrTypes" :key="item.code" :value="item.code" :label="item.name"></el-option>
|
|
|
</el-select>
|
|
|
<el-date-picker
|
|
|
- v-model="dateRange"
|
|
|
- type="daterange"
|
|
|
- :shortcuts="setlShtcuts"
|
|
|
- range-separator="至"
|
|
|
- start-placeholder="开始日期"
|
|
|
- end-placeholder="结束日期"
|
|
|
- style="width: 220px"
|
|
|
- @change="setlinfos = []"
|
|
|
+ v-model="dateRange"
|
|
|
+ type="daterange"
|
|
|
+ :shortcuts="setlShtcuts"
|
|
|
+ range-separator="至"
|
|
|
+ start-placeholder="开始日期"
|
|
|
+ end-placeholder="结束日期"
|
|
|
+ style="width: 220px"
|
|
|
+ @change="setlinfos = []"
|
|
|
></el-date-picker>
|
|
|
- <el-select v-model="slctSetlPrm.insutype" placeholder="险种类型" filterable clearable style="width: 120px"
|
|
|
- @change="currentPage = 1">
|
|
|
+ <el-select v-model="slctSetlPrm.insutype" placeholder="险种类型" filterable clearable style="width: 120px" @change="currentPage = 1">
|
|
|
<el-option v-for="item in insutypes" :key="item.code" :value="item.code" :label="item.name"></el-option>
|
|
|
</el-select>
|
|
|
- <el-select v-model="slctSetlPrm.clrOptins" placeholder="清算机构" filterable clearable
|
|
|
- :disabled="setlinfos.length === 0" style="width: 120px" @change="currentPage = 1">
|
|
|
+ <el-select v-model="slctSetlPrm.clrOptins" placeholder="清算机构" filterable clearable :disabled="setlinfos.length === 0" style="width: 120px" @change="currentPage = 1">
|
|
|
<el-option v-for="item in optins" :key="item.code" :value="item.code" :label="item.name"></el-option>
|
|
|
</el-select>
|
|
|
<el-divider direction="vertical"></el-divider>
|
|
@@ -31,11 +29,11 @@
|
|
|
</el-header>
|
|
|
<el-main>
|
|
|
<el-table
|
|
|
- :data="cptSetlinfos.slice(pageSize * (currentPage - 1), pageSize * currentPage)"
|
|
|
- stripe
|
|
|
- :height="tableHeight"
|
|
|
- highlight-current-row
|
|
|
- @selection-change="handleSelectionChange"
|
|
|
+ :data="cptSetlinfos.slice(pageSize * (currentPage - 1), pageSize * currentPage)"
|
|
|
+ stripe
|
|
|
+ :height="tableHeight"
|
|
|
+ highlight-current-row
|
|
|
+ @selection-change="handleSelectionChange"
|
|
|
>
|
|
|
<el-table-column type="selection" width="35"></el-table-column>
|
|
|
<el-table-column type="index" label="序号"></el-table-column>
|
|
@@ -57,14 +55,14 @@
|
|
|
<el-table-column prop="clrOptinsName" label="清算机构"></el-table-column>
|
|
|
</el-table>
|
|
|
<el-pagination
|
|
|
- @size-change="handleSizeChange"
|
|
|
- @current-change="handleCurrentChange"
|
|
|
- :current-page="currentPage"
|
|
|
- :page-sizes="[15, 30, 45, 60]"
|
|
|
- :page-size="pageSize"
|
|
|
- layout="total, sizes, prev, pager, next, jumper"
|
|
|
- :total="cptSetlinfos.length"
|
|
|
- style="margin-top: 5px"
|
|
|
+ @size-change="handleSizeChange"
|
|
|
+ @current-change="handleCurrentChange"
|
|
|
+ :current-page="currentPage"
|
|
|
+ :page-sizes="[15, 30, 45, 60]"
|
|
|
+ :page-size="pageSize"
|
|
|
+ layout="total, sizes, prev, pager, next, jumper"
|
|
|
+ :total="cptSetlinfos.length"
|
|
|
+ style="margin-top: 5px"
|
|
|
></el-pagination>
|
|
|
<el-dialog v-model="showSetlDtlCheckRslt" title="明细对账结果">
|
|
|
<el-table :data="setlDtlCheckRslt" stripe :height="300" highlight-current-row>
|
|
@@ -78,63 +76,26 @@
|
|
|
<el-table-column prop="fundPaySumamt" label="报销金额"></el-table-column>
|
|
|
</el-table>
|
|
|
</el-dialog>
|
|
|
+ <Progress />
|
|
|
</el-main>
|
|
|
- <!-- <div style="position: fixed; z-index: 10000">-->
|
|
|
- <!-- <el-dialog v-model="showUpldRsps" title="结算单上传详情" :close-on-click-modal="false" :close-on-press-escape="false" :before-close="beforeCloseUpldRsps">-->
|
|
|
- <!-- <el-progress :text-inside="true" title="sd" :stroke-width="22" :percentage="percentage" status="success">-->
|
|
|
- <!-- <span><i v-show="percentage < 100" class="el-icon-loading"></i> {{ cptUpldRsTxt }}</span>-->
|
|
|
- <!-- </el-progress>-->
|
|
|
- <!-- <el-divider></el-divider>-->
|
|
|
- <!-- <el-table ref="upldRsTbl" :data="upldRsps" height="300" stripe>-->
|
|
|
- <!-- <el-table-column type="index" label="序号" width="40">-->
|
|
|
- <!-- <template #default="scope">-->
|
|
|
- <!-- <span :style="{ color: scope.row.code === 200 ? 'green' : 'red' }"> {{ scope.$index + 1 }} </span>-->
|
|
|
- <!-- </template>-->
|
|
|
- <!-- </el-table-column>-->
|
|
|
- <!-- <el-table-column label="住院号" width="80">-->
|
|
|
- <!-- <template #default="scope">-->
|
|
|
- <!-- <span :style="{ color: scope.row.code === 200 ? 'green' : 'red' }">{{ scope.row.patNo }}</span>-->
|
|
|
- <!-- </template>-->
|
|
|
- <!-- </el-table-column>-->
|
|
|
- <!-- <el-table-column label="次数" width="40">-->
|
|
|
- <!-- <template #default="scope">-->
|
|
|
- <!-- <span :style="{ color: scope.row.code === 200 ? 'green' : 'red' }">{{ scope.row.times }}</span>-->
|
|
|
- <!-- </template>-->
|
|
|
- <!-- </el-table-column>-->
|
|
|
- <!-- <el-table-column label="账页号" width="50">-->
|
|
|
- <!-- <template #default="scope">-->
|
|
|
- <!-- <span :style="{ color: scope.row.code === 200 ? 'green' : 'red' }">{{ scope.row.ledgerSn }}</span>-->
|
|
|
- <!-- </template>-->
|
|
|
- <!-- </el-table-column>-->
|
|
|
- <!-- <el-table-column label="上传结果">-->
|
|
|
- <!-- <template #default="scope">-->
|
|
|
- <!-- <span :style="{ color: scope.row.code === 200 ? 'green' : 'red' }">{{ scope.row.message }}</span>-->
|
|
|
- <!-- </template>-->
|
|
|
- <!-- </el-table-column>-->
|
|
|
- <!-- </el-table>-->
|
|
|
- <!-- </el-dialog>-->
|
|
|
- <!-- </div>-->
|
|
|
</el-container>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
-import {computed, onActivated, onMounted, reactive, ref} from '@vue/runtime-core'
|
|
|
+import { computed, onMounted, reactive, ref } from '@vue/runtime-core'
|
|
|
import store from '@/store'
|
|
|
-import {getClrTypes, getInsutypes} from '@/api/medical-insurance/si-dict'
|
|
|
-import {setlShtcuts} from '@/data/shortcuts'
|
|
|
-import {ElMessage, ElMessageBox} from 'element-plus'
|
|
|
-import {
|
|
|
- institutionSettlementDetailCheck,
|
|
|
- institutionSettlementLedgerCheck,
|
|
|
- selectSetlinfos,
|
|
|
- upldSetlList,
|
|
|
- upldSetlListTimes
|
|
|
-} from '@/api/medical-insurance/si-manage'
|
|
|
-import {formatDate} from '@/utils/date'
|
|
|
-import {getDateRangeFormatDate} from '../../../utils/date'
|
|
|
-import {setCallback} from '@/utils/websocket'
|
|
|
+import { getClrTypes, getInsutypes } from '@/api/medical-insurance/si-dict'
|
|
|
+import { setlShtcuts } from '@/data/shortcuts'
|
|
|
+import { ElMessage, ElMessageBox } from 'element-plus'
|
|
|
+import { institutionSettlementDetailCheck, institutionSettlementLedgerCheck, selectSetlinfos, upldSetlList, upldSetlListTimes } from '@/api/medical-insurance/si-manage'
|
|
|
+import { formatDate } from '@/utils/date'
|
|
|
+import { getDateRangeFormatDate } from '../../../utils/date'
|
|
|
+import Progress from '../../../components/progress/Index.vue'
|
|
|
|
|
|
export default {
|
|
|
+ components: {
|
|
|
+ Progress,
|
|
|
+ },
|
|
|
setup() {
|
|
|
const windowSize = store.state.app.windowSize
|
|
|
const tableHeight = windowSize.h - 100
|
|
@@ -143,16 +104,6 @@ export default {
|
|
|
const dateRange = ref(null)
|
|
|
const setlinfos = ref([])
|
|
|
const optins = ref([])
|
|
|
- const showUpldRsps = ref(false)
|
|
|
- const upldRsps = ref([])
|
|
|
- const percentage = ref(0)
|
|
|
- const upldRsTbl = ref(null)
|
|
|
- const cptUpldRsTxt = computed(() => {
|
|
|
- if (percentage.value < 100) {
|
|
|
- return `上传中 ( ${percentage.value}% ) ...`
|
|
|
- }
|
|
|
- return '上传完成(100%)'
|
|
|
- })
|
|
|
const slctSetlPrm = reactive({
|
|
|
insutype: '',
|
|
|
clrType: null,
|
|
@@ -205,14 +156,14 @@ export default {
|
|
|
slctSetlPrm.begndate = formatDate(dateRange.value[0])
|
|
|
slctSetlPrm.enddate = formatDate(dateRange.value[1])
|
|
|
selectSetlinfos(slctSetlPrm)
|
|
|
- .then((res) => {
|
|
|
- setlinfos.value = res.list
|
|
|
- optins.value = res.optins
|
|
|
- })
|
|
|
- .catch(() => {
|
|
|
- setlinfos.value = []
|
|
|
- optins.value = []
|
|
|
- })
|
|
|
+ .then((res) => {
|
|
|
+ setlinfos.value = res.list
|
|
|
+ optins.value = res.optins
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ setlinfos.value = []
|
|
|
+ optins.value = []
|
|
|
+ })
|
|
|
}
|
|
|
|
|
|
const bfrChkSetl = () => {
|
|
@@ -325,15 +276,18 @@ export default {
|
|
|
return
|
|
|
}
|
|
|
const dates = getDateRangeFormatDate(dateRange.value)
|
|
|
- showUpldRsps.value = true
|
|
|
- upldSetlListTimes(dates.startTime, dates.endTime, slctSetlPrm.insutype).then(() => {
|
|
|
- ElMessage({
|
|
|
- message: '上传完成。',
|
|
|
- type: 'info',
|
|
|
- duration: 2500,
|
|
|
- showClose: true,
|
|
|
+ upldSetlListTimes(dates.startTime, dates.endTime, slctSetlPrm.insutype)
|
|
|
+ .then(() => {
|
|
|
+ ElMessage({
|
|
|
+ message: '上传完成。',
|
|
|
+ type: 'info',
|
|
|
+ duration: 2500,
|
|
|
+ showClose: true,
|
|
|
+ })
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ store.commit('app/closeJdt')
|
|
|
})
|
|
|
- })
|
|
|
}
|
|
|
|
|
|
const selections = ref([])
|
|
@@ -342,39 +296,20 @@ export default {
|
|
|
}
|
|
|
|
|
|
const upldSelections = () => {
|
|
|
- showUpldRsps.value = true
|
|
|
- upldSetlList(selections.value).then(() => {
|
|
|
- ElMessage({
|
|
|
- message: '上传完成。',
|
|
|
- type: 'info',
|
|
|
- duration: 2500,
|
|
|
- showClose: true,
|
|
|
+ upldSetlList(selections.value)
|
|
|
+ .then(() => {
|
|
|
+ ElMessage({
|
|
|
+ message: '上传完成。',
|
|
|
+ type: 'info',
|
|
|
+ duration: 2500,
|
|
|
+ showClose: true,
|
|
|
+ })
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ store.commit('app/closeJdt')
|
|
|
})
|
|
|
- })
|
|
|
- }
|
|
|
-
|
|
|
- const beforeCloseUpldRsps = (done) => {
|
|
|
- percentage.value = 0
|
|
|
- upldRsps.value = []
|
|
|
- done()
|
|
|
- }
|
|
|
-
|
|
|
- const socketCallback = (data) => {
|
|
|
- switch (data.name) {
|
|
|
- case 'upldSetlListMessage':
|
|
|
- upldRsps.value.push(data)
|
|
|
- percentage.value = data.percentage
|
|
|
- upldRsTbl.value.$refs.bodyWrapper.scrollTop = upldRsTbl.value.$refs.bodyWrapper.scrollHeight
|
|
|
- break
|
|
|
- default:
|
|
|
- break
|
|
|
- }
|
|
|
}
|
|
|
|
|
|
- // onActivated(() => {
|
|
|
- // setCallback(socketCallback)
|
|
|
- // })
|
|
|
-
|
|
|
onMounted(() => {
|
|
|
getInsutypes().then((res) => {
|
|
|
insutypes.value = res
|
|
@@ -398,11 +333,6 @@ export default {
|
|
|
setlDtlCheckRslt,
|
|
|
optins,
|
|
|
showSetlDtlCheckRslt,
|
|
|
- showUpldRsps,
|
|
|
- upldRsTbl,
|
|
|
- upldRsps,
|
|
|
- percentage,
|
|
|
- cptUpldRsTxt,
|
|
|
upldSelections,
|
|
|
handleCurrentChange,
|
|
|
handleSizeChange,
|
|
@@ -411,7 +341,6 @@ export default {
|
|
|
upldAllList,
|
|
|
handleSelectionChange,
|
|
|
setlDtlCheck,
|
|
|
- beforeCloseUpldRsps,
|
|
|
}
|
|
|
},
|
|
|
}
|
|
@@ -431,6 +360,6 @@ function calSumamt(list) {
|
|
|
fundSum = fundSum.toFixed(2)
|
|
|
acctSum = acctSum.toFixed(2)
|
|
|
psnCashPay = psnCashPay.toFixed(2)
|
|
|
- return {medSum, fundSum, acctSum, psnCashPay}
|
|
|
+ return { medSum, fundSum, acctSum, psnCashPay }
|
|
|
}
|
|
|
</script>
|