예제 #1
0
        public void Execute(IJobExecutionContext context)
        {
            SchedulerLog.WriteLog("ProcessOptimizations job is running" + DateTime.Now);
            ReportsAPI r = new ReportsAPI();

            r.ProcessOptimizations();
        }
예제 #2
0
        public void Execute(IJobExecutionContext context)
        {
            SchedulerLog.WriteLog("ProcessRefreshReports job is running");
            ReportsAPI r = new ReportsAPI();

            r.ProcessInventoryReports(ReportStatus.REFRESH_NOTSET, ReportStatus.REFRESH_SET);
        }
예제 #3
0
        public void Execute(IJobExecutionContext context)
        {
            SchedulerLog.WriteLog("ProcessSnapShotReports job is runnning");
            ReportsAPI r = new ReportsAPI();

            r.ProcessProductsSnapShot(ReportStatus.NOTSET, ReportStatus.SET);
        }
예제 #4
0
        public void Execute(IJobExecutionContext context)
        {
            SchedulerLog.WriteLog("ProcessFirstTimeInventoryReports job is runnning");
            ReportsAPI r = new ReportsAPI();

            r.ProcessInventoryReports(ReportStatus.NOTSET_SIGNUP, ReportStatus.SET_SIGNUP);
        }
예제 #5
0
        public void Execute(IJobExecutionContext context)
        {
            SchedulerLog.WriteLog("ProcessFailedReports job is running");
            ReportsAPI r = new ReportsAPI();

            r.ProcessInventoryReports(ReportStatus.FAILED_NOTSET, ReportStatus.NOTREQUIRED);
            r.ProcessProductsSnapShot(ReportStatus.FAILED_NOTSET, ReportStatus.NOTREQUIRED);
        }
예제 #6
0
        public BeanStreamService(string merchantId, string profilesApiPasscode = null, string paymentsApiPasscode = null,
                                 string reportingApiPasscode = null)
        {
            Configuration.MerchantId           = merchantId;
            Configuration.ProfilesApiPasscode  = profilesApiPasscode;
            Configuration.PaymentsApiPasscode  = paymentsApiPasscode;
            Configuration.ReportingApiPasscode = reportingApiPasscode;

            ProfilesAPI = new ProfilesAPI();
            ReportsAPI  = new ReportsAPI();
            PaymentsAPI = new PaymentsAPI();
        }
        public JsonResult RunCampaigns(List <CampaignStatus> Camplist)
        {
            String    res = "";
            DataTable dt  = new DataTable();

            dt.Columns.AddRange(new DataColumn[2] {
                new DataColumn("RecordID", typeof(String)),
                new DataColumn("Status", typeof(bool))
            });

            foreach (var row in Camplist)
            {
                dt.Rows.Add();
                dt.Rows[dt.Rows.Count - 1][0] = row.RecordID;
                dt.Rows[dt.Rows.Count - 1][1] = row.Status;
            }

            if (dt.Rows.Count > 0)
            {
                var      profile       = APIData.GetUserProfileForSkuData(SessionData.UserID);
                DataRow  dr            = profile.Rows[0];
                String   ProfileId     = Convert.ToString(dr["ProfileId"]);
                DateTime LastUpdatedOn = Convert.ToDateTime(dr["AccessTokenUpdatedOn"]);

                var Auth = new AuthorizationModel()
                {
                    access_token  = Convert.ToString(dr["AccessToken"]),
                    refresh_token = Convert.ToString(dr["RefreshToken"]),
                    token_type    = Convert.ToString(dr["TokenType"]),
                    expires_in    = Convert.ToInt32(dr["TokenExpiresIn"])
                };
                var msg        = string.Empty;
                var campaignId = dt.AsEnumerable().Select(r => Convert.ToInt64(r.Field <string>("RecordID"))).ToArray();

                ReportsAPI api = new ReportsAPI();
                api.GetUserProductAdsCount(SessionData.UserID, ProfileId, LastUpdatedOn, Auth, out msg, Camplist);
                res = optimizeData.RunCampaignData(dt, SessionData.UserID);
            }
            else
            {
                res = "Something went wrong!";
            }

            if (res == "")
            {
                SessionData.FormulaAccess = 1;
            }
            return(new JsonResult()
            {
                Data = res, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            });
        }
        public JsonResult RunCampaign(Int64 CampID, Int32 status)
        {
            String res = "";

            try
            {
                var      profile       = APIData.GetUserProfileForSkuData(SessionData.UserID);
                DataRow  dr            = profile.Rows[0];
                String   ProfileId     = Convert.ToString(dr["ProfileId"]);
                DateTime LastUpdatedOn = Convert.ToDateTime(dr["AccessTokenUpdatedOn"]);

                var Auth = new AuthorizationModel()
                {
                    access_token  = Convert.ToString(dr["AccessToken"]),
                    refresh_token = Convert.ToString(dr["RefreshToken"]),
                    token_type    = Convert.ToString(dr["TokenType"]),
                    expires_in    = Convert.ToInt32(dr["TokenExpiresIn"])
                };
                var     msg = string.Empty;
                Int64[] ids = new Int64[1] {
                    CampID
                };
                ReportsAPI api  = new ReportsAPI();
                var        list = new List <CampaignStatus>();
                list.Add(new CampaignStatus {
                    RecordID = CampID, Status = status, Count = 0
                });
                res = api.GetUserProductAdsCount(SessionData.UserID, ProfileId, LastUpdatedOn, Auth, out msg, list);
                if (String.IsNullOrEmpty(res))
                {
                    res = optimizeData.RunCampaignData(SessionData.UserID, CampID, status);
                }
                if (res == "")
                {
                    SessionData.FormulaAccess = 1;
                }
            }
            catch
            {
                res = "Something went wrong!. Please try again.";
            }

            return(new JsonResult()
            {
                Data = res, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            });
        }
