Browse Source

解决bug,扩展底部区域的组件,符合评价分析页面的需求(在市级和区级情况不显示团队tab)

raolu 7 years ago
parent
commit
5557cb8743

+ 1 - 1
app/statistics/estimate-analysis.html

@ -29,7 +29,7 @@
            <header-prompt></header-prompt>
            <div class="c-t-center mt20">
                <div class="tag">
                    <div class="c-f16 c-bold c-333">{{avg}}</div>
                    <div class="c-f16 c-bold c-333">{{avg || '暂无评分'}}</div>
                    <div class="c-f14 c-666 mt5">平均评分</div>
                </div>
            </div>

+ 18 - 12
app/statistics/js/estimate-analysis.js

@ -33,8 +33,10 @@ new Vue({
                level: this.level,
                area: this.area,
                areaTitle: this.areaTitle,
                lowLevel: this.lowLevel,
                endDate: this.endDate
                index: this.index,
                endDate: this.endDate,
                startDate: this.startDate,
                lowLevel: this.lowLevel
            })
        }
    },
@ -110,7 +112,7 @@ function initReqParams(vm){
        data: {level: vm.level, area: vm.area, statDate: vm.startDate, endDate: vm.endDate}
    },{
        url: "/statistics/lowlevel_all",
        data: {level: vm.level, area: vm.area, index: vm.index, sort: 1, date: vm.endDate, lowlevel: vm.lowLevel}
        data: {level: vm.level, area: vm.area, index: vm.index, sort: 1, date: vm.endDate, lowLevel: vm.lowLevel}
    }];
    
    return param;
@ -132,7 +134,11 @@ function loadData(loadArr, vm){
        }
    }
    
    //因为中间区域的请求时间较长,所以另外放出来处理
    if(sendPanelReq.length > 0){
        //删除loadArr里的1
        var index = loadArr.indexOf(1);
        loadArr.splice(index, 1);
        statisticAPI.getAVGSocreByMonth(sendPanelReq[0].data).then(function(res){
            if(res.status == 200){
                handleSecondPanelData(res.data, vm);
@ -143,15 +149,13 @@ function loadData(loadArr, vm){
    }
    if(reqPromise.length > 0){
        Promise.all(reqPromise).then(function(ress){
            var res1, res2, res2;
            var res1, res2, res3;
            for(var i=0; i<loadArr.length; i++){
                var j = loadArr[i] + 1;
                if(j == 1){
                    res1 = ress[i];
                }
                if(j == 2){
                    res2 = ress[i];
                }
                
                if(j == 3){
                    res3 = ress[i];
                }
@ -172,11 +176,11 @@ function loadData(loadArr, vm){
//              }
//              
//          }
            if(res2){
                if(res2.status == 200){
                    listHandle(res2.data, vm);
            if(res3){
                if(res3.status == 200){
                    listHandle(res3.data, vm);
                }else{
                    console.log(res2.msg);
                    console.log(res3.msg);
                }
            }
        })
@ -214,7 +218,9 @@ function listHandle(data, vm){
            area: vm.area,
            lowLevel: vm.lowLevel,
            headers: ["排名", "平均评分"],
            rows: arr
            rows: arr,
            cityLevelNoShowTeamTab: true,
            districtLevelNoShowTeamTab: true
        });
    }
}

+ 27 - 2
component/statistics/area-data-panel.js

@ -4,7 +4,7 @@
                <div class="area-tab-panel">\
                    <div v-show="level==4" class="area-tab" :class="{\'active\': level==4 && (!lowLevel || lowLevel==3)}" @click="getLowCodeData(3)"><span>各区</span></div>\
                    <div v-show="level >= 3" class="area-tab" :class="{\'active\': (level==3 && lowLevel!=1) || lowLevel==2}" @click="getLowCodeData(2)"><span>社区</span></div>\
                    <div class="area-tab" :class="{\'active\': level==2 || lowLevel==1}" @click="getLowCodeData(1)"><span>团队</span></div>\
                    <div v-show="showTeamTab" class="area-tab" :class="{\'active\': level==2 || lowLevel==1}" @click="getLowCodeData(1)"><span>团队</span></div>\
                </div>\
                <table class="bottom-list-table mb20" id="listTable">\
                    <thead><tr>\
@ -30,7 +30,9 @@
                lowLevel: '',
                area: '',
                headers: [],
                rows: []
                rows: [],
                cityLevelNoShowTeamTab: false,
                districtLevelNoShowTeamTab: false
            }
        },
        mounted: function(){
@ -41,8 +43,31 @@
                vm.area = arg.area;
                vm.headers = arg.headers;
                vm.rows = arg.rows;
                vm.cityLevelNoShowTeamTab = arg.cityLevelNoShowTeamTab;
                vm.districtLevelNoShowTeamTab = arg.districtLevelNoShowTeamTab;
            })
        },
        computed: {
            showTeamTab: function(){
                if(this.cityLevelNoShowTeamTab){
                    if(this.level == 4){
                        return false;
                    }else{
                        if(this.districtLevelNoShowTeamTab){
                            if(this.level == 3){
                                return false;
                            }else{
                                return true;
                            }
                        }else{
                            return true;
                        }
                    }
                }else{
                    return true;
                }
            }
        },
        methods: {
            getLowLeverData: function(row){
                if(this.level > 2 && this.lowLevel != 1){