index.ts 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. import request from '@/utils/request';
  2. import { AxiosPromise } from 'axios';
  3. /**
  4. * 股票池历史数据查询对象
  5. */
  6. export interface StockPoolHistoryQuery {
  7. pageNum?: number;
  8. pageSize?: number;
  9. stockCode?: string;
  10. stockName?: string;
  11. recordDate?: string;
  12. startDate?: string;
  13. endDate?: string;
  14. }
  15. /**
  16. * 股票池历史数据对象
  17. */
  18. export interface StockPoolHistoryVO {
  19. id?: number;
  20. recordDate?: string;
  21. stockCode?: string;
  22. stockName?: string;
  23. changePercent?: number;
  24. closePrice?: number;
  25. totalAmount?: number;
  26. strengthScore?: number;
  27. circulationMarketValue?: number;
  28. mainRisePeriod?: string;
  29. recentRiseHand?: string;
  30. recentLimitUp?: string;
  31. dayHighestPrice?: number;
  32. dayLowestPrice?: number;
  33. dayAvgPrice?: number;
  34. dayClosePrice?: number;
  35. createTime?: string;
  36. updateTime?: string;
  37. }
  38. /**
  39. * 股票池历史数据表单对象
  40. */
  41. export interface StockPoolHistoryForm {
  42. id?: number;
  43. recordDate?: string;
  44. stockCode?: string;
  45. stockName?: string;
  46. changePercent?: number;
  47. closePrice?: number;
  48. totalAmount?: number;
  49. strengthScore?: number;
  50. circulationMarketValue?: number;
  51. mainRisePeriod?: string;
  52. recentRiseHand?: string;
  53. recentLimitUp?: string;
  54. dayHighestPrice?: number;
  55. dayLowestPrice?: number;
  56. dayAvgPrice?: number;
  57. dayClosePrice?: number;
  58. }
  59. /**
  60. * 查询股票池历史数据列表
  61. */
  62. export function listStockHistory(query: StockPoolHistoryQuery): AxiosPromise<StockPoolHistoryVO[]> {
  63. return request({
  64. url: '/stock/history/list',
  65. method: 'get',
  66. params: query
  67. });
  68. }
  69. /**
  70. * 查询股票池历史数据详情
  71. */
  72. export function getStockHistory(id: number): AxiosPromise<StockPoolHistoryVO> {
  73. return request({
  74. url: `/stock/history/${id}`,
  75. method: 'get'
  76. });
  77. }
  78. /**
  79. * 新增股票池历史数据
  80. */
  81. export function addStockHistory(data: StockPoolHistoryForm) {
  82. return request({
  83. url: '/stock/history/add',
  84. method: 'post',
  85. data: data
  86. });
  87. }
  88. /**
  89. * 修改股票池历史数据
  90. */
  91. export function updateStockHistory(data: StockPoolHistoryForm) {
  92. return request({
  93. url: '/stock/history/edit',
  94. method: 'put',
  95. data: data
  96. });
  97. }
  98. /**
  99. * 删除股票池历史数据
  100. */
  101. export function delStockHistory(ids: number | number[]) {
  102. return request({
  103. url: `/stock/history/${ids}`,
  104. method: 'delete'
  105. });
  106. }
  107. /**
  108. * 导入股票池历史数据
  109. * @param file Excel文件
  110. * @param recordDate 记录日期(格式:yyyy-MM-dd)
  111. * @param updateSupport 是否更新已存在数据
  112. */
  113. export function importStockHistory(file: File, recordDate: string, updateSupport: boolean = true) {
  114. const formData = new FormData();
  115. formData.append('file', file);
  116. formData.append('recordDate', recordDate);
  117. formData.append('updateSupport', updateSupport.toString());
  118. return request({
  119. url: '/stock/history/importData',
  120. method: 'post',
  121. data: formData,
  122. headers: {
  123. 'Content-Type': 'multipart/form-data'
  124. }
  125. });
  126. }