816 lines
26 KiB
JavaScript
816 lines
26 KiB
JavaScript
var g_grid = {};
|
|
var query_data = {};
|
|
|
|
$(function () {
|
|
var PostData = {};
|
|
PostData.ValidState = $("#ValidState").val();
|
|
if (settleDate) {
|
|
$("#DateFromExerciseDate").val(settleDate);
|
|
$("#DateToExerciseDate").val(settleDate);
|
|
PostData.ExerciseDateStart = settleDate;
|
|
PostData.ExerciseDateEnd = settleDate;
|
|
}
|
|
$('#createInvote2').click(
|
|
function () {
|
|
var tempTrim = String.prototype.trim;
|
|
String.prototype.trim = function () {
|
|
var firstChar = "";
|
|
if (this.indexOf("\t") === 0) {
|
|
firstChar = "\t";
|
|
}
|
|
return firstChar + this.replace(/(^\s*)|(\s*$)/g, "");
|
|
};
|
|
ExcellentExport.csv(this, 'excelTable');
|
|
String.prototype.trim = tempTrim;
|
|
return;
|
|
}
|
|
);
|
|
|
|
$(".datepicker").datepicker({
|
|
changeMonth: true,
|
|
changeYear: true,
|
|
showButtonPanel: true,
|
|
showOtherMonths: true,
|
|
selectOtherMonths: true
|
|
});
|
|
|
|
grid = jQuery('#listGrid').jqGrid({
|
|
cmTemplate: {
|
|
width: 80,
|
|
align: 'center',
|
|
sortable: false
|
|
},
|
|
url: '/forwardTrade/TradeQuery',
|
|
datatype: 'json',
|
|
multiselect: true,
|
|
height: 'auto',
|
|
width: '96%',
|
|
autowidth: false,
|
|
shrinkToFit: false,
|
|
viewrecords: true,
|
|
jsonReader: { repeatitems: false },
|
|
caption: '',
|
|
mtype: 'POST',
|
|
postData: PostData,
|
|
onSelectRow: rowclick,
|
|
ondblClickRow: rowdblclick,
|
|
colModel: colModelGrid,
|
|
pager: jQuery('#pagerGrid'),
|
|
pagerpos: 'left',
|
|
rowNum: 20,
|
|
rowList: [20, 30, 50, 200, 10000],
|
|
footerrow: true,
|
|
loadComplete: gridComplete,
|
|
onPaging: onJqgridPaging,
|
|
grouping: true
|
|
});
|
|
|
|
function keyEnter(event) {
|
|
try {
|
|
var e = event ? event : (window.event ? window.event : null);
|
|
if (e.keyCode === 13) {
|
|
SearchClick(true);
|
|
}
|
|
} catch (e) {
|
|
//
|
|
}
|
|
}
|
|
|
|
document.onkeydown = keyEnter;
|
|
let underlyingCtrl = new tradeHelper.UnderlyingSelectCtrl('#UnderlyingId')
|
|
.setFlag(tradeHelper.UnderlyingSelectFlag.OtcForward);
|
|
|
|
$("#CheckboxAll").click(function () {
|
|
//setall
|
|
selAllGrid();
|
|
});
|
|
|
|
});
|
|
|
|
var hideObj = { clientWidth: 160 };
|
|
|
|
var i = 0;
|
|
var getColModelGrid = function () {
|
|
let colModelGrid = [
|
|
{
|
|
name: 'id',
|
|
label: 'id',
|
|
index: 'id',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center',
|
|
hidden: true,
|
|
optionHide: true
|
|
}, {
|
|
name: 'EncryptId',
|
|
label: 'EncryptId',
|
|
index: 'EncryptId',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center',
|
|
hidden: true,
|
|
optionHide: true
|
|
}, {
|
|
name: 'UnderlyingId',
|
|
label: 'UnderlyingId',
|
|
index: 'UnderlyingId',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center',
|
|
hidden: true,
|
|
optionHide: true
|
|
}, {
|
|
name: 'IsMoneynessOption',
|
|
label: 'IsMoneynessOption',
|
|
index: 'IsMoneynessOption',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center',
|
|
hidden: true,
|
|
optionHide: true
|
|
},
|
|
//{
|
|
// name: '',
|
|
// label: '操作',
|
|
// index: '',
|
|
// sortIndex: i++,
|
|
// width: 70,
|
|
// align: 'center',
|
|
// formatter: showToolName
|
|
//},
|
|
{
|
|
name: 'OptDate',
|
|
label: '操作时间',
|
|
index: 'OptDate',
|
|
sortIndex: i++,
|
|
width: 160,
|
|
align: 'center',
|
|
sortable:true,
|
|
formatter: 'datetime'
|
|
}, {
|
|
name: 'OptName',
|
|
label: '操作者',
|
|
index: 'OptName',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center'
|
|
},
|
|
{
|
|
name: 'CreatorName',
|
|
label: '创建者',
|
|
index: 'CreatorName',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center'
|
|
}, {
|
|
name: 'AssetBookName',
|
|
label: '簿记账户',
|
|
index: 'AssetBookName',
|
|
sortIndex: i++,
|
|
width: 110,
|
|
align: 'center'
|
|
}, {
|
|
name: 'TraderName',
|
|
label: '交易员',
|
|
index: 'TraderName',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center'
|
|
}, {
|
|
name: 'TradeStatus',
|
|
label: '交易状态',
|
|
index: 'TradeStatus',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center'
|
|
}, {
|
|
name: 'TradeNumber',
|
|
label: '交易编号',
|
|
index: 'TradeNumber',
|
|
sortIndex: i++,
|
|
width: 150,
|
|
align: 'center'
|
|
}, {
|
|
name: 'ClientName',
|
|
label: '客户名称',
|
|
index: 'ClientName',
|
|
sortIndex: i++,
|
|
width: hideObj.clientWidth,
|
|
align: 'center'
|
|
}, {
|
|
name: 'BuySell',
|
|
label: '交易方向',
|
|
index: 'BuySell',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center'
|
|
}, {
|
|
name: 'TradeDate',
|
|
label: '交易日期',
|
|
index: 'TradeDate',
|
|
sortIndex: i++,
|
|
width: 90,
|
|
align: 'center',
|
|
sortable: true,
|
|
formatter: 'date'
|
|
}, {
|
|
name: 'StartDate',
|
|
label: '开始日期', hidden: true,
|
|
index: 'StartDate',
|
|
sortIndex: i++,
|
|
width: 90,
|
|
align: 'center',
|
|
formatter: 'date'
|
|
}, {
|
|
name: 'ExerciseDate',
|
|
label: '到期日期',
|
|
index: 'ExerciseDate',
|
|
sortIndex: i++,
|
|
width: 90,
|
|
align: 'center',
|
|
sortable: true,
|
|
formatter: 'date'
|
|
}, {
|
|
name: 'UnderlyingCode',
|
|
label: '标的代码',
|
|
index: 'UnderlyingCode',
|
|
sortIndex: i++,
|
|
width: 60,
|
|
align: 'center'
|
|
}, {
|
|
name: 'UnderlyingName',
|
|
label: '标的名称',
|
|
index: 'UnderlyingName',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center'
|
|
}, {
|
|
name: 'InitialSpotPrice',
|
|
label: '期初标的价格',
|
|
index: 'InitialSpotPrice', hidden: true,
|
|
sortIndex: i++,
|
|
width: 85,
|
|
align: 'center',
|
|
formatter: otcformat.trading.umprice
|
|
}, {
|
|
name: 'MaturityDate',
|
|
label: '标的到期日',
|
|
index: 'MaturityDate',
|
|
sortIndex: i++,
|
|
width: 90,
|
|
align: 'center',
|
|
sortable:true,
|
|
//formatter: 'date'
|
|
//如果标的资产类型为Stock,则将该列值置空
|
|
formatter: function (cellValue, options, rowObject) {
|
|
if (rowObject.UnderlyingInstrumentType === "Stock")
|
|
return "";
|
|
else
|
|
return rowObject.MaturityDate ?(rowObject.MaturityDate + "").substring(0, 10):'';
|
|
}
|
|
}, {
|
|
name: 'ExerciseModeCn',
|
|
label: '行权方式', hidden: true,
|
|
optionHide: true,
|
|
index: 'ExerciseModeCn',
|
|
sortIndex: i++,
|
|
width: 90,
|
|
align: 'center'
|
|
}, {
|
|
name: 'TradeType',
|
|
label: '结构类型',
|
|
index: 'TradeType',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center',
|
|
formatter: function (cellvalue, options, rowObject) {
|
|
return rowObject.StructureType && rowObject.IsGroup != 2 ? rowObject.StructureType : rowObject.TradeType
|
|
}
|
|
}, {
|
|
name: 'OptionType',
|
|
label: '多空方向',
|
|
index: 'OptionType',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center',
|
|
formatter: function (cellvalue, options, rowObject) {
|
|
return !rowObject.OptionType ? "" : rowObject.OptionType === "看涨" ? "多头" : "空头";
|
|
}
|
|
}, {
|
|
name: 'Strike',
|
|
label: '交割价格',
|
|
index: 'Strike',
|
|
sortIndex: i++,
|
|
width: 90,
|
|
align: 'center',
|
|
sortable:true,
|
|
formatter: otcformat.trading.umprice
|
|
}, {
|
|
name: 'TradeOriginalAmount',
|
|
label: '交易数量',
|
|
index: 'TradeOriginalAmount',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: tradeHelper.getNotionalFormat
|
|
}, {
|
|
name: 'trade_forward.OpenCommission',
|
|
label: '开仓费用',
|
|
index: 'OpenCommission',
|
|
sortIndex: i++,
|
|
width: 90,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: otcformat.trading.tradePrice
|
|
}, {
|
|
name: 'OriginalStockEqvNotional',
|
|
label: '名义本金',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center',
|
|
sortable: true,
|
|
formatter: StockEqvNotionalMaxFormat
|
|
}, {
|
|
name: 'TotalOpenCommission',
|
|
label: '开仓总费用',
|
|
index: 'TotalOpenCommission',
|
|
sortIndex: i++,
|
|
width: 90,
|
|
sortable: false,
|
|
align: 'center',
|
|
formatter: function (cellvalue, options, rowObject) {
|
|
if (!rowObject.TradePrice) {
|
|
return "0.00";
|
|
}
|
|
var num = rowObject.TradePrice;
|
|
return otcformat.trading.tradePrice(num);
|
|
}
|
|
}, {
|
|
name: 'TradeAmount',
|
|
label: '存续数量',
|
|
index: 'TradeAmount',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center',
|
|
sortable: true,
|
|
formatter: TradeAmountFormat
|
|
}, {
|
|
name: 'FinalPrice',
|
|
label: '期末价格',
|
|
index: 'FinalPrice',
|
|
sortIndex: i++,
|
|
width: 85,
|
|
align: 'center', hidden: true,
|
|
formatter: otcformat.trading.umprice
|
|
}, {
|
|
name: 'SyntheticUnderlyingTipsInfo',
|
|
label: 'SyntheticUnderlyingTipsInfo',
|
|
index: 'SyntheticUnderlyingTipsInfo',
|
|
sortIndex: i++,
|
|
align: 'center',
|
|
hidden: true,
|
|
optionHide: true
|
|
}, {
|
|
name: 'SalesCommission.Commission',
|
|
label: '销售提成',
|
|
index: 'SalesCommission.Commission',
|
|
sortIndex: i++,
|
|
width: 90,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: CommissionFormatter
|
|
}
|
|
];
|
|
|
|
if (page.isDongZheng === "True")
|
|
{
|
|
colModelGrid.push({
|
|
name: 'Comments',
|
|
label: '对手编号',
|
|
index: 'Comments',
|
|
sortIndex: i++,
|
|
width: 120,
|
|
sortable: false,
|
|
align: 'center',
|
|
});
|
|
}
|
|
else
|
|
{
|
|
colModelGrid.push( {
|
|
name: 'Comments',
|
|
label: '备注',
|
|
index: 'Comments',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center',
|
|
formatter: function (cellValue, options, rowObject) {
|
|
if (cellValue && cellValue.startsWith("http://")) {
|
|
return "<a href='{0}' style='text-decoration:underline;' target='_blank'>{0}</a>".template(cellValue);
|
|
}
|
|
return cellValue;
|
|
}
|
|
});
|
|
}
|
|
if (page.ViewTagPermission) {
|
|
colModelGrid.push({
|
|
name: 'Tags',
|
|
label: '标签值',
|
|
index: 'Tags',
|
|
width: 150,
|
|
align: 'left',
|
|
sortable: false,
|
|
formatter: function (cellvalue, options, rowObject) {
|
|
var html = '<div class="tag-context">';
|
|
var tagNames = "";
|
|
if (rowObject.Tags != null && rowObject.Tags.length > 0) {
|
|
for (var i = 0; i < rowObject.Tags.length; i++) {
|
|
if (i == rowObject.Tags.length - 1) {
|
|
tagNames += "[" + rowObject.Tags[i].Name + "]";
|
|
} else {
|
|
tagNames += "[" + rowObject.Tags[i].Name + "],";
|
|
}
|
|
}
|
|
if (rowObject.Tags.length > 2) {
|
|
for (var i = 0; i < 2; i++) {
|
|
html += '<span class="tag-item" data-id="' + rowObject.Tags[i].Id + '" data-name="' + rowObject.Tags[i].Name + '"><span class="tag-text" data-value="' + rowObject.Tags[i].Id + '">' + rowObject.Tags[i].Name + '</span></span>';
|
|
}
|
|
html += '<span class="tag-add" title="' + tagNames + '">...</span>';
|
|
} else {
|
|
for (var i = 0; i < rowObject.Tags.length; i++) {
|
|
html += '<span class="tag-item" data-id="' + rowObject.Tags[i].Id + '" data-name="' + rowObject.Tags[i].Name + '"><span class="tag-text" data-value="' + rowObject.Tags[i].Id + '">' + rowObject.Tags[i].Name + '</span></span>';
|
|
}
|
|
}
|
|
}
|
|
html += '</div>';
|
|
return html;
|
|
}
|
|
}, {
|
|
name: 'OutputTags',
|
|
label: 'OutputTags',
|
|
index: 'OutputTags',
|
|
width: 70,
|
|
align: 'center',
|
|
hidden: true,
|
|
optionHide: true
|
|
});
|
|
}
|
|
|
|
return colModelGrid;
|
|
};
|
|
|
|
var colModelGrid = getColModelGrid();
|
|
|
|
function DoubleFormat(cellValue, options, rowObject) {
|
|
return !cellValue ? "0.00" : cellValue.toFixed(2);
|
|
}
|
|
|
|
function PercentFormat(cellValue, options, rowObject) {
|
|
if (cellValue) {
|
|
var num = new Number(cellValue) * 100;
|
|
return num.toFixed(2) + "%";
|
|
} else {
|
|
return "0.00%";
|
|
}
|
|
}
|
|
|
|
function StockEqvNotionalMaxFormat(cellValue, options, rowObject) {
|
|
return otcformat.trading.StockEqvNotional(isUseStockEqvNotionalMax && rowObject.StockEqvNotionalMax > 0 ? rowObject.StockEqvNotionalMax : cellValue);
|
|
}
|
|
|
|
function NotionalFormat(cellValue, options, rowObject) {
|
|
if (rowObject.TradeStatus === page.trade_yizhixing || rowObject.TradeStatus === page.trade_yidaoqi || rowObject.TradeStatus === page.trade_yipingcang) {
|
|
return "0.00";
|
|
}
|
|
else {
|
|
return DoubleFormat(cellValue, options, rowObject);
|
|
}
|
|
}
|
|
|
|
function TradeAmountFormat(cellValue, options, rowObject) {
|
|
if (rowObject.TradeStatus === page.trade_yizhixing || rowObject.TradeStatus === page.trade_yidaoqi || rowObject.TradeStatus === page.trade_yipingcang) {
|
|
return "0.00";
|
|
}
|
|
else {
|
|
return tradeHelper.getNotionalFormatByDouble(cellValue, options, rowObject);
|
|
}
|
|
}
|
|
|
|
function TradePriceFormat(cellValue, options, rowObject) {
|
|
return numeral(cellValue * (rowObject.BuySell === "买入" || rowObject.BuySell === "多头开仓" || rowObject.BuySell === "空头平仓" ? -1 : 1)).format('0,0.00');
|
|
}
|
|
|
|
function unwindDateFormat(cellValue, options, rowObject) {
|
|
return (rowObject.TradeStatus === "已执行" || rowObject.TradeStatus === "已到期") ? moment(cellValue).format("YYYY-MM-DD") : "";
|
|
}
|
|
|
|
function CommissionFormatter(cellValue, options, rowObject) {
|
|
if (rowObject.SalesCommission.Commission) {
|
|
if (rowObject.SalesCommission.CommissionFixed == false) {
|
|
return otcformat.trading.premiumRateP(rowObject.SalesCommission.Commission);
|
|
} else {
|
|
return otcformat.trading.umprice(rowObject.SalesCommission.Commission);
|
|
}
|
|
} else {
|
|
if (rowObject.SalesCommission.Commission === 0) {
|
|
return otcformat.trading.umprice(0);
|
|
}
|
|
else {
|
|
return "";
|
|
}
|
|
}
|
|
}
|
|
|
|
function gridComplete() {
|
|
var jgrid = $(this);
|
|
var rowNum = parseInt(jgrid.getGridParam('records'), 10);
|
|
if (rowNum > 0) {
|
|
$(".ui-jqgrid-sdiv").show();
|
|
|
|
var totalTradeAmount = arguments[0].Sum == null ? "" : arguments[0].Sum.TradeAmountSum;
|
|
|
|
jgrid.footerData("set", { "TradeAmount": totalTradeAmount });
|
|
|
|
$(".ui-jqgrid-sortable").css("text-align", "center");
|
|
|
|
var newHeight = $(window).height() - 270;
|
|
$(".ui-jqgrid .ui-jqgrid-bdiv").css("cssText", "height: " + newHeight + "px!important;");
|
|
$('.ui-jqgrid-bdiv', '#gbox_listGrid').floatingScroll();
|
|
} else {
|
|
$(".ui-jqgrid-sdiv").hide();
|
|
}
|
|
//jgrid.sortGrid(g_sort.name, g_sort.order);
|
|
main.setcolumnChooser(jgrid, page.configcolumn_data_yqjyss);
|
|
$(".selftooltip").tooltip({ html: true, show: 50000, trigger: "hover" });
|
|
}
|
|
|
|
function showToolName(cellValue, options, rowObject) {
|
|
var color = "";
|
|
var title = "查看交易信息";
|
|
var html = "<input style=\"{2}\" type=\"button\" class=\"wentiEdit\" title='{3}' onclick=\"starttradeView('{0}','{1}')\" value=\"查看\" />"
|
|
.template(rowObject.EncryptId, rowObject.TradeType, color, title);
|
|
return html;
|
|
}
|
|
|
|
function rowclick(id) {
|
|
|
|
}
|
|
|
|
function rowdblclick(rowid) {
|
|
var rowData = $(this).getRowData(rowid);
|
|
if (rowData.EncryptId && rowData.TradeType) {
|
|
starttradeView(rowData.EncryptId, rowData.TradeType);
|
|
}
|
|
}
|
|
|
|
function startAddtrade() {
|
|
layer.open({
|
|
type: 2,
|
|
title: "新增远期交易",
|
|
shadeClose: false,
|
|
shade: 0.4,
|
|
area: ['1400px', '800px'],
|
|
content: "/forwardTrade/TradeEditV2/0"
|
|
});
|
|
}
|
|
|
|
function starttradeView(id, tradeType) {
|
|
var srcurl = "/forwardTrade/TradeView/?enid=" + id + "&checkBtn=1";
|
|
main.open("查看交易", srcurl, { area: ['1300px', '900px'], scrollbar: false });
|
|
}
|
|
|
|
function reloadtrade() {
|
|
//重新加载
|
|
SearchClick();
|
|
}
|
|
|
|
function SearchClick(isSearchclick) {
|
|
var listGrid = $('#listGrid');
|
|
|
|
listGrid.appendPostData({ TradeNumber: $("#TradeNumber").val() });
|
|
listGrid.appendPostData({ AssetIds: !$("#AssetId").val() ? "" : $("#AssetId").val().join(",") });
|
|
listGrid.appendPostData({ AssetIdGroupList: $("#GroupId").val() });
|
|
listGrid.appendPostData({ ClientIds: !$("#ClientId").val() ? "" : $("#ClientId").val().join(",") });
|
|
listGrid.appendPostData({ AssetType: $("#AssetType").val() });
|
|
listGrid.appendPostData({
|
|
UnderlyingIds: !$("#UnderlyingId").val() ? "" : $("#UnderlyingId").val().join(",")
|
|
});
|
|
listGrid.appendPostData({
|
|
ExchangeAccountCodes: $("#ExchangeAccountCode").val()
|
|
});
|
|
listGrid.appendPostData({
|
|
TradeTypes: !$("#TradeTypes").val() ? "" : $("#TradeTypes").val().join(",")
|
|
});
|
|
listGrid.appendPostData({ TradeDateStart: $("#DateFromTradeDate").val() });
|
|
listGrid.appendPostData({ TradeDateEnd: $("#DateToTradeDate").val() });
|
|
listGrid.appendPostData({ BuySell: $("#BuySell").val() });
|
|
listGrid.appendPostData({ OptionType: $("#OptionType").val() });
|
|
listGrid.appendPostData({ StartDateStart: $("#DateFromStartDate").val() });
|
|
listGrid.appendPostData({ StartDateEnd: $("#DateToStartDate").val() });
|
|
listGrid.appendPostData({ MaturityDateStart: $("#DateFromMaturityDate").val() });
|
|
listGrid.appendPostData({ MaturityDateEnd: $("#DateToMaturityDate").val() });
|
|
listGrid.appendPostData({ TradePrice: $("#TradePrice").val() });
|
|
|
|
var reqTradeStatus = !$("#TradeStatus").val() ? page.AllTradeStatus : $("#TradeStatus").val().join(",");
|
|
if (!reqTradeStatus) {
|
|
reqTradeStatus = page.AllTradeStatus;
|
|
}
|
|
|
|
listGrid.appendPostData({ TradeStatus: reqTradeStatus });
|
|
listGrid.appendPostData({
|
|
TraderNames: !$("#TraderName").val() ? "" : $("#TraderName").val().join(",")
|
|
});
|
|
listGrid.appendPostData({ ExerciseDateStart: $("#DateFromExerciseDate").val() });
|
|
listGrid.appendPostData({ ExerciseDateEnd: $("#DateToExerciseDate").val() });
|
|
listGrid.appendPostData({ TagIds: $("#TagIds").val() });
|
|
query_data = listGrid.jqGrid('getPostData');
|
|
if (typeof isSearchclick !== "undefined" && isSearchclick) {
|
|
//点击搜索时默认第一页
|
|
listGrid.jqGrid('setGridParam',
|
|
{
|
|
page: 1
|
|
});
|
|
}
|
|
|
|
listGrid.trigger('reloadGrid');
|
|
}
|
|
|
|
function exportTrade(isExportAllCol) {
|
|
if (!isExportAllCol) {
|
|
var dateTemp = new Date().Format("yyyyMMddhhmmss");
|
|
var fileName = "远期交易导出" + dateTemp;
|
|
var toExcelAarry = [
|
|
{
|
|
colName: "交易编号",
|
|
formatter: "text"
|
|
}, {
|
|
colName: "标的代码",
|
|
formatter: function (cellValue, options, rowObject) {
|
|
if (rowObject.TradeType === "合成价差期权") {
|
|
return rowObject.SyntheticUnderlyingTipsInfo;
|
|
}
|
|
return cellValue;
|
|
}
|
|
}];
|
|
if (page.ViewTagPermission) {
|
|
toExcelAarry.push({
|
|
colName: "标签值",
|
|
formatter: function (cellValue, options, rowObject) {
|
|
|
|
return rowObject.OutputTags;
|
|
}
|
|
});
|
|
}
|
|
main.toExcel("listGrid", fileName, "xls", null, "操作者,操作时间,操作", toExcelAarry );
|
|
return;
|
|
}
|
|
}
|
|
|
|
function importTrade() {
|
|
main.open("远期交易导入", "/forwardTrade/TradeUpload", { area: ['800px', '600px'] });
|
|
}
|
|
|
|
function getValidVal(val, defaultVal) {
|
|
if (!val) {
|
|
return defaultVal || "";
|
|
}
|
|
return val;
|
|
}
|
|
|
|
function getRowText(data, rowModel, template) {
|
|
var rowText = "";
|
|
for (var i = 0; i < data.length; i++) {
|
|
var val = getValidVal(data[i].value);
|
|
if (data[i].visible) {
|
|
if (typeof data[i].visible === "boolean" && !data[i].visible) {
|
|
continue;
|
|
}
|
|
if (typeof data[i].visible === "function" && !data[i].visible(val, rowModel)) {
|
|
continue;
|
|
}
|
|
}
|
|
if (data[i].func && typeof data[i].func === "function") {
|
|
val = data[i].func(val, rowModel);
|
|
}
|
|
rowText += template.template(data[i].name, val);
|
|
}
|
|
return rowText;
|
|
}
|
|
|
|
function downCsv(fileName, exStrr, fileExtension) {
|
|
//针对换行符和空格符转换
|
|
exStrr = exStrr.replace(/                      /g, " ").replace(/权  利  金/g, "权 利 金").replace(/<br\/>/g, "\r\n");
|
|
|
|
if (!fileExtension) {
|
|
fileExtension = ".csv";
|
|
}
|
|
var isIE = (navigator.userAgent.indexOf('MSIE') >= 0);
|
|
if (isIE) {
|
|
var strHTML = exStrr;
|
|
var winSave = window.open();
|
|
winSave.document.open("text", "utf-8");
|
|
winSave.document.write(strHTML);
|
|
winSave.document.execCommand("SaveAs", true, fileName + fileExtension);
|
|
winSave.close();
|
|
} else {
|
|
var mimeType = 'text/plain';
|
|
$('#createInvote').attr('download', fileName + fileExtension);
|
|
//\uFEFF bom
|
|
$('#createInvote').attr('href',
|
|
'data:' + mimeType + '; charset=utf-8,\uFEFF' + encodeURIComponent(exStrr));
|
|
if (fileExtension === ".txt") {
|
|
document.getElementById('createInvote').click();
|
|
return;
|
|
}
|
|
|
|
//todo test
|
|
|
|
$('#createInvote2').attr('download', fileName + fileExtension);
|
|
|
|
$("#excelTable").html(exStrr);
|
|
document.getElementById('createInvote2').click();
|
|
|
|
}
|
|
}
|
|
|
|
function unWindSelect(id, tradeType, isReCheck) {
|
|
if (tradeType === "商品期货") {
|
|
var message = "\"" + tradeType + "\"不允许平仓操作!";
|
|
main.confirm(message, function () { });
|
|
return;
|
|
}
|
|
var title = "交易平仓";
|
|
if (isReCheck) title = "平仓复核";
|
|
//障碍期权特殊处理 敲入时状态必须不为空才为有效 敲出时状态为空为有效
|
|
|
|
var srcurl = "/forwardTrade/tradeUnwind/?enid=" + id;
|
|
if (isReCheck) srcurl += ("&isrecheck=" + isReCheck);
|
|
main.open(title, srcurl, {
|
|
area: ["1200px", "570px"],
|
|
end: function () {
|
|
reloadtrade();
|
|
}
|
|
});
|
|
}
|
|
|
|
function showcolumnChooser() {
|
|
var jgrid = jQuery('#listGrid');
|
|
main.showcolumnChooser(jgrid, page.configcolumn_data_yqjyss);
|
|
}
|
|
|
|
function selAllGrid() {
|
|
var checkAll = $("#CheckboxAll").prop("checked");
|
|
$("#cb_listGrid").click();
|
|
var cbGridClick = $("#cb_listGrid").prop("checked");
|
|
if (checkAll !== cbGridClick) {
|
|
$("#cb_listGrid").click();
|
|
}
|
|
}
|
|
|
|
function GetSelAll() {
|
|
var listGrid = $('#listGrid');
|
|
return {
|
|
IsSelAll: $("#CheckboxAll").prop("checked"), PostData: listGrid.getPostData()
|
|
};
|
|
}
|
|
|
|
function getSelectTradeIds() {
|
|
return main.GetGridIds($('#listGrid'));
|
|
}
|
|
|
|
function GetGridObjs() {
|
|
return main.GetGridObjs($('#listGrid'));
|
|
}
|
|
|
|
function approvalList() {
|
|
var grid = $("#listGrid");
|
|
var selRow = grid.jqGrid('getGridParam', 'selarrrow');
|
|
if (selRow.length == 0) {
|
|
main.message("请勾选要匹配的交易");
|
|
return;
|
|
}
|
|
if (selRow.length > 1) {
|
|
main.message("请仅勾选一条交易操作");
|
|
return;
|
|
}
|
|
var trade = grid.getRowData(selRow[0]);
|
|
main.open("审批记录", "/trade/InterfaceApprovalRecord?type=1&code=" + trade.TradeNumber, { area: ["1200px", "600px"] });
|
|
}
|
|
|
|
//ESC
|
|
$(document).keyup(function (event) {
|
|
switch (event.keyCode) {
|
|
case 27:
|
|
window.parent.layer.closeAll();
|
|
$(".jconfirm-open").addClass("hide");//关闭取消分组弹层
|
|
}
|
|
});
|
|
function BatchSetTradeTag() {
|
|
var jgrid = jQuery('#listGrid');
|
|
var selIds = main.GetGridIds(jgrid);
|
|
if (selIds.length === 0) { main.message("请选择至少一个交易"); return; }
|
|
let srcurl = "/Tag/BatchSetTradeTag/?ids=" + selIds.join(',');
|
|
main.open("批量设置标签", srcurl, { area: ['778px', '257px'], scrollbar: false });
|
|
}
|
|
|
|
window.reloadData = reloadtrade; |