| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133 |
- define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefined, Backend, Table, Form) {
- var Controller = {
- index : function () {
- // 初始化表格参数配置
- Table.api.init();
- //绑定事件
- $('a[data-toggle="tab"]').on('shown.bs.tab', function (e) {
- var panel = $($(this).attr("href"));
- if (panel.length > 0) {
- Controller.table[panel.attr("id")].call(this);
- $(this).on('click', function (e) {
- $($(this).attr("href")).find(".btn-refresh").trigger("click");
- });
- }
- //移除绑定的事件
- $(this).unbind('shown.bs.tab');
- });
- //必须默认触发shown.bs.tab事件
- $('ul.nav-tabs li.active a[data-toggle="tab"]').trigger("shown.bs.tab");
- },
- tableinfo:{
- url : '',
- toolbar: '#toolbar',
- pk : 'id',
- sortName : 'id',
- fixedColumns : true,
- fixedNumber : 1,
- fixedRightNumber : 1,
- columns : [
- [
- {
- field : 'num', title : '合同编号', fixedColumns : true, formatter : function (value, row, index) {
- if(value ==''){
- value = '无';
- }
- return "<a href='javascript:void(0);' data-id='" + row.id + "' class='show-detail'>" + value + "</a>";
- },operate:'like'
- },
- {
- field : 'name', title : '合同名称', fixedColumns : true, formatter : function (value, row, index) {
- if(value ==''){
- value = '无';
- }
- return value;
- },operate:false
- },
- {field : 'customer', title : '客户名称', formatter : function (value, row, index) {
- if(row.customer){
- return "<a href='javascript:void(0);' data-id='" + row.customer_id + "' class='show-customer'>" + row.customer.name + "</a>";
- }
- return '';
- },operate:false},
- {field : 'contract_remark', title : '备注', formatter : function (value, row, index) {
- if(row.contract_remark){
- return row.contract_remark;
- }
- return '';
- },operate:false},
- // {field : 'customer_id', title : '客户名称', visible: false, addClass: "selectpage", extend: "data-source='qingdong/customer/customer/index' data-field='name'"},
- {field : 'remark', title : '备注',operate:false},
- {field: 'createtime', title: __('Createtime'), operate:'RANGE', addclass:'datetimerange', formatter: Table.api.formatter.datetime},
- ]
- ],
- pagination : true,
- search : false,
- commonSearch : true,
- searchFormVisible : true,
- //显示导出按钮
- showExport: false,
- onLoadSuccess:function(row){
- var role = row.role;
- // 根据 role 值动态修改 columns 配置
- var table = $("#table");
- // 这里就是数据渲染结束后的回调函数
- $(".btn-add").data("area",["80%","80%"]);
- $(".btn-edit").data("area",["80%","80%"]);
- }
- },
- table: {
- first: function () {
- // 初始化表格参数配置
- Table.api.init({
- // extend : {
- // add_url : 'qingdong/customer/contract/add',
- // detail_url : 'qingdong/customer/contract/detail',
- // table : 'contract',
- // }
- });
- if(Config.fields !='[]'){
- if (Config.fields && Object.keys(Config.fields).length > 0) {
- var fields = JSON.parse(Config.fields);
- var start = Controller.tableinfo.columns[0].length-2;
- for (var i = 0; i < fields.length; i++) {
- if (fields[i].hasOwnProperty('formatter'))
- fields[i].formatter = eval(fields[i].formatter);
- if (fields[i].hasOwnProperty('events'))
- fields[i].events = eval(fields[i].events);
- if (fields[i].hasOwnProperty('searchList'))
- fields[i].searchList = JSON.parse(fields[i].searchList);
- Controller.tableinfo.columns[0].splice(start + i, 0, fields[i]);
- }
- }
- }
- const q = {};
- location.search.replace(/([^?&=]+)=([^&]+)/g,function(_,k,v){q[k]=v});
- var table = $("#table");
- Controller.tableinfo.url=location.href+'&type=0';
- Controller.tableinfo.toolbar='#toolbar';
- Controller.tableinfo.columns[0][Controller.tableinfo.columns[0].length-1].table=table;
- if (q.isselect == 1) {
- Controller.tableinfo.columns[0][Controller.tableinfo.columns[0].length - 1].visible = false;
- } else {
- Controller.tableinfo.columns[0][Controller.tableinfo.columns[0].length - 2].visible = false;
- }
- // 初始化表格
- table.bootstrapTable(Controller.tableinfo);
- // 为表格绑定事件
- Table.api.bindevent(table);
- },
- },
- };
- return Controller;
- });
|