import React, { useState } from 'react'; import { Button, Row, Tabs } from 'antd'; import Styles from './web.pc.module.less'; import PayConfigUpsert from '../upsert'; import { PAY_CHANNEL_WECHAT_JS_NAME, PAY_CHANNEL_WECHAT_H5_NAME, PAY_CHANNEL_WECHAT_MP_NAME, PAY_CHANNEL_WECHAT_NATIVE_NAME } from '../../../types/PayConfig'; import { generateNewId } from 'oak-domain/lib/utils/uuid'; const SystemPayChannels = []; // [label, value] const ApplicationPayChannels = {}; /** * * @param channel [label, value] */ export function registerSystemPayChannel(channel) { SystemPayChannels.push(channel); } /** * * @param type * @param channel [label, value] */ export function registerApplicationPayChannel(type, channel) { if (ApplicationPayChannels[type]) { ApplicationPayChannels[type].push(channel); } else { ApplicationPayChannels[type] = [channel]; } } const DefaultApplicationPayChannels = { web: [PAY_CHANNEL_WECHAT_JS_NAME, PAY_CHANNEL_WECHAT_H5_NAME, PAY_CHANNEL_WECHAT_NATIVE_NAME], wechatMp: [PAY_CHANNEL_WECHAT_MP_NAME], wechatPublic: [PAY_CHANNEL_WECHAT_JS_NAME], }; export default function render(props) { const { system, oakFullpath, operation, oakDirty } = props.data; const { t, update, setMessage, execute } = props.methods; const defaultApplicationPayChannelDict = { web: DefaultApplicationPayChannels.web.map(ele => [t(`payChannel::${ele}`), ele]), wechatMp: DefaultApplicationPayChannels.wechatMp.map(ele => [t(`payChannel::${ele}`), ele]), wechatPublic: DefaultApplicationPayChannels.wechatPublic.map(ele => [t(`payChannel::${ele}`), ele]), }; const [key, setKey] = useState(''); if (system && oakFullpath) { const { payConfig, application$system: applications } = system; return (