mirror of
https://github.com/jiawanlong/Cesium-Examples.git
synced 2025-07-05 07:37:31 +00:00
450 lines
18 KiB
JavaScript
450 lines
18 KiB
JavaScript
/* by jiawanlong*/
|
|
var data;
|
|
L.supermap.plotting.initIportalStylePanel = function(div, type, data, plotName){
|
|
data = data;
|
|
if(plotName === 'detail') {
|
|
var stylePanel = document.getElementById(div);
|
|
var pg = document.createElement("table");
|
|
pg.id = "pg";
|
|
pg.className = "easyui-propertygrid";
|
|
stylePanel.appendChild(pg);
|
|
$("#pg").propertygrid({
|
|
showGroup:true,
|
|
columns: [[
|
|
{ field: 'name', title: 'Name', width: 100, resizable: true },
|
|
{ field: 'value', title: 'Value', width: 100, resizable: true
|
|
}
|
|
]]
|
|
});
|
|
showFeatureProperty(type,data);
|
|
}else {
|
|
var plotPanel = document.getElementById(div);
|
|
var attrStyle = document.createElement("table");
|
|
attrStyle.id = "attrStyle";
|
|
attrStyle.className = "easyui-propertygrid";
|
|
plotPanel.appendChild(attrStyle);
|
|
$("#attrStyle").propertygrid({
|
|
showGroup:true,
|
|
columns: [[
|
|
{ field: 'name', title: 'Name', width: 100, resizable: true },
|
|
{ field: 'value', title: 'Value', width: 100, resizable: true
|
|
}
|
|
]],
|
|
onAfterEdit: afterModifySelectFeature
|
|
});
|
|
showEditFeatureProperty(type,data);
|
|
}
|
|
|
|
}
|
|
|
|
function showFeatureProperty(type,item) {
|
|
let rows = collectionPropertyGridRows(type,item);
|
|
$('#pg').propertygrid('loadData', rows);
|
|
}
|
|
function showEditFeatureProperty(type,item) {
|
|
let rows = collectionEditPropertyGridRows(type,item);
|
|
$('#attrStyle').propertygrid('loadData', rows);
|
|
}
|
|
var groupDetail =["基本信息","地图图层列表","服务参照系","服务标识","服务范围","服务提供者"];
|
|
var groupEdit =["基本信息","服务参照系","服务标识","地理范围","服务提供者"];
|
|
function collectionPropertyGridRows(type,featuresParameter) {
|
|
let rows = [];
|
|
//基本信息
|
|
rows = [
|
|
{ "name": "名称", "value":featuresParameter.title, "group": groupDetail[0]},
|
|
{ "name": "所有者", "value":featuresParameter.userName, "group": groupDetail[0]},
|
|
{ "name": "标签", "value": featuresParameter.tags.join(",").replace(","," "),"group": groupDetail[0]},
|
|
{ "name": "描述", "value": featuresParameter.description, "group": groupDetail[0]}
|
|
];
|
|
switch (type){
|
|
case 'MAP':
|
|
rows.push(
|
|
{
|
|
"name":'类型',
|
|
"value":featuresParameter.sourceType,
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'坐标系信息',
|
|
"value":featuresParameter.epsgCode,
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'中心点',
|
|
"value":featuresParameter.center?"("+featuresParameter.center.x+", "+featuresParameter.center.y+")":'',
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'地图范围',
|
|
"value":featuresParameter.extent?"左下角("+featuresParameter.extent.left+","+featuresParameter.extent.bottom+") 右上角("+featuresParameter.extent.right+","+featuresParameter.extent.top+")":'',
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'创建时间',
|
|
"value":new Date(parseInt(featuresParameter.createTime)).toLocaleString(),
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'修改时间',
|
|
"value":new Date(parseInt(featuresParameter.updateTime)).toLocaleString(),
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'访问数',
|
|
"value":featuresParameter.visitCount,
|
|
"group":groupDetail[0]
|
|
}
|
|
)
|
|
if(featuresParameter.layers) {
|
|
featuresParameter.layers.forEach(item => {
|
|
rows.push({
|
|
"name":item.title,
|
|
"value":item.hrefUrl,
|
|
"group":groupDetail[1]
|
|
})
|
|
})
|
|
}
|
|
|
|
break;
|
|
case 'SERVICE':
|
|
rows[0].value = featuresParameter.resTitle;
|
|
rows.push(
|
|
{
|
|
"name":'地址',
|
|
"value":featuresParameter.linkPage,
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'代理地址',
|
|
"value":featuresParameter.proxiedUrl,
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'令牌获取地址',
|
|
"value":featuresParameter.tokenRefreshUrl,
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'类型',
|
|
"value":featuresParameter.type,
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'注册于',
|
|
"value":new Date(parseInt(featuresParameter.createTime)).toLocaleString(),
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'访问数',
|
|
"value":featuresParameter.visitCount,
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'坐标系',
|
|
"value":featuresParameter.metadata.refSysInfo?featuresParameter.metadata.refSysInfo.refSysID:'',
|
|
"group":groupDetail[2]
|
|
},
|
|
{
|
|
"name":'投影类型',
|
|
"value":featuresParameter.metadata.refSysInfo?featuresParameter.metadata.refSysInfo.mdCoRefSys.projection:'',
|
|
"group":groupDetail[2]
|
|
},
|
|
{
|
|
"name":'覆盖区域',
|
|
"value":featuresParameter.metadata.dataIdInfo?featuresParameter.metadata.dataIdInfo.dataIdent.dataExt.exDesc:'',
|
|
"group":groupDetail[3]
|
|
},
|
|
{
|
|
"name":'西边界',
|
|
"value":featuresParameter.metadata.dataIdInfo?featuresParameter.metadata.dataIdInfo.dataIdent.dataExt.geoEle.geoBndBox.westBL:'',
|
|
"group":groupDetail[4]
|
|
},
|
|
{
|
|
"name":'东边界',
|
|
"value":featuresParameter.metadata.dataIdInfo?featuresParameter.metadata.dataIdInfo.dataIdent.dataExt.geoEle.geoBndBox.eastBL:'',
|
|
"group":groupDetail[4]
|
|
},
|
|
{
|
|
"name":'南边界',
|
|
"value":featuresParameter.metadata.dataIdInfo?featuresParameter.metadata.dataIdInfo.dataIdent.dataExt.geoEle.geoBndBox.southBL:'',
|
|
"group":groupDetail[4]
|
|
},
|
|
{
|
|
"name":'北边界',
|
|
"value":featuresParameter.metadata.dataIdInfo?featuresParameter.metadata.dataIdInfo.dataIdent.dataExt.geoEle.geoBndBox.northBL:'',
|
|
"group":groupDetail[4]
|
|
},
|
|
{
|
|
"name":'个人名称',
|
|
"value":featuresParameter.metadata.mdContact?featuresParameter.metadata.mdContact.rpIndName:'',
|
|
"group":groupDetail[5]
|
|
},
|
|
{
|
|
"name":'组织名称',
|
|
"value":featuresParameter.metadata.mdContact?featuresParameter.metadata.mdContact.rpOrgName:'',
|
|
"group":groupDetail[5]
|
|
},
|
|
{
|
|
"name":'地址',
|
|
"value":featuresParameter.metadata.mdContact?featuresParameter.metadata.mdContact.rpCntInfo.cntAddress.delPoint:'',
|
|
"group":groupDetail[5]
|
|
},
|
|
{
|
|
"name":'电子邮件',
|
|
"value":featuresParameter.metadata.mdContact?featuresParameter.metadata.mdContact.rpCntInfo.cntAddress.EMailAdd:'',
|
|
"group":groupDetail[5]
|
|
},
|
|
{
|
|
"name":'电话',
|
|
"value":featuresParameter.metadata.mdContact?featuresParameter.metadata.mdContact.rpCntInfo.voiceNum:'',
|
|
"group":groupDetail[5]
|
|
},
|
|
{
|
|
"name":'传真',
|
|
"value":featuresParameter.metadata.mdContact?featuresParameter.metadata.mdContact.rpCntInfo.faxNum:'',
|
|
"group":groupDetail[5]
|
|
}
|
|
)
|
|
break;
|
|
case 'SCENE':
|
|
rows[0].value = featuresParameter.name;
|
|
rows.push(
|
|
{
|
|
"name":'创建于',
|
|
"value":new Date(parseInt(featuresParameter.createTime)).toLocaleString(),
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'访问数',
|
|
"value":featuresParameter.visitCount,
|
|
"group":groupDetail[0]
|
|
}
|
|
)
|
|
break;
|
|
case 'DATA':
|
|
rows[0].value = featuresParameter.fileName;
|
|
rows.push(
|
|
{
|
|
"name":'类型',
|
|
"value":featuresParameter.type,
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'数据范围',
|
|
"value":featuresParameter.dataMetaInfo?featuresParameter.dataMetaInfo.bounds:'',
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'坐标系',
|
|
"value":featuresParameter.dataMetaInfo?featuresParameter.dataMetaInfo.epsgCode:'',
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'数据提供者',
|
|
"value":featuresParameter.dataMetaInfo?featuresParameter.dataMetaInfo.providers:'',
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'修改时间',
|
|
"value":new Date(parseInt(featuresParameter.lastModfiedTime)).toLocaleString(),
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'下载次数',
|
|
"value":featuresParameter.downloadCount,
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'文件大小',
|
|
"value":(Number(featuresParameter.size)/1024).toFixed(2)+"KB",
|
|
"group":groupDetail[0]
|
|
}
|
|
)
|
|
break;
|
|
case 'INSIGHTS_WORKSPACE':
|
|
rows[0].value = featuresParameter.name;
|
|
rows.push(
|
|
{
|
|
"name":'创建于',
|
|
"value":new Date(parseInt(featuresParameter.createTime)).toLocaleString(),
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'访问数',
|
|
"value":featuresParameter.visitCount,
|
|
"group":groupDetail[0]
|
|
}
|
|
)
|
|
break;
|
|
case 'MAP_DASHBOARD':
|
|
rows[0].value = featuresParameter.name;
|
|
rows.push(
|
|
{
|
|
"name":'创建于',
|
|
"value":new Date(parseInt(featuresParameter.createTime)).toLocaleString(),
|
|
"group":groupDetail[0]
|
|
},
|
|
{
|
|
"name":'访问数',
|
|
"value":featuresParameter.visitCount,
|
|
"group":groupDetail[0]
|
|
}
|
|
)
|
|
break;
|
|
}
|
|
return rows;
|
|
}
|
|
function collectionEditPropertyGridRows(type,featuresParameter){
|
|
let rows = [];
|
|
//基本信息
|
|
rows = [
|
|
{ "name": "名称", "value":featuresParameter.title, "group": groupEdit[0],"editor":"text","key":"title"},
|
|
{ "name": "标签", "value": featuresParameter.tags.join(",").replace(","," "), "group": groupEdit[0],"editor":"text","key":"tags"},
|
|
{ "name": "描述", "value": featuresParameter.description, "group": groupEdit[0],"editor":"text","key":"description"}
|
|
];
|
|
switch (type) {
|
|
case 'SERVICE':
|
|
rows[0].value = featuresParameter.resTitle;
|
|
rows.push(
|
|
{
|
|
"name":"令牌获取地址",
|
|
"value":featuresParameter.tokenRefreshUrl,
|
|
"group":groupEdit[0],
|
|
"editor":"text",
|
|
"key":"tokenRefreshUrl"
|
|
},
|
|
{
|
|
"name":"坐标系",
|
|
"value":featuresParameter.metadata.refSysInfo?featuresParameter.metadata.refSysInfo.refSysID:'',
|
|
"group":groupEdit[1],
|
|
"editor":"text",
|
|
"key":"refSysID"
|
|
},
|
|
{
|
|
"name":'投影类型',
|
|
"value":featuresParameter.metadata.refSysInfo?featuresParameter.metadata.refSysInfo.mdCoRefSys.projection:'',
|
|
"group":groupEdit[1],
|
|
"editor":"text",
|
|
"key":"projection"
|
|
},
|
|
{
|
|
"name":'覆盖区域',
|
|
"value":featuresParameter.metadata.dataIdInfo?featuresParameter.metadata.dataIdInfo.dataIdent.dataExt.exDesc:'',
|
|
"group":groupEdit[2],
|
|
"editor":"text",
|
|
"key":"region"
|
|
}, {
|
|
"name":'西边界',
|
|
"value":featuresParameter.metadata.dataIdInfo?featuresParameter.metadata.dataIdInfo.dataIdent.dataExt.geoEle.geoBndBox.westBL:'',
|
|
"group":groupEdit[3],
|
|
"editor":"text",
|
|
"key":"west"
|
|
}, {
|
|
"name":'东边界',
|
|
"value":featuresParameter.metadata.dataIdInfo?featuresParameter.metadata.dataIdInfo.dataIdent.dataExt.geoEle.geoBndBox.eastBL:'',
|
|
"group":groupEdit[3],
|
|
"editor":"text",
|
|
"key":"east"
|
|
}, {
|
|
"name":'南边界',
|
|
"value":featuresParameter.metadata.dataIdInfo?featuresParameter.metadata.dataIdInfo.dataIdent.dataExt.geoEle.geoBndBox.southBL:'',
|
|
"group":groupEdit[3],
|
|
"editor":"text",
|
|
"key":"south"
|
|
}, {
|
|
"name":'北边界',
|
|
"value":featuresParameter.metadata.dataIdInfo?featuresParameter.metadata.dataIdInfo.dataIdent.dataExt.geoEle.geoBndBox.northBL:'',
|
|
"group":groupEdit[3],
|
|
"editor":"text",
|
|
"key":"north"
|
|
},
|
|
{
|
|
"name":'个人名称',
|
|
"value":featuresParameter.metadata.mdContact?featuresParameter.metadata.mdContact.rpIndName:'',
|
|
"group":groupEdit[4],
|
|
"editor":"text",
|
|
"key":"personName"
|
|
},
|
|
{
|
|
"name":'组织名称',
|
|
"value":featuresParameter.metadata.mdContact?featuresParameter.metadata.mdContact.rpOrgName:'',
|
|
"group":groupEdit[4],
|
|
"editor":"text",
|
|
"key":"orgName"
|
|
},
|
|
{
|
|
"name":'地址',
|
|
"value":featuresParameter.metadata.mdContact?featuresParameter.metadata.mdContact.rpCntInfo.cntAddress.delPoint:'',
|
|
"group":groupEdit[4],
|
|
"editor":"text",
|
|
"key":"address"
|
|
},
|
|
{
|
|
"name":'电子邮件',
|
|
"value":featuresParameter.metadata.mdContact?featuresParameter.metadata.mdContact.rpCntInfo.cntAddress.EMailAdd:'',
|
|
"group":groupEdit[4],
|
|
"editor":"text",
|
|
"key":"email"
|
|
},
|
|
{
|
|
"name":'电话',
|
|
"value":featuresParameter.metadata.mdContact
|
|
?featuresParameter.metadata.mdContact.rpCntInfo.voiceNum:'',
|
|
"group":groupEdit[4],
|
|
"editor":"text",
|
|
"key":"voiceNum"
|
|
},
|
|
{
|
|
"name":'传真',
|
|
"value":featuresParameter.metadata.mdContact?featuresParameter.metadata.mdContact.rpCntInfo.faxNum:'',
|
|
"group":groupEdit[4],
|
|
"editor":"text",
|
|
"key":"faxNum"
|
|
}
|
|
)
|
|
break;
|
|
case 'DATA':
|
|
rows[0].value = featuresParameter.fileName.substring(0,featuresParameter.fileName.lastIndexOf("."));
|
|
rows.push(
|
|
{
|
|
"name":'数据范围',
|
|
"value":featuresParameter.dataMetaInfo?featuresParameter.dataMetaInfo.bounds:'',
|
|
"group":groupEdit[0],
|
|
"editor":"text",
|
|
"key":"bounds"
|
|
},{
|
|
"name":'坐标系',
|
|
"value":featuresParameter.dataMetaInfo?featuresParameter.dataMetaInfo.epsgCode:'',
|
|
"group":groupEdit[0],
|
|
"editor":"text",
|
|
"key":"epsgCode"
|
|
|
|
},{
|
|
"name":'地图预览URL',
|
|
"value":featuresParameter.dataMetaInfo?featuresParameter.dataMetaInfo.previewURL:'',
|
|
"group":groupEdit[0],
|
|
"editor":"text",
|
|
"key":"previewURL"
|
|
|
|
}, {
|
|
"name":'数据提供者',
|
|
"value":featuresParameter.dataMetaInfo?featuresParameter.dataMetaInfo.providers:'',
|
|
"group":groupEdit[0],
|
|
"editor":"text",
|
|
"key":"providers"
|
|
}
|
|
)
|
|
break;
|
|
case 'SCENE':
|
|
rows[0].value = featuresParameter.name;
|
|
break;
|
|
case 'INSIGHTS_WORKSPACE':
|
|
rows[0].value = featuresParameter.name;
|
|
break;
|
|
case 'MAP_DASHBOARD':
|
|
rows[0].value = featuresParameter.name;
|
|
break;
|
|
}
|
|
return rows;
|
|
}
|