From 99ca2755b23f8d4d3a4000effefc60947e84504a Mon Sep 17 00:00:00 2001 From: Maxim Mamontov Date: Thu, 20 Oct 2011 13:53:11 +0300 Subject: [PATCH] Fix fee charge rules with non-zero credit --- projects/stargazer/user_impl.cpp | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/projects/stargazer/user_impl.cpp b/projects/stargazer/user_impl.cpp index ca2e2cae..733e6256 100644 --- a/projects/stargazer/user_impl.cpp +++ b/projects/stargazer/user_impl.cpp @@ -1243,11 +1243,11 @@ switch (settings->GetFeeChargeType()) property.cash.Set(c - fee, sysAdmin, login, store, "Subscriber fee charge"); break; case 1: - if (c >= 0) + if (c + credit >= 0) property.cash.Set(c - fee, sysAdmin, login, store, "Subscriber fee charge"); break; case 2: - if (c >= fee) + if (c + credit >= fee) property.cash.Set(c - fee, sysAdmin, login, store, "Subscriber fee charge"); break; } @@ -1285,8 +1285,10 @@ if (fee == 0.0) } double c = cash; -printfd(__FILE__, "login: %8s Fee=%f PassiveTimePart=%f fee=%f\n", +printfd(__FILE__, "login: %8s Cash=%f Credit=%f Fee=%f PassiveTimePart=%f fee=%f\n", login.c_str(), + cash.ConstData(), + credit.ConstData(), tariff->GetFee(), passiveTimePart, fee); @@ -1297,14 +1299,14 @@ switch (settings->GetFeeChargeType()) SetPrepaidTraff(); break; case 1: - if (c >= 0) + if (c + credit >= 0) { property.cash.Set(c - fee, sysAdmin, login, store, "Subscriber fee charge"); SetPrepaidTraff(); } break; case 2: - if (c >= fee) + if (c + credit >= fee) { property.cash.Set(c - fee, sysAdmin, login, store, "Subscriber fee charge"); SetPrepaidTraff(); -- 2.44.2