public static void CaptureLead(LeadItem item)
 {
     using (JazMax.DataAccess.JazMaxDBProdContext db = new DataAccess.JazMaxDBProdContext())
     {
         try
         {
             JazMax.DataAccess.LeadRawData raw = new DataAccess.LeadRawData()
             {
                 FullName             = item.FullName,
                 ContactNumber        = item.ContactNumber,
                 Email                = item.Email,
                 Comments             = item.Comments,
                 SourceName           = item.Source,
                 PropertyListingId    = item.PropertyListingID,
                 DateCreated          = DateTime.Now,
                 ServiceCompleted     = false,
                 ServiceCompletedDate = null,
                 CoreUserId           = item.CoreUserId ?? -999,
                 IsManualCapture      = item.IsManual,
             };
             db.LeadRawDatas.Add(raw);
             db.SaveChanges();
         }
         catch (Exception e)
         {
             JazMax.BusinessLogic.AuditLog.ErrorLog.LogError(e, 0);
         }
     }
 }
        public static void CaptureLeadReminder(LeadReminder reminder)
        {
            using (JazMax.DataAccess.JazMaxDBProdContext db = new DataAccess.JazMaxDBProdContext())
            {
                JazMax.DataAccess.LeadReminder act = new DataAccess.LeadReminder()
                {
                    CoreUserId          = reminder.CoreUserId,
                    DateCreated         = DateTime.Now,
                    Description         = reminder.Description,
                    LeadId              = reminder.LeadId,
                    ReminderDate        = reminder.ReminderDate,
                    WebJobCompleted     = false,
                    WebJobCompletedDate = null
                };
                db.LeadReminders.Add(act);
                db.SaveChanges();

                JazMax.Core.Leads.Activity.ActivityCreation.CaptureLeadActivity(new Core.Leads.Activity.LeadActivity
                {
                    CoreUserId     = reminder.CoreUserId,
                    LeadActivityId = 5,
                    LeadId         = reminder.LeadId,
                    IsSystem       = false,
                    Description    = "Reminder added for " + reminder.ReminderDate.ToShortDateString()
                });
            }
        }
Beispiel #3
0
 public static void CreateTrigger(SendMessage model)
 {
     using (JazMaxDBProdContext db = new DataAccess.JazMaxDBProdContext())
     {
         MessengerTrigger t = new MessengerTrigger()
         {
             BranchId            = model.BranchId,
             CoreUserId          = model.CoreUserId,
             CreatedDate         = DateTime.Now,
             HasBeenProcessed    = false,
             IsCancelled         = 0,
             MessengerComTypeId  = 1,
             CoreProvinceId      = model.ProvinceId,
             CoreUserTypeId      = model.CoreUserTypeId,
             MessageBody         = model.MessageBody,
             MessengerTemplateId = 1,
             NumberOfContacts    = null,
             ProcessedDateTime   = null,
             SendingDate         = model.SendDate,
             SendingTo           = model.SendTo,
             TriggerSetup        = model.TriggerText,
             MessageSubject      = model.MessageSubject
         };
         db.MessengerTriggers.Add(t);
         db.SaveChanges();
     }
 }
 public void Update(int LeadReminderId)
 {
     using (JazMax.DataAccess.JazMaxDBProdContext db = new DataAccess.JazMaxDBProdContext())
     {
         JazMax.DataAccess.LeadReminder o = db.LeadReminders.Where(x => x.LeadReminderId == LeadReminderId).FirstOrDefault();
         o.WebJobCompleted     = true;
         o.WebJobCompletedDate = DateTime.Now;
         db.SaveChanges();
     }
 }
Beispiel #5
0
        public int Upload(UploadView coreFileUpload)
        {
            using (DataAccess.JazMaxDBProdContext db = new DataAccess.JazMaxDBProdContext())
            {
                var context = HttpContext.Current;
                for (int i = 0; i < context.Request.Files.Count; i++)
                {
                    var file = context.Request.Files[i];
                    #region Content Length
                    if (file != null && file.ContentLength > 0)
                    {
                        #region CoreFIleUpload
                        DataAccess.CoreFileUpload fileUpload = new DataAccess.CoreFileUpload()
                        {
                            FileUploadId       = coreFileUpload.FileUploadId,
                            FileNames          = System.IO.Path.GetFileName(file.FileName),
                            CoreUserId         = JazMaxIdentityHelper.GetCoreUserId(),
                            CoreUserTypeId     = JazMaxIdentityHelper.GetCoreUserId(),
                            DateCreated        = DateTime.Now,
                            DeletedBy          = "None",
                            DeletedDate        = DateTime.Now,
                            BranchId           = (int)JazMaxIdentityHelper.GetUserInformationNew().BranchId,
                            ProvinceId         = (int)JazMaxIdentityHelper.GetUserInformationNew().ProvinceId,
                            CoreFileTypeId     = coreFileUpload.CoreFileTypeId,
                            FileDescription    = coreFileUpload.FileDescription,
                            CoreFileCategoryId = coreFileUpload.CoreFileCategoryId,
                            LastUpdated        = DateTime.Now,
                            IsActive           = true,
                            IsSent             = true,
                            IsRecieved         = true,
                            FileContent        = coreFileUpload.FileContent,
                            SentFrom           = JazMaxIdentityHelper.UserName,
                            SentTo             = "Document Directory"
                        };
                        #endregion

                        #region Binary Reader
                        using (var reader = new System.IO.BinaryReader(file.InputStream))
                        {
                            fileUpload.FileContent = reader.ReadBytes(file.ContentLength);
                        }
                        #endregion

                        db.CoreFileUploads.Add(fileUpload);
                    }
                    #endregion
                    db.SaveChanges();
                }
                return(coreFileUpload.FileUploadId);
            }
        }
