import history from '../../utils/history'; import { getHospitalRecordList } from '../admission-record/service'; import { getDailyBill } from './service'; Component({ data: { hospitalRecordList: [], dailyBillList: [], tabs: [], activeIndex: 0 }, props: { componentData: {} }, didMount() { this.getHospitalRecordLists(); this.getDailyBillData(); const { inpatientIndexTab } = this.props.componentData.componentExtInfo; this.setData({ tabs: inpatientIndexTab ? JSON.parse(inpatientIndexTab) : [] }); }, methods: { handleTabClick({ index, tabsName }) { this.setData({ [tabsName]: index, activeIndex: index }); }, // 获取首页日清列表 async getDailyBillData() { const dailyBillList = await getDailyBill(); this.setData({ dailyBillList }); }, // 获取住院人列表 async getHospitalRecordLists() { // 调用接口 - 获取就住院人列表 const hospitalRecordList = await getHospitalRecordList(); this.setData({ hospitalRecordList: hospitalRecordList || [] }); }, // 功能选项点击 onClickFunction(e) { // 获取当前选中项类型 const { hospitalRecordList } = this.data; const { itemName, pagePath } = e.target.dataset.item; // eslint-disable-next-line default-case switch (pagePath) { // 入院登记 case 'admission-record': history.push({ title: itemName, pageType: pagePath, query: { color: '#000', backBtnColor: '#000', background: '#fff' } }); break; // 押金缴纳 || 日清单查询 || 出院结算 case 'deposit': case 'inventory-day': case 'settlement': // 无住院人数据,跳转至住院人页 if (!(hospitalRecordList && hospitalRecordList.length > 0)) { my.showToast({ content: '请先进行入院登记', duration: 1500, success: () => { history.push({ title: itemName, pageType: 'admission-record', query: { color: '#000', backBtnColor: '#000', background: '#fff' } }); } }); } else { history.push({ title: itemName, pageType: pagePath, query: { color: '#000', backBtnColor: '#000', background: '#fff' } }); } break; } }, // 跳转日清单查询 toDailyBill(e) { const { inpatientId, checkInDate } = e.target.dataset.item; history.push({ query: { inpatientId, billDate: checkInDate.slice(0, 11), color: '#000', backBtnColor: '#000', background: '#fff' }, title: '日清单查询', pageType: 'inventory-day' }); } } });