define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) {
var Controller = {
index: function () {
// 初始化表格参数
Table.api.init({
extend: {
index_url: 'user/share/index' + location.search,
add_url: 'user/share/add',
edit_url: 'user/share/edit',
del_url: 'user/share/del',
multi_url: 'user/share/multi',
import_url: 'user/share/import',
detail_url: 'user/share/detail',
table: 'shop_user_share',
}
});
var table = $("#table");
// 初始化表格
table.bootstrapTable({
url: $.fn.bootstrapTable.defaults.extend.index_url,
pk: 'id',
sortName: 'id',
fixedColumns: true,
fixedRightNumber: 1,
columns: [
[
{checkbox: true},
{field: 'id', title: __('Id'), sortable: true},
{
field: 'user.nickname',
title: '受邀用户',
operate: 'LIKE',
formatter: function (value, row, index) {
if (row.user) {
return '
' +
row.user.nickname + '(' + row.user.username + ')';
}
return '-';
}
},
{field: 'share_id', title: '分享者ID', sortable: true},
{
field: 'spm',
title: 'SPM参数',
operate: 'LIKE',
formatter: function (value, row, index) {
return '' + value + '
';
}
},
{field: 'page', title: '页面路径', operate: 'LIKE'},
{field: 'query', title: '查询参数', operate: 'LIKE'},
{
field: 'platform',
title: '平台',
searchList: {"H5":"H5网页","WechatOfficialAccount":"微信公众号网页","WechatMiniProgram":"微信小程序","App":"APP"},
formatter: function (value, row, index) {
return '' + row.platform_text + '';
}
},
{
field: 'from',
title: '来源',
searchList: {"forward":"直接转发","poster":"识别海报","link":"分享链接"},
formatter: function (value, row, index) {
var colorClass = value === 'poster' ? 'label-success' : (value === 'forward' ? 'label-info' : 'label-warning');
return '' + row.from_text + '';
}
},
{
field: 'ext.memo',
title: '备注',
operate: false,
formatter: function (value, row, index) {
if (row.ext && row.ext.memo) {
return '' + row.ext.memo + '';
}
return '-';
}
},
{field: 'createtime', title: __('Createtime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime},
{field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate,
formatter: Table.api.formatter.operate,
buttons: [
{
name: 'detail',
title: '详情',
classname: 'btn btn-xs btn-info btn-detail',
icon: 'fa fa-list',
url: 'user/share/detail'
}
]
}
]
]
});
// 为表格绑定事件
Table.api.bindevent(table);
},
add: function () {
Controller.api.bindevent();
},
edit: function () {
Controller.api.bindevent();
},
detail: function () {
Controller.api.bindevent();
},
api: {
bindevent: function () {
Form.api.bindevent($("form[role=form]"));
}
}
};
return Controller;
});