/// <summary> /// Adds the specified request. /// </summary> /// <param name="request">The request.</param> /// <returns></returns> public tbl_Request Add(tbl_Request request) { request.ID = Guid.NewGuid(); _dataContext.tbl_Request.AddObject(request); _dataContext.SaveChanges(); RequestNotificationService.Register(request); AddHistory(new DataManager(), request); return(request); }
/// <summary> /// Updates the specified requirement. /// </summary> /// <param name="requirement">The requirement.</param> public void Update(tbl_Requirement requirement) { var dataManager = new DataManager(); var requirementInDataBase = dataManager.Requirement.SelectById(requirement.SiteID, requirement.ID); _dataContext.SaveChanges(); if (requirementInDataBase.RequirementStatusID != requirement.RequirementStatusID || requirementInDataBase.ResponsibleID != requirement.ResponsibleID) { AddHistory(dataManager, requirement); } if (requirementInDataBase.ResponsibleID != requirement.ResponsibleID) { RequestNotificationService.ChangeResponsible(requirement.SiteID, requirement.ID, (Guid)requirement.ResponsibleID); } }
/// <summary> /// Updates the specified request. /// </summary> /// <param name="request">The request.</param> public void Update(tbl_Request request) { var dataManager = new DataManager(); var requestInDataBase = dataManager.Request.SelectById(request.SiteID, request.ID); _dataContext.SaveChanges(); if (requestInDataBase.RequestStatusID == (int)RequestStatus.New && requestInDataBase.RequestStatusID != request.RequestStatusID) { RequestNotificationService.Process(request); } if (requestInDataBase.RequestStatusID != request.RequestStatusID || requestInDataBase.ResponsibleID != request.ResponsibleID) { AddHistory(dataManager, request); } }
/// <summary> /// Changes the status. /// </summary> protected void ChangeStatus() { var requirement = DataManager.Requirement.SelectById(SiteId, ObjectId); if (requirement != null) { CheckWriteAccess(requirement.OwnerID, "Requirements"); requirement.RequirementStatusID = ucRequirementStatus.RequirementStatusId; if (ResponsibleId != Guid.Empty) { requirement.ResponsibleID = ResponsibleId; RequestNotificationService.ChangeResponsible(SiteId, requirement.ID, (Guid)requirement.ResponsibleID); } DataManager.Requirement.Update(requirement); } }
public void Run() { var dataManager = new DataManager(); var serviceLevelContacts = dataManager.ServiceLevelContact.SelectAll(); var today = DateTime.Now.Date; foreach (var serviceLevelContact in serviceLevelContacts) { var startDate = today; var endDate = today; if (!RequestNotificationService.GetDatesRangeByServiceLevelContact(serviceLevelContact, today, ref startDate, ref endDate)) { continue; } var informClient = false; switch ((ServiceLevelIncludeToInform)serviceLevelContact.IncludeToInformID) { case ServiceLevelIncludeToInform.All: informClient = dataManager.Requirement.SelectAllByCompanyId(serviceLevelContact.tbl_ServiceLevelClient.ClientID, startDate, endDate).Any(); break; case ServiceLevelIncludeToInform.Personal: informClient = dataManager.Requirement.SelectPersonal(serviceLevelContact.ContactID, startDate, endDate).Any(); break; } if (informClient) { RequestNotificationService.Notify(serviceLevelContact.tbl_Contact.SiteID, serviceLevelContact.ContactID, serviceLevelContact.ID); } } }
private static void Main(string[] args) { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.ThreadException += Application_ThreadException; ClientEnvironment.IsRuntimeMode = true; UCBaseEntity.IsDesignMode = false; DefaultDiction.BuildDefaultResource(); RemotingConfiguration.Configure("Baumax.Client.exe.config", false); // Define channel security IEnumerator channelEnum = ChannelServices.RegisteredChannels.GetEnumerator(); while (channelEnum.MoveNext()) { BasicChannelWithSecurity channel = channelEnum.Current as BasicChannelWithSecurity; if (channel != null) { channel.ITransportContext.IKeyStore.SetKey("/BAUMAX/SES", new KeyProvider_SelfEstablishingSymmetric()); } } if (!DoLogin()) { return; } try { mainForm = new MainForm(); mainForm.Text += String.Format(" - '{0}'", ClientEnvironment.AuthorizationService.GetCurrentUser().LoginName); ClientEnvironment.MainForm = mainForm; RequestNotificationService.Attach(mainForm); GenuineGlobalEventProvider.GenuineChannelsGlobalEvent += GenuineGlobalEventProvider_GenuineChannelsGlobalEvent; ReportLocalizer.InitDevExPreviewLocalizer(); DevExLocalizer.InitDevExLocalizer(); DevExGridLocalizer.InitDevExGridLocalizer(); Application.Run(mainForm); ClientEnvironment.DoLogout(); } catch (EntityException ex) { log.Error("Unhandled", ex); // 2think: how to localize? using (FrmEntityExceptionDetails frm = new FrmEntityExceptionDetails(ex)) { frm.Text = "Unhandled exception"; frm.ShowDialog(); } } catch (Exception ex) { log.Error("Unhandled", ex); MessageBox.Show(ex.ToString(), "Unhandled exception"); } }
/// <summary> /// Replaces the specified subject. /// </summary> /// <param name="subject">The subject.</param> /// <param name="body">The body.</param> public override void Replace(ref string subject, ref string body) { if (!SiteAction.ObjectID.HasValue) { return; } PortalSettings = DataManager.PortalSettings.SelectMapBySiteId(SiteAction.SiteID, true); ReplaceUserInfo(ref body); if (PortalSettings != null) { PortalLink = DataManager.PortalSettings.SelectPortalLink(PortalSettings.SiteID); RequirementLinkTemplate = RequirementLinkTemplate.Replace("#PortalLink#", PortalLink); RequestLinkTemplate = RequestLinkTemplate.Replace("#PortalLink#", PortalLink); } var request = DataManager.Request.SelectById(SiteAction.SiteID, (Guid)SiteAction.ObjectID); if (request != null) { var serviceLevel = request.tbl_ServiceLevel; tbl_Contact responsible = null; tbl_Contact contact = null; tbl_Company company = null; if (request.ResponsibleID.HasValue) { responsible = DataManager.Contact.SelectById(SiteAction.SiteID, (Guid)request.ResponsibleID); } if (request.ContactID.HasValue) { contact = DataManager.Contact.SelectById(SiteAction.SiteID, (Guid)request.ContactID); } company = request.tbl_Company; subject = ReplaceText(subject, request, serviceLevel, responsible, contact, company); body = ReplaceText(body, request, serviceLevel, responsible, contact, company); if (body.Contains("#Requirement.RegisteredList#")) { var requirements = DataManager.Requirement.SelectByRequestId(request.SiteID, request.ID); ProceedRegisteredRequirements(ref body, requirements); } if (company != null) { body = body.Replace("#Request.Notification.Company#", company.Name); subject = subject.Replace("#Request.Notification.Company#", company.Name); } else { body = body.Replace("#Request.Notification.Company#", string.Empty); subject = subject.Replace("#Request.Notification.Company#", string.Empty); } } var requirement = DataManager.Requirement.SelectById(SiteAction.SiteID, (Guid)SiteAction.ObjectID); if (requirement != null) { var shortDescription = requirement.ShortDescription; var requirementLink = string.Format(RequirementLinkTemplate, requirement.ID); shortDescription = string.Format("<a href='{0}'>{1}</a>", requirementLink, shortDescription); body = body.Replace("#Requirement.ShortDescription#", shortDescription); if (requirement.CompanyID.HasValue) { body = body.Replace("#Requirement.Notification.Company#", requirement.tbl_Company.Name); subject = subject.Replace("#Requirement.Notification.Company#", requirement.tbl_Company.Name); } else { body = body.Replace("#Requirement.Notification.Company#", string.Empty); subject = subject.Replace("#Requirement.Notification.Company#", string.Empty); } } if (((body.Contains("#Requirement.WorkedList#") || body.Contains("#Requirement.CompanyList#") || body.Contains("#Requirement.CompletedList#")) && SiteAction.ContactID.HasValue)) { var serviceLevelContact = DataManager.ServiceLevelContact.SelectById((Guid)SiteAction.ObjectID); if (serviceLevelContact != null) { body = body.Replace("#Requirement.Notification.Company#", serviceLevelContact.tbl_ServiceLevelClient.tbl_Company.Name); subject = subject.Replace("#Requirement.Notification.Company#", serviceLevelContact.tbl_ServiceLevelClient.tbl_Company.Name); var startDate = SiteAction.ActionDate.Date; var endDate = SiteAction.ActionDate.Date; RequestNotificationService.GetDatesRangeByServiceLevelContact(serviceLevelContact, SiteAction.ActionDate.Date, ref startDate, ref endDate); var requirements = new List <tbl_Requirement>(); switch ((ServiceLevelIncludeToInform)serviceLevelContact.IncludeToInformID) { case ServiceLevelIncludeToInform.All: requirements = DataManager.Requirement.SelectAllByCompanyId(serviceLevelContact.tbl_ServiceLevelClient.ClientID, startDate, endDate).ToList(); break; case ServiceLevelIncludeToInform.Personal: requirements = DataManager.Requirement.SelectPersonal(serviceLevelContact.ContactID, startDate, endDate).ToList(); break; } body = body.Replace("#Requirement.CompanyList#", string.Empty); ProceedWorkedRequirements(ref body, requirements.Where(o => !o.tbl_RequirementStatus.IsLast).ToList(), startDate, endDate); ProceedCompletedRequirements(ref body, requirements.Where(o => o.tbl_RequirementStatus.IsLast).ToList()); } } }