import request from "./http"; const urlsConfig = { corp: { getCorpMemberHomepageInfo: 'getCorpMemberHomepageInfo', getTeamBaseInfo: 'getTeamBaseInfo', getTeamData: 'getTeamData', queryWxJoinedTeams: 'queryWxJoinedTeams', wxAppLogin: 'wxAppLogin', getDeptList: 'getRealDeptList', getHospitalList: 'getRealHospital', addCorpMember: 'addCorpMember', getCorpMemberData: 'getCorpMemberData', updateCorpMember: 'updateCorpMember', addCorpMemberFromWxapp: "addCorpMemberFromWxapp", updateCorpMemberFromWxapp: "updateCorpMemberFromWxapp", submitCertProfile: 'submitCertProfile', getMemberVerifyStatus: "getMemberVerifyStatus", getJoinedTeams: "getJoinedTeams", updateTeamInfo: "updateTeamInfo" }, knowledgeBase: { getArticleByIds: 'getArticleByIds', getCommonPhrases: 'getCommonPhrases', saveCommonPhrase: 'saveCommonPhrase', deleteCommonPhrase: 'deleteCommonPhrase', getCommonPhraseCategories: 'getCommonPhraseCategories', saveCommonPhraseCategory: 'saveCommonPhraseCategory' }, member: { addCustomer: 'add', bindMiniAppArchive: "bindMiniAppArchive", getCustomerByCustomerId: 'getCustomerByCustomerId', getMiniAppCustomers: 'getMiniAppCustomers', getTeamCustomers: 'getTeamCustomers', getUnbindMiniAppCustomers: 'getUnbindMiniAppCustomers', unbindMiniAppArchive: 'unbindMiniAppArchive', }, wecom: { addContactWay: 'addContactWay' }, im: { getUserSig: 'getUserSig', sendSystemMessage: "sendSystemMessage", getChatRecordsByGroupId: "getChatRecordsByGroupId" } } const urls = Object.keys(urlsConfig).reduce((acc, path) => { const config = urlsConfig[path] || {}; const keys = Object.keys(config); keys.forEach((key) => { const data = acc[key]; if (data) { throw new Error(`${data[0]}.${data[1]}ε’Œ${path}.${url}重倍了`) } acc[key] = [path, config[key]] return acc }) return acc }, {}) console.log('urls: ', urls) export default async function api(urlId, data) { const config = urls[urlId]; if (!config) { throw new Error(`Unknown URL ID: ${urlId}`); } const [path, type] = config; return request({ url: `/getYoucanData/${path}`, data: { ...data, type, } }) }