示例#1
0
 public virtual Boolean addNewCoupon(User session, String couponId, ProductInStore p, int percentage, String dueDate)
 {
     if (session == null || couponId == null || p == null || percentage < 0 || dueDate == null || percentage <= 0)
     {
         return(false);
     }
     return(CouponsManager.getInstance().addNewCoupon(couponId, p.getProductInStoreId(), percentage, dueDate));
 }
示例#2
0
 public virtual Boolean removeCoupon(User session, Store s, String couponId)
 {
     if (session == null || couponId == null)
     {
         return(false);
     }
     return(CouponsManager.getInstance().removeCoupon(couponId));
 }
示例#3
0
 public static CouponsManager getInstance()
 {
     if (instance == null)
     {
         instance = new CouponsManager();
     }
     return(instance);
 }
示例#4
0
 public virtual Boolean addNewCoupon(User session, int storeId, String couponId, int productInStoreId, int type, string categoryOrProductName,
                                     int percentage, String dueDate, string restrictions)
 {
     if (session == null || couponId == null || percentage < 0 || dueDate == null || percentage <= 0)
     {
         return(false);
     }
     return(CouponsManager.getInstance().addNewCoupon(couponId, productInStoreId, type, categoryOrProductName, percentage, dueDate, restrictions));
 }
示例#5
0
 public virtual int addNewCoupons(User session, int storeId, String couponId, int type, List <int> pisId, List <string> catOrProductsNames
                                  , int percentage, string dueDate, string restrictions)
 {
     if (session == null || couponId == null || percentage <= 0 || dueDate == null || percentage <= 0 || pisId == null || restrictions == null)
     {
         return(-1);
     }
     if (DateTime.Compare(DateTime.Parse(dueDate), DateTime.Now) < 0)
     {
         return(-3);
     }
     return(CouponsManager.getInstance().addNewCoupons(couponId, type, pisId, catOrProductsNames, percentage, dueDate, restrictions));
 }
示例#6
0
        public LinkedList <UserCart> applyCoupon(User session, string couponId, string country)
        {
            if (couponId == null || couponId.Equals(""))
            {
                return(products);
            }
            if (country == null)
            {
                country = "";
            }
            if (usedCoupons.Contains(couponId))
            {
                return(products);
            }
            Coupon coupon = CouponsManager.getInstance().getCoupon(couponId);

            if (coupon == null)
            {
                return(products);
            }
            Boolean skip = false;

            foreach (UserCart uc in products)
            {
                Sale s = SalesManager.getInstance().getSale(uc.getSaleId());
                LinkedList <Coupon>         relevantCoupons = CouponsManager.getInstance().getAllCouponsById(s.ProductInStoreId);
                LinkedList <PurchasePolicy> policys         = PurchasePolicyManager.getInstance().getAllRelevantPolicysForProductInStore(s.ProductInStoreId, country);
                foreach (PurchasePolicy p in policys)
                {
                    if (p.NoCoupons)
                    {
                        skip = true;
                    }
                }
                if (skip)
                {
                    skip = false;
                    continue;
                }
                if (relevantCoupons.Contains(coupon))
                {
                    checkAndUpdateCouponByPolicy(uc, coupon, country, s.TypeOfSale);
                }
            }
            usedCoupons.AddLast(couponId);
            return(products);
        }
示例#7
0
 public static void restartInstance()
 {
     instance = new CouponsManager();
 }