როგორ შევქმნათ დროის თვალყურისდევნების აპლიკაცია: ტაიმერები, დროის ცხრილები და ანგარიშები
დროის აღრიცხვის აპლიკაცია იწერს, ვინ რას მუშაობდა, რამდენ ხანს, და შეიძლება თუ არა ეს დრო გადაიხადოს. ასაშენებლად გჭირდებათ კლიენტები და პროექტები, რომლებზეც დრო ირიცხება, ტაიმერი, რომელიც გადარჩება დახურულ ბრაუზერს, ხელით ჩანაწერების დამატებისა და გასწორების გზა, კვირის დროის ცხრილი და ანგარიშები, რომლებიც ნედლ ჩანაწერებს ჯამებად აქცევს. AI აპლიკაციის კონსტრუქტორს ერთი მკაფიო მოთხოვნით შეუძლია პირველი სამუშაო ვერსიის შექმნა. გადამწყვეტი გადაწყვეტილებები წესებზეა: დამრგვალება, ვის შეუძლია რა შეცვალოს, როდის იკეტება კვირა და რა ითვლება ბილინგად.
გადაწყვიტეთ, რისთვის ადევნებთ თვალს დროს
იგივე აპლიკაცია სხვანაირად გამოიყურება იმის მიხედვით, რატომ გჭირდებათ:
- კლიენტების ბილინგი. საათები კლიენტის მიხედვით, ტარიფი ადამიანზე ან პროექტზე და სუფთა ექსპორტი ინვოისებისთვის. ყველაზე მნიშვნელოვანია სიზუსტე და აუდიტის კვალი.
- ხელფასები საათობრივად დაქირავებული თანამშრომლებისთვის. შესვლა და გასვლა, შესვენებები, ზეგანაკვეთური წესები და მენეჯერის დამტკიცება. ადგილობრივი შრომის წესები მოქმედებს, ამიტომ შეამოწმეთ, რა ჩანაწერების შენახვა გმართებთ.
- იმის გაგება, სად მიდის დრო. პირადი ან გუნდური ინსაიტი, შეფასებები წინააღმდეგ რეალური საათებისა. ჩანაწერის სისწრაფე უფრო მნიშვნელოვანია, ვიდრე დამტკიცების პროცესები.
პირველი ვერსიისთვის აირჩიეთ ერთი მთავარი დანიშნულება. ფრილანსერის ბილინგის თვალყურისდევნება და საწყობის ცვლის საათი ერთ ტაიმერს იზიარებს, მაგრამ თითქმის არაფერს სხვას.
რა სჭირდება აპლიკაციას
მონაცემები
| ცხრილი | მთავარი ველები |
|---|---|
| კლიენტები | სახელი, ნაგულისხმევი საათობრივი ტარიფი, აქტიურია თუ არა |
| პროექტები | კლიენტი, სახელი, ბიუჯეტი საათებში (არასავალდებულო), ნაგულისხმევად ბილინგადი თუ არა |
| დავალებები ან კატეგორიები | პროექტი, სახელი (დიზაინი, შეხვედრები, მხარდაჭერა) — თავდაპირველად არასავალდებულო |
| დროის ჩანაწერები | ადამიანი, პროექტი, დავალება, დაწყების დრო, დასრულების დრო, ხანგრძლივობა, შენიშვნა, ბილინგადია თუ არა, სტატუსი (დრაფტი, გაგზავნილი, დამტკიცებული), ინვოისირებულია თუ არა |
| ადამიანები | სახელი, ელფოსტა, როლი, ღირებულების ტარიფი ან გასაყიდი ტარიფი |
ყოველ ჩანაწერზე შეინახეთ დაწყებისა და დასრულების დრო და ხანგრძლივობა მათგან გამოთვალეთ. ჩანაწერები, რომლებიც „2 სთ 15 წთ“-ად შემოდის დროის გარეშე, შეიძლება მხოლოდ ხანგრძლივობა შეინახოს, მაგრამ თარიღი აუცილებლად დარჩეს.
გვერდები
- ტაიმერი და დღევანდელი დღე: დიდი დაწყება/შეჩერების ღილაკი, პროექტის ამრჩევი და დღევანდელი ჩანაწერები ქვემოთ.
- კვირის ხედი: ბადე, სადაც პროექტები მარცხნივაა, დღეები კი ზემოთ, და ხალხი საათებს პირდაპირ უწერს. ბევრი ტაიმერს ამჯობინებს ამას.
- ანგარიშები: საათები კლიენტის, პროექტისა და ადამიანის მიხედვით თარიღების დიაპაზონში, ბილინგადი და არაბილინგადი გაყოფით და CSV ექსპორტით.
- ადმინისტრატორი: კლიენტების, პროექტების, ადამიანებისა და ტარიფების მართვა.
უფლებები
დაწერეთ, ვის რა შეუძლია, სანამ აშენებთ:
- ადამიანები ხედავენ და არედაქტირებენ საკუთარ ჩანაწერებს.
- მენეჯერები ხედავენ თავიანთი გუნდის ჩანაწერებს და ამტკიცებენ კვირებს.
- ტარიფების შეცვლა მხოლოდ ადმინისტრატორებს შეუძლიათ, და იდეალურად მხოლოდ ადმინისტრატორებს უნდა ჩანდეთ ტარიფები.
- არავინ არ არედაქტირებს ჩანაწერს, როცა ის უკვე დამტკიცდა ან ინვოისირდა, თუ ადმინისტრატორი ხელახლა არ გახსნის.
ეს ბოლო წესია, რაც ანგარიშებს სანდოს ხდის. ჩვენი გზამკვლევი შესვლის დამატების შესახებ აპლიკაციაში შესვლის მხარეს ფარავს, ხოლო როლებზე დაფუძნებული წვდომის კონტროლი როლებს.
გადაწყვეტილებები და კომპრომისები
ტაიმერი, ხელით ჩანაწერი თუ ორივე
ტაიმერი ზუსტია, როცა ადამიანი იხსენებს მის დაწყებას, რაც ყოველთვის არ ხდება. ხელით ჩანაწერი სწრაფია ადამიანებისთვის, რომლებიც კვირას პარასკევს ავსებენ. ხშირად ორივე სჭირდება, და ასევე გზა, ტაიმერის ჩანაწერის მოგვიანებით რედაქტირებისთვის. თუ მხოლოდ ერთის აშენებას აპირებთ, ააშენეთ კვირის ბადე: უფრო მარტივია და ფარავს შემთხვევას, როცა დაწყება დაავიწყდათ.
სად ცხოვრობს მიმდინარე ტაიმერი
ბრაუზერში მოქმედი ტაიმერი გვერდის დახურვისას ყველაფერს კარგავს. შეინახეთ დაწყების დრო მონაცემთა ბაზაში იმ წამს, როცა ვინმე დაწყებას აჭერს, და გასული დრო აჩვენეთ ახლანდელი დროისა და ამ დროის სხვაობით. ტაიმერი მაშინ გრძელდება განახლებებზე, ლეპტოპებსა და ტელეფონებზე. გადაწყვიტეთ, შეუძლია თუ არა ერთ ადამიანს ორი ტაიმერის ერთდროულად გაშვება. ჩვეულებრივ პასუხი არაა: ახალი ტაიმერის დაწყება ძველს აჩერებს.
დამრგვალება
გავრცელებული წესებია, რომ ყოველი ჩანაწერი დამრგვალდეს ზემოთ 6, 15 ან 30 წუთამდე. ზუსტი დროები ბაზაში შეინახეთ და დამრგვალება გამოიყენეთ მხოლოდ ანგარიშებსა და ინვოისებში. ანგარიშებში აჩვენეთ ორივე რიცხვი, რომ არავინ გაკვირვდეს.
ჩაკეტვა და დამტკიცებები
ჩაკეტვის გარეშე წინა თვის ბილინგით დაფიქსირებული საათები ინვოისის გაგზავნის შემდეგაც შეიძლება შეიცვალოს. მარტივი მოდელი: ხალხი აგზავნის კვირას, მენეჯერი ამტკიცებს და დამტკიცებული ჩანაწერები იკითხება მხოლოდ. თუ ინვოისს აპლიკაციიდან ქმნით, ჩანაწერები მონიშნეთ როგორც ინვოისირებული, რომ ორჯერ არ გაგზავნოთ.
დროის სარტყელი და შუაღამე
დროები შეინახეთ UTC-ში და ადამიანის დროის სარტყელში აჩვენეთ. გადაწყვიტეთ, რომელ დღეს ეკუთვნის ჩანაწერი, რომელიც 23:00-დან 01:00-მდე გრძელდება. ჩვეულებრივი პასუხი ისაა, რომ იმ დღეს, როცა დაიწყო.
პირველი მუშა მოთხოვნა
ააშენე დროის აღრიცხვის აპლიკაცია ექვსკაციანი დიზაინ სტუდიისთვის. მონაცემები: კლიენტები (სახელი, საათობრივი ტარიფი), პროექტები (კლიენტი, სახელი, ბიუჯეტის საათები) და დროის ჩანაწერები (ადამიანი, პროექტი, დაწყება, დასრულება, შენიშვნა, ბილინგადია თუ არა, სტატუსი დრაფტი/გაგზავნილი/დამტკიცებული). გვერდები: დღევანდელი გვერდი დაწყება/შეჩერების ტაიმერით და პროექტის ამრჩევით, რომელიც დაწყების დროს ბაზაში ინახავს, რომ ტაიმერი გვერდის განახლებას გადაურჩეს; კვირის გვერდი, სადაც პროექტები მწკრივებად არის, ორშაბათიდან კვირამდე სვეტებად, და ხალხი საათებს პირდაპირ წერს; ანგარიშების გვერდი საათებით კლიენტის, პროექტისა და ადამიანის მიხედვით თარიღების დიაპაზონში, ბილინგადი და არაბილინგადი გაყოფით, CSV ექსპორტით; და ადმინისტრატორის გვერდი კლიენტებისთვის, პროექტებისა და ადამიანებისთვის. ერთ ადამიანს მხოლოდ ერთი ტაიმერი შეუძლია. დამტკიცებული ჩანაწერი არ იცვლება. დროები შეინახე UTC-ში და აჩვენე მომხმარებლის დროის სარტყელში. სუფთა, სწრაფი, კლავიატურისთვის მოსახერხებელი დიზაინი.
ასაშენებელი ნაბიჯები
- ჯერ პროექტები და ხელით ჩანაწერები. კლიენტები, პროექტები, ფორმა ჩანაწერის დასამატებლად და სია. დარწმუნდით, რომ ჯამები ემთხვევა.
- ტაიმერი. დაწყება, შეჩერება, ერთი მიმდინარე ტაიმერი ადამიანზე, შენახული დაწყების დრო. შეამოწმეთ: დაიწყეთ ტაიმერი, დახურეთ ჩანართი და ხელახლა გახსენით.
- კვირის ბადე. უჯრაში საათის ჩაწერა ქმნის ან განაახლებს ჩანაწერს.
- შესვლა და როლები. დაამატეთ მათი ადამიანების გამოყენებამდე, რომ არავინ შემთხვევით არ ნახოს ტარიფები ან სხვისი ჩანაწერები.
- გაგზავნა და დამტკიცება. კვირის გაგზავნა, მენეჯერის დამტკიცება, დამტკიცების შემდეგ მხოლოდ კითხვა.
- ანგარიშები და ექსპორტი. თარიღების დიაპაზონი, დაჯგუფება, ბილინგადი გაყოფა, CSV.
- ტარიფები და ინვოისის კავშირები, თუ კლიენტებს აბილინგებთ. ინვოისის შექმნა ცალკე ნაბიჯად ან აპში შეინახეთ; იხილეთ როგორ შევქმნათ ინვოისების აპლიკაცია.
- გაატესტეთ კიდური შემთხვევები. შუაღამის გადამკვეთი ჩანაწერი, სამოქალაქო დროის ცვლილების კვირა, ორი ტაიმერი ორი მოწყობილობიდან, დამტკიცებული ჩანაწერის რედაქტირება.
გავრცელებული შეცდომები
- დროის დათვლა მხოლოდ ბრაუზერში. დემოში მუშაობს, რეალურ გამოყენებაში კი საათებს კარგავს.
- შენახული მნიშვნელობების დამრგვალება. ზუსტ დროს ვეღარასოდეს დაუბრუნდებით.
- დამტკიცებულ კვირებზე ჩაკეტვის არარსებობა. ანგარიშები აღარ ემთხვევა ინვოისებს.
- ყველა ხედავს ყველას ტარიფებს. ტარიფები როლის მიხედვით დაფარეთ პირველი დღიდანვე.
- ზედმეტად ბევრი სავალდებულო ველი. თუ დროის ჩაწერას რამდენიმე წამზე მეტი სჭირდება, ხალხი ჩერდება და მონაცემები ფიქციად იქცევა. დავალება და შენიშვნა თავდაპირველად არასავალდებულო გახადეთ.
- სრული პროექტების მმართველის აშენება თვალყურისდევნების შიგნით. პროექტები მარტივ ეტიკეტებად დატოვეთ. თუ დავალებები, დაფები და ვადები გჭირდებათ, ეს პროექტების მართვის ინსტრუმენტია — ცალკე ნაშენები.
როდის არის უკეთესი მზა დროის თვალყურისდევნების ინსტრუმენტი
თუ თქვენს გუნდს სჭირდება ტაიმერი, კვირის ხედი და ანგარიშები, სპეციალიზებული დროის თვალყურისდევნების პროდუქტები ამას უკვე კარგად აკეთებენ. ისინი ასევე მოდის იმ რაღაცებით, რომელთა აშენებას რეალური სამუშაო სჭირდება: დესკტოპისა და ტელეფონის აპები, უმოქმედობის აღმოჩენა, კალენდრისა და ინსტრუმენტების ინტეგრაციები და შეხსენებები დროის ცხრილების შესავსებად. საათობრივი ხელფასისთვის სპეციალური ინსტრუმენტი უსაფრთხოდ მოუვლის შესვენებებს, ზეგანაკვეთურ საათებსა და ჩანაწერების წარმოებას, ვიდრე პირველი ვერსიის მორგებული აპი.
საკუთარი აშენეთ, როცა თქვენი წესები არ ჯდება, როცა გსურთ, რომ საათები მონაცემებს დაუკავშირდეს, რომლებსაც უკვე ინახავთ (სამუშაოები, სამუშაო შეკვეთები, რეტეინერები, ინვოისები), როცა თანამშრომელზე ფასი დიდ გუნდს ძვირად უჯდება, ან როცა დროის თვალყურისდევნება უფრო დიდი შიდა ინსტრუმენტის ერთი ნაწილია. ჩვენი გზამკვლევი საკუთარი აშენებისა და ყიდვის შესახებ პატარა ბიზნესისთვის კომპრომისს განმარტავს, ხოლო თუ თქვენი საათები ახლა საერთო ცხრილში ცხოვრობს, იხილეთ როგორ გადავაქციოთ სპრედშიტი აპლიკაციად.
აშენება Mythex-ით
Mythex-ში ტრეკერს ჩატში აღწერთ და აგენტი მას ცოცხალ გადახედვაში აშენებს. ჩანაწერების შესანახად ის ამატებს გამოყოფილ Postgres მონაცემთა ბაზას, რომელსაც პირდაპირ შეგიძლიათ სთხოვოთ ან ჩაწეროთ /database. შიდა ინსტრუმენტის გამოყენების შემთხვევა დოკუმენტაციაში გვირჩევს, აირჩიოთ ერთი მტკივნეული ნაბიჯი პირველი ვერსიისთვის, რაც აქ ჯდება: დაიწყეთ ჩანაწერებითა და კვირის ბადით, შემდეგ დაამატეთ ტაიმერები და დამტკიცებები.
გუნდისთვის შესვლას თქვენი საკუთარი ავტორიზაციის მიდგომით დაამატებთ (შესვლის დამატების რეცეპტი). Mythex-ის ანგარიშები მათთვისაა, ვინც აპლიკაციას აშენებს, არა მათთვის, ვინც მას იყენებს. როცა ძირითადი ნაკადი მუშაობს, /test აგენტს სთხოვს, გადახედვაში გაიაროს ნაკადები (დაიწყოს ტაიმერი, დაამატოს ჩანაწერი, გაუშვას ანგარიში) და გაცნობოთ, რა იშლება. ვიზუალური დასაწყისისთვის ნახეთ აპლიკაციის შაბლონები.
კითხვები
რა ფუნქციები სჭირდება დროის აღრიცხვის აპლიკაციას?
კლიენტებისა და პროექტების სია, დაწყება/შეჩერების ტაიმერი, გზა ჩანაწერების ხელით დასამატებლად ან გასასწორებლად, კვირის დროის ცხრილის ხედი და ანგარიში საათებზე პროექტის და ადამიანის მიხედვით. დამტკიცებები, ბილინგის ტარიფები და ექსპორტი მომდევნო ნაბიჯებია.
როგორ ავიცილო, რომ ტაიმერმა დრო არ დაკარგოს, როცა ბრაუზერი იხურება?
შეინახეთ დაწყების დრო მონაცემთა ბაზაში იმ წამს, როცა ტაიმერი იწყება, და მიმდინარე ხანგრძლივობა გამოთვალეთ ამ შენახული დროიდან. ასე ჩანართის დახურვა, გვერდის განახლება ან სხვა მოწყობილობაზე გადასვლა არაფერს არ აკარგვინებს.
უნდა დაიმრგვალოს თუ არა დრო?
შეინახეთ ზუსტი დაწყებისა და დასრულების დრო და დამრგვალება გამოიყენეთ მხოლოდ ანგარიშებსა და ინვოისებში. ამით წესის შეცვლა მოგვიანებითაც შეგიძლიათ, ისტორიის გადაწერის გარეშე.
ღირს თუ არა საკუთარი დროის თვალყურისდევნების აპის აშენება?
ჩვეულებრივ მხოლოდ მაშინ, როცა თქვენი წესები უჩვეულოა ან გსურთ, რომ საათები სხვა მონაცემებს დაუკავშირდეს, რომლებსაც უკვე ინახავთ, მაგალითად სამუშაოებს, კლიენტებს ან ინვოისებს. მარტივი ტაიმერებისა და ანგარიშებისთვის არსებული ინსტრუმენტი იაფი და სწრაფია.