Subversion Repositories SmartDukaan

Rev

Blame | Last modification | View Log | RSS feed

package in.shop2020.user.persistence;

import java.util.Date;
import java.util.List;

import org.apache.ibatis.annotations.Param;

import in.shop2020.model.v1.user.CartStatus;
import in.shop2020.model.v1.user.LineStatus;
import in.shop2020.user.domain.Cart;
import in.shop2020.user.domain.Line;

public interface CartMapper {

        void createCart(Cart cart);

        void setUser(@Param("userId") long userId, @Param("id") long id);

        Cart getCart(long id);

        List<Cart> getCartsForUser(@Param("userId") long userId, @Param("status") CartStatus status);

        void changeCartStatus(@Param("cartId") long cartId, @Param("status") int status);

        List<Cart> getCartsByStatus(int status);

        List<Cart> getCartsByTime(@Param("from_time") long from_time, @Param("to_time") long to_time,
                        @Param("value") int value);

        long getCartsWithCouponCount(String couponCode);

        Line getLine(@Param("itemId") long itemId, @Param("cartId") long cartId, @Param("status") long status);

        void updateLine(Line line);

        void updateCartUpdatedTime(@Param("date") Date date, @Param("cartId") long cartId);

        void addAddressToCart(@Param("cartId") long cartId, @Param("addressId") long addressId);

        void insertDiscount(in.shop2020.user.domain.Discount discount);

        void updateCart(Cart cart);

        void insertLine(Line line);

        void updateLineQuantity(@Param("quantity") long quantity, @Param("cartId") long cartId,
                        @Param("itemId") long itemId, @Param("date") Date date);

        void deleteDiscountForLine(@Param("cartId") long cartId, @Param("itemId") long itemId);

        void deleteLine(@Param("cartId")long cartId, @Param("itemId")long itemId);

        void changeCartIdForLine(@Param("fromCartId") long fromCartId, @Param("itemId") long item_id, 
                        @Param("toCartId")long toCartId);

        void deActivateCart(long id);

        void removeLineDiscount(@Param("cartId")long cartId, @Param("itemId")long itemId);
}