Beispiel #6
0
 public int CreateFileType(CoreFileTypesView filetypes)
 {
     using (DataAccess.JazMaxDBProdContext db = new DataAccess.JazMaxDBProdContext())
     {
         DataAccess.CoreFileType filetype = new DataAccess.CoreFileType()
         {
             CoreFileTypeId = filetypes.CoreFileTypeId,
             TypeName       = filetypes.TypeName,
             IsActive       = true,
         };
         db.CoreFileTypes.Add(filetype);
         db.SaveChanges();
         return(filetypes.CoreFileTypeId);
     }
 }
 public int CreateDocument(DocumentTypesView doctype)
 {
     using (DataAccess.JazMaxDBProdContext db = new DataAccess.JazMaxDBProdContext())
     {
         DataAccess.CoreDocumentType type = new DataAccess.CoreDocumentType()
         {
             CoreFileCategoryId = doctype.CoreFileCategoryId,
             CategoryName       = doctype.CategoryName,
             IsActive           = true,
         };
         db.CoreDocumentTypes.Add(type);
         db.SaveChanges();
         return(doctype.CoreFileCategoryId);
     }
 }
        public int Attach(DocumentAttachments Attachments)
        {
            using (DataAccess.JazMaxDBProdContext db = new DataAccess.JazMaxDBProdContext())
            {
                var context = HttpContext.Current;
                for (int i = 0; i < context.Request.Files.Count; i++)
                {
                    var file = context.Request.Files[i];

                    #region Content Length
                    if (file != null && file.ContentLength > 0)
                    {
                        #region AttachmentFileUpload
                        DataAccess.CoreDocumentAttachment AttachmentUpload = new DataAccess.CoreDocumentAttachment()
                        {
                            FileAttachmentId          = Attachments.FileAttachmentId,
                            FileUploadId              = Attachments.FileUploadId,
                            FileNames                 = System.IO.Path.GetFileName(file.FileName),
                            CoreUserId                = 1,
                            DateCreated               = DateTime.Now,
                            DeletedBy                 = "None",
                            DeletedDate               = DateTime.Now,
                            BranchId                  = 1,
                            ProvinceId                = 1,
                            FileAttachmentDescription = Attachments.FileAttachmentDescription,
                            LastUpdated               = DateTime.Now,
                            IsActive                  = true,
                            IsRecieved                = true,
                            FileContent               = Attachments.FileContent
                        };
                        #endregion

                        #region Binary Reader
                        using (var reader = new System.IO.BinaryReader(file.InputStream))
                        {
                            AttachmentUpload.FileContent = reader.ReadBytes(file.ContentLength);
                        }
                        #endregion

                        db.CoreDocumentAttachments.Add(AttachmentUpload);
                    }
                    #endregion

                    db.SaveChanges();
                }
                return(Attachments.FileAttachmentId);
            }
        }
        public static void CloseLead(int LeadId, Activity.LeadActivity model)
        {
            using (JazMax.DataAccess.JazMaxDBProdContext db = new DataAccess.JazMaxDBProdContext())
            {
                var Lead = db.Leads?.FirstOrDefault(x => x.LeadId == LeadId);

                if (Lead != null)
                {
                    Lead.IsCompleted  = true;
                    Lead.LeadStatusId = 3; //Closed Lead
                }
                db.SaveChanges();

                JazMax.Core.Leads.Activity.ActivityCreation.CaptureLeadActivity(model, false);
            }
        }
        //Move Lead Status

        /*
         * 1 = New
         * 2 = WIP
         * 3 = Closed
         */
        public static void ChangeLeadStatus(int LeadId)
        {
            using (JazMax.DataAccess.JazMaxDBProdContext db = new DataAccess.JazMaxDBProdContext())
            {
                int CountUserActivity = (from b in db.LeadActivityForLeads
                                         where b.IsSystem == false && b.LeadId == LeadId
                                         select b).Count();

                if (CountUserActivity > 0)
                {
                    JazMax.DataAccess.Lead lead = db.Leads.FirstOrDefault(x => x.LeadId == LeadId);
                    lead.LeadStatusId = 2;
                    db.SaveChanges();
                }
            }
        }
 public static void CreateTemplate(MessageTemplate model)
 {
     using (JazMaxDBProdContext db = new DataAccess.JazMaxDBProdContext())
     {
         MessengerTemplate table = new MessengerTemplate()
         {
             CoreBranchId            = model.CoreBranchId,
             CoreUserId              = model.CoreUserId,
             CreatedDate             = DateTime.Now,
             IsActive                = true,
             MessengerTemplateTypeId = 1,
             TemplateHtml            = model.TemplateHtml,
             TemplateName            = model.TemplateName
         };
         db.MessengerTemplates.Add(table);
         db.SaveChanges();
     }
 }
