@SuppressWarnings("unchecked") private boolean deleteProduct(String productId) { IRepositoryAdapter<Product, ?> adapter = RepositoryAdapterFactory.getRepositoryAdapter( super.getORMProvider( "com.yoku.server.core.services.product.ProductService.deleteProduct")); return adapter.deleteById(Product.class, (Serializable) productId); }
@SuppressWarnings("unchecked") private void persistFashionProduct(Product product, ProductDetailsRequestDTO request) { ProductFashion productFashion = new ProductAssembler().productFashionEntity(product.getProductId(), request); IRepositoryAdapter<Product, ?> adapter = RepositoryAdapterFactory.getRepositoryAdapter( super.getORMProvider( "com.yoku.server.core.services.product.ProductService.createAndregister")); product.setProductFashion(productFashion); productFashion.setProduct(product); adapter.save(product); logger.info("Fashion Product with product ID: " + product.getProductId() + " persisted"); }
@SuppressWarnings("unchecked") private ProductSpecificDetailsResponseDTO getRestaurantProduct( String merchantID, String productId, ProductSpecificDetailsResponseDTO response) { IRepositoryAdapter<ProductRestaurant, ?> adapter = RepositoryAdapterFactory.getRepositoryAdapter( super.getORMProvider( "com.yoku.server.core.services.product.ProductService.getRestaurantProduct")); ProductRestaurant productRestaurant = adapter.fetchByID(ProductRestaurant.class, (Serializable) productId); response = new ProductAssembler() .createResponseForMerchantProductRestaurantDetailsResponseDTO( merchantID, productRestaurant, response); return response; }
@SuppressWarnings("unchecked") public MerchantBusinessViewEntity getMerchantBusinessDetails(String merchantId) { String query; List<MerchantBusinessViewEntity> merchantBusinessViewEntity = new ArrayList<MerchantBusinessViewEntity>(); IRepositoryAdapter<MerchantBusinessViewEntity, ?> adapter = RepositoryAdapterFactory.getRepositoryAdapter( super.getORMProvider( "com.yoku.server.core.services.product.ProductService.createAndregister")); logger.info( "New Product Registration initiated. Product Registration ID : " + productRegistrationId + " For the Merchant ID : " + merchantId); query = "from MerchantBusinessViewEntity merchantBusinessViewEntity where merchantBusinessViewEntity.merchantID='" + merchantId + "'"; merchantBusinessViewEntity = adapter.executeReadQuery(query); return (MerchantBusinessViewEntity) merchantBusinessViewEntity.get(0); }
@SuppressWarnings("unchecked") public MerchantProductSubCategoryResponseDTO getSubCategoryForEndorsedProduct( String merchantId, String businessCategory) { MerchantProductSubCategoryResponseDTO response = new MerchantProductSubCategoryResponseDTO(); String query; List<ProductSubCategory> productSubCategory = new ArrayList<ProductSubCategory>(); IRepositoryAdapter<ProductSubCategory, ?> adapter = RepositoryAdapterFactory.getRepositoryAdapter( super.getORMProvider( "com.yoku.server.core.services.product.ProductService.getSubCategoryForEndorsedProduct")); query = "from ProductSubCategory productSubCategory where productSubCategory.businessCategory = '" + businessCategory + "'"; productSubCategory = (List<ProductSubCategory>) adapter.executeReadQuery(query); response = new ProductAssembler() .createResponseForProductSubCategoryResponseDTO( (List<ProductSubCategory>) productSubCategory, response); return response; }
@SuppressWarnings("unchecked") private MerchantProductListingResponseDTO getAllRestaurantProduct( String merchantID, String businessCategory, MerchantProductListingResponseDTO response) { String query; List<ProductRestaurant> productRestaurant = new ArrayList<ProductRestaurant>(); IRepositoryAdapter<ProductFashion, ?> adapter = RepositoryAdapterFactory.getRepositoryAdapter( super.getORMProvider( "com.yoku.server.core.services.product.ProductService.readAllProductsForMerchant")); query = "select productRestaurant from ProductRestaurant productRestaurant, Product product where product.merchantId = '" + merchantID + "' and product.productId=productRestaurant.productId"; productRestaurant = (List<ProductRestaurant>) adapter.executeReadQuery(query); response = new ProductAssembler() .createResponseForMerchantProductRestaurantListingResponseDTO( (List<ProductRestaurant>) productRestaurant, businessCategory, response); return response; }