فهرست منبع

Windykacja: stan_zero dla PAY_SALDO > -0.05

Piotr Labudda 11 سال پیش
والد
کامیت
ab764f371c
1فایلهای تغییر یافته به همراه29 افزوده شده و 28 حذف شده
  1. 29 28
      SE/superedit-USERS2_WINDYKACJA_STATUS.php

+ 29 - 28
SE/superedit-USERS2_WINDYKACJA_STATUS.php

@@ -780,7 +780,7 @@ if (V::get('DBG', '', $_GET, 'int') > 0) {// TODO: TEST
 							}
 						}
 						echo '<div class="box box-blue" style="margin:6px 0;">';
-							if ($user->PAY_FVAT > 0 && $user->PAY_SALDO < 0) {
+							if ($user->PAY_FVAT > 0 && $user->PAY_SALDO <= -0.05) {
 								echo "Saldo klienta: " . '<b style="color:#f00">' . "{$user->PAY_SALDO} zł" . '</b>' . " ({$user->PAY_FVAT} niezapłaconych faktur)" . '<br />';
 								echo'<br />';
 							}
@@ -809,7 +809,7 @@ if (V::get('DBG', '', $_GET, 'int') > 0) {// TODO: TEST
 					break;
 					case 'waiting-wezwanie2': {// TODO: only auto update ?
 						echo '<div class="box box-blue" style="margin:6px 0;">';
-							if ($user->PAY_FVAT > 0 && $user->PAY_SALDO < 0) {
+							if ($user->PAY_FVAT > 0 && $user->PAY_SALDO <= -0.05) {
 								echo "Saldo klienta: " . '<b style="color:#f00">' . $user->PAY_SALDO . " zł" . '</b>' . " (" . $user->PAY_FVAT ." niezapłaconych faktur)" . '<br />';
 								echo'<br />';
 							}
@@ -853,7 +853,7 @@ if (V::get('DBG', '', $_GET, 'int') > 0) {// TODO: TEST
 							}
 						}
 						echo '<div class="box box-blue" style="margin:6px 0;border-color:#666;">';
-							if ($user->PAY_FVAT > 0 && $user->PAY_SALDO < 0) {
+							if ($user->PAY_FVAT > 0 && $user->PAY_SALDO <= -0.05) {
 								echo "Saldo klienta: " . '<b style="color:#f00">' . "{$user->PAY_SALDO} zł" . '</b>' . " ({$user->PAY_FVAT} niezapłaconych faktur)" . '<br />';
 								echo'<br />';
 							}
@@ -3372,7 +3372,7 @@ class WindykacjaStatsHelper {
 			$data_arr["LAST_FVAT_PAY_TERM"] = $lastFvatDoc->get('PAYMENT_TERM');
 			$data_arr["LAST_FVAT_SELL_DATE"] = $lastFvatDoc->get('SELL_DATE');
 		}
-		if ($saldo <= 0) {
+		if ($saldo <= -0.05) {
 			$fvat_arr = $billing_docs->get_unpaid_fvat();
 			$data_arr["PAY_FVAT"] = count($fvat_arr);
 			if (count($fvat_arr) > 0) {
@@ -3391,7 +3391,7 @@ class WindykacjaStatsHelper {
 		switch ($user->A_STATUS) {
 			case 'WAITING':// auto
 				if ($user->wezwanie1_DATE == '0000-00-00') {
-					if ($saldo < 0) {
+					if ($saldo <= -0.05) {
 						$fvat_arr = $billing_docs->get_unpaid_fvat();
 						if (count($fvat_arr) > 1) {
 							$data_arr["A_STATUS"] = "wezwanie1";
@@ -3454,7 +3454,7 @@ class WindykacjaStatsHelper {
 		}
 
 		// zmiana statusu na czysty - WAITING
-		if ($saldo >= 0 || $data_arr["PAY_FVAT"] < 2) {
+		if ($saldo > -0.05 || $data_arr["PAY_FVAT"] < 2) {
 			if (!in_array($user->A_STATUS, array('waiting-sad', 'docs-in-sad', 'sad'))) {
 				$data_arr["A_STATUS"] = "WAITING";
 				$data_arr["wezwanie2_DATE"] = '0000-00-00';
@@ -3573,7 +3573,7 @@ SQL;
 		$today = date("Y-m-d");
 		$due_date = $user->PAY_TERM;// ustalowny pay term
 		$zaleglosc = number_format($user->PAY_SALDO, 2, ',', '');
-		if ($user->PAY_SALDO < 0) {
+		if ($user->PAY_SALDO <= -0.05) {
 			$msg = "Twoje saldo na dzien {$today} wynosi {$zaleglosc} zl.\n";
 			$msg .= "Prosimy o niezwloczne uregulowanie zaleglosci.";
 			if ($due_date > $today) {
@@ -3593,7 +3593,7 @@ SQL;
 		$today = date("Y-m-d");
 		$due_date = $user->PAY_TERM;// ustalowny pay term
 		$zaleglosc = number_format(abs($user->PAY_SALDO), 2, ',', '');
-		if ($user->PAY_SALDO < 0) {
+		if ($user->PAY_SALDO <= -0.05) {
 			$msg = "Informujemy Pana/Pania o zalegosci w platnosciach w wysokosci {$zaleglosc} zl.\n";
 			$msg .= "Prosimy o niezwloczne uregulowanie zaleglosci.";
 			$msg .= "<br>W przypadku watpliwosci prosimy o kontakt z Biurem Obslugi Klienta.";
@@ -3914,7 +3914,7 @@ SQL;
 	 * @param $data - array of new user data
 	 *   1. wysłanie 1 wezwania do zapłaty ($user->A_STATUS='wezwanie1'; `PAY_TERM`, `wezwanie1_DATE`, `ID_PROJ`)
 	 *   2. wysłanie 2 wezwania do zapłaty ($user->A_STATUS='wezwanie2'; `PAY_TERM`, `wezwanie2_DATE`, `ID_KORESP`)
-	 *   3. klient spłacił wszystkie zobowiązania (`PAY_SALDO`>=0)
+	 *   3. klient spłacił wszystkie zobowiązania (`PAY_SALDO` >= -0.05)
 	 * TODO: 4. bledny adres klienta - ponowne wyslanie wezwania - niezaleznie od statusu?
 	 * 
 	 * if $user->A_STATUS == 'wezwanie1' @param $data:
@@ -3971,7 +3971,7 @@ SQL;
 
 		// if status not set, check id user saldo is ok
 		if (!isset($data_arr["A_STATUS"])) {
-			if (isset($data['PAY_SALDO']) && $data['PAY_SALDO'] >= 0) {
+			if (isset($data['PAY_SALDO']) && $data['PAY_SALDO'] >= -0.05) {
 				$data_arr["A_STATUS"] = "WAITING";
 			}
 		}
@@ -4171,7 +4171,7 @@ SQL;
 		$ret = array();
 		$db = DB::getDB();
 		$sql = " select w.`A_STATUS`, count(1) as cnt
-				, sum(IF(w.`PAY_SALDO`<0, w.`PAY_SALDO`, 0)) as suma_zaleglosci
+				, sum(IF(w.`PAY_SALDO`<=-0.05, w.`PAY_SALDO`, 0)) as suma_zaleglosci
 			from  `USERS2_WINDYKACJA_STATUS` as w
 				left join `BILLING_USERS_ADD` as a on(a.`id_users`=w.`ID_BILLING_USERS`)
 			where 1=1 {$sqlWhereAdd}
@@ -4184,11 +4184,11 @@ SQL;
 		// filter: 'po-terminie'
 		$sql = "select w.`A_STATUS`
 				, count(1) as cnt
-				, sum(IF(w.`PAY_SALDO`<0, w.`PAY_SALDO`, 0)) as suma_zaleglosci
+				, sum(IF(w.`PAY_SALDO`<=-0.05, w.`PAY_SALDO`, 0)) as suma_zaleglosci
 			from  `USERS2_WINDYKACJA_STATUS` as w
 				left join `BILLING_USERS_ADD` as a on(a.`id_users`=w.`ID_BILLING_USERS`)
 			where
-				w.`PAY_SALDO`<0
+				w.`PAY_SALDO`<=-0.05
 				and w.`PAY_DATE`!='0000-00-00'
 				and w.`PAY_DATE`<DATE_SUB(NOW(), INTERVAL 36 MONTH)
 				{$sqlWhereAdd}
@@ -4200,11 +4200,11 @@ SQL;
 		// filter: '3 m-ce przed'
 		$sql = "select w.`A_STATUS`
 				, count(1) as cnt
-				, sum(IF(w.`PAY_SALDO`<0, w.`PAY_SALDO`, 0)) as suma_zaleglosci
+				, sum(IF(w.`PAY_SALDO`<=-0.05, w.`PAY_SALDO`, 0)) as suma_zaleglosci
 			from  `USERS2_WINDYKACJA_STATUS` as w
 				left join `BILLING_USERS_ADD` as a on(a.`id_users`=w.`ID_BILLING_USERS`)
 			where
-				w.`PAY_SALDO`<0
+				w.`PAY_SALDO`<=-0.05
 				and w.`PAY_DATE`!='0000-00-00'
 				and w.`PAY_DATE`<DATE_SUB(NOW(), INTERVAL 33 MONTH)
 				and w.`PAY_DATE`>DATE_SUB(NOW(), INTERVAL 36 MONTH)
@@ -4217,11 +4217,11 @@ SQL;
 		// filter: 'tel1'
 		$sql = "select w.`A_STATUS`
 				, count(1) as cnt
-				, sum(IF(w.`PAY_SALDO`<0, w.`PAY_SALDO`, 0)) as suma_zaleglosci
+				, sum(IF(w.`PAY_SALDO`<=-0.05, w.`PAY_SALDO`, 0)) as suma_zaleglosci
 			from  `USERS2_WINDYKACJA_STATUS` as w
 				left join `BILLING_USERS_ADD` as a on(a.`id_users`=w.`ID_BILLING_USERS`)
 			where
-				w.`PAY_SALDO`<0
+				w.`PAY_SALDO`<=-0.05
 				and w.`A_STATUS` in('wezwanie1', 'waiting-wezwanie2', 'wezwanie2', 'waiting-krd')
 				and ( w.`LAST_PHONE_STATUS_DATE`='0000-00-00'
 					or w.`LAST_PHONE_STATUS_DATE`<DATE_SUB(NOW(), INTERVAL 14 DAY) )
@@ -4234,11 +4234,11 @@ SQL;
 		// filter: 'bad_address'
 		$sql = "select w.`A_STATUS`
 				, count(1) as cnt
-				, sum(IF(w.`PAY_SALDO`<0, w.`PAY_SALDO`, 0)) as suma_zaleglosci
+				, sum(IF(w.`PAY_SALDO`<=-0.05, w.`PAY_SALDO`, 0)) as suma_zaleglosci
 			from  `USERS2_WINDYKACJA_STATUS` as w
 				left join `BILLING_USERS_ADD` as a on(a.`id_users`=w.`ID_BILLING_USERS`)
 			where
-				w.`PAY_SALDO`<0
+				w.`PAY_SALDO`<=-0.05
 				-- and w.`A_STATUS` in('wezwanie1', 'waiting-wezwanie2', 'wezwanie2', 'waiting-krd')
 				and w.`BAD_ADDRESS`>0
 				{$sqlWhereAdd}
@@ -4248,11 +4248,12 @@ SQL;
 			$ret['bad_address'] = $r;
 		}
 		// filter: 'stan_zero', '10-ego'
+		$stanZeroLimit = -0.05;
 		$sql = "select w.`A_STATUS`
 				, count(1) as cnt
-				, sum(IF(w.`PAY_SALDO`>=0, 1, 0)) as cnt_stan_zero
-				, sum(IF(w.`PAY_SALDO`<0, 1, 0)) as cnt_stan_minus
-				, sum(IF(w.`PAY_SALDO`<0, w.`PAY_SALDO`, 0)) as suma_zaleglosci
+				, sum(IF(w.`PAY_SALDO`>{$stanZeroLimit}, 1, 0)) as cnt_stan_zero
+				, sum(IF(w.`PAY_SALDO`<={$stanZeroLimit}, 1, 0)) as cnt_stan_minus
+				, sum(IF(w.`PAY_SALDO`<={$stanZeroLimit}, w.`PAY_SALDO`, 0)) as suma_zaleglosci
 			from  `USERS2_WINDYKACJA_STATUS` as w
 				left join `BILLING_USERS_ADD` as a on(a.`id_users`=w.`ID_BILLING_USERS`)
 			where
@@ -4321,33 +4322,33 @@ class WindykacjaStatsModel {
 		$filter_selected = WindykacjaStatsHelper::get_filter_selected();
 		if ($filter_selected) {
 			if ($filter_selected == 'po-terminie') {
-				$sql_where_and_arr[] = "w.`PAY_SALDO`<0";
+				$sql_where_and_arr[] = "w.`PAY_SALDO`<=-0.05";
 				$sql_where_and_arr[] = "w.`PAY_DATE`!='0000-00-00'";
 				$sql_where_and_arr[] = "w.`PAY_DATE`<DATE_SUB(NOW(), INTERVAL 36 MONTH)";
 			}
 			else if ($filter_selected == '3 m-ce przed') {
-				$sql_where_and_arr[] = "w.`PAY_SALDO`<0";
+				$sql_where_and_arr[] = "w.`PAY_SALDO`<=-0.05";
 				$sql_where_and_arr[] = "w.`PAY_DATE`!='0000-00-00'";
 				$sql_where_and_arr[] = "w.`PAY_DATE`<DATE_SUB(NOW(), INTERVAL 33 MONTH)";
 				$sql_where_and_arr[] = "w.`PAY_DATE`>DATE_SUB(NOW(), INTERVAL 36 MONTH)";
 			}
 			else if ($filter_selected == 'tel1') {
-				$sql_where_and_arr[] = "w.`PAY_SALDO`<0";
+				$sql_where_and_arr[] = "w.`PAY_SALDO`<=-0.05";
 				$sql_where_and_arr[] = "w.`A_STATUS` in('wezwanie1', 'waiting-wezwanie2', 'wezwanie2', 'waiting-krd')";
 				$sql_where_and_arr[] = "( w.`LAST_PHONE_STATUS_DATE`='0000-00-00'
 					or w.`LAST_PHONE_STATUS_DATE`<DATE_SUB(NOW(), INTERVAL 3 MONTH) )";
 			}
 			else if ($filter_selected == 'bad_address') {
 				$sql_where_and_arr[] = "w.`BAD_ADDRESS`>0";
-				$sql_where_and_arr[] = "w.`PAY_SALDO`<0";
+				$sql_where_and_arr[] = "w.`PAY_SALDO`<=-0.05";
 			}
 			else if ($filter_selected == 'stan_zero') {
 				$sql_where_and_arr[] = "w.`A_STATUS`='WAITING'";
-				$sql_where_and_arr[] = "w.`PAY_SALDO`>=0";
+				$sql_where_and_arr[] = "w.`PAY_SALDO`>-0.05";
 			}
 			else if ($filter_selected == '10-ego') {
 				$sql_where_and_arr[] = "w.`A_STATUS`='WAITING'";
-				$sql_where_and_arr[] = "w.`PAY_SALDO`<0";
+				$sql_where_and_arr[] = "w.`PAY_SALDO`<=-0.05";
 			}
 			else if ($filter_selected == 'has_nr_sad') {
 				$sql_where_and_arr[] = "w.`NR_SPRAWY_SAD`!=''";