пытаюсь переделать
вот этот отчет с использованием API дошел покачто только до этого, не могу понять как привязать тп к учетке и чтоб он просматривал каждый день какой тп стоит и плюсовал куда надо.
Код:
class PaymentUtil
{
/**
* Метод
* @period из какого периода буудут складываться данные
* @paymentList список всевозможных платежей
* @return хеш <id_пользователя, сумма_платежей>
*/
public static Map<Integer, BigDecimal> getUserMonthSum(Date period, List<Payment> paymentList)
{
Map<Integer, BigDecimal> userMonthSum = new HashSet<Integer, BigDecimal>()
// из Date в Calendar для того, что бы выдирать номер месяца
Calendar selectedPeriod = Calendar.getInstance();
selectedPeriod.setTime(period);
// цикл по всему списку переданных платежей
for (Payment payment : paymentList)
{
Calendar paymentDate = Calendar.getInstance();
paymentDate.setTime(payment.getPaymentDate());
// суммировать только по тому месяцу, который нужен
if (paymentDate.get(Calendar.MONTH) == selectedPeriod.get(Calendar.MONTH))
{
// переводим ID пользователя в объект, тк Map другое
// в качестве параметра не воспринимает
Integer userID = new Integer(payment.getUserID());
// сумма платежей пользователя за текущий месяц
BigDecimal curSum = userMonthSum.get(userID);
BigDecimal curPay = payment.getSumma();
// если есть уже какая-то сумма, то складываем
if (curSum != null)
curPay = curPay.add(curSum);
// складываем в мап
userMonthSum.put(userID, curPay);
}
}
return userMonthSum;
}
}
_________________
Код:
Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegramСтиль программирования - пьяный мастерстер
Разработка мобильных приложений