template_msg.js 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  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: 'shop/template_msg/index' + location.search,
  8. add_url: 'shop/template_msg/add',
  9. edit_url: 'shop/template_msg/edit',
  10. del_url: 'shop/template_msg/del',
  11. multi_url: 'shop/template_msg/multi',
  12. import_url: 'shop/template_msg/import',
  13. table: 'shop_template_msg',
  14. }
  15. });
  16. var table = $("#table");
  17. // 初始化表格
  18. table.bootstrapTable({
  19. url: $.fn.bootstrapTable.defaults.extend.index_url,
  20. pk: 'id',
  21. sortName: 'id',
  22. columns: [
  23. [{
  24. checkbox: true
  25. },
  26. {
  27. field: 'id',
  28. title: __('Id')
  29. },
  30. {
  31. field: 'type',
  32. title: __('Type'),
  33. searchList: {
  34. "1": __('Type 1'),
  35. "2": __('Type 2'),
  36. "3": __('Type 3'),
  37. "4": __('Type 4'),
  38. },
  39. formatter: Table.api.formatter.normal
  40. },
  41. {
  42. field: 'event',
  43. title: __('Event'),
  44. searchList: {
  45. "0": __('Event 0'),
  46. "1": __('Event 1'),
  47. "2": __('Event 2'),
  48. "3": __('Event 3'),
  49. "4": __('Event 4')
  50. },
  51. formatter: Table.api.formatter.normal
  52. },
  53. {
  54. field: 'title',
  55. title: __('Title'),
  56. operate: 'LIKE'
  57. },
  58. {
  59. field: 'tpl_id',
  60. title: __('Tpl_id'),
  61. operate: 'LIKE'
  62. },
  63. {
  64. field: 'page',
  65. title: __('Page'),
  66. operate: 'LIKE'
  67. },
  68. {
  69. field: 'switch',
  70. title: __('Switch'),
  71. searchList: {
  72. "1": __('Yes'),
  73. "0": __('No')
  74. },
  75. table: table,
  76. formatter: Table.api.formatter.toggle
  77. },
  78. {
  79. field: 'createtime',
  80. title: __('Createtime'),
  81. operate: 'RANGE',
  82. addclass: 'datetimerange',
  83. autocomplete: false,
  84. formatter: Table.api.formatter.datetime
  85. },
  86. {
  87. field: 'updatetime',
  88. title: __('Updatetime'),
  89. operate: 'RANGE',
  90. addclass: 'datetimerange',
  91. autocomplete: false,
  92. formatter: Table.api.formatter.datetime
  93. },
  94. {
  95. field: 'operate',
  96. title: __('Operate'),
  97. table: table,
  98. events: Table.api.events.operate,
  99. formatter: Table.api.formatter.operate
  100. }
  101. ]
  102. ]
  103. });
  104. // 为表格绑定事件
  105. Table.api.bindevent(table);
  106. },
  107. addOrEdit() {
  108. $(document).on("fa.event.appendfieldlist", "form[role=form] .btn-append", function (e, obj) {
  109. Form.events.selectpicker(obj);
  110. });
  111. $(document).on('change','#c-type',function(){
  112. let val = $(this).val();
  113. if([3,4].includes(parseInt(val))){
  114. $('.page_path').addClass('hide');
  115. }else{
  116. $('.page_path').removeClass('hide');
  117. }
  118. if(val==3){
  119. $('.template-extend').removeClass('hide');
  120. }else{
  121. $('.template-extend').addClass('hide');
  122. }
  123. })
  124. },
  125. add: function () {
  126. this.addOrEdit();
  127. Controller.api.bindevent();
  128. },
  129. edit: function () {
  130. this.addOrEdit();
  131. Controller.api.bindevent();
  132. },
  133. api: {
  134. bindevent: function () {
  135. $(document).on("click", ".btn-select-page", function (e, obj) {
  136. var that = this;
  137. Fast.api.open("shop/ajax/get_page_list", "选择路径", {
  138. callback: function (data) {
  139. $(that).parent().prev().val(data).trigger("change");
  140. }
  141. })
  142. });
  143. Form.api.bindevent($("form[role=form]"));
  144. }
  145. }
  146. };
  147. return Controller;
  148. });