Files
zszq-trs/YLErpWeb/wwwroot/Scripts/app/Structure/StructureInfo2.js
T
2024-05-09 14:06:26 +08:00

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;
}