Files
zszq-trs/YLErpWeb/wwwroot/Scripts/app/swaptrade/eventlist.js
T

301 lines
8.8 KiB
JavaScript

var g_grid = {};
var query_data = {};
$(function () {
var PostData = {};
$("#DateFromevent_date").val(page.valueDate);
$("#DateToevent_date").val(page.valueDate);
$(".datepicker").change(function () {
var dateVal = $(this).val();
if (!dateVal) return;
dateVal = dateVal.replace(/\D/g, '').padStart(4, '0');
switch (dateVal.length) {
case 4:
dateVal = new Date().getFullYear() + dateVal; break;
case 6:
dateVal = '20' + dateVal; break;
case 8: break;
default:
dateVal = dateVal.length > 8 ? dateVal.substring(0, 8) : ''; break;
}
if (dateVal) {
dateVal = moment(dateVal).format('YYYY-MM-DD');
!/^\d+/.test(dateVal) && (dateVal = '');
}
$(this).datepicker("setDate", dateVal);
});
$(".datepicker").datepicker({
changeMonth: true,
changeYear: true,
showButtonPanel: true,
showOtherMonths: true,
selectOtherMonths: true
});
PostData.Step = 3;
PostData.TradeDateStart = $("#DateFromevent_date").val();
PostData.TradeDateEnd = $("#DateToevent_date").val();
grid = jQuery('#listGrid').jqGrid({
cmTemplate: {
width: 80,
align: 'center',
sortable: false
},
url: '/swapTrade2/SwapflowQuery',
datatype: 'json',
multiselect: false,
height: 'auto',
width: '96%',
autowidth: false,
shrinkToFit: false,
viewrecords: true,
jsonReader: { repeatitems: false },
caption: '',
mtype: 'POST',
postData: PostData,
afterInsertRow: AfterInsertRow,
onSelectRow: rowclick,
colModel: colModelGrid,
pager: jQuery('#pagerGrid'),
pagerpos: 'left',
rowNum: 20,
rowList: [20, 30, 50, 200, 10000],
footerrow: false,
loadComplete: gridComplete,
onPaging: onJqgridPaging,
});
function keyEnter(event) {
try {
var e = event ? event : (window.event ? window.event : null);
if (e.keyCode === 13) {
SearchClick(true);
}
} catch (e) {
//
}
}
document.onkeydown = keyEnter;
});
var hideObj = { clientWidth: 160 };
var i = 0;
var getColModelGrid = function () {
var col = [
{
name: 'id',
hidden: true,
optionHide: true
}, {
name: 'EventDate',
label: '事件日期',
align: 'center',
width: 90,
formatter: 'date'
}, {
name: 'UnwindDate',
label: '开仓/平仓日期',
align: 'center',
width: 90,
formatter: 'date'
}, {
name: 'PayDate',
label: '支付日期',
align: 'center',
width: 90,
formatter: 'date'
}
, {
name: 'SwapTradeNo',
label: '互换交易编号',
width: 150,
align: 'center'
}, {
name: 'SwapPositionIdPadding',
label: '持仓编码',
align: 'center'
}, {
name: 'EventType',
label: '事件类型',
align: 'center',
formatter: function (cellValue, options, rowObject) {
if (cellValue == 1) {
return "开仓";
} else if (cellValue == 2) {
return "平仓";
}
return "";
}
}, {
name: 'EventReason',
label: '事件原因',
align: 'center'
}, {
name: 'OptLog',
label: '操作类型',
align: 'center'
}, {
name: 'PayDirection',
label: '收支方向',
align: 'center',
formatter: function (cellValue, options, rowObject) {
if (cellValue == 1) {
return "收取";
} else if (cellValue == 2) {
return "支付";
}
return "";
}
}, {
name: 'PositionType',
label: '标的多空',
align: 'center',
formatter: function (cellValue, options, rowObject) {
if (cellValue == 1) {
return "多";
} else if (cellValue == 2) {
return "空";
}
return "";
}
}, {
name: 'UnderlyingCode',
label: '标的代码',
width: 150,
align: 'center'
}, {
name: 'MatuirityDate',
label: '到期日',
width: 90,
align: 'center',
formatter: 'date'
}, {
name: 'TradingAmountAvg',
label: '成交全价',
width: 90,
align: 'center',
formatter: otcformat.trading.umprice
}, {
name: 'TradingAmountFeeAvg',
label: '成交全价(含费)',
width: 90,
align: 'center',
formatter: otcformat.trading.umprice
}, {
name: 'TradingAmountNetAvg',
label: '成交净价',
width: 90,
align: 'center',
formatter: otcformat.trading.umprice
}, {
name: 'InitYtm',
label: '成交收益率',
width: 90,
align: 'center',
formatter: function (cellValue, options, rowObject) {
if (cellValue == null) {
return "";
}
return otcformat.trading.premiumRateP(cellValue);
}
}, {
name: 'TradingAmountNetFeeAvg',
label: '成交净价(含费)',
width: 90,
align: 'center',
formatter: otcformat.trading.umprice
}, {
name: 'Quantity',
label: '成交数量/张数',
width: 90,
align: 'center',
formatter: otcformat.trading.notional
}, {
name: 'TradingAmount',
label: '成交金额(元)',
width: 90,
align: 'center',
formatter: otcformat.trading.umprice
}, {
name: 'ContractSize',
label: '乘数',
width: 90,
align: 'center',
formatter: otcformat.trading.notional
}
, {
name: 'TradingFee',
label: '交易费用佣金',
width: 90,
align: 'center',
formatter: otcformat.trading.umprice
}, {
name: 'TradingFeePending',
label: '待结算交易费用佣金',
width: 90,
align: 'center',
formatter: otcformat.trading.umprice
}, {
name: 'DividendPending',
label: '待结算分红收益',
width: 90,
align: 'center',
formatter: otcformat.trading.umprice
}, {
name: 'MarkClosePnl',
label: '浮动端平仓盈亏·浮动',
width: 160,
align: 'center',
formatter: otcformat.trading.umprice
}, {
name: 'DividendIn',
label: '浮动端平仓盈亏·分红',
width: 160,
align: 'center',
formatter: otcformat.trading.umprice
}
];
return col;
};
var colModelGrid = getColModelGrid();
function gridComplete() {
$('.ui-jqgrid-bdiv', '#gbox_listGrid').floatingScroll();
}
function SearchClick(isSearchclick) {
var listGrid = $('#listGrid');
listGrid.appendPostData({ TradeDateStart: $("#DateFromevent_date").val() });
listGrid.appendPostData({ TradeDateEnd: $("#DateToevent_date").val() });
listGrid.appendPostData({ TradeNumber: $("#TradeNumber").val() });
listGrid.appendPostData({ UnderlyingCode: $("#UnderlyingCode").val() });
query_data = listGrid.jqGrid('getPostData');
if (typeof isSearchclick !== "undefined" && isSearchclick) {
//点击搜索时默认第一页
listGrid.jqGrid('setGridParam',
{
page: 1
});
}
listGrid.trigger('reloadGrid');
}
function ExportClick() {
var $form = $('#exportForm').html('');
$form.attr("action", '/swapTrade2/ExportSwapFlowEvent')
_.each(query_data, (val, key) => {
if (!val) {
val = '';
} else if (_.isArray(val)) {
_.each(val, x => {
$form.append(`<input type="hidden" name="${key}" value="${x}">`);
});
return;
}
$form.append(`<input type="hidden" name="${key}" value="${val}">`);
});
$form.submit();
}