| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- import mongoose from "mongoose";
- import {
- RecommendedProduct
- } from "../../../models";
- import {
- DeleteRecommendedProductResult,
- DeleteRecommendedProductInput
- } from "./types";
- const deleteRecommendedProduct = async (userID: string, input: DeleteRecommendedProductInput): Promise<DeleteRecommendedProductResult> => {
- try {
- const {
- recommendedProductIDs
- } = input;
- if (recommendedProductIDs.length === 0) {
- return {
- message: "recommendedProductIDs-cannot-be-empty",
- code: 400
- };
- }
- const objectIdArray = recommendedProductIDs.map(id => new mongoose.Types.ObjectId(id));
- const result = await RecommendedProduct.deleteMany({
- _id: {
- $in: objectIdArray
- },
- userID: userID
- });
- if (result.deletedCount === 0) {
- return {
- message: "recommended-product-not-found-or-unauthorized",
- code: 404
- };
- }
- return {
- message: "recommended-product-deleted-successfully",
- code: 200
- };
- } catch (error) {
- console.error("DeleteRecommendedProduct action error:", error);
- return {
- message: "internal-server-error",
- code: 500
- };
- }
- };
- export default deleteRecommendedProduct;
|