import com.google.common.collect.ImmutableMap
import com.liferay.portal.model.Organization
import com.liferay.portal.service.OrganizationLocalServiceUtil
import com.liferay.portal.util.PortalUtil
import cz.vrk.pi.crm.custom.PayingOptions
import cz.vrk.pi.crm.functions.CRMFunctions
import cz.vrk.pi.crm.model.data.provider.DataProviderObject
import cz.vrk.pi.crm.model.model.Member
import cz.vrk.pi.crm.model.service.MemberLocalServiceUtil
import cz.vrk.pi.crm.model.service.PaymentLocalServiceUtil
import vrk.pi.shared.PIModule
import vrk.pi.shared.ViewContext

final ORGANIZATION_NAME = "Retriever klub CZ - Spolek"
final MEMBER_NUMBER = "0086"

Organization org = OrganizationLocalServiceUtil.getOrganization(PortalUtil.defaultCompanyId, ORGANIZATION_NAME)
Member member = MemberLocalServiceUtil.getByOrganizationAndNumber(org.organizationId, MEMBER_NUMBER);
ViewContext viewContext = new ViewContext(themeDisplay, PIModule.CRM, org);

def payments = PaymentLocalServiceUtil.getByMember(member.id)
data = ImmutableMap
        .<String, Object> builder()
        .put(DataProviderObject.MEMBER.getKey(), member)
        .put(DataProviderObject.ORGANIZATION.getKey(), org)
        .put(DataProviderObject.PAYMENTS.getKey(), payments.subList(0, 1))
        .put(DataProviderObject.PAYING_OPTIONS.getKey(),
                PayingOptions.of(true, false, ["Hotově - další"]))
        .put("crmFunctions", new CRMFunctions(viewContext))
        .build();