001    /**
002     * Copyright (c) 2000-2013 Liferay, Inc. All rights reserved.
003     *
004     * This library is free software; you can redistribute it and/or modify it under
005     * the terms of the GNU Lesser General Public License as published by the Free
006     * Software Foundation; either version 2.1 of the License, or (at your option)
007     * any later version.
008     *
009     * This library is distributed in the hope that it will be useful, but WITHOUT
010     * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
011     * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
012     * details.
013     */
014    
015    package com.liferay.portlet.shopping.service;
016    
017    import aQute.bnd.annotation.ProviderType;
018    
019    import com.liferay.portal.kernel.exception.PortalException;
020    import com.liferay.portal.kernel.exception.SystemException;
021    import com.liferay.portal.kernel.transaction.Isolation;
022    import com.liferay.portal.kernel.transaction.Propagation;
023    import com.liferay.portal.kernel.transaction.Transactional;
024    import com.liferay.portal.service.BaseLocalService;
025    import com.liferay.portal.service.PersistedModelLocalService;
026    
027    /**
028     * Provides the local service interface for ShoppingCoupon. Methods of this
029     * service will not have security checks based on the propagated JAAS
030     * credentials because this service can only be accessed from within the same
031     * VM.
032     *
033     * @author Brian Wing Shun Chan
034     * @see ShoppingCouponLocalServiceUtil
035     * @see com.liferay.portlet.shopping.service.base.ShoppingCouponLocalServiceBaseImpl
036     * @see com.liferay.portlet.shopping.service.impl.ShoppingCouponLocalServiceImpl
037     * @generated
038     */
039    @ProviderType
040    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
041            PortalException.class, SystemException.class})
042    public interface ShoppingCouponLocalService extends BaseLocalService,
043            PersistedModelLocalService {
044            /*
045             * NOTE FOR DEVELOPERS:
046             *
047             * Never modify or reference this interface directly. Always use {@link ShoppingCouponLocalServiceUtil} to access the shopping coupon local service. Add custom service methods to {@link com.liferay.portlet.shopping.service.impl.ShoppingCouponLocalServiceImpl} and rerun ServiceBuilder to automatically copy the method declarations to this interface.
048             */
049    
050            /**
051            * Adds the shopping coupon to the database. Also notifies the appropriate model listeners.
052            *
053            * @param shoppingCoupon the shopping coupon
054            * @return the shopping coupon that was added
055            * @throws SystemException if a system exception occurred
056            */
057            public com.liferay.portlet.shopping.model.ShoppingCoupon addShoppingCoupon(
058                    com.liferay.portlet.shopping.model.ShoppingCoupon shoppingCoupon)
059                    throws com.liferay.portal.kernel.exception.SystemException;
060    
061            /**
062            * Creates a new shopping coupon with the primary key. Does not add the shopping coupon to the database.
063            *
064            * @param couponId the primary key for the new shopping coupon
065            * @return the new shopping coupon
066            */
067            public com.liferay.portlet.shopping.model.ShoppingCoupon createShoppingCoupon(
068                    long couponId);
069    
070            /**
071            * Deletes the shopping coupon with the primary key from the database. Also notifies the appropriate model listeners.
072            *
073            * @param couponId the primary key of the shopping coupon
074            * @return the shopping coupon that was removed
075            * @throws PortalException if a shopping coupon with the primary key could not be found
076            * @throws SystemException if a system exception occurred
077            */
078            public com.liferay.portlet.shopping.model.ShoppingCoupon deleteShoppingCoupon(
079                    long couponId)
080                    throws com.liferay.portal.kernel.exception.PortalException,
081                            com.liferay.portal.kernel.exception.SystemException;
082    
083            /**
084            * Deletes the shopping coupon from the database. Also notifies the appropriate model listeners.
085            *
086            * @param shoppingCoupon the shopping coupon
087            * @return the shopping coupon that was removed
088            * @throws SystemException if a system exception occurred
089            */
090            public com.liferay.portlet.shopping.model.ShoppingCoupon deleteShoppingCoupon(
091                    com.liferay.portlet.shopping.model.ShoppingCoupon shoppingCoupon)
092                    throws com.liferay.portal.kernel.exception.SystemException;
093    
094            public com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery();
095    
096            /**
097            * Performs a dynamic query on the database and returns the matching rows.
098            *
099            * @param dynamicQuery the dynamic query
100            * @return the matching rows
101            * @throws SystemException if a system exception occurred
102            */
103            @SuppressWarnings("rawtypes")
104            public java.util.List dynamicQuery(
105                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
106                    throws com.liferay.portal.kernel.exception.SystemException;
107    
108            /**
109            * Performs a dynamic query on the database and returns a range of the matching rows.
110            *
111            * <p>
112            * Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set. If <code>orderByComparator</code> is specified, then the query will include the given ORDER BY logic. If <code>orderByComparator</code> is absent and pagination is required (<code>start</code> and <code>end</code> are not {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS}), then the query will include the default ORDER BY logic from {@link com.liferay.portlet.shopping.model.impl.ShoppingCouponModelImpl}. If both <code>orderByComparator</code> and pagination are absent, for performance reasons, the query will not have an ORDER BY clause and the returned result set will be sorted on by the primary key in an ascending order.
113            * </p>
114            *
115            * @param dynamicQuery the dynamic query
116            * @param start the lower bound of the range of model instances
117            * @param end the upper bound of the range of model instances (not inclusive)
118            * @return the range of matching rows
119            * @throws SystemException if a system exception occurred
120            */
121            @SuppressWarnings("rawtypes")
122            public java.util.List dynamicQuery(
123                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
124                    int end) throws com.liferay.portal.kernel.exception.SystemException;
125    
126            /**
127            * Performs a dynamic query on the database and returns an ordered range of the matching rows.
128            *
129            * <p>
130            * Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set. If <code>orderByComparator</code> is specified, then the query will include the given ORDER BY logic. If <code>orderByComparator</code> is absent and pagination is required (<code>start</code> and <code>end</code> are not {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS}), then the query will include the default ORDER BY logic from {@link com.liferay.portlet.shopping.model.impl.ShoppingCouponModelImpl}. If both <code>orderByComparator</code> and pagination are absent, for performance reasons, the query will not have an ORDER BY clause and the returned result set will be sorted on by the primary key in an ascending order.
131            * </p>
132            *
133            * @param dynamicQuery the dynamic query
134            * @param start the lower bound of the range of model instances
135            * @param end the upper bound of the range of model instances (not inclusive)
136            * @param orderByComparator the comparator to order the results by (optionally <code>null</code>)
137            * @return the ordered range of matching rows
138            * @throws SystemException if a system exception occurred
139            */
140            @SuppressWarnings("rawtypes")
141            public java.util.List dynamicQuery(
142                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
143                    int end,
144                    com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
145                    throws com.liferay.portal.kernel.exception.SystemException;
146    
147            /**
148            * Returns the number of rows that match the dynamic query.
149            *
150            * @param dynamicQuery the dynamic query
151            * @return the number of rows that match the dynamic query
152            * @throws SystemException if a system exception occurred
153            */
154            public long dynamicQueryCount(
155                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
156                    throws com.liferay.portal.kernel.exception.SystemException;
157    
158            /**
159            * Returns the number of rows that match the dynamic query.
160            *
161            * @param dynamicQuery the dynamic query
162            * @param projection the projection to apply to the query
163            * @return the number of rows that match the dynamic query
164            * @throws SystemException if a system exception occurred
165            */
166            public long dynamicQueryCount(
167                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery,
168                    com.liferay.portal.kernel.dao.orm.Projection projection)
169                    throws com.liferay.portal.kernel.exception.SystemException;
170    
171            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
172            public com.liferay.portlet.shopping.model.ShoppingCoupon fetchShoppingCoupon(
173                    long couponId)
174                    throws com.liferay.portal.kernel.exception.SystemException;
175    
176            /**
177            * Returns the shopping coupon with the primary key.
178            *
179            * @param couponId the primary key of the shopping coupon
180            * @return the shopping coupon
181            * @throws PortalException if a shopping coupon with the primary key could not be found
182            * @throws SystemException if a system exception occurred
183            */
184            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
185            public com.liferay.portlet.shopping.model.ShoppingCoupon getShoppingCoupon(
186                    long couponId)
187                    throws com.liferay.portal.kernel.exception.PortalException,
188                            com.liferay.portal.kernel.exception.SystemException;
189    
190            @Override
191            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
192            public com.liferay.portal.model.PersistedModel getPersistedModel(
193                    java.io.Serializable primaryKeyObj)
194                    throws com.liferay.portal.kernel.exception.PortalException,
195                            com.liferay.portal.kernel.exception.SystemException;
196    
197            /**
198            * Returns a range of all the shopping coupons.
199            *
200            * <p>
201            * Useful when paginating results. Returns a maximum of <code>end - start</code> instances. <code>start</code> and <code>end</code> are not primary keys, they are indexes in the result set. Thus, <code>0</code> refers to the first result in the set. Setting both <code>start</code> and <code>end</code> to {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS} will return the full result set. If <code>orderByComparator</code> is specified, then the query will include the given ORDER BY logic. If <code>orderByComparator</code> is absent and pagination is required (<code>start</code> and <code>end</code> are not {@link com.liferay.portal.kernel.dao.orm.QueryUtil#ALL_POS}), then the query will include the default ORDER BY logic from {@link com.liferay.portlet.shopping.model.impl.ShoppingCouponModelImpl}. If both <code>orderByComparator</code> and pagination are absent, for performance reasons, the query will not have an ORDER BY clause and the returned result set will be sorted on by the primary key in an ascending order.
202            * </p>
203            *
204            * @param start the lower bound of the range of shopping coupons
205            * @param end the upper bound of the range of shopping coupons (not inclusive)
206            * @return the range of shopping coupons
207            * @throws SystemException if a system exception occurred
208            */
209            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
210            public java.util.List<com.liferay.portlet.shopping.model.ShoppingCoupon> getShoppingCoupons(
211                    int start, int end)
212                    throws com.liferay.portal.kernel.exception.SystemException;
213    
214            /**
215            * Returns the number of shopping coupons.
216            *
217            * @return the number of shopping coupons
218            * @throws SystemException if a system exception occurred
219            */
220            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
221            public int getShoppingCouponsCount()
222                    throws com.liferay.portal.kernel.exception.SystemException;
223    
224            /**
225            * Updates the shopping coupon in the database or adds it if it does not yet exist. Also notifies the appropriate model listeners.
226            *
227            * @param shoppingCoupon the shopping coupon
228            * @return the shopping coupon that was updated
229            * @throws SystemException if a system exception occurred
230            */
231            public com.liferay.portlet.shopping.model.ShoppingCoupon updateShoppingCoupon(
232                    com.liferay.portlet.shopping.model.ShoppingCoupon shoppingCoupon)
233                    throws com.liferay.portal.kernel.exception.SystemException;
234    
235            /**
236            * Returns the Spring bean ID for this bean.
237            *
238            * @return the Spring bean ID for this bean
239            */
240            public java.lang.String getBeanIdentifier();
241    
242            /**
243            * Sets the Spring bean ID for this bean.
244            *
245            * @param beanIdentifier the Spring bean ID for this bean
246            */
247            public void setBeanIdentifier(java.lang.String beanIdentifier);
248    
249            public com.liferay.portlet.shopping.model.ShoppingCoupon addCoupon(
250                    long userId, java.lang.String code, boolean autoCode,
251                    java.lang.String name, java.lang.String description,
252                    int startDateMonth, int startDateDay, int startDateYear,
253                    int startDateHour, int startDateMinute, int endDateMonth,
254                    int endDateDay, int endDateYear, int endDateHour, int endDateMinute,
255                    boolean neverExpire, boolean active, java.lang.String limitCategories,
256                    java.lang.String limitSkus, double minOrder, double discount,
257                    java.lang.String discountType,
258                    com.liferay.portal.service.ServiceContext serviceContext)
259                    throws com.liferay.portal.kernel.exception.PortalException,
260                            com.liferay.portal.kernel.exception.SystemException;
261    
262            public void deleteCoupon(long couponId)
263                    throws com.liferay.portal.kernel.exception.PortalException,
264                            com.liferay.portal.kernel.exception.SystemException;
265    
266            public void deleteCoupon(
267                    com.liferay.portlet.shopping.model.ShoppingCoupon coupon)
268                    throws com.liferay.portal.kernel.exception.SystemException;
269    
270            public void deleteCoupons(long groupId)
271                    throws com.liferay.portal.kernel.exception.SystemException;
272    
273            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
274            public com.liferay.portlet.shopping.model.ShoppingCoupon getCoupon(
275                    long couponId)
276                    throws com.liferay.portal.kernel.exception.PortalException,
277                            com.liferay.portal.kernel.exception.SystemException;
278    
279            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
280            public com.liferay.portlet.shopping.model.ShoppingCoupon getCoupon(
281                    java.lang.String code)
282                    throws com.liferay.portal.kernel.exception.PortalException,
283                            com.liferay.portal.kernel.exception.SystemException;
284    
285            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
286            public java.util.List<com.liferay.portlet.shopping.model.ShoppingCoupon> search(
287                    long groupId, long companyId, java.lang.String code, boolean active,
288                    java.lang.String discountType, boolean andOperator, int start, int end)
289                    throws com.liferay.portal.kernel.exception.SystemException;
290    
291            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
292            public int searchCount(long groupId, long companyId, java.lang.String code,
293                    boolean active, java.lang.String discountType, boolean andOperator)
294                    throws com.liferay.portal.kernel.exception.SystemException;
295    
296            public com.liferay.portlet.shopping.model.ShoppingCoupon updateCoupon(
297                    long userId, long couponId, java.lang.String name,
298                    java.lang.String description, int startDateMonth, int startDateDay,
299                    int startDateYear, int startDateHour, int startDateMinute,
300                    int endDateMonth, int endDateDay, int endDateYear, int endDateHour,
301                    int endDateMinute, boolean neverExpire, boolean active,
302                    java.lang.String limitCategories, java.lang.String limitSkus,
303                    double minOrder, double discount, java.lang.String discountType,
304                    com.liferay.portal.service.ServiceContext serviceContext)
305                    throws com.liferay.portal.kernel.exception.PortalException,
306                            com.liferay.portal.kernel.exception.SystemException;
307    }