function setStyle(e){var t="padding:"+e.top+"px "+e.right+"px "+e.bottom+"px "+e.left+"px ;font-family:"+e.font_family+";color:"+e.font_color+";font-size:"+e.font_size+";text-align:"+e.align+";display:"+e.is_show;return t}function filterDefined(e,t){for(var i,r=[],n=0;n0){var s=filterDefined(o.children,t);r[r.length-1].children=s.node,void 0===i&&(i=s.index)}}else o.code===t&&(i=vm.formulas.length,vm.formulas_index=i),vm.formulas.push(o),vm.formulas["ind"+o.code]=vm.formulas.length-1}return{node:r,index:i}}function showTimeout(e,t){setTimeout(function(){vm[e]=!1},1e3*t)}function formulaTreeData(e,t){for(var i=0;i0&&formulaTreeData(e[i].children,t)}}function getFormulaType(e){e||(e=""),e+="";var t=e.indexOf("(");if(t===-1)return"string";var i=e.substr(0,t);return i?i:"defined"}function dataOp(e,t,i){void 0===i&&(i=[]);var r=[];i[i.length]=r;for(var n=0,o=[];n0&&(o=o.concat(d))}}return o.length>0?dataOp(o,t,i):i}function creatTHRow(e,t,i){for(var r={},n=[],o="",s=e.length,d=s-1;d>=0;d--){n[d]=[];for(var l=e[d],a="",c=0;c
"+(h.label||h.name)+"
",n[d].push(h)}else a+="
"+(h.label||h.name)+"
",void 0!==n[d+1]&&(n[d]=n[d].concat(n[d].splice(0,r[h.tid])))}if(d>0)var p="";else{vm.ck_sx&&0!=vm.cur_report_style.value&&t--;var p='
'+vm.table_y_name+"
"}o=p+a+""+o}return{str:o,arr:n[0]}}function creatTHCol(e,t,i){for(var r={},n={},o="",s=t+"",d=e.length,l=d-1;l>=0;l--)for(var a=e[l],c=0;c
'+(h.label||h.name)+"
",1==r[h.ptid]&&(n[h.ptid]=[]);var v=(1!=r[h.ptid]||0==l?"":"")+_+s;n[h.ptid].push(v),0==l&&(o+=v)}else _='
'+(h.label||h.name)+"
",0==l?(n[h.tid][0]=""+_+n[h.tid][0],o+=n[h.tid].join("")):(void 0===n[h.ptid]?(n[h.ptid]=[],n[h.tid][0]=_+n[h.tid][0]):n[h.tid][0]=""+_+n[h.tid][0],n[h.ptid]=n[h.ptid].concat(n[h.tid]))}return o}function changeTid(e,t,i,r){var n=t instanceof Array?t:[t];void 0===e&&(e="root"),void 0===r&&(r={});for(var o=0;o0)return changeTid(d,s.children,i,r)}return i}function getLastNode(e){for(var t=[],i=0,r=e.length;i0?t=t.concat(getLastNode(n.children)):t.push(n)}return t}function objClone(e,t){var i={};for(var r in e)"function"==typeof t?t(r,e,i):i[r]=e[r];return i}function filterTree(e){if(!(e instanceof Array))return e;for(var t=0,i=[];t0&&(i=i.concat(e[t].children));return i.length>0?filterTree(i):void 0}function deleteReportFileItem(e){var t={substep:1,cur_report_type:1,cur_report_style:1,sketch_index:1,report_s_month:1,report_s_day:1,report_s_hours:1,report_interval:1,check_station:1,check_profession:1,checked_node:1,checked_total_index:1,checked_contrast_index:1,totals:1,contrasts:1,ck_cd:1,ck_sx:1,table:1,row_chang_color:1,dev_tree:1,time_tree:1,dev_map:1,time_map:1,tb_title:1,tb_sub:1,tb_width:1,tb_detailed_1:1,tb_detailed_2:1,tb_detailed_3:1,tb_detailed_4:1,data_point:1,digits_fixed:1,report_bgcolor:1,report_font:1,report_size:1,report_color:1,report_textarea:1,row_line_height:1,row_chang_color:1,border_type:1,border_bgcolor:1,border_zise:1,th_bgcolor:1,th_color:1,all_totals:1,cols_width:1,t_num:1};for(var i in e.vm)void 0===t[i]&&delete e.vm[i]}function widthTd(e,t){var i="",r="";vm.cols_width.length=e+t;for(var n=0;n';for(var o=0;o'}return''+i+r+""}var reiniting=!1,timeout=0,outtime=800,vm=new Vue({el:"#app",data:{i18n:{title1:"报表管理",title4:"其他配置",title5:"预览",t1_1:"新建报表",t1_2:"打开报表",t1_3:"保存报表",t2_1:"图片"},save_loading:!1,openedFile:{},reportFilesPanel:!1,reportFiles:[{label:"报表",code:"root",expand:!1,filetype:"report",children:[]}],reportModes:[{label:"模板",code:"mode",filetype:"mode",type:"files",children:[{label:"模板1",code:"mode_1",filetype:"mode",type:"file",children:[]}]}],fileName:"",fileSelected:"",checkedFiles:[],showFileRename:!1,fileRename:"",isSave:!0,newFile:!1,newFiles:!1,isMode:!1,fileSelected:"",fileSelectedReport:{},reportFilesTips_nofile:!1,reportFilesTips_file:!1,reportFilesTips_files:!1,addColPanel:!1,zx_colName_show:"",zx_colName:"",zx_colValue_show:"",zx_colValue:"",formulaType:"defined",saveFlag:!1,cols:[],check_cols:[],check_cols_index:"-1",x_check:[],col_check_node:[],editNodePanel:!1,addNodePanel:!1,edit_node_type:"",checked_dev_index:0,check_dev:[],dev_name_text:"",dev_code_text:"",clone_all_dev:[],edit_is_add:!1,delete_box:!1,show_field:!1,dev_field:{label:"label"},deleteFlag:!0,configure:!1,activeName:"first",border_type:"",border_type_list:[{label:"实线",value:"solid"},{label:"点线",value:"dotted"},{label:"虚线",value:"dashed"},{label:"双线",value:"double"},{label:"3D凹槽线边框(需要边框线较大才有明显的效果)",value:"groove"},{label:"3D垄状线边框(需要边框线较大才有明显的效果)",value:"ridge"},{label:"3D凹形",value:"inset"},{label:"3D凸形",value:"outset"}],border_bgcolor:"",border_zise:"",th_bgcolor:"rgba(16, 67, 102, 1)",th_color:"rgba(0, 172, 245, 1)",row_line_height:27,row_chang_color:"two-color",report_bgcolor:"",report_font:"",report_size:"",report_color:"",report_textarea:"",paper_type:"A4",paper_orientation:"col",paper_size:{A4:{col:1086,row:756},A3:{col:1548,row:1084}},form:{},cols_width:[],radio_form:"",tb_title:{name:"表格标题",is_show:"block",font_family:"微软雅黑",font_color:"#0096D7",font_size:"",align:"center",top:30,right:10,bottom:10,left:10},tb_sub:{name:"表格副标题",is_show:"none",font_family:"微软雅黑",font_color:"#0096D7",font_size:"",align:"center",top:10,right:10,bottom:10,left:10},tb_detailed_1:{name:" 自定义被描述:描述内容",is_show:"none",font_family:"微软雅黑",font_color:"#0096D7",font_size:"center",align:"",top:"",right:"",bottom:"",left:""},tb_detailed_2:{name:" 表格编号:000",is_show:"none",font_family:"微软雅黑",font_color:"#0096D7",font_size:"",align:"center",top:"",right:"",bottom:"",left:""},tb_detailed_3:{name:" 制表时间:"+(new Date).toLocaleDateString(),is_show:"block",font_family:"微软雅黑",font_color:"#0096D7",font_size:"",align:"center",top:"",right:"",bottom:"",left:""},tb_detailed_4:{name:" 制表人:"+(sessionStorage.getItem("name")||""),is_show:"block",font_family:"微软雅黑",font_color:"#0096D7",font_size:"",align:"center",top:"",right:"",bottom:"",left:""},tb_width:"600px",table:"########################                                                                                                                                                                                ",sidetabs:"dev",adding:!1,deling:!1,step:!1,substep:0,report_types:[],filter_check_dev:"",cur_report_type:{},sketch_index:0,report_s_month:1,report_s_day:1,report_s_hours:0,report_interval:"1",report_style:[],cur_report_style:{},station:[],profession:[],check_station:"",check_profession:"",all_dev:[],check_all:!0,all_property:{},property_tree:[],clone_property_tree:[],filter_all_dev:"",filter_all_dev_type:"name",tree_loading:!1,checked_node:{nodes:[]},t_num:0,check_off:"全选",filter_c:"",filter_q:"",ck_cd:!0,ck_cy:!0,ck_sx:!0,ck_value:"",cd_info_check:{list:[]},contrasts:[],all_totals:[],checked_contrast_index:[],checked_total_index:[],dev_tree:function(e){for(var t=0,i=[];t0&&Array.prototype.push.apply(r,t[i].children),i++,void 0===t[i]&&(t=r,r=[],i=0);return n},adev_check:function(){var e=this.cur_report_type.type,t=this.sketch_index;return this.postDev(),"sy"!=e[t].value},table_y_name:function(){var e=this.cur_report_style.value;return 0==e?"tj"!=this.sketch.value?"时间":"测点":1==e?"设备":void 0},checked_dev_node:function(){return vm.check_dev[vm.checked_dev_index]},checked_total:function(){for(var e=this.totals,t=this.checked_total_index,i=0,r=[];i0&&this.changeNodeCode(o.children,t,i,r)}},change_input_text:function(e){e.nodetype==this.checked_dev_node.nodetype?(this.dev_name_text=e.label,this.dev_code_text=e.code):this.$notify({title:"提示",message:"不是相同中类的节点"})},editXNode:function(e,t){this.edit_node_type=t.devType;var i=[t];if(t.devType)for(var r=0;r0&&this.expendDev(e,t[i].childNodes))},changePtid:function(){},deleteNode:function(e,t){this.$createElement;t.devType===!1?this.delete_box=!0:this.$confirm("确定删除该节点?","提示",{confirmButtonText:"确定",cancelButtonText:"取消",type:"warning",callback:function(t,i){"confirm"==t&&(vm.$refs.x_tree.remove(e),vm.refreshDevTree())}})},filterXNode:function(e,t){return!e||t.label.indexOf(e)!==-1},makeFormule:function(){var e=this.cols_type,t=this.formule_name,i=this.formule_value;return t?"father"===e||i?(this.dev_tree.push({label:t,name:t,nodetype:"father"==e?"fml_type":"code"==e?"fml":"fml_string",code:i,tid:"father"!==e?"p_f"+vm.t_num++:"d_f"+vm.t_num++}),void(this.addNodePanel=!1)):void vm.$notify({title:"错误",message:"请输入列值!",type:"error"}):void vm.$notify({title:"错误",message:"请输入列名!",type:"error"})},formulAddCode:function(){var e,t=this.formule_value,i=this.formule_view,r=this.protree_to_option,n=this.cols_value;if(e="sy"==this.sketch.value?"["+r[n].code+"]":"["+this.devtree_to_option[vm.cols_parent].code+";"+r[n].code+"]",t){var o=t[t.length-1];"+"===o||"-"===o||"*"===o||"/"===o||"("===o?(this.formule_value=t+e,this.formule_view=i+"["+r[n].label+"]"):vm.$notify({title:"错误",message:"请先输入运算符!",type:"error"})}else this.formule_value=e,this.formule_view="["+r[n].label+"]"},formulAddNum:function(e){var t=this.formule_value,i=this.formule_view;if(t){var r=t[t.length-1];"+"===r||"-"===r||"*"===r||"/"===r||"("===r?(this.formule_value=t+e,this.formule_view=i+e):Number(r)?(this.formule_value=t+e,this.formule_view=i+e):vm.$notify({title:"错误",message:"请先输入运算符!",type:"error"})}else this.formule_value=e,this.formule_view=e},formulAddPrth:function(e){var t=this.formule_value,i=this.formule_view;t=t?t:"",i=i?i:"","("===e?t&&"+"!==t[t.length-1]&&"-"!==t[t.length-1]&&"*"!==t[t.length-1]&&"/"!==t[t.length-1]&&"("!==t[t.length-1]?vm.$notify({title:"错误",message:"请先输入运算符!",type:"error"}):(this.formule_value=t+"(",this.formule_view=i+"("):t&&"+"!==t[t.length-1]&&"-"!==t[t.length-1]&&"*"!==t[t.length-1]&&"/"!==t[t.length-1]&&"("!==t[t.length-1]?(this.formule_value=t+")",this.formule_view=i+")"):vm.$notify({title:"错误",message:"请先输入代码或数字!",type:"error"})},formuleBack:function(){var e=this.formule_value,t=this.formule_view;if(e){var i=e[e.length-1];if("+"===i||"-"===i||"*"===i||"/"===i||"("===i||")"===i)this.formule_value=e.substring(0,e.length-1),this.formule_view=t.substring(0,t.length-1);else{var r=this.formule_value.split(/[\+\-\*\/\(\)]/);this.formule_value=e.substring(0,e.length-r[r.length-1].length);var n=this.formule_view.split(/[\+\-\*\/\(\)]/);this.formule_view=t.substring(0,t.length-n[n.length-1].length)}}},formulAddOperator:function(e){var t=this.formule_value,i=this.formule_view;if(t){var r=t[t.length-1];"+"===r||"-"===r||"*"===r||"/"===r||"("===r?vm.$notify({title:"错误",message:"请先输入代码或数字!",type:"error"}):(this.formule_value=t+e,this.formule_view=i+e)}else vm.$notify({title:"错误",message:"请先输入代码或数字!",type:"error"})},reInitSDate:function(){this.report_s_month=1,this.report_s_day=1,this.report_s_hours=0,this.report_interval="1"},reIniCheckNode:function(){this.checked_node={nodes:[]}},expendChecked:function(e){var t=this.$refs.dev_tree.store.root.childNodes;this.expendDev(e,t)},checkedchecked:function(e){var t=this.$refs.dev_tree.getNode(e);this.checkedAll(t.childNodes,t.checked)},checkedAll:function(e,t){void 0===e&&(e=this.$refs.dev_tree.store.root.childNodes),void 0===t&&(t=!this.check_all);for(var i=0;i0&&this.checkedAll(e[i].childNodes,t)},checkedDel:function(){for(var e=this.$refs.dev_tree.getCheckedNodes(),t=0;t0&&(n=n.concat(o.children))}return 0!=n.length&&e.recursion?this.recursion(e,n,i):i},nodeFor:function(e){var t=objClone(e);return t.children&&t.children.length>0?t.tid="c_"+this.t_num++:t.tid="d_"+this.t_num++,t.children=[],t},creatDevTree:function(){if("sy"==this.sketch.value){var e=vm.$refs.adev_tree.getCurrentNode();this.checked_node.nodes=[];for(var t=0,i=["峰","平","谷","尖"];t0||s.dev_list.length>0))return this.$alert("您未选中任何设备!","提示",{confirmButtonText:"确定",callback:function(){}}),!1;if(this.substep=Math.roundFixed(++this.substep),o.nodes.length>0&&o.nodes[0]!==o[o.nodes[0].treeCode]){var d=o.nodes;o={nodes:d};for(var l=d;l.length>0;){for(var t=0,i=[];t0){var c=a.children[0].nodetype;"property_type"!==c&&"property"!==c&&(i=i.concat(a.children))}}l=i}}for(var t=0,h={};t0;){for(var d=0,l=[];d0&&(l=l.concat(a.childNodes)),a.checked?r=!0:n=!0}s=l,r&&n&&(a.parent.indeterminate=!0)}this.checkSelectedStatus(i.parent)},postDev:function(){var e=this;this.all_dev=[],this.tree_loading=!0,this&&this.check_profession&&getDev(e.check_profession,e.check_station)},filterMspsNode:function(e,t){if(!this.filter_c&&!this.filter_q)return!0;var i,r=!1,n=this.filter_c.split(/\s+/g),o=this.filter_q.split(/\s+/g);return 0==t.tid.indexOf("s")&&(i=this.editNodePanel?this.$refs.clone_c_tree.getNode(t).parent.data:this.$refs.c_tree.getNode(t).parent.data),this.filter_q?this.filter_c?0==t.tid.indexOf("p")?r=this.filterMulty(t.label,n):0==t.tid.indexOf("s")&&(r=this.filterMulty(t.label,o)&&this.filterMulty(i.label,n)):0==t.tid.indexOf("s")&&(r=this.filterMulty(t.label,o)):0==t.tid.indexOf("p")?r=this.filterMulty(t.label,n):0==t.tid.indexOf("s")&&(r=this.filterMulty(i.label,n)),r},filter_all_dev_enter:function(){var e=this.filter_all_dev;this.step?this.$refs.adev_tree.filter(e):this.editNodePanel&&this.$refs.clone_adev_tree.filter(e)},filter_check_dev_enter:function(){var e=this.filter_check_dev;this.$refs.dev_tree.filter(e)},filter_c_enter:function(){var e=this.filter_c;this.step?this.$refs.c_tree.filter(e):this.editNodePanel&&this.$refs.clone_c_tree.filter(e)},filter_q_enter:function(){var e=this.filter_q;this.step?this.$refs.c_tree.filter(e):this.editNodePanel&&this.$refs.clone_c_tree.filter(e)},filterCheckNode:function(e,t){if(!e||"dev_type"===t.nodetype)return!0;var i=e.split(/\s+/g),r=t;if("dev"!==r.nodetype)do{var n=this.$refs.dev_tree.getNode(r).parent;r=n?n.data:r}while(n&&"dev"!==r.nodetype);return this.filterMulty(r.label,i)},filterDevNode:function(e,t){if(!e)return!0;var i=e.split(/\s+/g);if(this.step){this.$refs.adev_tree.getNode(t)}else{this.$refs.clone_adev_tree.getNode(t)}var r=!1;return r="code"==this.filter_all_dev_type?this.filterMulty(t.code,i):this.filterMulty(t.label,i)},filterMulty:function(e,t){for(var i=0,r=!1;ithis.cur_report_type.type.length-1)&&(this.sketch_index=0),this.reInitSDate()},changeReportType:function(){var e=this.sketch.value,t=Math.floor(vm.substep);"yx"===e?this.substep=t:"dd"===e?this.substep=t+.01:"bb"===e?this.substep=t+.02:"cr"===e?this.substep=t+.03:"tj"===e?(this.substep=t+.05,this.reIniCheckNode()):"db"===e?this.substep=t+.06:"qx"===e&&(this.substep=t+.07)},reportIntervalClear:function(){this.report_interval=""},preview:function(){var e=JSON.parse(JSON.stringify({vm:vm.$data}));deleteReportFileItem(e),delete e.vm.checked_node,sessionStorage.setItem("dev_tree",pako.gzip(JSON.stringify(e.vm.dev_tree),{to:"string"})),delete e.vm.dev_tree,sessionStorage.setItem("vm",pako.gzip(JSON.stringify(e.vm),{to:"string"}))},menuSelect:function(e){if(4==e)this.configure=!0;else if(6==e);else if("1-1"==e)vm.filter_check_dev="",vm.filter_c="",vm.filter_q="",vm.filter_all_dev="",vm.filter_all_dev_type="name",0!=this.substep?this.$confirm("是否清除现有报表向导数据?","",{confirmButtonText:"是,从空白新建",cancelButtonText:"否,从现有新建",type:"warning",callback:function(e,t){"cancel"!==e&&(vm.cur_report_type=vm.report_types[0],vm.sketch=vm.report_types[0].type[0],vm.cur_report_style=vm.report_style[0],vm.sketch_index=0,vm.report_s_month=1,vm.report_s_day=1,vm.report_s_hours=0,vm.report_interval="1",vm.check_station=vm.station[0].id,vm.check_profession=vm.profession[0].id,vm.postDev(),vm.ck_cd=!0,vm.ck_cy=!0,vm.ck_sx=!0,vm.checked_node={nodes:[]},vm.checked_total_index=[],vm.checked_contrast_index=[],vm.cd_info_check={list:[]},vm.cols_width=[]),vm.substep=0,vm.step=!0}}):(this.substep=0,this.step=!0);else if("1-2"==e)this.reportFilesPanel=!0,this.isSave=!1;else if("1-3"==e){var t=JSON.parse(JSON.stringify({vm:vm.$data}));deleteReportFileItem(t),vm.openedFile.treeCode?this.$confirm('确定保存到报表"'+vm.openedFile.name+'"?',"",{confirmButtonText:"保存修改",cancelButtonText:"打开报表库",type:"warning",callback:function(e,i){"cancel"==e?(vm.reportFilesPanel=!0,vm.isSave=!0):(vm.openedFile.fileDetail=JSON.stringify(t),auReport(vm.openedFile))}}):(vm.reportFilesPanel=!0,vm.isSave=!0)}},tabClick:function(){},querySearchFont:function(e,t){t([{name:"宋体",value:"宋体",v:"SimSun"},{name:"新宋体",value:"新宋体",v:"SimSun"},{name:"仿宋",value:"仿宋",v:"SimSun"},{name:"楷体",value:"楷体",v:"SimSun"},{name:"黑体",value:"黑体",v:"SimSun"},{name:"微软雅黑",value:"微软雅黑",v:"Microsoft YaHei"},{name:"Arial",value:"Arial",v:"Arial"},{name:"Arial Black",value:"Arial Black",v:"Arial Black"},{name:"Times New Roman",value:"Times New Roman",v:"Times New Roman"},{name:"Courier New",value:"Courier New",v:"Courier New"},{name:"Tahoma",value:"Tahoma",v:"Tahoma"},{name:"Verdana",value:"Verdana",v:"Verdana"}])},querySearchSize:function(e,t){t([{value:"12px"},{value:"14px"},{value:"22px"},{value:"30px"},{value:"46px"}])},handleComplete:function(){},handleIconClick5:function(){this.state5=""},handleIconClick6:function(){this.state6=""},changeStyle:function(e){this.sidetabs="table",this.radio_form=e}},watch:{cols_parent:function(e){var t=this.devtree_to_option;this.protree_to_option=[],Array.prototype.push.apply(vm.protree_to_option,t[e].children)},checked_dev_index:function(e){var t=this.check_dev[e];return!!t&&(this.dev_name_text=t.label,this.dev_code_text=t.code,void(this.edit_node_type=t.nodetype))},radio_form:function(e,t){vm.form=vm[e]},show_field:function(e){this.$set(vm.dev_field,"label",e?"code":"label")},dev_tree:function(e,t){if(reiniting)return!1;var i=JSON.stringify(e),r=dataOp(JSON.parse(i),"x_tree");this.dev_map=getLastNode(JSON.parse(i));var n=this.border_style+";"+this.th_style,o="";if(this.time_map.length>0){var s,d,l=dataOp(JSON.parse(JSON.stringify(vm.time_tree)),"y_tree");0==this.cur_report_style.value?(o=widthTd(l.length,vm.dev_map.length),s=creatTHRow(r,l.length,n).str,d=creatTHCol(l,new Array(vm.dev_map.length+1).join('
 
'),n)):(o=widthTd(r.length,vm.time_map.length),s=creatTHRow(l,r.length,n).str,d=creatTHCol(r,new Array(vm.time_map.length+1).join('
 
'),n)),this.table=""+o+s+""+d+""}for(var a=0,c=0;a0){var s,d,l=dataOp(JSON.parse(JSON.stringify(vm.dev_tree)),"x_tree");new Array(vm.time_map.length+1).join('
 
');0!=this.cur_report_style.value?(o=widthTd(l.length,vm.time_map.length),s=creatTHRow(r,l.length,n).str,d=creatTHCol(l,new Array(vm.time_map.length+1).join('
 
'),n)):(o=widthTd(r.length,vm.dev_map.length),s=creatTHRow(l,r.length,n).str,d=creatTHCol(r,new Array(vm.dev_map.length+1).join('
 
'),n)),this.table=""+o+s+""+d+""}for(var a=0,c=0;a