Example #1
0
        public static List <TicketModel> PopulateTicketData(FreshServiceTicketModel[] ticketData,
                                                            FreshServiceRequesterModel[] cachedRequesterData, FreshServiceDepartmentModel[] cachedDepartmentData, FreshServiceAgentsModel[] cachedAgentsData)
        {
            var listOfTickets = new List <TicketModel>();

            if (ticketData != null && ticketData.Any())
            {
                foreach (var allTickets in ticketData)
                {
                    if (allTickets?.Tickets != null && allTickets.Tickets.Any())
                    {
                        foreach (var individualTicket in allTickets.Tickets)
                        {
                            var model = new TicketModel
                            {
                                TicketId       = individualTicket.Id,
                                CreatedAt      = DateTime.Parse(individualTicket.CreatedAt.Substring(0, 20)),
                                Status         = RetrieveDataHelper.RetrieveStatusName(individualTicket.Status),
                                UpdatedAt      = DateTime.Parse(individualTicket.UpdatedAt.Substring(0, 20)),
                                DueBy          = DateTime.Parse(individualTicket.DueBy.Substring(0, 20)),
                                TicketType     = individualTicket.TicketType,
                                Description    = individualTicket.Description,
                                Requester      = RetrieveDataHelper.RetrieveRequesterPrimaryEmail(cachedRequesterData, individualTicket.RequesterId),
                                DepartmentName = RetrieveDataHelper.RetrieveDepartmentName(cachedDepartmentData, individualTicket.DepartmentId),
                                AssignedTo     = RetrieveDataHelper.RetrieveAgentEmail(cachedAgentsData, individualTicket.ResponderId)
                            };
                            listOfTickets.Add(model);
                        }
                    }
                }
            }

            return(listOfTickets);
        }
        private void LoginButton_Click(object sender, EventArgs e)
        {
            string accessToken = LoginHelper.ValidateLogin(userID.Text, password.Text);

            if (!string.IsNullOrWhiteSpace(accessToken))
            {
                RetrievedData retrievedData = RetrieveDataHelper.GetData(accessToken);
                homeDataService = new HomeDataService(retrievedData);

                var    intent         = new Intent(this, typeof(WelcomeHomeActivity));
                string serializedData = JsonConvert.SerializeObject(homeDataService);
                intent.PutExtra("HomeDataService", serializedData);
                StartActivity(intent);
            }
            else
            {
                Android.Widget.Toast.MakeText(this, "Login Failed! Please Check ID or Password.", Android.Widget.ToastLength.Short).Show();
            }
        }
