365 lines
11 KiB
JavaScript
365 lines
11 KiB
JavaScript
var g_grid = {};
|
|
var query_data = {};
|
|
|
|
$(function () {
|
|
var PostData = {};
|
|
PostData.RateMode = tabIndex;
|
|
PostData.ClientIds = null;
|
|
if ($("#ClientId").val() && $("#ClientId").val().length > 0) {
|
|
PostData.ClientIds = $("#ClientId").val().join(",");
|
|
}
|
|
$(".datepicker").datepicker({
|
|
changeMonth: true,
|
|
changeYear: true,
|
|
showButtonPanel: true,
|
|
showOtherMonths: true,
|
|
selectOtherMonths: true
|
|
});
|
|
grid = jQuery('#listGrid').jqGrid({
|
|
cmTemplate: {
|
|
width: 80,
|
|
align: 'center',
|
|
sortable: false
|
|
},
|
|
url: '/SwapFloatRate/GetSwapFloatRateList',
|
|
datatype: 'json',
|
|
multiselect: false,
|
|
height: 'auto',
|
|
width: '95%',
|
|
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: false,
|
|
loadComplete: gridComplete,
|
|
onPaging: onJqgridPaging,
|
|
});
|
|
query_data = grid.jqGrid('getPostData');
|
|
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 underlyingCtrl = window.tradeHelper.UnderlyingSelectCtrl('#UnderlyingId', { UseCodeAsId: true});
|
|
//let underlyingCtrl = new tradeHelper.UnderlyingSelectCtrl('#UnderlyingId').setFlag(tradeHelper.UnderlyingSelectFlag.OtcTrade).setOptions({ UseCodeAsId: true });
|
|
|
|
});
|
|
|
|
var hideObj = { clientWidth: 160 };
|
|
|
|
var i = 0;
|
|
var getColModelGrid = function () {
|
|
var col = [
|
|
{
|
|
name: 'id',
|
|
hidden: true,
|
|
optionHide: true
|
|
}, {
|
|
name: 'EncryptId',
|
|
hidden: true,
|
|
optionHide: true
|
|
}, {
|
|
name: '',
|
|
label: '操作',
|
|
align: 'center',
|
|
width: 140,
|
|
formatter: showToolName
|
|
}, {
|
|
name: 'UnderlyingCode',
|
|
label: '债券代码',
|
|
width: 160,
|
|
sortable: true,
|
|
align: 'center',
|
|
formatter: function (cellValue, options, rowObject) {
|
|
if (cellValue) {
|
|
if (cellValue.length > 0) {
|
|
return cellValue;
|
|
} else {
|
|
return "--";
|
|
}
|
|
} else {
|
|
return "--";
|
|
}
|
|
}
|
|
}
|
|
, {
|
|
name: 'StartDate',
|
|
label: '生效起始日',
|
|
width: 160,
|
|
sortable: true,
|
|
formatter: 'date',
|
|
align: 'center'
|
|
}, {
|
|
name: 'EndDate',
|
|
label: '生效终止日',
|
|
width: 160,
|
|
sortable: true,
|
|
formatter: 'date',
|
|
align: 'center'
|
|
}, {
|
|
name: 'BaseUnderlyingCode',
|
|
label: '基准利率',
|
|
width: 160,
|
|
sortable: true,
|
|
align: 'center',
|
|
formatter: function (cellValue, options, rowObject) {
|
|
if (cellValue) {
|
|
if (cellValue.length > 0) {
|
|
return cellValue;
|
|
} else {
|
|
return "--";
|
|
}
|
|
} else {
|
|
return "--";
|
|
}
|
|
}
|
|
}, {
|
|
name: 'is_annualized',
|
|
label: '是否年化',
|
|
width: 80,
|
|
sortable: true,
|
|
align: 'center',
|
|
formatter: function (cellValue, options, rowObject) {
|
|
if (cellValue != null) {
|
|
return cellValue ? '是' : '否';
|
|
} else {
|
|
return "--";
|
|
}
|
|
}
|
|
}, {
|
|
name: 'interest_type_str',
|
|
label: '计息方式',
|
|
width: 80,
|
|
sortable: false,
|
|
align: 'center',
|
|
}, {
|
|
name: 'interest_rest_days',
|
|
label: '重置频率(天)',
|
|
width: 80,
|
|
sortable: false,
|
|
align: 'center',
|
|
}, {
|
|
name: 'interest_rule_str',
|
|
label: '利率准则',
|
|
width: 100,
|
|
sortable: false,
|
|
align: 'center',
|
|
}, {
|
|
name: 'LongPricePoint',
|
|
label: '利差(多头加点)',
|
|
width: 160,
|
|
align: 'center',
|
|
formatter: function (cellValue, options, rowObject) {
|
|
if (rowObject.LongPricePoint) {
|
|
return otcformat.trading.umprice(rowObject.LongPricePoint);
|
|
} else {
|
|
if (rowObject.LongPricePoint === 0) {
|
|
return otcformat.trading.umprice(0);
|
|
}
|
|
else {
|
|
return "";
|
|
}
|
|
}
|
|
}
|
|
}, {
|
|
name: 'ShortPricePoint',
|
|
label: '利差(空头减点)',
|
|
width: 160,
|
|
align: 'center',
|
|
formatter: function (cellValue, options, rowObject) {
|
|
if (rowObject.ShortPricePoint) {
|
|
return otcformat.trading.umprice(rowObject.ShortPricePoint);
|
|
} else {
|
|
if (rowObject.ShortPricePoint === 0) {
|
|
return otcformat.trading.umprice(0);
|
|
}
|
|
else {
|
|
return "";
|
|
}
|
|
}
|
|
}
|
|
}, {
|
|
name: 'opt_name',
|
|
label: '操作人',
|
|
width: 90,
|
|
align: 'center'
|
|
}, {
|
|
name: 'opt_time',
|
|
label: '操作时间',
|
|
width: 160,
|
|
align: 'center',
|
|
sortable: true,
|
|
formatter: 'datetime'
|
|
}]
|
|
if (tabIndex == 1) {
|
|
col.splice(3, 0, {
|
|
name: 'ClientName',
|
|
label: '客户名称',
|
|
width: 160,
|
|
sortable: false,
|
|
align: 'center'
|
|
});
|
|
}
|
|
return col;
|
|
};
|
|
|
|
var colModelGrid = getColModelGrid();
|
|
|
|
function gridComplete() {
|
|
//$('.ui-jqgrid-bdiv', '#gbox_listGrid').floatingScroll();
|
|
}
|
|
|
|
function rowdblclick(rowid) {
|
|
var rowData = $(this).getRowData(rowid);
|
|
if (rowData.EncryptId) {
|
|
startView(rowData.EncryptId);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
function addNew() {
|
|
main.open("新增浮动利率配置", "/SwapFloatRate/Edit?rateMode="+tabIndex, { area: ['500px', '600px'] });
|
|
}
|
|
|
|
function startView(id) {
|
|
var srcurl = "/SwapFloatRate/Detail/?enid=" + id;
|
|
main.open("查看浮动利率配置", srcurl, { area: ['500px', '600px'] });
|
|
}
|
|
|
|
function reloadRate() {
|
|
//重新加载
|
|
SearchClick();
|
|
}
|
|
|
|
function showToolName(cellValue, options, rowObject) {
|
|
var html;
|
|
if (page.canEdit) {
|
|
html =
|
|
"<input type=\"button\" class=\"wentiEdit\" title='修改' onclick=\"editRate('{0}')\" value=\"修改\" />"
|
|
.template(rowObject.EncryptId);
|
|
} else {
|
|
html =
|
|
"<input type=\"button\" class=\"wentiEdit\" title='修改' disabled='disabled' value=\"修改\" />"
|
|
.template(rowObject.EncryptId);
|
|
}
|
|
if (page.canDelete) {
|
|
html = html + "<input type=\"button\" class=\"wentiEdit\" title='删除' onclick=\"deleteRate('{0}',1)\" value=\"删除\" />"
|
|
.template(rowObject.EncryptId);
|
|
} else {
|
|
html = html + "<input type=\"button\" class=\"wentiEdit\" title='删除' disabled='disabled' value=\"删除\" />"
|
|
.template(rowObject.EncryptId);
|
|
}
|
|
|
|
return html;
|
|
}
|
|
function editRate(enid) {
|
|
main.open("编辑浮动利率配置", "/SwapFloatRate/Edit?enid=" + enid, { area: ['500px', '650px'] });
|
|
}
|
|
function deleteRate(enid) {
|
|
main.confirm("确定要删除吗?", function () {
|
|
main.post("/SwapFloatRate/DeleteSwapFloatRate?enid=" + enid).done(function (resp) {
|
|
reloadRate();
|
|
layer.closeMe();
|
|
})
|
|
});
|
|
}
|
|
function showImport() {
|
|
layer.open({
|
|
type: 1,
|
|
area: ['60%', '60%'],
|
|
fixed: false, //不固定
|
|
maxmin: true,
|
|
content: $("#importRate"),
|
|
end: function () {
|
|
SearchClick();
|
|
}
|
|
});
|
|
}
|
|
function SearchClick(isSearchclick) {
|
|
var listGrid = $('#listGrid');
|
|
var clientIds = null;
|
|
var underlyingCodes = null;
|
|
if ($("#ClientId").val() && $("#ClientId").val().length>0) {
|
|
clientIds = $("#ClientId").val();
|
|
}
|
|
if ($("#UnderlyingId").val() && $("#UnderlyingId").val().length > 0) {
|
|
underlyingCodes = $("#UnderlyingId").val().join(",");
|
|
}
|
|
listGrid.appendPostData({ ClientIds: clientIds });
|
|
listGrid.appendPostData({ UnderlyingCodes: underlyingCodes });
|
|
listGrid.appendPostData({ StartDate: $("#DateFromEffectDate").val() });
|
|
listGrid.appendPostData({ EndDate: $("#DateToEffectDate").val() });
|
|
listGrid.appendPostData({ RateMode: tabIndex });
|
|
query_data = listGrid.jqGrid('getPostData');
|
|
if (typeof isSearchclick !== "undefined" && isSearchclick) {
|
|
//点击搜索时默认第一页
|
|
listGrid.jqGrid('setGridParam',
|
|
{
|
|
page: 1
|
|
});
|
|
}
|
|
|
|
listGrid.trigger('reloadGrid');
|
|
}
|
|
function importRate() {
|
|
let fileName = $("#openFile").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) {
|
|
main.alert(!data.totalNum ? '导入成功!' : "共 {0} 条数据,导入成功 {1} 条数据!".template(data.totalNum, data.successNum));
|
|
} else {
|
|
main.alert("导入失败:" + data.msg);
|
|
}
|
|
}
|
|
var url = "/SwapFloatRate/ImportSwapFloatRate";
|
|
main.confirm("确定导入?", UploadFile.bind(null, { inputId: 'openFile', url: url, success: success }));
|
|
}
|
|
|
|
|
|
function exportRate() {
|
|
var $form = $('#exportForm').html('');
|
|
$form.attr("action", '/SwapFloatRate/ExportSwapFloatRate')
|
|
_.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();
|
|
}
|
|
|
|
function onSelectUnderlying(data) {
|
|
console.log(data);
|
|
}
|
|
|
|
window.reloadData = reloadRate; |