import dicMixin from '@common/js/mixins/dicMixin'
import tables from '@project/component/tables'
import moment from 'moment'
export default {
components: { tables },
mixins: [dicMixin],
data() {
return {
tableData: [],
pageParams: {
pageNum: 1,
pageSize: 10,
total: 0
},
columns: [
{ dataIndex: 'bedFee', title: '病房床位费', align: 'center' },
{ dataIndex: ' provCsltFee', title: '省内会诊费', align: 'center' },
{ dataIndex: ' provUrgtCsltFee', title: '省内紧急会诊费', align: 'center' },
{ dataIndex: ' outprovCsltFee', title: '省外会诊费', align: 'center' },
{ dataIndex: ' outprovUrgtCsltFee', title: '省外紧急会诊费', align: 'center' },
{ dataIndex: ' outprovOprnCsltFee', title: '省外手术会诊费', align: 'center' },
{ dataIndex: ' outprovMdtCsltFee', title: '省外多学科会诊费', align: 'center' },
{ dataIndex: ' outListDrugFee', title: '目录外药品费', align: 'center' },
{ dataIndex: ' outListTrtitemFee', title: '目录外诊疗项目费', align: 'center' },
{ dataIndex: ' ownpay', title: '不予报销项目费', align: 'center' }
],
formItems: [
{
label: '人员编号',
fieldDecoratorId: 'psnNo',
type: 'component',
currentView: 'personnel',
required: true,
params: { showPsnCertType: false },
span: 6,
func: (val) => {
console.log(val)
this.personInfo = val
this.queryForm.setFieldsValue({
psnNo: val.psnNo,
ptcpNo: val.psnNo,
psnName: val.psnName,
brdy: moment(val.brdy),
gend: val.gend
})
},
placeholder: '请选择'
},
{
label: '姓名',
type: 'input',
span: 6,
fieldDecoratorId: 'psnName',
disabled: true,
placeholder: '请输入'
},
{
label: '性别',
type: 'select',
fieldDecoratorId: 'gend',
span: 6,
disabled: true,
collectionType: 'gend',
placeholder: '请选择'
},
{
label: '出生日期',
type: 'date',
fieldDecoratorId: 'brdy',
span: 6,
disabled: true,
placeholder: '请输入'
},
{
label: '单位编号',
type: 'component',
fieldDecoratorId: 'empNo',
currentView: 'company',
span: 6,
func: (v) => {
if (v) {
}
}
},
{
label: '行政职务',
type: 'select',
fieldDecoratorId: 'admdut',
span: 6,
collectionType: 'ADMDUT',
placeholder: '请选择'
},
{
label: '医疗人员类别',
type: 'select',
fieldDecoratorId: 'medPsnType',
span: 6,
collectionType: 'MEDI_PSN_TYPE',
placeholder: '请选择'
},
{
label: '结算开始日期',
type: 'date',
fieldDecoratorId: 'begndate',
params: {
disabledDate: v => this.disabledStartDate(v)
},
span: 6,
placeholder: '请选择'
},
{
label: '结算结束日期',
type: 'date',
fieldDecoratorId: 'enddate',
params: {
disabledDate: v => this.disabledEndDate(v)
},
span: 6,
placeholder: '请选择'
},
{
label: '二次补偿标志',
fieldDecoratorId: 'type',
type: 'select',
align: 'center',
span: 6,
options: [
{ label: '个人返还', value: '1' },
{ label: '个人清退', value: '2' }
],
placeholder: '请选择'
},
{ label: '统筹区编码', type: 'cascader', fieldDecoratorId: 'insuAdmdvs', initValue: [], options: [], placeholder: '请选择', span: 6 }
],
formItems1: [
{ label: '病房床位费(限价)', type: 'number', fieldDecoratorId: 'bedFee', placeholder: '请输入', min: 0, max: 99999 },
{ label: '省内会诊费', type: 'number', fieldDecoratorId: 'provCsltFee', placeholder: '请输入', min: 0, max: 99999 },
{ label: '省内紧急会诊费', type: 'number', fieldDecoratorId: 'provUrgtCsltFee', placeholder: '请输入', min: 0, max: 99999 },
{ label: '省外会诊费', type: 'number', fieldDecoratorId: 'outprovCsltFee', placeholder: '请输入', min: 0, max: 99999 },
{ label: '省外紧急会诊费', type: 'number', fieldDecoratorId: 'outprovUrgtCsltFee', placeholder: '请输入', min: 0, max: 99999 },
{ label: '省外手术会诊费', type: 'number', fieldDecoratorId: 'outprovOprnCsltFee', placeholder: '请输入', min: 0, max: 99999 },
{ label: '省外多学科会诊费', type: 'number', fieldDecoratorId: 'outprovMdtCsltFee', placeholder: '请输入', min: 0, max: 99999 },
{ label: '目录外诊疗项目费', type: 'number', fieldDecoratorId: 'outListTrtitemFee', placeholder: '请输入', min: 0, max: 99999 },
{ label: '不予报销项目费', type: 'number', fieldDecoratorId: 'ownpay', placeholder: '请输入', min: 0, max: 99999 }
],
rowSelection: {
type: 'radio',
selectedRowKeys: [],
selectedRows: [],
selections: false,
// 行选择改变事件
onChange: this.onSelectChange
}
}
},
async mounted() {
const res = await this.$store.dispatch('getCanOptAdmdvs', this)
this.$set(this.formItem.find(v => v.fieldDecoratorId === 'insuAdmdvs'), 'options', res.data.data)
},
methods: {
// 开始时间校验
disabledStartDate(startValue) {
const endValue = this.queryForm.getFieldValue('crteTimeEndStr')
return moment(startValue).isAfter(new Date()) || moment(startValue).isAfter(endValue)
},
// 结束时间校验
disabledEndDate(endValue) {
const startValue = this.queryForm.getFieldValue('crteTimeBeginStr')
return moment(endValue).isAfter(new Date()) || moment(endValue).isBefore(startValue)
}
}
}