Beispiel #12
0
        public int ForwardDocument(int id, UploadView coreFileUpload, FormCollection Form)
        {
            using (DataAccess.JazMaxDBProdContext db = new DataAccess.JazMaxDBProdContext())
            {
                string[] ids = Form["SentTo"].Split(new char[] { ',' });
                //Find Document Id That i Want to forward
                var FindContent = FindById(id);
                //get All contents of that particular file
                //Move Document to User Email Thats been Selected
                #region Database Upload object
                foreach (var item in ids)
                {
                    DataAccess.CoreFileUpload upload = new DataAccess.CoreFileUpload()
                    {
                        FileUploadId       = FindContent.FileUploadId,
                        FileNames          = FindContent.FileNames,
                        CoreUserId         = JazMaxIdentityHelper.GetCoreUserId(),
                        CoreUserTypeId     = FindContent.CoreUserTypeId,
                        DateCreated        = DateTime.Now,
                        DeletedBy          = "None",
                        DeletedDate        = DateTime.Now,
                        BranchId           = (int)JazMaxIdentityHelper.GetUserInformationNew().BranchId,
                        ProvinceId         = (int)JazMaxIdentityHelper.GetUserInformationNew().ProvinceId,
                        CoreFileTypeId     = FindContent.CoreFileTypeId,
                        FileDescription    = coreFileUpload.FileDescription,
                        CoreFileCategoryId = FindContent.CoreFileCategoryId,
                        LastUpdated        = DateTime.Now,
                        IsActive           = true,
                        IsSent             = true,
                        IsRecieved         = false,
                        FileContent        = FindContent.FileContent,
                        SentFrom           = JazMaxIdentityHelper.UserName,
                        SentTo             = item.ToString()
                    };

                    #endregion

                    //SaveChanges To Database
                    db.CoreFileUploads.Add(upload);
                    db.SaveChanges();
                }
                return(FindContent.FileUploadId);
            }
        }
Beispiel #13
0
        public void DoWork()
        {
            using (JazMax.DataAccess.JazMaxDBProdContext db = new DataAccess.JazMaxDBProdContext())
            {
                var ListToMove = db.CoreUserBranchMoveRequests.Where(x => x.HasBeenApproved == true &&
                                                                     x.EffectiveDate >= DateTime.Today && x.WebJobUpdateCompleted == false).ToList();

                foreach (var item in ListToMove)
                {
                    var Record = db.CoreUserBranchMoveRequests.Where(x => x.CoreUserMoveRequestId == item.CoreUserMoveRequestId)?.FirstOrDefault();
                    Record.WebJobUpdateCompleted = true;
                    db.SaveChanges();

                    var CoreUserTypeId = GetCoreUserType(Record.CoreUserId);

                    if (CoreUserTypeId > 0)
                    {
                        if (CoreUserTypeId == (int)JazMax.Common.Enum.UserType.Agent)
                        {
                            //Do Agent Move Logic
                            JazMax.BusinessLogic.UserAccounts.CoreUserService.MoveAgent(Record.CoreUserId, -1, Record.CoreBranchId);
                        }
                        else if (CoreUserTypeId == (int)JazMax.Common.Enum.UserType.TeamLeader)
                        {
                            //Do Teamleader Move Logic
                        }
                        else if (CoreUserTypeId == (int)JazMax.Common.Enum.UserType.PA)
                        {
                            //Not Implemented Yet
                        }
                    }
                    else
                    {
                        JazMax.BusinessLogic.AuditLog.ErrorLog.LogError(new JazMax.BusinessLogic.AuditLog.ErrorLog.ErrorMessage
                        {
                            CoreUserId = -1,
                            Message    = "Invalid Core User Type",
                            Source     = "JazMax.WebJob.MoveBranchRequest",
                            StackTrace = "N/A"
                        });
                    }
                }
            }
        }
