$(function () { main.setTradeDatePicker(pageObj.valueDate, ""); $("#DateValueDate").datepicker({ changeMonth: true, changeYear: true, showButtonPanel: true, showOtherMonths: true, selectOtherMonths: true, onSelect: function (se) { } }); $("#DateValueDate").val(pageObj.valueDate); }); var i = 0; var colModelGrid = [ { name: 'ValueDate', label: '持仓日期', index: 'ValueDate', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: 'date' }, { name: 'GroupCode', label: '集团机构代码', index: 'GroupCode', width: 120, sortIndex: i++, align: 'left', sortable: false }, { name: 'OrgName', label: '部门名称', index: 'OrgName', width: 90, sortIndex: i++, align: 'left', sortable: false }, { name: 'AssetCode', label: '资产代码', index: 'AssetCode', width: 90, sortIndex: i++, align: 'left', sortable: false }, { name: 'PrtflCode', label: '投组代码', index: 'PrtflCode', width: 90, sortIndex: i++, align: 'left', sortable: false }, { name: 'CmbCode', label: '组合代码', index: 'CmbCode', width: 90, sortIndex: i++, align: 'left', sortable: false }, { name: 'OptPrftTypeCd', label: '期权收益类型代码', index: 'OptPrftTypeCd', width: 120, sortIndex: i++, align: 'left', sortable: false }, { name: 'CallPutCd', label: '看涨看跌代码', index: 'CallPutCd', width: 120, sortIndex: i++, align: 'left', sortable: false }, { name: 'OtcDeriType', label: '场外衍生品类型', index: 'OtcDeriType', width: 120, sortIndex: i++, align: 'left', sortable: false }, { name: 'OptStructName', label: '结构类型', index: 'OptStructName', width: 120, sortIndex: i++, align: 'left', sortable: false }, { name: 'CfrmAchvNo', label: '交易确认书编号', index: 'CfrmAchvNo', width: 160, sortIndex: i++, align: 'left', sortable: false }, { name: 'Cutp', label: '对手方', index: 'Cutp', width: 200, sortIndex: i++, align: 'left', sortable: false }, { name: 'RelpFlag', label: '关联方标志', index: 'RelpFlag', width: 100, sortIndex: i++, align: 'left', sortable: false }, { name: 'RgtDutyCd', label: '权利义务代码', index: 'RgtDutyCd', width: 120, sortIndex: i++, align: 'left', sortable: false }, { name: 'BgnDt', label: '开始日期', index: 'BgnDt', width: 90, sortIndex: i++, align: 'left', sortable: false }, { name: 'ExprDt', label: '到期日期', index: 'ExprDt', width: 90, sortIndex: i++, align: 'left', sortable: false }, { name: 'TgtCd', label: '标的代码', index: 'TgtCd', width: 160, sortIndex: i++, align: 'left', sortable: false }, { name: 'TgtName', label: '标的名称', index: 'TgtName', width: 160, sortIndex: i++, align: 'left', sortable: false }, { name: 'TgtExchCd', label: '标的交易所代码', index: 'TgtExchCd', width: 160, sortIndex: i++, align: 'left', sortable: false }, { name: 'TgtAstTypeCd', label: '标的资产类型代码', index: 'TgtAstTypeCd', width: 200, sortIndex: i++, align: 'left', sortable: false }, { name: 'ValidHedgFlag', label: '有效对冲标志', index: 'ValidHedgFlag', width: 160, align: 'left', sortable: false }, { name: 'HedgTypeCd', label: '对冲类型代码', index: 'HedgTypeCd', width: 160, sortIndex: i++, align: 'left', sortable: false }, { name: 'CtrNomnVal', label: '合约名义本金', index: 'CtrNomnVal', width: 160, align: 'left', sortable: false, formatter: StockEqvNotional }, { name: 'RealNomnVal', label: '真实名义本金', index: 'RealNomnVal', width: 160, align: 'left', sortable: false, formatter: StockEqvNotional }, { name: 'InsmScal', label: '投资规模', index: 'InsmScal', width: 120, sortIndex: i++, align: 'left', sortable: false, formatter: fixed2 }, { name: 'PrtcRate', label: '参与率', index: 'PrtcRate', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: fixed4 }, { name: 'TgtBpPrc', label: '标的期初价格', index: 'TgtBpPrc', width: 120, sortIndex: i++, align: 'left', sortable: false, formatter: Umprice }, { name: 'Share', label: '份数', index: 'Share', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: Notional }, { name: 'PremFix', label: '权利金', index: 'PremFix', width: 120, sortIndex: i++, align: 'left', sortable: false, formatter: TradePrice }, { name: 'ExerMod', label: '行权方式', index: 'ExerMod', width: 90, sortIndex: i++, align: 'left', sortable: false }, { name: 'BpObsvDay', label: '期初观察日', index: 'BpObsvDay', width: 120, sortIndex: i++, align: 'left', sortable: false }, { name: 'EpObsvDay', label: '期末观察日', index: 'EpObsvDay', width: 120, sortIndex: i++, align: 'left', sortable: false }, { name: 'ObsvFreq', label: '观察频率', index: 'ObsvFreq', width: 90, sortIndex: i++, align: 'left', sortable: false }, { name: 'ExecPricRati2', label: '执行价格比例1', index: 'ExecPricRati2', width: 160, sortIndex: i++, align: 'left', sortable: false, formatter: UmpricePR }, { name: 'ExecPricRati1', label: '执行价格比例2', index: 'ExecPricRati1', width: 160, sortIndex: i++, align: 'left', sortable: false, formatter: UmpricePR }, { name: 'ExecPric2', label: '执行价格1', index: 'ExecPric2', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: Umprice }, { name: 'ExecPric1', label: '执行价格2', index: 'ExecPric1', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: Umprice }, { name: 'ExecPric3', label: '执行价格3', index: 'ExecPric3', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: Umprice }, { name: 'ExecPric4', label: '执行价格4', index: 'ExecPric4', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: Umprice }, { name: 'BarriPricRati2', label: '低障碍价格比例', index: 'BarriPricRati2', width: 160, sortIndex: i++, align: 'left', sortable: false, formatter: UmpricePR }, { name: 'BarriPricRati1', label: '高障碍价格比例', index: 'BarriPricRati1', width: 160, sortIndex: i++, align: 'left', sortable: false, formatter: UmpricePR }, { name: 'BarriPric2', label: '障碍价格1', index: 'BarriPric2', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: Umprice }, { name: 'BarriPric1', label: '障碍价格2', index: 'BarriPric1', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: Umprice }, { name: 'HighrThanExecPrcPrftRate', label: '高于执行价格收益率', index: 'HighrThanExecPrcPrftRate', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: fixed4 }, { name: 'LowrThanExecPrcPrftRate', label: '低于执行价格收益率', index: 'LowrThanExecPrcPrftRate', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: fixed4 }, { name: 'KnockInPrftRate', label: '敲入收益率', index: 'KnockInPrftRate', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: fixed4 }, { name: 'KnockOutPrftRate', label: '敲出收益率', index: 'KnockOutPrftRate', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: fixed4 }, { name: 'RangePrft', label: '区间收益', index: 'RangePrft', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: fixed4 }, { name: 'CrrcCd', label: '货币代码', index: 'CrrcCd', width: 90, sortIndex: i++, align: 'left', sortable: false }, { name: 'MaktVal', label: '市值', index: 'MaktVal', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: TradePrice }, { name: 'Delta', label: 'Delta', index: 'Delta', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: greek }, { name: 'Vega', label: 'Vega', index: 'Vega', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: greek }, { name: 'Gamma', label: 'Gamma', index: 'Gamma', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: greek }, { name: 'RiskFreeRate', label: '无风险利率', index: 'RiskFreeRate', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: fixed4 }, { name: 'DividRate', label: '连续股息率', index: 'DividRate', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: fixed4 }, { name: 'Volat', label: '波动率', index: 'Volat', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: Volatility }, { name: 'CurCrdtRiskExps', label: '当前信用风险敞口', index: 'CurCrdtRiskExps', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: greek }, { name: 'PotntCrdtRiskExps', label: '潜在信用风险敞口', index: 'PotntCrdtRiskExps', width: 90, sortIndex: i++, align: 'left', sortable: false, formatter: greek }, { name: 'RptDt', label: '填报日期', index: 'RptDt', width: 90, sortIndex: i++, align: 'left', sortable: false }, { name: 'RptPsn', label: '填报人', index: 'RptPsn', width: 90, sortIndex: i++, align: 'left', sortable: false } ]; function gridComplete(req) { if (req.msg) { main.alert(req.msg) } else { $("#listGrid").footerData("set", { ValueDate: "合计", CtrNomnVal: req.Sum.SumCtrNomnVal, RealNomnVal: req.Sum.SumRealNomnVal, InsmScal: req.Sum.SumInsmScal, PrtcRate: req.Sum.SumPrtcRate, MaktVal: req.Sum.SumMaktVal }); } $(".selftooltip").tooltip({ html: true, show: 50000, trigger: "hover" }); main.setcolumnChooser(jQuery('#listGrid'), pageObj.columnConfigName); } function greek(cellValue, options, rowObject) { if (cellValue) { return otcformat.trading.greek(cellValue); } else { return ""; } } function Volatility(cellValue, options, rowObject) { if (cellValue) { return otcformat.trading.Volatility(cellValue); } else { return ""; } } function TradePrice(cellValue, options, rowObject) { if (cellValue) { return otcformat.trading.TradePrice(cellValue); } else { return ""; } } function fixed4(cellValue, options, rowObject) { if (cellValue) { return otcformat.fixed4(cellValue); } else { return ""; } } function fixed2(cellValue, options, rowObject) { if (cellValue) { return otcformat.fixed2(cellValue); } else { return ""; } } function Umprice(cellValue, options, rowObject) { if (cellValue) { return otcformat.trading.Umprice(cellValue); } else { return ""; } } function UmpricePR(cellValue, options, rowObject) { if (cellValue) { return otcformat.trading.UmpricePR(cellValue); } else { return ""; } } function Notional(cellValue, options, rowObject) { if (cellValue) { return otcformat.trading.Notional(cellValue); } else { return ""; } } function StockEqvNotional(cellValue, options, rowObject) { if (cellValue) { return otcformat.trading.StockEqvNotional(cellValue); } else { return ""; } } function reloadSuperviseTodayReport() { //重新加载 SearchClick(); } function SearchClick(isSearchclick) { var listGrid = $('#listGrid'); listGrid.appendPostData({ ValueDate: $("#DateValueDate").val(), DataSource: $("#DataSource").val() }); if (typeof (isSearchclick) != "undefined" && isSearchclick) { //点击搜索时默认第一页 listGrid.jqGrid('setGridParam', { page: 1 }); } listGrid.trigger('reloadGrid'); } function exportToFile() { if ($("#DateValueDate").val() == null || $("#DateValueDate").val() == "" || $("#DateValueDate").val() == undefined) { alert("请选择结算日期!"); return; } var option = { url: "/supervise_report/SendSupervise_OtcOption", type: "POST", data: { ValueDate: $("#DateValueDate").val(), DataSource: $("#DataSource").val() }, dataType: "json", //格式是html success: function (res) { if (res.success) { window.open(res.obj); } else { main.alert(res.obj); } }, error: function (msg) { main.alert("后台运行错误:" + msg.msg); } }; main.ajax(option); } function importToSystem() { var htmlContent = `
文件:
`; main.open2("期权数据导入", htmlContent, { area: ["400px", "130px"], zIndex: 1000 }); } function uploadChange() { $('#uploadfileButton').val($('#uploadfile').val()); } function upload() { if (!$("#uploadfile").get(0).value.length) { main.alert("请选择要上传的文件!"); return; } var fd = new FormData(); /*上传的文件file*/ fd.append("file", $("#uploadfile").get(0).files[0]); $.ajax({ url: "/supervise_report/ImportSupervise_OtcOption", type: "POST", processData: false, contentType: false, data: fd, success: function (res) { if (!res.success) { main.alert(res.msg); } else { $("#uploadfile").val(""); $("#uploadfileButton").val(""); layer.closeAll(); main.message(res.msg); } }, beforeSend(jqXHR) { main.waitMe(true); }, complete(jqXHR, textStatus) { main.waitMe(false); } }); }