Files
zszq-trs/YLErpWeb/wwwroot/Scripts/app/swapRate/swapFloatRateList.js
T
2025-04-23 10:31:04 +08:00

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;