123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175 |
- define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) {
- var Controller = {
- index: function () {
- // 初始化表格参数
- Table.api.init({
- extend: {
- index_url: 'commission/level/index' + location.search,
- add_url: 'commission/level/add',
- edit_url: 'commission/level/edit',
- del_url: 'commission/level/delete',
- multi_url: 'commission/level/multi',
- import_url: 'commission/level/import',
- table: 'commission_level',
- }
- });
- var table = $("#table");
- // 初始化表格
- table.bootstrapTable({
- url: $.fn.bootstrapTable.defaults.extend.index_url,
- pk: 'level',
- sortName: 'level',
- columns: [
- [
- {checkbox: true},
- {field: 'level', title: __('等级权重'), width: 80},
- {field: 'name', title: __('等级名称'), operate: 'LIKE'},
- {field: 'image', title: __('等级徽章'), operate: false, events: Table.api.events.image, formatter: Table.api.formatter.image},
- {field: 'commission_rules.commission_1', title: __('一级佣金比例'), operate: false, formatter: function(value, row, index) {
- return (value || '0.00') + '%';
- }},
- {field: 'commission_rules.commission_2', title: __('二级佣金比例'), operate: false, formatter: function(value, row, index) {
- return (value || '0.00') + '%';
- }},
- {field: 'commission_rules.commission_3', title: __('三级佣金比例'), operate: false, formatter: function(value, row, index) {
- return (value || '0.00') + '%';
- }},
- {field: 'upgrade_type', title: __('升级方式'), searchList: {
- "0": __('手动升级'),
- "1": __('自动升级')
- }, formatter: function(value, row, index) {
- var typeMap = {
- '0': {text: '手动升级', color: 'info'},
- '1': {text: '自动升级', color: 'success'}
- };
- var type = typeMap[value] || {text: value, color: 'default'};
- return '<span class="label label-' + type.color + '">' + type.text + '</span>';
- }},
- {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate,
- buttons: [
- {
- name: 'edit',
- text: __('编辑'),
- title: __('编辑'),
- classname: 'btn btn-xs btn-success btn-editone',
- icon: 'fa fa-edit',
- url: 'commission/level/edit',
- callback: function (data) {
- table.bootstrapTable('refresh');
- }
- },
- {
- name: 'del',
- text: __('删除'),
- title: __('删除'),
- classname: 'btn btn-xs btn-danger btn-delone',
- icon: 'fa fa-trash',
- url: 'commission/level/delete',
- visible: function (row) {
- return row.level != 1; // 默认等级不能删除
- },
- callback: function (data) {
- table.bootstrapTable('refresh');
- }
- }
- ],
- formatter: Table.api.formatter.operate}
- ]
- ]
- });
- // 为表格绑定事件
- Table.api.bindevent(table);
- },
- add: function () {
- Controller.api.bindevent();
- },
- edit: function () {
- Controller.api.bindevent();
- },
- select: function () {
- // 初始化表格参数
- Table.api.init({
- extend: {
- index_url: 'commission/level/select' + location.search,
- }
- });
- var table = $("#table");
- // 初始化表格
- table.bootstrapTable({
- url: $.fn.bootstrapTable.defaults.extend.index_url,
- pk: 'level',
- sortName: 'level',
- columns: [
- [
- {checkbox: true},
- {field: 'level', title: __('等级权重'), width: 80},
- {field: 'name', title: __('等级名称')},
- {field: 'image', title: __('等级徽章'), operate: false, events: Table.api.events.image, formatter: Table.api.formatter.image},
- {field: 'commission_rules.commission_1', title: __('一级佣金比例'), operate: false, formatter: function(value, row, index) {
- return (value || '0.00') + '%';
- }},
- {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate,
- buttons: [
- {
- name: 'choose',
- text: __('选择'),
- title: __('选择'),
- classname: 'btn btn-xs btn-primary btn-choose',
- icon: 'fa fa-check',
- click: function (data) {
- var multiple = Backend.api.query('multiple');
- multiple = multiple == 'true' ? true : false;
- Fast.api.close(data);
- }
- }
- ],
- formatter: Table.api.formatter.operate}
- ]
- ]
- });
- // 为表格绑定事件
- Table.api.bindevent(table);
- },
- api: {
- bindevent: function () {
- Form.api.bindevent($("form[role=form]"));
-
- // 绑定升级类型变化事件
- $(document).on('change', 'input[name="row[upgrade_type]"]', function() {
- var value = $(this).val();
- var upgradeRulesContainer = $('.upgrade-rules-container');
- if (value == '1') {
- upgradeRulesContainer.show();
- } else {
- upgradeRulesContainer.hide();
- }
- });
- // 添加升级条件
- $(document).on('click', '.add-upgrade-rule', function() {
- var container = $(this).closest('.upgrade-rules-container').find('.upgrade-rules-list');
- var template = container.find('.upgrade-rule-item:first').clone();
- template.find('input').val('');
- container.append(template);
- });
- // 删除升级条件
- $(document).on('click', '.remove-upgrade-rule', function() {
- var item = $(this).closest('.upgrade-rule-item');
- var container = item.closest('.upgrade-rules-list');
- if (container.find('.upgrade-rule-item').length > 1) {
- item.remove();
- }
- });
- }
- }
- };
- return Controller;
- });
|