001    /**
002     * Copyright (c) 2000-2010 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 com.liferay.portal.kernel.annotation.Isolation;
018    import com.liferay.portal.kernel.annotation.Propagation;
019    import com.liferay.portal.kernel.annotation.Transactional;
020    import com.liferay.portal.kernel.exception.PortalException;
021    import com.liferay.portal.kernel.exception.SystemException;
022    
023    /**
024     * The interface for the shopping coupon local service.
025     *
026     * <p>
027     * 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.
028     * </p>
029     *
030     * <p>
031     * This is a local service. Methods of this service will not have security checks based on the propagated JAAS credentials because this service can only be accessed from within the same VM.
032     * </p>
033     *
034     * @author Brian Wing Shun Chan
035     * @see ShoppingCouponLocalServiceUtil
036     * @see com.liferay.portlet.shopping.service.base.ShoppingCouponLocalServiceBaseImpl
037     * @see com.liferay.portlet.shopping.service.impl.ShoppingCouponLocalServiceImpl
038     * @generated
039     */
040    @Transactional(isolation = Isolation.PORTAL, rollbackFor =  {
041            PortalException.class, SystemException.class})
042    public interface ShoppingCouponLocalService {
043            /**
044            * Adds the shopping coupon to the database. Also notifies the appropriate model listeners.
045            *
046            * @param shoppingCoupon the shopping coupon to add
047            * @return the shopping coupon that was added
048            * @throws SystemException if a system exception occurred
049            */
050            public com.liferay.portlet.shopping.model.ShoppingCoupon addShoppingCoupon(
051                    com.liferay.portlet.shopping.model.ShoppingCoupon shoppingCoupon)
052                    throws com.liferay.portal.kernel.exception.SystemException;
053    
054            /**
055            * Creates a new shopping coupon with the primary key. Does not add the shopping coupon to the database.
056            *
057            * @param couponId the primary key for the new shopping coupon
058            * @return the new shopping coupon
059            */
060            public com.liferay.portlet.shopping.model.ShoppingCoupon createShoppingCoupon(
061                    long couponId);
062    
063            /**
064            * Deletes the shopping coupon with the primary key from the database. Also notifies the appropriate model listeners.
065            *
066            * @param couponId the primary key of the shopping coupon to delete
067            * @throws PortalException if a shopping coupon with the primary key could not be found
068            * @throws SystemException if a system exception occurred
069            */
070            public void deleteShoppingCoupon(long couponId)
071                    throws com.liferay.portal.kernel.exception.PortalException,
072                            com.liferay.portal.kernel.exception.SystemException;
073    
074            /**
075            * Deletes the shopping coupon from the database. Also notifies the appropriate model listeners.
076            *
077            * @param shoppingCoupon the shopping coupon to delete
078            * @throws SystemException if a system exception occurred
079            */
080            public void deleteShoppingCoupon(
081                    com.liferay.portlet.shopping.model.ShoppingCoupon shoppingCoupon)
082                    throws com.liferay.portal.kernel.exception.SystemException;
083    
084            /**
085            * Performs a dynamic query on the database and returns the matching rows.
086            *
087            * @param dynamicQuery the dynamic query to search with
088            * @return the matching rows
089            * @throws SystemException if a system exception occurred
090            */
091            @SuppressWarnings("rawtypes")
092            public java.util.List dynamicQuery(
093                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
094                    throws com.liferay.portal.kernel.exception.SystemException;
095    
096            /**
097            * Performs a dynamic query on the database and returns a range of the matching rows.
098            *
099            * <p>
100            * 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.
101            * </p>
102            *
103            * @param dynamicQuery the dynamic query to search with
104            * @param start the lower bound of the range of model instances to return
105            * @param end the upper bound of the range of model instances to return (not inclusive)
106            * @return the range of matching rows
107            * @throws SystemException if a system exception occurred
108            */
109            @SuppressWarnings("rawtypes")
110            public java.util.List dynamicQuery(
111                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
112                    int end) throws com.liferay.portal.kernel.exception.SystemException;
113    
114            /**
115            * Performs a dynamic query on the database and returns an ordered range of the matching rows.
116            *
117            * <p>
118            * 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.
119            * </p>
120            *
121            * @param dynamicQuery the dynamic query to search with
122            * @param start the lower bound of the range of model instances to return
123            * @param end the upper bound of the range of model instances to return (not inclusive)
124            * @param orderByComparator the comparator to order the results by
125            * @return the ordered range of matching rows
126            * @throws SystemException if a system exception occurred
127            */
128            @SuppressWarnings("rawtypes")
129            public java.util.List dynamicQuery(
130                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery, int start,
131                    int end,
132                    com.liferay.portal.kernel.util.OrderByComparator orderByComparator)
133                    throws com.liferay.portal.kernel.exception.SystemException;
134    
135            /**
136            * Counts the number of rows that match the dynamic query.
137            *
138            * @param dynamicQuery the dynamic query to search with
139            * @return the number of rows that match the dynamic query
140            * @throws SystemException if a system exception occurred
141            */
142            public long dynamicQueryCount(
143                    com.liferay.portal.kernel.dao.orm.DynamicQuery dynamicQuery)
144                    throws com.liferay.portal.kernel.exception.SystemException;
145    
146            /**
147            * Gets the shopping coupon with the primary key.
148            *
149            * @param couponId the primary key of the shopping coupon to get
150            * @return the shopping coupon
151            * @throws PortalException if a shopping coupon with the primary key could not be found
152            * @throws SystemException if a system exception occurred
153            */
154            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
155            public com.liferay.portlet.shopping.model.ShoppingCoupon getShoppingCoupon(
156                    long couponId)
157                    throws com.liferay.portal.kernel.exception.PortalException,
158                            com.liferay.portal.kernel.exception.SystemException;
159    
160            /**
161            * Gets a range of all the shopping coupons.
162            *
163            * <p>
164            * 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.
165            * </p>
166            *
167            * @param start the lower bound of the range of shopping coupons to return
168            * @param end the upper bound of the range of shopping coupons to return (not inclusive)
169            * @return the range of shopping coupons
170            * @throws SystemException if a system exception occurred
171            */
172            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
173            public java.util.List<com.liferay.portlet.shopping.model.ShoppingCoupon> getShoppingCoupons(
174                    int start, int end)
175                    throws com.liferay.portal.kernel.exception.SystemException;
176    
177            /**
178            * Gets the number of shopping coupons.
179            *
180            * @return the number of shopping coupons
181            * @throws SystemException if a system exception occurred
182            */
183            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
184            public int getShoppingCouponsCount()
185                    throws com.liferay.portal.kernel.exception.SystemException;
186    
187            /**
188            * Updates the shopping coupon in the database. Also notifies the appropriate model listeners.
189            *
190            * @param shoppingCoupon the shopping coupon to update
191            * @return the shopping coupon that was updated
192            * @throws SystemException if a system exception occurred
193            */
194            public com.liferay.portlet.shopping.model.ShoppingCoupon updateShoppingCoupon(
195                    com.liferay.portlet.shopping.model.ShoppingCoupon shoppingCoupon)
196                    throws com.liferay.portal.kernel.exception.SystemException;
197    
198            /**
199            * Updates the shopping coupon in the database. Also notifies the appropriate model listeners.
200            *
201            * @param shoppingCoupon the shopping coupon to update
202            * @param merge whether to merge the shopping coupon with the current session. See {@link com.liferay.portal.service.persistence.BatchSession#update(com.liferay.portal.kernel.dao.orm.Session, com.liferay.portal.model.BaseModel, boolean)} for an explanation.
203            * @return the shopping coupon that was updated
204            * @throws SystemException if a system exception occurred
205            */
206            public com.liferay.portlet.shopping.model.ShoppingCoupon updateShoppingCoupon(
207                    com.liferay.portlet.shopping.model.ShoppingCoupon shoppingCoupon,
208                    boolean merge)
209                    throws com.liferay.portal.kernel.exception.SystemException;
210    
211            public com.liferay.portlet.shopping.model.ShoppingCoupon addCoupon(
212                    long userId, java.lang.String code, boolean autoCode,
213                    java.lang.String name, java.lang.String description,
214                    int startDateMonth, int startDateDay, int startDateYear,
215                    int startDateHour, int startDateMinute, int endDateMonth,
216                    int endDateDay, int endDateYear, int endDateHour, int endDateMinute,
217                    boolean neverExpire, boolean active, java.lang.String limitCategories,
218                    java.lang.String limitSkus, double minOrder, double discount,
219                    java.lang.String discountType,
220                    com.liferay.portal.service.ServiceContext serviceContext)
221                    throws com.liferay.portal.kernel.exception.PortalException,
222                            com.liferay.portal.kernel.exception.SystemException;
223    
224            public void deleteCoupon(long couponId)
225                    throws com.liferay.portal.kernel.exception.PortalException,
226                            com.liferay.portal.kernel.exception.SystemException;
227    
228            public void deleteCoupons(long groupId)
229                    throws com.liferay.portal.kernel.exception.SystemException;
230    
231            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
232            public com.liferay.portlet.shopping.model.ShoppingCoupon getCoupon(
233                    long couponId)
234                    throws com.liferay.portal.kernel.exception.PortalException,
235                            com.liferay.portal.kernel.exception.SystemException;
236    
237            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
238            public com.liferay.portlet.shopping.model.ShoppingCoupon getCoupon(
239                    java.lang.String code)
240                    throws com.liferay.portal.kernel.exception.PortalException,
241                            com.liferay.portal.kernel.exception.SystemException;
242    
243            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
244            public java.util.List<com.liferay.portlet.shopping.model.ShoppingCoupon> search(
245                    long groupId, long companyId, java.lang.String code, boolean active,
246                    java.lang.String discountType, boolean andOperator, int start, int end)
247                    throws com.liferay.portal.kernel.exception.SystemException;
248    
249            @Transactional(propagation = Propagation.SUPPORTS, readOnly = true)
250            public int searchCount(long groupId, long companyId, java.lang.String code,
251                    boolean active, java.lang.String discountType, boolean andOperator)
252                    throws com.liferay.portal.kernel.exception.SystemException;
253    
254            public com.liferay.portlet.shopping.model.ShoppingCoupon updateCoupon(
255                    long userId, long couponId, java.lang.String name,
256                    java.lang.String description, int startDateMonth, int startDateDay,
257                    int startDateYear, int startDateHour, int startDateMinute,
258                    int endDateMonth, int endDateDay, int endDateYear, int endDateHour,
259                    int endDateMinute, boolean neverExpire, boolean active,
260                    java.lang.String limitCategories, java.lang.String limitSkus,
261                    double minOrder, double discount, java.lang.String discountType,
262                    com.liferay.portal.service.ServiceContext serviceContext)
263                    throws com.liferay.portal.kernel.exception.PortalException,
264                            com.liferay.portal.kernel.exception.SystemException;
265    }