예제 #9
0
        public JsonResult UpdateSellerProfile(String ProfileId, String SellerId)
        {
            String msg = "";

            if (!String.IsNullOrWhiteSpace(ProfileId) && !String.IsNullOrWhiteSpace(SellerId))
            {
                var dt = APIData.GetUserProfileForUpdate(SessionData.UserID);
                if (dt.Rows.Count > 0)
                {
                    DataRow dr   = dt.Rows[0];
                    var     Auth = new AuthorizationModel()
                    {
                        access_token  = Convert.ToString(dr["AccessToken"]),
                        refresh_token = Convert.ToString(dr["RefreshToken"]),
                        token_type    = Convert.ToString(dr["TokenType"]),
                        expires_in    = Convert.ToInt32(dr["TokenExpiresIn"])
                    };
                    var reportapi = new ReportsAPI();
                    msg = APIData.UpdateProfileData(SessionData.UserID, ProfileId, SellerId);
                    if (String.IsNullOrWhiteSpace(msg))
                    {
                        SessionData.ProfileAccess = 1;
                        msg = Constant.SUCCESS;
                    }
                    else
                    {
                        msg = Constant.SOMETHING_WRONG;
                    }
                }
                else
                {
                    msg = Constant.SOMETHING_WRONG;
                }
            }
            else
            {
                msg = "Seller ID is not valid";
            }
            return(new JsonResult()
            {
                Data = msg, JsonRequestBehavior = JsonRequestBehavior.AllowGet
            });
        }
 public MyCampaignsController()
 {
     this.api          = new ReportsAPI();
     this.optimizeData = new OptimizeData();
 }
