Files
SIPAIIS_WMS_JSSW/WebRoot/jsp/efficiency/efficiencyOverviewConfigureEdit.jsp
2026-01-16 14:13:44 +08:00

354 lines
15 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<%@page import="com.sipai.tools.CommString"%>
<%@ page language="java" pageEncoding="UTF-8"%>
<style type="text/css">
.select2-container .select2-selection--single{
height:34px;
line-height: 34px;
}
.select2-selection__arrow{
margin-top:3px;
}
</style>
<script type="text/javascript">
var masterId='${efficiencyOverviewConfigure.id}';
var tbName='tb_efficiency_overviewConfigure_file'; //数据表
var nameSpace='efficiencyOverviewConfigure';//保存文件夹
var previews = new Array();
var previewConfigs = new Array();
var canvas;
var context;
var height;
var width;
var beauty;
var dataAll;
function showFileInput(ctrlName) {
var control = $('#' + ctrlName);
control.fileinput('destroy');
control.fileinput({
language: 'zh', //设置语言
showUpload: false, //是否显示上传按钮
showRemove:false,
showCaption: false,//是否显示标题
showBrowse:false,//选择按钮
showClose:false,//右上角关闭按钮
dropZoneEnabled: false,//是否显示拖拽区域
fileActionSettings:{
showDrag:false
},
browseClass: "btn btn-primary", //按钮样式
maxFileCount: 10, //表示允许同时上传的最大文件个数
enctype: 'multipart/form-data',
validateInitialCount:true,
previewFileIcon: "<i class='glyphicon glyphicon-king'></i>",
initialPreviewAsData: true,
initialPreview: previews,
initialPreviewConfig:previewConfigs,
layoutTemplates:{
actionUpload:''
},
deleteUrl:ext.contextPath+"/base/deleteInputFile.do",
deleteExtraData:function () { //传参
var data = {
"tbName": tbName
};
return data;
}
});
$('#kvFileinputModal').on("hidden.bs.modal", function() {
$(this).removeData("bs.modal");
//modal重复打开会导致前面的滚动条失去作用
$('.modal').css("overflow","auto");
});
}
//名称定义不可修改
var getFileList = function() {
$.post(ext.contextPath + '/base/getInputFileList.do', {masterId:masterId,tbName:tbName} , function(data) {
//console.info(data)
if(data.length>0){
previews=new Array();
// $('#maintenancefile').show();
for(var i=0;i<data.length;i++){
var previewConfig = new Object();
var path = data[i].abspath;
path=path.substring(path.indexOf('webapps')+7,path.length);
path =ext.basePath.replace(ext.contextPath,'')+ path.replace(/\\/g,"\/");;
previews.push(path);
previewConfig['width']= '50px';
previewConfig['caption']= data[i].filename;
previewConfig['key']= data[i].id;
previewConfigs.push(previewConfig);
}
showFileInput("efficiencyOverviewConfigureModelFile");
}else{
$('#efficiencyOverviewConfigureModelFile').hide();
}
},'json');
};
var fileinput = function() {
//var url='/maintenance/updateProblemFile.do';//保存数据表方法
$.post(ext.contextPath + '/base/fileinput.do', {masterId:masterId,tbName:tbName,nameSpace:nameSpace} , function(data) {
$("#fileInputDiv").html(data);
openModal('fileInputModal');
});
};
function doupdate() {
$("#subForm").bootstrapValidator('validate');//提交验证
if ($("#subForm").data('bootstrapValidator').isValid()) {//获取验证结果,如果成功,执行下面代码
$.post(ext.contextPath + "/efficiency/efficiencyOverviewConfigure/doupdate.do", $("#subForm").serialize(), function(data) {
if (data.code == 1){
closeModal('subModal');
$("#table").bootstrapTable('refresh');
}else if(data.code == 0){
showAlert('d','保存失败');
}else{
showAlert('d',data.res);
}
},'json');
}
}
//输入框验证
$("#subForm").bootstrapValidator({
live: 'disabled',//验证时机enabled是内容有变化就验证默认disabled和submitted是提交再验证
fields: {
name: {
validators: {
notEmpty: {
message: '名称不能为空'
}
}
},
}
});
//获取url地址根目录 当前taomcat下路径
function getRootPath(){
var pathName = window.location.pathname.substring(1);
// var webName = pathName == '' ? '' : pathName.substring(0, pathName.indexOf('/'));
return window.location.protocol + '//' + window.location.host;
}
var picId="";
function showImg(){
$('#mpConfigure').html("");
$.post(ext.contextPath + '/base/getInputFileList.do', {masterId:masterId,tbName:tbName} , function(data) {
if(data!=''){
var abspath=data[0].abspath.split('webapps');
picId=data[0].id;
//document.getElementById("imgShow").src = ""+getRootPath()+""+abspath[1]+"";
canvas = document.getElementById("canvas");
context = canvas.getContext('2d');
beauty = new Image();
beauty.src = ""+getRootPath()+""+abspath[1]+"";
// width = $(window).width();
// height = $(window).height();
width = beauty.width;
height = beauty.height;
if(beauty.complete){
document.getElementById('canvas').width=beauty.width;
document.getElementById('canvas').height=beauty.height;
drawBeauty();
mPointData(masterId);
}else{
beauty.onload = function(){
drawBeauty();
mPointData(masterId);
};
beauty.onerror = function(){
alert('加载失败,请重试');
};
};
}
},'json');
}
function mPointData(picId){
$.post(ext.contextPath + '/efficiency/efficiencyOverviewMpConfigure/getJson.do', {picId:picId,unitId:'${efficiencyOverviewConfigure.unitid}'} , function(mpdata) {
dataAll =mpdata;
if(mpdata.length>0){
context.clearRect(0, 0, context.canvas.width, context.canvas.height);
context.drawImage(beauty, 0, 0, width, height);
context.save();
for(var m=0;m<mpdata.length;m++){
var divHtml = "";
if(mpdata[m].efficiencyOverviewConfigureAssembly!=null){
var assembly =mpdata[m].efficiencyOverviewConfigureAssembly;
if(assembly.type!=null && assembly.type!=''){
if(assembly.type=='heat'){
//热力组件
selectAssembly_Heat(mpdata[m]);
}else if(assembly.type=='mpoint'){
//测量点组件
divHtml = selectAssembly_mpdata(mpdata[m]);
}else if(assembly.type=='meter'){
//电力表组件
divHtml = selectAssembly_meter(mpdata[m]);
}else if(assembly.type=='dataFrame'){
//数据框组件
divHtml = selectAssembly_dataFrame(mpdata[m]);
}
}
}else{
if(mpdata[m].mPoint != ''){
//测量点组件
divHtml = selectAssembly_mpdata(mpdata[m]);
}
}
$('#mpConfigure').append(divHtml);
$('#'+mpdata[m].id).draggable();
}
context.save();
}
},'json');
}
function editps(id){
stopBubbleDefaultEvent();
$.post(ext.contextPath + '/efficiency/efficiencyOverviewMpConfigure/doedit.do', {id:id} , function(data) {
$("#mpDiv").html(data);
openModal('subMpModal');
});
}
function setdata() {
// var contentdiv=$("#mpConfigure");
var obj = document.getElementsByTagName("DIV");
for(var i=0;i<obj.length;i++){
if(obj[i].className.indexOf("moveDiv")>=0){
// console.log("id" , obj[i].id);
// console.log("x", obj[i].style.left);
// console.log("y" , obj[i].style.top);
$.post(ext.contextPath + '/efficiency/efficiencyOverviewMpConfigure/updateLayout.do', {id:obj[i].id , posx:obj[i].style.left , posy:obj[i].style.top,}, function(data) {
},'json');
}
}
}
$(function () {
$("#type").select2({ minimumResultsForSearch: 10 }).val("${efficiencyOverviewConfigure.type}").trigger("change");
showImg();
showAssembly();
});
function showAssembly(){
$.post(ext.contextPath + '/efficiency/efficiencyOverviewConfigureAssembly/getTreeJson.do', {unitId:'${efficiencyOverviewConfigure.unitid}'}, function (data){
var htmlStr = "";
if(data!=null && data!=undefined && data!=''){
for(var i=0;i<data.length;i++){
htmlStr += '<button type="button" class="btn btn-default btn-sm" onclick="addAssemblyFun(\''+data[i].id+'\');" ><i class="fa fa-plus"></i>'+data[i].text+'</button>';
}
}
$("#assembly").html(htmlStr);
},'json');
};
var addMPFun = function () {
if(picId==''){
showAlert('d','请先上传图片!');
}else{
$.post(ext.contextPath + '/efficiency/efficiencyOverviewMpConfigure/mpConfigure.do', {unitId:'${efficiencyOverviewConfigure.unitid}',picId:picId}, function (data){
$("#mp4SelectDiv").html(data);
openModal('MPointModel');
});
}
};
var addAssemblyFun = function (id) {
if(picId==''){
showAlert('d','请先上传图片!');
}else{
$.post(ext.contextPath + "/efficiency/efficiencyOverviewMpConfigure/doAssemblySave.do",{assembly:id, picId:masterId,unitId:'${efficiencyOverviewConfigure.unitid}'}, function(data) {
showImg();
},'json');
}
};
window.onload=function(){
var canvas=document.getElementById("canvas");
// canvas.width=1024;
// canvas.height=768;//通过这两种方式也可以设置canvas的大小
var context=canvas.getContext("2d");
}
</script>
<div class="modal fade" id="subModal">
<div style="padding: 5px;">
<div class="modal-content" >
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">&times;</span></button>
<h4 class="modal-title">编辑</h4>
</div>
<div class="modal-body">
<!-- 新增界面formid强制为subForm -->
<form class="form-horizontal" id="subForm">
<!-- 界面提醒div强制id为alertDiv -->
<div id="alertDiv"></div>
<div id="mp4SelectDiv"></div>
<div id="mpDiv"></div>
<input type="hidden" name="id" value= "${efficiencyOverviewConfigure.id}">
<%-- <div class="form-group">
<label class="col-sm-2 control-label">*类型</label>
<div class="col-sm-6">
<select class="form-control select2" id="type" name="type" style="width:200px">
<option value="0">总览</option>
<option value="1">热力图</option>
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">图例最大值</label>
<div class="col-sm-6">
<input type="text" class="form-control" id="upperlimit" name ="upperlimit" placeholder="最大值" value="${efficiencyOverviewConfigure.upperlimit}" >
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">图例最小值</label>
<div class="col-sm-6">
<input type="text" class="form-control" id="lowerlimit" name ="lowerlimit" placeholder="最小值" value="${efficiencyOverviewConfigure.lowerlimit}" >
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label">图例层级</label>
<div class="col-sm-6">
<input type="text" class="form-control" id="grade" name ="grade" placeholder="层级" value="${efficiencyOverviewConfigure.grade}" >
</div>
</div> --%>
<div class="form-group">
<label class="col-sm-2 control-label">*名称</label>
<div class="col-sm-3">
<input type="text" class="form-control" id="name" name ="name" placeholder="名称" value="${efficiencyOverviewConfigure.name}" >
</div>
<label class="col-sm-2 control-label">排序</label>
<div class="col-sm-3">
<input type="text" class="form-control" id="morder" name ="morder" placeholder="排序" value="${efficiencyOverviewConfigure.morder}" >
</div>
<div class="col-sm-2">
<button type="button" class="btn btn-default btn-file" onclick="fileinput()" id="btn_save"><i class="fa fa-paperclip"></i>上传图片</button>
</div>
</div>
<div class="form-group sidebar-nav">
<div class="col-sm-1">
<button type="button" class="btn btn-primary btn-sm" onclick="setdata();" ><i class="fa fa-save"></i> 保存布局</button>
</div>
<label class="col-sm-1 control-label">组件:</label>
<div class="col-sm-10" id="assembly">
</div>
</div>
<!-- <div style="height: 40px;">
<button type="button" class="btn btn-default btn-sm" onclick="addMPFun();"><i class="fa fa-plus"></i>添加测量点</button>
<button type="button" class="btn btn-default btn-sm" onclick="setdata();"><i class="fa fa-save"></i> 保存布局</button>
</div> -->
<div class="demo" style="width: 100%;height:100%;overflow: auto;" >
<div id="mpConfigure" style="position:relative;"></div>
<canvas id="canvas"></canvas>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default pull-left" data-dismiss="modal">关闭</button>
<button type="button" class="btn btn-primary" onclick="doupdate()" id="btn_update">保存</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal-dialog -->
</div>