Advertisement
Guest User

Untitled

a guest
Jan 18th, 2020
75
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.21 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6.  
  7. namespace Projekt2
  8. {
  9. class Program
  10. {
  11. static void Main(string[] args)
  12. {
  13. GlownaFunkcja CzasPracy = new GlownaFunkcja();
  14.  
  15. CzasPracy.Funkcja();
  16.  
  17. Console.ReadKey();
  18.  
  19. }
  20. }
  21.  
  22.  
  23.  
  24. class GlownaFunkcja : Menu
  25. {
  26. public void Funkcja()
  27. {
  28. Rysuj();
  29. Poruszanie();
  30. }
  31.  
  32. }
  33.  
  34.  
  35. class Menu : WorkTime
  36. {
  37. protected static ConsoleKeyInfo Przycisk;
  38. protected int x = 10;
  39. protected int y = 1;
  40.  
  41.  
  42. public void Rysuj()
  43. {
  44.  
  45. Console.WriteLine("----------------------------------");
  46. Console.WriteLine("| 1. Wejscie |");
  47. Console.WriteLine("| 2. Wyjscie |");
  48. Console.WriteLine("| 3. Zlicz godziny |");
  49. Console.WriteLine("| 4. Zlicz pensje |");
  50. Console.WriteLine("----------------------------------");
  51.  
  52. }
  53.  
  54. public void Poruszanie()
  55. {
  56.  
  57. do
  58. {
  59. Console.SetCursorPosition(x, y);
  60.  
  61. Przycisk = Console.ReadKey(true);
  62.  
  63. if (Przycisk.Key == ConsoleKey.S && y < 4)
  64. {
  65. y += 1;
  66. }
  67. if (Przycisk.Key == ConsoleKey.W && y > 1)
  68. {
  69. y -= 1;
  70. }
  71. if (Przycisk.Key == ConsoleKey.Enter)
  72. {
  73. if (y == 1)
  74. {
  75. Console.Clear();
  76. Wejscie();
  77. Console.Clear();
  78. Rysuj();
  79. }
  80. if (y == 2)
  81. {
  82. Console.Clear();
  83. Wyjscie();
  84. Console.Clear();
  85. Rysuj();
  86. }
  87. if (y == 3)
  88. {
  89.  
  90. }
  91. if (y == 4)
  92. {
  93. Console.Clear();
  94. Salary Pensja = new Salary();
  95. Pensja.Wynagrodzenie();
  96. Console.Clear();
  97. Rysuj();
  98. }
  99. }
  100. } while (Przycisk.Key != ConsoleKey.Escape);
  101. }
  102.  
  103. }
  104. class WorkTime
  105. {
  106. private string idWorker;
  107. private string test = "1234";
  108. DateTime wejscie;
  109. DateTime wyjscie;
  110. public void Praca()
  111. {
  112. Wejscie();
  113. Console.ReadKey(); Console.Clear();
  114. Wyjscie();
  115. }
  116. public void Wejscie()
  117. {
  118. Console.Write("Podaj ID pracownika: ");
  119. idWorker = Console.ReadLine();
  120. if (idWorker != test)
  121. {
  122. Console.WriteLine("Pracownika o tym ID nie ma w bazie!");
  123. }
  124. /*else if (wejscie < DateTime.Now) //Sprawdzenie czy już się odbił
  125. {
  126. Console.WriteLine("Już się zarejestrowałeś tego dnia");
  127. }*/
  128. else
  129. {
  130. wejscie = DateTime.Now;
  131. //String.Format("{0:HH.mm.ss}", dt);
  132. Console.WriteLine("Rejestracja pomyślna. Czas rejestracji: " + wejscie);
  133. }
  134. Console.ReadKey();
  135. }
  136. public void Wyjscie()
  137. {
  138. Console.Write("Podaj ID pracownika: ");
  139. idWorker = Console.ReadLine();
  140. if (idWorker != test)
  141. {
  142. Console.WriteLine("Pracownika o tym ID nie ma w bazie!");
  143. }
  144. /* else if (wyjscie < DateTime.Now || wyjscie > DateTime.Now) //Sprawdzenie czy już się odbił
  145. {
  146. Console.WriteLine("Już się zarejestrowałeś tego dnia");
  147. }*/
  148. else
  149. {
  150. wyjscie = DateTime.Now;
  151. Console.WriteLine("Wyrejestowanie pomyślne. Czas wyrejestrowania: " + wyjscie);
  152.  
  153. TimeSpan result = wyjscie - wejscie;
  154. Console.WriteLine("Byłeś w pracy: " + result);
  155. }
  156. Console.ReadKey();
  157. }
  158. }
  159. class Hours
  160. {
  161.  
  162. }
  163. class Salary
  164. {
  165. private double sklEmeryt;
  166. private double sklRent;
  167. private double sklChor;
  168. private double sklZdrow;
  169. private double pensjaBruttoPomniejszona;
  170. private double wynagordzeniePomniejszone;
  171. private double podstawaPodatekDochodowy;
  172. private double skladkaZdrowotna775;
  173. private double podatekDochodowy;
  174. private double pensjaNetto;
  175. private bool miejsce;
  176. private bool wiek;
  177. private int godziny;
  178. private int stawka;
  179. private string komunikat;
  180. public void Wynagrodzenie()
  181. {
  182. Obliczenia(Dane());
  183. }
  184. private double Dane()
  185. {
  186. Console.Write("Podaj ilość przepracowanych godzin: ");
  187. while (true)
  188. {
  189. komunikat = Console.ReadLine();
  190. if (int.TryParse(komunikat, out godziny))
  191. break;
  192. else
  193. Console.Write("Podaj liczbę! ");
  194. }
  195. Console.Write("Podaj stawkę pracownika na godzinę brutto: ");
  196. while (true)
  197. {
  198. komunikat = Console.ReadLine();
  199. if (int.TryParse(komunikat, out stawka))
  200. break;
  201. else
  202. Console.Write("Podaj liczbę! ");
  203. }
  204. Console.Clear();
  205. return stawka * godziny;
  206. }
  207. private void Obliczenia(double pensja)
  208. {
  209. Console.WriteLine("Enter = tak, Dowolny klawisz = nie");
  210. //OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
  211. Console.Write("Praca w miejscu zamieszkania: ");
  212. if (Console.ReadKey().Key == ConsoleKey.Enter)
  213. {
  214. Console.SetCursorPosition(30, 1);
  215. Console.WriteLine("TAK");
  216. miejsce = true;
  217. }
  218. else { Console.SetCursorPosition(30, 1); Console.WriteLine("NIE"); miejsce = false; }
  219.  
  220. Console.Write("Ukończony 26 rok życia: ");
  221. if (Console.ReadKey().Key == ConsoleKey.Enter)
  222. {
  223. Console.SetCursorPosition(25, 2);
  224. Console.WriteLine("TAK");
  225. wiek = true;
  226. }
  227. else { Console.SetCursorPosition(25, 2); Console.WriteLine("NIE"); wiek = false; }
  228. //OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO
  229.  
  230. sklEmeryt = Math.Round(pensja * 0.0976, 2);
  231. sklRent = Math.Round(pensja * 0.015, 2);
  232. sklChor = Math.Round(pensja * 0.0245, 2);
  233.  
  234. pensjaBruttoPomniejszona = Math.Round(pensja - (sklEmeryt + sklRent + sklChor), 2); //składki socjalne
  235. sklZdrow = Math.Round(pensjaBruttoPomniejszona * 0.09, 2); // ubezpieczenie zdrowotne
  236.  
  237. if (miejsce == true) { wynagordzeniePomniejszone = Math.Round(pensjaBruttoPomniejszona - 250); }
  238. else wynagordzeniePomniejszone = Math.Round(pensjaBruttoPomniejszona - 300);
  239.  
  240. if (wynagordzeniePomniejszone * 12 < 85528) { podstawaPodatekDochodowy = Math.Round(wynagordzeniePomniejszone * 0.17, 2); } //PRÓG PODATKOWY
  241. else podstawaPodatekDochodowy = Math.Round(wynagordzeniePomniejszone * 0.17, 2);
  242.  
  243. podstawaPodatekDochodowy -= 43.76;
  244.  
  245. skladkaZdrowotna775 = Math.Round(pensjaBruttoPomniejszona * 0.0775, 2);
  246.  
  247. podatekDochodowy = Math.Round(podstawaPodatekDochodowy - skladkaZdrowotna775);
  248.  
  249. if (wiek == true) { pensjaNetto = (pensjaBruttoPomniejszona - sklZdrow - podatekDochodowy); }
  250. else pensjaNetto = (pensjaBruttoPomniejszona - sklZdrow);
  251.  
  252. Console.WriteLine("\n==========================================================");
  253. Console.WriteLine($"Koszt pracodawcy: {Math.Round(pensja + (pensja*0.0976)+(pensja*0.065)+(pensja*0.0167)+(pensja*0.0245)+(pensja*0.001),2)}");
  254. Console.WriteLine("Pensja brutto: " + pensja);
  255. Console.WriteLine("Składka na ubezpieczenie emerytalne: " + sklEmeryt);
  256. Console.WriteLine("Składka na ubezpieczenie rentowe: " + sklRent);
  257. Console.WriteLine("Składka na ubezpieczenie chorobowe: " + sklChor);
  258. Console.WriteLine("Składka na ubezpieczenie zdrowotne: " + sklZdrow);
  259. if (wiek == true) { Console.WriteLine("Podatek dochodowy: " + podatekDochodowy); }
  260. else Console.WriteLine("Podatek dochodowy: 0");
  261. Console.WriteLine("Pensja netto (na rękę): " + pensjaNetto);
  262. Console.WriteLine("==========================================================\n");
  263. Console.WriteLine("Naciśniej dowolny przycisk aby wrócić do menu.");
  264. Console.ReadKey();
  265. }
  266. }
  267. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement