cy
2022-06-21 129904537f66509f97b285e7eb4f42b3dc349dd0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
$.ajaxSetup({
  cache : false
});
var tableWidth;
//表格宽度,按百分比计算
function fixWidth(percent){
    tableWidth =  document.body.clientWidth * percent * 0.01;
    return tableWidth;
}
//列宽度,按百分比计算
function fixColumnWidth(percent){
    return tableWidth * percent * 0.01;
}
 
function fixHeight(percent){
    return document.body.clientHeight * percent * 0.01;
}
 
//重新加载DataGrid
function reloadDataGrid(id,param){
    var oldParam = $("#"+id).datagrid("options").queryParams;
    if(param){
        for(var item in param){
            oldParam[item] = param[item];
        }
    }
    $("#"+id).datagrid("load",oldParam);
}
 
function initOptions(options){  
    if(!options.width && !options.fit){ options.width = fixWidth(98);}
    if(!options.pageSize){ options.pageSize = 20;}
    if(!options.pageNumber){ options.pageNumber = 1;}
    if(!options.nowrap){ options.nowrap = false;}
    if(!options.pageList){ options.pageList = [20,30,40,50,60];}
    if(options.singleSelect == "undefined"){ options.singleSelect = true;}
    if(!options.rownumbers){ options.rownumbers = true;}
    if(!options.method){ options.method = "get";}
    if(!options.height){ options.height = fixHeight(50);}
    //if(!options.multiSort){ options.multiSort = true;}
    if(!options.iconCls){ options.iconCls = 'icon-edit';}
    return initQueryParam(options);
}
 
//将Columns的field传入后台
//将页面URL传参放入queryParams中,传入后台
function initQueryParam(options){
    var columnWidthModel = options.columnWidthModel || "absolute";
    //如果是相对模式,则转化为百分比
    if(columnWidthModel == "relative"){
        var columns = options.columns[0];
        for(var i=0;i<columns.length;i++){
            var field = columns[i].field;
            //将制定宽度px转换为百分比
            columns[i].width = fixColumnWidth(columns[i].width);
        }
    }
 
    var urlParam =  $.http.getParam4Json();
    for(var item in urlParam){
        options.queryParams[item]=urlParam[item];
    }
    return options;
}
/**
 * 增加树形节点
 * divID:容器ID
 * parentID:父节点ID
 * id:新增节点ID
 */
function addTreeNode(divID,parentID,id,text,icon){
        var node = $('#'+divID).tree('find', parentID);
        if (node){
            $('#'+divID).tree('append', {
                parent: node.target,
                data: {
                    id: id,
                    text: text,
                    iconCls:icon
                }
            });
        }
}
/**
 * 删除树形节点
 */
function removeTreeNode(divID,id){
        var node = $('#'+divID).tree('find', id);
        if (node){
            $('#'+divID).tree('remove',node.target);
        }
}
 
function reloadTree(divID){
    $('#'+divID).tree('reload');
}
 
jQuery.easyui = {
 
};
 
jQuery.easyui.datagrid = {
    /**
     * DataGrid 行编辑扩展,如果需要编辑行支持,请先调用此方法开启扩展
     */
    editorSupport : function(){
        $.extend($.fn.datagrid.methods, {
               editCell: function(jq,param){
                   return jq.each(function(){
                       var opts = $(this).datagrid('options');
                       var fields = $(this).datagrid('getColumnFields',true).concat($(this).datagrid('getColumnFields'));
                       for(var i=0; i<fields.length; i++){
                           var col = $(this).datagrid('getColumnOption', fields[i]);
                           col.editor1 = col.editor;
                           if (fields[i] != param.field){
                               col.editor = null;
                           }
                       }
                       $(this).datagrid('beginEdit', param.index);
                       for(var i=0; i<fields.length; i++){
                           var col = $(this).datagrid('getColumnOption', fields[i]);
                           col.editor = col.editor1;
                       }
                   });
               }
        });
    },
    /**
     * 开始编辑,datagridID:表格的ID,rowIndex:如果提供则开启制定行的编辑,如果不提供在开启整个表格的编辑
     */
    beginEdit:function(datagridID,rowindex){
        var rows = $("#"+datagridID).datagrid("getRows");
        for(var i=0;i<rows.length;i++){
            var index = $("#dg").datagrid("getRowIndex",rows[i]);
            $("#dg").datagrid("beginEdit",index);
        }
    },
    /**
     * 结束编辑,返回更新结果:{"updated":updated,"inserted":[],"deleted",[]}
     * rowIndex:如果提供则结束指定行的编辑,如果不提供在结束整个表格的编辑
     */
    endEdit:function(datagridid,rowindex){
        var rows = $("#"+datagridid).datagrid("getRows");
        for(var i=0;i<rows.length;i++){
            var index = $("#dg").datagrid("getRowIndex",rows[i]);
            if ($('#dg').datagrid('validateRow', index)){
                   $('#dg').datagrid('endEdit', index);
               }
        }
        var updated = $('#dg').datagrid('getChanges', "updated");
        return {"updated":updated,"inserted":[],"deleted":[]};
    },
    /**
     * 重新加载datagrid,如:$.easyui.datagrid.reload("dg",{});
     * id:表格ID,param:JSON格式的参数
     *
     */
    reload:function(id,param){
        var oldParam = $("#"+id).datagrid("options").queryParams;
        if(param){
            for(var item in param){
                oldParam[item] = param[item];
            }
        }
        $("#"+id).datagrid("load",oldParam);
    },
    /**
     * 将DataGrid数据导出Excel
     * datagrid_id:DataGrid的id
     * query_param:查询条件
     * action_url:form的action
     */
    exportExcel:function(datagrid_id,query_param,action_url){
        var datagrid_options = $('#'+datagrid_id).datagrid('options');
        var form = document.getElementById("execlForm");
        if(!form){
            $(document.body).append('<form action="" method="post" id="execlForm"></form>');
        }
        form = document.getElementById("execlForm");
        var html = '';
        if(datagrid_options.frozenColumns.length > 0 && datagrid_options.frozenColumns[0].length > 0){
            html += '<input type="hidden" name="frozenColumns" value='+ JSON.stringify(datagrid_options.frozenColumns[0]) +' />';
        }
        html += '<input type="hidden" name="columns" value='+ JSON.stringify(datagrid_options.columns[0]) +' />';
        for(var item in query_param){
            html += '<input type="hidden" name="'+ item +'" value="'+ query_param[item] +'" />';
        }
        $(form).empty();
        $(form).append(html);
        form.action=action_url;
        form.target = window.top.openDialog(0,90,90,'导出Excel','',{"disableProgress":true});
        form.submit();
    }
};