273 lines
9.2 KiB
JavaScript
273 lines
9.2 KiB
JavaScript
function setGridWidth($grid) {
|
|
let $p = $grid.closest('.ui-jqgrid').parent() || $(".page-content");
|
|
let width = $p.width();
|
|
if ($p.is(".page-content")) {
|
|
width -= 28;
|
|
}
|
|
$grid.jqGrid('setGridWidth', width);
|
|
}
|
|
var _jqgridMgr;
|
|
|
|
//修改结构信息
|
|
function startstructureinfoEdit(encryptId, range) {
|
|
var windowName = "结构信息";
|
|
if ($("#hidSummaryType").val() === "EXTEND_INFO") {
|
|
windowName = "模板信息";
|
|
}
|
|
var editurl = "/StructureInfo/StructureInfoEdit?enid=" + encryptId + "&range=" + range;
|
|
main.infopage(windowName, editurl, { area: ['650px', '420px'] });
|
|
}
|
|
|
|
//删除结构信息
|
|
function deletetructureinfo(encryptId) {
|
|
var url = "/StructureInfo/DeleteStructureInfo2";
|
|
main.confirmPost("确定删除吗?", url, { enid: encryptId }).done(function (resp) {
|
|
try {
|
|
window.reloadcredit();
|
|
} catch (e) {
|
|
}
|
|
});
|
|
}
|
|
|
|
//新增修改字段信息
|
|
function startstructuredetailEdit(encryptId, structureId) {
|
|
var editurl = "/StructureInfo/StructureDetailEdit?enid=" + encryptId + "&structureId=" + structureId;
|
|
var title = '修改字段信息';
|
|
if (!encryptId)
|
|
title = '新增字段信息';
|
|
main.infopage(title, editurl, { area: ['650px', '520px'] });
|
|
}
|
|
|
|
//删除字段信息
|
|
function deletetructuredetail(encryptId) {
|
|
var url = "/StructureInfo/DeleteStructureDetail2";
|
|
main.confirmPost("确定删除吗?", url, { enid: encryptId }).done(function (resp) {
|
|
try {
|
|
window.reloadcredit();
|
|
} catch (e) {
|
|
}
|
|
});
|
|
|
|
}
|
|
|
|
//结构信息操作列
|
|
function showToolName(cellValue, options, rowObject) {
|
|
var html = '<input type="button" class="wentiEdit" title="修改" onclick="startstructureinfoEdit(\'' + rowObject.EncryptId + '\',\'' + rowObject.Range + '\')" value="修改" />';
|
|
html += '<input type="button" class="wentiEdit" title="删除" onclick="deletetructureinfo(\'' + rowObject.EncryptId + '\')" value="删除" />';
|
|
html += '<input type="button" class="wentiEdit" title="新增字段信息" onclick="startstructuredetailEdit(0,\'' + rowObject.id + '\')" value="新增字段" />';
|
|
return html;
|
|
}
|
|
|
|
//字段信息操作列
|
|
function showChildToolName(cellValue, options, rowObject) {
|
|
var html = '<input type="button" class="wentiEdit" title="修改" onclick="startstructuredetailEdit(\'' + rowObject.EncryptId + '\',\'' + rowObject.StructureId + '\')" value="修改" />';
|
|
html += '<input type="button" class="wentiEdit" title="删除" onclick="deletetructuredetail(\'' + rowObject.EncryptId + '\')" value="删除" />';
|
|
return html;
|
|
}
|
|
|
|
|
|
function jqgrid_init(range, gridId) {
|
|
var structureName = "结构名";
|
|
if (range === "EXTEND_INFO") {
|
|
structureName = "模板名";
|
|
}
|
|
var colModelGrid = [
|
|
|
|
{
|
|
name: 'id', label: 'id', index: 'id', width: 1, align: 'left', hidden: true
|
|
}, {
|
|
name: 'EncryptId', label: 'EncryptId', index: 'EncryptId', width: 0, align: 'left', hidden: true
|
|
}, {
|
|
name: 'StructureName', label: structureName, index: 'StructureName', width: 220, align: 'center'
|
|
}, {
|
|
name: 'StructureTypeSm', label: '报送结构名', index: 'StructureTypeSm', width: 220, align: 'center', formatter: CustomStructureTypeFormat
|
|
}, {
|
|
name: '', label: '操作', index: '', width: 500, align: 'center', formatter: showToolName, sortable: false
|
|
}];
|
|
|
|
var colChildModelGrid = [
|
|
{
|
|
name: 'id', label: 'id', index: 'id', width: 1, align: 'left', hidden: true
|
|
}, {
|
|
name: 'EncryptId', label: 'EncryptId', index: 'EncryptId', width: 0, align: 'left', hidden: true
|
|
}, {
|
|
name: 'ColumnName', label: '字段名', index: 'ColumnName', width: 120, align: 'center'
|
|
}, {
|
|
name: 'ColumnType', label: '字段类型', index: 'ColumnType', width: 120, align: 'center', formatter: function (cellValue, options, rowObject) {
|
|
var ctStr = '';
|
|
switch (cellValue) {
|
|
case 0: ctStr = "文本"; break;
|
|
case 1: ctStr = "数值"; break;
|
|
case 4: ctStr = "百分数"; break;
|
|
case 2: ctStr = "日期"; break;
|
|
case 3: ctStr = "下拉列表"; break;
|
|
}
|
|
return ctStr;
|
|
}
|
|
}, {
|
|
name: 'ColumnOptions', label: '可选值', index: 'ColumnOptions', width: 120, align: 'center'
|
|
}, {
|
|
name: 'ColumnDefaultValue', label: '默认值', index: 'ColumnDefaultValue', width: 120, align: 'center'
|
|
}, {
|
|
name: 'FieldNameSm', label: '报送字段', index: 'FieldNameSm', width: 120, align: 'center', hidden: range === "EXTEND_INFO"
|
|
}, {
|
|
name: '', label: '操作', index: '', width: 338, align: 'center', formatter: showChildToolName, sortable: false
|
|
}
|
|
]
|
|
|
|
var options = {
|
|
url: '/StructureInfo/QueryStructureInfo2',
|
|
datatype: 'json',
|
|
height: 'auto',
|
|
width: '100%',
|
|
autowidth: false,
|
|
shrinkToFit: false,
|
|
viewrecords: true,
|
|
jsonReader: { repeatitems: false },
|
|
cmTemplate: { align: 'center', width: 120 },
|
|
mtype: 'POST',
|
|
postData: { range: range },
|
|
ondblClickRow(rowid) {
|
|
|
|
},
|
|
colModel: colModelGrid,
|
|
pagerpos: 'left',
|
|
footerrow: false,
|
|
subGrid: true,
|
|
subGridRowExpanded: function (subgrid_id, row_id) {
|
|
var subgrid_table_id, pager_id;
|
|
subgrid_table_id = subgrid_id + "_t";
|
|
pager_id = "p_" + subgrid_table_id;
|
|
$("#" + subgrid_id).html("<table id='" + subgrid_table_id + "' class='scroll'></table><div id='" + pager_id + "' class='scroll'></div>");
|
|
|
|
$("#" + subgrid_table_id).jqGrid({
|
|
url: '/StructureInfo/AjaxGetStructureDetail',
|
|
datatype: "json",
|
|
height: 'auto',
|
|
width: '100%',
|
|
colModel: colChildModelGrid,
|
|
rownumbers: false,
|
|
multiselect: false,
|
|
viewrecords: true,
|
|
mtype: 'POST',
|
|
postData: { id: row_id },
|
|
});
|
|
}
|
|
};
|
|
|
|
let $grid = $('#' + gridId).jqGrid(options);
|
|
|
|
setGridWidth($grid);
|
|
|
|
return $grid;
|
|
}
|
|
|
|
//黑箱交易 结构信息数据加载
|
|
const jqgrid1Mgr = (new function () {
|
|
this.gridId = "listGrid1";
|
|
|
|
var _jqgrid;
|
|
|
|
this.show = function (range) {
|
|
!_jqgrid && (_jqgrid = jqgrid_init(range, this.gridId));
|
|
|
|
|
|
_jqgridMgr = this;
|
|
}
|
|
}());
|
|
|
|
//自定义交易 结构信息数据加载
|
|
const jqgrid2Mgr = (new function () {
|
|
this.gridId = "listGrid2";
|
|
var _jqgrid;
|
|
this.show = function (range) {
|
|
!_jqgrid && (_jqgrid = jqgrid_init(range, this.gridId));
|
|
_jqgridMgr = this;
|
|
}
|
|
|
|
}());
|
|
|
|
//自定义要素 结构信息数据加载
|
|
const jqgrid3Mgr = (new function () {
|
|
this.gridId = "listGrid3";
|
|
var _jqgrid;
|
|
this.show = function (range) {
|
|
!_jqgrid && (_jqgrid = jqgrid_init(range, this.gridId));
|
|
_jqgrid.jqGrid('hideCol', "StructureTypeSm");
|
|
_jqgridMgr = this;
|
|
}
|
|
}());
|
|
|
|
$(function () {
|
|
setSummaryType(pageObj.SummaryType);
|
|
$("#myTab li a").on("click", function (e) {
|
|
setSummaryType($(e.target).text());
|
|
});
|
|
});
|
|
|
|
//tab选择设置
|
|
function setSummaryType(summaryType) {
|
|
$("#myTab li").removeClass("active");
|
|
$("#myTab :contains('" + summaryType + "')").parent().addClass("active");
|
|
$("[tag]").hide();
|
|
$("[tag*='" + summaryType + "']").show();
|
|
let range = $("#myTab a:contains('" + summaryType + "')").attr("value")
|
|
switch (summaryType) {
|
|
case "黑箱交易":
|
|
jqgrid1Mgr.show(range);
|
|
$("#jqgridDiv1").show();
|
|
$("#jqgridDiv2").hide();
|
|
$("#jqgridDiv3").hide();
|
|
$("#hidSummaryType").val(range);
|
|
break;
|
|
case "自定义交易":
|
|
jqgrid2Mgr.show(range);
|
|
$("#jqgridDiv2").show();
|
|
$("#jqgridDiv1").hide();
|
|
$("#jqgridDiv3").hide();
|
|
$("#hidSummaryType").val(range);
|
|
break;
|
|
case "自定义要素":
|
|
jqgrid3Mgr.show(range);
|
|
$("#jqgridDiv3").show();
|
|
$("#jqgridDiv1").hide();
|
|
$("#jqgridDiv2").hide();
|
|
$("#hidSummaryType").val(range);
|
|
break;
|
|
}
|
|
SearchClick();
|
|
}
|
|
|
|
function reloadcredit(curId) {
|
|
SearchClick();
|
|
setTimeout(() => {
|
|
$('#' + _jqgridMgr.gridId).expandSubGridRow(curId);
|
|
}, 100);
|
|
window.layer.closeAll();
|
|
}
|
|
|
|
function SearchClick() {
|
|
var listGrid = $('#' + _jqgridMgr.gridId);
|
|
listGrid.trigger('reloadGrid');
|
|
}
|
|
|
|
|
|
function startAddstructure() {
|
|
var addurl = "/StructureInfo/StructureInfoEdit?range=" + $("#hidSummaryType").val();
|
|
var windowName = "结构信息";
|
|
if ($("#hidSummaryType").val() === "EXTEND_INFO") {
|
|
windowName = "模板信息";
|
|
}
|
|
main.infopage(windowName, addurl, { area: ['650px', '420px'] });
|
|
}
|
|
|
|
//格式化自定义报送结构类型
|
|
function CustomStructureTypeFormat(c, o, r) {
|
|
let html = '';
|
|
pageObj.CustomStructureTypes.map(x => {
|
|
if (x.Value == c) {
|
|
html = x.Text;
|
|
}
|
|
});
|
|
return html;
|
|
} |