Advertisement
Guest User

Untitled

a guest
Apr 22nd, 2018
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var app = angular.module('autoKsiegowy', ['ngRoute']);
  2.  
  3. app.controller("ListaWydatkowController", function($scope,Wydatki) {
  4.     $scope.wydatki =  Wydatki.lista();
  5.  
  6.     this.usunWydatek = function (wydatek) {
  7.       Wydatki.usun(wydatek);
  8.     };
  9. });
  10.  
  11. app.controller("DodajWydatekController", function($scope,$location,Wydatki,$routeParams) {
  12.  
  13.     $scope.param1 = $routeParams.param1;
  14.     $scope.wydatki = Wydatki.lista();
  15.  
  16.     $scope.nowyWydatek = Wydatki.nowyWydatek();
  17.  
  18.     this.zapiszWydatek = function() {
  19.         Wydatki.dodaj($scope.nowyWydatek);
  20.  
  21.         $scope.nowyWydatek = Wydatki.nowyWydatek();
  22.  
  23.         $location.path('#/');
  24.     };
  25.  
  26.     this.wyswietlListe = function () {
  27.  
  28.         $scope.kategorie = Wydatki.listaKat();
  29.     };
  30. });
  31.  
  32. app.controller("ZarzadzajListaController",function ($scope,Wydatki) {
  33.  
  34.     $scope.kategorie =  Wydatki.listaKat();
  35.  
  36.     this.usunKategorie = function (kategoria) {
  37.         Wydatki.usunKategorie(kategoria);
  38.     };
  39.  
  40.  
  41. });
  42.  
  43. app.controller("DodajKategorieController",function ($scope,Wydatki) {
  44.  
  45.     $scope.kategorie = Wydatki.listaKat();
  46.  
  47.     $scope.nowaKategoria = Wydatki.nowaKategoria();
  48.  
  49.     this.zapiszKategorie = function() {
  50.         Wydatki.dodajKat($scope.nowaKategoria);
  51.  
  52.         $scope.nowaKategoria = Wydatki.nowaKategoria();
  53.  
  54.         $location.path('#/zarzadzaj');
  55.     };
  56.  
  57.  
  58. });
  59.  
  60. app.config(function($routeProvider) {
  61.     $routeProvider
  62.         .when('/', {
  63.             templateUrl: 'view.glowna.html',
  64.             controller: 'ListaWydatkowController as lista'
  65.         })
  66.         .when('/dodaj/:param1', {
  67.             templateUrl: 'view.dodajwydatek.html',
  68.             controller: 'DodajWydatekController as lista'
  69.         })
  70.  
  71.         .when('/zarzadzaj', {
  72.             templateUrl: 'view.zarzadzajlista.html',
  73.             controller: 'ZarzadzajListaController as lista'
  74.         })
  75.  
  76.         .when('/zarzadzaj/dodaj', {
  77.             templateUrl: 'view.dodajkategorie.html',
  78.             controller: 'DodajKategorieController as lista'
  79.         })
  80.  
  81.         .otherwise({
  82.             redirectTo: '/'
  83.         });
  84. });
  85.  
  86.  
  87.  
  88. app.service("Wydatki", function() {
  89.  
  90.     var self = this;
  91.  
  92.     self.kategorie = [
  93.         {
  94.             kategoria:'Tankowanie',
  95.             id:1
  96.         },
  97.         {
  98.             kategoria:'Myjnia',
  99.             id:2
  100.         },
  101.         {
  102.             kategoria:'Inne',
  103.             id:3
  104.         }
  105.     ];
  106.  
  107.     self.wydatki = [
  108.         {
  109.             id: 1,
  110.             kwota: 276.70,
  111.             kategoria: 'Tankowanie',
  112.             data: new Date(),
  113.             ileLitrow: 47.1,
  114.             ileKm: 532
  115.  
  116.  
  117.         },
  118.         {
  119.             id: 2,
  120.             kwota: 150,
  121.             kategoria: 'Myjnia',
  122.             data: new Date('2016-12-07T12:24:00')
  123.         },
  124.         {
  125.             id: 3,
  126.             kwota: 163.80,
  127.             kategoria: 'Tankowanie',
  128.             data: new Date('2016-12-08T17:30:00'),
  129.             ileLitrow: 47.1,
  130.             ileKm: 532
  131.         },
  132.         {
  133.             id: 4,
  134.             kwota: 249.99,
  135.             kategoria: 'Inne',
  136.             data: new Date('2016-12-01T18:44:35'),
  137.             uwagi: 'Różowe futerko na kierownicę'
  138.         }
  139.     ];
  140.  
  141.     self.lista = function() {
  142.         return self.wydatki;
  143.     };
  144.  
  145.     self.listaKat = function() {
  146.         return self.kategorie;
  147.     };
  148.  
  149.     self.dodaj = function(wydatek) {
  150.         self.maxId++;
  151.         wydatek.id = self.maxId;
  152.         self.wydatki.push(wydatek);
  153.         self.zapiszModel();
  154.     };
  155.  
  156.     self.dodajKat = function(kategoria) {
  157.         self.maxId++;
  158.         kategoria.id = self.maxId;
  159.         self.kategorie.push(kategoria);
  160.         self.zapiszModelKat();
  161.     };
  162.  
  163.  
  164.     self.nowyWydatek = function() {
  165.  
  166.         return {
  167.  
  168.             kategoria: '',
  169.             data: new Date()
  170.         };
  171.     };
  172.  
  173.     self.nowaKategoria = function() {
  174.  
  175.         return {
  176.  
  177.             kategoria: ''
  178.         };
  179.     };
  180.  
  181.  
  182.     self.usun = function (wydatek) {
  183.         var ind = self.wydatki.findIndex(function (w) {
  184.             return w.id === wydatek.id;
  185.         });
  186.         self.wydatki.splice(ind,1);
  187.         self.zapiszModel();
  188.     };
  189.  
  190.     self.usunKategorie = function (kategoria) {
  191.         var ind = self.kategorie.findIndex(function (w) {
  192.             return w.id === kategoria.id;
  193.         });
  194.         self.kategorie.splice(ind,1);
  195.         self.zapiszModelKat();
  196.     };
  197.  
  198.     self.maxId = 4;
  199.  
  200.     self.zapiszModel = function() {
  201.         var wydatkiString = angular.toJson(self.wydatki);
  202.         window.localStorage.setItem('am.auto.ksiegowy.wydatki', wydatkiString);
  203.         window.localStorage.setItem('am.auto.ksiegowy.maxId', self.maxId);
  204.     };
  205.  
  206.     self.zapiszModelKat = function() {
  207.         var kategorieString = angular.toJson(self.kategorie);
  208.         window.localStorage.setItem('am.auto.ksiegowy.kategorie', kategorieString);
  209.         window.localStorage.setItem('am.auto.ksiegowy.maxId', self.maxId);
  210.     };
  211.  
  212.     self.odczytajModel = function() {
  213.         var wydatkiString = window.localStorage.getItem('am.auto.ksiegowy.wydatki');
  214.         var maxIdString = window.localStorage.getItem('am.auto.ksiegowy.maxId');
  215.  
  216.         if(wydatkiString) {
  217.             self.wydatki = angular.fromJson(wydatkiString);
  218.             self.maxId = Number(maxIdString);
  219.         } else {
  220.             self.wydatki = [
  221.                 {
  222.                     id: 1,
  223.                     kwota: 276.70,
  224.                     kategoria: 'Tankowanie',
  225.                     data: new Date(),
  226.                     ileKm: 500,
  227.                     ileLitrow: 45
  228.                 },
  229.                 {
  230.                     id: 2,
  231.                     kwota: 150,
  232.                     kategoria: 'Myjnia',
  233.                     data: new Date('2016-12-07T12:24:00')
  234.                 },
  235.                 {
  236.                     id: 3,
  237.                     kwota: 163.80,
  238.                     kategoria: 'Tankowanie',
  239.                     data: new Date('2016-12-08T17:30:00'),
  240.                     ileKm: 430,
  241.                     ileLitrow: 39
  242.                 },
  243.                 {
  244.                     id: 4,
  245.                     kwota: 249.99,
  246.                     kategoria: 'Inne',
  247.                     data: new Date('2016-12-01T18:44:35'),
  248.                     uwagi: 'Różowe futerko na kierownicę'
  249.                 }
  250.             ];
  251.             self.maxId = 4;
  252.         }
  253.     };
  254.  
  255.     self.odczytajModelKat = function() {
  256.         var kategorieString = window.localStorage.getItem('am.auto.ksiegowy.kategorie');
  257.         var maxIdString = window.localStorage.getItem('am.auto.ksiegowy.maxId');
  258.  
  259.         if(kategorieString) {
  260.             self.kategorie = angular.fromJson(kategorieString);
  261.             self.maxId = Number(maxIdString);
  262.         } else {
  263.             self.kategorie = [
  264.                 {
  265.                     kategoria:'Tankowanie',
  266.                     id:1
  267.                 },
  268.                 {
  269.                     kategoria:'Myjnia',
  270.                     id:2
  271.                 },
  272.                 {
  273.                     kategoria:'Inne',
  274.                     id:3
  275.                 }
  276.             ];
  277.             self.maxId = 4;
  278.         }
  279.     };
  280.     self.odczytajModel();
  281.     self.odczytajModelKat();
  282. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement