index.jsx 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224
  1. import { Table, Tooltip, Tag, Icon, Button } from '@douyinfe/semi-ui';
  2. import React from 'react';
  3. const { Column } = Table;
  4. class TableApp extends React.Component {
  5. constructor() {
  6. super();
  7. this.columns = [
  8. {
  9. title: '任务名',
  10. dataIndex: 'TaskName',
  11. width: 200,
  12. fixed: true,
  13. filters: [
  14. {
  15. text: 'King 3',
  16. value: 'King 3',
  17. },
  18. {
  19. text: 'King 4',
  20. value: 'King 4',
  21. },
  22. ],
  23. onFilter: (value, record) => record.name.includes(value),
  24. },
  25. {
  26. title: '目标ID',
  27. dataIndex: 'TargetId',
  28. width: 100,
  29. sorter: (a, b) => (a.age - b.age > 0 ? 1 : -1),
  30. },
  31. {
  32. title: '记录ID',
  33. width: 100,
  34. dataIndex: 'RecordId',
  35. },
  36. {
  37. title: '产品线',
  38. width: 120,
  39. dataIndex: 'AppId',
  40. },
  41. {
  42. title: '任务类型',
  43. width: 120,
  44. dataIndex: 'TaskType',
  45. },
  46. {
  47. title: '开始时间',
  48. width: 120,
  49. dataIndex: 'StartTime',
  50. },
  51. {
  52. title: '结束时间',
  53. width: 120,
  54. dataIndex: 'EndTime',
  55. },
  56. {
  57. title: '当前阶段',
  58. width: 120,
  59. },
  60. {
  61. title: '任务条件计数',
  62. // width: 400,
  63. dataIndex: 'CondStats',
  64. },
  65. {
  66. title: '任务状态',
  67. fixed: 'right',
  68. dataIndex: 'Status',
  69. width: 250,
  70. // render: (text, record) => (
  71. // <div style={{ display: 'flex', alignItems: 'center', justifyContent: 'center' }}>
  72. // <Icon type={'edit'} />
  73. // </div>
  74. // ),
  75. render: (text, record) => (
  76. <span style={{ display: 'inline-block' }}>
  77. <Icon type={'edit'} />
  78. </span>
  79. ),
  80. },
  81. ];
  82. this.data = [];
  83. this.rowSelection = {
  84. onChange: (selectedRowKeys, selectedRows) => {
  85. // console.log(`selectedRowKeys: ${selectedRowKeys}`, 'selectedRows: ', selectedRows);
  86. },
  87. getCheckboxProps: record => ({
  88. disabled: record.name === 'Michael James', // Column configuration not to be checked
  89. name: record.name,
  90. }),
  91. };
  92. /*for (let i = 0; i < 46; i++) {
  93. let age = 40 + (Math.random() > 0.5 ? 1 : -1) * Math.ceil(i/3);
  94. let name = `Edward King ${i}`;
  95. this.data.push({
  96. key: '' + i,
  97. name,
  98. age,
  99. address: `London, Park Lane no. ${i}`,
  100. description: `My name is ${name}, I am ${age} years old, living in New York No. ${i+1} Lake Park.`,
  101. });
  102. }*/
  103. this.dataObj = {
  104. statusCode: 0,
  105. statusMessage: 'success',
  106. data: {
  107. total: 4,
  108. list: [
  109. {
  110. RecordId: '37',
  111. TargetId: '3390524922266603',
  112. TargetType: 3,
  113. AppId: '1128',
  114. TaskName: '第一周时长任务',
  115. TaskId: '10158',
  116. TaskType: 60,
  117. StartTime: '1578672000',
  118. EndTime: '1579276800',
  119. CurrentStage: 2,
  120. StageTimes: {},
  121. Status: 1,
  122. CondStats:
  123. '{"TaskExtAnchorLiveDuration":90,"TaskExtAnchorLiveDuration_max":120,"TaskExtAnchorValidDay":0,"TaskExtAnchorValidDay_max":1}',
  124. CreateTime: '1576756961',
  125. },
  126. {
  127. RecordId: '39',
  128. TargetId: '3390524922266603',
  129. TargetType: 3,
  130. AppId: '1128',
  131. TaskName: '第一周收益任务',
  132. TaskId: '10159',
  133. TaskType: 60,
  134. StartTime: '1578672000',
  135. EndTime: '1579276800',
  136. CurrentStage: 2,
  137. StageTimes: {},
  138. Status: 1,
  139. CondStats:
  140. '{"TaskExtAnchorFanTicket":200,"TaskExtAnchorFanTicket_max":2600,"TaskExtAnchorLiveDuration":90,"TaskExtAnchorLiveDuration_max":120,"TaskExtAnchorValidDay":0,"TaskExtAnchorValidDay_max":1}',
  141. CreateTime: '1576757053',
  142. },
  143. {
  144. RecordId: '40',
  145. TargetId: '3390524922266603',
  146. TargetType: 3,
  147. AppId: '1128',
  148. TaskName: '第二周时长任务',
  149. TaskId: '10161',
  150. TaskType: 60,
  151. StartTime: '1578672000',
  152. EndTime: '1579276800',
  153. CurrentStage: 2,
  154. StageTimes: {},
  155. Status: 1,
  156. CondStats:
  157. '{"TaskExtAnchorLiveDuration":90,"TaskExtAnchorLiveDuration_max":120,"TaskExtAnchorValidDay":0,"TaskExtAnchorValidDay_max":1}',
  158. CreateTime: '1576757103',
  159. },
  160. {
  161. RecordId: '41',
  162. TargetId: '3390524922266603',
  163. TargetType: 3,
  164. AppId: '1128',
  165. TaskName: '第二周收益任务',
  166. TaskId: '10162',
  167. TaskType: 60,
  168. StartTime: '1578672000',
  169. EndTime: '1579276800',
  170. CurrentStage: 2,
  171. StageTimes: {},
  172. Status: 1,
  173. CondStats:
  174. '{"TaskExtAnchorFanTicket":200,"TaskExtAnchorFanTicket_max":2600,"TaskExtAnchorLiveDuration":90,"TaskExtAnchorLiveDuration_max":120,"TaskExtAnchorValidDay":0,"TaskExtAnchorValidDay_max":1}',
  175. CreateTime: '1576757109',
  176. },
  177. ],
  178. },
  179. };
  180. this.scroll = { /*y: 300,*/ x: `160%` };
  181. }
  182. render() {
  183. return (
  184. <>
  185. <Table columns={this.columns} dataSource={this.dataObj.data.list} scroll={this.scroll}>
  186. {/* <Column title="任务名" dataIndex="TaskName" fixed width={200} />
  187. <Column title="目标ID" width={100} dataIndex="TargetId" />
  188. <Column title="记录ID" width={100} dataIndex="RecordId" />
  189. <Column title="产品线" width={120} dataIndex="AppId" />
  190. <Column title="任务类型" width={120} dataIndex="TaskType" />
  191. <Column width={360} title="开始时间" dataIndex="StartTime" />
  192. <Column width={120} title="结束时间" dataIndex="EndTime" />
  193. <Column width={120} title="下发时间" dataIndex="CreateTime" />
  194. <Column width={120} title="当前阶段" />
  195. <Column title="任务条件计数" dataIndex="CondStats" />
  196. <Column fixed="right" width={120} title="任务状态" dataIndex="Status" /> */}
  197. </Table>
  198. <Table dataSource={this.dataObj.data.list} scroll={this.scroll}>
  199. <Column title="任务名" dataIndex="TaskName" fixed width={200} />
  200. <Column title="目标ID" width={100} dataIndex="TargetId" />
  201. <Column title="记录ID" width={100} dataIndex="RecordId" />
  202. <Column title="产品线" width={120} dataIndex="AppId" />
  203. <Column title="任务类型" width={120} dataIndex="TaskType" />
  204. <Column width={120} title="开始时间" dataIndex="StartTime" />
  205. <Column width={120} title="结束时间" dataIndex="EndTime" />
  206. <Column width={120} title="下发时间" dataIndex="CreateTime" />
  207. <Column width={120} title="当前阶段" />
  208. <Column title="任务条件计数" dataIndex="CondStats" />
  209. <Column fixed="right" width={120} title="任务状态" dataIndex="Status" />
  210. </Table>
  211. </>
  212. );
  213. }
  214. }
  215. export default TableApp;