templatedata.js 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. (function (require, model) {
  2. model = model || {};
  3. var exports = {};
  4. var List = [];
  5. // var count = 55;
  6. var count = 5;
  7. Mock.Random.increment(1000);
  8. for (var i = 0; i < count; i++) {
  9. List.push(Mock.mock({
  10. id: '@increment(2)',
  11. title: '@ctitle(8, 15)',
  12. createAt: '@date',
  13. author: '@cname',
  14. auditor: '@cname',
  15. importance: '@integer(1, 3)',
  16. 'type|1': ['CN', 'US', 'JP', 'EU'],
  17. 'status|1': ['published', 'draft', 'deleted'],
  18. pageviews: '@integer(300, 5000)',
  19. remark: '@ctitle(15, 100)',
  20. EVALUATION_PERIOD_ID: '@date',
  21. 'OPEN_FLAG|1': ['O', 'N', 'C'],
  22. 'MEASURE|1': ['已', '未'],
  23. 'LOCK|1': ['已', '未']
  24. }));
  25. }
  26. // var index = 5;
  27. // Mock.Random.increment(1000)
  28. // for (var i = 0; i < index; i++) {
  29. // List[i].subdata = Mock.mock({
  30. // id: '@increment(2)',
  31. // title: '@ctitle(8, 15)',
  32. // createAt: '@date',
  33. // 'status|1': ['published', 'draft', 'deleted'],
  34. // pageviews: '@integer(300, 5000)',
  35. // remark: '@ctitle(15, 100)',
  36. // EVALUATION_PERIOD_ID: '@date',
  37. // 'OPEN_FLAG|1': ['O', 'N', 'C'],
  38. // 'MEASURE|1': ['已', '未'],
  39. // 'LOCK|1': ['已', '未']
  40. // })
  41. // }
  42. function paramUrl2Obj (url) {
  43. var search = url.split('?')[1];
  44. if (!search) {
  45. return {};
  46. }
  47. return JSON.parse('{"' + decodeURIComponent(search).replace(/"/g, '\\"').replace(/&/g, '","').replace(/=/g, '":"').replace(/\n/g, '\\n') + '"}');
  48. }
  49. // function paramBody2Obj (body) {
  50. // if (!body) {
  51. // return {};
  52. // }
  53. // return JSON.parse('{"' + decodeURIComponent(body).replace(/"/g, '\\"').replace(/&/g, '","').replace(/=/g, '":"').replace(/\n/g, '\\n') + '"}');
  54. // }
  55. exports.getList = function (config) {
  56. // var reqData = paramBody2Obj(config.body)
  57. var reqData = paramUrl2Obj(config.url);
  58. var page = reqData.page;
  59. var size = reqData.size;
  60. var condition = reqData.condition ? JSON.parse(reqData.condition) : {};
  61. var createAt = condition.createAt;
  62. var type = condition.type;
  63. var title = condition.title;
  64. var sort = condition.sort;
  65. // var id = reqData.id;
  66. // var { condition, page = 1, size = 20 } = param2Obj(config.url)
  67. // var { createAt, type, title, sort } = JSON.parse(condition)
  68. var mockList = List.filter(function (item) {
  69. if (createAt && item.createAt !== createAt) {
  70. return false;
  71. }
  72. if (type && item.type !== type) {
  73. return false;
  74. }
  75. if (title && item.title.indexOf(title) < 0) {
  76. return false
  77. ;
  78. }
  79. return true;
  80. });
  81. if (sort === '-id') {
  82. mockList = mockList.reverse();
  83. }
  84. var pageList = [];
  85. if (page && size) {
  86. pageList = mockList.filter(function (item, index) {
  87. return index < size * page && index >= size * (page - 1);
  88. });
  89. } else {
  90. pageList = mockList;
  91. }
  92. return {
  93. total: mockList.length,
  94. data: pageList
  95. };
  96. };
  97. // exports.filterList = function () {
  98. // return pageList;
  99. // };
  100. exports.save = function () {
  101. return {test: 'test'};
  102. };
  103. model['templatedata'] = exports;
  104. })(window, yufp.mock);