define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) { var Controller = { index: function () { // 初始化表格参数配置 $(".btn-add").data("area",["800px","560px"]); Table.api.init({ extend: { index_url: 'leave/index' + location.search, add_url: 'leave/add', edit_url: 'leave/edit', del_url: 'leave/del', multi_url: 'leave/multi', import_url: 'leave/import', table: 'leave', } }); var table = $("#table"); // 初始化表格 table.bootstrapTable({ url: $.fn.bootstrapTable.defaults.extend.index_url, pk: 'id', sortName: 'id', columns: [ [ {checkbox: true}, {field: 'order_number', title: __('序号')}, {field: 'unit_id_text', title: __('Unit_id')}, {field: 'people_id_text', title: __('People_id')}, {field: 'start_time', title: __('Start_time'), operate:'RANGE', addclass:'datetimerange', autocomplete:false}, {field: 'end_time', title: __('End_time'), operate:'RANGE', addclass:'datetimerange', autocomplete:false}, {field: 'leave_type', title: __('Leave_type'), searchList: {"正课外出":__('正课外出'),"周末外出":__('周末外出'),"特殊类型":__('特殊类型')}, formatter: Table.api.formatter.normal}, {field: 'departure_time', title: __('Departure_time'), operate:'RANGE', addclass:'datetimerange', autocomplete:false}, {field: 'return_time', title: __('Return_time'), operate:'RANGE', addclass:'datetimerange', autocomplete:false}, //{field: 'return_status', title: __('Return_status'), operate: 'LIKE', formatter: Table.api.formatter.status}, {field: 'is_return', title: __('Is_return'), searchList: {"0":__('未归队'),"1":__('已归队')}, formatter: Table.api.formatter.normal}, //{field: 'updatetime', title: __('Updatetime'), operate: 'LIKE'}, //{field: 'admin_id_text', title: __('记录人')}, {field: 'people_id1_text', title: __('People_id1')}, {field: 'status1', title: __('一级审批状态'), formatter: Table.api.formatter.normal,formatter:function(index,row){ if(row.status1 == 1){ if(!row.contents1)return '已审批' }else if(row.status1 == 2){ return '已驳回 ' }else{ return '未处理' } }}, //{field: 'unit_id2_text', title: __('Unit_id2')}, {field: 'people_id2_text', title: __('People_id2')}, {field: 'status2', title: __('二级审批状态'), formatter: Table.api.formatter.normal,formatter:function(index,row){ if(row.status2 == 1){ if(!row.contents2)return '已审批' }else if(row.status2 == 2){ return '已驳回 ' }else{ return '未处理' } }}, //{field: 'unit_id3_text', title: __('Unit_id3')}, {field: 'people_id3_text', title: __('People_id3')}, {field: 'status3', title: __('三级审批状态'), formatter: Table.api.formatter.normal,formatter:function(index,row){ if(row.status3 == 1){ if(!row.contents3)return '已审批' }else if(row.status3 == 2){ return '已驳回 ' }else{ return '未处理' } }}, {field: 'people_id4_text', title: __('People_id4')}, {field: 'status4', title: __('四级审批状态'), formatter: Table.api.formatter.normal,formatter:function(index,row){ if(row.status4 == 1){ if(!row.contents4)return '已审批' }else if(row.status4 == 2){ return '已驳回 ' }else{ return '未处理' } }}, {field: 'statusd', title: __('总审批状态'), searchList: {"0":__('未审批'),"1":__('审批已通过'),"2":__('审批不通过')}, formatter: Table.api.formatter.normal}, {field: 'operate', title: __('Operate'), table: table, events: Table.api.events.operate,buttons: [ { name: '审批', text: '审批', title: '审批', classname: 'btn btn-xs btn-info btn-view btn-dialog ', icon: 'fa fa-search', url: function(row){ var url = 'leave/auth?ids='+row.id; if(row.status1==0){ url+='&step=1'; }else if(row.status2==0){ url+='&step=2'; }else if(row.status3==0){ url+='&step=3'; }else if(row.status4==0){ url+='&step=4'; } return url; }, extend: 'data-area=\'["500px","80%"]\'', refresh: true, visible:function(row){ if(row.status1==0 && Config.admin.id == row.people_id1){ return true; }else if(row.status2==0 && Config.admin.id == row.people_id2 && row.status1==1){ return true; }else if(row.status3==0 && Config.admin.id == row.people_id3 && row.status1==1 && row.status2==1){ return true; }else if(row.status4==0 && Config.admin.id == row.people_id4 && row.status1==1 && row.status2==1 && row.status3==1){ return true; } return false; } }, { name: '归队', text: '归队', title: '归队', classname: 'btn btn-xs btn-info btn-ajax', confirm: '确定归队吗?', icon: 'fa fa-search', url: function(row){ var url = 'leave/rejoin?ids='+row.id; return url; }, refresh: true, visible:function(row){ if(row.return_time != '' && row.statusd == 1 && row.is_return == 0){ return true; } return false; } } ],formatter: function(value,row,index){ var that = $.extend({},this); var table = $(that.table).clone(true); if(row.people_id1=="1" || row.people_id1=="2"){ $(table).data("operate-edit",null); that.table = table; } return Table.api.formatter.operate.call(that,value,row,index) //console.log(value); //console.log(row); //console.log(index); } } ] ] }); // 为表格绑定事件 Table.api.bindevent(table); table.on('post-body.bs.table',function(){ $(".btn-editone").data("area",["800px","420px"]); }) }, add: function () { Controller.api.bindevent(); $("#c-people_id").data("params", function (obj) { var unit_id = $('#J_unitselect').val(); return {"custom[unit_id][0]":"in","custom[unit_id][1]":unit_id}; }); }, edit: function () { Controller.api.bindevent(); $("#c-people_id").data("params", function (obj) { var unit_id = $('#J_unitselect').val(); return {"custom[unit_id][0]":"in","custom[unit_id][1]":unit_id}; }); }, auth: function () { Controller.api.bindevent(); $('#J_ok').click(function(){ var id = $('#id').val(); Layer.confirm('确定要通过吗?',{shade:false},function(index){ $.get('leave/auth_status',{ids:id,status:1},function(res){ parent.Layer.closeAll(); parent.$("a.btn-refresh").trigger("click"); parent.Layer.msg(res.msg); }); }); }); $('#J_no').click(function(){ var id = $('#id').val(); Layer.prompt({ title:'驳回原因' },function(val,index){ if(val){ $.get('leave/auth_status',{ids:id,status:2,contents:val},function(res){ parent.Layer.closeAll(); parent.$("a.btn-refresh").trigger("click"); parent.Layer.msg(res.msg); }); }else{ Layer.msg('请输入原因'); } }) }); }, api: { bindevent: function () { Form.api.bindevent($("form[role=form]")); } } }; return Controller; });