$(() => { $(".datepicker").datepicker({ changeMonth: true, changeYear: true, format: 'yyyy-mm-dd hh:mm:ss', showButtonPanel: true, showOtherMonths: true, //selectOtherMonths: true, showSecond: true }); $("#DateFromOptDate").val(page.ValueDate); $("#DateToOptDate").val(page.ValueDate); initGrid(); initEvent(); }); var i = 0; var colModelGrid = [ { name: 'id', label: 'id', index: 'id', sortIndex: i++, width: 70, align: 'center', hidden: true, optionHide: true }, { name: 'ClientNumber', label: '客户编号', index: 'ClientNumber', sortIndex: i++, width: 150, align: 'center', sortable: false }, { name: 'ClientName', label: '客户名称', index: 'ClientName', sortIndex: i++, width: 300, align: 'center', sortable: false }, { name: 'OptType', label: '操作类型', index: 'OptType', sortIndex: i++, width: 120, align: 'center', sortable: false, //formatter: (cellValue, options, rowObject) => { return cellValue == "Modified" ? "信息修改": "信息删除"} }, { name: 'OptDate', label: '变更时间', index: 'OptDate', sortIndex: i++, width: 180, align: 'center', // formatter: (cellValue, options, rowObject) => { return cellValue.replace(/\//g, "-") }, sortable: false }, { name: 'OptName', label: '操作人', index: 'OptName', sortIndex: i++, width: 120, align: 'center', sortable: false }, { name: '', label: '变更详情', index: '', sortIndex: i++, width: 120, align: 'center', sortable: false, formatter: showToolName }, { name: 'DataInfo2', label: '变更字段', index: 'DataInfo2', sortIndex: i++, width: 1000, align: 'left', sortable: false, formatter: formatDataInfo }, { name: 'DataInfo', label: '变更字段', index: 'DataInfo', sortIndex: i++, width: 1, align: 'left', sortable: false, hidden: true }, { name: 'IsClosed', label: 'IsClosed', index: 'IsClosed', sortIndex: i++, width: 10, align: 'left', hidden: true, optionHide: true }, ] function showToolName(cellValue, options, rowObject) { if (rowObject.DataInfo == "" || rowObject.DataInfo == null) { return ""; } var html = "" .template(rowObject.id, "查看"); return html; } function formatDataInfo(cellValue, options, rowObject) { var html = ""; if (rowObject.DataInfo != null) { var strResult = rowObject.DataInfo.split(";"); for (var i = 0; i < strResult.length; i++) { var finallyResult = strResult[i].split(":"); if (finallyResult[0] != "" && finallyResult[0] != null) { if ((i + 1) == strResult.length) { html += finallyResult[0]; } else { html += finallyResult[0] + ";"; } } } if (html.length > 0) { html = html.substring(0, html.length - 1); } } return html; } function showDetail(value, $modal) { var data = jQuery('#listGrid').getRowData(value); var html = HeaderMethod(data); html += ContentMethod(data.DataInfo); $modal.find('.modal-body').html(html) } function HeaderMethod(data) { return [ '
变更时间: ' + data.OptDate + '
', '
', '客户编号: ' + data.ClientNumber + '', '客户名称: ' + data.ClientName + '', '
' ].join(''); } function ContentMethod(dataInfo) { var html = ''; html += ''; if (dataInfo != null) { var strResult = dataInfo.split(";"); for (var i = 0; i < strResult.length; i++) { var fields = strResult[i].split(":"); if (fields[0] != "" && fields[0] != null && fields[0] != undefined) { html += ''; if (fields[1] != "" && fields[1] != null && fields[1] != undefined) { var values = fields[1].split("->"); if (values.length == 2) { html += ''; } } html += ''; } } } html += '
变更字段变更前变更后
' + fields[0] + '' + (values[0] == "“ ”" ? "空" : values[0]) + '' + (values[1] == "“ ”" ? "空" : values[1]) + '
'; return html; } function closePopover(value) { $("#clientInfoChange_" + value).popover("hide"); } function initGrid() { var postData = {} var obj = { url: "/Datatrace/ClientInfoChangeSearch", datatype: 'local', //multiselect: true, height: 'auto', width: '96%', autowidth: false, shrinkToFit: false, viewrecords: true, multiselect: true, jsonReader: { repeatitems: false }, cmTemplate: { align: 'center', width: 120 }, caption: '', mtype: 'POST', postData: postData, colModel: colModelGrid, ondblClickRow: rowdblclick, pager: jQuery('#pagerGrid'), pagerpos: 'left', rowNum: 200, rowList: [20, 30, 50, 200, 10000], viewrecords: false, loadComplete: function () { $("#listGrid").setGridWidth($("#infopage").width() - 30); //var grid = $("#listGrid"); //var ids = grid.getDataIDs(); //for (var i = 0; i < ids.length; i++) { // grid.setRowData(ids[i], false, { height: 35 + i * 2 }); //} }, footerrow: false, gridComplete: function () { var ids = $("#listGrid").getDataIDs(); for (var i = 0; i < ids.length; i++) { var rowData = $("#listGrid").getRowData(ids[i]); if (rowData.IsClosed == "true") {//如果天数等于0,则背景色置灰显示 $('#' + ids[i]).find("td").css("background-color", "#bdbebf"); } } }, beforeRequest: function () { $('[data-toggle="popover"]').popover("hide"); } }; var g_grid = jQuery('#listGrid').jqGrid(obj); SearchClick(true); } function SearchClick(isSearchclick) { $('[data-toggle="popover"]').popover("hide"); var listGrid = $('#listGrid'); listGrid.appendPostData({ OptDateStart: $("#DateFromOptDate").val() }); listGrid.appendPostData({ OptDateEnd: $("#DateToOptDate").val() }); var optTypes = $("#OptTypes").val(); listGrid.appendPostData({ OptTypes: optTypes }); listGrid.appendPostData({ ClientIds: !$("#ClientId").val() ? null : $("#ClientId").val() }); listGrid.appendPostData({ ClientNumber: $("#ClientNumber").val() }); listGrid.appendPostData({ OptNames: !$("#OptNames").val() ? null : $("#OptNames").val() }); listGrid.appendPostData({ Ids: null }); if (typeof isSearchclick !== "undefined" && isSearchclick) { //点击搜索时默认第一页 listGrid.jqGrid('setGridParam', { page: 1 }); } listGrid.jqGrid('setGridParam', { datatype: 'json' }); listGrid.trigger('reloadGrid'); } function exportClientInfoChange() { var req; var selectedIds = $('#listGrid').jqGrid('getGridParam', 'selarrrow'); if (selectedIds.length > 0) { var ors = []; for (var i = 0; i < selectedIds.length; i++) { var or = $('#listGrid').getRowData(selectedIds[i]).id; ors.push(or); } req = { Ids: ors }; } else { req = { Ids: null, OptDateStart: $("#DateFromOptDate").val(), OptDateEnd: $("#DateToOptDate").val(), OptTypes: $("#OptTypes").val(), ClientIds: !$("#ClientId").val() ? null : $("#ClientId").val(), ClientNumber: $("#ClientNumber").val(), OptNames: !$("#OptNames").val() ? null : $("#OptNames").val() }; } exportSubmit("/Datatrace/ExportClientInfoChange", req); } function exportSubmit(url, query_data) { var $form = $('#exportForm').html(''); $form.attr("action", url) _.each(query_data, (val, key) => { if (!val) { val = ''; } else if (_.isArray(val)) { _.each(val, x => { $form.append(``); }); return; } $form.append(``); }); $form.submit(); } function rowdblclick(rowid) { } function initEvent() { $('#modalClientInfoChange').on('show.bs.modal', function (evt) { var id = $(evt.relatedTarget).data('id'); showDetail(id, $(this)); }) }