001
014
015 package com.liferay.portlet.shopping.service.impl;
016
017 import com.liferay.portal.kernel.exception.PortalException;
018 import com.liferay.portal.kernel.util.OrderByComparator;
019 import com.liferay.portal.security.permission.ActionKeys;
020 import com.liferay.portal.service.ServiceContext;
021 import com.liferay.portlet.shopping.model.ShoppingItem;
022 import com.liferay.portlet.shopping.model.ShoppingItemField;
023 import com.liferay.portlet.shopping.model.ShoppingItemPrice;
024 import com.liferay.portlet.shopping.service.base.ShoppingItemServiceBaseImpl;
025 import com.liferay.portlet.shopping.service.permission.ShoppingCategoryPermission;
026 import com.liferay.portlet.shopping.service.permission.ShoppingItemPermission;
027
028 import java.io.File;
029
030 import java.util.List;
031
032
035 public class ShoppingItemServiceImpl extends ShoppingItemServiceBaseImpl {
036
037 @Override
038 public ShoppingItem addItem(
039 long groupId, long categoryId, String sku, String name,
040 String description, String properties, String fieldsQuantities,
041 boolean requiresShipping, int stockQuantity, boolean featured,
042 Boolean sale, boolean smallImage, String smallImageURL,
043 File smallFile, boolean mediumImage, String mediumImageURL,
044 File mediumFile, boolean largeImage, String largeImageURL,
045 File largeFile, List<ShoppingItemField> itemFields,
046 List<ShoppingItemPrice> itemPrices, ServiceContext serviceContext)
047 throws PortalException {
048
049 ShoppingCategoryPermission.check(
050 getPermissionChecker(), groupId, categoryId, ActionKeys.ADD_ITEM);
051
052 return shoppingItemLocalService.addItem(
053 getUserId(), groupId, categoryId, sku, name, description,
054 properties, fieldsQuantities, requiresShipping, stockQuantity,
055 featured, sale, smallImage, smallImageURL, smallFile, mediumImage,
056 mediumImageURL, mediumFile, largeImage, largeImageURL, largeFile,
057 itemFields, itemPrices, serviceContext);
058 }
059
060 @Override
061 public void deleteItem(long itemId) throws PortalException {
062 ShoppingItemPermission.check(
063 getPermissionChecker(), itemId, ActionKeys.DELETE);
064
065 shoppingItemLocalService.deleteItem(itemId);
066 }
067
068 @Override
069 public int getCategoriesItemsCount(long groupId, List<Long> categoryIds) {
070 return shoppingItemFinder.filterCountByG_C(groupId, categoryIds);
071 }
072
073 @Override
074 public ShoppingItem getItem(long itemId) throws PortalException {
075 ShoppingItemPermission.check(
076 getPermissionChecker(), itemId, ActionKeys.VIEW);
077
078 return shoppingItemLocalService.getItem(itemId);
079 }
080
081 @Override
082 public List<ShoppingItem> getItems(long groupId, long categoryId) {
083 return shoppingItemPersistence.filterFindByG_C(groupId, categoryId);
084 }
085
086 @Override
087 public List<ShoppingItem> getItems(
088 long groupId, long categoryId, int start, int end,
089 OrderByComparator<ShoppingItem> obc) {
090
091 return shoppingItemPersistence.filterFindByG_C(
092 groupId, categoryId, start, end, obc);
093 }
094
095 @Override
096 public int getItemsCount(long groupId, long categoryId) {
097 return shoppingItemPersistence.filterCountByG_C(groupId, categoryId);
098 }
099
100 @Override
101 public ShoppingItem[] getItemsPrevAndNext(
102 long itemId, OrderByComparator<ShoppingItem> obc)
103 throws PortalException {
104
105 ShoppingItem item = shoppingItemPersistence.findByPrimaryKey(itemId);
106
107 return shoppingItemPersistence.filterFindByG_C_PrevAndNext(
108 item.getItemId(), item.getGroupId(), item.getCategoryId(), obc);
109 }
110
111 @Override
112 public ShoppingItem updateItem(
113 long itemId, long groupId, long categoryId, String sku, String name,
114 String description, String properties, String fieldsQuantities,
115 boolean requiresShipping, int stockQuantity, boolean featured,
116 Boolean sale, boolean smallImage, String smallImageURL,
117 File smallFile, boolean mediumImage, String mediumImageURL,
118 File mediumFile, boolean largeImage, String largeImageURL,
119 File largeFile, List<ShoppingItemField> itemFields,
120 List<ShoppingItemPrice> itemPrices, ServiceContext serviceContext)
121 throws PortalException {
122
123 ShoppingItemPermission.check(
124 getPermissionChecker(), itemId, ActionKeys.UPDATE);
125
126 return shoppingItemLocalService.updateItem(
127 getUserId(), itemId, groupId, categoryId, sku, name, description,
128 properties, fieldsQuantities, requiresShipping, stockQuantity,
129 featured, sale, smallImage, smallImageURL, smallFile, mediumImage,
130 mediumImageURL, mediumFile, largeImage, largeImageURL, largeFile,
131 itemFields, itemPrices, serviceContext);
132 }
133
134 }