BarChart_wev8.js
3.73 KB
define("BarChart_html",function(){return'<div id="NMEC_${id}" class="wev-comp-${compType}">\t<div class="wev-chart-container">\t\t$${loading.content}\t\t<div class="wev-chart" style="${style}"></div>\t\t<div class="wev-error" style="display:none;"></div>\t</div></div>'}),define(["mUtil","Component","wev-loading","chartHelper"],function(F,a,e,_){return a.init(function(t){var n,S,o={};a.super(this,t),this.type="BarChart",this.tpl=this.type+"_html",this.css="chart_css",this.components={loading:new e({delay:300,animation:1})};var k=this.viewModel={data:[],dataAxis:"xAxis",height:400,title:{show:!1,x:"center",y:0,text:"",subtext:""},grid:{},legend:{show:!0,bottom:0,textStyle:{color:"#333"}},axisLabel:{interval:"auto",rotate:0,textStyle:{fontSize:12}},isShowMarkPoint:!1,isShowMarkLine:!1,color:"#c23531,#2f4554,#61a0a8,#d48265,#91c7ae,#749f83,#ca8622,#bda29a,#6e7074,#546570,#c4ccd3",labelFormat:"",advancedSearch:{},standalone:!0};this.beforeMount=function(){var t="",a=parseFloat(k.height)||400,e=parseFloat(k.width);if(t+="height:"+a+"px;",t+=e&&"width:"+e+"px;"||"",k.style=t,F.isString(k.click)&&""!=k.click){var i=k.click;k.click=function(t){var a=i.replace(/\{_chart_name}/g,t.name).replace(/\{_chart_seriesName}/g,t.seriesName).replace(/\{_chart_value}/g,t.value);$u(a)}}},this.mounted=function(){n=this.$el.find(".wev-error"),S=this.$el.find(".wev-chart"),this.refresh()},this.refresh=function(){var t=this.components.loading;t.setRefs(this.$comp,"wev-refreshing"),t.show();var a=t.hide.bind(t);k.standalone&&F.isArray(k.data)?o.buildChart(k.data,a):o.loadData(a)},this.cacheSearchLast=function(t){k.searchLast=t},o.loadData=function(a){var t=k.data,e=this,i=(new Date).valueOf();e.timestamp=i,k.standalone||(t=F.getActionUrl(this.type,{action:"getDatas",mec_id:k.id},this.pageid)),t&&F.getJSON(t,{},function(t){i==e.timestamp&&(o.buildChart(t.data,a),n.html("").hide(),k.advancedSearch.enable&&(k.toolbox={showTitle:!1,itemSize:28,y:35,feature:{myTool:{show:!0,icon:"image:///mobilemode/mobile/images/plugin/filter.png",onclick:function(){require(["mService"],function(t){t.show("customsearch",{id:e.id,pageid:e.pageid,searchLast:k.searchLast||{},conditions:k.advancedSearch.asFields,title:k.title.text||""})})}},myToolEmpty:{show:!0,icon:"image://data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVQImWNgYGBgAAAABQABh6FO1AAAAABJRU5ErkJggg=="}}}))},function(t){n.html(t).show(),S.hide(),F.isFunction(a)&&a.call(this)})},o.buildChart=function(w,x){require(["echarts"],function(t){for(var a=t.init(S[0]),e=[],i=[],n=[],o=0;o<w.length;o++){var r=w[o],l=0;for(var s in r){var c=r[s];if(0==o&&0<l&&e.push(s),0==l&&i.push(c),0<l){(v=n[l-1])||(v={},n[l-1]=v),0==o&&(v.name=s);var h=v.data;h||(h=[],v.data=h),h.push(c)}l++}}var d=k.isShowMarkPoint,m=k.isShowMarkLine,u=[];for(o=0;o<n.length;o++){var v={name:n[o].name,type:"bar",data:n[o].data};d&&(v.markPoint={data:[{type:"max",name:"最大值"},{type:"min",name:"最小值"}],symbolSize:function(t){var a=10*t.toString().length;return 50<a&&a||50},itemStyle:{normal:{label:{show:!0,formatter:function(t){return _.formatNumber(t.value,k.labelFormat)}}}}}),m&&(v.markLine={data:[{type:"average",name:"平均值"}],itemStyle:{normal:{label:{show:!0,formatter:function(t){return _.formatNumber(t.value,k.labelFormat)}}}}}),u.push(v)}var g=k.dataAxis||"yAxis",f=k.legend;f.data=e;var p=[{type:"category",data:i,axisLabel:k.axisLabel}],A=[{type:"value"}],b={title:k.title,tooltip:{trigger:"axis"},grid:k.grid,legend:f,calculable:!0,xAxis:"yAxis"==g?p:A,yAxis:"yAxis"==g?A:p,series:u,toolbox:k.toolbox},y=k.color;y&&(b.color=y.split(",")),a.setOption(b),k.click&&F.isFunction(k.click)&&a.on("click",function(t){k.click.call(this,t)}),F.isFunction(x)&&x.call(this)})},o.buildChart=o.buildChart.bind(this),o.loadData=o.loadData.bind(this)})});