示例#1
0
        public ActionResult deleteCatalogueCollection(long commercialCatalogueId, long customizedProductCollectionId)
        {
            try
            {
                DeleteCatalogueCollectionModelView deleteCatalogueCollectionModelView = new DeleteCatalogueCollectionModelView();
                deleteCatalogueCollectionModelView.commercialCatalogueId         = commercialCatalogueId;
                deleteCatalogueCollectionModelView.customizedProductCollectionId = customizedProductCollectionId;

                new core.application.CommercialCatalogueController().deleteCatalogueCollection(deleteCatalogueCollectionModelView);

                return(NoContent());
            }
            catch (ResourceNotFoundException e)
            {
                return(NotFound(new SimpleJSONMessageService(e.Message)));
            }
            catch (Exception)
            {
                return(StatusCode(500, new SimpleJSONMessageService(UNEXPECTED_ERROR)));
            }
        }
示例#2
0
        /// <summary>
        /// Removes an instance of CatalogueCollection from a CommercialCatalogue.
        /// </summary>
        /// <param name="deleteCatalogueCollectionModelView">DeleteCatalogueCollectionModelView with the CusttotmizedProductCollection and CommercialCatalogue's identifiers.</param>
        /// <exception cref="ResourceNotFoundException">Thrown when no CommercialCatalogue or CatalogueCollection could be found.</exception>
        public void deleteCatalogueCollection(DeleteCatalogueCollectionModelView deleteCatalogueCollectionModelView)
        {
            CommercialCatalogueRepository catalogueRepository = PersistenceContext.repositories().createCommercialCatalogueRepository();

            CommercialCatalogue commercialCatalogue = catalogueRepository.find(deleteCatalogueCollectionModelView.commercialCatalogueId);

            if (commercialCatalogue == null)
            {
                throw new ResourceNotFoundException(string.Format(CATALOGUE_NOT_FOUND_BY_ID, deleteCatalogueCollectionModelView.commercialCatalogueId));
            }

            CatalogueCollection catalogueCollection = commercialCatalogue.catalogueCollectionList
                                                      .Where(cc => cc.customizedProductCollection.Id == deleteCatalogueCollectionModelView.customizedProductCollectionId).SingleOrDefault();

            if (catalogueCollection == null)
            {
                throw new ResourceNotFoundException(string.Format(
                                                        CATALOGUE_COLLECTION_NOT_FOUND_BY_ID, deleteCatalogueCollectionModelView.customizedProductCollectionId, deleteCatalogueCollectionModelView.commercialCatalogueId
                                                        ));
            }

            commercialCatalogue.removeCollection(catalogueCollection);
            catalogueRepository.update(commercialCatalogue);
        }