report.js 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) {
  2. var Controller = {
  3. index: function () {
  4. // 初始化表格参数配置
  5. Table.api.init({
  6. extend: {
  7. index_url: 'report/index' + location.search,
  8. add_url: 'report/add',
  9. edit_url: 'report/edit',
  10. del_url: 'report/del',
  11. multi_url: 'report/multi',
  12. import_url: 'report/import',
  13. table: 'report',
  14. }
  15. });
  16. var table = $("#table");
  17. // 初始化表格
  18. table.bootstrapTable({
  19. url: $.fn.bootstrapTable.defaults.extend.index_url,
  20. pk: 'report_id',
  21. sortName: 'report_id',
  22. columns: [
  23. [
  24. {checkbox: true},
  25. {field: 'report_id', title: __('Report_id')},
  26. {field: 'parent_id', title: __('Parent_id')},
  27. {field: 'name', title: __('Name'), operate: 'LIKE', table: table, class: 'autocontent', formatter: Table.api.formatter.content},
  28. {field: 'is_replace', title: __('Is_replace')},
  29. {field: 'level', title: __('Level')},
  30. {field: 'createtime', title: __('Createtime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime},
  31. {field: 'updatetime', title: __('Updatetime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime},
  32. {field: 'remark', title: __('Remark'), operate: 'LIKE', table: table, class: 'autocontent', formatter: Table.api.formatter.content},
  33. {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate}
  34. ]
  35. ]
  36. });
  37. // 为表格绑定事件
  38. Table.api.bindevent(table);
  39. },
  40. recyclebin: function () {
  41. // 初始化表格参数配置
  42. Table.api.init({
  43. extend: {
  44. 'dragsort_url': ''
  45. }
  46. });
  47. var table = $("#table");
  48. // 初始化表格
  49. table.bootstrapTable({
  50. url: 'report/recyclebin' + location.search,
  51. pk: 'id',
  52. sortName: 'id',
  53. columns: [
  54. [
  55. {checkbox: true},
  56. {field: 'id', title: __('Id')},
  57. {field: 'name', title: __('Name'), align: 'left'},
  58. {
  59. field: 'deletetime',
  60. title: __('Deletetime'),
  61. operate: 'RANGE',
  62. addclass: 'datetimerange',
  63. formatter: Table.api.formatter.datetime
  64. },
  65. {
  66. field: 'operate',
  67. width: '140px',
  68. title: __('Operate'),
  69. table: table,
  70. events: Table.api.events.operate,
  71. buttons: [
  72. {
  73. name: 'Restore',
  74. text: __('Restore'),
  75. classname: 'btn btn-xs btn-info btn-ajax btn-restoreit',
  76. icon: 'fa fa-rotate-left',
  77. url: 'report/restore',
  78. refresh: true
  79. },
  80. {
  81. name: 'Destroy',
  82. text: __('Destroy'),
  83. classname: 'btn btn-xs btn-danger btn-ajax btn-destroyit',
  84. icon: 'fa fa-times',
  85. url: 'report/destroy',
  86. refresh: true
  87. }
  88. ],
  89. formatter: Table.api.formatter.operate
  90. }
  91. ]
  92. ]
  93. });
  94. // 为表格绑定事件
  95. Table.api.bindevent(table);
  96. },
  97. add: function () {
  98. Controller.api.bindevent();
  99. },
  100. edit: function () {
  101. Controller.api.bindevent();
  102. },
  103. api: {
  104. bindevent: function () {
  105. Form.api.bindevent($("form[role=form]"));
  106. }
  107. }
  108. };
  109. return Controller;
  110. });