import ngModule from '../module';
import ModuleCard from 'salix/components/module-card';

class Controller extends ModuleCard {
    reload() {
        let filter = {
            fields: [
                'id',
                'workerFk',
                'agencyModeFk',
                'created',
                'm3',
                'warehouseFk',
                'description',
                'vehicleFk',
                'kmStart',
                'kmEnd',
                'started',
                'finished',
                'cost',
                'zoneFk',
                'isOk'
            ],
            include: [
                {
                    relation: 'agencyMode',
                    scope: {
                        fields: ['id', 'name']
                    }
                }, {
                    relation: 'vehicle',
                    scope: {
                        fields: ['id', 'm3']
                    }
                }, {
                    relation: 'zone',
                    scope: {
                        fields: ['id', 'name']
                    }
                },
                {
                    relation: 'worker',
                    scope: {
                        fields: ['id'],
                        include: {
                            relation: 'user',
                            scope: {
                                fields: ['id'],
                                include: {
                                    relation: 'emailUser',
                                    scope: {
                                        fields: ['email']
                                    }
                                }
                            }
                        }
                    }
                }
            ]
        };

        this.$http.get(`Routes/${this.$params.id}`, {filter})
            .then(res => this.route = res.data);
    }
}

ngModule.vnComponent('vnRouteCard', {
    template: require('./index.html'),
    controller: Controller
});