var g_grid = {}; var detailStatus = page.DetailStatus; var valueDate = page.ValueDate; var detailStatusIndex = []; var ccemail = page.CCEmail; $(function () { var PostData = {}; detailStatusIndex["成交"] = 1; detailStatusIndex["了结"] = 2; $("#ClientId").val((page.ClientId || '').split(',')); $("#ClientId").selectpicker('refresh') main.setTradeDatePicker(valueDate, "#StartDate,#EndDate"); $("#StartDate,#EndDate").datepicker("option", "maxDate", valueDate); $("#StartDate").on("change", function () { var startDate = $(this).val(); if (startDate && !main.isDate(startDate)) { return; } $("#EndDate").datepicker("option", "minDate", startDate); }); $("#EndDate").on("change", function () { var endDate = $(this).val(); if (endDate && !main.isDate(endDate)) { return; } $("#StartDate").datepicker("option", "maxDate", endDate); }); $("#StartDate").val(page.StartDate || ''); $("#EndDate").val(page.EndDate || ''); $("#StartDate,#EndDate").trigger("change"); if (page.ParentFlag == true) $("#ParentFlag").attr("checked", true); else $("#ParentFlag").attr("checked", false); PostData.StartDate = $("#StartDate").val(); PostData.EndDate = $("#EndDate").val(); PostData.ClientId = $("#ClientId").val(); PostData.ClientIds = $("#ClientId").val() == null || typeof ($("#ClientId").val()) == 'string' ? "" : $("#ClientId").val().join(); PostData.DetailStatuses = detailStatus; if ($("#ParentFlag").prop("checked")) PostData.ParentFlag = true; else PostData.ParentFlag = false; grid = jQuery('#listGrid').jqGrid({ url: "/trade/QueryTradeDetailsSwap", datatype: 'json', height: 'auto', width: '96%', autowidth: false, shrinkToFit: false, viewrecords: true, jsonReader: { repeatitems: false }, caption: '', mtype: 'POST', postData: PostData, colModel: colModelGrid, pager: jQuery('#pagerGrid'), pagerpos: 'left', ondblClickRow: rowdblclick, rowNum: 20, rowList: [20, 30, 50, 200, 10000], footerrow: true, loadComplete: gridComplete, grouping: true }); g_grid = jQuery('#listGrid'); function keyEnter(event) { try { var e = event ? event : (window.event ? window.event : null); if (e.keyCode === 13) { SearchClick(true); } } catch (e) { // } } document.onkeydown = keyEnter; try { SetAceDropDown(); } catch (e) { // } function AfterInsertRow(rowid, aData) { } tabSelect(detailStatusIndex[detailStatus]); }); var colModelGrid = (function () { function showTradeNumber(cellValue, options, rowObject) { if (cellValue === "合计:") { return cellValue; } return cellValue || "--"; } function formatter6(cellvalue, options, rowObject) { return main.formatNumber(cellvalue, 6); } function formatter2(cellvalue, options, rowObject) { return cellvalue == null ? "" : main.formatNumber(cellvalue); } if (detailStatus === "了结") { return [ { name: 'id', label: 'id', index: 'id', hidden: true, optionHide: true }, { name: 'EncryptId', label: 'EncryptId', index: 'EncryptId', hidden: true, optionHide: true }, { name: 'TradeType', label: '交易类型', index: 'TradeType', width: 80, align: 'center', }, { name: 'TradeNumber', label: '交易编号', index: 'TradeNumber', width: 80, align: 'center', formatter: showTradeNumber }, { name: 'PayType', label: '收益金额支付类型', index: 'PayType', width: 120, align: 'center', sortable: false }, { name: 'UnderlyingCode', label: '交易标的', index: 'UnderlyingCode', width: 120, align: 'center' }, { name: 'TradeDate', label: '交易起始日', index: 'TradeDate', width: 90, align: 'center', formatter: 'date' }, { name: 'ExerciseDate', label: '交易到期日', index: 'ExerciseDate', width: 90, align: 'center', formatter: 'date' }, { name: 'Price', label: '标的期初价格(计价货币)', index: 'Price', width: 150, align: 'center', sortable: false, formatter: formatter6 }, { name: 'Notional', label: '交易数量', index: 'Notional', width: 100, align: 'center', sortable: false, formatter: formatter6 }, { name: 'StockEqvNotional', label: '名义本金(计价货币)', index: 'StockEqvNotional', width: 120, align: 'center', sortable: false, formatter: formatter2 }, { name: 'AnnualRate', label: '固定收益率', index: 'AnnualRate', width: 90, align: 'center', formatter: otcformat.trading.PremiumRate }, { name: 'UnwindPrice', label: '期末价格(计价货币)', index: 'UnwindPrice', width: 120, align: 'center', formatter: formatter6 }, { name: 'UnwindDate', label: '交易终止日', index: 'UnwindDate', width: 90, align: 'center', sortable: false, formatter: 'date' }, { name: 'UnwindNotional', label: '终止数量', index: 'UnwindNotional', width: 100, align: 'center', formatter: formatter6 }, { name: 'FloatIncome', label: '浮动收益(结算货币)', index: 'FloatIncome', width: 120, align: 'center', sortable: false, formatter: formatter2 }, { name: 'FixedIncome', label: '固定收益(结算货币)', index: 'FixedIncome', width: 120, align: 'center', sortable: false, formatter: formatter2, }, { name: 'CurrencyRate', label: '期末汇率', index: 'CurrencyRate', width: 80, align: 'center', sortable: false, }, { name: 'Amount', label: '结算金额(结算货币)', index: 'Amount', width: 120, align: 'center', sortable: false, formatter: formatter2, } ]; } return [{ name: 'id', label: 'id', index: 'id', hidden: true, optionHide: true }, { name: 'EncryptId', label: 'EncryptId', index: 'EncryptId', hidden: true, optionHide: true }, { name: 'TradeType', label: '交易类型', index: 'TradeType', width: 80, align: 'center', }, { name: 'TradeNumber', label: '交易编号', index: 'TradeNumber', width: 80, align: 'center', formatter: showTradeNumber }, { name: 'PayType', label: '收益金额支付类型', index: 'PayType', width: 120, align: 'center', sortable: false }, { name: 'UnderlyingCode', label: '交易标的', index: 'UnderlyingCode', width: 120, align: 'center' }, { name: 'TradeDate', label: '交易起始日', index: 'TradeDate', width: 90, align: 'center', formatter: 'date' }, { name: 'ExerciseDate', label: '交易到期日', index: 'ExerciseDate', width: 90, align: 'center', formatter: 'date' }, { name: 'Price', label: '标的期初价格(计价货币)', index: 'Price', width: 150, align: 'center', sortable: false, formatter: formatter6 }, { name: 'Notional', label: '交易数量', index: 'Notional', width: 100, align: 'center', sortable: false, formatter: formatter6 }, { name: 'StockEqvNotional', label: '名义本金(计价货币)', index: 'StockEqvNotional', width: 120, align: 'center', sortable: false, formatter: formatter2 }, { name: 'AnnualRate', label: '固定收益率', index: 'AnnualRate', width: 90, align: 'center', formatter: otcformat.trading.PremiumRate } ]; }()); function rowdblclick(rowid) { } function gridComplete() { var jgrid = $(this); var rowNum = parseInt(jgrid.getGridParam('records'), 10); if (rowNum > 0) { $(".ui-jqgrid-sdiv").show(); var Sum = arguments[0].Sum || {}; var totalFloatIncome = Sum.FloatIncomeSum || ""; var totalFixedIncome = Sum.FixedIncomeSum || ""; var totalAmount = Sum.AmountSum || ""; if (detailStatus === "成交") { } else { jgrid.footerData("set", { "FloatIncome": totalFloatIncome, "FixedIncome": totalFixedIncome, "Amount": totalAmount }); } $(".ui-jqgrid-sortable").css("text-align", "center"); var newHeight = $(window).height() - 370; $(".ui-jqgrid .ui-jqgrid-bdiv").css("cssText", "height: " + newHeight + "px!important;"); $('.ui-jqgrid-bdiv', '#gbox_listGrid').floatingScroll(); } else { $(".ui-jqgrid-sdiv").hide(); } $(".selftooltip").tooltip({ html: true, show: 50000, trigger: "hover", container: "body" }); } function reloadtrade() { //重新加载 SearchClick(); } function SearchClick(isSearchclick) { if (main.isEmpty($("#StartDate").val())) { main.message("请选择起始日期!"); return; } if (main.isEmpty($("#EndDate").val())) { main.message("请选择结束日期!"); return; } if ($("#EndDate").val() > page.ValueDate) { main.message("结束日期不能大于当前系统日期!"); return; } if (isSearchclick === true) { if (!$("#ClientId").val()) { main.message("请选择客户!"); return; } } if ($("#EndDate").val() < $("#StartDate").val()) { main.message("起始日期不能大于结束日期!"); return; } var listGrid = $('#listGrid'); listGrid.appendPostData({ ClientId: $("#ClientId").val() != null && typeof ($("#ClientId").val()) == 'string' ? $("#ClientId").val() : "" }); listGrid.appendPostData({ ClientIds: $("#ClientId").val() == null || typeof ($("#ClientId").val()) == 'string' ? "" : $("#ClientId").val().join() }); listGrid.appendPostData({ StartDate: $("#StartDate").val() }); listGrid.appendPostData({ EndDate: $("#EndDate").val() }); listGrid.appendPostData({ DetailStatuses: detailStatus }); var ParentFlag = false; if ($("#ParentFlag").prop("checked")) ParentFlag = true; listGrid.appendPostData({ ParentFlag: ParentFlag }); if (isSearchclick) { //点击搜索时默认第一页 $('#listGrid').jqGrid('setGridParam', { page: 1 }); } main.isSearching = true; $('#listGrid').trigger('reloadGrid'); } function tabSelect(tabIndex) { $("#myTab").children().removeClass("active"); $("#tab" + tabIndex).addClass("active"); SearchClick(false); } function locationChange(tab) { if ($("#EndDate").val() > page.ValueDate) { main.message("结束日期不能大于当前系统日期!"); return; } if ($("#EndDate").val() < $("#StartDate").val()) { main.message("起始日期不能大于结束日期!"); return; } var ParentFlag = false; if ($("#ParentFlag").prop("checked")) ParentFlag = true; var url = "/trade/TradeDetailsSwap?detailStatus=" + encodeURIComponent(tab); window.location.href = url + "&clientId=" + $("#ClientId").val() + "&startDate=" + $("#StartDate").val() + "&endDate=" + $("#EndDate").val() + "&ParentFlag=" + ParentFlag; return; } function popDesc() { main.open("报告备注修改", "/trade/TradeSwapDetailsDescSet"); } function chooseTemplate(mailOrReport) { if (main.isEmpty($("#StartDate").val())) { main.message("请选择起始日期!"); return; } if (main.isEmpty($("#EndDate").val())) { main.message("请选择结束日期!"); return; } if ($("#ClientId").val()) { if (mailOrReport) { if (typeof ($("#ClientId").val()) != 'string' && $("#ClientId").val().length > 1) { main.alert("发送邮件不支持客户多选,请选择其中一个发送!"); return; } main.open("选择模板", "/trade/ChooseReportTemplate/?clientId=" + $("#ClientId").val() + "&isMail=true&isSwap=true", { area: ['400px', '480px'] }); } else { main.open("选择模板", "/trade/ChooseReportTemplate/?clientId=" + $("#ClientId").val() + "&isMail=false&isSwap=true", { area: ['400px', '480px'] }); } } else { main.message("请先选择客户"); } } function exportReport(template) { var clientIds = []; var ids = $("#ClientId").val(); if (ids == null) { clientIds = ''; } else if (typeof (ids) == 'string') { clientIds.push(ids); } else { clientIds = ids; } var ParentFlag = false; if ($("#ParentFlag").prop("checked")) ParentFlag = true; if (template) { var postData = { ClientIds: clientIds, StartDate: $("#StartDate").val(), EndDate: $("#EndDate").val(), DetailStatuses: "成交,了结", ParentFlag: ParentFlag, template: template }; } else { var postData = { ClientIds: clientIds, StartDate: $("#StartDate").val(), EndDate: $("#EndDate").val(), DetailStatuses: "成交,了结", ParentFlag: ParentFlag}; } main.post("/trade/ExportTradeSwapDetails/", postData).done(function (res) { main.downloadFiles(res.obj); }); } function sendReport(template, receiver, attachFiles, skip) { var ParentFlag = false; if ($("#ParentFlag").prop("checked")) ParentFlag = true; if (template) { var postData = { ClientId: $("#ClientId").val(), StartDate: $("#StartDate").val(), EndDate: $("#EndDate").val(), DetailStatuses: "成交,了结", ParentFlag: ParentFlag, template: template, receiver: receiver, skip: false }; if (skip && skip == true) { postData.skip = skip; } main.post("/trade/SendTradeSwapDetailsReport/", postData).done(function (res) { if (res.obj) { main.confirm(res.msg, function () { sendReport(template, receiver, attachFiles, true); }); } else { main.downloadFiles(res.obj); } }); } else { var postData = { ClientIds: $("#ClientId").val(), StartDate: $("#StartDate").val(), EndDate: $("#EndDate").val(), DetailStatuses: "成交,了结", ParentFlag: ParentFlag}; main.post("/trade/SendTradeSwapDetailsReport/", postData).done(function (res) { if (res.obj) { main.confirm(res.message, function () { sendReport(template, receiver, attachFiles, true); }); } else { main.downloadFiles(res.obj); } }) } } function resetCC(cc) { ccemail = cc; }