1377 lines
46 KiB
JavaScript
1377 lines
46 KiB
JavaScript
var g_grid = {};
|
|
var query_data = {};
|
|
|
|
$(function () {
|
|
var PostData = {};
|
|
|
|
if (observationDate) {
|
|
$("#DateValueDate").val(observationDate);
|
|
PostData.ValueDate = observationDate;
|
|
}
|
|
|
|
if (settleDate) {
|
|
$("#DateFromExerciseDate").val(settleDate);
|
|
$("#DateToExerciseDate").val(settleDate);
|
|
PostData.ExerciseDateStart = settleDate;
|
|
PostData.ExerciseDateEnd = settleDate;
|
|
}
|
|
|
|
$(".datepicker").datepicker({
|
|
changeMonth: true,
|
|
changeYear: true,
|
|
showButtonPanel: true,
|
|
showOtherMonths: true,
|
|
selectOtherMonths: true
|
|
});
|
|
|
|
grid = jQuery('#listGrid').jqGrid({
|
|
cmTemplate: {
|
|
width: 80,
|
|
align: 'center',
|
|
sortable: false
|
|
},
|
|
url: '/swapTrade/TradeQuery',
|
|
datatype: 'json',
|
|
multiselect: true,
|
|
height: 'auto',
|
|
width: '96%',
|
|
autowidth: false,
|
|
shrinkToFit: false,
|
|
viewrecords: true,
|
|
jsonReader: { repeatitems: false },
|
|
caption: '',
|
|
mtype: 'POST',
|
|
postData: PostData,
|
|
afterInsertRow: AfterInsertRow,
|
|
onSelectRow: rowclick,
|
|
ondblClickRow: rowdblclick,
|
|
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;
|
|
|
|
let underlyingCtrl = new tradeHelper.UnderlyingSelectCtrl('#UnderlyingId')
|
|
.setFlag(tradeHelper.UnderlyingSelectFlag.OtcTrade);
|
|
|
|
$("#CheckboxAll").click(function () {
|
|
//setall
|
|
selAllGrid();
|
|
});
|
|
});
|
|
|
|
var hideObj = { clientWidth: 160 };
|
|
|
|
var i = 0;
|
|
var getColModelGrid = function () {
|
|
if (isguojun) {
|
|
var col = [
|
|
{
|
|
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: 'UnwindDate',
|
|
label: 'UnwindDate',
|
|
hidden: true,
|
|
optionHide: true
|
|
}, {
|
|
name: 'trade_swap.GetSwapTimeAndRate',
|
|
label: 'trade_swap.GetSwapTimeAndRate',
|
|
index: 'trade_swap.GetSwapTimeAndRate',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center',
|
|
hidden: true,
|
|
optionHide: true
|
|
}, {
|
|
name: 'trade_swap.PaySwapTimeAndRate',
|
|
label: 'trade_swap.PaySwapTimeAndRate',
|
|
index: 'trade_swap.PaySwapTimeAndRate',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center',
|
|
hidden: true,
|
|
optionHide: true,
|
|
}, {
|
|
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: 'Comments',
|
|
label: '备注',
|
|
index: 'Comments',
|
|
sortIndex: i++,
|
|
width: 110,
|
|
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 == null ? "" : cellValue;
|
|
},
|
|
hidden: true
|
|
}, {
|
|
name: 'TradeStatus',
|
|
label: '交易状态',
|
|
index: 'TradeStatus',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center'
|
|
}, {
|
|
name: 'ClientNumber',
|
|
label: '客户编号',
|
|
index: 'ClientNumber',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center'
|
|
}, {
|
|
name: 'ClientName',
|
|
label: '客户名称',
|
|
index: 'ClientName',
|
|
sortIndex: i++,
|
|
width: hideObj.clientWidth,
|
|
align: 'center'
|
|
}, {
|
|
name: 'AssetBookName',
|
|
label: '簿记账户',
|
|
index: 'AssetBookName',
|
|
sortIndex: i++,
|
|
width: 110,
|
|
align: 'center'
|
|
}, {
|
|
name: 'TradeNumber',
|
|
label: '交易编号',
|
|
index: 'TradeNumber',
|
|
sortIndex: i++,
|
|
width: 240,
|
|
align: 'center',
|
|
formatter: ShowStructFormater
|
|
}, {
|
|
name: 'TradeDate',
|
|
label: '交易日期',
|
|
index: 'TradeDate',
|
|
sortIndex: i++,
|
|
width: 90,
|
|
align: 'center',
|
|
sortable: true,
|
|
formatter: 'date'
|
|
}, {
|
|
name: 'StartDate',
|
|
label: '开始日期',
|
|
index: 'StartDate',
|
|
sortIndex: i++,
|
|
width: 90,
|
|
align: 'center',
|
|
sortable: true,
|
|
formatter: 'date'
|
|
}, {
|
|
name: 'ExerciseDate',
|
|
label: '到期日期',
|
|
index: 'ExerciseDate',
|
|
sortIndex: i++,
|
|
width: 90,
|
|
align: 'center',
|
|
sortable: true,
|
|
formatter: 'date'
|
|
}, {
|
|
name: 'SettlementDate',
|
|
label: '结算日期',
|
|
index: 'SettlementDate',
|
|
sortIndex: i++,
|
|
width: 90,
|
|
align: 'center',
|
|
sortable: true,
|
|
formatter: 'date'
|
|
}, {
|
|
name: 'UnderlyingCode',
|
|
label: '标的代码',
|
|
index: 'UnderlyingCode',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
}, {
|
|
name: 'UnderlyingName',
|
|
label: '标的名称',
|
|
index: 'UnderlyingName',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
}, {
|
|
name: 'QuoteCurrency',
|
|
label: '计价货币',
|
|
index: 'QuoteCurrency',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center'
|
|
}, {
|
|
name: 'TraderName',
|
|
label: '交易员',
|
|
index: 'TraderName',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
hidden: true
|
|
}, {
|
|
name: 'SalesCommission.Commission',
|
|
label: '销售提成',
|
|
index: 'SalesCommission.Commission',
|
|
sortIndex: i++,
|
|
width: 90,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: CommissionFormatter,
|
|
hidden: true
|
|
}, {
|
|
name: 'trade_swap_gj.LongShort',
|
|
label: '多头空头',
|
|
index: 'trade_swap_gj.LongShort',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
}, {
|
|
name: 'SpotPrice',
|
|
label: '标的期初价格',
|
|
index: 'SpotPrice',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: Format6
|
|
}, {
|
|
name: 'OriginalNotional',
|
|
label: '成交数量',
|
|
index: 'OriginalNotional',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: otcformat.trading.notional
|
|
}, {
|
|
name: 'trade_swap_gj.OpenPrice',
|
|
label: '标的期初价格(费后)',
|
|
index: 'trade_swap_gj.OpenPrice',
|
|
sortIndex: i++,
|
|
width: 120,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: Format6
|
|
}, {
|
|
name: 'trade_swap_gj.TradeCommission',
|
|
label: '开仓费用',
|
|
index: 'trade_swap_gj.TradeCommission',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: otcformat.trading.umprice
|
|
}, {
|
|
name: 'trade_swap_gj.OpenCurrencyRate',
|
|
label: '期初汇率',
|
|
index: 'trade_swap_gj.OpenCurrencyRate',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: otcformat.trading.umprice
|
|
}, {
|
|
name: 'trade_swap_gj.PricingOriginalStockEqvNotional',
|
|
label: '期初名义本金(计价货币)',
|
|
index: 'trade_swap_gj.PricingOriginalStockEqvNotional',
|
|
sortIndex: i++,
|
|
width: 150,
|
|
align: 'center',
|
|
formatter: otcformat.trading.StockEqvNotional
|
|
}, {
|
|
name: 'OriginalStockEqvNotional',
|
|
label: '期初名义本金(结算货币)',
|
|
index: 'OriginalStockEqvNotional',
|
|
sortIndex: i++,
|
|
width: 150,
|
|
align: 'center',
|
|
formatter: otcformat.trading.StockEqvNotional
|
|
}, {
|
|
name: 'trade_swap_gj.SwapTimeAndRate',
|
|
label: '固定收益率',
|
|
index: 'trade_swap_gj.SwapTimeAndRate',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: SwapTimeAndRateFormat2
|
|
}, {
|
|
name: 'Notional',
|
|
label: '存续数量',
|
|
index: 'Notional',
|
|
width: 100,
|
|
sortIndex: i++,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: otcformat.trading.notional
|
|
}, {
|
|
name: 'trade_swap_gj.PricingStockEqvNotional',
|
|
label: '存续名义本金(计价货币)',
|
|
index: 'trade_swap_gj.PricingStockEqvNotional',
|
|
sortIndex: i++,
|
|
width: 150,
|
|
align: 'center',
|
|
formatter: otcformat.trading.StockEqvNotional
|
|
}, {
|
|
name: 'StockEqvNotional',
|
|
label: '存续名义本金(结算货币)',
|
|
index: 'StockEqvNotional',
|
|
sortIndex: i++,
|
|
width: 150,
|
|
align: 'center',
|
|
formatter: otcformat.trading.StockEqvNotional
|
|
}
|
|
];
|
|
return tradeHelper.getAmountToNotional(col);
|
|
} else {
|
|
var col = [
|
|
{
|
|
// name: 'rowFlag',
|
|
// label: ' ',
|
|
// width: 30,
|
|
// optionHide: true,
|
|
// formatter: expandFormat,
|
|
// align: 'center',
|
|
// sortable: false
|
|
//}, {
|
|
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: 'trade_swap.GetSwapTimeAndRate',
|
|
// label: 'trade_swap.GetSwapTimeAndRate',
|
|
// index: 'trade_swap.GetSwapTimeAndRate',
|
|
// sortIndex: i++,
|
|
// width: 70,
|
|
// align: 'center',
|
|
// hidden: true,
|
|
// optionHide: true
|
|
//}, {
|
|
// name: 'trade_swap.PaySwapTimeAndRate',
|
|
// label: 'trade_swap.PaySwapTimeAndRate',
|
|
// index: 'trade_swap.PaySwapTimeAndRate',
|
|
// sortIndex: i++,
|
|
// width: 70,
|
|
// align: 'center',
|
|
// hidden: true,
|
|
// optionHide: true
|
|
}, {
|
|
name: 'UnwindDate',
|
|
label: 'UnwindDate',
|
|
hidden: true,
|
|
optionHide: true
|
|
}, {
|
|
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: 'Comments',
|
|
label: '备注',
|
|
index: 'Comments',
|
|
sortIndex: i++,
|
|
width: 110,
|
|
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 == null ? "" : cellValue;
|
|
}
|
|
}
|
|
, {
|
|
name: 'AssetBookName',
|
|
label: '簿记账户',
|
|
index: 'AssetBookName',
|
|
sortIndex: i++,
|
|
width: 110,
|
|
align: 'center'
|
|
}, {
|
|
name: 'TradeStatus',
|
|
label: '交易状态',
|
|
index: 'TradeStatus',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center'
|
|
}, {
|
|
name: 'TradeNumber',
|
|
label: '交易编号',
|
|
index: 'TradeNumber',
|
|
sortIndex: i++,
|
|
width: 240,
|
|
align: 'center',
|
|
formatter: ShowStructFormater
|
|
}, {
|
|
name: 'ContractCode',
|
|
label: '确认书编号',
|
|
index: 'ContractCode',
|
|
sortIndex: i++,
|
|
width: 240,
|
|
align: 'center',
|
|
hidden: true,
|
|
formatter: ShowStructFormater
|
|
}, {
|
|
name: 'TradeDate',
|
|
label: '交易日期',
|
|
index: 'TradeDate',
|
|
sortIndex: i++,
|
|
width: 90,
|
|
align: 'center',
|
|
sortable: true,
|
|
formatter: 'date'
|
|
}, {
|
|
name: 'StartDate',
|
|
label: '开始日期',
|
|
index: 'StartDate',
|
|
sortIndex: i++,
|
|
width: 90,
|
|
align: 'center',
|
|
sortable: true,
|
|
formatter: 'date'
|
|
}, {
|
|
name: 'ExerciseDate',
|
|
label: '到期日期',
|
|
index: 'ExerciseDate',
|
|
sortIndex: i++,
|
|
width: 90,
|
|
align: 'center',
|
|
sortable: true,
|
|
formatter: 'date'
|
|
}, {
|
|
name: 'SettlementDate',
|
|
label: '结算日期',
|
|
index: 'SettlementDate',
|
|
sortIndex: i++,
|
|
width: 90,
|
|
align: 'center',
|
|
sortable: true,
|
|
formatter: 'date'
|
|
}, {
|
|
name: 'SettlementFlag',
|
|
label: '是否延期结算',
|
|
index: 'SettlementFlag',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: YesOrNoFormat
|
|
}, {
|
|
name: 'TradeType',
|
|
label: '结构类型',
|
|
index: 'TradeType',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center'
|
|
}, {
|
|
name: 'trade_swap.SwapType',
|
|
label: '互换类型',
|
|
index: 'trade_swap.SwapType',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center'
|
|
}, {
|
|
name: 'OriginalStockEqvNotional',
|
|
label: '名义本金',
|
|
index: 'OriginalStockEqvNotional',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center',
|
|
sortable: true,
|
|
formatter: otcformat.trading.StockEqvNotional
|
|
}, {
|
|
name: 'ClientName',
|
|
label: '交易对手方',
|
|
index: 'ClientName',
|
|
sortIndex: i++,
|
|
width: hideObj.clientWidth,
|
|
align: 'center'
|
|
}, {
|
|
name: 'QuoteCurrency',
|
|
label: '计价货币',
|
|
index: 'QuoteCurrency',
|
|
sortIndex: i++,
|
|
width: 70,
|
|
align: 'center'
|
|
}, {
|
|
name: 'TradeAmount',
|
|
label: '持仓数量',
|
|
width: 100,
|
|
sortIndex: i++,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: otcformat.trading.notional
|
|
}, {
|
|
name: 'trade_swap.IsGetFloatingProfit',
|
|
label: '[收取]浮动收益',
|
|
index: 'trade_swap.IsGetFloatingProfit',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: YesOrNoFormat
|
|
}, {
|
|
name: 'trade_swap.GetUnderlyingCode',
|
|
label: '[收取]标的代码',
|
|
index: 'trade_swap.GetUnderlyingCode',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
}, {
|
|
name: 'MetaDic.GetUnderlyingName',
|
|
label: '[收取]标的名称',
|
|
index: 'MetaDic.GetUnderlyingName',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
}, {
|
|
name: 'trade_swap.GetLongShort',
|
|
label: '[收取]多头空头',
|
|
index: 'trade_swap.GetLongShort',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
}, {
|
|
name: 'trade_swap.GetSpotPrice',
|
|
label: '[收取]标的期初价格',
|
|
index: 'trade_swap.GetSpotPrice',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: otcformat.trading.umprice
|
|
}, {
|
|
name: 'trade_swap.GetOpenPrice',
|
|
label: '[收取]开仓价格',
|
|
index: 'trade_swap.GetOpenPrice',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: otcformat.trading.umprice
|
|
}, {
|
|
name: 'trade_swap.GetTradeAmount',
|
|
label: '[收取]交易数量',
|
|
index: 'trade_swap.GetTradeAmount',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: otcformat.trading.notional
|
|
}, {
|
|
name: 'trade_swap.GetLot',
|
|
label: '[收取]手数',
|
|
index: 'trade_swap.GetLot',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: otcformat.trading.notional
|
|
}, {
|
|
name: 'trade_swap.GetTradePrice',
|
|
label: '[收取]交易费用',
|
|
index: 'trade_swap.GetTradePrice',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: otcformat.trading.tradePrice
|
|
}, {
|
|
name: 'trade_swap.GetMarginRate',
|
|
label: '[收取]初始预付金率',
|
|
index: 'trade_swap.GetMarginRate',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: otcformat.trading.premiumRateP
|
|
}, {
|
|
name: 'trade_swap.GetSwapTimeAndRate',
|
|
label: '[收取]互换利率(年化)',
|
|
index: 'trade_swap.GetSwapTimeAndRate',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: SwapTimeAndRateFormat
|
|
}, {
|
|
name: 'TraderName',
|
|
label: '交易员',
|
|
index: 'TraderName',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center'
|
|
}, {
|
|
name: 'trade_swap.IsPayFloatingProfit',
|
|
label: '[支付]浮动收益',
|
|
index: 'trade_swap.IsPayFloatingProfit',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: YesOrNoFormat
|
|
}, {
|
|
name: 'trade_swap.PayUnderlyingCode',
|
|
label: '[支付]标的代码',
|
|
index: 'trade_swap.PayUnderlyingCode',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
}, {
|
|
name: 'MetaDic.PayUnderlyingName',
|
|
label: '[支付]标的名称',
|
|
index: 'MetaDic.PayUnderlyingName',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
}, {
|
|
name: 'trade_swap.PayLongShort',
|
|
label: '[支付]多头空头',
|
|
index: 'trade_swap.PayLongShort',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
}, {
|
|
name: 'trade_swap.PaySpotPrice',
|
|
label: '[支付]标的期初价格',
|
|
index: 'trade_swap.PaySpotPrice',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: otcformat.trading.umprice
|
|
}, {
|
|
name: 'trade_swap.PayOpenPrice',
|
|
label: '[支付]开仓价格',
|
|
index: 'trade_swap.PayOpenPrice',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: otcformat.trading.umprice
|
|
}, {
|
|
name: 'trade_swap.PayTradeAmount',
|
|
label: '[支付]交易数量',
|
|
index: 'trade_swap.PayTradeAmount',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: otcformat.trading.notional
|
|
}, {
|
|
name: 'trade_swap.PayLot',
|
|
label: '[支付]手数',
|
|
index: 'trade_swap.PayLot',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: otcformat.trading.notional
|
|
}, {
|
|
name: 'trade_swap.PayTradePrice',
|
|
label: '[支付]交易费用',
|
|
index: 'trade_swap.PayTradePrice',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: otcformat.trading.tradePrice
|
|
}, {
|
|
name: 'trade_swap.PaySwapTimeAndRate',
|
|
label: '[支付]互换利率(年化)',
|
|
index: 'trade_swap.PaySwapTimeAndRate',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: SwapTimeAndRateFormat
|
|
}, {
|
|
name: 'trade_swap.PayMarginRate',
|
|
label: '[支付]初始预付金率',
|
|
index: 'trade_swap.PayMarginRate',
|
|
sortIndex: i++,
|
|
width: 100,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: otcformat.trading.premiumRateP
|
|
}, {
|
|
name: 'SalesCommission.Commission',
|
|
label: '销售提成',
|
|
index: 'SalesCommission.Commission',
|
|
sortIndex: i++,
|
|
width: 90,
|
|
align: 'center',
|
|
sortable: false,
|
|
formatter: CommissionFormatter
|
|
}
|
|
];
|
|
if (page.ViewTagPermission) {
|
|
col.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 tradeHelper.getAmountToNotional(col);
|
|
}
|
|
};
|
|
|
|
var colModelGrid = getColModelGrid();
|
|
|
|
function ShowStructFormater(cellValue, options, rowObject) {
|
|
return cellValue || '';
|
|
}
|
|
|
|
function DoubleFormat(cellValue, options, rowObject) {
|
|
return !cellValue ? "0.00" : cellValue.toFixed(2);
|
|
}
|
|
|
|
function Format6(cellValue, options, rowObject) {
|
|
return cellValue ? cellValue.toFixed(6) : "0.000000";
|
|
}
|
|
|
|
function YesOrNoFormat(cellValue, options, rowObject) {
|
|
return cellValue ? "是" : "否";
|
|
}
|
|
|
|
function PercentFormat(cellValue, options, rowObject) {
|
|
if (cellValue) {
|
|
var num = new Number(cellValue) * 100;
|
|
return num.toFixed(2) + "%";
|
|
} else {
|
|
return "0.00%";
|
|
}
|
|
}
|
|
function SwapTimeAndRateFormat(cellValue, options, rowObject) {
|
|
if (cellValue != null && cellValue.indexOf(";") > 0) {
|
|
var spCellValue = cellValue.split(";")[1];
|
|
if (spCellValue != null && spCellValue.indexOf(",") > 0) {
|
|
return PercentFormat(spCellValue.split(",")[0]);
|
|
} else {
|
|
return PercentFormat(spCellValue);
|
|
}
|
|
}
|
|
return PercentFormat(cellValue);
|
|
}
|
|
|
|
function SwapTimeAndRateFormat2(cellValue, options, rowObject) {
|
|
if (cellValue != null && cellValue.indexOf(";") > 0) {
|
|
var spCellValue = cellValue.split(";")[1];
|
|
if (rowObject.trade_swap.IsGetFloatingProfit) {
|
|
if (spCellValue != null && spCellValue.indexOf(",") > 0) {
|
|
return PercentFormat(-spCellValue.split(",")[0]);
|
|
} else {
|
|
return PercentFormat(-spCellValue);
|
|
}
|
|
} else {
|
|
if (spCellValue != null && spCellValue.indexOf(",") > 0) {
|
|
return PercentFormat(spCellValue.split(",")[0]);
|
|
} else {
|
|
return PercentFormat(spCellValue);
|
|
}
|
|
}
|
|
}
|
|
return PercentFormat(cellValue);
|
|
}
|
|
|
|
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 expandFormat(cellValue, options, rowObject) {
|
|
var hasExpandIcon = rowObject.IsGroup == 1;
|
|
if (hasExpandIcon) {
|
|
return `<a class="yl-grid-plus" href="#" ondblclick="event.stopPropagation()" onclick="toggleExpand('${options.rowId}')"><i class="fa fa-plus"></i></a>`;
|
|
}
|
|
return "";
|
|
}
|
|
|
|
function exportUnwindSwapTrade() {
|
|
var url = "/swaptrade/UnwindSwapTradeExport";
|
|
downLoadFile(url);
|
|
}
|
|
|
|
function downLoadFile(downloadUrlStr) {
|
|
window.open(downloadUrlStr);
|
|
}
|
|
|
|
function gridComplete() {
|
|
var jgrid = $(this);
|
|
|
|
var rowIds = jgrid.jqGrid('getDataIDs');
|
|
for (var i = 0; i < rowIds.length; i++) {
|
|
var rowId = rowIds[i];
|
|
var rowdata = jgrid.getRowData(rowId);
|
|
if (rowdata.ExerciseDate == page.systemDate && (rowdata.TradeStatus != "已平仓" && rowdata.TradeStatus != "已到期")) {
|
|
$('#' + rowIds[i]).addClass("ExerciseDateBg");
|
|
}
|
|
else if (rowdata['trade_swap.GetSwapTimeAndRate'].indexOf(page.systemDate) > -1 || rowdata['trade_swap.PaySwapTimeAndRate'].indexOf(page.systemDate) > -1) {
|
|
$('#' + rowIds[i]).addClass("SwapDateBg");
|
|
}
|
|
if (rowdata.TradeStatus == "已平仓" && rowdata.UnwindDate == page.systemDate) {
|
|
$('#' + rowIds[i]).addClass("UnwindTradeBg");
|
|
}
|
|
}
|
|
|
|
$(".selftooltip").tooltip({ html: true, show: 50000, trigger: "hover" });
|
|
main.setcolumnChooser(jgrid, page.configcolumn_data_hhjyss);
|
|
|
|
var newHeight = $(window).height() - 250;
|
|
$(".ui-jqgrid .ui-jqgrid-bdiv").css("cssText", "height: " + newHeight + "px!important;");
|
|
|
|
selAllGrid();
|
|
$('.ui-jqgrid-bdiv', '#gbox_listGrid').floatingScroll();
|
|
}
|
|
|
|
function customButton(cellValue, options, rowObject) {
|
|
var imageHtml = "<input type=\"button\" value=\"删除\" class=\"btn-warning\" onclick=\"deletetrade('" +
|
|
rowObject.EncryptId +
|
|
"');\" />";
|
|
return imageHtml;
|
|
}
|
|
|
|
function deletetrade(encryptId) {
|
|
if (confirm("确定删除吗?")) {
|
|
$.ajax({
|
|
type: "Post",
|
|
url: "/forwardTrade/InValidTrade",
|
|
data: { id: encryptId, d: new Date() },
|
|
success: function (data) {
|
|
showmiddlemessage(data.obj);
|
|
if (data.success) {
|
|
$('#listGrid').trigger('reloadGrid');
|
|
}
|
|
},
|
|
error: function (msg) {
|
|
alert("error:" + msg);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
function rowdblclick(rowid) {
|
|
var rowData = $(this).getRowData(rowid);
|
|
if (rowData.EncryptId) {
|
|
starttradeView(rowData.EncryptId);
|
|
}
|
|
}
|
|
|
|
function toggleExpand(rowid) {
|
|
event.stopPropagation();
|
|
$(event.target).toggleClass('fa-minus');
|
|
if ($(event.target).hasClass('fa-minus')) {
|
|
main.post("/swaptrade/SearchGroupChildrenList", { id: rowid }).done(function (res) {
|
|
for (var i = 0; i < res.length; i++) {
|
|
jQuery('#listGrid').jqGrid('addRowData', res[i].id, res[i], 'after', rowid);
|
|
$('#' + res[i].id).find("td").addClass("ChildrenBG");
|
|
}
|
|
});
|
|
}
|
|
else {
|
|
main.post("/trade/SearchGroupChildrenList", { id: rowid }).done(function (res) {
|
|
for (var i = 0; i < res.length; i++) {
|
|
jQuery('#listGrid').jqGrid('delRowData', res[i].id);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
function startAddtrade() {
|
|
layer.open({
|
|
type: 2,
|
|
title: "新增互换交易",
|
|
shadeClose: false,
|
|
shade: 0.4,
|
|
area: ['1380px', '800px'],
|
|
content: "/swapTrade/TradeEdit/0"
|
|
});
|
|
}
|
|
|
|
function starttradeView(id) {
|
|
var srcurl = "/trade/TradeView/?enid=" + id + "&checkBtn=1";
|
|
main.open("查看交易", srcurl);
|
|
}
|
|
|
|
function reloadtrade() {
|
|
//重新加载
|
|
SearchClick();
|
|
}
|
|
|
|
function confirmAllSelect() {
|
|
var selectedIds = jQuery('#listGrid').jqGrid('getGridParam', 'selarrrow');
|
|
if (selectedIds.length < 1) {
|
|
main.message("请选择需确认的交易");
|
|
return;
|
|
}
|
|
var confirmFunc = function (additionalProcessing) {
|
|
var ggrid = jQuery('#listGrid');
|
|
var rowIds = ggrid.jqGrid('getGridParam', 'selarrrow');
|
|
var ors = [];
|
|
for (var i = 0; i < rowIds.length; i++) {
|
|
var or = ggrid.getRowData(rowIds[i]).id;
|
|
ors.push(or);
|
|
}
|
|
var pData = { tradeids: ors.join(",") };
|
|
// R4:不再硬编码 IsSkipCheck=true 静默跳过资金校验——普通确认走校验,
|
|
// 资金不足时由 LackOfMoney 弹窗走显式特批(additionalProcessing)链路
|
|
if (!main.isEmpty(additionalProcessing)) {
|
|
pData.additionalProcessing = additionalProcessing;
|
|
}
|
|
|
|
main.post("/trade/tradeConfirm", pData).done(function (data) {
|
|
//错误是打印错误提示
|
|
if (!data.success) {
|
|
main.message(data.msg);
|
|
return;
|
|
}
|
|
SearchClick(true);
|
|
});
|
|
};
|
|
|
|
///批量结算
|
|
main.confirm("确认所有选中交易?", confirmFunc);
|
|
}
|
|
|
|
function uploadTrade() {
|
|
main.open("导入互换流水", "/swapTrade/tradeUpload", { area: ['800px', '600px'] });
|
|
}
|
|
|
|
function uploadTradeFlowGroup() {
|
|
main.open("导入互换流水", "/swapTrade/tradeFlowGroupUpload", { area: ['800px', '600px'] });
|
|
}
|
|
|
|
function SearchClick(isSearchclick) {
|
|
var listGrid = $('#listGrid');
|
|
|
|
listGrid.appendPostData({ TradeNumber: $("#TradeNumber").val() });
|
|
listGrid.appendPostData({ ContractCode: $("#ContractCode").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({ StartDateStart: $("#DateFromStartDate").val() });
|
|
listGrid.appendPostData({ StartDateEnd: $("#DateToStartDate").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({ SettlementDateStart: $("#DateFromSettlementDate").val() });
|
|
listGrid.appendPostData({ SettlementDateEnd: $("#DateToSettlementDate").val() });
|
|
|
|
listGrid.appendPostData({ ValueDate: $("#DateValueDate").val() });
|
|
|
|
listGrid.appendPostData({ SettlementFlags: $("#SettlementFlag").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 openTradeConfirmList() {
|
|
window.open("tradeConfirmList", "_blank");
|
|
}
|
|
|
|
function openTradeFlowList() {
|
|
if (page.company == "国泰君安") {
|
|
window.open("TradeFlowListMore", "_blank");
|
|
} else {
|
|
window.open("TradeFlowList", "_blank");
|
|
}
|
|
}
|
|
|
|
function downloadFlowInfo() {
|
|
exportSubmit('/SwapTrade/ExportTradeFlowInfo');
|
|
}
|
|
function downloadOpenInfo() {
|
|
exportSubmit('/SwapTrade/ExportTradeOpenInfo');
|
|
}
|
|
function exportSubmit(url) {
|
|
var $form = $('#exportForm').html('');
|
|
$form.attr("action", url)
|
|
$form.submit();
|
|
}
|
|
|
|
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;
|
|
}
|
|
|
|
Array.prototype.contains = function (obj) {
|
|
if (this.length === 0) {
|
|
return false;
|
|
}
|
|
for (var i = 0; i < this.length; i++) {
|
|
if (this[i] === obj) {
|
|
return true;
|
|
}
|
|
}
|
|
return false;
|
|
}
|
|
|
|
function removeconfigcolumn() {
|
|
}
|
|
function showcolumnChooser() {
|
|
var jgrid = jQuery('#listGrid');
|
|
main.showcolumnChooser(jgrid, page.configcolumn_data_hhjyss);
|
|
}
|
|
|
|
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 importTrade(type) {
|
|
main.open("互换交易导入", "/SwapTrade/SwapTradeUpload", { area: ['800px', '600px'] });
|
|
}
|
|
|
|
function uploadTrades() {
|
|
let fileName = $("#uploadfileButton").val();
|
|
if (!fileName) {
|
|
return main.alert("请选择要导入的文件!");
|
|
}
|
|
let index = fileName.lastIndexOf(".");
|
|
let fileEx = index > 0 ? fileName.substr(index).toLowerCase() : '';
|
|
if (fileEx !== '.xlsx') {
|
|
return main.alert("只能上传.xlsx类型的文件!");
|
|
}
|
|
function success(data) {
|
|
if (data.success) {
|
|
_reloadData = 'reloadData';
|
|
main.alert(!data.totalNum ? '导入成功!' : "共 {0} 条数据,导入成功 {1} 条数据!".template(data.totalNum, data.successNum));
|
|
} else {
|
|
main.alert("导入失败:" + data.msg);
|
|
}
|
|
}
|
|
var url = "/swapTrade/UploadSwapTrade";//区分导入,了结导入
|
|
main.confirm("确定导入?", UploadFile.bind(null, { inputId: 'openFile', url: url, success: success }));
|
|
}
|
|
|
|
function UploadFile(options) {
|
|
|
|
if (!options || !options.url || !options.inputId) {
|
|
throw '[UploadFile]参数错误';
|
|
}
|
|
|
|
let file = $("#uploadfile").prop('files');
|
|
if (!file || !file[0]) return;
|
|
file = file[0];
|
|
|
|
var formData = new FormData();
|
|
formData.append("file", file, file.name);
|
|
formData.append("upload_file", true);
|
|
|
|
$.ajax({
|
|
type: "POST",
|
|
url: options.url,
|
|
xhr: function () {
|
|
var myXhr = $.ajaxSettings.xhr();
|
|
if (myXhr.upload) {
|
|
myXhr.upload.addEventListener('progress', options.progressFn, false);
|
|
}
|
|
return myXhr;
|
|
},
|
|
beforeSend() {
|
|
main.waitMe("show");
|
|
},
|
|
success: options.success,
|
|
error(error) {
|
|
main.alert("导入失败:" + error.statusText);
|
|
},
|
|
complete(result) {
|
|
main.waitMe("hide");
|
|
},
|
|
async: true,
|
|
data: formData,
|
|
cache: false,
|
|
contentType: false,
|
|
processData: false,
|
|
timeout: 60000
|
|
});
|
|
}
|
|
|
|
function downTemplate() {
|
|
if (page.company == "山西") {
|
|
window.open("../App_Docs/导入模板/互换交易数据导入模板.xlsx");
|
|
}
|
|
}
|
|
|
|
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");//关闭取消分组弹层
|
|
}
|
|
});
|
|
$(".three-wrap-gtja #AssetId").prev().addClass("Bookkeeping-account");
|
|
$(".three-wrap-gtja #TraderName").prev().addClass("Trader-account");
|
|
$(".morebtn").click(function (e) {
|
|
$(".hidediv").toggle();
|
|
});
|
|
|
|
|
|
function exportTradeChoose() {
|
|
layer.open({
|
|
type: 1,
|
|
title: "导出交易",
|
|
shadeClose: false,
|
|
shade: 0.4,
|
|
area: ['300px', '240px'],
|
|
content: $('#exportTpl').html()
|
|
});
|
|
}
|
|
|
|
function exportTrade() {
|
|
var dateTemp = new Date().Format("yyyyMMddhhmmss");
|
|
var fileName = "互换交易导出" + dateTemp;
|
|
var toExcelArray = [];
|
|
if (page.ViewTagPermission) {
|
|
toExcelArray.push({
|
|
colName: "标签值",
|
|
formatter: function (cellValue, options, rowObject) {
|
|
return rowObject.OutputTags;
|
|
}
|
|
});
|
|
}
|
|
main.toExcel("listGrid", fileName, "xls", null, "", toExcelArray);
|
|
}
|
|
|
|
|
|
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; |