define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) { var Controller = { index: function () { // 初始化表格参数 Table.api.init({ extend: { index_url: 'commission/goods/index' + location.search, add_url: '', edit_url: 'commission/goods/edit', del_url: 'commission/goods/del', multi_url: 'commission/goods/multi', import_url: 'commission/goods/import', table: 'commission_goods', } }); var table = $("#table"); // 初始化表格 table.bootstrapTable({ url: $.fn.bootstrapTable.defaults.extend.index_url, pk: 'goods_id', sortName: 'goods_id', columns: [ [ {checkbox: true}, {field: 'goods_id', title: __('商品ID'), width: 80}, {field: 'title', title: __('商品名称'), operate: 'LIKE'}, {field: 'image', title: __('商品图片'), operate: false, events: Table.api.events.image, formatter: Table.api.formatter.image}, {field: 'price', title: __('商品价格'), operate: 'BETWEEN'}, {field: 'commission_goods.status', title: __('分销状态'), searchList: { "0": __('不参与分销'), "1": __('参与分销') }, formatter: function(value, row, index) { var statusMap = { '0': {text: '不参与分销', color: 'danger'}, '1': {text: '参与分销', color: 'success'} }; var status = statusMap[value] || {text: '不参与分销', color: 'danger'}; return '' + status.text + ''; }}, {field: 'commission_goods.self_rules', title: __('独立设置'), formatter: function(value, row, index) { var selfRulesMap = { '0': {text: '否', color: 'info'}, '1': {text: '是', color: 'success'} }; var selfRules = selfRulesMap[value] || {text: '否', color: 'info'}; return '' + selfRules.text + ''; }}, {field: 'commission_goods.commission_order_status', title: __('是否计入业绩'), formatter: function(value, row, index) { var orderStatusMap = { '0': {text: '否', color: 'danger'}, '1': {text: '是', color: 'success'} }; var orderStatus = orderStatusMap[value] || {text: '是', color: 'success'}; return '' + orderStatus.text + ''; }}, {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate, buttons: [ { name: 'detail', text: __('详情'), title: __('商品详情'), classname: 'btn btn-xs btn-primary btn-dialog', icon: 'fa fa-list', url: 'commission/goods/detail', callback: function (data) { table.bootstrapTable('refresh'); } }, { name: 'edit', text: __('设置佣金'), title: __('设置佣金'), classname: 'btn btn-xs btn-success btn-editone', icon: 'fa fa-edit', url: 'commission/goods/edit', callback: function (data) { table.bootstrapTable('refresh'); } } ], formatter: Table.api.formatter.operate} ] ] }); // 为表格绑定事件 Table.api.bindevent(table); }, detail: function () { Controller.api.bindevent(); }, edit: function () { Controller.api.bindevent(); }, api: { bindevent: function () { Form.api.bindevent($("form[role=form]")); // 绑定独立设置变化事件 $(document).on('change', 'input[name="row[self_rules]"]', function() { var value = $(this).val(); var commissionConfigContainer = $('.commission-config-container'); if (value == '1') { commissionConfigContainer.show(); } else { commissionConfigContainer.hide(); } }); } } }; return Controller; });