Package com.abiquo.server.core.pricing

Source Code of com.abiquo.server.core.pricing.PricingRep

/**
* Copyright (C) 2008 - Abiquo Holdings S.L. All rights reserved.
*
* Please see /opt/abiquo/tomcat/webapps/legal/ on Abiquo server
* or contact contact@abiquo.com for licensing information.
*/
package com.abiquo.server.core.pricing;

import java.util.Collection;
import java.util.List;

import javax.persistence.EntityManager;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Transactional;

import com.abiquo.server.core.common.DefaultRepBase;
import com.abiquo.server.core.enterprise.EnterpriseRep;
import com.abiquo.server.core.infrastructure.storage.StorageRep;
import com.abiquo.server.core.infrastructure.storage.Tier;

@Repository
@Transactional
public class PricingRep extends DefaultRepBase
{

    @Autowired
    private CurrencyDAO currencyDao;

    @Autowired
    private PricingTemplateDAO pricingTemplateDao;

    @Autowired
    private CostCodeDAO costCodeDao;

    @Autowired
    private CostCodeCurrencyDAO costCodeCurrencyDao;

    @Autowired
    private PricingCostCodeDAO pricingCostCodeDao;

    @Autowired
    private PricingTierDAO pricingTierDao;

    @Autowired
    private EnterpriseRep enterpriseRep;

    @Autowired
    private StorageRep storageRep;

    public PricingRep()
    {

    }

    public PricingRep(final EntityManager entityManager)
    {
        assert entityManager != null;
        assert entityManager.isOpen();

        this.entityManager = entityManager;
        enterpriseRep = new EnterpriseRep(entityManager);
        storageRep = new StorageRep(entityManager);
        pricingTemplateDao = new PricingTemplateDAO(entityManager);
        currencyDao = new CurrencyDAO(entityManager);
        costCodeDao = new CostCodeDAO(entityManager);
        costCodeCurrencyDao = new CostCodeCurrencyDAO(entityManager);
        pricingCostCodeDao = new PricingCostCodeDAO(entityManager);
        pricingTierDao = new PricingTierDAO(entityManager);
    }

    public List<Currency> findAllCurrency()
    {
        return currencyDao.findAll();
    }

    public Integer insertCurrency(final Currency currency)
    {
        if (currency != null)
        {
            currencyDao.persist(currency);
            currencyDao.flush();
        }

        return currency.getId();
    }

    public Currency findCurrencyById(final Integer currencyId)
    {
        return currencyDao.findById(currencyId);
    }

    public void removeCurrency(final Currency currency)
    {
        if (currency != null)
        {
            currencyDao.remove(currency);
            currencyDao.flush();
        }
    }

    public void updateCurrency(final Currency currency)
    {
        assert currency != null;
        assert currencyDao.isManaged(currency);
        // assert !existsAnyOtherRackWithName(rack, rack.getName()) :
        // BUG_UPDATE_RACK_NAME_MUST_BE_UNIQUE;

        this.currencyDao.flush();

    }

    public void insertPricingTemplate(final PricingTemplate pricingTemplate)
    {

        if (pricingTemplate != null)
        {
            pricingTemplateDao.persist(pricingTemplate);
            pricingTemplateDao.flush();
        }
    }

    public boolean existAnyPricTempWithSameName(final String name)
    {
        return pricingTemplateDao.existAnyPricTempWithSameName(name);
    }

    public List<PricingTemplate> findPricingTemplates(final String filter, final String order,
        final boolean desc, final Integer numResults, final Integer startwith)
    {
        return pricingTemplateDao.find(filter, order, desc, numResults, startwith);
    }

    public PricingTemplate findPricingTemplateById(final Integer id)
    {
        return pricingTemplateDao.findById(id);
    }

    public List<PricingTemplate> findPricingTemplatesByCurrency(final Integer id)
    {
        return pricingTemplateDao.findPricingTemplatesByCurrency(id);
    }

    public void updatePricingTemplate(final PricingTemplate pricingTemplate)
    {
        pricingTemplateDao.flush();
    }

    public List<PricingTemplate> findAllPricingTemplateByName(final String name)
    {
        return pricingTemplateDao.findAllPricingTemplateByName(name);
    }

    public List<PricingTemplate> findPricingTemplats()
    {
        return pricingTemplateDao.findAll();
    }

    public boolean existAnyOtherPricingTempWithName(final PricingTemplate pricingTemplate,
        final String name)
    {
        return pricingTemplateDao.existAnyOtherPricingTempWithName(pricingTemplate, name);
    }

    public boolean existAnyEnterpriseWithPricingTemplate(final PricingTemplate pricingTemplate)
    {
        return enterpriseRep.existAnyEnterpriseWithPricingTemplate(pricingTemplate);
    }

    public void deletePricingTemplate(final PricingTemplate pricingTemplate)
    {
        pricingTemplateDao.remove(pricingTemplate);
    }

    public void deletePricingTier(final PricingTier pricingTier)
    {
        pricingTierDao.remove(pricingTier);
    }

