index.js 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) {
  2. var Controller = {
  3. indexs: function () {
  4. // 初始化表格参数配置
  5. var name = $("#assign-data-name").val();
  6. var is_admin = $("#assign-data-is_admin").val();
  7. Table.api.init({
  8. extend: {
  9. index_url: 'famysql/index/indexs?name=' + name + '&is_admin=' + is_admin,
  10. add_url: 'famysql/index/index_add?table=' + name,
  11. },
  12. showExport: false,//导出按钮导出整个表的所有行
  13. showToggle: false,//切换卡片视图和表格视图
  14. showColumns: false,//切换显示隐藏列
  15. search: false,//关闭快速搜索
  16. commonSearch: false,//关闭通用搜索
  17. // pagination: false,
  18. });
  19. var table = $("#table");
  20. // 初始化表格
  21. table.bootstrapTable({
  22. url: $.fn.bootstrapTable.defaults.extend.index_url,
  23. pk: 'id',
  24. sortName: 'id',
  25. columns: [
  26. [
  27. { field: 'name', title: __('Name') },
  28. { field: 'column_name', title: __('Column_name') },
  29. { field: 'non_unique', title: __('Non_unique') },
  30. {
  31. field: 'operate',
  32. title: __('Table Operate'),
  33. buttons: [
  34. {
  35. name: 'index_edit',
  36. icon: 'fa fa-pencil',
  37. title: __('Edit'),
  38. extend: 'data-toggle="tooltip"',
  39. url: function (row) {
  40. return Fast.api.fixurl("famysql/index/index_edit?table=" + name + "&name=" + row.name);
  41. },
  42. classname: 'btn btn-xs btn-success btn-dialog'
  43. },
  44. {
  45. name: 'index_del',
  46. icon: 'fa fa-trash',
  47. title: __('Del'),
  48. extend: 'data-toggle="tooltip"',
  49. url: function (row) {
  50. return Fast.api.fixurl("famysql/index/index_del?table=" + name + "&name=" + row.name);
  51. },
  52. classname: 'btn btn-xs btn-danger btn-ajax',
  53. confirm: function (row) {
  54. return '是否确定删除该“' + row.name + '”索引,不可恢复?';
  55. },
  56. success: function (data, ret) {
  57. $(".btn-refresh").trigger("click"); //刷新数据
  58. },
  59. error: function (data, ret) {
  60. console.log(data, ret);
  61. Layer.alert(ret.msg);
  62. return false;
  63. }
  64. }
  65. ],
  66. table: table,
  67. events: Table.api.events.operate,
  68. formatter: function (value, row, index) {
  69. var that = $.extend({}, this);
  70. if (!row.is_admin || row.non_unique === 'PRIMARY') {
  71. return '-';
  72. }
  73. return Table.api.formatter.operate.call(that, value, row, index);
  74. }
  75. }
  76. ]
  77. ]
  78. });
  79. // 为表格绑定事件
  80. Table.api.bindevent(table);
  81. },
  82. index_add: function () {
  83. Controller.api.bindevent();
  84. },
  85. index_edit: function () {
  86. Controller.api.bindevent();
  87. },
  88. api: {
  89. bindevent: function () {
  90. Form.api.bindevent($("form[role=form]"));
  91. }
  92. }
  93. };
  94. return Controller;
  95. });