예제 #11
0
        public static void RenewPlan()
        {
            int UserId = 0;

            try
            {
                var subs = ServicesData.GetSubscribers();
                int plan;
                if (subs.Rows.Count > 0)
                {
                    foreach (DataRow row in subs.Rows)
                    {
                        String msg        = "";
                        String CustomerId = row["stp_custId"].ToString();
                        String CardId     = row["stp_cardId"].ToString();
                        UserId = Convert.ToInt32(row["MppUserID"]);

                        if (!String.IsNullOrWhiteSpace(CustomerId) && !String.IsNullOrWhiteSpace(CardId))
                        {
                            var profile = APIData.GetUserProfileForSkuData(UserId);

                            if (profile.Rows.Count > 0)
                            {
                                DataRow  dr            = profile.Rows[0];
                                String   ProfileId     = Convert.ToString(dr["ProfileId"]);
                                DateTime LastUpdatedOn = Convert.ToDateTime(dr["AccessTokenUpdatedOn"]);

                                var Auth = new AuthorizationModel()
                                {
                                    access_token  = Convert.ToString(dr["AccessToken"]),
                                    refresh_token = Convert.ToString(dr["RefreshToken"]),
                                    token_type    = Convert.ToString(dr["TokenType"]),
                                    expires_in    = Convert.ToInt32(dr["TokenExpiresIn"])
                                };
                                var reportApi = new ReportsAPI();
                                var skuCount  = AccountData.UserSkuCount(UserId);
                                if (String.IsNullOrWhiteSpace(msg))
                                {
                                    if (skuCount > 250)
                                    {
                                        plan = GetCustomPlan(skuCount);
                                    }
                                    else
                                    {
                                        plan = GetPlanBySku(skuCount);
                                    }
                                    var subsPlan   = new StripeSubscription();
                                    var subService = StripeHelper.GetSubscription(CustomerId);
                                    if (subService != null)
                                    {
                                        subsPlan = StripeHelper.UpdateSubscription(CustomerId, subService.Id, new Stripe.StripeSubscriptionUpdateOptions {
                                            PlanId = plan.ToString(), Prorate = false
                                        }, out msg);
                                    }
                                    else
                                    {
                                        subsPlan = StripeHelper.Subscription(CustomerId, new Stripe.StripeSubscriptionCreateOptions {
                                            PlanId = plan.ToString()
                                        }, out msg);
                                    }
                                    if (String.IsNullOrWhiteSpace(msg))
                                    {
                                        UpdateUserInfo userInfo = new UpdateUserInfo
                                        {
                                            Amount        = ((double)(subsPlan.StripePlan.Amount) / 100).ToString(),
                                            CardId        = CardId,
                                            CustId        = CustomerId,
                                            UserId        = UserId,
                                            PlanId        = plan,
                                            EndedAt       = subsPlan.CurrentPeriodEnd.ToString(),
                                            PlanStartDate = subsPlan.CurrentPeriodStart.ToString(),
                                            PlanEndDate   = subsPlan.CurrentPeriodEnd.ToString(),
                                            TrialEndDate  = row["TrailEndDate"].ToString()
                                        };
                                        ServicesData.UpdateStripeData(userInfo);
                                    }
                                    else
                                    {
                                        LogAPI.WriteLog("RenewPlan - " + msg, UserId.ToString());
                                    }
                                }
                                else
                                {
                                    LogAPI.WriteLog("RenewPlan - " + msg, UserId.ToString());
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                LogAPI.WriteLog("RenewPlan - " + ex.Message, UserId.ToString());
            }
        }
예제 #12
0
        public static string SubscribePlan(String CustomerId, String CardId)
        {
            int    plan;
            String msg = "";

            try
            {
                Int32    UserId    = SessionData.UserID;
                DateTime Trialdate = SessionData.TrialEndOn;

                if (!String.IsNullOrWhiteSpace(CardId))
                {
                    var profile = APIData.GetUserProfileForSkuData(UserId);
                    if (profile.Rows.Count > 0)
                    {
                        DataRow  dr            = profile.Rows[0];
                        String   ProfileId     = Convert.ToString(dr["ProfileId"]);
                        DateTime LastUpdatedOn = Convert.ToDateTime(dr["AccessTokenUpdatedOn"]);

                        var Auth = new AuthorizationModel()
                        {
                            access_token  = Convert.ToString(dr["AccessToken"]),
                            refresh_token = Convert.ToString(dr["RefreshToken"]),
                            token_type    = Convert.ToString(dr["TokenType"]),
                            expires_in    = Convert.ToInt32(dr["TokenExpiresIn"])
                        };
                        var reportApi = new ReportsAPI();
                        var skuCount  = AccountData.UserSkuCount(UserId);

                        if (String.IsNullOrWhiteSpace(msg))
                        {
                            var subsPlan = new StripeSubscription();
                            if (skuCount > 250)
                            {
                                plan = GetCustomPlan(skuCount);
                            }
                            else
                            {
                                plan = GetPlanBySku(skuCount);
                            }
                            var subService = StripeHelper.GetSubscription(CustomerId);
                            if (subService != null)
                            {
                                subsPlan = StripeHelper.UpdateSubscription(CustomerId, subService.Id, new Stripe.StripeSubscriptionUpdateOptions {
                                    PlanId = plan.ToString(), Prorate = false
                                }, out msg);
                            }
                            else
                            {
                                subsPlan = StripeHelper.Subscription(CustomerId, new Stripe.StripeSubscriptionCreateOptions {
                                    PlanId = plan.ToString()
                                }, out msg);
                            }

                            if (String.IsNullOrWhiteSpace(msg))
                            {
                                UpdateUserInfo userInfo = new UpdateUserInfo
                                {
                                    Amount        = ((double)(subsPlan.StripePlan.Amount) / 100).ToString(),
                                    CardId        = CardId,
                                    CustId        = CustomerId,
                                    UserId        = UserId,
                                    PlanId        = plan,
                                    EndedAt       = subsPlan.CurrentPeriodEnd.ToString(),
                                    PlanStartDate = subsPlan.CurrentPeriodStart.ToString(),
                                    PlanEndDate   = subsPlan.CurrentPeriodEnd.ToString(),
                                    TrialEndDate  = Trialdate.ToString()
                                };
                                msg = AccountData.UpdateStripeData(userInfo);
                                if (msg == "")
                                {
                                    SessionData.PlanID = plan;
                                }
                            }
                            else
                            {
                                LogAPI.WriteLog("SubscribePlan - " + msg, SessionData.SellerName);
                            }
                        }
                    }
                    else
                    {
                        msg = Constant.PROFILE_NOTFOUND;
                    }
                }
            }
            catch (Exception ex)
            {
                msg = ex.Message;
                LogFile.WriteLog("SubscribePlan - " + msg, SessionData.SellerName);
            }
            return(msg);
        }