user.js 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  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: 'user/user/index',
  8. add_url: 'user/user/add',
  9. edit_url: 'user/user/edit',
  10. del_url: 'user/user/del',
  11. multi_url: 'user/user/multi',
  12. table: 'user',
  13. }
  14. });
  15. var table = $("#table");
  16. // 初始化表格
  17. table.bootstrapTable({
  18. url: $.fn.bootstrapTable.defaults.extend.index_url,
  19. pk: 'id',
  20. sortName: 'user.id',
  21. fixedColumns: true,
  22. fixedRightNumber: 1,
  23. columns: [
  24. [
  25. {checkbox: true},
  26. {field: '_id.$oid', title: __('Id'), sortable: true},
  27. {field: 'order_ddbh', title: __('销售订单号')},
  28. {field: 'gdbh', title: __('工单编号'), operate: 'LIKE'},
  29. {field: 'cpmc', title: __('产品名称'), operate: 'LIKE'},
  30. {field: 'total_ru_quantity', title: __('入库数量'), operate:false},
  31. {field: 'total_chu_quantity', title: __('出库数量'), operate: false},
  32. {field: 'remaining_quantity', title: __('剩余数量'), operate: false},
  33. // {field: 'email', title: __('Email'), operate: 'LIKE'},
  34. // {field: 'gender', title: __('Gender'), visible: false, searchList: {1: __('Male'), 0: __('Female')}},
  35. // {field: 'score', title: __('Score'), operate: 'BETWEEN', sortable: true},
  36. // {field: 'successions', title: __('Successions'), visible: false, operate: 'BETWEEN', sortable: true},
  37. // {field: 'maxsuccessions', title: __('Maxsuccessions'), visible: false, operate: 'BETWEEN', sortable: true},
  38. // {field: 'logintime', title: __('Logintime'), formatter: Table.api.formatter.datetime, operate: 'RANGE', addclass: 'datetimerange', sortable: true},
  39. // {field: 'loginip', title: __('Loginip'), formatter: Table.api.formatter.search},
  40. // {field: 'jointime', title: __('Jointime'), formatter: Table.api.formatter.datetime, operate: 'RANGE', addclass: 'datetimerange', sortable: true},
  41. // {field: 'joinip', title: __('Joinip'), formatter: Table.api.formatter.search},
  42. // {field: 'status', title: __('Status'), formatter: Table.api.formatter.status, searchList: {normal: __('Normal'), hidden: __('Hidden')}},
  43. // {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, formatter: Table.api.formatter.operate}
  44. {field: 'operate',
  45. title: __('Operate'),
  46. table: table,
  47. events: {
  48. 'click .btn-detail-out': function (e, value, row, index) {
  49. let url = 'user/user/chuku?order_ddbh=' + encodeURIComponent(row.order_ddbh)
  50. + '&gdbh=' + encodeURIComponent(row.gdbh)
  51. + '&cpmc=' + encodeURIComponent(row.cpmc);
  52. Fast.api.open(url, '出库明细', {
  53. area: ['80%', '80%'] // 设置弹窗大小
  54. });
  55. },
  56. 'click .btn-detail-in': function (e, value, row, index) {
  57. let url = 'user/user/ruku?order_ddbh=' + encodeURIComponent(row.order_ddbh)
  58. + '&gdbh=' + encodeURIComponent(row.gdbh)
  59. + '&cpmc=' + encodeURIComponent(row.cpmc);
  60. Fast.api.open(url, '入库明细', {
  61. area: ['80%', '80%']
  62. });
  63. },
  64. },
  65. formatter: function (value, row, index) {
  66. var buttons = [];
  67. buttons.push('<a href="javascript:;" class="btn btn-xs btn-info btn-detail-in"><i class="fa fa-sign-in"></i> 入库明细</a>');
  68. buttons.push('<a href="javascript:;" class="btn btn-xs btn-info btn-detail-out"><i class="fa fa-sign-out"></i> 出库明细</a>');
  69. return buttons.join(' ');
  70. }
  71. }
  72. ]
  73. ]
  74. });
  75. // 为表格绑定事件
  76. Table.api.bindevent(table);
  77. //切换栏目显示隐藏
  78. $(document).on("click", "a.btn-channel", function () {
  79. $("#archivespanel").toggleClass("col-md-10", $("#channelbar").hasClass("hidden"));
  80. $("#archivespanel").toggleClass("col-full-width", !$("#channelbar").hasClass("hidden"));
  81. $("#channelbar").toggleClass("hidden");
  82. });
  83. },
  84. add: function () {
  85. Controller.api.bindevent();
  86. },
  87. edit: function () {
  88. Controller.api.bindevent();
  89. },
  90. api: {
  91. bindevent: function () {
  92. Form.api.bindevent($("form[role=form]"));
  93. }
  94. }
  95. };
  96. return Controller;
  97. });