Beispiel #14
0
        //2018-03-30 -------- Checking Azure Web Job Logging
        //Catch all records and update. Does not log (See Exception Log ID : 58)

        //2018-04-11 ----- This seems to be working but why?
        //I am 99.9999999999% sure this works.

        public static void LogWebJob(JazMax.Web.ViewModel.WebJob.JobModel model)
        {
            try
            {
                DataAccess.AzureWebJobLog log = new DataAccess.AzureWebJobLog()
                {
                    AzureWebJobId   = Convert.ToString(model.JobId),
                    RecordsAffected = model.RecordsAffected,
                    StartDateTime   = model.StartDate,
                    EndDateTime     = model.EndDate
                };
                db.AzureWebJobLogs.Add(log);
                db.SaveChanges();
            }
            catch (Exception e)
            {
                AuditLog.ErrorLog.LogError(e, 1);
            }
        }
Beispiel #15
0
        public static void CaptureLeadActivity(LeadActivity activity, bool overRide = true)
        {
            using (JazMax.DataAccess.JazMaxDBProdContext db = new DataAccess.JazMaxDBProdContext())
            {
                JazMax.DataAccess.LeadActivityForLead act = new DataAccess.LeadActivityForLead()
                {
                    CoreUserId     = activity.CoreUserId,
                    DateCreated    = DateTime.Now,
                    LeadActivityId = activity.LeadActivityId,
                    LeadId         = activity.LeadId,
                    IsDeleted      = false,
                    IsSystem       = activity.IsSystem,
                    Description    = activity.Description
                };
                db.LeadActivityForLeads.Add(act);
                db.SaveChanges();

                if (overRide)
                {
                    JazMax.Core.Leads.Status.LeadStatusLogic.ChangeLeadStatus(activity.LeadId);
                }
            }
        }
Beispiel #16
0
        private void ProcessLeadCommunication(int LeadId)
        {
            using (JazMax.DataAccess.JazMaxDBProdContext db = new DataAccess.JazMaxDBProdContext())
            {
                var lead = db.Leads?.FirstOrDefault(x => x.LeadId == LeadId);

                if (lead != null)
                {
                    var TeamLeader = (from t in db.CoreTeamLeaders
                                      join b in db.CoreBranches
                                      on t.CoreTeamLeaderId equals b.CoreTeamLeaderId
                                      where b.BranchId == lead.CoreBranchId
                                      join e in db.CoreUsers
                                      on t.CoreUserId equals e.CoreUserId
                                      select e)?.FirstOrDefault();

                    if (TeamLeader != null)
                    {
                        //Send TeamLeader An Email
                        JazMax.BusinessLogic.Messenger.JazMaxMail.SendMail(new Web.ViewModel.Messenger.Email
                        {
                            IsAspUserId = false,
                            IsBodyHtml  = true,
                            Message     = "A new lead has been created in your branch. LeadID: " + lead.LeadId,
                            SendTo      = TeamLeader.EmailAddress,
                            Subject     = "New Lead In Your Branch (LeadID: " + LeadId + ")"
                        });
                    }
                    var AgentList = (from t in db.CoreAgents
                                     join b in db.CoreUsers
                                     on t.CoreUserId equals b.CoreUserId
                                     join e in db.LeadAgents
                                     on t.CoreAgentId equals e.AgentId
                                     where e.LeadId == lead.LeadId
                                     select b)?.ToList();

                    //Send Agents An Email

                    if (AgentList != null)
                    {
                        foreach (var agent in AgentList)
                        {
                            JazMax.BusinessLogic.Messenger.JazMaxMail.SendMail(new Web.ViewModel.Messenger.Email
                            {
                                IsAspUserId = false,
                                IsBodyHtml  = true,
                                Message     = "A new lead has been created and assigned to you. LeadID: " + lead.LeadId,
                                SendTo      = agent.EmailAddress,
                                Subject     = "New Lead Assigned To You (LeadID: " + LeadId + ")"
                            });
                        }
                    }

                    var Customer = (from t in db.LeadProspects
                                    where t.LeadId == lead.LeadId
                                    select t)?.FirstOrDefault();

                    //Send Customer an Email

                    if (Customer != null)
                    {
                        JazMax.BusinessLogic.Messenger.JazMaxMail.SendMail(new Web.ViewModel.Messenger.Email
                        {
                            IsAspUserId = false,
                            IsBodyHtml  = true,
                            Message     = "Thank you for your enquiry an agent will be in contact with you shortly. Please use " + lead.LeadId + " as your reference number",
                            SendTo      = Customer.Email,
                            Subject     = "Thank you for your enquiry"
                        });
                    }

                    lead.ServiceCompleted = true;
                    db.SaveChanges();
                }
            }
        }