var _jqgridMgr; var g_grid = {}; var query_data = {}; var g_threshold = 0; var openWaringLineMonitor = page.swapMonitorConfg.WarningLine; var openCloseLineMonitor = page.swapMonitorConfg.UnwindLine; var ggridData; const dateFormat = function (val) { return val ? val.substring(0, 10) : ''; }; function percentFormat(cellValue, options, rowObject) { return cellValue ? (cellValue * 100).toFixed(2) + "%" : "0.00%"; } $(function () { var PostData = { }; var grid = jQuery('#listGrid').jqGrid({ url: '/MarginRateSwap/MarginRateSwapMonitorQueryV2', datatype: 'json', height: '520px', width: '96%', autowidth: false, shrinkToFit: false, viewrecords: true, jsonReader: { repeatitems: false }, caption: '', mtype: 'POST', postData: PostData, onSelectRow: rowclick, ondblClickRow: rowdblclick, colModel: getColModelGrid(), pager: jQuery('#pagerGrid'), pagerpos: 'left', rowNum: 20, rowList: [20, 30, 50, 200, 10000], loadComplete: gridComplete, onPaging: onJqgridPaging, }); g_grid = jQuery('#listGrid'); }); function getColModelGrid() { var colModelGrid = [ { name: 'ClientNumber', label: '客户编号', index: 'ClientNumber', width: 100, align: 'center', frozen: true }, { name: 'ClientName', label: '客户名称', index: 'ClientName', width: 238, align: 'center', frozen: true }, { name: 'ClientTypeStr', label: '收益互换交易类别', index: 'ClientTypeStr', width: 130, align: 'center', frozen: true }, { name: 'AmountFund', label: '期末结存', index: 'AmountFund', width: 100, align: 'right', formatter: 'number', sorttype: 'number' }, { name: 'GuaranteesTotalAmount', label: '质押市值', index: 'GuaranteesTotalAmount', width: 100, align: 'right', formatter: 'number', sorttype: 'number' }, { name: 'TotalCredit', label: '授信额度', index: 'TotalCredit', width: 100, align: 'right', formatter: 'number', sorttype: 'number' }, { name: 'MinusPayableMargin', label: '预付金占用', index: 'MinusPayableMargin', width: 120, align: 'right', formatter: holdingDepositFormat, sorttype: 'number' }, { name: 'PayableFund', label: '应付资金总额', index: 'PayableFund', width: 100, align: 'right', formatter: 'number', sorttype: 'number' }, { name: 'MarginByPayableMarginTotal', label: '追加预付金金额', index: 'MarginByPayableMarginTotal', width: 120, align: 'right', value: '0', formatter: 'number', sorttype: 'number' } , { name: 'MaintenanceLine', label: '维持预付金线', index: 'MaintenanceLine', width: 120, align: 'right', value: '0', formatter: 'number', sorttype: 'number' } ]; return colModelGrid; } function holdingDepositFormat(cellValue, options, rowObject) { cellValue = numeral(cellValue).format("0,0.00"); if (cellValue === "NaN") { cellValue = "0.00"; } var html; var margintype = $("#ShownType").val(); if (margintype == "default") { html = `
${cellValue}
`; } else { html = `
${cellValue}
`; } return html; } function OpenSetMonitor() { var htmlContent = $('#setMonitor').html(); main.open2("预警设置", htmlContent, { area: ["450px", "250px"], success: function (layero, index) { $("#WarningLine").val(openWaringLineMonitor); $("#ClosePositionLine").val(openCloseLineMonitor); } } ); } function setMonitor() { var warningLine = $('#WarningLine').val(); var unwindLine = $('#ClosePositionLine').val(); if (warningLine < -100 || warningLine > 100) { main.alert("预警线填写错误"); return; } if (unwindLine < -100 || unwindLine > 100) { main.alert("平仓线填写错误"); return; } if (unwindLine > warningLine) { main.alert("平仓线必须小于等于预警线"); return; } var monitor = { WarningLine: warningLine, UnwindLine: unwindLine, } main.post("/MarginRateSwap/SetSwapMonitor", monitor).done(function (resp) { openWaringLineMonitor = monitor.WarningLine; openCloseLineMonitor = monitor.UnwindLine SearchClick(); layer.closeAll(); }); } function gridComplete(data) { if (data instanceof Array) { ggridData = data; } var jgrid = $('#listGrid'); var rowIds = jgrid.jqGrid('getDataIDs'); for (var i = 0; i < rowIds.length; i++) { var rowId = rowIds[i]; var rowdata = jgrid.getRowData(rowId); if (openCloseLineMonitor != 0 && openWaringLineMonitor != 0) { if (rowdata.MaintenanceLine * 100 <= openCloseLineMonitor) { $('#' + rowIds[i]).addClass("close-position-line"); } else if (rowdata.MaintenanceLine * 100 > openCloseLineMonitor && rowdata.MaintenanceLine * 100 <= openWaringLineMonitor) { $('#' + rowIds[i]).addClass("waring-line"); } else { $('#' + rowIds[i])[0].classList.remove("close-position-line"); $('#' + rowIds[i])[0].classList.remove("waring-line"); } } else { $('#' + rowIds[i])[0].classList.remove("close-position-line"); $('#' + rowIds[i])[0].classList.remove("waring-line"); } } main.setcolumnChooser(jgrid, page.configcolumn_name); refreshSearchTime(); } function showcolumnChooser() { main.showcolumnChooser(jQuery('#listGrid'), page.configcolumn_name); } var searchPostData = {}; function SearchClick(isSearchclick) { var listGrid = $('#listGrid'); searchPostData.WarnningTypes = $("#WarnningType").val(); searchPostData.ClientIds = $("#ClientId").val(); searchPostData.SwapTypes = $("#SwapType").val(); listGrid.appendPostData(searchPostData); query_data = listGrid.jqGrid('getPostData'); if (isSearchclick) { //点击搜索时默认第一页 listGrid.jqGrid('setGridParam', { page: 1 }); } listGrid.trigger('reloadGrid'); } function execExport() { var dateTemp = new Date().Format("yyyyMMddhhmmss"); var fileName = "互换预付金监控导出" + dateTemp; main.toExcel("listGrid", fileName, "xls"); //var $form = $('#exportForm').html(''); //$form.attr("action", '/MarginRateSwap/ExportMarginRateSwapMonitor') //_.each(query_data, (val, key) => { // if (!val) { // val = ''; // } else if (_.isArray(val)) { // _.each(val, x => { // $form.append(``); // }); // return; // } // $form.append(``); //}); //$form.submit(); } function refreshSearchTime() { $("#searchTime").text(main.formartDate(new Date(), "YYYY-MM-DD HH:mm:ss")); }