package.js 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  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: 'pickup/package/index' + location.search,
  8. add_url: 'pickup/package/add',
  9. edit_url: 'pickup/package/edit',
  10. del_url: 'pickup/package/del',
  11. multi_url: 'pickup/package/multi',
  12. table: 'gift_package',
  13. },
  14. pageSize: 30,
  15. pageList: [30, 50, 100, 'All'],
  16. });
  17. var table = $("#table");
  18. // 初始化表格
  19. table.bootstrapTable({
  20. url: $.fn.bootstrapTable.defaults.extend.index_url,
  21. pk: 'id',
  22. sortName: 'id',
  23. columns: [
  24. [
  25. {checkbox: true},
  26. {field: 'id', title: __('Id')},
  27. {field: 'title', title: __('Title')},
  28. {field: 'image', title: __('Image'), events: Table.api.events.image, formatter: Table.api.formatter.image},
  29. {field: 'status', title: __('Status'), searchList: {"1": __('Status 1'), "2": __('Status 2')}, formatter: Table.api.formatter.status},
  30. {field: 'start_time', title: __('Start_time'), operate: 'RANGE', addclass: 'datetimerange', formatter: Table.api.formatter.datetime},
  31. {field: 'end_time', title: __('End_time'), operate: 'RANGE', addclass: 'datetimerange', formatter: Table.api.formatter.datetime},
  32. {field: 'link', title: __('提货链接地址'), operate: 'RANGE', addclass: 'datetimerange', formatter: Table.api.formatter.url},
  33. {field: 'qrcode', title: __('二维码(右击另存)'), events: Table.api.events.image, formatter: Table.api.formatter.image},
  34. {
  35. field: 'operate', title: __('Operate'),
  36. table: table,
  37. buttons: [
  38. {
  39. name: 'setgoods',
  40. title: "可选礼品",
  41. text: "可选礼品",
  42. extend: "data-area='[\"\90%\"\,\"\90%\"\]'",
  43. url: 'pickup/package/setgoods',
  44. icon: 'fa fa-table',
  45. classname: 'btn btn-info btn-xs btn-execute btn-dialog'
  46. },
  47. {
  48. name: 'gift_cardcode',
  49. title: "提货卡密",
  50. text: "提货卡密",
  51. extend: "data-area='[\"\90%\"\,\"\90%\"\]'",
  52. url: 'pickup/cardcode/index',
  53. icon: 'fa fa-table',
  54. classname: 'btn btn-info btn-xs btn-execute btn-dialog'
  55. },
  56. ],
  57. events: Table.api.events.operate,
  58. formatter: function (value, row, index) {
  59. var that = $.extend({}, this);
  60. var table = $(that.table).clone(true);
  61. // if (row.is_fabu == 2) {
  62. // $(table).data("operate-dfcj_release", null);
  63. // }
  64. that.table = table;
  65. return Table.api.formatter.operate.call(that, value, row, index);
  66. }
  67. }
  68. ]
  69. ]
  70. });
  71. // 为表格绑定事件
  72. Table.api.bindevent(table);
  73. },
  74. add: function () {
  75. Controller.api.bindevent();
  76. },
  77. edit: function () {
  78. Controller.api.bindevent();
  79. },
  80. setgoods: function () {
  81. let itemid = $("#item-id").val();
  82. Table.api.init({
  83. extend: {
  84. index_url: 'pickup/package/setgoods/ids/' + itemid + '/' + location.search,
  85. multi_url: 'pickup/package/savegoods/gpid/' + itemid,
  86. table: 'gift_package',
  87. },
  88. pageSize: 30,
  89. pageList: [30, 50, 100, 'All'],
  90. });
  91. var table = $("#table");
  92. // 初始化表格
  93. table.bootstrapTable({
  94. url: $.fn.bootstrapTable.defaults.extend.index_url,
  95. pk: 'id',
  96. sortName: 'id',
  97. columns: [
  98. [
  99. {field: 'id', title: __('Id')},
  100. {field: 'title', title: __('Title')},
  101. {field: 'image', title: __('礼品图'), events: Table.api.events.image, formatter: Table.api.formatter.image},
  102. {field: 'subtitle', title: __('副标题')},
  103. {field: 'price', title: __('价值'), operate: 'BETWEEN'},
  104. {field: 'isselected', title: __('选择'), events: function (e, value, row, index) {
  105. console.log(e, value, row, index);
  106. }, formatter: Table.api.formatter.toggle},
  107. ]
  108. ]
  109. });
  110. // 为表格绑定事件
  111. Table.api.bindevent(table);
  112. },
  113. api: {
  114. bindevent: function () {
  115. Form.api.bindevent($("form[role=form]"));
  116. }
  117. }
  118. };
  119. return Controller;
  120. });