Example #3
0
        }         // PreventSilentAutomation

        public override void Execute()
        {
            string errorMessage = string.Empty;

            if (this.doUpdateWizardStep)
            {
                DB.ExecuteNonQuery(
                    "CustomerSetWizardStepIfNotLast",
                    CommandSpecies.StoredProcedure,
                    new QueryParameter("@CustomerID", this.customerId),
                    new QueryParameter("@NewStepID", (int)WizardStepType.Marketplace)
                    );
            }             // if

            string marketplaceName        = string.Empty;
            bool   disabled               = false;
            string marketplaceDisplayName = string.Empty;
            bool   firstTime              = false;
            bool   longUpdateTime         = false;

            SafeReader sr = DB.GetFirst(
                "GetMarketplaceDetailsForUpdate",
                CommandSpecies.StoredProcedure,
                new QueryParameter("MarketplaceId", this.marketplaceId)
                );

            if (!sr.IsEmpty)
            {
                marketplaceName        = sr["Name"];
                disabled               = sr["Disabled"];
                marketplaceDisplayName = sr["DisplayName"];
                firstTime              = sr["FirstTime"];
                longUpdateTime         = sr["LongUpdateTime"];
            }             // if

            if (disabled)
            {
                Log.Info("MP:{0} is disabled and won't be updated", this.marketplaceId);
                return;
            }             // if

            if (longUpdateTime)
            {
                Context.Description = string.Format(
                    "This strategy can take long time (updating {0} marketplace with id {1}).",
                    marketplaceName,
                    this.marketplaceId
                    );
            }             // if

            int tokenExpired = 0;

            var oMpUpdateTimesSetter = new MarketplaceInstantUpdate(this.marketplaceId);

            Log.Info(
                "Start Update Data for Customer Market Place: id: {0}, name: {1} ",
                this.marketplaceId,
                marketplaceDisplayName
                );

            try {
                oMpUpdateTimesSetter.Start();

                IMarketplaceRetrieveDataHelper oRetrieveDataHelper = null;
                var vi = global::Integration.ChannelGrabberConfig.Configuration.Instance.GetVendorInfo(marketplaceName);

                if (null != vi)
                {
                    oRetrieveDataHelper = new RetrieveDataHelper(DbHelper, new DatabaseMarketPlace(marketplaceName));
                }
                else
                {
                    switch (marketplaceName)
                    {
                    case "eBay":
                        oRetrieveDataHelper = new eBayRetriveDataHelper(DbHelper, new eBayDatabaseMarketPlace());
                        break;

                    case "Amazon":
                        oRetrieveDataHelper = new AmazonRetriveDataHelper(DbHelper, new AmazonDatabaseMarketPlace());
                        break;

                    case "Pay Pal":
                        oRetrieveDataHelper = new PayPalRetriveDataHelper(DbHelper, new PayPalDatabaseMarketPlace());
                        break;

                    case "EKM":
                        oRetrieveDataHelper = new EkmRetriveDataHelper(DbHelper, new EkmDatabaseMarketPlace());
                        break;

                    case "FreeAgent":
                        oRetrieveDataHelper = new FreeAgentRetrieveDataHelper(DbHelper, new FreeAgentDatabaseMarketPlace());
                        break;

                    case "Sage":
                        oRetrieveDataHelper = new SageRetrieveDataHelper(DbHelper, new SageDatabaseMarketPlace());
                        break;

                    case "PayPoint":
                        oRetrieveDataHelper = new PayPointRetrieveDataHelper(DbHelper, new PayPointDatabaseMarketPlace());
                        break;

                    case "Yodlee":
                        oRetrieveDataHelper = new YodleeRetriveDataHelper(DbHelper, new YodleeDatabaseMarketPlace());
                        break;
                    }             // switch
                }                 // if

                if (oRetrieveDataHelper != null)
                {
                    oRetrieveDataHelper.Update(this.marketplaceId);
                }
            } catch (Exception e) {
                errorMessage = e.Message;
                Log.Warn("Exception occurred during marketplace update, id: {0}.", this.marketplaceId);

                var variables = new Dictionary <string, string> {
                    { "userID", this.customerId.ToString(CultureInfo.InvariantCulture) },
                    { "CustomerMarketPlaceId", this.marketplaceId.ToString(CultureInfo.InvariantCulture) },
                };

                bool bHasEbayMsgNum = marketplaceName == "eBay" && (
                    e.Message.Contains("16110") ||
                    e.Message.Contains("931") ||
                    e.Message.Contains("932") ||
                    e.Message.Contains("16118") ||
                    e.Message.Contains("16119") ||
                    e.Message.Contains("17470")
                    );

                string sTemplateName;

                if (bHasEbayMsgNum)
                {
                    tokenExpired = 1;

                    variables.Add("MPType", marketplaceName);
                    variables.Add("ErrorMessage", e.Message);
                    variables.Add("ErrorCode", e.Message);

                    sTemplateName = "Mandrill - Update MP Error Code";
                }
                else
                {
                    variables.Add("UpdateCMP_Error", e.Message);
                    sTemplateName = "Mandrill - UpdateCMP Error";
                }                 // if

                this.mailer.Send(sTemplateName, variables);
            } finally {
                Log.Info(
                    "End update data for umi: id: {0}, name: {1}. {2}",
                    this.marketplaceId,
                    marketplaceDisplayName,
                    string.IsNullOrEmpty(errorMessage) ? "Successfully" : "With error!"
                    );

                oMpUpdateTimesSetter.End(errorMessage, tokenExpired);

                if (this.marketplaceUpdateStatus != null)
                {
                    this.marketplaceUpdateStatus.NotifyDone(this.marketplaceId);
                }

                if (this.doSilentAutomation)
                {
                    new SilentAutomation(this.customerId).SetTag(firstTime
                                                ? SilentAutomation.Callers.AddMarketplace
                                                : SilentAutomation.Callers.UpdateMarketplace
                                                                 ).Execute();
                } // if
            }     // try
        }         // Execute