Opublikowano

8 krok w aplikacji TAX FREE

„fatal error: unexpectedly found nil while unwrapping an Optional value”

Próbowałam ustawić value na polach checkbox,(bo dziedziczy z klasy UIButton) tak aby zapamiętywać je w tablicy wartości wybranych a tu nie da się… 

Przyczyną była próba ustawienia wartości jeszcze przed utworzeniem buttona, czyli trzeba to dodać po sprawdzeniu czy checkbox nie jest nil w DetailView. Czyli tak:

if let button = self.chbAGD

        {

            button.setTitle(„AGD”, for: [])

            button.setValue(value: „AGD”)

        }

Dodałam do każdego CheckBox value, aby później każdy zaznaczony pobierać do tablicy w klasie Rachunek.listaAsortymentu.

Zaczynam pisać klasę Validator, w której będę na podstawie przekazywanego parametru sprawdzać poprawność pól. Będę używać klasy NSRegularExpression.

Opublikowano

7 krok w TAX FREE

Przez to że nie udaje się wyklikać, aż się nie chce siadać do tego. Ale uff, udało się i poszło. Można iść dalej.

Do tego rodzina potrzebuje matki i trzeba zachować „life-balancing”. Ten projekt koduję dla siebie, więc nie ma takiego pośpiechu jak kiedy klient „stoi nad głową”.

Kolejnym problemem okazała się lista checkboxów, bo w standardzie IOS/Swift ich nie ma. Trzeba kombinować z podmienianiem obrazka na buttonie.

Udało się ogarnąć scrolling i wszystkie kontrolki załadowane do widoku (trzeba je jeszcze dostosować oczywiście):

Pojawił się problem z wielkością czcionki, bo nie wygląda to dobrze jak tekst obok jednego checkboxu jest mniejszy.

Plany na tydzień następny:

– Dopisać walidatory do każdego pola

– Załadować dane do obiektu klasy Rachunek

– Spróbować stworzyć i zapisać dane do lokalnej bazy danych.

– Uzupełnić pola w formularzu odpowiednimi ikonkami takimi jak pole scrolling i datepicker.

Opublikowano

6 krok w aplikacji TAX FREE

Stwierdziłam, że za mało kolorów w tej aplikacji i zmieniłam 🙂 Wydaje mi się że jest lepiej:

Splash screen TAX FREE
Splash screen TAX FREE

Poza tym ostatnią szansę daję kontrolkom Cosmic Mind, są tak nieintuicyjne, brak jest dokumentacji, siedzę i meczę się z tym. Tutaj znalazłam fajny przykład na nie, tym razem może się uda: https://alexanderpaterson.com/posts/hot-pod-material-controls-for-ios

Opublikowano

5 krok w aplikacji TAX FREE