    public CostCode findCostCodeById(final Integer costCodeId)
    {
        return costCodeDao.findById(costCodeId);
    }

    public CostCodeCurrency findCurrencyCostCode(final CostCode costCode, final Currency currency)
    {
        return costCodeCurrencyDao.findCurrencyCostCode(costCode, currency);
    }

    public void insertCostCodeCurrency(final CostCodeCurrency costCodeCurrency)
    {
        costCodeCurrencyDao.persist(costCodeCurrency);
    }

    public void insertCostCode(final CostCode costCode)
    {
        if (costCode != null)
        {
            costCodeDao.persist(costCode);
            costCodeDao.flush();
        }
    }

    public CostCodeCurrency findCostCodeCurrencyById(final Integer id)
    {
        return costCodeCurrencyDao.findById(id);
    }

    public void updateCostCodeCurrency(final CostCodeCurrency costCodeCurrency)
    {
        costCodeCurrencyDao.flush();
    }

    public boolean existAnyOtherWithCurrency(final CostCodeCurrency costCodeCurrency,
        final Currency currency, final CostCode costCode)
    {
        return costCodeCurrencyDao.existAnyOtherWithCurrency(costCodeCurrency, currency, costCode);
    }

    public void deleteCostCode(final CostCode costCode)
    {
        costCodeDao.remove(costCode);

    }

    public void deleteCostCodecurrency(final CostCodeCurrency costCodeCurrency)
    {
        costCodeCurrencyDao.remove(costCodeCurrency);
    }

    public boolean existAnyOtherCostCodeWithName(final CostCode costCode, final String name)
    {
        return costCodeDao.existAnyOtherCostCodeWithName(costCode, name);
    }

    public void updateCostCode(final CostCode costCode)
    {
        costCodeDao.flush();

    }

    public boolean existAnyOtherCostCodeWithName(final String name)
    {

        return costCodeDao.existAnyOtherCostCodeWithName(name);
    }

    public Collection<CostCodeCurrency> findCostCodeCurrencies(final CostCode cc,
        final Currency currency)
    {

        return costCodeCurrencyDao.find(cc, currency);

    }

    public List<CostCode> findCostCodes(final String filter, final String order,
        final boolean desc, final int page, final int numResults)
    {
        return costCodeDao.find(filter, order, desc, page, numResults);
    }

    public PricingCostCode findPricingCostCode(final CostCode costCode,
        final PricingTemplate pricing)
    {
        return pricingCostCodeDao.findPricingCostCode(costCode, pricing);
    }

    public void insertPricingCostCode(final PricingCostCode pricingCostCode)
    {
        pricingCostCodeDao.persist(pricingCostCode);
    }

    public List<CostCode> findCostCodesIds()
    {
        return costCodeCurrencyDao.findCostCodesIds();
    }

    public boolean existAnyOtherCurrencyWithName(final String name)
    {
        return currencyDao.existAnyOtherCurrencyWithName(name);
    }

    public Collection<PricingCostCode> findPricingCostCodes(final PricingTemplate pricing)
    {
        return pricingCostCodeDao.findPricingCostCodes(pricing);
    }

    public List<Currency> findCurrencies()
    {
        return currencyDao.findAll();
    }

    public PricingCostCode findPricingCostCodeById(final Integer id)
    {
        return pricingCostCodeDao.findById(id);
    }

    public boolean existAnyOtherWithCostCode(final PricingCostCode pricingCostCode,
        final CostCode costCode, final PricingTemplate pricingTemplate)
    {
        return pricingCostCodeDao.existAnyOtherWithCostCode(pricingCostCode, costCode,
            pricingTemplate);

    }

    public void updatePricingCostCode(final PricingCostCode old)
    {
        pricingCostCodeDao.flush();
    }

    public Collection<PricingTier> findPricingTiers(final PricingTemplate pricing)
    {
        return pricingTierDao.findPricingTiers(pricing);
    }

    public void insertPricingTier(final PricingTier pricingTier)
    {
        pricingTierDao.persist(pricingTier);
    }

    public PricingTier findPricingTier(final Tier tier, final PricingTemplate pricing)
    {
        return pricingTierDao.findPricingTier(tier, pricing);
    }

    public PricingTier findPricingTierById(final Integer id)
    {
        return pricingTierDao.findById(id);
    }

    public void updatePricingTier(final PricingTier old)
    {
        pricingTierDao.flush();

    }

    public Collection<PricingTier> findPricingTierByTier(final Tier tier)
    {
        return pricingTierDao.findPricingTiers(tier);
    }

    public Tier findTierById(final Integer id)
    {
        return storageRep.findTierById(id);
    }

    public boolean existAnyOtherCurrencyWithName(final Currency currency, final String name)
    {
        return currencyDao.existAnyOtherCurrencyWithName(currency, name);
    }

    public Collection<Currency> findAllCurrency(final String filter, final String orderBy,
        final boolean desc, final Integer page, final Integer numResults)
    {
        return currencyDao.find(filter, orderBy, desc, page, numResults);
    }

}
TOP

Related Classes of com.abiquo.server.core.pricing.PricingRep

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.