public static void CreateActivity(ActivityType type, string targetId, ActivityTargetType targetType, string loggedUserId)
        {
            var data = new CRMData(new CRMDbContext());

            var activity = new Activity()
            {
                UserId = loggedUserId,
                Type = type,
                TargetId = targetId,
                TargetType = targetType,
                CreatedOn = DateTime.Now
            };

            data.Activities.Add(activity);

            data.SaveChanges();
        }
Пример #2
0
        static void Main(string[] args)
        {
            try
            {
                CommonFunctions.LogInConsole("POC CRM App Started");
                FileInfo fi   = new FileInfo("C:\\MyWork\\SharedRepository\\Customer.csv");
                var      path = fi.FullName;
                var      data = CommonFunctions.LoadDataFromCSV(path, sheetname);
                CRMData.LoadDataInCrmTable(data);

                AzureProvider.WriteBatchToQueue01(data.Select().ToList().Select(c => "CustNum=" + c["CustNum"].ToString()).ToList());
                CommonFunctions.LogInConsole("Azure Queue notified with customer data update");
                CommonFunctions.LogInConsole("POC CRM App Ended");
            }
            catch (Exception ex)
            {
                CommonFunctions.LogInConsole(ex.Message);
                CommonFunctions.LogInConsole(ex.StackTrace);
            }
        }
Пример #3
0
        public async Task <IHttpActionResult> Get(int id)
        {
            HttpClient client   = new HttpClient();
            string     hostname = "mycompany.visitors.crmsvc";
            string     port     = "81";

            try
            {
                Uri uri = new Uri($"http://{hostname}:{port}/api/crmdata/{id}");
                HttpResponseMessage response = await client.GetAsync(uri);

                HttpContent content    = response.Content;
                CRMData     returndata = await content.ReadAsAsync <CRMData>();

                return(Ok <CRMData>(returndata));
            }
            catch (Exception ex)
            {
                return(Content(HttpStatusCode.NotFound, ex));
            }
        }
Пример #4
0
        private void SendMail(string emailBody, CRMData data)
        {
            try
            {
                // Send email to all
                var mailMessage = new MailMessage
                {
                    From       = new MailAddress("email"),
                    Subject    = string.Format("{0} REQUEST RAISED WITH ID {1} BY {2}", data.CRMStatus, data.TrackingId, data.RaisedBy),
                    Body       = emailBody,
                    IsBodyHtml = false,
                };
                mailMessage.CC.Add(data.RaisedByEmail);
                mailMessage.To.Add(data.OrgDept.ContactEmailId);

                smtpClient.Send(mailMessage);
            }
            catch (Exception ex)
            {
            }
        }
        public void RaiseRequest(CRMData data)
        {
            Console.WriteLine("\nNew Request Raised.. Allocate to The Right Department.. ");

            // Forward to right department
            switch (data.OrgDept.Name)
            {
            case "IT":
                break;

            case "SW":
                break;

            case "HR":
                break;
            }

            data.CRMStatus = CRMData.Status.Assigned;

            successor?.RaiseRequest(data);
        }
Пример #6
0
        private async static Task <CRMData> GetCRMDataAsync(int id)
        {
            Random leads = new Random();

            if (id > 100)
            {
                throw new Exception($"Entity {id} not found in the CRM database");
            }

            if (id == 81)
            {
                Thread.Sleep(1000);
            }

            CRMData returndata = new CRMData()
            {
                VisitorId         = id,
                CRMAccountManager = GetEmployeeName(),
                CRMLeads          = leads.Next(0, 5)
            };

            return(returndata);
        }
Пример #7
0
 static void Main(string[] args)
 {
     try
     {
         var custDataJson = AzureProvider.GetCustomerDataFromSubscription(_topicName, _subscriptionName);
         CommonFunctions.LogInConsole(custDataJson);
         var customer = CommonFunctions.Deserialize <CustomerDto>(custDataJson);
         var rows     = CRMData.InsertCustomerInDestination02(customer);
         if (rows > 0)
         {
             CommonFunctions.LogInConsole("Customer data id#" + customer.Id + " process!");
         }
         else
         {
             CommonFunctions.LogInConsole("Customer data id#" + customer.Id + " could not be processed!");
         }
     }
     catch (Exception ex)
     {
         CommonFunctions.LogInConsole(ex.Message);
         CommonFunctions.LogInConsole(ex.StackTrace);
     }
 }
Пример #8
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="data"></param>
        public void RaiseRequest(CRMData data)
        {
            Console.WriteLine("\nNew Request Raised.. Insert to Database.. ");

            data.CRMStatus  = CRMData.Status.New;
            data.DateRaised = DateTime.Now;
            data.TrackingId = "CRM0x00023" + data.OrgDept.Name + "0058";
            try
            {
                SqlCommand cmd = new SqlCommand();
                cmd.CommandType = System.Data.CommandType.Text;
                cmd.CommandText = GetSQLCommand(data);
                cmd.Connection  = connection;

                connection.Open();
                cmd.ExecuteNonQuery();
                connection.Close();
            }
            catch (Exception ex)
            {
            }

            successor?.RaiseRequest(data);
        }
Пример #9
0
 public void EscalateIssue(string trackingId, CRMData data)
 {
     // Send Escalation Mail
     SendEscalationMail(data);
     successor?.EscalateIssue(trackingId, data);
 }
Пример #10
0
        public async Task <CRMData> GetAsync(int id)
        {
            CRMData returndata = await GetCRMDataAsync(id);

            return(returndata);
        }
Пример #11
0
 public void EscalateIssue(string trackingId, CRMData data)
 {
     data = GetData(trackingId);
     successor?.EscalateIssue(trackingId, data);
 }
Пример #12
0
        public CRMData GetStatus(string trackingId)
        {
            CRMData data = GetData(trackingId);

            return(data);
        }