order.js 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  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: 'trade/order/index' + location.search,
  8. table: 'order',
  9. }
  10. });
  11. var table = $("#table");
  12. // 初始化表格
  13. table.bootstrapTable({
  14. url: $.fn.bootstrapTable.defaults.extend.index_url,
  15. pk: 'id',
  16. sortName: 'id',
  17. fixedColumns: true,
  18. fixedRightNumber: 1,
  19. columns: [
  20. [
  21. {checkbox: true},
  22. {field: 'id', title: __('Id'), operate: false},
  23. {field: 'order_no', title: __('Order_no'), operate: 'LIKE'},
  24. {field: 'users.mobile', title: __('User_id'), operate: 'LIKE'},
  25. {field: 'title', title: __('Title'), operate: 'LIKE'},
  26. {field: 'amount', title: __('Amount'), operate: false},
  27. {field: 'bonus', title: __('Bonus'), operate: false},
  28. {field: 'status', title: __("Status"),
  29. searchList: {100:__('Unpaid'), 101:__('Freeze'), 200:__('Success'), 400:__('Fail'), 500:__('Cancel')},
  30. formatter: Table.api.formatter.status
  31. },
  32. {field: 'user_type', title: __("用户类型"),
  33. searchList: {0:__('假人'), 1:__('真人')},
  34. formatter: Table.api.formatter.status
  35. },
  36. {field: 'note', title: __('Note'), operate: false, table: table, class: 'autocontent', formatter: Table.api.formatter.content},
  37. {field: 'create_time', title: __('Create_time'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime},
  38. {field: 'update_time', title: __('Update_time'), operate: false, addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime},
  39. {field: 'operate', title: __('Operate'),
  40. table: table,
  41. buttons: [{
  42. name: "freeze",
  43. text: __('Freeze'),
  44. classname: 'btn btn-xs btn-danger btn-magic btn-ajax',
  45. url: 'trade/order/operate/status/101',
  46. visible: function (row) {
  47. if(row.status == 100 && parseFloat(row.users.balance) < parseFloat(row.amount)){
  48. return true;
  49. }
  50. return false;
  51. },
  52. refresh: true
  53. },{
  54. name: "cancel",
  55. text: __('Cancel'),
  56. classname: 'btn btn-xs btn-primary btn-magic btn-ajax',
  57. url: 'trade/order/operate/status/500',
  58. visible: function (row) {
  59. if(row.status == 100 && parseFloat(row.users.balance) < parseFloat(row.amount)){
  60. return true;
  61. }
  62. return false;
  63. },
  64. refresh: true
  65. },{
  66. name: "success",
  67. text: __('Success'),
  68. classname: 'btn btn-xs btn-success btn-magic btn-ajax',
  69. url: 'trade/order/operate/status/200',
  70. visible: function (row) {
  71. if(row.status == 100 && parseFloat(row.users.balance) < parseFloat(row.amount)){
  72. return true;
  73. }
  74. return false;
  75. },
  76. refresh: true
  77. },{
  78. name: "account",
  79. text: __('Account change'),
  80. classname: 'btn btn-xs btn-info btn-magic btn-dialog',
  81. url: 'trade/money_log/index/ids/{user_id}',
  82. }],
  83. events: Table.api.events.operate, formatter: Table.api.formatter.operate
  84. }
  85. ]
  86. ]
  87. });
  88. // 为表格绑定事件
  89. Table.api.bindevent(table);
  90. },
  91. operate: function () {
  92. Controller.api.bindevent();
  93. },
  94. api: {
  95. bindevent: function () {
  96. Form.api.bindevent($("form[role=form]"));
  97. }
  98. }
  99. };
  100. return Controller;
  101. });