/RehaStatistik/src/Tools/SystemPreislisten.java

https://github.com/bomm/thera-pi-2 · Java · 369 lines · 324 code · 32 blank · 13 comment · 20 complexity · b0f433e62ca9e56b4a5c9f382864c376 MD5 · raw file

  1. package Tools;
  2. import java.util.Arrays;
  3. import java.util.Collections;
  4. import java.util.Comparator;
  5. import java.util.HashMap;
  6. import java.util.List;
  7. import java.util.Vector;
  8. import rehaStatistik.RehaStatistik;
  9. public class SystemPreislisten {
  10. public static Vector<Vector<Vector<String>>> vKGPreise = new Vector<Vector<Vector<String>>>();
  11. public static Vector<Vector<Vector<String>>> vMAPreise = new Vector<Vector<Vector<String>>>();
  12. public static Vector<Vector<Vector<String>>> vERPreise = new Vector<Vector<Vector<String>>>();
  13. public static Vector<Vector<Vector<String>>> vLOPreise = new Vector<Vector<Vector<String>>>();
  14. public static Vector<Vector<Vector<String>>> vRHPreise = new Vector<Vector<Vector<String>>>();
  15. public static HashMap<String,Vector<Vector<Vector<String>>>> hmPreise = new HashMap<String,Vector<Vector<Vector<String>>>>();
  16. public static HashMap<String,Vector<String>> hmPreisGruppen = new HashMap<String,Vector<String>>();
  17. public static HashMap<String,Vector<String>> hmPreisBereich = new HashMap<String,Vector<String>>();
  18. public static HashMap<String,Vector<Integer>> hmZuzahlRegeln = new HashMap<String,Vector<Integer>>();
  19. public static HashMap<String,Vector<Integer>> hmHMRAbrechnung = new HashMap<String,Vector<Integer>>();
  20. public static HashMap<String,Vector<String>> hmNeuePreiseAb = new HashMap<String,Vector<String>>();
  21. public static HashMap<String,Vector<Integer>> hmNeuePreiseRegel = new HashMap<String,Vector<Integer>>();
  22. public static HashMap<String,Vector<Vector<String>>> hmHBRegeln = new HashMap<String,Vector<Vector<String>>>();
  23. public static HashMap<String,Vector<String>> hmBerichtRegeln = new HashMap<String,Vector<String>>();
  24. private static Vector<String> dummy = new Vector<String>();
  25. private static Vector<Integer> intdummy = new Vector<Integer>();
  26. private static Vector<Vector<String>> hbdummy = new Vector<Vector<String>>();
  27. private static Vector<String> hbdummy_1 = new Vector<String>();
  28. private static Vector<Vector<String>> preisliste = new Vector<Vector<String>>();
  29. @SuppressWarnings("unchecked")
  30. public static void ladePreise(String disziplin){
  31. String[] diszis = {"Physio","Massage","Ergo","Logo","Reha","Common"};
  32. List<String> list = Arrays.asList(diszis);
  33. int treffer = list.indexOf(disziplin);
  34. if(treffer < 0){
  35. return;
  36. }
  37. INIFile inif = new INIFile(RehaStatistik.proghome+"ini/"+RehaStatistik.aktIK+"/preisgruppen.ini");
  38. int tarife = inif.getIntegerProperty("PreisGruppen_"+diszis[treffer], "AnzahlPreisGruppen");
  39. Comparator<Vector> comparator = new Comparator<Vector>() {
  40. @Override
  41. public int compare(Vector o1, Vector o2) {
  42. String s1 = (String)((Vector)o1).get(0).toString();
  43. String s2 = (String)((Vector)o2).get(0).toString();
  44. return s1.compareTo(s2);
  45. }
  46. };
  47. if(treffer==0){
  48. vKGPreise.clear();
  49. for(int i = 0; i < tarife;i++){
  50. preisliste.clear();
  51. preisliste = (Vector<Vector<String>>)SqlInfo.holeFelder("select * from kgtarif"+Integer.toString(i+1));
  52. Collections.sort((Vector)preisliste,comparator);
  53. vKGPreise.add((Vector<Vector<String>> )preisliste.clone());
  54. }
  55. preisliste.clear();
  56. hmPreise.put("Physio", vKGPreise);
  57. dummy.clear();
  58. getPreisGruppen(inif,"Physio",tarife);
  59. hmPreisGruppen.put("Physio", (Vector<String>)dummy.clone() );
  60. dummy.clear();
  61. getPreisBereich(inif,"Physio",tarife);
  62. hmPreisBereich.put("Physio", (Vector<String>)dummy.clone() );
  63. dummy.clear();
  64. getNeuePreiseAb(inif,"Physio",tarife);
  65. hmNeuePreiseAb.put("Physio", (Vector<String>)dummy.clone() );
  66. dummy.clear();
  67. intdummy.clear();
  68. getNeuePreiseRegeln(inif,"Physio",tarife);
  69. hmNeuePreiseRegel.put("Physio", (Vector<Integer>)intdummy.clone());
  70. intdummy.clear();
  71. getZuzahlRegeln(inif,"Physio",tarife);
  72. hmZuzahlRegeln.put("Physio", (Vector<Integer>)intdummy.clone());
  73. intdummy.clear();
  74. getHMRAbrechnung(inif,"Physio",tarife);
  75. hmHMRAbrechnung.put("Physio", (Vector<Integer>)intdummy.clone());
  76. intdummy.clear();
  77. hbdummy.clear();
  78. getHBRegeln(inif,"Physio",tarife);
  79. hmHBRegeln.put("Physio", (Vector<Vector<String>>)hbdummy.clone());
  80. hbdummy.clear();
  81. dummy.clear();
  82. getBerichtRegeln(inif,"Physio",tarife);
  83. hmBerichtRegeln.put("Physio", (Vector<String>)dummy.clone() );
  84. dummy.clear();
  85. return;
  86. }
  87. /***************************************************/
  88. if(treffer==1){
  89. vMAPreise.clear();
  90. for(int i = 0; i < tarife;i++){
  91. preisliste.clear();
  92. preisliste = (Vector<Vector<String>>)SqlInfo.holeFelder("select * from matarif"+Integer.toString(i+1));
  93. Collections.sort((Vector)preisliste,comparator);
  94. vMAPreise.add((Vector<Vector<String>> )preisliste.clone());
  95. }
  96. preisliste.clear();
  97. hmPreise.put("Massage", vMAPreise);
  98. dummy.clear();
  99. getPreisGruppen(inif,"Massage",tarife);
  100. hmPreisGruppen.put("Massage", (Vector<String>)dummy.clone() );
  101. dummy.clear();
  102. getPreisBereich(inif,"Massage",tarife);
  103. hmPreisBereich.put("Massage", (Vector<String>)dummy.clone() );
  104. dummy.clear();
  105. intdummy.clear();
  106. getNeuePreiseRegeln(inif,"Massage",tarife);
  107. hmNeuePreiseRegel.put("Massage", (Vector<Integer>)intdummy.clone());
  108. intdummy.clear();
  109. getNeuePreiseAb(inif,"Massage",tarife);
  110. hmNeuePreiseAb.put("Massage", (Vector<String>)dummy.clone() );
  111. dummy.clear();
  112. intdummy.clear();
  113. getZuzahlRegeln(inif,"Massage",tarife);
  114. hmZuzahlRegeln.put("Massage", (Vector<Integer>)intdummy.clone());
  115. intdummy.clear();
  116. getHMRAbrechnung(inif,"Massage",tarife);
  117. hmHMRAbrechnung.put("Massage", (Vector<Integer>)intdummy.clone());
  118. intdummy.clear();
  119. hbdummy.clear();
  120. getHBRegeln(inif,"Massage",tarife);
  121. hmHBRegeln.put("Massage", (Vector<Vector<String>>)hbdummy.clone());
  122. hbdummy.clear();
  123. dummy.clear();
  124. getBerichtRegeln(inif,"Massage",tarife);
  125. hmBerichtRegeln.put("Massage", (Vector<String>)dummy.clone() );
  126. dummy.clear();
  127. return;
  128. }
  129. /***************************************************/
  130. if(treffer==2){
  131. vERPreise.clear();
  132. for(int i = 0; i < tarife;i++){
  133. preisliste.clear();
  134. preisliste = (Vector<Vector<String>>)SqlInfo.holeFelder("select * from ertarif"+Integer.toString(i+1));
  135. Collections.sort((Vector)preisliste,comparator);
  136. vERPreise.add((Vector<Vector<String>> )preisliste.clone());
  137. }
  138. preisliste.clear();
  139. hmPreise.put("Ergo", vERPreise);
  140. dummy.clear();
  141. getPreisGruppen(inif,"Ergo",tarife);
  142. hmPreisGruppen.put("Ergo", (Vector<String>)dummy.clone() );
  143. dummy.clear();
  144. getPreisBereich(inif,"Ergo",tarife);
  145. hmPreisBereich.put("Ergo", (Vector<String>)dummy.clone() );
  146. dummy.clear();
  147. intdummy.clear();
  148. getNeuePreiseRegeln(inif,"Ergo",tarife);
  149. hmNeuePreiseRegel.put("Ergo", (Vector<Integer>)intdummy.clone());
  150. intdummy.clear();
  151. getNeuePreiseAb(inif,"Ergo",tarife);
  152. hmNeuePreiseAb.put("Ergo", (Vector<String>)dummy.clone() );
  153. dummy.clear();
  154. intdummy.clear();
  155. getZuzahlRegeln(inif,"Ergo",tarife);
  156. hmZuzahlRegeln.put("Ergo", (Vector<Integer>)intdummy.clone());
  157. intdummy.clear();
  158. getHMRAbrechnung(inif,"Ergo",tarife);
  159. hmHMRAbrechnung.put("Ergo", (Vector<Integer>)intdummy.clone());
  160. intdummy.clear();
  161. hbdummy.clear();
  162. getHBRegeln(inif,"Ergo",tarife);
  163. hmHBRegeln.put("Ergo", (Vector<Vector<String>>)hbdummy.clone());
  164. hbdummy.clear();
  165. dummy.clear();
  166. getBerichtRegeln(inif,"Ergo",tarife);
  167. hmBerichtRegeln.put("Ergo", (Vector<String>)dummy.clone() );
  168. dummy.clear();
  169. return;
  170. }
  171. /***************************************************/
  172. if(treffer==3){
  173. vLOPreise.clear();
  174. for(int i = 0; i < tarife;i++){
  175. preisliste.clear();
  176. preisliste = (Vector<Vector<String>>)SqlInfo.holeFelder("select * from lotarif"+Integer.toString(i+1));
  177. Collections.sort((Vector)preisliste,comparator);
  178. vLOPreise.add((Vector<Vector<String>> )preisliste.clone());
  179. }
  180. preisliste.clear();
  181. hmPreise.put("Logo", vLOPreise);
  182. dummy.clear();
  183. getPreisGruppen(inif,"Logo",tarife);
  184. hmPreisGruppen.put("Logo", (Vector<String>)dummy.clone() );
  185. dummy.clear();
  186. getPreisBereich(inif,"Logo",tarife);
  187. hmPreisBereich.put("Logo", (Vector<String>)dummy.clone() );
  188. dummy.clear();
  189. intdummy.clear();
  190. getNeuePreiseRegeln(inif,"Logo",tarife);
  191. hmNeuePreiseRegel.put("Logo", (Vector<Integer>)intdummy.clone());
  192. intdummy.clear();
  193. getNeuePreiseAb(inif,"Logo",tarife);
  194. hmNeuePreiseAb.put("Logo", (Vector<String>)dummy.clone() );
  195. dummy.clear();
  196. intdummy.clear();
  197. getZuzahlRegeln(inif,"Logo",tarife);
  198. hmZuzahlRegeln.put("Logo", (Vector<Integer>)intdummy.clone());
  199. intdummy.clear();
  200. getHMRAbrechnung(inif,"Logo",tarife);
  201. hmHMRAbrechnung.put("Logo", (Vector<Integer>)intdummy.clone());
  202. intdummy.clear();
  203. hbdummy.clear();
  204. getHBRegeln(inif,"Logo",tarife);
  205. hmHBRegeln.put("Logo", (Vector<Vector<String>>)hbdummy.clone());
  206. hbdummy.clear();
  207. dummy.clear();
  208. getBerichtRegeln(inif,"Logo",tarife);
  209. hmBerichtRegeln.put("Logo", (Vector<String>)dummy.clone() );
  210. dummy.clear();
  211. return;
  212. }
  213. /***************************************************/
  214. if(treffer==4){
  215. vRHPreise.clear();
  216. for(int i = 0; i < tarife;i++){
  217. preisliste.clear();
  218. preisliste = (Vector<Vector<String>>)SqlInfo.holeFelder("select * from rhtarif"+Integer.toString(i+1));
  219. Collections.sort((Vector)preisliste,comparator);
  220. vRHPreise.add((Vector<Vector<String>> )preisliste.clone());
  221. }
  222. preisliste.clear();
  223. hmPreise.put("Reha", vRHPreise);
  224. dummy.clear();
  225. getPreisGruppen(inif,"Reha",tarife);
  226. hmPreisGruppen.put("Reha", (Vector<String>)dummy.clone() );
  227. dummy.clear();
  228. getPreisBereich(inif,"Reha",tarife);
  229. hmPreisBereich.put("Reha", (Vector<String>)dummy.clone() );
  230. dummy.clear();
  231. intdummy.clear();
  232. getNeuePreiseRegeln(inif,"Reha",tarife);
  233. hmNeuePreiseRegel.put("Reha", (Vector<Integer>)intdummy.clone());
  234. intdummy.clear();
  235. getNeuePreiseAb(inif,"Reha",tarife);
  236. hmNeuePreiseAb.put("Reha", (Vector<String>)dummy.clone() );
  237. dummy.clear();
  238. intdummy.clear();
  239. getZuzahlRegeln(inif,"Reha",tarife);
  240. hmZuzahlRegeln.put("Reha", (Vector<Integer>)intdummy.clone());
  241. intdummy.clear();
  242. getHMRAbrechnung(inif,"Reha",tarife);
  243. hmHMRAbrechnung.put("Reha", (Vector<Integer>)intdummy.clone());
  244. intdummy.clear();
  245. hbdummy.clear();
  246. getHBRegeln(inif,"Reha",tarife);
  247. hmHBRegeln.put("Reha", (Vector<Vector<String>>)hbdummy.clone());
  248. hbdummy.clear();
  249. dummy.clear();
  250. getBerichtRegeln(inif,"Reha",tarife);
  251. hmBerichtRegeln.put("Reha", (Vector<String>)dummy.clone() );
  252. dummy.clear();
  253. return;
  254. }
  255. if(treffer==5){
  256. dummy.clear();
  257. getPreisGruppen(inif,"Common",tarife);
  258. hmPreisGruppen.put("Common", (Vector<String>)dummy.clone() );
  259. dummy.clear();
  260. }
  261. }
  262. /**********
  263. *
  264. *
  265. * @param f
  266. * @param disziplin
  267. * @param tarife
  268. * @param dummy
  269. * @return
  270. */
  271. public static void getPreisGruppen(INIFile f,String disziplin,int tarife){
  272. for(int i = 0; i < tarife;i++){
  273. dummy.add(f.getStringProperty("PreisGruppen_"+disziplin, "PGName"+Integer.toString(i+1)));
  274. }
  275. }
  276. public static void getPreisBereich(INIFile f,String disziplin,int tarife){
  277. for(int i = 0; i < tarife;i++){
  278. dummy.add(f.getStringProperty("PreisGruppen_"+disziplin, "PGBereich"+Integer.toString(i+1)));
  279. }
  280. }
  281. public static void getZuzahlRegeln(INIFile f,String disziplin,int tarife){
  282. for(int i = 0; i < tarife;i++){
  283. intdummy.add(f.getIntegerProperty("ZuzahlRegeln_"+disziplin, "ZuzahlRegel"+Integer.toString(i+1)));
  284. }
  285. }
  286. public static void getHMRAbrechnung(INIFile f,String disziplin,int tarife){
  287. for(int i = 0; i < tarife;i++){
  288. intdummy.add(f.getIntegerProperty("HMRAbrechnung_"+disziplin, "HMRAbrechnung"+Integer.toString(i+1)));
  289. }
  290. }
  291. public static void getHBRegeln(INIFile f,String disziplin,int tarife){
  292. for(int i = 0; i < tarife;i++){
  293. hbdummy_1.clear();
  294. hbdummy_1.add(f.getStringProperty("HBRegeln_"+disziplin,"HBPosVoll"+(i+1) ));
  295. hbdummy_1.add(f.getStringProperty("HBRegeln_"+disziplin,"HBPosMit"+(i+1) ));
  296. hbdummy_1.add(f.getStringProperty("HBRegeln_"+disziplin,"HBKilometer"+(i+1) ));
  297. hbdummy_1.add(f.getStringProperty("HBRegeln_"+disziplin,"HBPauschal"+(i+1) ));
  298. hbdummy_1.add(f.getStringProperty("HBRegeln_"+disziplin,"HBHeimMitZuZahl"+(i+1) ));
  299. hbdummy.add((Vector<String>)hbdummy_1.clone());
  300. }
  301. hbdummy_1.clear();
  302. }
  303. public static void getNeuePreiseRegeln(INIFile f,String disziplin,int tarife){
  304. for(int i = 0; i < tarife;i++){
  305. intdummy.add(f.getIntegerProperty("PreisRegeln_"+disziplin, "PreisRegel"+Integer.toString(i+1)));
  306. }
  307. }
  308. public static void getNeuePreiseAb(INIFile f,String disziplin,int tarife){
  309. for(int i = 0; i < tarife;i++){
  310. dummy.add(f.getStringProperty("PreisRegeln_"+disziplin, "PreisAb"+Integer.toString(i+1)));
  311. }
  312. }
  313. public static void getBerichtRegeln(INIFile f,String disziplin,int tarife){
  314. for(int i = 0; i < tarife;i++){
  315. dummy.add(f.getStringProperty("BerichtRegeln_"+disziplin, "Bericht"+Integer.toString(i+1)));
  316. }
  317. }
  318. class Sortiere{
  319. Vector<Vector<String>> vector = null;
  320. public Sortiere (Vector<Vector<String>> vec){
  321. this.vector = vec;
  322. }
  323. @SuppressWarnings("unchecked")
  324. public Vector<Vector<String>> sortieren(){
  325. Comparator<Vector> comparator = new Comparator<Vector>() {
  326. @Override
  327. public int compare(Vector o1, Vector o2) {
  328. String s1 = (String)((Vector)o1).get(0).toString();
  329. String s2 = (String)((Vector)o2).get(0).toString();
  330. return s1.compareTo(s2);
  331. }
  332. };
  333. Collections.sort((Vector)this.vector,comparator);
  334. return this.vector;
  335. }
  336. }
  337. }