Untitled

mail@pastecode.io avatar
unknown
plain_text
a year ago
1.9 kB
1
Indexable
Never
	public static void kesiFiyatHesapla(List<Karar> islemKararListesi, List<Kesi> kesiListesi) {
		int sayac = 0;
		BigDecimal kullanilacakTutar = BigDecimal.ZERO;
		BigDecimal ilkKesiIslemiFiyati = BigDecimal.ZERO;
		Boolean ilkKesiIslemiMi = true;

		if (GenelUtil.listeKontrolu(kesiListesi)) {
			try {

				Collections.sort(islemKararListesi, new Comparator<Karar>() {

					public int compare(Karar karar, Karar kararKucukFiyat) {

						return kararKucukFiyat.getIslem().getIslemTalepTutar().compareTo(karar.getIslem().getIslemTalepTutar());
					}
				});
			} catch (Exception e) {
				// TODO: handle exception
			}
			try {
				for (Karar karar : islemKararListesi) {
					if (karar.getIslem().getKucukMudahaleMi()) {
						for (BREIslem breIslem : karar.getIslem().getAsIslemGrupKoduListesi()) {
							if (breIslem.getAsIslemGrup().compareTo(kesiKuralinaTabiIslemler) == 0
									&& karar.getKarar().compareTo(KararEnum.RET) != 0) {
								if (karar.getIslem().getKurumdanGelenFiyat() != null
										&& karar.getIslem().getKurumdanGelenFiyat().compareTo(karar.getIslem().getIslemTalepTutar()) < 0) {
									kullanilacakTutar = karar.getIslem().getKurumdanGelenFiyat();
								} else {
									kullanilacakTutar = karar.getIslem().getIslemTalepTutar();

								}
								if(ilkKesiIslemiMi) {
									ilkKesiIslemiMi = false;
									ilkKesiIslemiFiyati = kullanilacakTutar;
								}else if(ilkKesiIslemiFiyati.compareTo(kullanilacakTutar) == 0) {
									karar.getIslem().setIslemTalepTutar((kullanilacakTutar.multiply(new BigDecimal(kesiListesi.get(sayac).getKesiOrani()))
											.divide(new BigDecimal(100), RoundingMode.HALF_UP)).setScale(3));
								}else {
									karar.getIslem().setIslemTalepTutar(kullanilacakTutar);
								}
								sayac++;
							}
						}
					}
				}
			} catch (Exception e) {
				// TODO: handle exception
			}
		}
	}