define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) { var Controller = { index: function () { // 初始化表格参数配置 Table.api.init({ extend: { index_url: 'packageorder/index' + location.search, add_url: 'packageorder/add', edit_url: 'packageorder/edit', // del_url: 'packageorder/del', multi_url: 'packageorder/multi', import_url: 'packageorder/import', table: 'package_order', } }); var table = $("#table"); // 初始化表格 table.bootstrapTable({ url: $.fn.bootstrapTable.defaults.extend.index_url, pk: 'id', sortName: 'id', fixedColumns: true, fixedRightNumber: 1, exportTypes: ['excel'], exportOptions: { ignoreColumn: ['id','user_id','package_id','price','operate'] }, columns: [ [ // {checkbox: true}, {field: 'id', title: __('Id')}, {field: 'order_no', title: __('Order_no')}, {field: 'use_status', title: __('Use_status'), searchList: {"0":__('Use_status 0'),"1":__('Use_status 1')}, formatter: Table.api.formatter.status}, {field: 'is_gift', title: __('Is_gift'), searchList: {"0":__('Is_gift 0'),"1":__('Is_gift 1')}, formatter: Table.api.formatter.normal}, {field: 'user_id', title: __('User_id')}, {field: 'user.firstname', title: __('User.firstname'), operate: 'LIKE'}, {field: 'user.lastname', title: __('User.lastname'), operate: 'LIKE'}, {field: 'package_id', title: __('Package_id')}, {field: 'package.name', title: __('Package.name'), operate: 'LIKE'}, {field: 'package.name_en', title: __('Package.name_en'), operate: 'LIKE'}, // {field: 'lesson_ids', title: __('Lesson_ids'), operate: false}, {field: 'sessions', title: __('Sessions')}, {field: 'type', title: __('Type'), searchList: {"1":__('Type 1'),"2":__('Type 2')}, formatter: Table.api.formatter.normal}, {field: 'remain', title: __('Remain'), operate:false}, {field: 'starttime', title: __('Starttime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime}, {field: 'days', title: __('Days')}, {field: 'endtime', title: __('Endtime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime}, {field: 'price', title: __('Price'), operate:false}, {field: 'order_status', title: __('Order_status'), searchList: {"0":__('Order_status 0'),"1":__('Order_status 1'),"10":__('Order_status 10')}, formatter: Table.api.formatter.status}, {field: 'pay_type', title: __('Pay_type'), searchList: {"1":__('Pay_type 1'),"2":__('Pay_type 2')}, formatter: Table.api.formatter.normal}, {field: 'remark', title: __('Remark'), operate: false}, {field: 'seller', title: __('Seller')}, {field: 'paytime', title: __('Paytime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime}, // {field: 'createtime', title: __('Createtime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime}, // {field: 'updatetime', title: __('Updatetime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime}, // {field: 'notice_status', title: __('Notice_status'), searchList: {"0":__('Notice_status 0'),"1":__('Notice_status 1'),"2":__('Notice_status 2'),"3":__('Notice_status 3')}, formatter: Table.api.formatter.status}, // {field: 'buy_notice_status', title: __('Buy_notice_status'), searchList: {"0":__('Buy_notice_status 0'),"1":__('Buy_notice_status 1')}, formatter: Table.api.formatter.status}, {field: 'operate', title: __('Operate'), table: table, buttons:[ { name:'jihuo', text:__('激活'), title:__('激活'), icon:'fa fa-exclamation-circle', classname:'btn btn-xs btn-info btn-ajax', url:'packageorder/jihuo/id/{ids}?dialog=1', target:'_self', hidden:function(row){ if(row.use_status == 0 && row.is_gift == 0){ return false } return true; }, refresh:{silent:true}, }, { name:'cancel', text:__('取消'), title:__('取消'), icon:'fa fa-exclamation-circle', classname:'btn btn-xs btn-info btn-ajax', url:'packageorder/cancel/id/{ids}?dialog=1', confirm:'确认取消?', target:'_self', refresh:{silent:true}, }, ], events: Table.api.events.operate, formatter: Table.api.formatter.operate} ] ] }); // 为表格绑定事件 Table.api.bindevent(table); }, userapply: function () { // 初始化表格参数配置 Table.api.init({ extend: { userapply_url: 'packageorder/userapply', table: 'package_order', } }); var table = $("#table"); // 初始化表格 table.bootstrapTable({ url: $.fn.bootstrapTable.defaults.extend.userapply_url, pk: 'id', sortName: 'id', fixedColumns: true, fixedRightNumber: 1, search:false, commonSearch:false, showColumns:false, showToggle:false, showExport:false, columns: [ [ // {checkbox: true}, {field: 'id', title: __('Id')}, {field: 'order_no', title: __('Order_no')}, {field: 'use_status', title: __('Use_status'), searchList: {"0":__('Use_status 0'),"1":__('Use_status 1')}, formatter: Table.api.formatter.status}, {field: 'is_gift', title: __('Is_gift'), searchList: {"0":__('Is_gift 0'),"1":__('Is_gift 1')}, formatter: Table.api.formatter.normal}, {field: 'user_id', title: __('User_id')}, {field: 'user.firstname', title: __('User.firstname'), operate: 'LIKE'}, {field: 'user.lastname', title: __('User.lastname'), operate: 'LIKE'}, {field: 'package_id', title: __('Package_id')}, {field: 'package.name', title: __('Package.name'), operate: 'LIKE'}, {field: 'package.name_en', title: __('Package.name_en'), operate: 'LIKE'}, // {field: 'lesson_ids', title: __('Lesson_ids'), operate: false}, {field: 'sessions', title: __('Sessions')}, {field: 'type', title: __('Type'), searchList: {"1":__('Type 1'),"2":__('Type 2')}, formatter: Table.api.formatter.normal}, {field: 'remain', title: __('Remain'), operate:false}, {field: 'starttime', title: __('Starttime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime}, {field: 'days', title: __('Days')}, {field: 'endtime', title: __('Endtime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime}, {field: 'price', title: __('Price'), operate:false}, {field: 'order_status', title: __('Order_status'), searchList: {"0":__('Order_status 0'),"1":__('Order_status 1'),"10":__('Order_status 10')}, formatter: Table.api.formatter.status}, {field: 'pay_type', title: __('Pay_type'), searchList: {"1":__('Pay_type 1'),"2":__('Pay_type 2')}, formatter: Table.api.formatter.normal}, {field: 'remark', title: __('Remark'), operate: false}, {field: 'seller', title: __('Seller')}, {field: 'paytime', title: __('Paytime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime}, // {field: 'createtime', title: __('Createtime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime}, // {field: 'updatetime', title: __('Updatetime'), operate:'RANGE', addclass:'datetimerange', autocomplete:false, formatter: Table.api.formatter.datetime}, // {field: 'notice_status', title: __('Notice_status'), searchList: {"0":__('Notice_status 0'),"1":__('Notice_status 1'),"2":__('Notice_status 2'),"3":__('Notice_status 3')}, formatter: Table.api.formatter.status}, // {field: 'buy_notice_status', title: __('Buy_notice_status'), searchList: {"0":__('Buy_notice_status 0'),"1":__('Buy_notice_status 1')}, formatter: Table.api.formatter.status}, {field: 'operate', title: __('Operate'), table: table, buttons:[ { name:'jihuo', text:__('同意并激活'), title:__('同意并激活'), icon:'fa fa-exclamation-circle', classname:'btn btn-xs btn-info btn-ajax', url:'packageorder/userapply_audit/id/{ids}/status/2?dialog=1', target:'_self', refresh:{silent:true}, }, { name:'refuse', text:__('驳回'), title:__('驳回'), icon:'fa fa-exclamation-circle', classname:'btn btn-xs btn-info btn-ajax', url:'packageorder/userapply_audit/id/{ids}/status/3?dialog=1', target:'_self', refresh:{silent:true}, }, ], events: Table.api.events.operate, formatter: Table.api.formatter.operate} ] ] }); // 为表格绑定事件 Table.api.bindevent(table); }, jihuo: function () { Controller.api.bindevent(); }, cancel: function () { Controller.api.bindevent(); }, add: function () { Controller.api.bindevent(); }, edit: function () { Controller.api.bindevent(); }, api: { bindevent: function () { Form.api.bindevent($("form[role=form]")); } } }; return Controller; });