UNPKG

npmchenwei111

Version:

test1111

142 lines (130 loc) 4.36 kB
/** * Created by chenwei on 2017/8/22. */ import Screens from '../../../constant/Screens' import { DeviceEventEmitter } from 'react-native' import EmitterReactEvent from '../../../constant/EmitterReactEvent' import YTInvokeBaseUserInfoH5 from '../../../../src/native/public/YTInvokeBaseUserInfoH5' import YTInvokeOtherUserInfoH5 from '../../../../src/native/public/YTInvokeOtherUserInfoH5' import UrlParser from '../../../utils/UrlParser' import Sensors from '../../../constant/Sensors' import RequestSimplify from '../../../utils/RequestSimplify' import YoujieApi from '../../../api/YoujieApi' import YTShowToast from '../../../../src/native/YTShowToast' import YTInvokeJumpUtils from '../../../../src/native/YTInvokeJumpUtils' import YTInvokeIdCardInformation from '../../../../src/native/public/YTInvokeIdCardInformation' const Actions = { AUTH_USER_INFO: 'baseinfo', AUTH_MOBILE: 'mobile', AUTH_ZHIMA: 'zhima', AUTH_ID_CARD: 'idcard', AUTH_OTHER_INFO: 'otherinfo', ORDERDETAIL: 'orderdetail', MATCH: 'match', RESULT: 'result', LOAN_LIST: 'loanlist', CHOOSELOAN: 'chooseloan', CHECK: 'check', HOME: 'home' } class AuthData { handleAction (nav, infoUrl, extra) { if (!infoUrl) return if (infoUrl.contains(Actions.AUTH_USER_INFO)) { YTInvokeBaseUserInfoH5.jump('基本信息认证').then(() => { DeviceEventEmitter.emit(EmitterReactEvent.REFRESH_INDEX_PAGE) }).catch(() => { DeviceEventEmitter.emit(EmitterReactEvent.REFRESH_INDEX_PAGE) }) Sensors.analyseContent(Sensors.YJAPP_IDENTIFICATION_GO, { type: Actions.AUTH_USER_INFO }) } if (infoUrl.contains(Actions.AUTH_MOBILE)) { nav.navigate(Screens.CarrierScreen) Sensors.analyseContent(Sensors.YJAPP_IDENTIFICATION_GO, { type: Actions.AUTH_MOBILE }) } if (infoUrl.contains(Actions.AUTH_ZHIMA)) { nav.navigate(Screens.ZmxyPageScreen) Sensors.analyseContent(Sensors.YJAPP_IDENTIFICATION_GO, { type: Actions.ZmxyPageScreen }) } if (infoUrl.contains(Actions.AUTH_ID_CARD)) { YTInvokeIdCardInformation.jump().then(() => { DeviceEventEmitter.emit(EmitterReactEvent.REFRESH_INDEX_PAGE) }).catch(() => { DeviceEventEmitter.emit(EmitterReactEvent.REFRESH_INDEX_PAGE) }) Sensors.analyseContent(Sensors.YJAPP_IDENTIFICATION_GO, { type: Actions.AUTH_ID_CARD }) } if (infoUrl.contains(Actions.AUTH_OTHER_INFO)) { YTInvokeOtherUserInfoH5.jump().then(() => { DeviceEventEmitter.emit(EmitterReactEvent.REFRESH_INDEX_PAGE) }).catch(() => { DeviceEventEmitter.emit(EmitterReactEvent.REFRESH_INDEX_PAGE) }) Sensors.analyseContent(Sensors.YJAPP_IDENTIFICATION_GO, { type: Actions.AUTH_OTHER_INFO }) } if (infoUrl.contains(Actions.MATCH)) { nav.navigate(Screens.LoanMatchScreen, {sysBack: true}) } if (infoUrl.contains(Actions.RESULT)) { nav.navigate(Screens.MatchResultScreen, {sysBack: true}) } if (infoUrl.contains(Actions.ORDERDETAIL)) { let map = UrlParser.toMap(infoUrl) this._doActionOrderDetail(map['orderNo']) } if (infoUrl.contains(Actions.CHOOSELOAN)) { this._doActionChooseLoan(nav, extra) } if (infoUrl.contains(Actions.CHECK)) { nav.navigate(Screens.MessageAuthenticationScreen, {sysBack: true}) } if (infoUrl.contains(Actions.HOME)) { YTInvokeJumpUtils.jumpLoanHome({ tab: 'home' }) } if (infoUrl.contains(Actions.LOAN_LIST)) { YTInvokeJumpUtils.jumpLoanHome({ tab: 'loan' }) } } /** * 跳转订单详情 * @param nav * @param orderNo * @private */ _doActionOrderDetail (nav, orderNo) { if (orderNo) { nav.navigate(Screens.OrderDetailScreen, {orderNo: orderNo}) } else { YTShowToast.show('订单号为空') } } /** * 匹配选择页面 * @param nav * @param extra * @private */ _doActionChooseLoan (nav, extra) { RequestSimplify.fetch(YoujieApi.match_company, { amount: (extra && extra.amount) ? extra.amount : '1000', period: (extra && extra.period) ? extra.period : '7天', }, (res) => { nav.navigate(Screens.LoanMatchScreen, {sysBack: true}) }) } } export default new AuthData()