mock平台

interfaceCol.js 2.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. import axios from 'axios';
  2. // Actions
  3. const FETCH_INTERFACE_COL_LIST = 'yapi/interfaceCol/FETCH_INTERFACE_COL_LIST';
  4. const FETCH_CASE_DATA = 'yapi/interfaceCol/FETCH_CASE_DATA';
  5. const FETCH_CASE_LIST = 'yapi/interfaceCol/FETCH_CASE_LIST';
  6. const SET_COL_DATA = 'yapi/interfaceCol/SET_COL_DATA';
  7. const FETCH_VARIABLE_PARAMS_LIST = 'yapi/interfaceCol/FETCH_VARIABLE_PARAMS_LIST';
  8. const FETCH_CASE_ENV_LIST = 'yapi/interfaceCol/FETCH_CASE_ENV_LIST';
  9. // Reducer
  10. const initialState = {
  11. interfaceColList: [
  12. {
  13. _id: 0,
  14. name: '',
  15. uid: 0,
  16. project_id: 0,
  17. desc: '',
  18. add_time: 0,
  19. up_time: 0,
  20. caseList: [{}]
  21. }
  22. ],
  23. isShowCol: true,
  24. isRender: false,
  25. currColId: 0,
  26. currCaseId: 0,
  27. currCase: {},
  28. currCaseList: [],
  29. variableParamsList: [],
  30. envList: []
  31. };
  32. export default (state = initialState, action) => {
  33. switch (action.type) {
  34. case FETCH_INTERFACE_COL_LIST: {
  35. return {
  36. ...state,
  37. interfaceColList: action.payload.data.data
  38. };
  39. }
  40. case FETCH_CASE_DATA: {
  41. return {
  42. ...state,
  43. currCase: action.payload.data.data
  44. };
  45. }
  46. case FETCH_CASE_LIST: {
  47. return {
  48. ...state,
  49. currCaseList: action.payload.data.data
  50. };
  51. }
  52. case FETCH_VARIABLE_PARAMS_LIST: {
  53. return {
  54. ...state,
  55. variableParamsList: action.payload.data.data
  56. };
  57. }
  58. case SET_COL_DATA: {
  59. return {
  60. ...state,
  61. ...action.payload
  62. };
  63. }
  64. case FETCH_CASE_ENV_LIST: {
  65. return {
  66. ...state,
  67. envList: action.payload.data.data
  68. };
  69. }
  70. default:
  71. return state;
  72. }
  73. };
  74. // Action Creators
  75. export function fetchInterfaceColList(projectId) {
  76. return {
  77. type: FETCH_INTERFACE_COL_LIST,
  78. payload: axios.get('/api/col/list?project_id=' + projectId)
  79. };
  80. }
  81. export function fetchCaseData(caseId) {
  82. return {
  83. type: FETCH_CASE_DATA,
  84. payload: axios.get('/api/col/case?caseid=' + caseId)
  85. };
  86. }
  87. export function fetchCaseList(colId) {
  88. return {
  89. type: FETCH_CASE_LIST,
  90. payload: axios.get('/api/col/case_list/?col_id=' + colId)
  91. };
  92. }
  93. export function fetchCaseEnvList(col_id) {
  94. return {
  95. type: FETCH_CASE_ENV_LIST,
  96. payload: axios.get('/api/col/case_env_list', {
  97. params: { col_id }
  98. })
  99. };
  100. }
  101. export function fetchVariableParamsList(colId) {
  102. return {
  103. type: FETCH_VARIABLE_PARAMS_LIST,
  104. payload: axios.get('/api/col/case_list_by_var_params?col_id=' + colId)
  105. };
  106. }
  107. export function setColData(data) {
  108. return {
  109. type: SET_COL_DATA,
  110. payload: data
  111. };
  112. }