| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148 |
- const app = getApp();
- import * as echarts from '../../../../ec-canvas/echarts' // 这个是自己实际的目录
- Component({
- data:{
- Ec: { lazyLoad: true, },
- },
- lifetimes: {
- attached: function () {
- var token = wx.getStorageSync('token');
- if(!token){
- var list = [
- {name:"支",data:[{name:"北京",value:30,},{name:"上海",value:30,},{name:"杭州",value:20,},{name:"天津",value:30,}]},
- {name:"包",data:[{name:"北京",value:50,},{name:"上海",value:30,},{name:"杭州",value:30,},{name:"天津",value:30,}]},
- {name:"箱",data:[{name:"北京",value:50,},{name:"上海",value:30,},{name:"杭州",value:30,},{name:"天津",value:30,}]},
- {name:"托盘",data:[{name:"北京",value:50,},{name:"上海",value:30,},{name:"杭州",value:30,},{name:"天津",value:30,}]},
- ]
- this.init(list);
- }
- },
- moved: function () { },
- detached: function () { },
- },
- properties:{
- prductIndex:{
- type:String,
- value:'',
- }
- },
- observers:{
- 'prductIndex':function(nv,ol){
- var token = wx.getStorageSync('token');
- if(token && nv){
- this.getCityPackageTypeState(nv);
- }
- }
- },
- methods:{
- getCityPackageTypeState(productName){
- app.requestP({
- url: '/daping/cityPackageTypeState?productName='+productName,
- method: 'post',
- }).then(res=>{
- var packageType = [{name:'支',type:10},{name:'包',type:20},{name:'箱',type:30},{name:'托盘',type:40},{name:'其他',type:50}];
- var datas = [];
- for (var index = 0; index < packageType.length; index++) {
- var types = [];
- res.data.data.map((item,i)=>{
- types.push({
- name:item.city,value:item[packageType[index].type],
- })
- if(i == res.data.data.length-1){
- datas.push(
- {name:packageType[index].name, data:types}
- )
- }
- })
- }
- this.initChart(datas);
- })
- },
- initChart(list){
- var that = this;
- that.selectComponent('#chartConDom').init((canvas, width, height, dpr) => {
- const chart = echarts.init(canvas, null, {
- width: width,
- height: height,
- devicePixelRatio: dpr
- });
- var option = that.getOrderWarnOption(list);
- chart.setOption(option);
- return chart;
- });
- },
- getOrderWarnOption(list){
- var fontSize = 10
- var fontColor = "#999999"
- return {
- color:["#7A4AFF","#28E556","#2D59E6","#FFAE36","#EA1C43",],
- title:{
- text:"不同产品包装",
- show:0,
- textStyle:{
- color:fontColor,
- fontSize:fontSize,
- },
- left:'1%',
- top:0,
- },
- grid: {
- top: '20%',
- left: '6%',
- right: '4%',
- bottom: '3%',
- containLabel: true
- },
- legend:{
- icon:"circle",
- right:'10%',
- top:0,
- itemWidth:fontSize*0.8,
- itemHeight:fontSize*0.8,
- textStyle:{
- fontSize:fontSize,
- color:fontColor,
- },
- data:list.map(item=>item.name)
- },
- tooltip: {
- trigger: 'axis',
- axisPointer: {
- type: 'cross',
- }
- },
- yAxis: {
- type: 'value',
- axisTick:{show:false,},
- axisLabel:{
- fontSize:fontSize,
- color:fontColor,
- },
- },
- xAxis: {
- type: 'category',
- axisTick:{show:false,},
- axisLabel:{
- fontSize:fontSize,
- color:fontColor,
- },
- data:list.length ? list[0].data.map(item=>item.name) : []
- },
- series:this.setOptItem(list),
- }
- },
- setOptItem(list){
- var data = []
- for(var i in list){
- data.push({
- type: 'bar',
- silent:1,
- barMaxWidth:this.fontSize*1.5,
- name:list[i].name,
- data:list[i].data
- })
- }
- return data
- },
- },
- })
|