Stwierdziłam, że każde postępy w aplikacji będę oznaczać tytułem numerowanym, natomiast wpisy luźne, ale związane z informatyką nie (dla oznaczenia, gdyby kogoś nie interesowały moje wywody 🙂

Zasugerowałam się opiniami na github i doinstalowałam kontrolki CosmicMind: https://github.com/CosmicMind/Material

Porównując kontrolki pierwszego frameworku, ten CosmicMind nie jest tak intuicyjny jak Material, więc będę korzystać z obu – w pliku podfile potrzebnego do instalacji frameworków w projekcie, teraz mam 2 „w razie potrzeby”.

Chciałoby się szybko wyklikać i żeby wszystko działało, bo czas goni. A czas spędzam na wertowaniu różnego rodzaju tutoriali, a to jak zrobić przewijany formularz, a to jak skorzystać z CosmicMind, i jeszcze czytam i działam jak zrobić blog w Symphony 2.8: http://tutorial.symblog.co.uk

Zrobiłam też splash screen do aplikacji i menu wysuwane:

Splash screen w TAX FREE
Splash screen w TAX FREE wersja 1

Lekka zmiana kolorów i lekko inny „hamburger” zgodnie z framework CosmicMind.

Opublikowano

Programowanie a macierzyństwo

Programowanie a macierzyństwo
Programowanie a macierzyństwo

Wczoraj po obejrzeniu kolejnego odcinka vbloga Maćka Aniserowicza: https://www.youtube.com/watch?v=_-94ngC813w przeszedł mi do głowy pomysł na wpis dzisiejszy. Dziś mowa o przerwie w programowaniu, tj. czasie macierzyństwa i godzin niewyspania.

Cały ten czas był super!… Ale odkrywa się to po czasie. Miałam to szczęście, że z racji zatrudnienia w państwowej firmie, nie było problemu ze zwolnieniami, urlopami macierzyńskimi i powrotami do pracy po.

Moja córka była najbardziej wyczekiwanym dzieckiem na świecie, ale jak się urodziła byłam zagubiona. Potem z czasem  przyszło takie uczucie, że wiedziałam co czuje a nawet myśli to małe stworzonko. Z racji swego charakteru lub może nawyków programisty, traktowałam wszystkie zajęcia związane z opieką takie jak wstawanie w nocy kilka razy do karmienia, pranie, sprzątanie, gotowanie, spacery itd. jak zadania do wykonania w określonym czasie. Po wykonaniu jednego pojawiało się następne, ale miałam satysfakcję że zostało należycie wykonane. Niemniej jednak nie cieszyło mnie to – może z niewyspania?

Po około 6 miesiącach z ulgą wróciłam do pracy, tutaj odpoczywałam. Mogłam się skupić na jednym zadaniu bez presji, że coś innego trzeba zrobić, potrzeby tej małej istoty zaspokoić. Nadal się nie wysypiałam, mieszkałam z teściową, ale było lepiej.

Po 2 latach znów byłam w ciąży, tym razem syn. I też ciąża inna, może to te hormony? I do czasu rozwiązania chodziłam do pracy, bo tu mi było lepiej niż w domu 🙂 Cały czas rozwijałam ciekawy projekt. Potem znów pół roku macierzyńskiego, tym razem tylko z dziećmi i mężem, bez teściowej, to był wypoczynek jak dla mnie, pomimo znów wykonywania kolejnych zadań domowych.

Pół roku minęło, Mała poszła do przedszkola, Mały znów z babcią, a ja z radością do programowania – znów ciekawy projekt i wyzwanie do udowodnienia sobie, że potrafię, nie jestem gorsza od mężczyzn programistów.

Wspominając ten czas i podsumowując:

była to przerwa w programowaniu, bo nie było czasu. Wieczne zmęczenie, wieczne niezadowolenie teściowej i wszystkich domowników.

Po powrocie do pracy odkryłam, że koledzy poszli dalej, a ja stoję w miejscu. Z tym większym entuzjazmem zabrałam się do pracy i do uzupełniania wiedzy. Dziś już nie czuję, że wiem mniej. Teraz wydaje mi się, że ja idę do przodu, a niektórzy z nich stanęli w miejscu 🙂

Opublikowano

Mały kroczek niedzielny

Zainstalowałam frameworka  (https://github.com/fpt-software/Material-Controls-For-iOS) do kontrolek Material Design. Trzeba pamiętać, aby po zainstalowaniu przełączyć się na  plik .xcworkspace

Po wielu próbach, uff, udało się wygenerować formularz. Niestety nie tak miał wyglądać 😐 Okazało się że zainstalowana biblioteka do Material Design nie ma wszystkich kontrolek:

a miało wyglądać tak:

Oj, chyba zmienię tę bibliotekę, bo mi się nie podoba, że nie ma DatePickera (nie na cały ekran), SelectList i CheckBoxList zgodnie z MaterialDesign.

Ten projekt pokazuje jak programista poszukuje odpowiedniego rozwiązania 🙂 oj potrwa to trochę.

Opublikowano

Kolejny malutki krok

Trochę to trwało, ale to tak ma być, bo nie jest łatwo wymyślać coś graficznie, a potem to oprogramowywać. Wszystko zajmuje czas. Zszedł mi właśnie na myśleniu o projekcie i rysowaniu w Adobe Illustratorze 🙂 Uwielbiam ten program, jest jak kiedyś rysowanki w dzieciństwie – siadasz i ekscytujące jest jak zamalowujesz kolejne pola, a potem wychodzi coś ładnego.  Albo na pustej kartce jak wychodzi z farb lub kredek coś co cię cieszy, bo ci się podoba.

Tak więc poniżej pierwszy formularz i podstawowa funkcjonalność – formularz do zgłaszania dokumentu TAX FREE:

Pewnie wkrótce te moje wysuwane menu, ale dopracowanie tego ekranu wymaga ode mnie czasu i nie będę się deklarować kiedy opublikuję.

W kodzie:

Zainstalowałam frameworka  (https://github.com/fpt-software/Material-Controls-For-iOS) do kontrolek Material Design zgodnie z tą instrukcją:

https://alexanderpaterson.com/posts/hot-pod-material-controls-for-ios

Nie wiem czy dobre, ale spróbuję.

Opublikowano

Trochę z innej beczki

Dzisiaj muszę napisać kilka słów z innej beczki, tj. o atmosferze w pracy. Ja nie mam wielkiego doświadczenia z pracą w różnych firmach, bo do tej pory pracowałam zaledwie w dwóch, ale to co się teraz dzieje u mnie w pracy, to … brak słów… Chcę stąd uciec, jak najdalej. Maciek Aniserowicz mówił, że to jedno z pierwszych symptomów żeby się ewakuować.

Ja już nie mam 18 lat, żeby nie zauważać co się dzieje naokoło bo „mnie nie dotyczy”,”nie obchodzi mnie to”. Pewne rzeczy „czuję przez skórę”. A czuję że ludzie poddali się, nie walczą o siebie, wezmą co im dadzą, pójdą gdzie im każą. To taka natura ludzka. Kojarzy mi się z obozami koncentracyjnymi, co wcześniej zrobiono z ludźmi, było ciche przyzwolenie, historia zatacza koło.

A wróciwszy do tematu: ja generalnie ufam ludziom i nie doszukuję się w nich wrogów, wierzyłam w to co mówili mi przełożeni: „jesteśmy zespołem”. Otóż szanowne szefostwo: żeby mieć zespół to trzeba  być „fair” względem nich, nie okłamywać ich i mówić całą prawdę nawet najgorszą. Zespół opiera się na obustronnym zaufaniu, jest swego rodzaju związkiem. Myślę, że już za późno żeby go przywrócić do życia. Szkoda.

W kodzie aktualnie szukam walidatorów na pola tekstowe takie jak NIP, bo myślę że Swift nie dostarcza takich. Jutro opublikuję projekt apki dot. formularza zgłaszania dokumentu TAX FREE, bo od tego należy zacząć programowanie 🙂

Opublikowano

Poszukiwanie materiałów i pierwsze wrzuty

Dzisiaj wygenerowałam podstawowy kod mojej aplikacji i wrzuciłam na githuba.

Zastanawiam się czy później nie przepisać go na Android oraz czy tego serwisu wystawiającego dane do aplikacji nie napisać w frameworku Sonata 2, bo w tej chwili się intensywnie tego uczę 🙂 Chcę dostosować się do bieżącego rynku pracy. Ale jak skończę przerabiać tutoriale to zdecyduję w co wejdę. Sonata korzysta z języka php, więc łatwo mi będzie ją zainstalować na wykupionym hostingu.

Wymyśliłam sobie wysuwane menu z lewej strony, ale nie takie zwykłe, tylko dwustopniowe- najpierw wysuwają się ‚taby’ pionowe z podstawowymi funkcjami apki, potem po kliknięciu w określony tab, kolejne.

Zacznę od utworzenia klasy Rachunek, zgodnie z wsdl: https://granica.gov.pl/TaxFree/Services/ModulSprzedazy_v1.wsdl

Aplikacja będzie co najmniej w 2 językach: polskim i angielskim.

Opublikowano

Opis aplikacji TAX FREE

Pomysł na aplikację w konkursie Daj się poznać 2017 wzięłam z pracy, bo na co dzień zajmuję się tym tematem. Każda aplikacja dzisiaj to BARDZO duże koszty dla firmy, bo przecież nikt za darmo pracować nie będzie, no chyba że do pokazania się w konkursie :).

W tym przypadku chciałam nauczyć się jak się robi aplikacje w Swift, nowym języku funkcjonującym od 2016r. podobno bardzo intuicyjnym. Za sobą mam doświadczenie w pisaniu aplikacji w Objective C, tylko że tamta aplikacja była bardzo prosta.

Aplikacja TAX FREE, jako że jak każdy, lubię ładne rzeczy, ma być:

– ładna – tutaj zamierzam zastosować modny ostatnio Material Design (stosowany głownie w aplikacjach na Androidzie).

– umożliwiać zgłaszanie przez obcokrajowców dokumenty TAX FREE (umożliwiające ubieganie się później od sprzedawców zwrotu VAT) za pomocą serwisu https:// granica.gov.pl/TaxFree (bliższe informacje o całym funkcjonowaniu TAX FREE na ww stronie). W skrócie chodzi o to, żeby polski sprzedawca więcej sprzedał, natomiast klient-obcokrajowiec był zadowolony, bo wróci do tego sprzedawcy po zwrot podatku i w rezultacie zapłaci wartość towaru bez podatku VAT. Tu na terenach przygranicznych handel kwitnie, a wiadomo, że jak jest handel, to teren się rozwija.

– zgłoszone dokumenty przechowywać w lokalnej bazie danych na telefonie w celu ich późniejszego przeglądania i ewentualnie agregowania co się kupiło.

– pokazywać na mapce Polski sklepy, które wystawiają dokumenty TAX FREE (bo nie wszystkie mogą, ponieważ muszą spełnić określone warunki – na w/w stronie jest to opisane)

Dodatkowo do aplikacji prawdopodobnie zaprogramuję serwis utrzymujący i „wystawiający” do aplikacji aktualną bazę sprzedawców wystawiających dokumenty TAX FREE.

Na razie tyle, jutro programowanie 🙂