UNPKG

mcp-invest-assistant

Version:
79 lines 2.94 kB
import axios from "axios"; import { COMPANY_MUTUAL_MARKET_API, COMPANY_MARGIN_TRADING_API, FUND_FLOW_TYPE } from '../config/index.js'; import logger from "../utils/logger.js"; /** * 获取公司资金流向数据(互联互通或融资融券) */ const getCompanyFundFlow = ({ stockCode, market, startDate, endDate, fundFlowType, limit, token }) => { return new Promise((resolve) => { try { let fetchUri = ''; if (fundFlowType === FUND_FLOW_TYPE['互联互通']) { const apiMap = COMPANY_MUTUAL_MARKET_API; fetchUri = apiMap[market]; } else if (fundFlowType === FUND_FLOW_TYPE['融资融券']) { const apiMap = COMPANY_MARGIN_TRADING_API; fetchUri = apiMap[market]; } else { resolve({ code: 0, message: '资金流向类型不支持', data: [] }); return; } if (!fetchUri) { resolve({ code: 0, message: '该市场不支持此资金流向类型', data: [] }); return; } const bodyData = { token, stockCode, startDate, endDate, }; if (limit) { bodyData.limit = limit; } logger.info(`[getCompanyFundFlow]请求地址:${fetchUri}`); logger.info(`[getCompanyFundFlow]参数:${JSON.stringify(bodyData)}`); axios.post(fetchUri, bodyData) .then(res => { logger.info(`[getCompanyFundFlow]返回数据状态码: ${res.status}`); logger.info(`[getCompanyFundFlow]返回数据: ${JSON.stringify(res.data)}`); resolve(res.data); }) .catch(e => { logger.info(`[getCompanyFundFlow]Error: ${e.message || '未知错误'}`); if (e.response) { logger.info(`[getCompanyFundFlow]Error status: ${e.response.status}`); logger.info(`[getCompanyFundFlow]Error data: ${JSON.stringify(e.response.data)}`); resolve(e.response.data); } else { resolve({ code: 0, message: e.message || '请求失败', data: [] }); } }); } catch (err) { logger.info(`[getCompanyFundFlow]Error: ${err}`); resolve({ code: 0, message: '请求失败', data: [] }); } }); }; export default getCompanyFundFlow; //# sourceMappingURL=getCompanyFundFlow.js.map