//Common Bind Module Method var bindModule = function (thisModule, controllerProvider, compileProvider, filterProvider, provide) { thisModule.controller = controllerProvider.register; thisModule.directive = compileProvider.directive; thisModule.filter = filterProvider.register; thisModule.factory = provide.factory; thisModule.service = provide.service; return thisModule; }; // register common module for shared functionalities for all other feature modules var commonModule = angular.module('app.common', ['pascalprecht.translate', 'ngAnimate', 'ui.grid', 'ui.grid.selection', 'ui.grid.selection', 'ui.grid.treeView', 'ui.grid.resizeColumns', 'ui.grid.grouping', 'ui.grid.exporter', 'app.config', 'ui.grid.edit']) .run(['$log', function ($log) { $log.debug('app.common.run()...'); }]) // define the script files for lazy loading and method to create depencency map for resovle config in route .provider('scriptDependency', ['version', function (version) { 'use strict'; // Here must add version parameter ?v=***, // to solve the problem that the bundle is not refreshed when its content changed. this.commdataimport = [{ url: '/bundles/commdataimport.js?v=' + version, type: 'text/javascript' }, { url: '/bundles/commdataimport.css?v=' + version, type: 'text/css' }]; this.vat = [{ url: '/bundles/vat.js?v=' + version, type: 'text/javascript' }, { url: '/bundles/vat.css?v=' + version, type: 'text/css' }, { url: '/bundles/vat.less?v=' + version, type: 'text/css' }]; this.cit = [{ url: '/bundles/cit.js?v=' + version, type: 'text/javascript' }, { url: '/bundles/cit.css?v=' + version, type: 'text/css' }, { url: '/bundles/cit.less?v=' + version, type: 'text/css' }]; this.dataImport = [ { url: '/bundles/globalDataImport.js?v=' + version, type: 'text/javascript' }, { url: '/bundles/globalDataImport.css?v=' + version, type: 'text/css' }, { url: '/bundles/globalDataImport.less?v=' + version, type: 'text/css' } ]; this.noPermissionPage = [{ url: '/bundles/noPermissionPage.js?v=' + version, type: 'text/javascript' }, { url: '/bundles/noPermissionPage.less?v=' + version, type: 'text/css' }]; this.assetsManage = [{ url: '/bundles/assetsManage.js?v=' + version, type: 'text/javascript' }, { url: '/bundles/assetsManage.css?v=' + version, type: 'text/css' }, { url: '/bundles/assetsManage.less?v=' + version, type: 'text/css' }]; this.taxDocumentManage = [{ url: '/bundles/taxDocumentManage.js?v=' + version, type: 'text/javascript' }, { url: '/bundles/taxDocumentManage.css?v=' + version, type: 'text/css' }, { url: '/bundles/taxDocumentManage.less?v=' + version, type: 'text/css' }]; this.taxTaskManage = [{ url: '/bundles/taxTaskManage.js?v=' + version, type: 'text/javascript' }, { url: '/bundles/taxTaskManage.less?v=' + version, type: 'text/css' }]; this.summary = [ // { // url: '/bundles/summary.js?v=' + version, // type: 'text/javascript' //}, { url: '/bundles/summary.css?v=' + version, type: 'text/css' }]; this.createDependenciesMap = function (dependencies) { if (!angular.isArray(dependencies)) { throw new TypeError('"scriptUrls" should be an array type!'); } var dependenciesMap = { dependency: ['$q', '$rootScope', function ($q, $rootScope) { var deferred = $q.defer(); PWC.Loader.load(dependencies, function (hasNewJsLoaded) { // If has new JavaScript resource loaded, should call $apply, otherwise, // should not call it. if (hasNewJsLoaded) { $rootScope.$apply(function () { deferred.resolve(); }); } else { deferred.resolve(); } }); return deferred.promise; } ] }; return dependenciesMap; }; this.$get = function () { return { createDependenciesMap: createDependenciesMap, infrastructure: infrastructure, vat: vat, cit: cit, dataImport: dataImport, assetsManage: assetsManage, taxDocumentManage: taxDocumentManage, noPermissionPageModule: noPermissionPageModule, taxTaskManage: taxTaskManage //subjectCorrespondingInfrastructure: subjectCorrespondingInfrastructure //subjectCorresponding: subjectCorresponding, //configurationInfrastructure: configurationInfrastructure, //declarationFormConfiguration: declarationFormConfiguration }; }; }]); // register services module var webservices = angular.module('app.webservices', ['app.common']) .run(['$log', function ($log) { $log.debug('app.webservices.run()...'); }]); // register framework module for application framework var frameworkModule = angular.module('app.framework', ['app.webservices', 'app.common', 'app.vatDashboard', 'ui.dashboard']) .run(['$log', function ($log) { $log.debug('app.framework.run()...'); }]) .config(['$controllerProvider', '$urlRouterProvider', '$compileProvider', '$filterProvider', '$provide', 'scriptDependencyProvider', '$stateProvider', function ($controllerProvider, $urlRouterProvider, $compileProvider, $filterProvider, $provide, scriptDependencyProvider, $stateProvider) { 'use strict'; // this is required to add controller/directive/filter/service after angular bootstrap bindModule(frameworkModule, $controllerProvider, $compileProvider, $filterProvider, $provide); $stateProvider.state({ name: 'overview', url: '/overview', views: { '@': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.appPart]); }], template: '<app-overview servicetypeid="2"></app-overview>', } }, deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'notification', url: '/notification', views: { '@': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.appPart]); }], template: '<app-push-notification></app-push-notification>', } }, deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'overviewVat', url: '/overview/vat', views: { '@': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.appPart]); }], template: '<app-overview servicetypeid="2"></app-overview>', } }, deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'overviewAssetsManage', url: '/overview/assetsManage', views: { '@': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.appPart]); }], template: '<app-overview servicetypeid="12"></app-overview>', } }, deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'overviewCit', url: '/overview/cit', views: { '@': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.appPart]); }], template: '<app-overview servicetypeid="6"></app-overview>', } }, deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'taxDocumentManage', url: '/documentManage/taxDocumentManage/:id', views: { '@': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.appPart]); }], template: '<document-manage></document-manage>', } }, deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'summary', url: '/summary', views: { '@': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.appPart]); }], template: '<app-summary></app-summary>', } }, resolve: scriptDependencyProvider.createDependenciesMap(_.flatten([scriptDependencyProvider.summary, scriptDependencyProvider.vat])), deepStateRedirect: true, sticky: true }); } ]); // register cache module for application framework var cacheModule = angular.module('app.cache', ['app.common']) .run(['$log', 'cacheService', function ($log, cacheService) { $log.debug('app.cache.run()...'); }]); var vatModule = angular.module('app.vat', ['ui.grid', 'ui.grid.selection', 'ui.grid.moveColumns', 'ui.grid.grouping', 'ui.grid.expandable', 'ui.grid.treeView', 'ui.grid.exporter', 'ui.grid.resizeColumns', 'mc.resizer', 'ui.select', 'ngAnimate', 'ngSanitize', 'ui.bootstrap', 'ui.grid.edit', 'perfect_scrollbar', 'dx', 'ui.grid.pinning',]) .run(['$log', function ($log) { $log.debug('app.vat.run()...'); }]) .config(['$controllerProvider', '$urlRouterProvider', '$compileProvider', '$filterProvider', '$provide', '$stateProvider', 'uiSelectConfig', 'scriptDependencyProvider', function ($controllerProvider, $urlRouterProvider, $compileProvider, $filterProvider, $provide, $stateProvider, uiSelectConfig, scriptDependencyProvider) { 'use strict'; // this is required to add controller/directive/filter/service after angular bootstrap bindModule(vatModule, $controllerProvider, $compileProvider, $filterProvider, $provide); uiSelectConfig.theme = 'select2'; $stateProvider.state({ name: 'vat', url: '/vat', cache: false, views: { '@': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-layout></vat-layout>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.importData', url: '/importData', views: { '@vat': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-import-layout></vat-import-layout>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.importData.balanceSheet', url: '/balanceSheet', views: { '@vat.importData': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-import-trial-balance></vat-import-trial-balance>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.importData.journalEntry', url: '/journalEntry', views: { '@vat.importData': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-import-journal-entry></vat-import-journal-entry>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.importData.erpData', url: '/erpData', views: { '@vat.importData': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-import-erp></vat-import-erp>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.importData.outputInvoice', url: '/outputInvoice', views: { '@vat.importData': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-import-output-invoice></vat-import-output-invoice>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.importData.inputInvoice', url: '/inputInvoice', views: { '@vat.importData': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-import-income-invoice></vat-import-income-invoice>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.importData.customInvoice', url: '/customInvoice', views: { '@vat.importData': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-import-custom-invoice></vat-import-custom-invoice>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.importData.voucherMapping', url: '/voucherMapping', views: { '@vat.importData': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-voucher-mapping></vat-voucher-mapping>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.importData.invoiceMapping', url: '/invoiceMapping', views: { '@vat.importData': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-invoice-mapping></vat-invoice-mapping>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.importData.auditAdjust', url: '/auditAdjust', views: { '@vat.importData': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-audit-adjust></vat-audit-adjust>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.previewData', url: '/previewData', views: { '@vat': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-import-layout></vat-import-layout>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.previewData.balanceSheet', url: '/balanceSheet', views: { '@vat.previewData': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-preview-balance-sheet></vat-preview-balance-sheet>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.previewData.accountVoucher', url: '/accountVoucher', views: { '@vat.previewData': { controller: [ '$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); } ], template: '<vat-preview-account-voucher></vat-preview-account-voucher>' } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.previewData.outputInvoice', url: '/outputInvoice', views: { '@vat.previewData': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-preview-output-invoice></vat-preview-output-invoice>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.previewData.inputInvoice', url: '/inputInvoice', views: { '@vat.previewData': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-preview-input-invoice></vat-preview-input-invoice>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.previewData.customInvoice', url: '/customInvoice', views: { '@vat.previewData': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-preview-custom-invoice-sheet></vat-preview-custom-invoice-sheet>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.reductionData', url: '/reductionData', views: { '@vat': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-import-layout></vat-import-layout>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.reductionData.accountMapping', url: '/accountMapping', views: { '@vat.reductionData': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-account-mapping></vat-account-mapping>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.reductionData.goodsMapping', url: '/goodsMapping', views: { '@vat.reductionData': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-goods-mapping></vat-goods-mapping>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.reductionData.caculateData', url: '/caculateData', views: { '@vat.reductionData': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-caculate-data></vat-caculate-data>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.reductionData.inputInvoice', url: '/inputInvoice', views: { '@vat.reductionData': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<p>inputInvoice</p>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.reductionData.unbilledInvoice', url: '/unbilledInvoice', views: { '@vat.reductionData': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-unbilled-invoice></vat-unbilled-invoice>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.generateReport', url: '/generateReport', views: { '@vat': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { $scope.isFromTopMenu = true; appTranslation.load([appTranslation.vat]); }], template: '<vat-report-layout></vat-report-layout>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: false, sticky: false }); $stateProvider.state({ name: 'vat.generateReport.reportView', url: '/reportView?{id:string}&{templateid:string}&{name:string}&{templatecode:string}', views: { '@vat.generateReport': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { $scope.reportId = $stateParams.id; $scope.templateId = $stateParams.templateid; $scope.templateName = $stateParams.name; $scope.templateCode = $stateParams.templatecode; appTranslation.load([appTranslation.vat]); }], template: '<vat-report-view report-id="reportId" template-id="templateId" template-name="templateName" template-code="templateCode" service-type="\'2\'"></vat-report-view>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: false, sticky: false }); /**********a beautiful separated line for analyzeReport*********/ $stateProvider.state({ name: 'vat.analyzeLayout', url: '/analyzeLayout', views: { '@vat': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-analysis-menu></vat-analysis-menu>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.analyzeLayout.analyzeReport', url: '/analyzeReport', views: { '@vat.analyzeLayout': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-model-analysis></vat-model-analysis>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.analyzeLayout.vatTaxDifference', url: '/vatTaxDifference', views: { '@vat.analyzeLayout': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-tax-difference></vat-tax-difference>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.analyzeReport', url: '/analyzeReport', views: { '@vat': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-model-analysis></vat-model-analysis>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.analyzeReport.dataSummary', url: '/dataSummary', views: { '@vat': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-data-summary></vat-data-summary>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.analyzeReport.vatAnalysis', url: '/vatAnalysis', views: { '@vat': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-vat-analysis></vat-vat-analysis>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.analyzeReport.financeTargetAnalysis', url: '/financeTargetAnalysis', views: { '@vat': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-finance-target-analysis></vat-finance-target-analysis>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); $stateProvider.state({ name: 'vat.analyzeReport.vatModelAnalysis', url: '/vatModelAnalysis', views: { '@vat': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<vat-model-analysis></vat-model-analysis>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); /**********the end of a beautiful separated line for analyzeReport*********/ $stateProvider.state({ name: 'vat.devGrid', url: '/devGrid', views: { '@vat': { controller: ['$scope', '$stateParams', 'appTranslation', function ($scope, $stateParams, appTranslation) { appTranslation.load([appTranslation.vat]); }], template: '<dev-grid></dev-grid>', } }, resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), deepStateRedirect: true, sticky: true }); }]);